Download presentation
Presentation is loading. Please wait.
1
Computer Modeling/GIS Linkages
Hydrologic Response Functions GIS Application and Implementation Computer Programming and GIS
2
Watershed Abstractions
Precipitation (mm) Runoff (mm) Soil properties Runoff = f(Precipitation, Soil properties)
3
Watershed Routing Runoff (mm/hr) Watershed Flow (m3/s)
4
Watershed Routing Runoff (mm/hr) Runoff and Flow Flow (m3/s) Time
Flow = f(Runoff, Watershed hydrologic properties)
5
Hydrologic Response - the unit Hydrograph
Excess Precipitation Precipitation Infiltration Capacity Excess Precipitation Time
6
Instantaneous Response Function
Excess Precipitation P(t) Unit Response Function U(t) Event Response Q(t)
7
Distribution function of area by travel time to outlet
Time Area Diagram Distribution function of area by travel time to outlet Under assumptions of constant velocity t = d/v This provides a geomorphological basis for defining the unit response function.
8
Channel Network “Width” Function
x x The number of channels at a distance x from the outlet
9
The Geomorphologic Unit Hydrograph
Rodriguez-Iturbe, I. and J. B. Valdes, (1979), "The Geomophologic Structure of Hydrologic Response," Water Resources Research, 15(6): 1 2 3 1 2 3
10
The GIUH Theory IUH interpreted as the probability density function of travel time of rainfall landing randomly anywhere in the basin. Transitions probabilities between stream order states based on the number and area of these, through RB and RA. The delay in each state related to length, from mainstream length and RL and mean velocity v, assumed exponentially distributed. with (L, RL, v)
11
GIUH Results Rodriguez-Iturbe and Valdes (1979) derived Peak flow
time to peak Rosso, R., [1984, "Nash model relation to Horton order ratios," Water Resources Research, 20(7): ] related the GIUH to Nash model parameters
12
The GIUH provides a way to estimate response in an average (lumped) way from geomorphology.
Given GIS and DEM data it may be better to estimate travel distances and times (given a velocity) directly.
13
GIS estimation of response function
Distance from each grid cell to outlet (exercise to write program to do this) Distance from each point on channel to outlet (in output from netsetup) Distance from each point on contributing area overlay grid to outlet distances with contributing area.
14
Programming the calculation of distance to the outlet
15
Other Considerations in GIS Estimation of Response Function
Dynamic runoff generation and expanding contributing area Combination of distance with dispersion to get travel time distribution Spatially variable and dynamic velocity (function of slope and roughness and flow) Cascade model at each grid cell Cascade model of watersheds
16
A cascade model of watersheds
HMS Schematic Prepared with CRWR-PrePro
17
Exploiting ArcView Extendability
Avenue Script Programming Language Grid Application Programmers Interface (GRIDIO) Customization of the Graphical User Interface Result: Tight integration between hydrologic modeling and GIS
19
Implementation Spatial Analyst includes a C programming API (Application Programming Interface) that allows you to read and write ESRI grid data sets directly. Excerpt from gioapi.h / * GetWindowCell - Get a cell within the window for a layer, * Client must interpret the type of the output 32 Bit Ptr * to be the type of the layer being read from. * * GetWindowCellFloat - Get a cell within the window for a layer as a 32 Bit Float * GetWindowCellInt - Get a cell within the window for a layer as a 32 Bit Integer * PutWindowCell - Put a cell within the window for a layer. * Client must ensure that the type of the input 32 Bit Ptr * is the type of the layer being read from. * PutWindowCellFloat - Put a cell within the window for a layer as a 32 Bit Float * PutWindowCellInt - Put a cell within the window for a layer as a 32 Bit Integer */ int GetWindowCell(int channel, int rescol, int resrow, CELLTYPE *cell); int GetWindowCellFloat(int channel, int rescol, int resrow, float *cell); int GetWindowCellInt(int channel, int rescol, int resrow, int *cell); int PutWindowCellFloat(int channel, int col, int row, double fcell); int PutWindowCellInt(int channel, int col, int row, int icell); int PutWindowCell(int channel, int col, int row, CELLTYPE cell);
20
External C/C++ function compiled as a DLL
Avenue Script ' SINMAP.c.area ' BaseName is the full directory path name of the input DEM grid BaseName = Self.Get(0) 'get the procedure from the dll library area = DLLProc.Make(_avlsmDLL,"area",#DLLPROC_TYPE_INT16, {#DLLPROC_TYPE_STR,#DLLPROC_TYPE_STR,#DLLPROC_TYPE_INT32, #DLLPROC_TYPE_INT32}) if (area = NIL) then av.Run("SINMAP.Error.OpFail",{2}) end error = area.Call({BaseName+"ang",BaseName+"sca", 0, 0}) if (error > 0) then av.Run("SINMAP.Error.OpFail",{"Grid and/or memory error reading/writing in area.c"}) External C/C++ function compiled as a DLL
21
Customizing the GUI
22
Grazie
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.