SWATGenXSWATGenX
Watershed ExplorerExample modelsCloud calibrationDocsAccess

SWATGenX · calibration results

43 basins calibrated, coast to coast

Validated on held-out years — validation tracks calibration (median ΔNSE −0.04).

CONUS calibration fleet43 basins · 27 tested on unseen years
USGS 01115185: calibration only (no held-out split)USGS 01567500: calibration only (no held-out split)USGS 02269520: calibration only (no held-out split)USGS 02271500: calibration only (no held-out split)USGS 02295520: calibration only (no held-out split)USGS 02295580: calibration only (no held-out split)USGS 02298123: calibration only (no held-out split)USGS 02301738: calibration only (no held-out split)USGS 03262001: calibration only (no held-out split)USGS 04124500: calibration only (no held-out split)USGS 04288295: calibration only (no held-out split)USGS 10348850: calibration only (no held-out split)USGS 12096865: calibration only (no held-out split)USGS 01073587: validation monthly NSE 0.73USGS 01443900: validation monthly NSE 0.16USGS 01451800: validation monthly NSE 0.92USGS 02197598: validation monthly NSE -1.21USGS 02231396: validation monthly NSE 0.46USGS 02234990: validation monthly NSE 0.65USGS 02239501: validation monthly NSE -19.81USGS 02270000: validation monthly NSE 0.17USGS 02294217: validation monthly NSE 0.01USGS 02294290: validation monthly NSE 0.06USGS 02294405: validation monthly NSE 0.15USGS 02294760: validation monthly NSE 0.64USGS 02295013: validation monthly NSE 0.26USGS 02297310: validation monthly NSE 0.58USGS 02297600: validation monthly NSE 0.49USGS 03151400: validation monthly NSE 0.69USGS 03152000: validation monthly NSE 0.68USGS 04087257: validation monthly NSE 0.35USGS 04118500: validation monthly NSE 0.24USGS 05536265: validation monthly NSE 0.47USGS 07375300: validation monthly NSE 0.85USGS 08380400: validation monthly NSE -1.03USGS 09312500: validation monthly NSE -11.33USGS 09484580: validation monthly NSE -0.63USGS 11481200: validation monthly NSE 0.79USGS 14015000: validation monthly NSE -2.28USGS 14161500: validation monthly NSE 0.92
Holds up on unseen yearsWeaker on unseen yearsCalibration only
1

Fleet distribution

Each point is one engineer-calibrated basin with a held-out validation split. The dashed line is 1:1; the dashed crosshairs mark Moriasi monthly NSE = 0.5. The cloud shows how validation tracks calibration across the fleet.

Source: calibrationFleetSummary.json fleet_summary.py / fleet_summary.json. Paired median ΔNSE -0.039 (display -0.04).

2

High-skill exemplars

Four basins where monthly calibration and validation skill both land in the high range. Display values are rounded; exact scores are in the fleet JSON.

3

Regional MMPSO basins

Three west-central Florida basins finished the same information-cascade path — pooled prior → diagnosis → short regional MMPSO — documented in the calibration methods write-up.

Peace River (57,998 HRUs)

Complete

Terminal calibration stage COMPLETE — regional MMPSO, converged at iteration 8.

Fleet calibration flagship: regionalized MMPSO seeded from the pooled prior, converged at iteration 8.

FieldValue
Target model57,998-HRU Peace River basin model (HUC8 03100101, NHDPlus HR region 0310)
Gauge roster38 evaluated → 11 structural exclusions (drainage-area mismatch, lake-outlet orphaning, regulated canals); the terminal objective couples the retained gauges as per-gauge sub-objectives — 21 returned computable NSE over the scored window
Regionalizationcn3_swf, perco, esco, epco expanded over 9 tributary regions — 73 optimizer dimensions (insensitive + basin-uniform parameters stay global)
OptimizerMMPSO with per-gauge sub-objectives (by-gauge grouping); pooled-prior vector injected as a protected initial particle
Objective hardeningPer-gauge NSE floor at −1 inside the optimizer sum (reported metrics unclipped) — pathological reaches are protected in-objective and reported honestly, not hand-excluded
ConvergenceGlobal best reached at iteration 8 and held byte-identical through iteration 23 (spot instance reclaimed) — 15 iterations of zero improvement; ~100 model evaluations at 12 particles

The search converged fast: the global-best objective (−19.25 in penalized units) was reached at iteration 8 and held unchanged for the remaining 15 iterations until the AWS spot instance was reclaimed — convergence, not a truncated run. A good pooled prior plus a fixed search space places the satisficing target within ~8 iterations, at roughly 100 model evaluations against the several hundred a from-scratch campaign would spend.

Per-gauge skill (2016–2022 calibration window (daily and monthly Moriasi NSE))

ChannelGroupDaily NSEMonthly NSE
427Mainstem / Charlie core0.790.88
422Mainstem / Charlie core0.780.86
439Mainstem / Charlie core0.780.87
332Mainstem / Charlie core0.770.92
399Mainstem / Charlie core0.770.86
2718Mainstem / Charlie core0.680.77
269Mainstem / Charlie core0.640.91
451Mainstem / Charlie core0.630.76
220Interior tributary0.390.80
650Interior tributary0.240.47
968Lower-basin (floor-protected)0.190.12
603Lower-basin, regulated (floor-protected)0.12−0.27
933Tidal reach (floor-protected)−0.27−0.49
947Tidal — daily degenerate, monthly recovers (floor-protected)−2.360.53

Regionalization is visible in the solution: percolation (perco) ranges from 1.98 in Horse Creek to 2.83 in Shell Creek across tributary groups (Prairie 2.79, Charlie 2.70, Peace mainstem 2.52, other 2.63) — spatially-varying calibrated parameters a single global scalar could not produce, reconciling the opposite per-tributary biases.

Tampa Bay (77,636 HRUs)

Complete

Terminal calibration stage COMPLETE — regional MMPSO, converged at iteration 6.

Cross-basin case: pooled prior carried no Tampa Bay information; terminal search converged at iteration 6.

FieldValue
Target model77,636-HRU Tampa Bay integrated model (70 HUC12s, HUC12-outlet 031002060700, region 0310) — a separate drainage feeding a nitrogen-limited estuary
Gauge roster32 gauges retained after coverage + drainage-area vetting; 27 returned computable NSE over the scored window
Regionalizationrunoff-controlling parameters (cn3_swf, perco, esco, epco) distributed by tributary sub-watershed; snow / storage / channel / baseflow stay global
OptimizerMMPSO with per-gauge NSE sub-objectives (floor −1); pooled-prior vector (built entirely from the Peace-area pool, no Tampa Bay information) injected as a protected initial particle
ConvergenceGlobal best (−15.48 in penalized units) reached at iteration 6 and held byte-identical through the final synchronized iteration — a converged plateau, not a truncated run

The well-gauged core is Satisfactory-to-Very-Good on the reaches that carry the basin (core daily NSE 0.52–0.70, monthly 0.62–0.85, with several interior gauges reaching monthly NSE 0.80–0.85). A cluster of seven small urban canals stays weak — their monthly PBIAS pins at roughly −100% (near-zero measured baseflow the coarse 500 m routing cannot reproduce) — and the per-gauge floor is why they neither dominated the search nor were quietly dropped. The same cascade, the same honesty rail: seeded from the pooled prior, converged in six iterations on a 77.6k-HRU model, weak tail reported at face value.

Per-gauge skill (2016–2022 calibration window (daily and monthly Moriasi NSE))

ChannelGroupDaily NSEMonthly NSE
817Well-gauged core0.700.85
1106Well-gauged core0.610.74
837Well-gauged core0.600.68
1671Well-gauged core0.550.62
1979Well-gauged core0.540.85
2184Well-gauged core0.530.66
844Well-gauged core0.520.64
1868Interior (strong monthly)0.420.82
1013Interior (strong monthly)0.420.80
1495Interior (strong monthly)0.350.82
1265Small urban canal (floor-protected)−0.19−0.78
1689Small urban canal (floor-protected)−0.28−0.71
1267Small urban canal (floor-protected)−0.29−0.42

Myakka River (29,069 HRUs)

Complete

Terminal calibration stage COMPLETE — regional MMPSO, converged at iteration 5.

Flat wet-prairie / flatwoods basin; coverage-vetted roster; converged at iteration 5.

FieldValue
Target model29,069-HRU Myakka River model (HUC8 03100102, region 0310) — a flat wet-prairie / flatwoods basin draining to phosphorus-driven Charlotte Harbor
Gauge roster11-gauge coverage-vetted roster — the corrected roster after a −99 sentinel value was discovered and scrubbed; 10 returned computable NSE
Regionalizationrunoff-controlling parameters distributed by tributary sub-watershed, insensitive + basin-uniform parameters global (same dispatch as Peace / Tampa Bay)
OptimizerMMPSO with per-gauge NSE sub-objectives (floor −1); pooled-prior vector injected as a protected initial particle
ConvergenceGlobal best (−7.03 in penalized units) reached at iteration 5 and held byte-identical through the final synchronized iteration

Myakka is the flattest, most diffuse basin in the fleet, and its daily skill is inherently lower — but the whole coverage-vetted roster stays positive at both time scales. The core mainstem/wet-prairie gauges reach monthly NSE 0.56–0.65 (gauges 3592, 148, 191, 297), with daily NSE a modest 0.17–0.40 reflecting the flatwoods hydrology. No pathological floored tail: a fully-positive but honestly modest result from the same pooled-prior seed and the same short terminal search.

Per-gauge skill (2016–2022 calibration window (daily and monthly Moriasi NSE))

