Calibration Twin: Recharge-Step K+Sy 1D#

Note

This page and its static assets are auto-generated by python -m tools.doc_gallery. The Sphinx build only reads committed PNG and JSON artifacts.

Same-solver twin benchmark on linearized_unconfined_recharge_step_1d with K+Sy and multiobservable head/flux blocks.

  • success_metric=best_fit

  • meets_target=False

  • truth_recovered=False

  • cost=0.529874

  • n_eval=16

  • calibration=24.95 s

  • candidate runtime=24.53 s

  • algorithm overhead=0.419 s

  • actualize=0 s

  • launcher prep=0 s

  • runtime patch=0 s

  • simulate=1.533 s

  • output select=0 s

  • objective score=0 s

  • success_metric=best_fit_or_distribution

  • meets_target=True

  • truth_recovered=True

  • cost=0.206196

  • n_eval=40

  • calibration=68.87 s

  • candidate runtime=67.64 s

  • algorithm overhead=1.228 s

  • actualize=0 s

  • launcher prep=0 s

  • runtime patch=0 s

  • simulate=1.691 s

  • output select=0 s

  • objective score=0 s

  • success_metric=best_fit

  • meets_target=True

  • truth_recovered=True

  • cost=0.214878

  • n_eval=40

  • calibration=107.8 s

  • candidate runtime=105.7 s

  • algorithm overhead=2.05 s

  • actualize=0 s

  • launcher prep=0 s

  • runtime patch=0 s

  • simulate=2.644 s

  • output select=0 s

  • objective score=0 s

  • success_metric=best_fit

  • meets_target=True

  • truth_recovered=True

  • cost=0.219763

  • n_eval=12

  • calibration=35.57 s

  • candidate runtime=35.03 s

  • algorithm overhead=0.5338 s

  • actualize=0 s

  • launcher prep=0 s

  • runtime patch=0 s

  • simulate=2.92 s

  • output select=0 s

  • objective score=0 s

  • success_metric=best_fit_or_distribution

  • meets_target=False

  • truth_recovered=False

  • cost=0.569137

  • n_eval=16

  • calibration=32.19 s

  • candidate runtime=24.77 s

  • algorithm overhead=7.423 s

  • actualize=0 s

  • launcher prep=0 s

  • runtime patch=0 s

  • simulate=1.548 s

  • output select=0 s

  • objective score=0 s

  • success_metric=best_fit_or_distribution

  • meets_target=False

  • truth_recovered=False

  • cost=2.22364

  • n_eval=10

  • posterior_samples=10

  • calibration=15.55 s

  • candidate runtime=15.22 s

  • algorithm overhead=0.3297 s

  • actualize=0 s

  • launcher prep=0 s

  • runtime patch=0 s

  • simulate=1.522 s

  • output select=0 s

  • objective score=0 s

Case Setup#

  • Solver: modflow6 in transient regime.

  • Benchmark family: No-Uncertainty, Data-Rich Benchmarks.

  • Truth parameters: K_global, Sy_global.

  • Observed outputs: head_mid, q_east.

  • Benchmarked methods: random_search, optuna, cma_es, scipy_nelder_mead, gp_mapping, da_mh_gp.

  • Initial bounds widened to: K_global=[5e-05, 0.0003], Sy_global=[0.04, 0.18].

What It Shows#

  • A same-solver twin experiment where synthetic observations are generated first, then recovered through calibration on the same physics stack.

  • A case-level configuration figure, an objective trace, and an objective landscape or pairwise projection for the selected display method.

  • Per-method timing diagnostics with total calibration time plus average per-model preparation, simulation, and objective-evaluation costs.

How To Read It#

  • Open case_configuration.png first to understand the parameter block, outputs, and weighting before reading the optimization figures.

  • Use objective_trace to judge convergence speed and objective_landscape to see where the evaluated candidates concentrate relative to the truth and the selected solution(s).

  • Read timing metrics as benchmark diagnostics, not as universal solver performance numbers: they depend on the chosen method, case size, and evaluation budget.

Key Metrics#

  • Methods: 5

  • Display method: gp_mapping

  • Calibration total: 74.27 s

  • Session prep: 78.49 s

  • Candidate runtime: 68.21 s

  • Algorithm overhead: 6.054 s

  • Model total: 4.263 s

  • Actualize: 0.2249 s

  • Launcher prep: 0.2249 s

  • Runtime patch: 0 s

  • Model prep: 0.2249 s

  • Model sim: 4.038 s

  • Output select: 0 s

  • Objective score: 0 s

Next Steps#

  • Compare this case with the other calibration gallery pages to see how deterministic and distribution-valued methods behave under different inverse problems.

  • Use the full benchmark suite in validation_cases/calibration when you need multi-seed comparisons or noisy variants beyond the curated gallery subset.

Reproduce#

Run the underlying example or validation case with:

python -m validation_cases.calibration.twin.transient.linearized_unconfined_recharge_step_1d.run_case

Refresh the committed gallery artifacts with:

python -m tools.doc_gallery

Case Parameters#

Benchmark Setup#

Field

Meaning

Value

Source

solver_name

Solver family used both to generate synthetic observations and to calibrate candidates.

modflow6

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

regime

Flow regime exercised by the inverse benchmark.

transient

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

output_names

Observables extracted from each candidate simulation and used in the composite objective.

head_mid, q_east

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

observation_noise

Synthetic noise injected after the truth run, if any.

none

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

Calibrated Parameters#

Field

Meaning

Value

Source

K_global

Truth value, initial search interval, and acceptance tolerance for this calibrated parameter.

truth=0.0001, bounds=5e-05, 0.0003, tolerance=1.5e-05

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

Sy_global

Truth value, initial search interval, and acceptance tolerance for this calibrated parameter.

truth=0.1, bounds=0.04, 0.18, tolerance=0.04

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

Methods And Timing#

Field

Meaning

Value

Source

random_search

Method result summary including target status, evaluation count, total time, and mean per-model actualize / launcher / simulation / objective timings.

meets_target=false, cost=0.529874, n_eval=16, calib_s=50.3573, candidate_runtime_s=50.2016, algorithm_overhead_s=0.155745, actualize_s=0.231356, launcher_prep_s=0.231356, runtime_patch_s=0, model_sim_s=2.90624, output_select_s=0, objective_score_s=0

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

cma_es

Method result summary including target status, evaluation count, total time, and mean per-model actualize / launcher / simulation / objective timings.

meets_target=true, cost=0.214878, n_eval=40, calib_s=134.22, candidate_runtime_s=133.715, algorithm_overhead_s=0.504982, actualize_s=0.233398, launcher_prep_s=0.233398, runtime_patch_s=0, model_sim_s=3.10947, output_select_s=0, objective_score_s=0

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

simplex

Method result summary including target status, evaluation count, total time, and mean per-model actualize / launcher / simulation / objective timings.

meets_target=true, cost=0.219763, n_eval=12, calib_s=106.26, candidate_runtime_s=106.094, algorithm_overhead_s=0.166063, actualize_s=0.343487, launcher_prep_s=0.343487, runtime_patch_s=0, model_sim_s=8.49768, output_select_s=0, objective_score_s=0

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

gp_mapping

Method result summary including target status, evaluation count, total time, and mean per-model actualize / launcher / simulation / objective timings.

meets_target=true, cost=0.320649, n_eval=16, calib_s=74.2689, candidate_runtime_s=68.2146, algorithm_overhead_s=6.05423, actualize_s=0.224947, launcher_prep_s=0.224947, runtime_patch_s=0, model_sim_s=4.03847, output_select_s=0, objective_score_s=0

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

da_mh_gp

Method result summary including target status, evaluation count, total time, and mean per-model actualize / launcher / simulation / objective timings.

meets_target=true, cost=2.22364, n_eval=72, posterior_samples=72, calib_s=310.144, candidate_runtime_s=300.871, algorithm_overhead_s=9.2731, actualize_s=0.296197, launcher_prep_s=0.296197, runtime_patch_s=0, model_sim_s=3.88257, output_select_s=0, objective_score_s=0

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

Displayed Metrics#

Field

Meaning

Value

Source

method_count

Metric surfaced on the gallery page for the selected display method.

5

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

display_method_name

Metric surfaced on the gallery page for the selected display method.

gp_mapping

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

calibration_time_seconds

Metric surfaced on the gallery page for the selected display method.

74.27 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

session_prepare_time_seconds

Metric surfaced on the gallery page for the selected display method.

78.49 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

estimated_candidate_runtime_seconds

Metric surfaced on the gallery page for the selected display method.

68.21 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

algorithm_overhead_time_seconds

Metric surfaced on the gallery page for the selected display method.

6.054 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_total_time_seconds

Metric surfaced on the gallery page for the selected display method.

4.263 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_actualize_time_seconds

Metric surfaced on the gallery page for the selected display method.

0.2249 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_launcher_prepare_time_seconds

Metric surfaced on the gallery page for the selected display method.

0.2249 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_runtime_patch_time_seconds

Metric surfaced on the gallery page for the selected display method.

0 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_preparation_time_seconds

Metric surfaced on the gallery page for the selected display method.

0.2249 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_simulation_time_seconds

Metric surfaced on the gallery page for the selected display method.

4.038 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_output_selection_time_seconds

Metric surfaced on the gallery page for the selected display method.

0 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

mean_candidate_objective_compute_time_seconds

Metric surfaced on the gallery page for the selected display method.

0 s

docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json

Source Pointers#

  • validation_cases/calibration/README.md

  • validation_cases/calibration/run_benchmarks.py

  • validation_cases/calibration/plotting.py

  • validation_cases/calibration/shared/definitions.py

  • validation_cases/calibration/shared/runtime.py

  • validation_cases/calibration/twin/transient/linearized_unconfined_recharge_step_1d/run_case.py

  • validation_cases/calibration/twin/transient/linearized_unconfined_recharge_step_1d/experiment.py

  • hydromodpy/calibration/cli.py

  • hydromodpy/calibration/engine.py

Artifacts#

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__configuration.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__random_search_landscape.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__random_search_trace.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__cma_es_landscape.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__cma_es_trace.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__simplex_landscape.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__simplex_trace.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__gp_mapping_landscape.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__gp_mapping_trace.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__da_mh_gp_landscape.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__da_mh_gp_trace.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6__da_mh_gp_posterior.png

  • docs/readthedocs/source/_static/capability_gallery/calibration/calibration_twin_linearized_recharge_step_modflow6_summary.json stores the displayed metrics plus source hashes used by python -m tools.doc_gallery --check.