SWATGenXSWATGenX
Watershed ExplorerPricing
ServicesWatershed ExplorerExample modelsCloud calibrationDocsPricing

The SWAT+ input and output data model

The input and output files of a SWATGenX-built SWAT+ model, drawn as one table per file. Each row is one column of the file, with its type and units from the engine's source, its meaning from the source's own comments, and a line wherever a column points into another file. That is 72 input files and 5 climate data examples, 865 input columns (64 of them pointers), and 17 output files with 576 columns.

  • simulation
  • basin
  • climate
  • connect
  • channel
  • reservoir
  • routing_unit
  • hru
  • aquifer
  • hydrology
  • structural
  • hru_parm_db
  • ops
  • lum
  • chg
  • init
  • soils
  • decision_table
  • regions
  • outputs
Loading the interactive view…

Files

Tap a file to see its columns.

How to read it

Each box is a file, and the colored band at its side marks its section of file.cio, the file that lists all the others. A row is one column, in the file's own order: its name, its Fortran type, its units where the source states them, and its description from the declaration's comment. A dash means the source carries no comment for that column. A row marked 'not read' is a column the engine skips, 'not written' is a header name the engine writes no value for, and 'unmapped' is a column we could not assign to a source variable with confidence. A line from a column to another box means the engine looks that value up in that file.

How it was made

We read one current SWATGenX model (HUC12 031002060700, built by our own account, with no customer data) against the SWAT+ source at the revision that model ran on, ship/v1.0-50-deployed (9482c07864). Every name, type, unit and link comes from the files and the source. A check then reads every input column name back out of the poster and compares it with the real files; on this build it finds 0 mismatches. The output tables take their column names from the files' headers, and their types and descriptions from the engine's write statements.

What SWATGenX changes in these files is in the docs: What SWATGenX changes in SWAT+ input files.

Downloads

Download the poster (PDF, 60 × 36 in) · Preview image (PNG)

On the poster, 17 descriptions are shortened to fit; the interactive view and the CSV carry them in full.

Credit and licence

SWAT+ (Soil and Water Assessment Tool Plus) is open-source software by Jeffrey G. Arnold, Natalja Čerkasova, Michael J. White, Ryan Bailey, Kelly Thorp, Jaehak Jeong, Xuesong Zhang, Taci Ugraskan, Ann van Griensven, Hendrik Rathjens, Cibin Raj, Ximing Cai, William F. Geter, Olaf David, Jack R. Carlson and Kieu N. Le, as its citation file lists them, at institutions including the USDA Agricultural Research Service, Texas A&M AgriLife Research and Colorado State University. It is released under the GNU Lesser General Public License v2.1 (github.com/swat-model/swatplus). This data model is drawn from the SWAT+ source as SWATGenX runs it: our fork, github.com/rafiei-vahid/swatplus, revision ship/v1.0-50-deployed (9482c07864). The descriptions are the source code's own comments, reproduced under that licence. This is not an official SWAT+ document. To cite SWAT+, use its citation file (doi:10.5281/zenodo.14983534).