v0.5.86
Macros | Enumerations | Functions | Variables
definitions.h File Reference

useful compiler directives and definitions More...

Go to the source code of this file.

Macros

#define DEPRECATED
 
#define BITREFEDGES_SIZE   6
 number of edges on tetrahedral More...
 
#define BITREFLEVEL_SIZE   128
 max number of refinements More...
 
#define BITFIELDID_SIZE   32
 max number of fields More...
 
#define BITFEID_SIZE   32
 max number of finite elements More...
 
#define BITPROBLEMID_SIZE   32
 max number of problems More...
 
#define BITINTERFACEUID_SIZE   32
 
#define MYPCOMM_INDEX   0
 default communicator number PCOMM More...
 
#define MB_TYPE_WIDTH   4
 
#define MB_ID_WIDTH   (8*sizeof(EntityHandle)-MB_TYPE_WIDTH)
 
#define MB_TYPE_MASK   ((EntityHandle)0xF << MB_ID_WIDTH)
 
#define MB_START_ID   ((EntityID)1)
 All entity id's currently start at 1. More...
 
#define MB_END_ID   ((EntityID)MB_ID_MASK)
 Last id is the complement of the MASK. More...
 
#define MB_ID_MASK   (~MB_TYPE_MASK)
 
#define MAX_DOFS_ON_ENTITY   512
 Maximal number of DOFs on entity. More...
 
#define DOF_UID_MASK_ON_ENTITY   (MAX_DOFS_ON_ENTITY-1)
 Mask for DOF number on entity form UId. More...
 
#define NOT_USED(x)   ( (void)(x) )
 
#define BARRIER_RANK_START(PCMB)
 set barrier start Run code in sequence, starting from process 0, and ends on last process. More...
 
#define BARRIER_RANK_END(PCMB)
 set barrier start Run code in sequence, starting from process 0, and ends on last process. More...
 
#define CHKERRQ_MOAB(a)
 check error code of MoAB function More...
 
#define MOAB_THROW(a)
 
#define THROW_MESSAGE(a)
 Throw MoFEM exception. More...
 
#define SSTR(x)   toString(x)
 Convert number to string. More...
 

Enumerations

enum  Interfaces {
  UNKNOWNINTERFACE = 1<<0, CORE_INTERFACE = 1<<0|1<<1, PROBLEMSMANAGER_INTERFACE = 1<<0|1<<2, SIMPLE_INTERFACE = 1<<0|1<<3,
  MESH_REFINE = 1<<1|1<<2, PRISM_INTEFACE = 1<<1|1<<3, SERIES_RECORDER = 1<<1|1<<4, ISMANAGER_INTERFACE = 1<<1|1<<5,
  VECMANAGER_INTERFACE = 1<<1|1<<6, FIELDBLAS_INTERFACE = 1<<1|1<<7, BITREFMANAGER_INTERFACE = 1<<1|1<<8, TETGEN_INTERFACE = 1<<3|1<<4,
  MED_INTERFACE = 1<<3|1<<5, NODEMERGER_INTERFACE = 1<<3|1<<6, BITLEVELCOUPLER_INTERFACE = 1<<3|1<<7, PRISMSFROMSURFACE_INTERFACE = 1<<3|1<<8,
  MESHSETSMANAGER_INTERFACE = 1<<3|1<<9, COORDSSYSTEMMANAGER_INTERFACE = 1<<3|1<<10, CUTMESH_INTERFACE = 1<<3|1<<11
}
 Interfaces IDs. More...
 
enum  LoopInterfaces {
  KSP_METHOD = 1<<0, SNES_METHOD = 1<<1, TS_METHOD = 1<<2, BASIC_METHOD = 1<<0|1<<1|1<<2,
  FE_METHOD = 1<<0|1<<1|1<<2|1<<3, ENT_METHOD = 1<<0|1<<1|1<<2|1<<4
}
 
