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

Thin shell configuration object for electromagnetic simulations. More...

#include <cl_Protoshell.hpp>

Public Member Functions

 Protoshell (const id_t aID)
 ~Protoshell ()=default
stringlabel ()
Vector< id_t > & sidesets ()
Vector< id_t > & terminals ()
Vector< real > & thicknesses ()
Cell< string > & materials ()
Cell< mesh::Curve * > & side_curves ()
Cell< mesh::Curve * > & terminal_curves ()
bool & edge_coating ()
realedge_coating_width ()
Vector< id_t > & flipped_sidesets ()
id_t id () const

Detailed Description

Thin shell configuration object for electromagnetic simulations.

Protoshells act as templates/blueprints for creating thin shell structures in Maxwell simulations. They store all metadata needed to create the actual thin shell elements during mesh processing.

A Protoshell represents a thin conducting layer (like coil insulation or shielding) that is geometrically thin compared to the overall problem size but electrically significant.

The class separates configuration (stored here) from mesh modification (handled by CutFactory), making the code more modular.

Usage workflow:

  1. Created by MaxwellFactory::read_thin_shell_data() from input file
  2. Passed to CutFactory for preprocessing terminals and creating cuts
  3. Results in "tapes" - the processed thin shell surfaces in the mesh

Constructor & Destructor Documentation

◆ Protoshell()

belfem::Protoshell::Protoshell ( const id_t aID)
inline

◆ ~Protoshell()

belfem::Protoshell::~Protoshell ( )
default

Member Function Documentation

◆ edge_coating()

bool & belfem::Protoshell::edge_coating ( )
inline

◆ edge_coating_width()

real & belfem::Protoshell::edge_coating_width ( )
inline

◆ flipped_sidesets()

Vector< id_t > & belfem::Protoshell::flipped_sidesets ( )
inline

◆ id()

id_t belfem::Protoshell::id ( ) const
inline

◆ label()

string & belfem::Protoshell::label ( )
inline

◆ materials()

Cell< string > & belfem::Protoshell::materials ( )
inline

◆ side_curves()

Cell< mesh::Curve * > & belfem::Protoshell::side_curves ( )
inline

◆ sidesets()

Vector< id_t > & belfem::Protoshell::sidesets ( )
inline

◆ terminal_curves()

Cell< mesh::Curve * > & belfem::Protoshell::terminal_curves ( )
inline

◆ terminals()

Vector< id_t > & belfem::Protoshell::terminals ( )
inline

◆ thicknesses()

Vector< real > & belfem::Protoshell::thicknesses ( )
inline

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