arrow-left

All pages
gitbookPowered by GitBook
1 of 16

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

ob_typ (demand)

Object type of the demand object

Object type
Usage of water

hru

Irrigation

muni

Municipal water supply

divert

Water transfer

right

Water right

Option
Description

sr

Senior

jr

Junior

withdr

Withdrawal type

Depending on the demand object type, different withdrawal types can be used. For irrigation or transfer decision tables, the name of the table should be entered in this column, for a recall file, the name of the file should be entered, and for average daily withdrawal, "ave_day" should be entered .

Withdrawal type
Description
Demand object type

Name of irrigation DT

Irrigation decision table

hru

"ave_day"

limit_mon

Monthly limits

Object type
Limiting factor
Unit

Channel

Streamflow

m3/s

Reservoir

Principal volume

Fraction

Aquifer

Water level depth below surface

The user needs to specify the limit for each month.

Average daily withdrawal

muni, divert

Name of recall file

Daily, monthly, or yearly recall file

muni, divert

Name of transfer DT

Transfer decision table

muni, divert

m

cha_ob

Channel as source object

Option
Description

yes

One channel object

no

No channel object

There cannot be more than one channel object per water allocation table.

If one of the source objects is a channel, the water allocation module is called from the channel control subroutine when the simulation reaches the ID of the source channel. Otherwise, the water allocation module is called from the time control subroutine. This is important, because during a model run, there is more variability in the availability of water in a channel than in a reservoir or aquifer. Therefore, the model needs to know the current availability of water in the source channel on the day a demand is triggered.

rcv_ob

Object type of the receiving object

The receiving object can be specified by entering "cha" for channels, "res" for reservoirs, or "aqu" for aquifers. If non of these three options is entered, SWAT+ assumes that the water is transferred to an object outside the modeled watershed and thus lost from the system. By entering a name in this column, the user can make sure that the receiving object is included in the water allocation output file.

Object type
Description

cha

Channel

res

Reservoir

aqu

Aquifer

Name of receiving object

User-defined name of an object that is assumed to be located outside the watershed

amount

Withdrawal amount

If withdr = ave_day, the amount needs to be specified here. If using a Decision Table or a recall file, amount should be set to 0, because the amount will be controlled by the DT or recall file.

ob_typ (source)

Object type of the source object

Object type
Description

cha

Channel

res

Reservoir

aqu

Aquifer

unl

Unlimited source

Water Allocation

circle-exclamation

The SWAT+ Water Allocation Module is still work in progress and not fully functional in the current revision. A description of the general approach as well as input/output files will be added before the release of the next SWAT+ revision.

rule_typ

Rule type to allocate water

Option
Description

high_right_first_serve

water_allocation.wro

This file contains water allocation tables.

The structure of the water allocation file is different than that of most other SWAT+ input files. As usual, the first line is reserved for a title. The second line in the file specifies the total number of water allocation tables included in the file.

Each water allocation table has three parts, which all have their own headers. First, the name of the water allocation table, the rule type, the number of source and demand objects, and whether or not one of the source objects is a channel are specified.

Field
Description
Type

name

Name of the water allocation table

Next, the source objects and their monthly limits are defined. Source objects can be channels, reservoirs, aquifers, or an unlimited source. There needs to be one line per source object.

Field
Description
Type

Finally, the demand objects are defined. Demand can be irrigation demand from an HRU, municipal demand, or demand to transfer to another object.There needs to be one line per demand object.

Field
Description
Type

frac

Fraction of demand to be met by source object

Monthly limits

real

Withdrawal type

string

Withdrawal amount

real

Water right

string

treat_typ

Currently not functional

string

treatment

Currently not functional

string

Object type of the receiving object

string

ID of the receiving object

integer

rcv_dtl

Currently not used

string

Number of source objects available for the demand object

integer

Source object ID

integer

Fraction of demand to be met by source object

real

Compensation from source object

string

string

rule_typ

Rule type to allocate water

string

src_obs

Number of source objects

integer

dmd_obs

Number of demand objects

integer

cha_ob

Channel as source object

string

num

Source object number

integer

ob_typ

Object type of the source object

string

ob_num

ID of the source object

integer

num

Demand object number

integer

ob_typ

Object type of the demand object

string

ob_num

ID of the demand object

integer

limit_mon
withdr
amount
right
rcv_ob
rcv_num
srcs
src
frac
comp

src

Source object ID

comp

Compensation from source object

srcs

Number of source objects available for the demand object

The sources are listed in order of selection and the fraction from each source is input. The other input is compensation – if other sources are not available, the current source may be allowed to compensate for the demand. The model goes through all sources in the order listed and allocates based on the fractions. The model loops through the sources again, checking to see if compensation is allowed.

rcv_num

ID of the receiving object