Automation
Automation helpers are useful when you want a fast, reproducible starting point without hand-deriving every simulation parameter.
Core helpers
Section titled “Core helpers”| Helper | Signature | What it does |
|---|---|---|
plan_mesh | plan_mesh(geometry, freq_range, materials=None, accuracy="standard", boundary="cpml", ...) | returns a serializable MeshPlan with mesh, CFL, absorber, memory, support-check, and artifact declarations |
auto_configure | auto_configure(geometry, freq_range, materials=None, accuracy="standard", boundary="cpml", dx_override=None, margin_override=None, n_steps_override=None, max_memory_mb=None) | derives mesh, margin, and run budget from geometry + frequency range |
Simulation.auto | Simulation.auto(freq_range, accuracy="standard", **kwargs) | convenience constructor for a full simulation |
smooth_grading | mesh-profile smoothing helper | used by current crossval workflows for graded z-profiles |
apply_thirds_rule | feature-aware mesh helper | used when derived meshes need conservative refinement |
from rfx import Simulation, plan_mesh
plan = plan_mesh(geometry, freq_range=(1.5e9, 3.5e9), accuracy="standard")sim = Simulation(**plan.to_sim_kwargs())plan_mesh(...) is the inspectable planning layer. It reuses auto_configure(...)
rather than forking mesh math. Its artifact declarations are read-only intended
paths; passing artifact_root does not create directories or write files.
MeshPlan v1 includes plan_source, nullable unknowns, and a stable
cell_sizes block (nominal_dx, per-axis min/max values, and
profiles_present). Geometry-derived plans use plan_source="auto_configure"
and carry the requested accuracy; they have not run Simulation.preflight().
When to use automation
Section titled “When to use automation”- Use it for first-pass setup, not as a replacement for design review.
- Keep the derived mesh and domain visible in public examples.
- Use the result in public reporting only after it matches the support matrix and validation evidence for the intended lane.
Current workflow note
Section titled “Current workflow note”The newest thin-substrate crossval scripts use smooth_grading() to build
non-uniform z-profiles around the substrate. That is useful workflow evidence,
but it does not by itself make the graded-z workflow a validated reference path.