Predefined watersheds and streams

526 views
Skip to first unread message

Ben Fisher

unread,
Feb 7, 2019, 1:42:00 PM2/7/19
to ArcSWAT
Hello,

I am looking for assistance with setting up my predefined watershed and stream shapefiles. 

The attribute tables in each file are set up correctly as I can load them into the model just fine.

My watershed shapefile has 92 subbasins, both the 'GRIDCODE' and 'Subbasin' fields are numbered 1-92.

My stream shapefile has 2,866 features.

My questions are...

1) Since each watershed contains multiple stream features, is there a way using Python, or some other means, to number each stream the same 'ARCID' and' GRID_CODE' as the corresponding watershed it lies within without having to do it manually for each individual stream?

and 2) Being that there are 2,866 stream features, is there a way to automate the 'FROM_NODE'/'TO_NODE' numbers without having to do it manually?

Any help is very much appreciated.

Ben Fisher

Natalja C.

unread,
Feb 8, 2019, 2:52:02 AM2/8/19
to ArcSWAT
Hello,
I use GIS to preprocess the user-defined streams and subbasins, and I semi-automate everything with ArcPy (or arcmodels). I would prefer to not publish the models just yet, as the publication, where I describe those is in review; as soon as it gets out - I can release the models as well.
But you can do the same by yourself, following an easy procedure of intersecting the streams. Then the GIS will produce a table, which will correspond to your FROM_NODE.
After, you need to create a table by distance of "boundary cross" attributes. Those that do not correspond with your FROM_NODE table will be the TO_NODE.
And last, you can prescribe any ARCID just by using the "Calculate field" option of the GIS.
I do a manual check to see if my procedure went well.
To answer your question - yes, it can be done in an automatic way by using basic GIS operations. There are multiple ways of doing this with GIS, I just named one, the imagination is the limit :)

Best,
Natalja

Ben Fisher

unread,
Feb 8, 2019, 3:44:08 PM2/8/19
to ArcSWAT
Awesome, I will give this a try. Thanks so much Natalja!

Shobhit Pipil

unread,
Feb 11, 2019, 3:57:43 PM2/11/19
to ArcSWAT
Hi Ben

I have a query. I have extracted river from Google images and I tried to burn the DEM with the extracted network in SWAT. While I performed DEM based extraction option, it doesnt follow burned DEM or misses some network.

Would please tell me how can I ganerate watershed boundary for extracted network from Google images. Later I can use both netwrok and watershed bounday in SWAT. Right now I am short of watershed boundary.

I hope you have some solution to this problem.

thanks
Shobhit

Yashar

unread,
Dec 17, 2019, 4:41:59 PM12/17/19
to ArcSWAT
Good afternoon,

 Would you please explain what you mean by "  you need to create a table by distance of "boundary cross" attributes"?

Thanks,
Yashar


On Friday, February 8, 2019 at 2:52:02 AM UTC-5, Natalja C. wrote:

Natalja C.

unread,
Dec 18, 2019, 4:34:48 AM12/18/19
to ArcSWAT

Natalja C.

unread,
Dec 18, 2019, 4:41:28 AM12/18/19
to ArcSWAT
Hello,
Well, first, when you digitized the river network, did you do it from the upstrem to downstream (in google earth)? I know, this sounds ridiculous, but believe me, sometime the "burn-in" doesn't work because of this :) is the stream shapefile connected?
Next, try different threshold values for the stream generation (smaller ones);
Also, your DEM might have errors, try to fix them! I remember I had several pixels that were basically a mountain in the middle of my stream. So just eliminate those.
And lastly, the most important advise - it doesn't really matter is a stream is several meters from your actual river. Swat doesn't case about that. As long as the shape length and the routing is correct - then it is no problem. Your DEM resolution is how many meters? 50 - 100 -250? If a model is coarse, then there is no difference if the stream will be several meters from the actual. :)
Best,
Natalja

Yashar

unread,
Dec 20, 2019, 1:06:03 PM12/20/19
to ArcSWAT
Hello, 

