Namespaces | |
| namespace | config_tag |
Classes | |
| class | FieldList |
| the dof list is a struct that contains the dof lists for blocks, sidesets and interfaces More... | |
| class | TMatrix |
Enumerations | |
| enum class | Formulation { HPhi , L2PhiH , L2PhiB , L2EdgeH , UNDEFINED } |
Functions | |
| const Matrix< real > & | side_connector_edge_function (Calculator *aCalc, const real xi, const real eta, const real zeta) |
| uint64_t | mesh_config_hash (const string &aText) |
| The mesh CONFIGURATION tag: a fingerprint of the settings that decide how a .msh is turned into an enriched mesh – cuts, thin-shell layers, edge-coating walls, periodicity. | |
| string | mesh_config_text (const InputFile &aInputFile) |
| The canonical text behind the tag. | |
| uint64_t | mesh_config_tag (const InputFile &aInputFile) |
| Convenience: the tag of an input file. | |
| const Matrix< real > & | l2N (Calculator *aCalc, const uint aIndex) |
| void | background_phi (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_picard (Calculator *aCalc, TimestepMatrices *aMatrices) |
| Collapsed h-kernels: all per-point material math is delegated to aCalc->maxwell(), whose constructor-time dispatch covers the bulk/thin-shell, metal/alloy/HTS, defect, and piecewise axes. | |
| void | h_newton_mu0 (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_newton_mu (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_side_connector (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_side_connector_newton (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_ghost (Calculator *aCalc, TimestepMatrices *aMatrices) |
| facet-based thin-shell interface / stabilization kernel | |
| void | save_resistivity (Calculator *aCalc, const real aRhoM) |
| void | save_dotQ (Calculator *aCalc, const real aDotQ) |
| real | get_resistivity (Calculator *aCalc, const index_t aIndex=BELFEM_UINT_MAX) |
| void | l2_b2d (Calculator *aCalc, Matrix< real > &aK, Vector< real > &aF) |
| void | l2_h (Calculator *aCalc, Matrix< real > &aK, Vector< real > &aF) |
| void | l2_ah_2d (Calculator *aCalc, Matrix< real > &aK, Vector< real > &aF) |
| void | l2_phi (Calculator *aCalc, Matrix< real > &aK, Vector< real > &aF) |
| void | l2_phi_ferro (Calculator *aCalc, Matrix< real > &aK, Vector< real > &aF) |
| void | phi (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | phi_ferro_picard (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | phi_ferro_newton (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | phi_tri3 (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | phi_tet4 (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | phi_tri6_tet10 (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | symmetry_phi_2d (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | symmetry_phi_3d (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_symmetry_2d (Calculator *aCalc, TimestepMatrices *aMatrices) |
| void | h_symmetry_3d (Calculator *aCalc, TimestepMatrices *aMatrices) |
|
strong |
| void belfem::fem::maxwell::background_phi | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
|
inline |
| void belfem::fem::maxwell::h_ghost | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
facet-based thin-shell interface / stabilization kernel
number of dimensions
| void belfem::fem::maxwell::h_newton_mu | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::h_newton_mu0 | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::h_picard | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
Collapsed h-kernels: all per-point material math is delegated to aCalc->maxwell(), whose constructor-time dispatch covers the bulk/thin-shell, metal/alloy/HTS, defect, and piecewise axes.
Dispatch in IWG_Maxwell::link_to_group() is by solver algorithm and mu constancy only:
Picard -> h_picard Newton, mu constant -> h_newton_mu0 Newton, mu field-dependent -> h_newton_mu
| void belfem::fem::maxwell::h_side_connector | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::h_side_connector_newton | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::h_symmetry_2d | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::h_symmetry_3d | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::l2_ah_2d | ( | Calculator * | aCalc, |
| Matrix< real > & | aK, | ||
| Vector< real > & | aF ) |
| void belfem::fem::maxwell::l2_b2d | ( | Calculator * | aCalc, |
| Matrix< real > & | aK, | ||
| Vector< real > & | aF ) |
| void belfem::fem::maxwell::l2_h | ( | Calculator * | aCalc, |
| Matrix< real > & | aK, | ||
| Vector< real > & | aF ) |
| void belfem::fem::maxwell::l2_phi | ( | Calculator * | aCalc, |
| Matrix< real > & | aK, | ||
| Vector< real > & | aF ) |
| void belfem::fem::maxwell::l2_phi_ferro | ( | Calculator * | aCalc, |
| Matrix< real > & | aK, | ||
| Vector< real > & | aF ) |
|
inline |
|
inline |
The mesh CONFIGURATION tag: a fingerprint of the settings that decide how a .msh is turned into an enriched mesh – cuts, thin-shell layers, edge-coating walls, periodicity.
It exists because the .bfm reuse test compares only Mesh::checksum(), which is the identity of the BASE mesh ( node coordinates and element connectivity ). The two answer different questions and both are needed: the checksum catches a changed .msh under an unchanged deck, this tag catches a changed deck under an unchanged .msh.
Deliberately NOT covered, so the user can retune a run against a cached mesh: solver, timestepping, tolerances, output, and boundary-condition amplitudes. Terminal ids ARE covered, because they feed cut construction, and so is the thin-shell ghost switch ( nonlinear magnetic { nitsche ghost penalty { eta } } ), because it decides whether the layer interfaces carry duplicate dofs – a discretization, not a tuning.
Known gap, accepted: a change INSIDE a material definition ( one that adds or removes rho ) can alter thin-shell node duplication while every layer label stays the same. Material labels are covered, definitions are not.
The tag must be reproducible on another machine, because a .bfm travels with its deck and mesh. Hence FNV-1a over fixed-precision TEXT rather than std::hash over raw values: std::hash is unspecified across standard libraries, and raw IEEE bytes would carry endianness plus last-ulp noise ( 100 um and 0.1 mm must give the same tag ). FNV-1a, 64 bit. A defined byte algorithm: identical text yields an identical value on every compiler, library and platform.
|
inline |
Convenience: the tag of an input file.
The canonical text behind the tag.
Stored in the .bfm next to the tag so a mismatch can show WHICH setting changed instead of only reporting that two numbers differ.
Lines are sorted, so neither the order of sections in the deck nor the iteration order of any container can change the result.
| void belfem::fem::maxwell::phi | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::phi_ferro_newton | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::phi_ferro_picard | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::phi_tet4 | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::phi_tri3 | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::phi_tri6_tet10 | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
|
inline |
|
inline |
| const Matrix< real > & belfem::fem::maxwell::side_connector_edge_function | ( | Calculator * | aCalc, |
| const real | xi, | ||
| const real | eta, | ||
| const real | zeta ) |
| void belfem::fem::maxwell::symmetry_phi_2d | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |
| void belfem::fem::maxwell::symmetry_phi_3d | ( | Calculator * | aCalc, |
| TimestepMatrices * | aMatrices ) |