I am applying SWAT+ in an area with multiple reservoirs used for irrigation. I also have a lot of HRUs representing the various crop types in the catchment. The problem is that SWAT+ assigns one reservoir to irrigate a specific HRU type. However, the reality is that I have same type HRUs (spread all over the catchment) that are irrigated from different reservoirs. I need to assign the correct reservoir per each HRU.

I have attempted to manually create a management schedule for each HRU but this is tedious if one has hundreds of HRUs to irrigate from different reservoirs. Can anyone assist with a faster method to do this?


1 Answer 1


The issue is not 100% clear. I am assuming part of the problem is that you have many areas of the same land cover type in the same subcatchment, but different parts of this cover type need to irrigated by different reservoirs.

If this is the issue, one approach could be to set up your model with different land cover type codes for the different areas that are irrigated from different reservoirs. For example, if your initial land cover map has areas mapped as wheat fields, but you know which fields are specifically irrigated from three different reservoirs, you could make a land cover map that has wheat01, wheat02, and wheat03 as different "cover classes", despite them all actually being wheat. This will mean they will be different HRU types in your model set up.

To bring this into SWAT+: each of these areas would need a different grid code number in the land cover input raster, you would need to make a differently named entry for each one in the 'plant' parameter table, and then your land cover lookup table would need to link each to these different entries in the plant parameter table. In this example, if its all wheat, and you are happy with the default wheat parameters in SWAT+, you can just copy the wheat parameter row and paste it three times at the end of the table and give these new names and codes like wheat01, wheat02, wheat03.

A hitch in this approach could come in automated calibration, if you are doing that. In this process, each wheat cover "subtype" (wheat01, wheat02, wheat03 for the areas irrigated by reservoirs 1,2,&3) would be treated as if it was an independent cover type. This means their parameter values may be changed in different ways to one another in calibration, whereas you probably want their vegetation parameters to be consistent across the three as they are all wheat... This may take some manual calibration intervention to resolve - i.e. setting the wheat01,wheat02,wheat03 parameters to be the same in the end.

Also if you have many many reservoirs, there is still work to be done on linking each HRU to the right reservoir. Doing this in the text files rather than the SWAT+ Editor interface would likely faster and you could automate the process using an R or Python code. If you modify the text files outside of the Editor interface you cannot "write tables" in the Editor before running the model (if you run it from the Editor) because this will actually undo the changes you've made.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.