Output schema¶
Every active MHX run writes a JSON manifest plus schema-versioned data files.
Artifacts also record api_version = "v1" so loaders can enforce the public API
contract selected by MHX_API_VERSION.
Run directory¶
mhx run examples/linear_tearing.toml --outdir outputs/smoke writes:
config_effective.json: JSON serialization of the effective config.diagnostics.json: scalar JSON diagnostics.trajectory.npz: compressed trajectory arrays using schemamhx.reduced_mhd.trajectory.v1.manifest.json: file list, SHA-256 hashes, and claim metadata.
Manifest claim levels¶
Every v1 manifest.json contains:
Key |
Meaning |
|---|---|
|
Manifest schema, currently |
|
Public API version selected by |
|
ISO-8601 creation timestamp in UTC. |
|
Package version that wrote the manifest. |
|
One of |
|
Human-readable boundary explaining what the artifact can and cannot support. |
|
JSON-serializable run or benchmark configuration. |
|
Mapping from stable output names to run-directory-relative file paths. |
|
SHA-256 hashes for output files that existed when the manifest was written. |
mhx artifact-manifest also collects nested manifest.json claim levels in a
top-level claim_levels mapping. This lets CI and reviewers check whether a
figure directory mixes smoke, validation, production-template, or production
artifacts.
trajectory.npz keys¶
The reduced-MHD v1 trajectory file contains:
Key |
Meaning |
|---|---|
|
Schema string, currently |
|
Public API version string, currently |
|
Package version that wrote the file. |
|
Saved times. |
|
Saved magnetic flux arrays with shape |
|
Saved vorticity arrays with shape |
|
JSON-encoded effective run config. |
|
JSON-encoded scalar diagnostics. |
Important scalar diagnostics include equilibrium, equilibrium_parameters,
physics_plugin_modules, physics_plugin_entry_point_groups, physics_terms,
diagnostic_plugin_modules, diagnostic_plugin_entry_point_groups,
diagnostic_quantities, diagnostic_mode, fit_time_window,
fit_sample_count, gamma_fit, and final_magnetic_divergence_linf. These
fields are saved so model assembly, extension modules, entry-point plugin
discovery, growth-rate plots, divergence checks, and comparisons can be audited.
diagnostics.json keys¶
The default reduced-MHD run uses the diagnostic registry entries energy,
mode_growth, and divergence_error. The default scalar output includes:
Key |
Meaning |
|---|---|
|
Diagnostic registry names evaluated for this run. |
|
Importable modules used to register custom diagnostics. |
|
Installed entry-point groups used to register diagnostics. |
|
Importable modules used to register custom RHS physics terms. |
|
Installed entry-point groups used to register RHS physics terms. |
|
Initial reduced-MHD total energy. |
|
Final reduced-MHD total energy. |
|
Final mean magnetic perturbation energy. |
|
Final mean kinetic energy. |
|
Fourier mode used by the mode-growth diagnostic. |
|
Inclusive time window used for the exponential fit. |
|
Number of saved samples used in the fit. |
|
Initial normalized magnetic-flux Fourier amplitude. |
|
Final normalized magnetic-flux Fourier amplitude. |
|
Least-squares exponential growth/decay rate. |
|
Final spectral \(|\nabla\cdot B_\perp|_\infty\) check. |
Figures¶
Figures are regenerated from saved data:
mhx figures outputs/smoke --gif
Expected files:
outputs/smoke/figures/energy_history.pngoutputs/smoke/figures/flux_final.pngoutputs/smoke/figures/mode_amplitude.pngoutputs/smoke/figures/flux_movie.gif
Reports¶
Run summaries are regenerated from saved outputs:
mhx report outputs/smoke
Expected files:
outputs/smoke/report.jsonoutputs/smoke/report.md
report.json also includes additional_scalar_diagnostics, a dictionary of
plugin-provided scalar metrics not part of the core reduced-MHD diagnostic
schema. report.md renders the same values in an Additional scalar diagnostics table. Reports also include diagnostic_metadata when MHX can
reconstruct the selected diagnostic registry from config_effective.json; any
import or registry reconstruction failures are recorded in warnings.
Diagnostics may also provide optional figure hooks. mhx figures writes those
figures under figures/diagnostics/. mhx report dispatches the same hooks and
records a diagnostic_figures list in report.json, with each entry containing
a stable figure key and run-relative path.
Artifact manifests¶
For reproducible figure/report diffs, write a recursive checksum manifest:
mhx artifact-manifest outputs/smoke
This writes outputs/smoke/artifact_manifest.json with schema
mhx.artifacts.v1, API version, file paths, byte sizes, and SHA-256 hashes.
Paper-pipeline bundle¶
mhx validate paper-pipeline --outdir outputs/paper_pipeline writes the
reviewer-facing validation bundle:
File |
Schema |
Meaning |
|---|---|---|
|
|
Included validation cases, readiness status, claim boundary, and API metadata. |
|
|
Gate status for suite pass, readiness generation, and release-ready requirement. |
|
Markdown |
Human-readable summary of gates and included cases. |
|
|
Full or declared-subset validation-suite summary. |
|
|
Public-release and publication-claim readiness status. |
|
|
Recursive SHA-256 hashes for the whole bundle. |
|
|
Top-level claim metadata with |
Subsets requested with --cases are command-validation artifacts, not full
release evidence unless the readiness gate is also required and passing.
Validation-suite outputs¶
mhx validate all --outdir outputs/validation_suite executes the active FAST
validation cases, including double-Harris, turbulence, seed-QI, fitted latent
ODE, and restartable Rutherford execution chunks. Important closed-lane schemas
include:
Orszag–Tang vortex¶
mhx benchmark orszag-tang --outdir outputs/benchmarks/orszag_tang_vortex --movies
writes:
File |
Schema / contents |
|---|---|
|
|
|
Scalar run controls, energy/drop diagnostics, high-\(k\) growth, and divergence summary. |
|
|
|
Energy, high-\(k\), final-current, and final-vorticity summary. |
|
Optional flux, current, and vorticity movies when |
Decaying turbulence and forced turbulent reconnection¶
mhx benchmark decaying-turbulence --outdir outputs/benchmarks/decaying_mhd_turbulence --movies
and
mhx benchmark forced-turbulent-reconnection --outdir outputs/benchmarks/forced_turbulent_reconnection --movies
write:
File |
Schema / contents |
|---|---|
|
|
|
|
|
Scalar controls, energy/current diagnostics, high-\(k\) summaries, and reconnection-proxy statistics. |
|
Finite-array, energy, current, high-\(k\), and reconnection-proxy gates. |
|
Energy, current/reconnection, final current, and final flux summary. |
|
Optional fixed-scale movies when |
mhx benchmark forced-turbulent-reconnection-readiness-check <run-dir> writes
<run-dir>/readiness/ by default:
File |
Schema / contents |
|---|---|
|
|
|
|
|
Reviewer-readable pass/fail readiness matrix. |
|
Recursive hashes for the readiness bundle. |
|
|
The validation suite records this readiness check as its own required
public-release case (forced_turbulent_reconnection_readiness) so release
readiness cannot pass on the trajectory artifact alone.
Rutherford production execution¶
mhx campaign rutherford-execute <run-dir> writes:
File |
Schema / contents |
|---|---|
|
|
|
|
|
Ordered checkpoint metadata for resume and audit. |
|
Next-step metadata for chunked continuation. |
|
|
|
|
|
Island-width, reconnected-flux, energy-budget, and |
|
Optional fixed-scale flux and current movies. |
|
Recursive hashes for chunk outputs, including the final |
|
Top-level claim metadata and output hashes. |
mhx campaign rutherford-promotion-check <run-dir> writes a separate promotion
bundle under <run-dir>/promotion/ by default:
File |
Schema / contents |
|---|---|
|
|
|
|
|
Reviewer-readable pass/fail matrix. |
|
Recursive hashes for the promotion bundle. |
|
|
Fitted neural ODE¶
mhx neural-ode train --outdir outputs/neural_ode/latent_ode_fast writes:
File |
Schema / contents |
|---|---|
|
|
|
|
|
Prediction tensor, target tensor, times, seeds, and target names. |
|
|
|
Frozen deterministic FAST dataset when the train command generated it locally. |
|
Train/validation/test seed split metadata. |
|
Persistence/linear baseline metrics used in comparisons. |
|
Calibration and coverage diagnostics for the deterministic fit. |
|
Reproducible experiment controls. |
|
|
|
Top-level validation manifest. |
The suite also writes:
validation_suite.json: schemamhx.validation.suite.v1, aggregate pass/fail status,jax_enable_x64, case list, per-case validation schemas, checks, and relative paths.validation_suite.md: reviewer-readable pass/fail summary table.artifact_manifest.json: recursive checksum manifest for every generated validation artifact.manifest.json: top-level manifest for the suite summary files.one subdirectory per case, for example
resistive_decay/,harris_delta_prime/,linear_tearing_eigenvalue/,linear_tearing_dispersion/,linear_tearing_layer/,linear_tearing_timedomain/,cosine_equilibrium_linearization/,periodic_current_sheet_eigenvalue/,periodic_current_sheet_timedomain/,periodic_current_sheet_nonlinear_bridge/,periodic_double_harris_nonlinear_growth/,periodic_double_harris_convergence/,nonlinear_energy_budget/,orszag_tang_vortex/,decaying_mhd_turbulence/,forced_turbulent_reconnection/,nonlinear_duration_audit/,seed_robust_qi/,seed_robust_qi_sweep/,neural_ode_reproducibility/,neural_ode_latent_fit/,rutherford_production_execution/,duration_policy/,diffusion_eigenvalue/,power_iteration/, andarnoldi/.
Each validation-suite case includes a claim_level copied from its nested
manifest. Most cases are validation; the short linear-tearing smoke run is
explicitly smoke.
Campaign-template outputs¶
mhx campaign rutherford-template --outdir outputs/campaigns/rutherford_template
writes:
campaign.json: schemamhx.campaign.rutherford_template.v1, generated config, duration assessment, required production outputs, and claim boundary.campaign_config.toml: long-run TOML template withphysics.model = "reduced_mhd_nonlinear_tearing_campaign".duration_assessment.json: serialized duration guard for the chosen \(\gamma\), e-fold count, and safety factor.validation.json: pass/fail checks for duration, non-FAST resolution, saved-frame count, and required runtime diagnostics.manifest.json: top-level claim metadata withclaim_level = "production_template".
FAST Rutherford runner outputs¶
mhx campaign rutherford-run-fast --outdir outputs/campaigns/rutherford_fast
writes validation-grade campaign artifacts:
rutherford_fast_histories.npz: schemamhx.validation.rutherford_campaign_run.v1, withtime,seed,reconnected_flux,rutherford_island_width,reconnection_rate_proxy,magnetic_energy,kinetic_energy,total_energy,magnetic_divergence_linf, andcurrent_density_linf.diagnostics.json: scalar pass/fail diagnostics and run metadata.validation.json: finite-value, duration, energy-growth, divergence, and claim-level checks.campaign_template.json: copy of the production-template requirements used to interpret the FAST run.figures/rutherford_fast_histories.png: quick-look histories.manifest.json: top-level claim metadata withclaim_level = "validation"unless explicitly configured otherwise.
The schema intentionally mirrors the future long Rutherford campaign history keys, but the FAST runner is not a production nonlinear result.
Seed-robust QI outputs¶
mhx benchmark seed-robust-qi --outdir outputs/benchmarks/seed_robust_qi
writes:
diagnostics.json: schemamhx.validation.seed_robust_qi.v1, including sample means, standard deviations, CVs, and gate results.validation.json: schemamhx.validation.seed_robust_qi.gates.v1, including per-metric pass/fail checks.ensemble.npz: seed list and full metric samples forgamma_fit, final energies, and magnetic-divergence error.figures/qi_summary.png: compact metric stability summary when plotting dependencies are available.manifest.json: top-level claim metadata withclaim_level = "validation".
Exact-decay validation outputs¶
mhx benchmark decay --outdir outputs/benchmarks/resistive_decay writes:
diagnostics.json: scalar decay-rate and error diagnostics with schemamhx.validation.resistive_decay.v1.validation.json: pass/fail physics gates and thresholds.decay_history.npz: time, numerical/exact amplitude, numerical/exact energy, and relative-error arrays.figures/decay_amplitude.png,figures/decay_energy.png, andfigures/decay_relative_error.png.
Reconnection scaling validation outputs¶
mhx benchmark scaling --outdir outputs/benchmarks/reconnection_scaling writes:
diagnostics.json: fitted and expected log-log slopes with schemamhx.validation.reconnection_scaling.v1.validation.json: pass/fail slope gates and tolerances.scaling_history.npz: Lundquist samples and analytic scaling arrays.figures/fkr_scaling.png,figures/plasmoid_scaling.png, andfigures/ideal_tearing_scaling.png.
FKR-window validation outputs¶
mhx benchmark fkr-window --outdir outputs/benchmarks/fkr_window writes:
diagnostics.json: fixed-\(S_a\) FKR constant-\(\psi\) regime-window diagnostics with schemamhx.validation.fkr_window.v1.validation.json: pass/fail gates for positive \(\Delta'a\), thin inner layer, and \(\Delta'\delta\).fkr_window.npz: sampledka,gamma_tau_a,inner_width_a,delta_prime_a, andconstant_psi_productarrays.figures/fkr_constant_psi_window.png: publication-style regime-window plot.
FKR growth-rate validation outputs¶
mhx benchmark fkr-growth --outdir outputs/benchmarks/fkr_growth_rate writes:
diagnostics.json: asymptotic FKR growth-rate diagnostics with schemamhx.validation.fkr_growth_rate.v1.validation.json: pass/fail gates for the \(S_a^{-3/5}\) slope, \((\Delta'a)^{4/5}\) response, numerical-\(\Delta'\) propagation error, and the constant-\(\psi\) window.fkr_growth_rate.npz: sampledlundquist,gamma_vs_lundquist,ka,numerical_delta_prime_a,gamma_vs_delta_prime, andgamma_relative_errorarrays.figures/fkr_growth_rate.png: growth-rate scaling and error-gate plot.
Harris Delta-prime validation outputs¶
mhx benchmark harris-delta-prime --outdir outputs/benchmarks/harris_delta_prime
writes:
diagnostics.json: numerical Harris outer-region matching diagnostics with schemamhx.validation.harris_delta_prime.v1.validation.json: pass/fail gates for finite positive \(\Delta'a\), monotonicity, and relative error against the analytic Harris formula.harris_delta_prime.npz: sampledka, numerical and analyticdelta_prime_a, and relative-error arrays.figures/harris_delta_prime.png: numerical-vs-analytic matching plot and relative-error gate.
Direct Harris-sheet tearing eigenvalue outputs¶
mhx benchmark linear-tearing-eigenvalue --outdir outputs/benchmarks/linear_tearing_eigenvalue
writes:
diagnostics.json: direct 1D Harris-sheet finite-difference tearing eigenvalue diagnostics with schemamhx.validation.linear_tearing_eigenvalue.v1.validation.json: pass/fail gates for selected growth-rate error, extrapolated growth-rate error, real eigenvalue, eigen-residual, grid convergence, and tearing parity.linear_tearing_eigenvalue.npz: grid counts,dx, finite-grid growth rates, fitted second-order growth rates, extrapolated/reference growth rates, stable-control wavenumber/max-real-part/residual, selected spectrum real/imaginary parts, normalized flux eigenfunction, and normalized imaginary stream-function eigenfunction.figures/linear_tearing_eigenvalue.png: grid extrapolation, selected spectrum, and tearing-parity plot.
Finite-domain tearing dispersion outputs¶
mhx benchmark linear-tearing-dispersion --outdir outputs/benchmarks/linear_tearing_dispersion
writes:
diagnostics.json: finite-domain Harris-sheet tearing dispersion diagnostics with schemamhx.validation.linear_tearing_dispersion.v1.validation.json: pass/fail gates for finite eigenvalues, positive growth in the sampled unstable band, no positive growth in stable controls, residuals, and the \(ka=0.5\) reference point.linear_tearing_dispersion.npz:wavenumber,growth_rate,eigenvalue_imag,residual_norm, reference-point metadata, and boolean masks for unstable samples and stable controls.figures/linear_tearing_dispersion.png: growth branch, oscillatory stable controls, and residual gate.
Harris tearing eigenfunction-layer outputs¶
mhx benchmark linear-tearing-layer --outdir outputs/benchmarks/linear_tearing_layer
writes:
diagnostics.json: FAST Harris eigenfunction-shape diagnostics with schemamhx.validation.linear_tearing_layer.v1.validation.json: pass/fail gates for positive growth, monotonic flow-layer narrowing with \(S\), outer-flux width stability, broad fitted-slope ranges, and dense eigen-residuals.linear_tearing_layer.npz: sampledlundquist,growth_rate,stream_half_width,current_half_width,flux_half_width,residual_norm, fitted slopes, flux-width spread, and normalized reference eigenfunction profiles.figures/linear_tearing_layer.png: growth trend, layer-width trend, reference eigenfunction localization, and residual gate.
Harris tearing time-domain replay outputs¶
mhx benchmark linear-tearing-timedomain --outdir outputs/benchmarks/linear_tearing_timedomain
writes:
diagnostics.json: linear time-domain replay diagnostics with schemamhx.validation.linear_tearing_timedomain.v1.validation.json: pass/fail gates for fitted growth-rate error, RK4 amplitude error against \(\exp(\gamma t)\), final eigenmode alignment, and the selected dense-eigenpair residual.linear_tearing_timedomain.npz:time,amplitude,exact_amplitude,relative_amplitude_error,fitted_growth_rate,expected_growth_rate,relative_growth_error,final_mode_alignment, selected eigenvalue parts, and selected residual.figures/linear_tearing_timedomain.png: semilog amplitude replay, fitted-growth plot, and relative-amplitude-error gate.
Linearized-RHS validation outputs¶
mhx benchmark linearized-rhs --outdir outputs/benchmarks/linearized_rhs
writes:
diagnostics.json: JVP/finite-difference linearized-RHS consistency metrics with schemamhx.validation.linearized_rhs.v1.validation.json: pass/fail gates for relative JVP consistency errors.linearized_rhs.npz: saved JVP and finite-differencepsi/omegaarrays.figures/linearized_rhs_errors.png: relative-error plot with the configured gate.
Reduced-MHD linear eigenmode outputs¶
mhx benchmark reduced-mhd-eigenmode --outdir outputs/benchmarks/reduced_mhd_eigenmode
writes:
diagnostics.json: zero-state linear eigenmode diagnostics with schemamhx.validation.reduced_mhd_linear_eigenmode.v1.validation.json: pass/fail gates for resistive \(\psi\) and viscous \(\omega\) Fourier diffusion eigenvalues and residuals.reduced_mhd_linear_eigenmode.npz: saved eigenfunctions, flattened operator actions, expected eigenvalues, and measured Rayleigh quotients.figures/reduced_mhd_linear_eigenmode_errors.png: eigenvalue/residual error plot.
Cosine-equilibrium linearization outputs¶
mhx benchmark cosine-equilibrium-linearization --outdir outputs/benchmarks/cosine_equilibrium_linearization
writes:
diagnostics.json: analytic nonzero-equilibrium linearized-RHS diagnostics with schemamhx.validation.cosine_equilibrium_linearization.v1.validation.json: pass/fail gates for flow-to-flux and magnetic-tension coupling errors around \(\psi_0=A\cos y\).cosine_equilibrium_linearization.npz: numerical and analytic JVP arrays for the selected flow and flux perturbations.figures/cosine_equilibrium_linearization_errors.png: relative-error plot.
Periodic current-sheet eigenvalue outputs¶
mhx benchmark current-sheet-eigenvalue --outdir outputs/benchmarks/periodic_current_sheet_eigenvalue
writes:
diagnostics.json: tiny dense-spectrum diagnostics with schemamhx.validation.periodic_current_sheet_eigenvalue.v1.validation.json: pass/fail gates for gauge residuals, non-gauge damping, spurious positive growth, and selected dense-eigenpair residual.periodic_current_sheet_eigenvalue.npz: dense operator matrix, eigenvalue real/imaginary parts, selected eigenvector real/imaginary parts, residual, and leading-real-part diagnostics.figures/periodic_current_sheet_spectrum.png: complex spectrum and selected-eigenpair residual plot.
Periodic current-sheet time-domain outputs¶
mhx benchmark current-sheet-timedomain --outdir outputs/benchmarks/periodic_current_sheet_timedomain
writes:
diagnostics.json: RK4 eigenmode replay diagnostics with schemamhx.validation.periodic_current_sheet_timedomain.v1.validation.json: pass/fail gates for spectrum consistency, real decaying mode selection, dense-eigenpair residual, full-state replay error, and fitted decay-rate error.periodic_current_sheet_timedomain.npz: savedtime, numerical and exact amplitudes, relative state errors, selected/fitted decay rates, residuals, and initial/finalpsiandomegafields.figures/periodic_current_sheet_timedomain.png: semilog amplitude replay and relative full-state error against the configured gate.
Nonlinear current-sheet bridge outputs¶
mhx benchmark current-sheet-nonlinear-bridge --outdir outputs/benchmarks/periodic_current_sheet_nonlinear_bridge
writes:
diagnostics.json: nonlinear trajectory-map differentiability diagnostics with schemamhx.validation.periodic_current_sheet_nonlinear_bridge.v1.validation.json: pass/fail gates for finite positive errors, monotonic centered-difference convergence, second-order slope, finest-error tolerance, and nonzero tangent norm.periodic_current_sheet_nonlinear_bridge.npz: savedepsilon,relative_error, fittedconvergence_order, tangent norm, perturbation fields, and final tangent fields.figures/periodic_current_sheet_nonlinear_bridge.png: log-log convergence plot against an \(O(\epsilon^2)\) guide and the configured slope/error gates.
Periodic double-Harris nonlinear-growth outputs¶
mhx benchmark double-harris-growth --outdir outputs/benchmarks/periodic_double_harris_nonlinear_growth
writes:
diagnostics.json: nonlinear growth diagnostics with schemamhx.validation.periodic_double_harris_nonlinear_growth.v1.validation.json: pass/fail gates for a finite dense spectrum/history, positive unstable eigenvalue, small eigen-residual, nonlinear perturbation growth factor, positive fitted growth, and fitted-vs-eigenvalue error.periodic_double_harris_nonlinear_growth.npz: saved dense eigenvalue spectrum, selected eigenvector/eigenvalue, time, perturbation norm, expected frozen-linear norm, fitted growth rate, growth factor, and base/perturbed final fields.figures/periodic_double_harris_nonlinear_growth.png: semilog nonlinear growth history with fitted and frozen-linear references plus initial/final flux panels.
Periodic double-Harris seeded long-run outputs¶
mhx benchmark double-harris-long-run --outdir outputs/benchmarks/periodic_double_harris_seeded_long_run
writes:
diagnostics.json: scalable seeded nonlinear replay diagnostics with schemamhx.validation.periodic_double_harris_seeded_long_run.v1.validation.json: pass/fail gates for finite histories, full-duration completion, sample count, early growth, visible amplification, dominant reconnecting-flux response, Rutherford-width response, and dissipative total-energy behavior.periodic_double_harris_seeded_long_run.npz: saved time, normalized perturbed-minus-base norm, dominant reconnecting-flux proxyreconnected_flux, configured-mode proxyseed_mode_reconnected_flux, Rutherford-width proxyrutherford_island_width, dominant Fourier-mode indices, X/O critical-point counts, magnetic/kinetic/total energy, peak current density, fitted early growth rate, base/perturbed trajectories, and initial states.figures/periodic_double_harris_seeded_long_run.png: early-growth, energy, current-density, reconnection-proxy, flux, and perturbed-minus-base morphology panels.Optional
figures/periodic_double_harris_flux.gifandfigures/periodic_double_harris_current.gifwhen--moviesis supplied.
Periodic double-Harris convergence outputs¶
mhx benchmark double-harris-convergence --outdir outputs/benchmarks/periodic_double_harris_convergence
writes:
diagnostics.json: convergence scaffold diagnostics with schemamhx.validation.periodic_double_harris_convergence.v1, includingresolutions,dt_values, thresholds, per-case metrics, and spread statistics.validation.json: pass/fail gates for finite case metrics, successful subcases, positive early growth, dissipative energy, and bounded resolution/time-step spread in growth rate, maximum amplification, reconnecting-flux amplification, and Rutherford-width amplification.periodic_double_harris_convergence.npz: stable keysschema,case_kind,resolution,dt,samples,fitted_early_growth_rate,early_growth_factor,max_growth_factor,reconnected_flux_amplification,island_width_amplification,relative_energy_increase,max_current_density_linf, andmax_kinetic_energy.figures/periodic_double_harris_convergence.png: resolution/time-stepgamma_fit, nonlinear amplification, energy, and peak-current panels.
Periodic double-Harris parameter-sweep outputs¶
mhx benchmark double-harris-parameter-sweep --outdir outputs/benchmarks/periodic_double_harris_parameter_sweep
writes:
diagnostics.json: parameter-sweep diagnostics with schemamhx.validation.periodic_double_harris_parameter_sweep.v1, includingsweep_axis, case labels, fixed baseline parameters, per-case response metrics, and anomaly-scale spread statistics.validation.json: pass/fail gates for finite case metrics, at least three cases, successful subcase gates, positive early growth, visible nonlinear response, reconnecting-flux amplification, island-width amplification, dissipative energy, and bounded anomaly spreads.periodic_double_harris_parameter_sweep.npz: stable keysschema,sweep_axis,case_index,case_label,mode_x,mode_y,width,resistivity,viscosity,dt,t_end,save_every,samples,passed,fitted_early_growth_rate,early_growth_factor,max_growth_factor,reconnected_flux_amplification,seed_mode_reconnected_flux_amplification,island_width_amplification,relative_energy_increase,max_current_density_linf,max_kinetic_energy,max_x_point_count,max_o_point_count,growth_rate_spread, andmax_growth_spread.figures/periodic_double_harris_parameter_sweep.png: fitted-growth, amplification, energy, current-density, and X/O-count panels.
Periodic double-Harris promotion report¶
mhx benchmark double-harris-promotion-check <run-dir> --convergence-dir <dir>
writes <run-dir>/promotion/ by default:
promotion_readiness.json: schemamhx.validation.periodic_double_harris_promotion.v1; includes the long-run history schema, terminal time, response amplifications, X/O counts, convergence-evidence status, thresholds, and pass/fail checks.validation.json: schemamhx.validation.periodic_double_harris_promotion.gates.v1; this is a promotion-to-validation gate, not a production Rutherford/plasmoid gate.figures/promotion_matrix.png: reviewer-readable matrix of every promotion check.manifest.jsonandartifact_manifest.json: checksummed report metadata.
Nonlinear energy-budget outputs¶
mhx benchmark nonlinear-energy-budget --outdir outputs/benchmarks/nonlinear_energy_budget
writes:
diagnostics.json: nonlinear reduced-MHD budget diagnostics with schemamhx.validation.nonlinear_energy_budget.v1.validation.json: pass/fail gates for finite arrays, nontrivial nonlinear RHS activity, nonincreasing total energy, integrated budget residual, net dissipation, and positive dissipation.nonlinear_energy_budget.npz: savedtime, magnetic/kinetic/total energy, resistive and viscous dissipation channels, cumulative dissipation,budget_residual,relative_budget_residual, nonlinear-RHS ratio, initial fields, and final fields.figures/nonlinear_energy_budget.png: energy-vs-integrated-dissipation, relative budget residual, dissipation channels, and initial/final flux contours.
Nonlinear duration-audit outputs¶
mhx benchmark nonlinear-duration-audit --outdir outputs/benchmarks/nonlinear_duration_audit
writes:
diagnostics.json: runtime-window audit diagnostics with schemamhx.validation.nonlinear_duration_audit.v1.validation.json: pass/fail gates confirming that current FAST nonlinear runs are explicitly flagged as too short for nonlinear island/plasmoid claims and that production target windows are recorded.nonlinear_duration_audit.npz: savedcurrent_case_names,current_end_times,target_names,target_end_times,plasmoid_lundquist,plasmoid_efold_times,harris_growth_rate, andrequested_linear_efolds.figures/nonlinear_duration_audit.png: log-time comparison of current FAST run durations, target nonlinear windows, and plasmoid linear e-fold estimates.
Duration-policy outputs¶
mhx benchmark duration-policy --outdir outputs/benchmarks/duration_policy
writes:
duration_policy.json: schemamhx.duration_policy.v1, current and future duration assessments, growth rates, required e-folds, required final times, observed e-folds,sufficient_for_intended_scope,sufficient_for_production_claim,sufficient_for_nonlinear_claim, and claim-boundary actions.duration_policy.md: reviewer-readable table generated from the same JSON.validation.json: pass/fail gates confirming that current short runs are validation-only and future production templates are long enough for their declared e-fold targets.manifest.json: hashes for all duration-policy artifacts.
Diffusion eigenvalue validation outputs¶
mhx benchmark diffusion-eigenvalue --outdir outputs/benchmarks/diffusion_eigenvalue
writes:
diagnostics.json: Rayleigh-quotient and eigen-residual diagnostics with schemamhx.validation.diffusion_eigenvalue.v1.validation.json: pass/fail gates for eigenvalue and residual errors.diffusion_eigenvalue.npz: saved eigenfunction, operator action, expected eigenvalue, and measured Rayleigh quotient.figures/diffusion_eigenvalue_errors.png: eigenvalue/residual error plot.
Power-iteration validation outputs¶
mhx benchmark power-iteration --outdir outputs/benchmarks/power_iteration
writes:
diagnostics.json: dominant-eigenpair diagnostics with schemamhx.validation.power_iteration.v1.validation.json: pass/fail gates for dominant eigenvalue and residual errors.power_iteration_history.npz: saved iteration index, Rayleigh-quotient history, residual history, and expected dominant eigenvalue.figures/power_iteration_history.png: convergence history plot.
Arnoldi validation outputs¶
mhx benchmark arnoldi --outdir outputs/benchmarks/arnoldi writes:
diagnostics.json: Krylov Ritz-spectrum diagnostics with schemamhx.validation.arnoldi.v1.validation.json: pass/fail gates for fixture Ritz-value, imaginary-part, and residual-estimate errors.arnoldi_spectrum.npz: expected eigenvalues, measured Ritz values, Arnoldi residual estimates, and the projected Hessenberg matrix.figures/arnoldi_ritz_values.png: complex-plane Ritz spectrum and residual estimate plot.
Timing benchmark outputs¶
mhx benchmark timing --outdir outputs/benchmarks/timing writes:
timing.json: schemamhx.benchmark.timing.v1, raw repeat durations, median/min/max summaries, Pythontracemallocpeaks, case details, and environment metadata.timing.md: reviewer-readable Markdown timing table.figures/timing_summary.png: wall-clock and Python-allocation summary plot.manifest.json: schemamhx.manifest.v1, output paths, and SHA-256 hashes.
Absolute timings are machine-dependent. The schema is meant for artifact comparison across commits on the same runner class, not as a universal performance guarantee.
Neural-ODE reproducibility outputs¶
mhx neural-ode dataset --outdir outputs/neural_ode/seed_qi_fast writes a
deterministic no-training bundle for future neural-ODE work:
File |
Schema |
Meaning |
|---|---|---|
|
|
Seed-QI trajectory tensor, target tensor, times, seeds, and feature names. |
|
|
Disjoint train/validation/test seed IDs and split checks. |
|
|
Persistence, linear-prefix, and train-mean MAE/RMSE scores. |
|
|
Empirical 1-sigma and 2-sigma residual coverage. |
|
|
Reviewer-facing experiment contract and future neural-ODE requirements. |
|
|
Gate summary tying seed-QI validation, splits, baselines, and calibration together. |
|
|
Hashes and |
dataset.npz keys are schema, seeds, times, features, targets,
feature_names, target_names, diagnostics_json, and
source_diagnostics_json. The v1 array convention is
features[n_seed, n_time, n_feature] and
targets[n_seed, n_time, n_target].
Benchmark catalog outputs¶
mhx benchmark catalog --outdir outputs/benchmarks/catalog writes:
benchmark_catalog.json: schemamhx.benchmark_catalog.v1, active FAST validation entries, commands, output schemas, expected files, and literature anchors.benchmark_catalog.md: reviewer-readable table generated from the same catalog entries.manifest.json: hashes for the generated catalog files.