12#ifndef CL_FEM_THINSHELL_HPP
13#define CL_FEM_THINSHELL_HPP
153 side_connector_nodes();
156 side_connector_edges();
165 if ( mGhostSideSet !=
nullptr )
167 return mGhostSideSet->id();
186 if ( mGhostSideSet !=
nullptr )
188 return mGhostSideSet->facets();
210 "size of materials must match number of blocks (%u vs %u)",
211 (
unsigned int ) aMaterials.
size(), (
unsigned int ) mBlocks.size()
214 mMaterials = aMaterials ;
228 return mSideSet->element_type() ;
234 return mThicknesses ;
237 inline const string &
240 return mSideSet->label() ;
246 return mSideSet->id() ;
253 + mBlocks.size() *
sizeof(
Block * )
254 + mThicknesses.length() *
sizeof(
real ) ;
257 for(
const string & tMaterial : mMaterials )
259 aMem +=
sizeof(
string ) + tMaterial.capacity() *
sizeof( char );
268 return mConnectorFacetMap ;
274 return mConnectorFacetMap ;
280 return mNodeIndices ;
286 return mSideConnectorBlocks ;
292 return mSideConnectorSideSets ;
296 ThinShell::side_connector_nodes()
298 return mSideConnectorNodes ;
302 ThinShell::side_connector_edges()
304 return mSideConnectorEdges ;
#define BELFEM_ERROR(aCheck,...)
Definition assert.hpp:264
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
Hash map (unordered key-value).
Definition cl_Map.hpp:75
Definition cl_Block.hpp:27
Definition cl_SideSet.hpp:29
Definition cl_ThinShellFactory.hpp:26
const string & label() const
Definition cl_ThinShell.hpp:238
friend class ThinShellFactory
Definition cl_ThinShell.hpp:76
Cell< index_t > & node_indices()
Definition cl_ThinShell.hpp:278
Cell< Block * > & side_connector_blocks()
Definition cl_ThinShell.hpp:284
Map< id_t, std::pair< id_t, id_t > > & connector_facet_map()
Definition cl_ThinShell.hpp:266
Cell< Block * > & blocks()
Definition cl_ThinShell.hpp:199
Cell< SideSet * > & side_connector_sidesets()
Definition cl_ThinShell.hpp:290
ElementType element_type() const
Definition cl_ThinShell.hpp:226
id_t ghost_id() const
Definition cl_ThinShell.hpp:163
void set_thicknesses(const Vector< real > &aThicknesses)
Definition cl_ThinShell.cpp:39
const Cell< string > & materials() const
Definition cl_ThinShell.hpp:220
size_t memory() const
Definition cl_ThinShell.hpp:250
void set_materials(const Cell< string > &aMaterials)
Definition cl_ThinShell.hpp:207
Map< id_t, real > & connector_thicknesses()
id_t id() const
Definition cl_ThinShell.hpp:244
void move_node_indices(Cell< index_t > &aNodeIndices)
Definition cl_ThinShell.cpp:56
void set_label(const string &aLabel)
Definition cl_ThinShell.cpp:33
ThinShell(SideSet *aSideSet, SideSet *aGhostSideSet)
Definition cl_ThinShell.cpp:17
Cell< Facet * > & facets()
Definition cl_ThinShell.hpp:176
Cell< Facet * > & ghost_facets()
Definition cl_ThinShell.hpp:184
const Map< id_t, real > & connector_thicknesses() const
const Vector< real > & thicknesses() const
Definition cl_ThinShell.hpp:232
Definition cl_EF_EdgeFunction.hpp:17
USER GUIDES:
Definition cl_Capacitor.cpp:16
std::string string
Definition typedefs.hpp:26
constexpr id_t gNoID
Definition typedefs.hpp:58
unsigned int id_t
Definition typedefs.hpp:41
ElementType
Element types.
Definition Mesh_Enums.hpp:27
double real
Definition typedefs.hpp:36