iwfm.diagnosticsΒΆ

Process IWFM Simulation diagnostic output files.

Reads IWFM HDF5 diagnostic output (convergence, residuals, element mass balance, stream flows) and PEST state, assembles them into a diagnostic bundle, and supports an LLM-supervised outer calibration loop.

Modules

assemble_bundle(diagnostics_dir[, ...])

Assemble a complete DiagnosticBundle from HDF5 files and PEST state.

build_tied_groups(node_coords, ...)

Assign each non-representative node to its nearest representative.

detect_convergence_trouble(convergence[, ...])

Extract trouble timesteps from ConvergenceSummary.

detect_mass_balance_hotspots(mb_summary[, ...])

Identify elements with residuals far above the layer mean.

detect_params_at_bounds(pest_state[, ...])

Identify parameters within a percentage of their bounds.

detect_residual_clusters(residual_summary[, ...])

Identify nodes with persistently high residuals.

detect_stream_gw_anomalies(stream_summary[, ...])

Extract anomalous stream nodes from StreamSummary.

diag_dataclasses

Dataclass definitions for IWFM diagnostic bundle.

iteration_callback(pest_dir[, iteration, ...])

Post-iteration callback for LLM-supervised PEST.

llm_supervisor

LLM Supervisor for IWFM/PEST calibration.

parse_model_geometry

Read IWFM model geometry files for node/element coordinates.

read_convergence_hdf(hdf_path[, ...])

Read Diagnostics_Convergence.hdf and compute summary statistics.

read_elemmb_hdf(hdf_path, n_elements, n_layers)

Read Diagnostics_ElemMB.hdf and compute summary statistics.

read_pest_sensitivity(sen_file[, iteration, ...])

Parse PEST .sen file and return parameter sensitivities.

read_pest_state([res_file, rec_file, ...])

Read PEST iteration state and return PestStateSummary.

read_residual_hdf(hdf_path, n_gw_nodes, n_layers)

Read Diagnostics_Residual.hdf using chunked access.

read_stream_hdf(hdf_path[, ...])

Read Diagnostics_Stream.hdf and compute summary statistics.

select_parameters(node_coords, n_reps[, ...])

Select representative nodes for PEST parameter estimation.

serialize_bundle(bundle[, output_path, ...])

Convert DiagnosticBundle to compact JSON string.

setup_pest_run(reference_dir, output_dir[, ...])

Create a clean PEST run folder from a reference run directory.

stability_jacobian

Lightweight diagnostic capture during PEST Jacobian perturbation runs.

suggest_parameter_changes(bundle, ...[, ...])

Generate parameter selection recommendations from diagnostic data.

write_pest_control(template_pst, output_pst, ...)

Write a new .pst file applying parameter selection recommendations.