12#ifndef BELFEM_CL_FEM_SIDESET_HPP
13#define BELFEM_CL_FEM_SIDESET_HPP
284 return mMasterIntegration( aSideSetIndex );
292 return mSlaveIntegration( aSideSetIndex );
Cell is a wrapper around the standard vector.
Definition cl_Cell.hpp:42
size_t size() const
return the size of the Cell
Definition cl_Cell.hpp:181
Definition cl_FEM_Block.hpp:35
Definition cl_FEM_Dof.hpp:28
abstract interface of the dof manager as seen by the group classes and the IWG; DofManager is its onl...
Definition cl_FEM_DofManagerBase.hpp:44
this class creates the DOFs based on the passed equation object.
Definition cl_FEM_DofManager.hpp:55
Group(DofManagerBase *aParent, const GroupType aGroupType, const ElementType aElementType, const id_t aID, const index_t aNumberOfElements, const bool aOwnElements=true)
Definition cl_FEM_Group.cpp:29
Precomputed bundle of integration points, weights and shape-function values.
Definition cl_IF_IntegrationData.hpp:28
BoundaryConditionImposing bc_type(const index_t &aDimension) const
Definition cl_FEM_SideSet.hpp:232
void free()
Definition cl_FEM_SideSet.cpp:459
IntegrationData * master_integration(const uint aSideSetIndex) override
integration data on master element
Definition cl_FEM_SideSet.hpp:282
void impose_neumann(const real aValue, const uint aDofType=0)
Definition cl_FEM_SideSet.cpp:413
void initialize_lookup_tables(const uint aIntegrationOrder) override
Definition cl_FEM_SideSet.cpp:544
ElementType master_type() const override
returns type of sideset master
Definition cl_FEM_SideSet.hpp:266
void impose_dirichlet(const real aValue, const uint aDofType=0)
Definition cl_FEM_SideSet.cpp:352
void impose_alpha(const real aAlpha=BELFEM_QUIET_NAN, const real aTinf=BELFEM_QUIET_NAN)
imposing an alpha value requires setting the value in the field by default, a value can be set,...
Definition cl_FEM_SideSet.cpp:428
SideSet(DofManager *aParent, const id_t aID, Cell< mesh::Facet * > &aFacets, const GroupType aGroupType=GroupType::SIDESET)
Definition cl_FEM_SideSet.cpp:96
virtual void initialize_elements(Cell< mesh::Facet * > &aFacets)
Definition cl_FEM_SideSet.cpp:206
Cell< mesh::Node * > mNodes
Definition cl_FEM_SideSet.hpp:73
Cell< BoundaryConditionImposing > mBcTypes
Definition cl_FEM_SideSet.hpp:78
Vector< real > mBcValues
Definition cl_FEM_SideSet.hpp:76
ElementType slave_type() const override
returns type of sideset slave
Definition cl_FEM_SideSet.hpp:274
IntegrationData * slave_integration(const uint aSideSetIndex) override
integration data on slave element
Definition cl_FEM_SideSet.hpp:290
const ElementType mMasterType
Definition cl_FEM_SideSet.hpp:69
Cell< mesh::Node * > & nodes()
expose the node container
Definition cl_FEM_SideSet.hpp:250
const real & bc_value(const index_t &aDimension) const
Definition cl_FEM_SideSet.hpp:241
uint number_of_boundary_conditions() const
Definition cl_FEM_SideSet.hpp:258
const ElementType mSlaveType
Definition cl_FEM_SideSet.hpp:70
void set_boundary_conditions()
Definition cl_FEM_SideSet.cpp:486
Definition cl_IFB_LINE3.hpp:21
BoundaryConditionImposing
Definition en_FEM_BoundaryConditionImposing.hpp:20
bool pin_dirichlet_dof(const DofManagerBase *aParent, Dof *aDof, const real aValue, const id_t aGroupID, const id_t aNodeID, index_t &aNumFirstFlips)
shared Dirichlet pin for a single node dof, used by SideSet::impose_dirichlet and the Maxwell factory...
Definition cl_FEM_SideSet.cpp:36
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int uint
Definition typedefs.hpp:30
unsigned int id_t
Definition typedefs.hpp:41
ElementType
Element types.
Definition Mesh_Enums.hpp:27
@ EMPTY
Definition Mesh_Enums.hpp:28
GroupType
Definition Mesh_Enums.hpp:130
@ SIDESET
Definition Mesh_Enums.hpp:132
uint32_t index_t
Definition typedefs.hpp:52
double real
Definition typedefs.hpp:36
#define BELFEM_QUIET_NAN
Definition typedefs.hpp:87