With the holiday season, I expect to be asked about what I’m doing and what I’m studying. However, the acronym soup of GIS, NID, NHD, WBD will get eyes to glaze over faster than a third helping of turkey. The problem I’m trying to solve involves two data sets, both of which represent the network of streams and rivers of the US. The first high resolution data set (NHD) can be used to identify the locations of some 60,000 dams. The second coarser resolution data set (NHDPlus) contains flow characteristics about each stream. Unfortunately, these two representations do not always overlap nor do they always share the same addressing scheme (see below).
You can not simply rely on proximity to identify the positions. Sometimes, a dam close to a river is actually on a small tributary that is not in the coarser data set (as in the picture on the left) and should be ignored. At other times, the differing resolutions place a dam a considerable distance away from the river it should be placed on (as in the picture on the right).
With the large number of dams involved, it would be difficult to check each dam manually. I’ve written a Python script, using the ESRI arcpy module, which checks for conditions such as these and automatically locates dams along the NHDPlus stream network. There are 5272 dams within the SALCC region that have been mapped to the flow characteristics of the medium resolution data. For a demonstration, the following map displays a ratio of the upstream drainage area of a dam to the area of the smaller (HUC12) watershed the dam falls in.
The tool takes a few hours to run for each region, and usually flags about 5 percent of the dams for visual checks. Hopefully the final merged data set will find wider applications in hydropower, conservation, or water supply modelling.