Skip to content

Source code and ArcGIS toolbox for running and setting up the GIS based model for routing VIC model simulation output.

Notifications You must be signed in to change notification settings

PHIGOrganization/GIS-Routing-Model

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
lib
 
 
src
 
 
 
 
 
 

GIS Routing Model Tools

ArcGIS Toolbox, source code and other tools for setting up and running the GIS routing model for VIC simulations.

Methods and References

Theory behind this document please refers to Liu et al. (2003):

  • A diffusive transport approach for flow routing in GIS-based flood modeling, Journal of Hydrology. This has been included in the WetSPA model.

For all the documents of the GIS-based routing model for the VIC model, please also refer to Yang et al. (2011):

  • Yang, G., L. C. Bowling; K. A Cherkauer, and B. C Pijanowski (2011), The impact of urban development on hydrologic regime from catchment to basin scales, Landscape and Urban Planning, doi: 10.1016/j.landurbplan.2011.08.003.

Documentation

Documenation and tutorial for working with the model and ArcGIS toolbox can be found at the Wiki site for this GitHub respository.

Development Updates

As of May 31, 2024:

  • The Fortran code in iuhcell has been replaced with a new c-code, MakeUnitHydrographFiles. Performance of the two codes was identical. The new code has since been modified to resolve a problem found with iuhcell where IUH for each grid cell did not always sum to one. This was because very small contributions (< 0.001) from time steps were cut but the overall IUH was not rescaled. One or two of these were hardly noticable, but filtering out multiple time steps was reducing total to 0.95 or less in some cases. That effective water balance error has been resolved.

As of October 22, 2020:

  • For the short-term, I have written a script ConvertFractFile2Area.py (must load py3x anaconda to run) that will use the information in the fraction file (lat & long in the filenames, and the fractional contributing area), plus the model resolution in degrees (entered at the command line) to create a new fraction file where the final column is the approximate contributing drainage area in square kilometers.

    • This script can be used to update existing fraction files for use with the updated routing models to produce discharge in cubic meters per second.
  • The Fortran routing programs convdaily and conv3hr have been updated to return discharge in cubic meters per second, if they are given the fraction file that has area and not fractional area.

  • Additionally the program GisStreamflowRouting (a C version of the routing model) has been completed and is now available for use. It takes the same files as convdaily and conv3hr, but also takes the routing time step as a command line option (e.g., ‘24’ for daily, ‘3’/ for 3-hour). It also reads the VIC model output header to identify the correct columns for OUT_RUNOFF and OUT_BASEFLOW for both binary and ASCII output files. Therefore, there is only one executable file required, and there is no longer the need to modify the file for your application based on the order of columns in the output file.

    • NOTE: This version of the code and convdaily produce almost the same results – there are small differences at 7-8 significant figures. GisStreamflowRouting exactly matches my independent calculations, so I assume that the small differences are due to the fact that the Fortran code is using floats and the c code is using doubles.

    • NOTE: GisStreamflowRouting includes the simulation date in the output file, so it is a two column file unlike the convdaily program.

    • NOTE: GisStreamflowRouting must be given the correct IUH file for the time step being used for routing, otherwise it will produce incorrect output.

  • The script has been installed in /depot/phig/apps/scripts, and the three routing models (plus the program iuhcell that creates the unit hydrograph, and was unaffected) have been installed in /depot/phig/apps/linux. If you want your own version, the codes have all been updated in GitHub, but this repository has migrated to the new Purdue GitHub instance as github.itap.purdue.edu (I am working on an email about the migration). The previous GIS Routing Model repository has been archived, which means it exists at github.itap.purdue.edu, but is read-only.

  • I have posted an issue to the repository to update the ArcGIS toolbox next time I am in the office, so that the tool will produce a fraction file with contributing area, rather than fractional area, directly from the spatial analysis process.

About

Source code and ArcGIS toolbox for running and setting up the GIS based model for routing VIC model simulation output.

Resources

Stars

Watchers

Forks

Releases

No releases published