The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
oft_scalar_fem Type Referenceabstract

Detailed Description

Lagrange operator container.

Inheritance diagram for oft_scalar_fem:
Inheritance graph
[legend]

Public Member Functions

procedure delete (self)
 Destory FE type.
 
procedure delete (self)
 Destory FE type.
 
procedure delete (self)
 Destory FE type.
 
procedure mat_create (self, new)
 Create matrix for FE representation.
 
procedure(afem_ncdofs), deferred ncdofs (self, cell, dofs)
 Get weight indices for a given cell.
 
procedure ncdofs (self, cell, dofs)
 Get weight indices for a given cell.
 
procedure(afem_setup), deferred setup (self, quad_order)
 Setup FE representation.
 
procedure setup (self, quad_order)
 Setup FE representation.
 
procedure vec_create (self, new, cache, native)
 Create vector for FE representation.
 
procedure vec_load (self, source, filename, path, err_flag)
 Load vector from HDF5 file.
 
procedure vec_save (self, source, filename, path, append)
 Save vector to HDF5 file.
 

Public Attributes

integer(i4), dimension(:), pointer bc => NULL()
 Boundary condition type.
 
logical, dimension(:), pointer be => NULL()
 Boundary element flag.
 
class(oft_vector), pointer cache_native => NULL()
 Native vector cache.
 
class(oft_vector), pointer cache_petsc => NULL()
 PETSc vector cache.
 
logical, dimension(:), pointer ce => NULL()
 Corner edge flag.
 
type(dof_map), dimension(:), pointer cmap => NULL()
 Mapping from face index to dof type.
 
