BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
belfem::mesh::Face Class Reference

#include <cl_Face.hpp>

Inheritance diagram for belfem::mesh::Face:
[legend]
Collaboration diagram for belfem::mesh::Face:
[legend]

Public Member Functions

 Face (Element *aParent)
 Face (Element *aMaster, const uint aIndexOnMaster, Element *aSlave, const uint aIndexOnSlave, const uint aOrientationOnSlave=gNoIndex)
 ~Face () override
EntityType entity_type () const override
 returns the type of this vertex
Elementmaster ()
Elementslave ()
uint index_on_master () const
uint index_on_slave () const
uint orientation_on_slave () const
bool edge_direction (const uint aEdgeIndex) const
uint number_of_corner_nodes ()
void flag_corner_nodes ()
size_t memory () const
uint number_of_elements () const override
Elementelement (const uint aIndex) override
const Elementelement (const uint aIndex) const override
void set_master (Element *aElement, const uint aIndex)
void set_slave (Element *aElement, const uint aIndex, const uint aOrientation)
void set_periodic (Face *aPeriodic)
Faceperiodic ()
const Faceperiodic () const
bool is_periodic () const
Public Member Functions inherited from belfem::mesh::Vertex
 Vertex ()
 ~Vertex () override
EntityType entity_type () const override
 returns the type of this mesh vertex
void reset_node_container ()
void increment_node_counter ()
void allocate_node_container (const uint aCounter=0)
void add_node (Node *aNode)
void insert_node (Node *aNode, const uint aIndex)
uint number_of_nodes () const override
Nodenode (const uint aIndex) override
const Nodenode (const uint aIndex) const override
void reset_edge_container ()
void increment_edge_counter ()
void allocate_edge_container (const uint aCounter=0)
void add_edge (Edge *aEdge)
void insert_edge (Edge *aEdge, const uint aIndex)
uint number_of_edges () const override
Edgeedge (const uint aIndex) override
const Edgeedge (const uint aIndex) const override
void reset_face_container ()
void increment_face_counter ()
void allocate_face_container (const uint aCounter=0)
void add_face (Face *aFace)
uint number_of_faces () const override
Faceface (const uint aIndex) override
const Faceface (const uint aIndex) const override
void reset_facet_container ()
void increment_facet_counter ()
void allocate_facet_container (const uint aNumFacets=0)
void add_facet (Facet *aFacet)
virtual uint number_of_facets () const
virtual Facetfacet (const uint aIndex)
virtual const Facetfacet (const uint aIndex) const
void reset_element_container () override
void increment_element_counter ()
void allocate_element_container (const uint aCounter=0)
void add_element (Element *aElement)
uint number_of_elements () const override
Elementelement (const uint aIndex) override
virtual void flag_nodes (const uint8_t aIndex=0)
virtual void unflag_nodes (const uint8_t aIndex=0)
Public Member Functions inherited from belfem::mesh::Basis
 Basis ()
 ~Basis () override
bool is_hanging () const
uint number_of_sources () const
Basissource (const uint aIndex)
const Basissource (const uint aIndex) const
Nodesource_node (const uint aIndex)
const Nodesource_node (const uint aIndex) const
real weight (const uint aIndex) const
void set_weight (const uint aIndex, const real aValue)
void set_sources (Cell< Basis * > &aSources, const Vector< real > &aCoefficients)
void set_sources (Cell< Basis * > &aSources, const Cell< real > &aCoefficients)
void set_sources (Cell< Node * > &aSources, const Vector< real > &aCoefficients)
void reset_source_container ()
void allocate_source_container (uint aNumSources)
void add_source (Basis *aSource, const real aWeight=1.0)
void flag_sources ()
void increment_dof_counter ()
void allocate_dof_container ()
void reset_dof_container ()
void insert_dof (graph::Vertex *aDof)
uint number_of_dofs () const
graph::Vertexdof (const uint aIndex)
Public Member Functions inherited from belfem::graph::Vertex
 Vertex ()=default
