12#ifndef BELFEM_CL_IWG_HPP
13#define BELFEM_CL_IWG_HPP
29#define BELFEM_MAX_DOFTYPES 32
30#define BELFEM_MAX_NUMPROCS 128
54 class BoundaryCondition ;
831 const uint aDirection,
837 N(
const uint & aIntegrationPoint );
986 const string & aFieldLabel );
1001 const string & aFieldLabel,
1010 const string & aFieldLabel,
1019 const string & aEdgeFieldLabel,
1027 const string & aEdgeFieldLabel,
1028 const string & aFaceFieldLabel,
1036 const string & aFieldLabel,
1045 doftype(
const string & aDofLabel )
const ;
1152 const bool aHaveStiffness=
true );
1253 create_doftype_map() ;
1258 concatenate_field_lists();
1263 create_block_dof_tables(
const uint aNumBlocks );
1268 create_sideset_dof_tables(
const uint aNumSideSets );
1273 count_sideset_dofs_per_sideset(
1278 const bool aUseBitset );
1349 inline const string &
1488 return aSideSetOnly ?
1498 return aSideSetOnly ?
1508 return aSideSetOnly ?
1518 return aSideSetOnly ?
1592 return aMesh ==
nullptr ? 1 : 0 ;
1662 inline const string &
Compile-time fixed-size bitset.
Definition cl_Bitset.hpp:32
size_t size() const
return the size of the Cell
Definition cl_Cell.hpp:181
bool key_exists(const Key &aKey) const
Definition cl_Map.hpp:161
Base class for all materials in BELFEM.
Definition cl_Material.hpp:279
Top-level container for all mesh entities.
Definition cl_Mesh.hpp:60
Definition cl_FEM_Block.hpp:35
Definition cl_FEM_Calculator.hpp:600
abstract interface of the dof manager as seen by the group classes and the IWG; DofManager is its onl...
Definition cl_FEM_DofManagerBase.hpp:44
Definition cl_FEM_Element.hpp:41
Definition cl_FEM_Group.hpp:45
bool compute_jacobian_on_block() const
called by dof manager
Definition cl_IWG.hpp:1655
uint mTimeLoop
value for timeloop, needed if we don't want to write every timestep
Definition cl_IWG.hpp:103
bool mEnrichSideSets
Definition cl_IWG.hpp:100
virtual void custom_postprocess()
Definition cl_IWG.cpp:2228
Cell< DofTable * > mSideSetOnlyDofs
Definition cl_IWG.hpp:249
IwgMode mode() const
return the calculation mode of this IWG
Definition cl_IWG.cpp:231
uint number_of_dofs_per_node() const
DEPRECATED!
Definition cl_IWG.cpp:735
virtual void compute_boundary_flux_matrix(Element *aElement, const uint aDirection, Matrix< real > &aJacobian)
special function to compute the boundary flux in magnetics impose zero as weak BC
Definition cl_IWG.cpp:1703
uint mNumberOfNodesPerMaster
Definition cl_IWG.hpp:163
void collect_lambda_data(Element *aElement, const string &aFieldLabel, real &aData)
Definition cl_IWG.cpp:1007
index_t cell_multiplicity() const
tells how many dofs sit on one cell
Definition cl_IWG.hpp:1462
DomainType block_type(const id_t aID) const
Definition cl_IWG.cpp:2093
void count_dofs_per_block()
Definition cl_IWG.cpp:1514
uint mNumberOfThinShellLayers
Definition cl_IWG.hpp:150
const Vector< index_t > & dofs_per_cell_on_sideset(const id_t, const bool aSideSetOnly=false) const
Definition cl_IWG.hpp:1516
Vector< index_t > mNodesOnWettedSidesets
Definition cl_IWG.hpp:208
Cell< string > mOtherFields
Definition cl_IWG.hpp:191
Vector< index_t > mDefaultDofTypes
Definition cl_IWG.hpp:230
bool compute_jacobian_on_sideset() const
called by dof manager
Definition cl_IWG.hpp:1646
Cell< mesh::Node * > mOrphanedNodes
nodes that belong to no active element but still carry a phi dof ( see Mesh::orphaned_nodes() )
Definition cl_IWG.hpp:299
uint & time_loop()
Definition cl_IWG.hpp:1671
Map< DomainType, GroupActivationMode > mBlockActivationModes
maps domain types to activation modes for blocks
Definition cl_IWG.hpp:282
Vector< real > mPenalty
Definition cl_IWG.hpp:93
uint mNumberOfEdgeDofsPerElement
Definition cl_IWG.hpp:176
virtual void compute_jacobian(Element *aElement, Matrix< real > &aJacobian)
Definition cl_IWG.cpp:317
Cell< string > mTensorFields
Definition cl_IWG.hpp:188
SolverAlgorithm algorithm() const
returns the solver algorithm
Definition cl_IWG.hpp:1623
Cell< string > mDofFields
Definition cl_IWG.hpp:182
index_t number_of_fields() const
return the number of connected fiends
Definition cl_IWG.hpp:1358
Vector< id_t > mWettedSidesets
Definition cl_IWG.hpp:202
const string & field(const index_t aIndex) const
return the names of a specific field
Definition cl_IWG.hpp:1350
Cell< string > mFluxFields
Definition cl_IWG.hpp:185
const Cell< string > & flux_fields() const
return the names of the flux fields
Definition cl_IWG.hpp:1318
const Vector< id_t > & selected_sidesets() const
returns the list of selected sidesets
Definition cl_IWG.hpp:1293
DofTable mAbstractNodeTable
Definition cl_IWG.hpp:304
virtual void compute_rhs(Element *aElement, Vector< real > &aRHS)
Definition cl_IWG.cpp:327
uint mNumberOfEdgesPerElement
Definition cl_IWG.hpp:166
uint mNumberOfNodesPerSlave
Definition cl_IWG.hpp:164
uint mNumberOfDofsPerFace
Definition cl_IWG.hpp:147
const SideSetDofLinkMode mSideSetDofLinkMode
mode how sidesets are linked
Definition cl_IWG.hpp:131
DomainType sideset_type(const id_t aID) const
Definition cl_IWG.cpp:2108
Map< id_t, DomainType > mSideSetTypes
links sideset IDs with the designated types
Definition cl_IWG.hpp:276
Cell< DofTable * > mSideSetDofs
contains the sideset dofs
Definition cl_IWG.hpp:245
Cell< string > mHiddenFields
Definition cl_IWG.hpp:196
void select_sidesets(const Vector< id_t > &aSidesetIDs)
the sidesets are selected over the IWG object.
Definition cl_IWG.cpp:291
void delete_block_dof_tables()
Tidy up memory.Called by destructor.
Definition cl_IWG.cpp:1796
virtual void reset_fields()
called by main file to copy fields from last timestep eg.
Definition cl_IWG.cpp:1788
Map< id_t, DomainType > mBlockTypes
Definition cl_IWG.hpp:273
const Cell< string > & all_fields() const
return the names of all fields
Definition cl_IWG.hpp:1342
uint get_field_index(const uint aDofType) const
Definition cl_IWG.hpp:1722
Cell< string > mAllFields
Definition cl_IWG.hpp:193
void unique_and_rearrange(Cell< string > &aDofs, const bool aMakeMap=false)
makes sure that dof list is unique and also creares dofmap must be accessible by Mawell_FieldList as ...
Definition cl_IWG.cpp:1829
uint mNumberOfNodesPerElement
Definition cl_IWG.hpp:162
virtual void allocate_work_matrices(Group *aGroup)
Definition cl_IWG.cpp:1025
GroupActivationMode block_activation_mode(const DomainType aType) const
returns the activation mode for a block based on its domain type
Definition cl_IWG.cpp:2135
uint mNumberOfRhsEdgeDofsPerElement
Definition cl_IWG.hpp:179
bool has_convection() const
tells if this field has an alpha boundary condition
Definition cl_IWG.hpp:1301
void set_sidesets(const Vector< id_t > &aSideSetIDs, const Cell< DomainType > &aSideSetTypes)
Definition cl_IWG.cpp:1732
void collect_node_data(Element *aElement, Cell< string > &aFieldLabels, Matrix< real > &aData)
Definition cl_IWG.cpp:760
Map< uint, uint > mDofFieldMap
Definition cl_IWG.hpp:227
void set_algorithm(const SolverAlgorithm aAlgorithm)
sets the mode for the solver algorithm
Definition cl_IWG.cpp:85
bool mComputeJacobianOnSideset
Definition cl_IWG.hpp:112
SymmetryMode mSymmetryMode
needed for the solver
Definition cl_IWG.hpp:125
uint number_of_edges_per_element(SideSet *aSideSet) const
Definition cl_IWG.cpp:572
uint number_of_lambda_dofs(const id_t aSideSetID) const
Definition cl_IWG.cpp:723
IwgType type() const
return the type of this IWG
Definition cl_IWG.cpp:215
index_t edge_field_index(const index_t aDofType) const
Definition cl_IWG.hpp:1550
Calculator * mCalc
Definition cl_IWG.hpp:140
void delete_boundary_conditions()
Reserved; not defined and not called by the destructor.
bool enrich_sidesets() const
Definition cl_IWG.hpp:1582
uint number_of_dofs_per_node_on_sideset(const id_t aSideSetID) const
Definition cl_IWG.hpp:1390
Map< string, uint > mDofMap
Definition cl_IWG.hpp:262
Cell< Vector< index_t > > mDofsPerSideSet
Definition cl_IWG.hpp:239
uint number_of_faces_per_element(SideSet *aSideSet) const
Definition cl_IWG.cpp:605
const Vector< index_t > & default_dof_types() const
Definition cl_IWG.hpp:1542
virtual void set_timestepping_method(const EulerMethod aMethod, const bool aHaveStiffness=true)
Definition cl_IWG.cpp:2167
void set_num_rhs_cols(const uint &aNumRhsCols)
special function, must be called before init->jacobian() is called
Definition cl_IWG.cpp:109
index_t mAbstractDofType
Definition cl_IWG.hpp:305
virtual void initialize()
Definition cl_IWG.cpp:1159
const ModelDimensionality mDimensionality
this enum tells which dimensionality we have
Definition cl_IWG.hpp:118
Cell< DofTable * > mBlockDofs
contains the block dofs
Definition cl_IWG.hpp:242
Vector< real > mNormal2D
normal, if this is a 2d problem, todo: delete
Definition cl_IWG.hpp:288
void set_omega(const real &aOmega)
set the relaxation parameter
Definition cl_IWG.cpp:1063
virtual bool has_edge_dofs() const
flag telling if the IWG has edge dofs
Definition cl_IWG.hpp:1599
virtual int check_mesh(Mesh *aMesh, const proc_t aMasterRank=0)
This routine makes sure that the mesh fulfills the requirements.
Definition cl_IWG.hpp:1590
const Vector< index_t > & dofs_per_edge(const id_t aBlockID) const
Definition cl_IWG.hpp:1430
Vector< id_t > mBlockIDs
Definition cl_IWG.hpp:214
Vector< id_t > mSideSetIDs
Definition cl_IWG.hpp:217
Group * mGroup
Definition cl_IWG.hpp:139
bool mIsInitialized
flag telling if we have been initialized
Definition cl_IWG.hpp:96
virtual void link_to_group(Group *aGroup)
Definition cl_IWG.cpp:383
void select_blocks(const Vector< id_t > &aBlockIDs)
the blocks are selected over the IWG object.
Definition cl_IWG.cpp:265
virtual uint timestepping_order() const
Definition cl_IWG.cpp:2212
const Vector< index_t > & dofs_per_face_on_sideset(const id_t aSideSetID, const bool aSideSetOnly=false) const
Definition cl_IWG.hpp:1506
bool mComputeJacobianOnBlock
Definition cl_IWG.hpp:105
void select_block(const id_t aBlockID)
Definition cl_IWG.cpp:239
const IwgMode mMode
this enum tells if we have to perform a Newton-Raphson
Definition cl_IWG.hpp:121
uint mNumberOfFacesPerElement
Definition cl_IWG.hpp:167
const Cell< string > & tensor_fields() const
special purpose if RHS is a matrix
Definition cl_IWG.hpp:1326
real penalty(const uint aIndex) const
get penalty parameter
Definition cl_IWG.hpp:1374
Map< id_t, index_t > mBlockIndices
Definition cl_IWG.hpp:220
Map< string, uint > mDofTypeMap
Definition cl_IWG.hpp:226
Map< DomainType, GroupActivationMode > mSideSetActivationModes
maps domain types to activation modes for sidesets
Definition cl_IWG.hpp:285
uint mNumberOfRhsCols
Definition cl_IWG.hpp:199
void set_interpolation_type(const InterpolationType aType)
set the interpolation type of node elements
Definition cl_IWG.hpp:1679
uint mNumberOfDerivativeDimensions
Definition cl_IWG.hpp:159
index_t mCellDofMultiplicity
Definition cl_IWG.hpp:259
void collect_edge_data(Element *aElement, const string &aEdgeFieldLabel, Vector< real > &aData)
Definition cl_IWG.cpp:911
virtual void compute_mkf(Element *aElement)
Definition cl_IWG.cpp:356
const Vector< index_t > & dofs_per_node(const id_t aBlockID) const
Definition cl_IWG.hpp:1422
const Vector< index_t > & dofs_per_edge_on_sideset(const id_t aSideSetID, const bool aSideSetOnly=false) const
Definition cl_IWG.hpp:1496
const Vector< index_t > & dofs_per_node_on_sideset(const id_t aSideSetID, const bool aSideSetOnly=false) const
Definition cl_IWG.hpp:1486
uint lambda_multiplicity() const
if this number is > 0, we have langrande dofs such as contact
Definition cl_IWG.hpp:1607
IWG & operator=(const IWG &)=delete
virtual TimestepMatrices * matrices()
Definition cl_IWG.cpp:364
index_t abstract_dof_type() const
Definition cl_IWG.hpp:1710
InterpolationType interpolation_type() const
return the interpolation type of node elements
Definition cl_IWG.hpp:1687
index_t edge_multiplicity() const
tells how many dofs sit on one edge
Definition cl_IWG.hpp:1446
Calculator * calc()
Definition cl_IWG.hpp:1695
virtual void shift_fields()
called by main file to copy fields into last timestep eg.
Definition cl_IWG.cpp:1780
void add_fields(const Cell< string > &aFieldLabels)
add additional non-dof fields to mOtherFields and mAllFields; a label "alpha" also sets mHasConvectio...
Definition cl_IWG.cpp:1106
const Vector< id_t > & wetted_sidesets() const
Definition cl_IWG.cpp:207
Cell< Dof * > mAbstractNodeDofs
list with special dofs that sit on abstract nodes
Definition cl_IWG.hpp:302
const Vector< index_t > & dofs_per_face(const id_t aBlockID) const
Definition cl_IWG.hpp:1438
Map< id_t, index_t > mSideSetIndices
Definition cl_IWG.hpp:223
virtual void compute_alpha_boundary_condition(Element *aElement, Matrix< real > &aJacobian, Vector< real > &aRHS)
Definition cl_IWG.cpp:1147
virtual void compute_convection(Element *aElement, Vector< real > &aConvection)
Definition cl_IWG.cpp:373
Vector< real > mNormal3D
normal, if this is a 3d problem, todo: delete
Definition cl_IWG.hpp:291
real & delta_time()
Definition cl_IWG.cpp:1098
Vector< index_t > mDofEntityTypes
Definition cl_IWG.hpp:233
Vector< index_t > mFaceFieldIndices
Definition cl_IWG.hpp:252
const Vector< index_t > & dofs_per_sideset(const id_t aSidesetID) const
intended to be used for interface dof creation
Definition cl_IWG.hpp:1566
uint number_of_dofs_per_cell(const id_t aBlockID) const
Definition cl_IWG.hpp:1414
real omega() const
get relaxation parameter
Definition cl_IWG.hpp:1366
real mOmega
Definition cl_IWG.hpp:90
Map< id_t, DomainType > mSideSetSubTypes
links sideset IDs with the designated types
Definition cl_IWG.hpp:279
virtual void collect_abstract_node_dofs()
Definition cl_IWG.cpp:2175
virtual void create_custom_vectors_and_matrices(Calculator *aCalc)
Definition cl_IWG.cpp:2220
uint mNumberOfRhsDofsPerFace
Definition cl_IWG.hpp:149
virtual void init_activation_maps()
populates the activation mode maps for blocks and sidesets based on domain types.
Definition cl_IWG.cpp:2123
uint num_rhs_cols() const
Definition cl_IWG.cpp:743
virtual void assign_dofs_per_block(const Vector< id_t > &aBlockIDs)
this function assumes that all blocks are treated equally.
Definition cl_IWG.cpp:1494
real mDeltaTime
Definition cl_IWG.hpp:205
const Vector< index_t > & lambda_dofs(const id_t aSideSetID) const
Definition cl_IWG.hpp:1526
const Vector< id_t > & selected_blocks() const
returns the list of selected blocks
Definition cl_IWG.hpp:1285
Mesh * mMesh
Definition cl_IWG.hpp:137
virtual void set_wetted_sidesets(const Vector< id_t > &aSideSets)
Definition cl_IWG.cpp:117
index_t face_field_index(const index_t aDofType) const
Definition cl_IWG.hpp:1558
const Cell< string > & dof_fields() const
return the names of the potential fields
Definition cl_IWG.hpp:1309
void collect_nodes_on_wetted_sitdesets(Mesh *aMesh, const Vector< id_t > &aSideSets)
populate the node indices for the nodes that sit on wetted sidesets
Definition cl_IWG.cpp:155
void hide_fields_from_exodus(Mesh *aMesh)
hides fields that are not to be saved to exodus
Definition cl_IWG.cpp:1766
index_t mLambdaDofMultiplicity
Definition cl_IWG.hpp:260
uint mNumberOfNodeDofsPerElement
Definition cl_IWG.hpp:173
uint mNumberOfSpatialDimensions
Definition cl_IWG.hpp:156
void set_blocks(const Vector< id_t > &aBlockIDs, const Cell< DomainType > &aBlockTypes)
Definition cl_IWG.cpp:1715
SideSetDofLinkMode sideset_dof_link_mode() const
return the dof linking mode for sideset
Definition cl_IWG.hpp:1615
const IwgType mType
this enum tells which equation object is used
Definition cl_IWG.hpp:115
const Vector< index_t > & dofs_per_cell(const id_t aBlockID) const
Definition cl_IWG.hpp:1470
void count_dofs_per_sideset()
Definition cl_IWG.cpp:1629
uint doftype(const string &aDofLabel) const
return the type id of a dof
Definition cl_IWG.hpp:1631
ModelDimensionality model_dimensionality() const
return the dimensionality of this IWG
Definition cl_IWG.cpp:223
uint mNumberOfDofsPerEdge
Definition cl_IWG.hpp:146
InterpolationType mInterpolationType
Definition cl_IWG.hpp:293
Cell< Vector< index_t > > mDofsPerBlock
Definition cl_IWG.hpp:236
uint number_of_dofs_per_face(const id_t aBlockID) const
Definition cl_IWG.hpp:1406
Cell< mesh::Node * > mAbstractNodes
abstract nodes needed for cut BCs in MAXWELL
Definition cl_IWG.hpp:296
bool is_initialized() const
Definition cl_IWG.hpp:1574
index_t mFaceDofMultiplicity
Definition cl_IWG.hpp:258
virtual void compute_jacobian_and_rhs(Element *aElement, Matrix< real > &aJacobian, Vector< real > &aRHS)
Definition cl_IWG.cpp:347
uint mNumberOfDofsPerNode
Definition cl_IWG.hpp:145
Cell< mesh::Node * > & abstract_nodes()
Definition cl_IWG.hpp:1703
DofManagerBase * mField
Definition cl_IWG.hpp:138
Cell< mesh::Node * > & orphaned_nodes()
Definition cl_IWG.hpp:1716
Vector< index_t > mEdgeFieldIndices
Definition cl_IWG.hpp:251
const DofMode mDofMode
except maxwell, most IWGs are AllBlocksEqual
Definition cl_IWG.hpp:128
index_t face_multiplicity() const
tells how many dofs sit on one face
Definition cl_IWG.hpp:1454
SolverAlgorithm mSolverAlgorithm
Definition cl_IWG.hpp:135
virtual void assign_dofs_per_sideset(const Vector< id_t > &aSideSetIDs)
this function assumes that all sidesets are treated equally.
Definition cl_IWG.cpp:1504
void set_penalty(const real aPsi, const uint aIndex=0)
set the penalty parameter
Definition cl_IWG.cpp:1073
uint mNumberOfRhsDofsPerEdge
Definition cl_IWG.hpp:148
virtual uint number_of_dofs_per_element(Block *aBlock) const
Definition cl_IWG.cpp:509
void set_abstract_nodes(Cell< mesh::Node * > &aNodes)
Definition cl_IWG.cpp:1083
void delete_sideset_dof_tables()
Tidy up memory.Called by destructor.
Definition cl_IWG.cpp:1808
uint number_of_nodes_per_element(SideSet *aSideSet) const
Definition cl_IWG.cpp:526
bool mHasConvection
Definition cl_IWG.hpp:211
virtual void set_field(DofManagerBase *aField)
Definition cl_IWG.cpp:751
void print_dofs(Element *aElement, const bool aLocal=false)
for debugging
Definition cl_IWG.cpp:2006
const string & dof_label(const index_t aDofIndex)
for debugging
Definition cl_IWG.hpp:1663
SymmetryMode symmetry_mode() const
flag telling if matrices are symmetric
Definition cl_IWG.cpp:101
uint number_of_dofs_per_edge(const id_t aBlockID) const
Definition cl_IWG.hpp:1398
virtual EulerMethod method() const
Definition cl_IWG.cpp:2204
index_t mEdgeDofMultiplicity
Definition cl_IWG.hpp:257
void set_abstract_dof_type(const uint aDofType)
Definition cl_IWG.cpp:2196
const Material * mMaterial
Definition cl_IWG.hpp:142
GroupActivationMode sideset_activation_mode(const DomainType aType) const
returns the activation mode for a sideset based on its domain type
Definition cl_IWG.cpp:2151
const Cell< string > & other_fields() const
return the names of the other fields
Definition cl_IWG.hpp:1334
const Vector< index_t > & dof_entity_types() const
Definition cl_IWG.hpp:1534
const Matrix< real > & N(const uint &aIntegrationPoint)
uint mNumberOfDofsPerElement
Definition cl_IWG.hpp:171
Cell< string > mDofLabels
needed for debug output
Definition cl_IWG.hpp:265
void set_orphaned_nodes(Cell< mesh::Node * > &aNodes)
Definition cl_IWG.cpp:1090
const proc_t mCommRank
Definition cl_IWG.hpp:87
void collect_node_coords(Element *aElement, Matrix< real > &aX)
Definition cl_IWG.cpp:1749
IWG & operator=(IWG &&)=delete
Definition cl_FEM_SideSet.hpp:60
Container for element-level DENSE matrices in transient nonlinear FEM.
Definition cl_TimestepMatrices.hpp:71
SolverAlgorithm
Definition en_FEM_SolverAlgorithm.hpp:20
@ UNDEFINED
Definition en_FEM_SolverAlgorithm.hpp:24
SideSetDofLinkMode
how the dofs of a sideset element are linked to its facet, master and slave elements ( six modes plus...
Definition en_IWG_SideSetDofLinkMode.hpp:25
@ FacetOnly
Definition en_IWG_SideSetDofLinkMode.hpp:26
GroupActivationMode
Defines how a fem::Block or fem::SideSet is activated based on its DomainType.
Definition en_FEM_GroupActivationMode.hpp:26
USER GUIDES:
Definition cl_Capacitor.cpp:16
IwgMode
Definition en_IWGs.hpp:81
@ Iterative
Definition en_IWGs.hpp:83
IwgType
Definition en_IWGs.hpp:64
InterpolationType
Definition Mesh_Enums.hpp:99
@ LAGRANGE
Definition Mesh_Enums.hpp:100
EulerMethod
Definition en_SolverEnums.hpp:47
DofMode
Definition cl_IWG.hpp:38
@ BlockSpecific
Definition cl_IWG.hpp:40
@ AllBlocksEqual
Definition cl_IWG.hpp:39
unsigned int uint
Definition typedefs.hpp:30
unsigned int id_t
Definition typedefs.hpp:41
ModelDimensionality
Definition en_IWGs.hpp:20
int proc_t
Definition commtypes.hpp:29
constexpr index_t gNoIndex
Definition typedefs.hpp:57
SymmetryMode
Definition en_SolverEnums.hpp:36
@ Unsymmetric
Definition en_SolverEnums.hpp:37
uint32_t index_t
Definition typedefs.hpp:52
double real
Definition typedefs.hpp:36
DomainType
Definition en_DomainType.hpp:20
the dof table contains the dofs per block and sideset
Definition cl_IWG.hpp:63
Vector< index_t > Cell
Definition cl_IWG.hpp:67
Vector< index_t > Node
Definition cl_IWG.hpp:64
Vector< index_t > Face
Definition cl_IWG.hpp:66
Vector< index_t > Edge
Definition cl_IWG.hpp:65
Vector< index_t > Lambda
Definition cl_IWG.hpp:68
#define BELFEM_UINT_MAX
Definition typedefs.hpp:80