Calibration examples (controlled basins) | SWATGenX
This page summarizes the end-to-end workflow: selecting the calibration station, documenting the generated model structure, screening parameters with Morris global sensitivity, then running PSO calibration and independent verification.
Two compact gage watersheds used in the publication workflow evaluation.
Scope and intent
These are calibration examples for two controlled basins. They are meant to show how a generated SWAT+ project moves through initialization, calibration, verification, and sensitivity analysis. They are not intended to claim national predictive skill.
Each model below includes (1) a compact model identity record, (2) interactive figures sourced from the same exported artifacts used in the publication, and (3) a Morris-ranked parameter subset and split-sample metrics table for quick comparison.
Parameter bounds and transformation rules come from the SWATGenX calibration template documented on /calibration-methods. For each basin below, the calibration run uses a Morris-trimmed subset of those candidate parameters.
Florida controlled basin (USGS 02297600)
Calibration station: 02297600 (gage channel 2).
Use the figure controls to compare calibration and validation performance at the same station and to see the Morris screening outcome that selected the calibration subset.
Interactive figures: switch between calibration, validation, and sensitivity outputs. Hydrograph plots include the run-stage metrics on the figure (as in the publication artifacts).

Calibration global best (daily)
- Calibration: compares the pre-optimization initialization pool and the calibrated global best for the scored calibration window.
- Validation: shows the independent holdout window results (no overlap with the scored calibration period).
- Sensitivity: Morris tornado plot used to rank candidate parameters and pick the trimmed calibration subset.
| Field | Value |
|---|---|
| model_id | 0310/huc12/02297600 |
| VPUID / level | 0310 / huc12 |
| Scored calibration window | 2013-01-01 to 2018-12-31 |
| Scored verification window | 2019-01-01 to 2024-12-31 |
| PSO settings (run) | START_YEAR=2010, END_YEAR=2018, nyskip=3, particles=36, iterations=70, concurrent=6 |
Sensitivity analysis (Morris)
Morris screening runs a fixed evaluation budget and reports μ* (magnitude of the elementary effect) and σ (interaction / nonlinearity signal). The table below lists the top drivers by μ*.
| Rank | Parameter | μ* |
|---|---|---|
| 1 | surq_lag | 0.6435 |
| 2 | perco | 0.288 |
| 3 | cn3_swf | 0.1413 |
| 4 | alpha_bf | 0.0921 |
| 5 | dep_wt | 0.0882 |
| 6 | spec_yld | 0.0545 |
| 7 | flo_min | 0.0519 |
| 8 | dp_es | 0.05 |
Sensitive parameters (top 8 by μ*): surq_lag, perco, cn3_swf, alpha_bf, dep_wt, spec_yld, flo_min, dp_es.
Parameters selected for calibration in this example: 8 (the Morris-trimmed subset above). The complete candidate parameter template and bounds are documented on /calibration-methods.
Calibration and verification results
Metrics are reported for daily and monthly time steps (NSE, KGE, and PBIAS). Values below are pulled from the exported run summary tables used in the publication workflow evaluation.
| Stage | Period | Daily NSE | Monthly NSE | Daily KGE | Monthly KGE | PBIAS (%) |
|---|---|---|---|---|---|---|
| Initialization pool best | 2013–2018 | 0.795 | 0.843 | 0.68 | 0.713 | 28.127 |
| Calibration global best | 2013–2018 | 0.837 | 0.897 | 0.816 | 0.886 | 9.791 |
| Verification global best | 2019–2024 | 0.729 | 0.798 | 0.747 | 0.817 | 7.48 |
Illinois controlled basin (USGS 05536265)
Calibration station: 05536265 (gage channel 25).
Use the figure controls to compare calibration and validation performance at the same station and to see the Morris screening outcome that selected the calibration subset.
Interactive figures: switch between calibration, validation, and sensitivity outputs. Hydrograph plots include the run-stage metrics on the figure (as in the publication artifacts).

Calibration global best (daily)
- Calibration: compares the pre-optimization initialization pool and the calibrated global best for the scored calibration window.
- Validation: shows the independent holdout window results (no overlap with the scored calibration period).
- Sensitivity: Morris tornado plot used to rank candidate parameters and pick the trimmed calibration subset.
| Field | Value |
|---|---|
| model_id | 0712/huc12/05536265 |
| VPUID / level | 0712 / huc12 |
| Scored calibration window | 2020-01-01 to 2024-12-31 |
| Scored verification window | 2012-01-01 to 2015-12-31 |
| PSO settings (run) | START_YEAR=2018, END_YEAR=2024, nyskip=2, particles=48, iterations=50, concurrent=6 |
Sensitivity analysis (Morris)
Morris screening runs a fixed evaluation budget and reports μ* (magnitude of the elementary effect) and σ (interaction / nonlinearity signal). The table below lists the top drivers by μ*.
| Rank | Parameter | μ* |
|---|---|---|
| 1 | melt_min | 3.82 |
| 2 | k | 3.6832 |
| 3 | cn3_swf | 3.3198 |
| 4 | perco | 3.1507 |
| 5 | melt_max | 2.9509 |
| 6 | urban_cn_c | 2.8681 |
| 7 | mann | 1.782 |
| 8 | surq_lag | 1.7715 |
Sensitive parameters (top 8 by μ*): melt_min, k, cn3_swf, perco, melt_max, urban_cn_c, mann, surq_lag.
Parameters selected for calibration in this example: 8 (the Morris-trimmed subset above). The complete candidate parameter template and bounds are documented on /calibration-methods.
Calibration and verification results
Metrics are reported for daily and monthly time steps (NSE, KGE, and PBIAS). Values below are pulled from the exported run summary tables used in the publication workflow evaluation.
| Stage | Period | Daily NSE | Monthly NSE | Daily KGE | Monthly KGE | PBIAS (%) |
|---|---|---|---|---|---|---|
| Initialization pool best | 2020–2024 | 0.202 | 0.405 | 0.605 | 0.61 | 2.856 |
| Calibration global best | 2020–2024 | 0.371 | 0.6 | 0.548 | 0.792 | -7.201 |
| Verification global best | 2012–2015 | 0.223 | 0.416 | 0.442 | 0.659 | -21.581 |
Notes
- Calibration objective: minimize the negative sum of daily NSE and monthly NSE at the gaged channel (see calibration methods).
- 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 UI will show runtime/cost estimates before execution.