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

Main orchestrator for automatic cut generation on multiply-connected domains. More...

#include <cl_CutFactory.hpp>

Public Member Functions

 CutFactory (Mesh *aMesh, Topology *aTopology, Cell< Protoshell * > &aProtoshells, const CutAlgorithm aAlgorithm, const bool aUseEnrichment)
 ~CutFactory ()
void set_terminals (const Cell< Cell< id_t > > &aTerminals, const Cell< id_t > &aThinShellIndices)
void set_periodicity (PeriodicityFactory *aPeriodicFactory)
void run ()
Cell< Node * > & abstract_nodes ()
Cell< Node * > & orphaned_nodes ()
Cell< SideSet * > & cuts ()
bool create_thin_shell_cuts ()
void duplicate_nodes_on_face_sidesets ()
void relink_slave_elements_with_duplicate_nodes ()
void duplicate_and_relink_facets ()
void relink_non_thinshell_facets ()
void close_terminal_loops ()
void orient_terminal_curves ()
void orient_terminal_curves_sub (SideSet *aSideSet, Vector< real > &aWorkA, Vector< real > &aWorkB, Vector< real > &aN)
void orient_terminal_curves_2D ()
void save_curve_debug_meshes ()
Vector< id_t > & thin_shell_boundaries ()
Cell< Facet * > & thin_shell_facets (const id_t aID)
Cell< Node * > & thin_shell_master_nodes ()
Cell< Node * > & thin_shell_slave_nodes ()

Detailed Description

Main orchestrator for automatic cut generation on multiply-connected domains.

See also
Homology Module Usage Guide

Constructor & Destructor Documentation

◆ CutFactory()

belfem::mesh::CutFactory::CutFactory ( Mesh * aMesh,
Topology * aTopology,
Cell< Protoshell * > & aProtoshells,
const CutAlgorithm aAlgorithm,
const bool aUseEnrichment )

◆ ~CutFactory()

belfem::mesh::CutFactory::~CutFactory ( )

Member Function Documentation

◆ abstract_nodes()

Cell< Node * > & belfem::mesh::CutFactory::abstract_nodes ( )

◆ close_terminal_loops()

void belfem::mesh::CutFactory::close_terminal_loops ( )

◆ create_thin_shell_cuts()

bool belfem::mesh::CutFactory::create_thin_shell_cuts ( )

◆ cuts()

Cell< SideSet * > & belfem::mesh::CutFactory::cuts ( )

◆ duplicate_and_relink_facets()

void belfem::mesh::CutFactory::duplicate_and_relink_facets ( )

◆ duplicate_nodes_on_face_sidesets()

void belfem::mesh::CutFactory::duplicate_nodes_on_face_sidesets ( )

◆ orient_terminal_curves()

void belfem::mesh::CutFactory::orient_terminal_curves ( )

◆ orient_terminal_curves_2D()

void belfem::mesh::CutFactory::orient_terminal_curves_2D ( )

◆ orient_terminal_curves_sub()

void belfem::mesh::CutFactory::orient_terminal_curves_sub ( SideSet * aSideSet,
Vector< real > & aWorkA,
Vector< real > & aWorkB,
Vector< real > & aN )

◆ orphaned_nodes()

Cell< Node * > & belfem::mesh::CutFactory::orphaned_nodes ( )

◆ relink_non_thinshell_facets()

void belfem::mesh::CutFactory::relink_non_thinshell_facets ( )

◆ relink_slave_elements_with_duplicate_nodes()

void belfem::mesh::CutFactory::relink_slave_elements_with_duplicate_nodes ( )

◆ run()

void belfem::mesh::CutFactory::run ( )

◆ save_curve_debug_meshes()

void belfem::mesh::CutFactory::save_curve_debug_meshes ( )

◆ set_periodicity()

void belfem::mesh::CutFactory::set_periodicity ( PeriodicityFactory * aPeriodicFactory)

◆ set_terminals()

void belfem::mesh::CutFactory::set_terminals ( const Cell< Cell< id_t > > & aTerminals,
const Cell< id_t > & aThinShellIndices )

◆ thin_shell_boundaries()

Vector< id_t > & belfem::mesh::CutFactory::thin_shell_boundaries ( )
inline

◆ thin_shell_facets()

Cell< Facet * > & belfem::mesh::CutFactory::thin_shell_facets ( const id_t aID)
inline

◆ thin_shell_master_nodes()

Cell< Node * > & belfem::mesh::CutFactory::thin_shell_master_nodes ( )
inline

◆ thin_shell_slave_nodes()

Cell< Node * > & belfem::mesh::CutFactory::thin_shell_slave_nodes ( )
inline

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