void set_id (const id_t aID)
id_t id () const
virtual void set_index (const index_t aIndex)
virtual index_t index () const
virtual void set_owner (const proc_t aOwner)
virtual proc_t owner () const
index_t level () const
void set_level (const index_t aLevel)
virtual void flag (const uint8_t aIndex=0)
virtual void unflag (const uint8_t aIndex=0)
virtual bool is_flagged (const uint8_t aIndex=0) const
void increment_vertex_counter ()
void init_vertex_container ()
void init_vertex_container (const uint aSize)
void reset_vertex_container ()
void insert_vertex (Vertex *aVertex)
uint number_of_vertices () const
virtual Vertexvertex (const uint aIndex)
virtual auto vertex (const uint aIndex) const -> decltype(this)
virtual void init_element_container ()
void sort_vertices ()
 sorts the vertices according to their index
void reverse_vertices ()

Additional Inherited Members

Protected Member Functions inherited from belfem::mesh::Vertex
void delete_containers ()
 must be called by destructor
size_t array_memory () const
Protected Attributes inherited from belfem::mesh::Vertex
Node ** mNodes = nullptr
 pointer to nodes
Edge ** mEdges = nullptr
 pointer to edges
Face ** mFaces = nullptr
 pointer to faces
Facet ** mFacets = nullptr
 pointer to facets
Element ** mElements = nullptr
 pointer to elements
uint8_t mNodeCounter = 0
 number of nodes connected to this vertex
uint8_t mNodeCapacity = 0
uint8_t mEdgeCounter = 0
 number of edges connected to this vertex
uint8_t mEdgeCapacity = 0
uint8_t mFaceCounter = 0
 number of faces connected to this vertex
uint8_t mFaceCapacity = 0
uint16_t mFacetCounter = 0
uint16_t mFacetCapacity = 0
uint8_t mElementCounter = 0
 number of elements connected to this vertex
uint8_t mElementCapacity = 0
Protected Attributes inherited from belfem::graph::Vertex
uint32_t mVertexCounter = 0
Vertex ** mVertices = nullptr

Constructor & Destructor Documentation

◆ Face() [1/2]

belfem::mesh::Face::Face ( Element * aParent)

◆ Face() [2/2]

belfem::mesh::Face::Face ( Element * aMaster,
const uint aIndexOnMaster,
Element * aSlave,
const uint aIndexOnSlave,
const uint aOrientationOnSlave = gNoIndex )

◆ ~Face()

belfem::mesh::Face::~Face ( )
override

Member Function Documentation

◆ edge_direction()

bool belfem::mesh::Face::edge_direction ( const uint aEdgeIndex) const

◆ element() [1/2]

const Element * belfem::mesh::Face::element ( const uint aIndex) const
inlineoverridevirtual

Reimplemented from belfem::mesh::Vertex.

◆ element() [2/2]

Element * belfem::mesh::Face::element ( const uint aIndex)
inlineoverridevirtual

Reimplemented from belfem::mesh::Basis.

◆ entity_type()

EntityType belfem::mesh::Face::entity_type ( ) const
inlineoverridevirtual

returns the type of this vertex

Reimplemented from belfem::mesh::Basis.

◆ flag_corner_nodes()

void belfem::mesh::Face::flag_corner_nodes ( )

◆ index_on_master()

uint belfem::mesh::Face::index_on_master ( ) const
inline

◆ index_on_slave()

uint belfem::mesh::Face::index_on_slave ( ) const
inline

◆ is_periodic()

bool belfem::mesh::Face::is_periodic ( ) const
inline

◆ master()

Element * belfem::mesh::Face::master ( )
inline

◆ memory()

size_t belfem::mesh::Face::memory ( ) const
inline

◆ number_of_corner_nodes()

uint belfem::mesh::Face::number_of_corner_nodes ( )

◆ number_of_elements()

uint belfem::mesh::Face::number_of_elements ( ) const
inlineoverridevirtual

Reimplemented from belfem::mesh::Basis.

◆ orientation_on_slave()

uint belfem::mesh::Face::orientation_on_slave ( ) const
inline

◆ periodic() [1/2]

Face * belfem::mesh::Face::periodic ( )
inline

◆ periodic() [2/2]

const Face * belfem::mesh::Face::periodic ( ) const
inline

◆ set_master()

void belfem::mesh::Face::set_master ( Element * aElement,
const uint aIndex )

◆ set_periodic()

void belfem::mesh::Face::set_periodic ( Face * aPeriodic)
inline

◆ set_slave()

void belfem::mesh::Face::set_slave ( Element * aElement,
const uint aIndex,
const uint aOrientation )

◆ slave()

Element * belfem::mesh::Face::slave ( )
inline

The documentation for this class was generated from the following files: