API Reference
High-level map of the permeabledt public API. Detailed pages for each module
are linked throughout.
Core Water Flow – Simulation entry points and utilities.
Calibration – Genetic-algorithm calibration helpers.
Particle Filtering – pypfilt model and observation adapters.
Weather Data – HRRR accumulated-precipitation tools.
Plotting – Optional matplotlib helpers.
Quick reference
Core water-flow helpers (permeabledt top-level)
Function |
Description |
|---|---|
|
Read a rainfall |
|
Lower-level driver that returns raw lists for each series. |
|
Legacy wrapper compatible with the historical folder layout. |
|
Load an INI file with |
|
Build the parameter dictionary expected by the solver. |
|
Apply calibration overrides to a parameter dictionary. |
|
Convert the dictionary from |
|
Summarise volumes and peaks from a simulation. |
Calibration (permeabledt top-level)
Function |
Description |
|---|---|
|
Run the DEAP-based GA using parallel rainfall/observation file lists. |
|
Thin wrapper around the legacy |
Particle filtering (permeabledt.particle_filter)
Class |
Description |
|---|---|
|
|
|
Observation model that provides a normal likelihood for pipe flow. |
Weather data (permeabledt.download_HRRR_historical_forecast)
Class |
Description |
|---|---|
|
Download, save, and compare HRRR accumulated precipitation. |
Plotting (permeabledt.plots – optional)
Function |
Description |
|---|---|
|
Plot rainfall bars and simulated outflow. |
|
Compare modeled vs observed outflow for multiple events. |
|
Summarise calibration metrics. |
Typical import pattern
import permeabledt as pdt
setup = pdt.read_setup_file("configs/tc_pf_example.ini")
params = pdt.initialize_parameters(setup)
data, wb = pdt.run_simulation(
params,
"data/rainfall_event.dat",
rainfall_unit="mm",
verbose=False,
)
Optional features (calibration, particle filtering, weather downloads, plotting)
are imported lazily. Attempting to use them without the corresponding extras
raises RuntimeError with installation guidance, e.g.:
try:
best, calibrated_setup, logbook = pdt.run_calibration(rain_events, observed, setup_file)
except RuntimeError:
print("Install with: pip install 'permeabledt[calib]'")
Refer to the module-specific pages linked above for full parameter tables and usage notes.