hydromodpy.calibration.config#

Pydantic model for the [calibration] TOML section.

Minimal TOML:

[calibration]
method       = "grid"
max_iter     = 200
save_runs    = "best_n"
save_best_n  = 10
seed         = 42

[calibration.parameters]
K_aquifer  = { bounds = [1e-6, 1e-3], transform = "log" }
Sy_main    = { bounds = [0.02, 0.30] }
drain_cond = { bounds = [1e-4, 1e-1], transform = "log" }

Enriched TOML (twin-benchmark style):

[calibration]
method = "cma_es"
max_iter = 80
seed = 42

[calibration.parameters.K_aquifer]
bounds = [1e-6, 1e-3]
target = "flow.param.K.field.value"
mode = "replace"

[calibration.outputs.head_A]
variable = "head"
support = "point"
x = 100.0
y = 0.0
observed_values = [42.1, 41.8, 41.5]

[[calibration.objective_blocks]]
name = "head_block"
metric = "rmse"
weight = 1.0
uses_outputs = ["head_A"]

Module attributes

CalibOutputDecl

Discriminated union of calibration output schemas keyed by support.

Functions

validate_calib_output(payload)

Validate one output mapping and return the concrete variant instance.