ChannelGroupDaily NSEMonthly NSE
3592Mainstem core0.400.56
148Mainstem core0.330.64
191Mainstem core0.310.65
297Interior tributary0.210.64
676Interior tributary0.250.51
490Interior tributary0.250.42
220Interior tributary0.230.31
506Interior tributary0.180.46
950Flatwoods / low-yield0.170.21
433Flatwoods / low-yield0.090.19

Cost context for this class of run: about $14 AWS compute for a full regional calibration of a ~57k-HRU model — see AWS calibration page. Fleet home: Florida nonpoint-source page.

4

Transferable priors

Why the 44th calibration is cheaper than the 1st

A parameter distribution pooled from previously calibrated Peace-area models was applied to the 77.6k-HRU Tampa Bay catalog model in one simulation, with no optimizer. That zero-shot transfer is why later basins start closer to a usable solution — the 44th calibration inherits what the first forty-three already learned.

Improved17 / 32Median mNSE0.05 → 0.50

Largest |Δ monthly NSE| among well-assigned gauges (top 12). Green = improvement, amber = decline. Source: tampaPooledPriorDeltaNse.json. Roster move: Satisfactory+ 19→25, Very Good 4→11; correctly-assigned median monthly NSE 0.05→0.50.

Gauge setSatisfactory+Good+Very goodMedian monthly NSE
All 58 evaluated gauges19 → 259 → 174 → 11−0.11 → +0.26
Correctly-assigned subset (n=32, DA ratio 0.7–1.4)11 → 167 → 124 → 80.05 → 0.50
5

Manuscripts

Calibration methods write-up: calibration methods.

6

Appendix — Florida & Illinois worked examples

Compact single-gauge appendices: initialization → calibration → verification metrics, Morris screening, and web hydrographs. Florida reaches strong split-sample skill; Illinois is the harder snowmelt/baseflow case shown unedited.

Florida controlled basin (USGS 02297600)

Calibration station: 02297600 (gage channel 2).

Interactive figures: hydrographs and Morris tornado are web-rendered from committed JSON (same source as the metric chips / table).

NSE0.762KGE0.561PBIAS42.90%

Calibration global best (daily)

FieldValue
Calibration stationUSGS streamgage 02297600 (NHDPlus HR region 0310)
Scored calibration window2013-01-01 to 2018-12-31
Independent verification window2019-01-01 to 2024-12-31
Simulation & optimizerSimulated 20102018 with a 3-year warm-up; particle-swarm optimization with 36 particles over 70 iterations, 6 run concurrently.

Sensitivity analysis (Morris)

RankParameterμ* (mean effect)σ (interaction)
1surq_lag0.64350.4685
2perco0.2880.4113
3cn3_swf0.14130.1699
4alpha_bf0.09210.0987
5dep_wt0.08820.1565
6spec_yld0.05450.0945
7flo_min0.05190.0774
8dp_es0.050.0282

Calibration and verification results

StagePeriodDaily NSEMonthly NSEDaily KGEMonthly KGEPBIAS (%)
Initialization pool best2013–20180.1970.2660.0880.2146.746
Calibration global best2013–20180.7620.7460.5610.54642.9
Verification global best2019–20240.690.730.6790.72522.87

Illinois controlled basin (USGS 05536265)

Calibration station: 05536265 (gage channel 25).

Interactive figures: hydrographs and Morris tornado are web-rendered from committed JSON (same source as the metric chips / table).

NSE0.105KGE0.445PBIAS36.46%

Calibration global best (daily)

FieldValue
Calibration stationUSGS streamgage 05536265 (NHDPlus HR region 0712)
Scored calibration window2020-01-01 to 2024-12-31
Independent verification window2012-01-01 to 2015-12-31
Simulation & optimizerSimulated 20182024 with a 2-year warm-up; particle-swarm optimization with 48 particles over 50 iterations, 6 run concurrently.

Sensitivity analysis (Morris)

RankParameterμ* (mean effect)σ (interaction)
1melt_min3.829.8425
2k3.68323.7334
3cn3_swf3.31982.0242
4perco3.15074.9258
5melt_max2.95099.8071
6urban_cn_c2.86812.9149
7mann1.7821.3773
8surq_lag1.77152.685

Calibration and verification results

StagePeriodDaily NSEMonthly NSEDaily KGEMonthly KGEPBIAS (%)
Initialization pool best2020–2024-0.581-1.2880.248-0.08342.488
Calibration global best2020–20240.105-0.1390.4450.36936.459
Verification global best2012–20150.2330.4270.420.647-18.841
7

Notes

  • Fleet metrics come from the published engineer-run digest (paired calibration vs held-out validation).
  • Verification uses an independent window with no overlap with the scored calibration period (split-sample).
  • If you order a calibration run on your own model, the wizard shows runtime/cost estimates before launch.