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

#include <cl_Mesh_Basis.hpp>

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

Public Member Functions

 Basis ()
 ~Basis () override
virtual EntityType entity_type () const
 returns the type of this vertex
virtual uint number_of_nodes () const
virtual uint number_of_edges () const
virtual uint number_of_faces () const
virtual Nodenode (const uint aIndex)
virtual const Nodenode (const uint aIndex) const
virtual Edgeedge (const uint aIndex)
virtual const Edgeedge (const uint aIndex) const
virtual Faceface (const uint aIndex=0)
virtual const Faceface (const uint aIndex=0) const
virtual uint number_of_elements () const
virtual Elementelement (const uint aIndex)
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
virtual ~Vertex ()
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 ()
virtual void reset_element_container ()
void sort_vertices ()
 sorts the vertices according to their index
void reverse_vertices ()

Additional Inherited Members

Protected Attributes inherited from belfem::graph::Vertex
uint32_t mVertexCounter = 0
Vertex ** mVertices = nullptr

Constructor & Destructor Documentation

◆ Basis()

belfem::mesh::Basis::Basis ( )

◆ ~Basis()

belfem::mesh::Basis::~Basis ( )
override

Member Function Documentation

◆ add_source()

void belfem::mesh::Basis::add_source ( Basis * aSource,
const real aWeight = 1.0 )

Appends one source to the allocation sized by allocate_source_container().

◆ allocate_dof_container()

void belfem::mesh::Basis::allocate_dof_container ( )
inline

◆ allocate_source_container()

void belfem::mesh::Basis::allocate_source_container ( uint aNumSources)

Allocates exactly the number of source slots that subsequent add_source() calls must append. Capacity is deliberately not stored on every Basis; callers own this invariant.

◆ dof()

graph::Vertex * belfem::mesh::Basis::dof ( const uint aIndex)
inline

◆ edge() [1/2]

◆ edge() [2/2]

const Edge * belfem::mesh::Basis::edge ( const uint aIndex) const
virtual

◆ element()

Element * belfem::mesh::Basis::element ( const uint aIndex)
virtual

◆ entity_type()

EntityType belfem::mesh::Basis::entity_type ( ) const
virtual

◆ face() [1/2]

Face * belfem::mesh::Basis::face ( const uint aIndex = 0)
virtual

◆ face() [2/2]

const Face * belfem::mesh::Basis::face ( const uint aIndex = 0) const
virtual

◆ flag_sources()

void belfem::mesh::Basis::flag_sources ( )

◆ increment_dof_counter()

void belfem::mesh::Basis::increment_dof_counter ( )
inline

◆ insert_dof()

void belfem::mesh::Basis::insert_dof ( graph::Vertex * aDof)
inline

◆ is_hanging()

bool belfem::mesh::Basis::is_hanging ( ) const
inline

◆ node() [1/2]

◆ node() [2/2]

const Node * belfem::mesh::Basis::node ( const uint aIndex) const
virtual

◆ number_of_dofs()

uint belfem::mesh::Basis::number_of_dofs ( ) const
inline

◆ number_of_edges()

uint belfem::mesh::Basis::number_of_edges ( ) const
virtual

◆ number_of_elements()

uint belfem::mesh::Basis::number_of_elements ( ) const
virtual

◆ number_of_faces()

uint belfem::mesh::Basis::number_of_faces ( ) const
virtual

◆ number_of_nodes()

uint belfem::mesh::Basis::number_of_nodes ( ) const
virtual

◆ number_of_sources()

uint belfem::mesh::Basis::number_of_sources ( ) const
inline

◆ reset_dof_container()

void belfem::mesh::Basis::reset_dof_container ( )
inline

◆ reset_source_container()

void belfem::mesh::Basis::reset_source_container ( )

◆ set_sources() [1/3]

void belfem::mesh::Basis::set_sources ( Cell< Basis * > & aSources,
const Cell< real > & aCoefficients )

◆ set_sources() [2/3]

void belfem::mesh::Basis::set_sources ( Cell< Basis * > & aSources,
const Vector< real > & aCoefficients )

◆ set_sources() [3/3]

void belfem::mesh::Basis::set_sources ( Cell< Node * > & aSources,
const Vector< real > & aCoefficients )

◆ set_weight()

void belfem::mesh::Basis::set_weight ( const uint aIndex,
const real aValue )
inline

◆ source() [1/2]

Basis * belfem::mesh::Basis::source ( const uint aIndex)
inline

◆ source() [2/2]

const Basis * belfem::mesh::Basis::source ( const uint aIndex) const
inline

◆ source_node() [1/2]

Node * belfem::mesh::Basis::source_node ( const uint aIndex)

◆ source_node() [2/2]

const Node * belfem::mesh::Basis::source_node ( const uint aIndex) const

◆ weight()

real belfem::mesh::Basis::weight ( const uint aIndex) const
inline

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