12#ifndef BELFEM_CL_MESHDATA_HPP
13#define BELFEM_CL_MESHDATA_HPP
40 Mesh * mMesh = nullptr ;
201 populate_facet_data(
const bool aPopulateElements,
const bool aPopulateTopology,
const bool aPopulateGeo );
296 return mBlockData( aIndex );
302 return mSideSetData ;
308 return mSideSetData( aIndex );
314 return mBlockMap( aID );
320 return mSideSetMap( aID );
326 return mThinShellData ;
332 return mThinShellData( aIndex );
345 return mElementData ;
369 return mElementExtra ;
387 return mControlPointData ;
393 return mPeriodicityData ;
399 return mTMatrixData ;
405 return mNodeMap( aID );
411 return mEdgeMap( aID );
417 return mFaceMap( aID );
423 return mFacetMap( aID );
429 return mElementMap( aID );
435 return mControlPointMap( aID );
445 return mNodeMap( aID );
449 return mEdgeMap( aID );
453 return mFaceMap( aID );
457 return mFacetMap( aID );
461 return mElementMap( aID );
465 return mControlPointMap( aID );
#define BELFEM_ERROR(aCheck,...)
Definition assert.hpp:264
A bounds-checked wrapper around std::vector.
Definition cl_Cell.hpp:45
Hash map (unordered key-value).
Definition cl_Map.hpp:75
Top-level container for all mesh entities.
Definition cl_Mesh.hpp:60
Definition cl_Mesh_Basis.hpp:33
Definition cl_Block.hpp:27
Definition cl_ControlPoint.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_Node.hpp:30
void create_sidesets(const bool aKeepEmpty=false)
Definition cl_ProtoMesh.cpp:1325
Cell< proto::GroupData > & block_data()
Definition cl_ProtoMesh.hpp:288
void create_facets()
Definition cl_ProtoMesh.cpp:899
void populate_face_data(const bool aPopulateElements)
Definition cl_ProtoMesh.cpp:547
proto::MetaData * meta_data()
Definition cl_ProtoMesh.hpp:282
void reset_edge_data()
Definition cl_ProtoMesh.cpp:673
void populate_block_data()
Definition cl_ProtoMesh.cpp:1202
Cell< proto::ThinShellData > & thin_shell_data()
Definition cl_ProtoMesh.hpp:324
void populate_sideset_data()
Definition cl_ProtoMesh.cpp:1224
void reset_element_data()
Definition cl_ProtoMesh.cpp:659
void create_t_matrices()
Definition cl_ProtoMesh.cpp:1468
void reconstruct_face_connectivity()
Definition cl_ProtoMesh.cpp:1776
Facet * facet(const id_t aID)
Definition cl_ProtoMesh.hpp:421
void populate_control_point_data(const bool aPopulateTopology)
Definition cl_ProtoMesh.cpp:596
void populate_edge_data(const bool aPopulateTopology)
Definition cl_ProtoMesh.cpp:512
void create_control_points()
Definition cl_ProtoMesh.cpp:1037
Cell< proto::GroupData > & sideset_data()
Definition cl_ProtoMesh.hpp:300
proto::FacetExtra * facet_extra()
Definition cl_ProtoMesh.hpp:373
void create_faces()
Definition cl_ProtoMesh.cpp:836
proto::TMatrixData * t_matrix_data()
Definition cl_ProtoMesh.hpp:397
proto::ElementData * vertex_data()
Definition cl_ProtoMesh.hpp:379
void create_elements()
Definition cl_ProtoMesh.cpp:702
proto::FacetData * facet_data()
Definition cl_ProtoMesh.hpp:361
proto::PeriodicityData * periodicity_data()
Definition cl_ProtoMesh.hpp:391
void reset_node_data()
Definition cl_ProtoMesh.cpp:250
Element * element(const id_t aID)
Definition cl_ProtoMesh.hpp:427
proto::ElementExtra * element_extra()
Definition cl_ProtoMesh.hpp:367
Block * block(const id_t aID)
Definition cl_ProtoMesh.hpp:312
proto::ControlPointData * control_point_data()
Definition cl_ProtoMesh.hpp:385
void populate_meta_data()
Definition cl_ProtoMesh.cpp:102
void reset_control_point_data()
Definition cl_ProtoMesh.cpp:687
void create_vertices()
Definition cl_ProtoMesh.cpp:1008
void populate_facet_data(const bool aPopulateElements, const bool aPopulateTopology, const bool aPopulateGeo)
Definition cl_ProtoMesh.cpp:357
Basis * basis(const EntityType aType, const id_t aID)
Definition cl_ProtoMesh.hpp:439
void reset_periodicity_data()
Definition cl_ProtoMesh.cpp:693
proto::FaceData * face_data()
Definition cl_ProtoMesh.hpp:355
void reset_facet_data()
Definition cl_ProtoMesh.cpp:666
Node * node(const id_t aID)
Definition cl_ProtoMesh.hpp:403
proto::EdgeData * edge_data()
Definition cl_ProtoMesh.hpp:349
void normalize_edge_hangs()
Definition cl_ProtoMesh.cpp:1704
void populate_element_data(const bool aPopulateTopology, const bool aPopulateGeo)
Definition cl_ProtoMesh.cpp:259
Face * face(const id_t aID)
Definition cl_ProtoMesh.hpp:415
ControlPoint * control_point(const id_t aID)
Definition cl_ProtoMesh.hpp:433
ProtoMesh(Mesh *aMesh)
Definition cl_ProtoMesh.cpp:23
void populate_node_data()
Definition cl_ProtoMesh.cpp:129
proto::ElementData * element_data()
Definition cl_ProtoMesh.hpp:343
proto::NodeData * node_data()
Definition cl_ProtoMesh.hpp:337
void create_thinshells()
Definition cl_ProtoMesh.cpp:1391
void reconstruct_edge_connectivity()
Definition cl_ProtoMesh.cpp:1576
SideSet * sideset(const id_t aID)
Definition cl_ProtoMesh.hpp:318
void create_element_extra()
Definition cl_ProtoMesh.cpp:1084
void create_periodicitiy(const bool aCrosslinkEntities=false)
Definition cl_ProtoMesh.cpp:1458
void edge()
Definition cl_ProtoMesh.cpp:1244
void create_edges()
Definition cl_ProtoMesh.cpp:784
void create_nodes()
Definition cl_ProtoMesh.cpp:172
void create_facet_extra()
Definition cl_ProtoMesh.cpp:1168
void reset_face_data()
Definition cl_ProtoMesh.cpp:680
Definition cl_SideSet.hpp:29
Definition cl_EF_EdgeFunction.hpp:24
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int id_t
Definition typedefs.hpp:41
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
Definition st_ProtoMesh.hpp:60
Definition st_ProtoMesh.hpp:97
Definition st_ProtoMesh.hpp:78
Definition st_ProtoMesh.hpp:104
Definition st_ProtoMesh.hpp:115
Definition st_ProtoMesh.hpp:147
Definition st_ProtoMesh.hpp:52
Definition st_ProtoMesh.hpp:164
Definition st_ProtoMesh.hpp:68
Definition st_ProtoMesh.hpp:129