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

#include <cl_ThinShellFactory.hpp>

Public Member Functions

 ThinShellFactory (Mesh *aMesh, Cell< Node * > &aMasterNodes, Cell< Node * > &aSlaveNodes, Map< string, Material * > *aMaterialMap=nullptr, const bool aCreateGhostFacets=false)
 ~ThinShellFactory ()
ThinShell * create (Protoshell *aProtoShell)
void flag_periodic_nodes ()
void unflag_periodic_nodes ()

Static Public Member Functions

static void update_node_facet_tables (Cell< Node * > &aNodes, Cell< Facet * > &aFacets)
 rebuilds the facet containers of every node of aNodes, of its original and of all duplicates of that original, from aFacets.

Constructor & Destructor Documentation

◆ ThinShellFactory()

belfem::mesh::ThinShellFactory::ThinShellFactory ( Mesh * aMesh,
Cell< Node * > & aMasterNodes,
Cell< Node * > & aSlaveNodes,
Map< string, Material * > * aMaterialMap = nullptr,
const bool aCreateGhostFacets = false )
Parameters
aMeshthe mesh the shell layers are built into
aMasterNodesthe original ( non-duplicate ) nodes of the tape surfaces, as collected by CutFactory::thin_shell_master_nodes()
aSlaveNodesper master node, its cut duplicate, or the master node itself where no duplicate exists ( same ordering )
aMaterialMaplower-case label -> material map the layer materials of a protoshell are resolved against
aCreateGhostFacetsduplicate the edge / face dofs at every interface between two different resistive layers and create the ghost facets that couple them ( the Nitsche ghost, mt_maxwell_h.cpp ). false = the layers share their interface entities. Decided by the deck ( fn_FEM_ghost_switch.hpp ), off by default

◆ ~ThinShellFactory()

belfem::mesh::ThinShellFactory::~ThinShellFactory ( )

Member Function Documentation

◆ create()

ThinShell * belfem::mesh::ThinShellFactory::create ( Protoshell * aProtoShell)

◆ flag_periodic_nodes()

void belfem::mesh::ThinShellFactory::flag_periodic_nodes ( )

◆ unflag_periodic_nodes()

void belfem::mesh::ThinShellFactory::unflag_periodic_nodes ( )

◆ update_node_facet_tables()

void belfem::mesh::ThinShellFactory::update_node_facet_tables ( Cell< Node * > & aNodes,
Cell< Facet * > & aFacets )
static

rebuilds the facet containers of every node of aNodes, of its original and of all duplicates of that original, from aFacets.

aNodes must cover the originals of all nodes of aFacets. On return the node indices are restored and flag slot 2 is clear on all of these nodes; a refused call leaves slot 2 set. Uses no factory state


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