Skip to main content

Module dm_options

Module dm_options 

Source
Expand description

DMPLEX-style configuration profiles for crate::dm::MeshDM.

This module is deliberately separate from the core topology and section data structures. It provides a serializable, PETSc-DMPLEX-familiar option layer that applications can load from JSON/TOML-like configuration, environment variables, or command-line arguments, then lower into mesh-sieve’s native runtime structs.

§PETSc DMPLEX option mapping

PETSc-style optionmesh-sieve field / builder target
-dm_refine_pre <n>DmplexRefinementProfile::pre_refinecrate::dm::MeshDMOptions::pre_refine
-dm_refine <n> / -dm_refine_post <n>DmplexRefinementProfile::post_refinecrate::dm::MeshDMOptions::post_refine
-dm_distribute <bool>DmplexDistributionProfile::distributecrate::dm::MeshDMOptions::distribute
-dm_distribute_overlap <n>DmplexOverlapProfile::depthcrate::algs::distribute::DistributionConfig::overlap_depth
-dm_plex_localize <bool>DmplexDistributionProfile::localize_coordinatescrate::dm::MeshDMOptions::localize_coordinates
-dm_plex_check_all <bool>DmplexCheckProfile::check_allcrate::diagnostics::MeshCheckOptions::all
-dm_plex_check_symmetry <bool>DmplexCheckProfile::check_symmetrycrate::diagnostics::MeshCheckOptions::check_symmetry
-dm_plex_check_skeleton <bool>DmplexCheckProfile::check_skeletoncrate::diagnostics::MeshCheckOptions::check_skeleton
-dm_plex_check_faces <bool>DmplexCheckProfile::check_facescrate::diagnostics::MeshCheckOptions::check_faces
-dm_plex_check_geometry <bool>DmplexCheckProfile::check_geometrycrate::diagnostics::MeshCheckOptions::check_geometry
`-dm_plex_reorder_section <vertex_firstcell_first>`
-dm_plex_metric_target_complexity <x>DmplexMetricProfile::target_complexity → metric normalization
-dm_plex_metric_gradation <x>DmplexMetricProfile::gradation → metric normalization
-dm_plex_metric_h_min <x>DmplexMetricProfile::min_magnitude → metric normalization
-dm_plex_metric_h_max <x>DmplexMetricProfile::max_magnitude → metric normalization
-dm_plex_metric_a_min <x>DmplexMetricProfile::min_anisotropy → metric normalization
-dm_plex_metric_a_max <x>DmplexMetricProfile::max_anisotropy → metric normalization
-dm_plex_metric_hausdorff_number <x>DmplexMetricProfile::hausdorff_number → metric normalization
`-dm_plex_metric_backend <internaltriangle
-dm_plex_filename <path>DmplexIoProfile::filename for application I/O plumbing
-dm_plex_format <name>DmplexIoProfile::format for application I/O plumbing
-dm_plex_interpolate <bool>DmplexIoProfile::interpolate for application I/O plumbing

The parser also accepts mesh-sieve-specific preparation options such as -dm_prepare_require_coordinates, -dm_prepare_require_cell_types, -dm_prepare_require_ownership, -dm_prepare_require_overlap, -dm_prepare_synchronize_ghost_sections, and -dm_prepare_create_serial_ownership.

Structs§

DmplexCheckProfile
Mesh validation switches.
DmplexConfigProfile
Top-level DMPLEX-style configuration profile.
DmplexDistributionProfile
Distribution controls.
DmplexIoProfile
Application-level mesh I/O profile.
DmplexMetricProfile
Metric-adaptation profile mirroring common DMPLEX metric options.
DmplexOverlapProfile
Overlap/ghost-layer controls.
DmplexRefinementProfile
Refinement pass counters.
DmplexSolverPreparationProfile
Solver-preparation prerequisite profile.

Enums§

DmplexMetricBackendProfile
Serializable remeshing backend selector.
DmplexOrderingProfile
Serializable section/topology ordering values.
DmplexTransferProfile
Serializable transfer policy for adaptation workflows.

Constants§

PETSC_DMPLEX_OPTION_MAPPINGS
Human-readable supported mapping table for generated docs/help text.

Functions§

default_fv_stability_thresholds
Defaults for FV-threshold adaptation profiles that downstream apps may expose next to DMPLEX metric controls.