12#ifndef BELFEM_CL_VERTEX_HPP
13#define BELFEM_CL_VERTEX_HPP
111 node(
const uint aIndex )
const override ;
164 face(
const uint aIndex )
const override ;
188 virtual const Facet *
352 "Node index %u is out of bounds for element %u, must be < %u.",
353 (
unsigned int ) aIndex,
354 (
unsigned int ) this->
id(),
355 (
unsigned int ) mNodeCapacity );
366 "Node index %u is out of bounds for element %u, must be < %u.",
367 (
unsigned int ) aIndex,
368 (
unsigned int ) this->
id(),
369 (
unsigned int ) mNodeCapacity );
380 "Edge index %u is out of bounds for element %u, must be < %u.",
381 (
unsigned int ) aIndex,
382 (
unsigned int ) this->
id(),
383 (
unsigned int ) mEdgeCapacity );
394 "Edge index %u is out of bounds for element %u, must be < %u.",
395 (
unsigned int ) aIndex,
396 (
unsigned int ) this->
id(),
397 (
unsigned int ) mEdgeCapacity );
414 "Face index %u is out of bounds for face %u, must be < %u.",
415 (
unsigned int ) aIndex,
416 (
unsigned int ) this->
id(),
417 (
unsigned int ) mFaceCapacity );
426 "Face index %u is out of bounds for face %u, must be < %u.",
427 (
unsigned int ) aIndex,
428 (
unsigned int ) this->
id(),
429 (
unsigned int ) mFaceCapacity );
440 "Facet index %u is out of bounds for element %u, must be < %u.",
441 (
unsigned int ) aIndex,
442 (
unsigned int ) this->
id(),
443 (
unsigned int ) mFacetCapacity );
454 "Facet index %u is out of bounds for element %u, must be < %u.",
455 (
unsigned int ) aIndex,
456 (
unsigned int ) this->
id(),
457 (
unsigned int ) mFacetCapacity );
468 "Element index %u is out of bounds for element %u, must be < %u.",
469 (
unsigned int ) aIndex,
470 (
unsigned int ) this->
id(),
471 (
unsigned int ) mElementCapacity );
482 "Element index %u is out of bounds for element %u, must be < %u.",
483 (
unsigned int ) aIndex,
484 (
unsigned int ) this->
id(),
485 (
unsigned int ) mElementCapacity );
#define BELFEM_ERROR(aCheck,...)
Definition assert.hpp:264
#define BELFEM_ASSERT(aCheck,...)
Definition assert.hpp:244
Graph node with an adjacency list; the vertex type the graph algorithms operate on.
Definition cl_Graph_Vertex.hpp:32
uint number_of_vertices() const
Definition cl_Graph_Vertex.hpp:321
uint number_of_dofs() const
Definition cl_Mesh_Basis.hpp:303
uint number_of_sources() const
Definition cl_Mesh_Basis.hpp:240
Basis()
Definition cl_Mesh_Basis.cpp:21
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
Edge * edge()
Definition cl_Segment.hpp:146
Element * element()
expose the element pointer
Definition cl_Segment.hpp:140
Edge ** mEdges
pointer to edges
Definition cl_Vertex.hpp:37
uint number_of_faces() const override
Definition cl_Vertex.hpp:405
void reset_element_container() override
Definition cl_Vertex.cpp:259
uint8_t mFaceCounter
number of faces connected to this vertex
Definition cl_Vertex.hpp:57
uint8_t mEdgeCounter
number of edges connected to this vertex
Definition cl_Vertex.hpp:53
void add_facet(Facet *aFacet)
Definition cl_Vertex.cpp:250
Element * element(const uint aIndex) override
Definition cl_Vertex.hpp:465
uint number_of_nodes() const override
Definition cl_Vertex.hpp:296
virtual uint number_of_facets() const
Definition cl_Vertex.hpp:333
EntityType entity_type() const override
returns the type of this mesh vertex
Definition cl_Vertex.hpp:493
void add_node(Node *aNode)
Definition cl_Vertex.cpp:88
virtual Facet * facet(const uint aIndex)
Definition cl_Vertex.hpp:437
uint8_t mNodeCapacity
Definition cl_Vertex.hpp:50
void reset_face_container()
Definition cl_Vertex.cpp:173
void increment_edge_counter()
Definition cl_Vertex.hpp:260
void increment_node_counter()
Definition cl_Vertex.hpp:251
virtual void unflag_nodes(const uint8_t aIndex=0)
Definition cl_Vertex.cpp:315
void allocate_edge_container(const uint aCounter=0)
Definition cl_Vertex.cpp:127
uint16_t mFacetCapacity
Definition cl_Vertex.hpp:63
uint16_t mFacetCounter
Definition cl_Vertex.hpp:62
uint8_t mFaceCapacity
Definition cl_Vertex.hpp:58
uint8_t mNodeCounter
number of nodes connected to this vertex
Definition cl_Vertex.hpp:49
void reset_facet_container()
Definition cl_Vertex.cpp:214
void increment_element_counter()
Definition cl_Vertex.hpp:287
void add_face(Face *aFace)
Definition cl_Vertex.cpp:205
uint8_t mElementCounter
number of elements connected to this vertex
Definition cl_Vertex.hpp:66
void insert_edge(Edge *aEdge, const uint aIndex)
Definition cl_Vertex.cpp:159
Face ** mFaces
pointer to faces
Definition cl_Vertex.hpp:40
void allocate_node_container(const uint aCounter=0)
Definition cl_Vertex.cpp:65
Face * face(const uint aIndex) override
Definition cl_Vertex.hpp:411
void reset_edge_container()
Definition cl_Vertex.cpp:113
void allocate_face_container(const uint aCounter=0)
Definition cl_Vertex.cpp:185
Element ** mElements
pointer to elements
Definition cl_Vertex.hpp:46
uint number_of_elements() const override
Definition cl_Vertex.hpp:341
virtual void flag_nodes(const uint8_t aIndex=0)
Definition cl_Vertex.cpp:304
void reset_node_container()
Definition cl_Vertex.cpp:51
uint number_of_edges() const override
Definition cl_Vertex.hpp:325
void add_edge(Edge *aEdge)
Definition cl_Vertex.cpp:150
void increment_facet_counter()
Definition cl_Vertex.hpp:278
void allocate_element_container(const uint aCounter=0)
Definition cl_Vertex.cpp:273
Node ** mNodes
pointer to nodes
Definition cl_Vertex.hpp:34
uint8_t mElementCapacity
Definition cl_Vertex.hpp:67
void allocate_facet_container(const uint aNumFacets=0)
Definition cl_Vertex.cpp:228
Node * node(const uint aIndex) override
Definition cl_Vertex.hpp:349
Edge * edge(const uint aIndex) override
Definition cl_Vertex.hpp:377
Vertex()
Definition cl_Vertex.cpp:24
void insert_node(Node *aNode, const uint aIndex)
Definition cl_Vertex.cpp:97
void delete_containers()
must be called by destructor
Definition cl_Vertex.cpp:38
void add_element(Element *aElement)
Definition cl_Vertex.cpp:295
size_t array_memory() const
Definition cl_Vertex.hpp:304
Facet ** mFacets
pointer to facets
Definition cl_Vertex.hpp:43
uint8_t mEdgeCapacity
Definition cl_Vertex.hpp:54
void increment_face_counter()
Definition cl_Vertex.hpp:269
Definition cl_EF_EdgeFunction.hpp:17
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int uint
Definition typedefs.hpp:30
EntityType
Definition Mesh_Enums.hpp:116
@ UNDEFINED
Definition Mesh_Enums.hpp:124
double real
Definition typedefs.hpp:36