enum  DMInterfaces { UNKNOWN_DM_INTERFACE = 1<<0, DMCTX_INTERFACE = 1<<1 }
 interfaces for PETSc DM interfaces More...
 
enum  BaseIntefaces {
  UNKNOWN_BASE_FUNCTION_INTERFACE = 1<<0, LEGENDRE_BASE_FUNCTION_INTERFACE = 1<<1, LOBATTO_BASE_FUNCTION_INTERFACE = 1<<2, KERNEL_BASE_FUNCTION_INTERFACE = 1<<3,
  JACOBI_BASE_FUNCTION_INTERFACE = 1<<4, ENT_BASE_FUNCTION_INTERFACE = 1<<5, TET_BASE_FUNCTION_INTERFACE = 1<<1|1<<3|1<<3, TRI_BASE_FUNCTION_INTERFACE = 1<<1|1<<3|1<<4,
  EDGE_BASE_FUNCTION_INTERFACE = 1<<1|1<<3|1<<5, FATPRISM_BASE_FUNCTION_INTERFACE = 1<<1|1<<3|1<<6, FLATPRISM_BASE_FUNCTION_INTERFACE = 1<<1|1<<3|1<<7
}
 Interfaces uses to manage base functions. More...
 
enum  MoFEMErrorCodes {
  MOFEM_SUCESS = 0, MOFEM_DATA_INCONSISTENCY = 100, MOFEM_NOT_IMPLEMENTED = 101, MOFEM_NOT_FOUND = 102,
  MOFEM_OPERATION_UNSUCCESSFUL = 103, MOFEM_IMPOSIBLE_CASE = 104, MOFEM_MOFEMEXCEPTION_THROW = 105, MOFEM_STD_EXCEPTION_THROW = 106,
  MOFEM_INVALID_DATA = 107, MOFEM_ATOM_TEST_INVALID = 108, MOFEM_MOAB_ERROR = 109
}
 Error handling. More...
 
enum  FieldApproximationBase {
  NOBASE = 0, AINSWORTH_LEGENDRE_BASE = 1, AINSWORTH_LOBBATO_BASE, AINSWORTH_BERNSTEIN_BEZIER_BASE,
  DEMKOWICZ_JACOBI_BASE, USER_BASE, LASTBASE
}
 approximation base More...
 
enum  FieldSpace {
  NOSPACE = 0, NOFIELD = 1, H1, HDIV,
  HCURL, L2, LASTSPACE
}
 approximation spaces More...
 
enum  MoFEMTypes { MF_ZERO = 0, MF_EXCL = 1<<0, MF_EXIST = 1<<1 }
 Those types control how functions respond on arguments, f.e. error handling. More...
 
enum  RowColData { ROW = 0, COL, DATA, LASTROWCOLDATA }
 RowColData. More...
 
enum  ByWhat {
  BYROW = 1<<0, BYCOL = 1<<1, BYDATA = 1<<2, BYROWDATA = 1<<0|1<<2,
  BYCOLDATA = 1<<1|1<<2, BYROWCOL = 1<<0|1<<1, BYALL = 1<<0|1<<1|1<<2
}
 
enum  CubitBC {
  UNKNOWNSET = 0, NODESET = 1<<0, SIDESET = 1<<1, BLOCKSET = 1<<2,
  MATERIALSET = 1<<3, DISPLACEMENTSET = 1<<4, FORCESET = 1<<5, PRESSURESET = 1<<6,
  VELOCITYSET = 1<<7, ACCELERATIONSET = 1<<8, TEMPERATURESET = 1<<9, HEATFLUXSET = 1<<10,
  INTERFACESET = 1<<11, UNKNOWNNAME = 1<<12, MAT_ELASTICSET = 1<<13, MAT_INTERFSET = 1<<14,
  MAT_THERMALSET = 1<<15, BODYFORCESSET = 1<<16, MAT_MOISTURESET = 1<<17, DIRICHLET_BC = 1<<18,
  NEUMANN_BC = 1<<19, LASTSET_BC = 1<<20
}
 
enum  H1DiffFormating { H1_0 = 0, H1_1, H1_2 }
 Format of rows in gradients of H1 base functions. More...
 
enum  HDivFormatting { HDIV0 = 0, HDIV1, HDIV2 }
 Format in rows of Hdiv base functions. More...
 
enum  HDivDiffFormatting {
  HDIV0_0 = 0, HDIV1_0, HDIV2_0, HDIV0_1,
  HDIV1_1, HDIV2_1, HDIV0_2, HDIV1_2,
  HDIV2_2
}
 Format in rows of Hdiv gradients of base functions. More...
 
enum  HCurlFormatting { HCURL0 = 0, HCURL1, HCURL2 }
 Format in rows of Hcurl base functions. More...
 
enum  HCurlDiffFormatting {
  HCURL0_0 = 0, HCURL1_0, HCURL2_0, HCURL0_1,
  HCURL1_1, HCURL2_1, HCURL0_2, HCURL1_2,
  HCURL2_2
}
 Format in rows of Hcurl gradients of base functions. More...
 

Functions

DEPRECATED void macro_is_depracted_using_deprecated_function ()
 Is used to indicate that macro is deprecated Do nothing just triggers error at the compilation. More...
 

Variables

static const char *const ApproximationBaseNames []
 
static const char *const FieldSpaceNames []
 
static const char *const CubitBCNames []
 Names of types of sets and boundary conditions. More...
 

Detailed Description

useful compiler directives and definitions

Definition in file definitions.h.

Macro Definition Documentation

◆ BARRIER_RANK_END

#define BARRIER_RANK_END (   PCMB)
Value:
{ for(unsigned int i = PCMB->proc_config().proc_rank(); \
i<PCMB->proc_config().proc_size(); i++) MPI_Barrier(PCMB->proc_config().proc_comm()); };

set barrier start Run code in sequence, starting from process 0, and ends on last process.

It can be only used for testing. Do not use that function as a part of these code.

Definition at line 340 of file definitions.h.

◆ BARRIER_RANK_START

#define BARRIER_RANK_START (   PCMB)
Value:
{ for(unsigned int i = 0; \
i<PCMB->proc_config().proc_rank(); i++) MPI_Barrier(PCMB->proc_config().proc_comm()); };

set barrier start Run code in sequence, starting from process 0, and ends on last process.

It can be only used for testing. Do not use that function as a part of these code.

Definition at line 329 of file definitions.h.

◆ BITFEID_SIZE

#define BITFEID_SIZE   32

max number of finite elements

Definition at line 301 of file definitions.h.

◆ BITFIELDID_SIZE

#define BITFIELDID_SIZE   32

max number of fields

Definition at line 300 of file definitions.h.

◆ BITINTERFACEUID_SIZE

#define BITINTERFACEUID_SIZE   32

Definition at line 303 of file definitions.h.

◆ BITPROBLEMID_SIZE

#define BITPROBLEMID_SIZE   32

max number of problems

Definition at line 302 of file definitions.h.

◆ BITREFEDGES_SIZE

#define BITREFEDGES_SIZE   6

number of edges on tetrahedral

Definition at line 298 of file definitions.h.

◆ BITREFLEVEL_SIZE

#define BITREFLEVEL_SIZE   128

max number of refinements

Definition at line 299 of file definitions.h.

◆ CHKERRQ_MOAB

#define CHKERRQ_MOAB (   a)
Value:
do { \
ErrorCode val = (a); \
if (MB_SUCCESS != val) { \
std::ostringstream ss; \
ss << "Error code " << val << " at " << __FILE__ << ":" << __LINE__ << std::endl; \
std::string str(ss.str()); \
SETERRQ(PETSC_COMM_SELF,MOFEM_MOAB_ERROR,str.c_str()); \
} \
} while (false)

check error code of MoAB function

Parameters
aMoABErrorCode
Examples:
cell_forces.cpp, elasticity.cpp, MagneticElement.hpp, unsaturated_transport.cpp, and UnsaturatedFlow.hpp.

Definition at line 362 of file definitions.h.

◆ DEPRECATED

#define DEPRECATED

Definition at line 29 of file definitions.h.

◆ DOF_UID_MASK_ON_ENTITY

#define DOF_UID_MASK_ON_ENTITY   (MAX_DOFS_ON_ENTITY-1)

Mask for DOF number on entity form UId.

Definition at line 318 of file definitions.h.

◆ MAX_DOFS_ON_ENTITY

#define MAX_DOFS_ON_ENTITY   512

Maximal number of DOFs on entity.

Definition at line 317 of file definitions.h.

◆ MB_END_ID

#define MB_END_ID   ((EntityID)MB_ID_MASK)

Last id is the complement of the MASK.

Definition at line 314 of file definitions.h.

◆ MB_ID_MASK

#define MB_ID_MASK   (~MB_TYPE_MASK)

Definition at line 315 of file definitions.h.

◆ MB_ID_WIDTH

#define MB_ID_WIDTH   (8*sizeof(EntityHandle)-MB_TYPE_WIDTH)

Definition at line 309 of file definitions.h.

◆ MB_START_ID

#define MB_START_ID   ((EntityID)1)

All entity id's currently start at 1.

Definition at line 313 of file definitions.h.

◆ MB_TYPE_MASK

#define MB_TYPE_MASK   ((EntityHandle)0xF << MB_ID_WIDTH)

Definition at line 310 of file definitions.h.

◆ MB_TYPE_WIDTH

#define MB_TYPE_WIDTH   4

Definition at line 308 of file definitions.h.

◆ MOAB_THROW

#define MOAB_THROW (   a)
Value:
do { \
ErrorCode val = (a); \
if (MB_SUCCESS != val) { \
std::ostringstream ss; \
ss << "Error code " << val << " at " << __FILE__ << ":" << __LINE__ << std::endl; \
throw MoFEMException(MOFEM_MOAB_ERROR,ss.str().c_str() ); \
} \
} while (false)

Check error code of MoAB function and throw MoFEM exception

Parameters
aMoABErrorCode

Definition at line 376 of file definitions.h.

◆ MYPCOMM_INDEX

#define MYPCOMM_INDEX   0

default communicator number PCOMM

Examples:
cell_forces.cpp, elasticity.cpp, and unsaturated_transport.cpp.

Definition at line 305 of file definitions.h.

◆ NOT_USED

#define NOT_USED (   x)    ( (void)(x) )

Definition at line 320 of file definitions.h.

◆ SSTR

#define SSTR (   x)    toString(x)

Convert number to string.

Parameters
xnumber

Definition at line 399 of file definitions.h.

◆ THROW_MESSAGE

#define THROW_MESSAGE (   a)
Value:
{ \
std::ostringstream ss; \
ss << a << " " << " at " << __FILE__ << ":" << __LINE__ << std::endl; \
throw MoFEMException(MOFEM_MOFEMEXCEPTION_THROW,ss.str().c_str() ); \
}

Throw MoFEM exception.

Parameters
amessage

Definition at line 389 of file definitions.h.

Enumeration Type Documentation

◆ BaseIntefaces

Interfaces uses to manage base functions.

Enumerator
UNKNOWN_BASE_FUNCTION_INTERFACE 
LEGENDRE_BASE_FUNCTION_INTERFACE 
LOBATTO_BASE_FUNCTION_INTERFACE 
KERNEL_BASE_FUNCTION_INTERFACE 
JACOBI_BASE_FUNCTION_INTERFACE 
ENT_BASE_FUNCTION_INTERFACE 
TET_BASE_FUNCTION_INTERFACE 
TRI_BASE_FUNCTION_INTERFACE 
EDGE_BASE_FUNCTION_INTERFACE 
FATPRISM_BASE_FUNCTION_INTERFACE 
FLATPRISM_BASE_FUNCTION_INTERFACE 

Definition at line 86 of file definitions.h.

◆ ByWhat

enum ByWhat

Controls adjency multi_index container (e.g. BYROW is adjacenciecy by field on on rows), see MoFEM::FieldEntityEntFiniteElementAdjacencyMap

Enumerator
BYROW 
BYCOL 
BYDATA 
BYROWDATA 
BYCOLDATA 
BYROWCOL 
BYALL 

Definition at line 193 of file definitions.h.

193  {
194  BYROW = 1<<0,
195  BYCOL = 1<<1,
196  BYDATA = 1<<2,
197  BYROWDATA = 1<<0|1<<2,
198  BYCOLDATA = 1<<1|1<<2,
199  BYROWCOL = 1<<0|1<<1,
200  BYALL = 1<<0|1<<1|1<<2
201 };

◆ CubitBC

enum CubitBC

Types of sets and boundary conditions

Enumerator
UNKNOWNSET 
NODESET 
SIDESET 
BLOCKSET 
MATERIALSET 
DISPLACEMENTSET 
FORCESET 
PRESSURESET 
VELOCITYSET 
ACCELERATIONSET 
TEMPERATURESET 
HEATFLUXSET 
INTERFACESET 
UNKNOWNNAME 
MAT_ELASTICSET 

block name is "MAT_ELASTIC"

MAT_INTERFSET 
MAT_THERMALSET 

block name is "MAT_THERMAL"

BODYFORCESSET 

block name is "BODY_FORCES"

MAT_MOISTURESET 

block name is "MAT_MOISTURE"

DIRICHLET_BC 
NEUMANN_BC 
LASTSET_BC 

Definition at line 207 of file definitions.h.

207  {
208  UNKNOWNSET = 0,
209  NODESET = 1<<0,
210  SIDESET = 1<<1,
211  BLOCKSET = 1<<2,
212  MATERIALSET = 1<<3,
213  DISPLACEMENTSET = 1<<4,
214  FORCESET = 1<<5,
215  PRESSURESET = 1<<6,
216  VELOCITYSET = 1<<7,
217  ACCELERATIONSET = 1<<8,
218  TEMPERATURESET = 1<<9,
219  HEATFLUXSET = 1<<10,
220  INTERFACESET = 1<<11,
221  UNKNOWNNAME = 1<<12,
222  MAT_ELASTICSET = 1<<13, ///< block name is "MAT_ELASTIC"
223  MAT_INTERFSET = 1<<14,
224  MAT_THERMALSET = 1<<15, ///< block name is "MAT_THERMAL"
225  BODYFORCESSET = 1<<16, ///< block name is "BODY_FORCES"
226  MAT_MOISTURESET = 1<<17, ///< block name is "MAT_MOISTURE"
227  DIRICHLET_BC = 1<<18,
228  NEUMANN_BC = 1<<19,
229  LASTSET_BC = 1<<20
230 };
block name is "MAT_MOISTURE"
Definition: definitions.h:226
block name is "MAT_THERMAL"
Definition: definitions.h:224
block name is "BODY_FORCES"
Definition: definitions.h:225
block name is "MAT_ELASTIC"
Definition: definitions.h:222

◆ DMInterfaces

interfaces for PETSc DM interfaces

Enumerator
UNKNOWN_DM_INTERFACE 
DMCTX_INTERFACE 

Definition at line 78 of file definitions.h.

◆ FieldApproximationBase

approximation base

Enumerator
NOBASE 
AINSWORTH_LEGENDRE_BASE 

Ainsworth Cole (Legendre) approx. base [1].

AINSWORTH_LOBBATO_BASE 

Like AINSWORTH_LEGENDRE_BASE but with Lobatto base instead Legendre [10].

AINSWORTH_BERNSTEIN_BEZIER_BASE 

Not yet implemented, in implementation we will follow [2].

DEMKOWICZ_JACOBI_BASE 

Construction of base is by Demkowicz [22].

USER_BASE 

user implemented approximation base

LASTBASE 

Definition at line 123 of file definitions.h.

123  {
124  NOBASE = 0,
125  AINSWORTH_LEGENDRE_BASE = 1, ///< Ainsworth Cole (Legendre) approx. base \cite NME:NME847
126  AINSWORTH_LOBBATO_BASE, ///< Like AINSWORTH_LEGENDRE_BASE but with Lobatto base instead Legendre \cite beriot2015efficient
127  AINSWORTH_BERNSTEIN_BEZIER_BASE, ///< Not yet implemented, in implementation we will follow \cite ainsworth2011bernstein
128  DEMKOWICZ_JACOBI_BASE, ///< Construction of base is by Demkowicz \cite fuentes2015orientation
129  USER_BASE, ///< user implemented approximation base
130  LASTBASE
131 };
user implemented approximation base
Definition: definitions.h:129
Not yet implemented, in implementation we will follow .
Definition: definitions.h:127
Ainsworth Cole (Legendre) approx. base .
Definition: definitions.h:125
Like AINSWORTH_LEGENDRE_BASE but with Lobatto base instead Legendre .
Definition: definitions.h:126
Construction of base is by Demkowicz .
Definition: definitions.h:128

◆ FieldSpace

enum FieldSpace

approximation spaces

Enumerator
NOSPACE 
NOFIELD 

scalar or vector of scalars describe (no true field)

H1 

continuous field

HDIV 

field with continuous normal traction

HCURL 

field with continuous tangents

L2 

field with C-1 continuity

LASTSPACE 

FieldSpace in [ 0, LASTSPACE )

Definition at line 156 of file definitions.h.

156  {
157  NOSPACE = 0,
158  NOFIELD = 1, ///< scalar or vector of scalars describe (no true field)
159  H1, ///< continuous field
160  HDIV, ///< field with continuous normal traction
161  HCURL, ///< field with continuous tangents
162  L2, ///< field with C-1 continuity
163  LASTSPACE ///< FieldSpace in [ 0, LASTSPACE )
164 };
field with continuous normal traction
Definition: definitions.h:160
scalar or vector of scalars describe (no true field)
Definition: definitions.h:158
FieldSpace in [ 0, LASTSPACE )
Definition: definitions.h:163
field with continuous tangents
Definition: definitions.h:161
continuous field
Definition: definitions.h:159
field with C-1 continuity
Definition: definitions.h:162

◆ H1DiffFormating

Format of rows in gradients of H1 base functions.

Enumerator
H1_0 
H1_1 
H1_2 

Definition at line 266 of file definitions.h.

266  {
267  H1_0 = 0,H1_1,H1_2
268 };

◆ HCurlDiffFormatting

Format in rows of Hcurl gradients of base functions.

Enumerator
HCURL0_0 
HCURL1_0 
HCURL2_0 
HCURL0_1 
HCURL1_1 
HCURL2_1 
HCURL0_2 
HCURL1_2 
HCURL2_2 

Definition at line 294 of file definitions.h.

◆ HCurlFormatting

Format in rows of Hcurl base functions.

Enumerator
HCURL0 
HCURL1 
HCURL2 

Definition at line 287 of file definitions.h.

287  {
288  HCURL0 = 0,HCURL1,HCURL2
289 };

◆ HDivDiffFormatting

Format in rows of Hdiv gradients of base functions.

Enumerator
HDIV0_0 
HDIV1_0 
HDIV2_0 
HDIV0_1 
HDIV1_1 
HDIV2_1 
HDIV0_2 
HDIV1_2 
HDIV2_2 

Definition at line 280 of file definitions.h.

◆ HDivFormatting

Format in rows of Hdiv base functions.

Enumerator
HDIV0 
HDIV1 
HDIV2 

Definition at line 273 of file definitions.h.

273  {
274  HDIV0 = 0,HDIV1,HDIV2
275 };

◆ Interfaces

enum Interfaces

Interfaces IDs.

To manage different complexities related to field, finite elements mesh refinements, etc. a appropriate interfaces related to each complexities are created. Interfaces by itself could vary by functionality or the same function can me managed with two interfaces with waring level of abstraction.

Enumerator
UNKNOWNINTERFACE 
CORE_INTERFACE 
PROBLEMSMANAGER_INTERFACE 
SIMPLE_INTERFACE 
MESH_REFINE 
PRISM_INTEFACE 
SERIES_RECORDER 
ISMANAGER_INTERFACE 
VECMANAGER_INTERFACE 
FIELDBLAS_INTERFACE 
BITREFMANAGER_INTERFACE 
TETGEN_INTERFACE 

used to generate mesh using TetGen

MED_INTERFACE 

interface to med data format

NODEMERGER_INTERFACE 

used to merge nodes

BITLEVELCOUPLER_INTERFACE 

used to couple bit levels by finding parent children relation

PRISMSFROMSURFACE_INTERFACE 

create prisms from surface elements

MESHSETSMANAGER_INTERFACE 

Interface to manage meshsets with materials and boundary conditions.

COORDSSYSTEMMANAGER_INTERFACE 

Interface to manage coordinate systems.

CUTMESH_INTERFACE 

Cutting mesh.

Definition at line 41 of file definitions.h.

41  {
42  UNKNOWNINTERFACE = 1<<0,
43  //Field Interface
44  CORE_INTERFACE = 1<<0|1<<1,
45  PROBLEMSMANAGER_INTERFACE = 1<<0|1<<2,
46  SIMPLE_INTERFACE = 1<<0|1<<3,
47  MESH_REFINE = 1<<1|1<<2,
48  PRISM_INTEFACE = 1<<1|1<<3,
49  SERIES_RECORDER = 1<<1|1<<4,
50  ISMANAGER_INTERFACE = 1<<1|1<<5,
51  VECMANAGER_INTERFACE = 1<<1|1<<6,
52  FIELDBLAS_INTERFACE = 1<<1|1<<7,
53  BITREFMANAGER_INTERFACE = 1<<1|1<<8,
54  //Independent Interfaces
55  TETGEN_INTERFACE = 1<<3|1<<4, ///< used to generate mesh using TetGen
56  MED_INTERFACE = 1<<3|1<<5, ///< interface to med data format
57  NODEMERGER_INTERFACE = 1<<3|1<<6, ///< used to merge nodes
58  BITLEVELCOUPLER_INTERFACE = 1<<3|1<<7, ///< used to couple bit levels by finding parent children relation
59  PRISMSFROMSURFACE_INTERFACE = 1<<3|1<<8, ///< create prisms from surface elements
60  MESHSETSMANAGER_INTERFACE = 1<<3|1<<9, ///< Interface to manage meshsets with materials and boundary conditions
61  COORDSSYSTEMMANAGER_INTERFACE = 1<<3|1<<10, ///< Interface to manage coordinate systems
62  CUTMESH_INTERFACE = 1<<3|1<<11 ///< Cutting mesh
63 };
create prisms from surface elements
Definition: definitions.h:59
used to merge nodes
Definition: definitions.h:57
interface to med data format
Definition: definitions.h:56
Interface to manage coordinate systems.
Definition: definitions.h:61
used to generate mesh using TetGen
Definition: definitions.h:55
Cutting mesh.
Definition: definitions.h:62
Interface to manage meshsets with materials and boundary conditions.
Definition: definitions.h:60
used to couple bit levels by finding parent children relation
Definition: definitions.h:58

◆ LoopInterfaces

Enumerator
KSP_METHOD 
SNES_METHOD 
TS_METHOD 
BASIC_METHOD 
FE_METHOD 
ENT_METHOD 

Definition at line 65 of file definitions.h.

65  {
66  //Loop Methods
67  KSP_METHOD = 1<<0,
68  SNES_METHOD = 1<<1,
69  TS_METHOD = 1<<2,
70  BASIC_METHOD = 1<<0|1<<1|1<<2,
71  FE_METHOD = 1<<0|1<<1|1<<2|1<<3,
72  ENT_METHOD = 1<<0|1<<1|1<<2|1<<4
73 };

◆ MoFEMErrorCodes

Error handling.

This is complementary to PETSC error codes. The numerical values for these are defined in include/petscerror.h. The names are defined in err.c

MoAB error messages are defined in naob/Types.hpp

Enumerator
MOFEM_SUCESS 
MOFEM_DATA_INCONSISTENCY 
MOFEM_NOT_IMPLEMENTED 
MOFEM_NOT_FOUND 
MOFEM_OPERATION_UNSUCCESSFUL 
MOFEM_IMPOSIBLE_CASE 
MOFEM_MOFEMEXCEPTION_THROW 
MOFEM_STD_EXCEPTION_THROW 
MOFEM_INVALID_DATA 
MOFEM_ATOM_TEST_INVALID 
MOFEM_MOAB_ERROR 

Definition at line 108 of file definitions.h.

◆ MoFEMTypes

enum MoFEMTypes

Those types control how functions respond on arguments, f.e. error handling.

Enumerator
MF_ZERO 
MF_EXCL 
MF_EXIST 

Definition at line 177 of file definitions.h.

177  {
178  MF_ZERO = 0,
179  MF_EXCL = 1<<0,
180  MF_EXIST = 1<<1
181 };

◆ RowColData

enum RowColData

RowColData.

Enumerator
ROW 
COL 
DATA 
LASTROWCOLDATA 

Definition at line 184 of file definitions.h.

184  {
186 };

Function Documentation

◆ macro_is_depracted_using_deprecated_function()

DEPRECATED void macro_is_depracted_using_deprecated_function ( )

Is used to indicate that macro is deprecated Do nothing just triggers error at the compilation.

Definition at line 69 of file Core.cpp.

69 {}

Variable Documentation

◆ ApproximationBaseNames

const char* const ApproximationBaseNames[]
static
Initial value:
= {
"NOBASE",
"AINSWORTH_LEGENDRE_BASE",
"AINSWORTH_LOBBATO_BASE",
"AINSWORTH_BERNSTEIN_BEZIER_BASE",
"DEMKOWICZ_JACOBI_BASE",
"USER_BASE",
"LASTBASE"
}

Definition at line 133 of file definitions.h.

◆ CubitBCNames

const char* const CubitBCNames[]
static
Initial value:
= {
"UNKNOWNSET",
"NODESET",
"SIDESET",
"BLOCKSET",
"MATERIALSET",
"DISPLACEMENTSET",
"FORCESET",
"PRESSURESET",
"VELOCITYSET",
"ACCELERATIONSET",
"TEMPERATURESET",
"HEATFLUXSET",
"INTERFACESET",
"UNKNOWNNAME",
"MAT_ELASTICSET",
"MAT_INTERFSET",
"MAT_THERMALSET",
"BODYFORCESSET",
"MAT_MOISTURESET",
"DIRICHLET_BC",
"NEUMANN_BC",
"LASTSET_BC"
}

Names of types of sets and boundary conditions.

Definition at line 238 of file definitions.h.

◆ FieldSpaceNames

const char* const FieldSpaceNames[]
static
Initial value:
= {
"NOSPACE",
"NOFIELD",
"H1",
"HDIV",
"HCURL",
"L2",
"LASTSPACE"
}

Definition at line 166 of file definitions.h.