The purpose of this memo is to describe modifications that I have made to HECPREPRO (developed by Ferdi) and the ArcView 3 Watershed Delineation Application (WDA) developed by (Ye and Dean Djokic). These modifications were made in response to a plan developed by Paco to integrate the above mentioned programs and several scripts for estimating watershed attributes (developed by Paco and Juling) into a single product that will satisfy some goals of the TxDOT project.


Two modifications were made to HECPREPRO.

(1) The first modification is designed to make it easier to take the output from the pre-processing steps of WDA and directly create a HMS basin file using HECPREPRO. Specifically, the "nuisance" that I eliminated was the identification (by HECPREPRO) of very short reaches that occur between "outlets" and "junctions" near the confluence of two stream branches. Prior to making the program modifications described here, attempts were made to adjust the "tolerance" parameter in the original "HECPREPRO" to achieve the desired results; however, these attempts were unsuccessful.

 (2) The second modification allows the transfer of character attributes from the input table "hecreach.dbf" to the HMS basin file. I made this change to allow the specification of a reach routing method using a character string, i.e. "Muskingum." At this point, I have made no changes that allow the transfer of character string attributes for hydrologic elements other than reaches, although these modifications would probably involve very similar code changes.

Modification to the Watershed Delineation Application.

 In order to be sure that this modified version of HECPREPRO will yield the desired results, a modified version of WDA (modified from the version provided to me by Dean on 8/08/97) must be used. Specifically, the weed tolerance option during the conversion of gridded streams and gridded watersheds to shape files must be turned off. This involves a simple change in the scripts hydro.demgridline and hydro.demgridpoly.

Technical Details:

Modifications to the HECPREPRO code are described more specifically here. Ferdi has organized his code into sections like a formal manuscript. The section numbers I refer to below are the numbers that Ferdi has used to organize his code.

All sections modified from the original code are tagged with my initials "SMR" and added program comments.

Limitations of the Changes I Have Made:

These changes are specifically designed as part of a system being developed for a TxDOT project and might not be desirable for other purposes.

The modified version of HECPREPRO will no longer identify diversions, sources, or sinks because identification of these items requires an intersection of the input streamlines and basin boundaries. For use as a post-processor to threshold-based watershed delineation from gridded DEM data (WDA), this presents no problem because there are no diversions, sources, or sinks created during this watershed delineation procedure. The watershed delineation procedure also does not consider the presence of reservoirs. If a reservoir element were to be added to the coverage after the watershed delineation pre-processing (using ArcEdit for example), I think this modified version of HECPREPRO will still identify the reservoirs correctly.

The modification of HECPREPRO to eliminate consideration of very short reaches created at stream junctions is a quick fix to a complex code. This quick fix deals with a specific "problem" caused by an input data structure that is not viewed as problematic based on the philosophy used to develop the original code. Certainly, the original code is more general in that it deals with more types of hydrologic elements.

Using the Modified Programs:

I have saved a project file called "watd1012.apr" in my NT account under the directory z:\projects\txdot. This project file contains the modified versions of hydro.demgridline and hydro.demgridpoly. This project file also contains scripts called HECLEGEND and HECPREPRO. The script HECPREPRO is the modified version that I am describing here. For information on how to use the watershed delineation pre-processor and other delineation tools, see the application tutorial at This was updated in October of 1997. Options to run HECPREPRO and HECLEGEND have been added to the "Hydro" menu so that HECPREPRO can be run directly following the watershed delineation pre-processing steps.