fortunately, I could figure out that part. I've noticed that after creating the stream network with predefined streams, the whole watershed outlet selection button  was greyed out as well as "inlet of detraining watershed" part. however, calculating subbasin parameters was active. apparently, I was able to calculate the subbasin parameters, because the next step (landuse/soil/slope definition) is active. I receive the notification " subbasin parameter calculation successfully done" then it starts cleaning up. this is where it crashes. even though, ArcMap crashed every time, I could continue and run the model (I open the project file again). So my question is what would cause this crashing. 

Thanks,
Yashar

Natalja C.

unread,
Dec 21, 2019, 4:26:03 AM12/21/19
to ArcSWAT
Hi,
Glad to hear that everything is fine.
AcrGis crashes for me too, but everything is saved and I could continue every time. No worries :) I have no idea why it crashes.
Best of luck,
Natalja

Fariborz Daneshvar

unread,
Feb 26, 2021, 2:17:46 PM2/26/21
to ArcSWAT
Hi everyone,

I am also using a predefined streams and subwatersheds, but for some reason  ArcSWAT decided to put some of "linking streams added outlets" in wrong locations (see highlighted points below). As a result, the outlet of the watershed was messed up! Do you know how this issue can be fixed?!
Capture.JPG
Thanks, 
Fariborz

Natalja C.

unread,
Mar 2, 2021, 2:36:15 AM3/2/21
to ArcSWAT
Hello,
It looks like your water is going the wrong way (but only looks...). What about the attribute table? I see you marked FROM-TO, but what about the reach/subbasin numbers, are those correct?
To be honest, what ArcSWAT will display at this point doesn't really matter, as the model files will be written from the attribute tables. As long as these are correct, you are okay.
Best,
Natalja

Fariborz Daneshvar

unread,
Mar 3, 2021, 3:12:22 PM3/3/21
to ArcSWAT
Hi Natalja,

Thanks for your response. The attribute tables are correct (see attached), but the outlet locations (in the ArcMap) are wrong. My only concern is that does these locations affect the routing process or not?

Best,
Fariborz

Watershed.JPG
Reach.JPG

Natalja C.

unread,
Mar 4, 2021, 3:24:12 AM3/4/21
to ArcSWAT
No, the outlets won't affect the end model setup as long as your flow is going the right way and the connectivity is fine (FROM-TO).
Basically, there are no "outlets" in swat. There are only subbasins, HRUs and reaches (ponds, reservoirs, etc. as well). These "outlets" are only for easing the GIS setup.
Best,
Natalja

Fariborz Daneshvar

unread,
Mar 5, 2021, 4:43:42 PM3/5/21
to ArcSWAT
Thank you for the clarification!

Nyigam Bole

unread,
Dec 1, 2021, 11:36:23 AM12/1/21
to ArcSWAT
Madam Natalja, I have been searching for a good answer to my issue of creating predefined stream network for a gridded watershed containing more than 1000 sub-basins. How do I get the from_node and to_node correct. I have used 'stream to feature' tool to generate streamline which automatically gives me the from node to node. However, the outlet (to node) of the watershed is not '0' by default. I can modify that, but that would require me to modify the rest of the nodes as well, which would be impractical for my case considering the number of subbasins I have. I understood the example inputs' pattern, but just not able to generate the same 'from_node' and 'to_node'. Your response will be life saving.🙂

Natalja C.

unread,
Dec 1, 2021, 2:16:24 PM12/1/21
to ArcSWAT
Hello,
I used  some ArcGIS functions (I do not remember the exact names, it was something along the lines of "Near table" - "boundary touch" for to_node, and "completely inside" for the from_node), to generate the from_node to_node . And I had 11 models with the minimum of 600 subs and max 2200 subs. I did cross-check the major stream network manually, and, in some cases, re-defined the attribute table where there were inconsistencies. I do not believe that with 1000 subbasins and a single model that is "impractical". I mean, one can do it even manually, probably will take up several days to complete, but this job is done only once (n your case). 
And if you need to change only the outlet, then manually change it to "0". The "from" "to" numbers do not have to be in series. :)
Best,
Natalja

Nyigam Bole

unread,
Dec 3, 2021, 7:21:45 AM12/3/21
to ArcSWAT
Thank You Madam Natalja! I didn't think about 'FROM_NODE' not requiring to be in sequence. I'll try ignoring the "FROM_NODE' sequence while making sure that the 'TO_NODE' is correctly recorded. Many thanks.🙇‍♂️
Reply all
Reply to author
Forward
0 new messages