integer(i4dim = -1
 Dimension of FE rep (ex. 3 for 3-vector or 1 for scalar)
 
type(fem_mpi_global), pointer global => NULL()
 Global index information.
 
integer(i4), dimension(4) gstruct = -1
 Geometric mapping array.
 
integer(i4), dimension(:,:), pointer, contiguous inodesc => NULL()
 Needs docs.
 
integer(i4), dimension(:,:,:), pointer, contiguous inodese => NULL()
 Needs docs.
 
integer(i4), dimension(:,:,:), pointer, contiguous inodesf => NULL()
 Needs docs.
 
integer(i4), dimension(3, 8) inodesp
 Needs docs.
 
class(oft_matrix), pointer interp => NULL()
 Interpolation matrix.
 
type(oft_graph), pointer interp_graph => NULL()
 Interpolation graph.
 
integer(i4), dimension(:), pointer kec => NULL()
 Pointer to cell connectivity list.
 
integer(i4), dimension(:), pointer, contiguous kee => NULL()
 Pointer to element connectivity list.
 
integer(i4), dimension(:), pointer lbe => NULL()
 List of boundary elements.
 
integer(i4), dimension(:), pointer lec => NULL()
 Element to cell connectivity list.
 
integer(i4), dimension(:), pointer, contiguous lee => NULL()
 Element to element connectivity list.
 
integer(i8), dimension(:), pointer legacy_lge => NULL()
 Legacy global element list.
 
type(oft_seam), pointer linkage => NULL()
 Global linkage information.
 
type(oft_map), pointer map => NULL()
 Linear algebra mapping.
 
class(oft_mesh), pointer mesh => NULL()
 Structure containing bound mesh.
 
integer(i4nbe = -1
 Number of boundary elements.
 
integer(i4nce = -1
 Number of elements per cell.
 
integer(i4ne = -1
 Number of total elements.
 
integer(i4nec = -1
 Number of element to cell interactions.
 
integer(i4necmax = -1
 Maximum number of neighbors cells for one element.
 
integer(i4nee = -1
 Number of element to element interactions.
 
integer(i4nnodes = -1
 Number of quadrature nodes on mesh.
 
integer(i4order = -1
 FE rep order.
 
type(oft_quad_type) quad
 Global quadrature structure.
 
real(r8), dimension(:,:), pointer, contiguous sn => NULL()
 Surface normal vector.
 
integer(i4type = -1
 FE type.
 
class(oft_matrix), pointer vinterp => NULL()
 Vector interpolation matrix.
 
real(r8), dimension(:), pointer, contiguous xnodes => NULL()
 Needs docs.
 

Member Function/Subroutine Documentation

◆ delete() [1/3]

procedure delete ( class(oft_afem_type), intent(inout)  self)
inherited

Destory FE type.

◆ delete() [2/3]

procedure delete ( class(oft_fem_type), intent(inout)  self)
inherited

Destory FE type.

◆ delete() [3/3]

procedure delete ( class(oft_scalar_fem), intent(inout)  self)

Destory FE type.

◆ mat_create()

procedure mat_create ( class(oft_afem_type), intent(inout)  self,
class(oft_matrix), intent(out), pointer  new 
)
inherited

Create matrix for FE representation.

Parameters
[out]newMatrix to create

◆ ncdofs() [1/2]

procedure(afem_ncdofs), deferred ncdofs ( class(oft_afem_type), intent(in)  self,
integer(i4), intent(in)  cell,
integer(i4), dimension(:), intent(inout)  dofs 
)
pure virtualinherited

Get weight indices for a given cell.

◆ ncdofs() [2/2]

procedure ncdofs ( class(oft_fem_type), intent(in)  self,
integer(i4), intent(in)  cell,
integer(i4), dimension(:), intent(inout)  dofs 
)
inherited

Get weight indices for a given cell.

Parameters
[in]selfFinite element representation
[in]cellDesired cell in mesh
[in,out]dofsIndices of cell elements [selfnce]

◆ setup() [1/2]

procedure(afem_setup), deferred setup ( class(oft_afem_type), intent(inout)  self,
integer(i4), intent(in)  quad_order 
)
pure virtualinherited

Setup FE representation.

◆ setup() [2/2]

procedure setup ( class(oft_fem_type), intent(inout)  self,
integer(i4), intent(in)  quad_order 
)
inherited

Setup FE representation.

Constructs a finite element representation from a specified geometric mapping, provided by gstruct, and the assigned mesh. The result is a fully defined finite element type which my be used to define weight vectors, matrix graphs, etc. required to employ the finite element method on the chosen tetrahedral grid.

Parameters
[in,out]selfFE representation to construct
[in]quad_orderDesired quadrature order

◆ vec_create()

procedure vec_create ( class(oft_afem_type), intent(inout)  self,
class(oft_vector), intent(out), pointer  new,
logical, intent(in), optional  cache,
logical, intent(in), optional  native 
)
inherited

Create vector for FE representation.

Parameters
[out]newVector to create
[in]cacheAllow caching (optional)
[in]nativeForce native representation (optional)

◆ vec_load()

procedure vec_load ( class(oft_afem_type), intent(inout)  self,
class(oft_vector), intent(inout), target  source,
character(*), intent(in)  filename,
character(*), intent(in)  path,
integer(i4), intent(out), optional  err_flag 
)
inherited

Load vector from HDF5 file.

Parameters
[in,out]sourceDestination vector
[in]filenameName of source file
[in]pathField path in file
[out]err_flagError flag

◆ vec_save()

procedure vec_save ( class(oft_afem_type), intent(inout)  self,
class(oft_vector), intent(inout), target  source,
character(*), intent(in)  filename,
character(*), intent(in)  path,
logical, intent(in), optional  append 
)
inherited

Save vector to HDF5 file.

Parameters
[in,out]sourceSource field
[in]filenameName of destination file
[in]pathField label in file
[in]appendAppend to file instead of creating?

Member Data Documentation

◆ bc

integer(i4), dimension(:), pointer bc => NULL()
inherited

Boundary condition type.

◆ be

logical, dimension(:), pointer be => NULL()
inherited

Boundary element flag.

◆ cache_native

class(oft_vector), pointer cache_native => NULL()
inherited

Native vector cache.

◆ cache_petsc

class(oft_vector), pointer cache_petsc => NULL()
inherited

PETSc vector cache.

◆ ce

logical, dimension(:), pointer ce => NULL()
inherited

Corner edge flag.

◆ cmap

type(dof_map), dimension(:), pointer cmap => NULL()
inherited

Mapping from face index to dof type.

◆ dim

integer(i4) dim = -1
inherited

Dimension of FE rep (ex. 3 for 3-vector or 1 for scalar)

◆ global

type(fem_mpi_global), pointer global => NULL()
inherited

Global index information.

◆ gstruct

integer(i4), dimension(4) gstruct = -1
inherited

Geometric mapping array.

◆ inodesc

integer(i4), dimension(:,:), pointer, contiguous inodesc => NULL()

Needs docs.

◆ inodese

integer(i4), dimension(:,:,:), pointer, contiguous inodese => NULL()

Needs docs.

◆ inodesf

integer(i4), dimension(:,:,:), pointer, contiguous inodesf => NULL()

Needs docs.

◆ inodesp

integer(i4), dimension(3,8) inodesp

Needs docs.

◆ interp

class(oft_matrix), pointer interp => NULL()

Interpolation matrix.

◆ interp_graph

type(oft_graph), pointer interp_graph => NULL()

Interpolation graph.

◆ kec

integer(i4), dimension(:), pointer kec => NULL()
inherited

Pointer to cell connectivity list.

◆ kee

integer(i4), dimension(:), pointer, contiguous kee => NULL()
inherited

Pointer to element connectivity list.

◆ lbe

integer(i4), dimension(:), pointer lbe => NULL()
inherited

List of boundary elements.

◆ lec

integer(i4), dimension(:), pointer lec => NULL()
inherited

Element to cell connectivity list.

◆ lee

integer(i4), dimension(:), pointer, contiguous lee => NULL()
inherited

Element to element connectivity list.

◆ legacy_lge

integer(i8), dimension(:), pointer legacy_lge => NULL()
inherited

Legacy global element list.

◆ linkage

type(oft_seam), pointer linkage => NULL()
inherited

Global linkage information.

◆ map

type(oft_map), pointer map => NULL()
inherited

Linear algebra mapping.

◆ mesh

class(oft_mesh), pointer mesh => NULL()
inherited

Structure containing bound mesh.

◆ nbe

integer(i4) nbe = -1
inherited

Number of boundary elements.

◆ nce

integer(i4) nce = -1
inherited

Number of elements per cell.

◆ ne

integer(i4) ne = -1
inherited

Number of total elements.

◆ nec

integer(i4) nec = -1
inherited

Number of element to cell interactions.

◆ necmax

integer(i4) necmax = -1
inherited

Maximum number of neighbors cells for one element.

◆ nee

integer(i4) nee = -1
inherited

Number of element to element interactions.

◆ nnodes

integer(i4) nnodes = -1
inherited

Number of quadrature nodes on mesh.

◆ order

integer(i4) order = -1
inherited

FE rep order.

◆ quad

type(oft_quad_type) quad
inherited

Global quadrature structure.

◆ sn

real(r8), dimension(:,:), pointer, contiguous sn => NULL()

Surface normal vector.

◆ type

integer(i4) type = -1
inherited

FE type.

◆ vinterp

class(oft_matrix), pointer vinterp => NULL()

Vector interpolation matrix.

◆ xnodes

real(r8), dimension(:), pointer, contiguous xnodes => NULL()

Needs docs.


The documentation for this type was generated from the following file: