12#ifndef BELFEM_CL_MESH_HPP
13#define BELFEM_CL_MESH_HPP
181 Mesh(
const uint aNumberOfDimensions,
const proc_t aMasterProc=0,
const bool aComputeConnectivities =
true );
188 Mesh(
const string & aPath,
189 const proc_t aMasterProc = 0,
190 const bool aComputeConnectivities =
true,
191 const bool aParallelMode =
true );
203 const proc_t aMasterProc = 0 );
235 save(
const string & aFilePath );
379 field(
const string & aLabel );
454 const string & aLabel,
456 const id_t aID = 0 );
462 const real aValue = 0.0,
463 const id_t aID = 0 );
726 const uint & aNumberOfPartitions,
727 const bool aSetProcOwners =
true,
728 const bool aForceContinuousPartitions =
true,
729 const bool aResetVertexContainers =
true );
739 const bool aSetProcOwners =
true,
740 const bool aForceContinuousPartitions =
false,
741 const bool aResetVertexContainers =
true );
752 const bool aSetProcOwners =
true,
753 const bool aForceContinuousPartitions =
false,
754 const bool aResetVertexContainers =
true );
791 const bool aCreateEdgesOnAllSideSets =
true );
1150 set_sideset_indices();
1156 set_block_indices();
1164 compute_max_element_order();
1169 compute_edge_directions();
1182 inline const string &
1290 "Tried to access invalid node id: %lu.",
1291 (
long unsigned int ) aID );
1302 "can only access node over 2d index on 2d-tensormeshes" );
1313 "can only access node over 3d index on 3d-tensormeshes" );
1323 "Tried to access invalid edge id: %lu.",
1324 (
long unsigned int ) aID );
1335 "Tried to access invalid face id: %lu.",
1336 (
long unsigned int ) aID );
1355 "Tried to access invalid element id: %lu.",
1356 (
long unsigned int ) aID );
1367 "can only access element over 2d index on 2d-tensormeshes" );
1378 "can only access element over 3d index on 3d-tensormeshes" );
1389 "Tried to access invalid control point id: %lu.",
1390 (
long unsigned int ) aID );
1399 "can only access control point over 2d index on 2d-tensormeshes" );
1409 "can only access control point over 3d index on 3d-tensormeshes" );
1431 "Tried to access invalid facet id: %lu.",
1432 (
long unsigned int ) aID );
1443 "Tried to access invalid block id: %lu.",
1444 (
long unsigned int ) aID );
1455 "Tried to access invalid sideset id: %lu.",
1456 (
long unsigned int ) aID );
1467 "Tried to access invalid vertex id: %lu.",
1468 (
long unsigned int ) aID );
1487 "Field '%s' does not exist on mesh", aLabel.c_str());
1507 "Field '%s' does not exist on mesh", aLabel.c_str());
1884 return this->
node( aID );
1888 return this->
edge( aID );
1892 return this->
face( aID );
1900 return this->
facet( aID );
2004 template<
typename T >
2009 for( T * tBasis : aBasis )
2011 if( tBasis->is_hanging() )
2019 aHangingBasis.
clear();
2023 aHangingBasis.
set_size( tCount,
nullptr );
2025 for ( T * tBasis: aBasis )
2027 if ( tBasis->is_hanging())
2029 aHangingBasis( tCount++ ) = tBasis;
#define BELFEM_ERROR(aCheck,...)
Definition assert.hpp:264
#define BELFEM_ASSERT(aCheck,...)
Definition assert.hpp:244
void reset(const index_t aIndex)
set a bit to false
Definition cl_Bitset.hpp:103
void set(const index_t aIndex)
set a bit to true
Definition cl_Bitset.hpp:92
bool test(const index_t aIndex) const
test if a bit is set
Definition cl_Bitset.hpp:138
Bitset()=default
trivial constructor
Cell is a wrapper around the standard vector.
Definition cl_Cell.hpp:42
void set_size(const size_t aSize)
Definition cl_Cell.hpp:189
size_t size() const
return the size of the Cell
Definition cl_Cell.hpp:181
void clear()
clear the memory
Definition cl_Cell.hpp:240
Incremental hash computation.
Definition cl_Hash.hpp:29
Hash map (unordered key-value).
Definition cl_Map.hpp:75
bool key_exists(const Key &aKey) const
Definition cl_Map.hpp:161
Top-level container for all mesh entities.
Definition cl_Mesh.hpp:60
Cell< mesh::Element * > mHangingElements
Definition cl_Mesh.hpp:99
Cell< mesh::ControlPoint * > & control_points()
expose Control Point container
Definition cl_Mesh.hpp:1761
Cell< mesh::Edge * > mHangingEdges
Definition cl_Mesh.hpp:96
mesh::Field * field(const string &aLabel)
get field by label
Definition cl_Mesh.hpp:1484
void update_facet_indices()
Definition cl_Mesh.cpp:463
const proc_t mCommSize
Definition cl_Mesh.hpp:68
bool mEdgesAreFinalized
Definition cl_Mesh.hpp:148
Cell< mesh::Element * > & vertices()
expose Vertex container
Definition cl_Mesh.hpp:1793
void set_kernel_flag()
called by kernel
Definition cl_Mesh.hpp:1801
void set_periodicity(mesh::Periodicity *aPeriodicity)
Definition cl_Mesh.hpp:1962
bool mesh_checker_flag() const
Definition cl_Mesh.hpp:1996
Cell< mesh::Curve * > & curves()
expose Curve container
Definition cl_Mesh.hpp:1722
void update_sideset_map()
Definition cl_Mesh.cpp:2482
void unflag_all_nodes(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1081
Map< id_t, mesh::Element * > mElementMap
Definition cl_Mesh.hpp:130
Cell< mesh::Facet * > mFacets
Definition cl_Mesh.hpp:87
void add_sideset(mesh::SideSet *aSideSet)
Definition cl_Mesh.cpp:2293
Cell< mesh::Node * > & hanging_nodes()
Definition cl_Mesh.hpp:1942
index_t number_of_faces() const
Definition cl_Mesh.hpp:1255
void set_vertex_owners()
Definition cl_Mesh.cpp:1727
Map< id_t, mesh::GlobalVariable * > mGlobalVariableIDMap
Definition cl_Mesh.hpp:111
Cell< mesh::ControlPoint * > mHangingControlPoints
Definition cl_Mesh.hpp:100
Map< id_t, mesh::ControlPoint * > mControlPointMap
Definition cl_Mesh.hpp:137
void create_edge_map()
special function called by Kernel
Definition cl_Mesh.cpp:1610
mesh::Edge * edge(const id_t aID)
Definition cl_Mesh.hpp:1320
void update_element_indices()
Definition cl_Mesh.cpp:476
void update_element_map()
Definition cl_Mesh.cpp:2459
const uint & time_step() const
return the index of the time
Definition cl_Mesh.hpp:1586
bool facet_exists(const id_t aID) const
Definition cl_Mesh.hpp:1420
proc_t mNumberOfPartitions
Definition cl_Mesh.hpp:115
Cell< mesh::Node * > & autopins()
Definition cl_Mesh.hpp:1817
void create_curve_map()
Definition cl_Mesh.cpp:2822
index_t number_of_facets() const
Definition cl_Mesh.hpp:1239
void unflag_all_control_points(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1232
Cell< mesh::Block * > mBlocks
Definition cl_Mesh.hpp:102
Cell< mesh::Face * > & faces()
expose face container
Definition cl_Mesh.hpp:1777
Cell< mesh::Element * > mVertices
Definition cl_Mesh.hpp:88
Cell< mesh::Element * > mBoundaryEdges
Definition cl_Mesh.hpp:93
index_t number_of_elements() const
Definition cl_Mesh.hpp:1231
void compute_facet_orientations()
Definition cl_Mesh.cpp:762
bool node_exists(const id_t aID) const
check if node exists
Definition cl_Mesh.hpp:1665
uint load_meta(hid_t aFile)
Definition cl_Mesh.cpp:3052
void populate_element_neighbors()
Definition cl_Mesh.cpp:2672
Map< id_t, mesh::Node * > mNodeMap
Definition cl_Mesh.hpp:129
void finalize_faces()
Definition cl_Mesh.cpp:1022
void update_block_map()
Definition cl_Mesh.cpp:2472
void unflag_all_faces(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1139
void update_facet_nodes()
Definition cl_Mesh.cpp:674
Cell< mesh::Facet * > mHangingFacets
Definition cl_Mesh.hpp:98
bool global_variable_exists(const string &aLabel)
Definition cl_Mesh.hpp:1548
uint mNumberOfGlobalVariables
Definition cl_Mesh.hpp:118
void save_meta(hid_t aFile, const uint aRunningTimestep=0)
Definition cl_Mesh.cpp:3035
void save_globals(hid_t aFile)
Definition cl_Mesh.cpp:3109
bool mMeshCheckerFlag
Definition cl_Mesh.hpp:172
void distribute_edge_directions()
Definition cl_Mesh.cpp:1875
void set_time_step(const uint aTimeStep)
set the index of the time step
Definition cl_Mesh.hpp:1601
void collect_facets_from_sidesets()
Definition cl_Mesh.cpp:640
Cell< mesh::SideSet * > & sidesets()
expose Sideset container
Definition cl_Mesh.hpp:1714
uint number_of_fields() const
Definition cl_Mesh.hpp:1556
const string & path() const
Definition cl_Mesh.hpp:1183
Vector< real > & field_data(const string &aLabel)
Definition cl_Mesh.hpp:1504
Map< id_t, mesh::Block * > mBlockMap
Definition cl_Mesh.hpp:132
uint64_t config_tag() const
Definition cl_Mesh.cpp:2401
const proc_t mMasterProc
Definition cl_Mesh.hpp:66
uint number_of_sidesets() const
Definition cl_Mesh.hpp:1279
Cell< mesh::Facet * > & facets()
expose Facet container
Definition cl_Mesh.hpp:1755
id_t max_block_and_sideset_id()
Definition cl_Mesh.cpp:2247
uint number_of_dimensions() const
Definition cl_Mesh.hpp:1207
Cell< mesh::Node * > mAbstractNodes
for special purpose
Definition cl_Mesh.hpp:161
void save(const string &aFilePath)
Definition cl_Mesh.cpp:340
void update_node_indices()
Definition cl_Mesh.cpp:427
void unflag_all_elements(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1195
void update_face_indices()
Definition cl_Mesh.cpp:451
index_t number_of_edges() const
Definition cl_Mesh.hpp:1247
bool block_exists(const id_t aID) const
check if block exists
Definition cl_Mesh.hpp:1649
Cell< mesh::ThinShell * > & thin_shells()
expose the thinshell container
Definition cl_Mesh.hpp:1739
id_t max_element_id()
Definition cl_Mesh.cpp:2192
void set_compute_facet_orientation_flag(const bool aFlag)
Definition cl_Mesh.hpp:1915
void load_globals(hid_t aFile)
Definition cl_Mesh.cpp:3133
void collect_elements_from_blocks()
Definition cl_Mesh.cpp:602
void reset_connectivity(const Connectivity aConnectivity)
Definition cl_Mesh.hpp:1617
bool mIsKernelMesh
flag telling if this is a mesh on the kernel
Definition cl_Mesh.hpp:144
bool edges_exist() const
tells if Nedelec edges exist on this mesh
Definition cl_Mesh.hpp:1673
Cell< mesh::Node * > mOrphanedNodes
for special purpose
Definition cl_Mesh.hpp:164
const TensorMeshConfig * mTensorConfig
Definition cl_Mesh.hpp:168
void update_edge_indices()
Definition cl_Mesh.cpp:439
real & create_global_variable(const string &aLabel, const real aValue=0.0, const id_t aID=0)
Definition cl_Mesh.cpp:559
mesh::Periodicity * mPeriodicity
Definition cl_Mesh.hpp:170
mesh::Block * block(const id_t aID)
Definition cl_Mesh.hpp:1440
string mPath
Definition cl_Mesh.hpp:83
void update_vertex_indices()
Definition cl_Mesh.cpp:488
Bitset< static_cast< size_t >(Connectivity::UNDEFINED)> mConnectivities
Definition cl_Mesh.hpp:166
void set_number_of_partitions(const proc_t &aNumberOfPartitions)
to be called by partitioner
Definition cl_Mesh.hpp:1641
uint mNumberOfFields
Definition cl_Mesh.hpp:119
mesh::Curve * curve(const id_t aID)
return a curve by its ID
Definition cl_Mesh.hpp:1730
bool mNodesAreSorted
Definition cl_Mesh.hpp:152
Cell< mesh::Block * > & blocks()
expose Block container
Definition cl_Mesh.hpp:1705
Vector< real > & create_field(const string &aLabel, const EntityType aEntity=EntityType::NODE, const id_t aID=0)
Definition cl_Mesh.cpp:511
mesh::Basis * basis_by_index(const EntityType aType, const index_t aIndex)
Definition cl_Mesh.hpp:1841
bool has_periodicity() const
Definition cl_Mesh.hpp:1969
bool edges_are_finalized() const
Definition cl_Mesh.hpp:1927
void reset_faces()
Definition cl_Mesh.cpp:1454
mesh::SideSet * sideset(const id_t aID)
Definition cl_Mesh.hpp:1452
Map< id_t, mesh::Edge * > mEdgeMap
Definition cl_Mesh.hpp:135
bool mFacesAreFinalized
Definition cl_Mesh.hpp:149
real mTimeStamp
Definition cl_Mesh.hpp:121
mesh::Node * node(const id_t aID)
Definition cl_Mesh.hpp:1287
bool is_kernel_mesh() const
Definition cl_Mesh.hpp:1809
Cell< mesh::Node * > & nodes()
expose Node container
Definition cl_Mesh.hpp:1697
bool is_finalized() const
Definition cl_Mesh.hpp:1921
Cell< mesh::Element * > & hanging_elements()
Definition cl_Mesh.hpp:1946
mesh::Element * vertex(const id_t aID)
Definition cl_Mesh.hpp:1464
void create_face_map()
special function called by Kernel
Definition cl_Mesh.cpp:1626
mesh::GlobalVariable * global_variable(const id_t aID)
Definition cl_Mesh.hpp:1523
real & time_stamp()
return the current timestamp
Definition cl_Mesh.hpp:1575
void collect_elements_from_group(Cell< mesh::Element * > &aElements, const id_t aGroupId, const ElementType aType=ElementType::EMPTY)
Definition cl_Mesh.cpp:707
Map< string, mesh::GlobalVariable * > mGlobalVariableMap
Definition cl_Mesh.hpp:110
std::size_t checksum()
Definition cl_Mesh.cpp:2372
void unfinalize()
unfinalizes all aspects of mesh but edges
Definition cl_Mesh.cpp:874
void save_fields(hid_t aFile)
Definition cl_Mesh.cpp:3091
void create_faces(const bool aPrint=false, const Vector< id_t > aNedelecBlocks=Vector< id_t >(), const Vector< id_t > aNedelecSideSets=Vector< id_t >())
creates the faces on the mesh
Definition cl_Mesh.cpp:1510
void expand_hanging_basis_sources()
Definition cl_Mesh.cpp:2140
void unflag_all_edges(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1108
bool faces_exist() const
tells if Nedelec faces exist on this mesh
Definition cl_Mesh.hpp:1681
bool faces_are_finalized() const
Definition cl_Mesh.hpp:1934
mesh::Periodicity * periodicity()
Definition cl_Mesh.hpp:1975
uint number_of_blocks() const
Definition cl_Mesh.hpp:1271
void set_number_of_dimensions(const uint &aNumberOfDimensions)
Definition cl_Mesh.hpp:1215
size_t memory() const
Compute the total memory used by the mesh in bytes.
Definition cl_Mesh.cpp:2834
const proc_t mCommRank
Definition cl_Mesh.hpp:67
bool sideset_exists(const id_t aID) const
check if sideset exists
Definition cl_Mesh.hpp:1657
Map< id_t, mesh::Facet * > mFacetMap
Definition cl_Mesh.hpp:131
void create_edges(const bool aPrint=false, const Vector< id_t > aNedelecBlocks=Vector< id_t >(), const Vector< id_t > aNedelecSideSets=Vector< id_t >(), const bool aCreateEdgesOnAllSideSets=true)
creates the edges on the mesh
Definition cl_Mesh.cpp:1374
uint number_of_global_variables() const
Definition cl_Mesh.hpp:1564
Cell< mesh::Face * > mFaces
Definition cl_Mesh.hpp:90
void partition(const uint &aNumberOfPartitions, const bool aSetProcOwners=true, const bool aForceContinuousPartitions=true, const bool aResetVertexContainers=true)
partition the mesh and set element and node ownerships
Definition cl_Mesh.cpp:1243
uint mNumberOfDimensions
Definition cl_Mesh.hpp:117
Cell< mesh::Field * > mFields
Definition cl_Mesh.hpp:108
Cell< mesh::Element * > & elements()
expose Element container
Definition cl_Mesh.hpp:1747
string mConfigText
Definition cl_Mesh.hpp:81
void unflag_all_facets(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1169
mesh::Facet * facet(const id_t aID)
Definition cl_Mesh.hpp:1428
const TensorMeshConfig * tensorconf() const
Definition cl_Mesh.hpp:1199
void save_faces(const string &aPath)
Definition cl_Mesh.cpp:1963
Cell< mesh::GlobalVariable * > & global_variables()
Definition cl_Mesh.hpp:1515
Map< id_t, mesh::Element * > mVertexMap
Definition cl_Mesh.hpp:134
void scale_mesh(const real aFactor)
Multiply all node coordinates with a factor, e.g.
Definition cl_Mesh.cpp:295
uint mMaxElementOrder
Definition cl_Mesh.hpp:141
mesh::Element * element(const id_t aID)
Definition cl_Mesh.hpp:1352
Map< id_t, mesh::Curve * > mCurveMap
Definition cl_Mesh.hpp:138
bool field_exists(const string &aLabel)
Definition cl_Mesh.hpp:1495
Cell< mesh::SideSet * > mSideSets
Definition cl_Mesh.hpp:103
void reset_mesh_checker_flag()
Definition cl_Mesh.hpp:1990
void update_control_point_indices()
Definition cl_Mesh.cpp:500
void set_connectivity(const Connectivity aConnectivity)
Definition cl_Mesh.hpp:1609
mesh::Basis * basis(const EntityType aType, const id_t aID)
Definition cl_Mesh.hpp:1878
const proc_t & master() const
return the ID of the proc that owns this mesh
Definition cl_Mesh.hpp:1633
mesh::Face * face(const id_t aID)
Definition cl_Mesh.hpp:1332
Cell< mesh::ControlPoint * > mControlPoints
Definition cl_Mesh.hpp:91
Map< string, mesh::Field * > mFieldMap
Definition cl_Mesh.hpp:112
void reset_edges()
Definition cl_Mesh.cpp:1399
Cell< mesh::Node * > mHangingNodes
Definition cl_Mesh.hpp:95
Cell< mesh::Node * > & orphaned_nodes()
Definition cl_Mesh.hpp:1833
Cell< mesh::Curve * > mCurves
Definition cl_Mesh.hpp:104
void set_mesh_checker_flag()
Definition cl_Mesh.hpp:1984
void set_abstract_nodes(Cell< mesh::Node * > &aNodes)
Definition cl_Mesh.cpp:2313
Hash mHash
Definition cl_Mesh.hpp:73
Cell< mesh::Edge * > mEdges
Definition cl_Mesh.hpp:89
index_t number_of_control_points() const
Definition cl_Mesh.hpp:1263
Mesh(const uint aNumberOfDimensions, const proc_t aMasterProc=0, const bool aComputeConnectivities=true)
creates an empty mesh container but specifies number of dimension
Definition cl_Mesh.cpp:87
void finalize()
finalizes all aspects of the mesh; edges and faces are finalized too when connectivities are computed
Definition cl_Mesh.cpp:775
mesh::ControlPoint * control_point(const id_t aID)
Definition cl_Mesh.hpp:1386
Cell< mesh::ControlPoint * > & hanging_control_points()
Definition cl_Mesh.hpp:1947
Cell< mesh::Face * > & hanging_faces()
Definition cl_Mesh.hpp:1944
const string & config_text() const
Definition cl_Mesh.cpp:2409
Cell< mesh::GlobalVariable * > mGlobalVariables
Definition cl_Mesh.hpp:107
void flag_curved_elements()
flags elements that are curved
Definition cl_Mesh.cpp:1807
void load_fields(hid_t aFile)
Definition cl_Mesh.cpp:3208
uint64_t mConfigTag
Definition cl_Mesh.hpp:80
void finalize_edges()
Definition cl_Mesh.cpp:973
bool test_connectivity(const Connectivity aConnectivity)
Definition cl_Mesh.hpp:1625
Cell< mesh::Node * > & abstract_nodes()
Definition cl_Mesh.hpp:1825
void collect_hanging_basis()
Definition cl_Mesh.cpp:2128
Cell< mesh::Node * > mNodes
Definition cl_Mesh.hpp:86
real & global_variable_data(const string &aLabel)
Definition cl_Mesh.hpp:1539
id_t max_node_id()
Definition cl_Mesh.cpp:2176
Cell< mesh::Node * > mAutoPins
for special purpose
Definition cl_Mesh.hpp:158
void update_ownerships()
Definition cl_Mesh.cpp:1657
Cell< mesh::ThinShell * > mThinShells
Definition cl_Mesh.hpp:105
Map< id_t, mesh::SideSet * > mSideSetMap
Definition cl_Mesh.hpp:133
const uint & max_element_order() const
return the max interpolation order on the mesh
Definition cl_Mesh.hpp:1689
uint mTimeStep
Definition cl_Mesh.hpp:122
void unflag_everything(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1066
bool element_exists(const id_t aID) const
Definition cl_Mesh.hpp:1344
Cell< mesh::Face * > mHangingFaces
Definition cl_Mesh.hpp:97
void unflag_all_vertices(const uint aFlagIndex=0)
Definition cl_Mesh.cpp:1221
bool is_tensormesh() const
Definition cl_Mesh.hpp:1191
bool mComputeFacetOrientationsWhenFinalizing
Definition cl_Mesh.hpp:155
index_t number_of_hanging_basis() const
Definition cl_Mesh.hpp:1950
Cell< mesh::Edge * > & hanging_edges()
Definition cl_Mesh.hpp:1943
Cell< mesh::Element * > & boundary_edges()
expose container for boundary edges
Definition cl_Mesh.hpp:1785
bool mIsFinalized
flag telling if mesh is finalized (master only)
Definition cl_Mesh.hpp:147
void add_block(mesh::Block *aBlock)
Definition cl_Mesh.cpp:2284
void set_config_tag(const uint64_t aTag, const string &aText)
Definition cl_Mesh.cpp:2392
Cell< mesh::Facet * > & hanging_facets()
Definition cl_Mesh.hpp:1945
Map< id_t, mesh::Face * > mFaceMap
Definition cl_Mesh.hpp:136
index_t number_of_nodes() const
Definition cl_Mesh.hpp:1223
Cell< mesh::Element * > mElements
Definition cl_Mesh.hpp:85
Cell< mesh::Edge * > & edges()
expose edge container
Definition cl_Mesh.hpp:1769
void force_checksum(const std::size_t aChecksum)
Definition cl_Mesh.cpp:2384
Mesh * extract_thin_shell_mesh()
Definition cl_Mesh.cpp:2571
Definition cl_TensorMeshConfig.hpp:22
uint num_control_points(const uint aDimension=BELFEM_UINT_MAX) const
Definition cl_TensorMeshConfig.hpp:124
index_t node_index(const index_t i, const index_t j) const
Definition cl_TensorMeshConfig.hpp:155
index_t element_index(const index_t i, const index_t j) const
Definition cl_TensorMeshConfig.hpp:175
Definition cl_Mesh_Basis.hpp:33
Definition cl_Block.hpp:27
Definition cl_ControlPoint.hpp:27
Definition cl_Curve.hpp:27
Special Edge class for NEDELEC-Type elements.
Definition cl_Edge.hpp:30
Lagrange Element baseclass.
Definition cl_Element.hpp:35
Definition cl_Face.hpp:29
Definition cl_Facet.hpp:24
Definition cl_Mesh_Field.hpp:28
Definition cl_Mesh_GlobalVariable.hpp:24
Definition cl_Mesh_GmshReader.hpp:40
Creates a Periodicity object by matching nodes on two periodic boundary planes.
Definition cl_Mesh_PeriodicityFactory.hpp:34
Stores matched periodic boundary entity pairs (nodes, edges, faces).
Definition cl_Mesh_Periodicity.hpp:39
Definition cl_ProtoMesh.hpp:39
Definition cl_SideSet.hpp:29
Definition cl_EF_EdgeFunction.hpp:17
void collect_hanging_basis(Cell< T * > &aBasis, Cell< T * > &aHangingBasis)
Definition cl_Mesh.hpp:2006
uint compute_facet_index(Facet *aFacet, Element *aElement, Cell< Node * > &aNodes)
Definition cl_Mesh.cpp:46
USER GUIDES:
Definition cl_Capacitor.cpp:16
int hid_t
Definition hdf5_types.hpp:20
unsigned int uint
Definition typedefs.hpp:30
unsigned int id_t
Definition typedefs.hpp:41
Connectivity
Definition Mesh_Enums.hpp:145
@ UNDEFINED
Definition Mesh_Enums.hpp:182
int proc_t
Definition commtypes.hpp:29
ElementType
Element types.
Definition Mesh_Enums.hpp:27
@ EMPTY
Definition Mesh_Enums.hpp:28
EntityType
Definition Mesh_Enums.hpp:116
@ NODE
Definition Mesh_Enums.hpp:117
@ FACE
Definition Mesh_Enums.hpp:119
@ CONTROLPOINT
Definition Mesh_Enums.hpp:123
@ EDGE
Definition Mesh_Enums.hpp:118
@ FACET
Definition Mesh_Enums.hpp:121
@ ELEMENT
Definition Mesh_Enums.hpp:122
uint32_t index_t
Definition typedefs.hpp:52
double real
Definition typedefs.hpp:36
Definition GmshReader.py:1