![]() |
stroid v0.1.0
Multi-block curvilinear mesh generation
|
Functions | |
| void | PromoteToHighOrder (mfem::Mesh &mesh, const fourdst::config::Config< config::MeshConfig > &config) |
| Promote a mesh to high-order by attaching an H1 nodal finite element space. | |
| void | ProjectMesh (mfem::Mesh &mesh, const fourdst::config::Config< config::MeshConfig > &config) |
| Project high-order mesh nodes using the configured curvilinear mapping. | |
| void | ApplyEquiangular (mfem::Vector &pos) |
| Apply an equiangular (gnomonic) projection to a point on a cube. | |
| void | ApplySpheroidal (mfem::Vector &pos, const fourdst::config::Config< config::MeshConfig > &config) |
| Apply spheroidal flattening along the Z axis. | |
| void | ApplyKelvin (mfem::Vector &pos, const fourdst::config::Config< config::MeshConfig > &config) |
| Apply Kelvin transform outside the stellar radius. | |
| void | TransformPoint (mfem::Vector &pos, const fourdst::config::Config< config::MeshConfig > &config, int attribute_id) |
| Map a point from the initial block topology to the curvilinear domain. | |
| std::unique_ptr< mfem::Mesh > | BuildSkeleton (const fourdst::config::Config< config::MeshConfig > &config) |
| Build the initial multi-block mesh topology for the star model. | |
| void | Finalize (mfem::Mesh &mesh, const fourdst::config::Config< config::MeshConfig > &config) |
| Finalize topology, validate orientation, and apply uniform refinement. | |
| void stroid::topology::ApplyEquiangular | ( | mfem::Vector & | pos | ) |
Apply an equiangular (gnomonic) projection to a point on a cube.
| pos | Position vector updated in-place. |
| void stroid::topology::ApplyKelvin | ( | mfem::Vector & | pos, |
| const fourdst::config::Config< config::MeshConfig > & | config ) |
Apply Kelvin transform outside the stellar radius.
| pos | Position vector updated in-place. |
| config | Mesh configuration (uses r_star and r_infinity). |
| void stroid::topology::ApplySpheroidal | ( | mfem::Vector & | pos, |
| const fourdst::config::Config< config::MeshConfig > & | config ) |
Apply spheroidal flattening along the Z axis.
| pos | Position vector updated in-place. |
| config | Mesh configuration (uses flattening). |
| std::unique_ptr< mfem::Mesh > stroid::topology::BuildSkeleton | ( | const fourdst::config::Config< config::MeshConfig > & | config | ) |
Build the initial multi-block mesh topology for the star model.
| config | Mesh configuration (uses radii and domain flags). |
| void stroid::topology::Finalize | ( | mfem::Mesh & | mesh, |
| const fourdst::config::Config< config::MeshConfig > & | config ) |
Finalize topology, validate orientation, and apply uniform refinement.
| mesh | Mesh to finalize in-place. |
| config | Mesh configuration (uses refinement_levels). |
| void stroid::topology::ProjectMesh | ( | mfem::Mesh & | mesh, |
| const fourdst::config::Config< config::MeshConfig > & | config ) |
Project high-order mesh nodes using the configured curvilinear mapping.
Requires nodes to be present (call PromoteToHighOrder first).
| mesh | Mesh to update in-place. |
| config | Mesh configuration (uses radii, flattening, and mapping parameters). |
| void stroid::topology::PromoteToHighOrder | ( | mfem::Mesh & | mesh, |
| const fourdst::config::Config< config::MeshConfig > & | config ) |
Promote a mesh to high-order by attaching an H1 nodal finite element space.
| mesh | Mesh to update in-place. |
| config | Mesh configuration (uses order). |
| void stroid::topology::TransformPoint | ( | mfem::Vector & | pos, |
| const fourdst::config::Config< config::MeshConfig > & | config, | ||
| int | attribute_id ) |
Map a point from the initial block topology to the curvilinear domain.
| pos | Position vector updated in-place. |
| config | Mesh configuration (uses radii, flattening, instability radius, and core steepness). |
| attribute_id | Element attribute ID (currently unused). |