Hi all,
We have been experimenting with the subdaily routines in SWAT+. Note that the subdaily routines (as far as I know) are still work-in-progress, and cannot yet (code version 61.0.5) produce meaningful subdaily discharge outputs. But in case you would like to experiment with this yourself, here is a quick overview of how to configure and run a subdaily SWAT+ simulation with the most recent code version.
Configuration:• time.sim: specify the number of time steps per day (for the parameter “step” in time.sim input file). For hourly steps, this value must therefore be set to 24.
• codes.bsn: set i_fpwet to 2 (and gampt = 1) in codes.bsn input file. Note that (in code version 61.0.5, bitbucket 28 May 2024):
- i_fpwet = 0 means new sediment and nutrient routing (no QUAL2E – simplified nutrients).
- i_fpwet = 1 means daily routing with QUAL2E.
- i_fpwet = 2 means subdaily routing – with QUAL2E.
Formatting subdaily precipitation input file(s):From the source code, you can see how to format the subdaily precipitation input files in cli_pmeas.f90 (see attached file with code snip).
Specifically, you should format the pcp file(s) as in attached illustration (subdaily_pcp_file_example.png) (with example of subdaily hourly pcp file on the left, and normal daily pcp file on the right). Here, the first line (in a *.pcp input file) is a comment line (not read by SWAT+), the second and third lines defines and assigns values for nbyr (number of years included in the input file), tstep (number of subdaily time intervals per day, i.e. 24 for hourly intervals), lat (latitude in decimal degrees), lon (longitude in decimal degrees), elev (elevation at the location of the precipitation station – may optionally be used to correct precipitation inputs based on a lapse rate). The subsequent rows represent the subdaily data, where the columns are tab or space delimited, and separated into (from left to right): year, julianday, month, day, subdaily time interval step (e.g. hour) and precipitation value for the time-interval (mm).
Output:
Once you have run a simulation with subdaily pcp inputs, and you have specified to print daily channel output, and at the same time have set the “step” value in time.sim to a value > 0 (the number of steps per day in your precipitation input, i.e. 24 for hourly, 48 for 30 min intervals etc. etc.), SWAT+ will produce a subdaily output file called "channel_sd_subday.txt", which contains the subdaily discharges for each channel in your model setup. This file is formatted as described in attached code snip (with the right most column containing the discharge for a given subdaily step):
At the moment we are not really able to get outputs that are anywhere close to subdaily observations using SWAT+ (while an older SWAT setup can reproduce the subdaily discharge for our testcase quite well) – but as mentioned earlier, this part of the code is still work-in-progress, and I would suggest you check out the release notes each time a new SWAT+ code is released, to see if updates have been made to the subdaily routines in the code. Also note that currently only discharges are printed in subdaily time steps (all other outputs are still presented at daily steps).
Best regards,
Dennis