CRWR Online Report 0405
Temporal Geoprocessing for Hydroperiod Analysis
of the Kissimmee River
by
Jennifer K. Sorenson, M.S.E.
Graduate Research Assistant
and
David R. Maidment, PhD.
Principal Investigator
May 2004
CENTER FOR RESEARCH IN WATER RESOURCES
Bureau of Engineering Research ? The University of Texas at Austin
J.J. Pickle Research Campus ? Austin, TX 787124497
This document is available online via World Wide Web at
http://www.ce.utexas.edu/centers/crwr/reports/online.html
Acknowledgements
Thank you for sharing your vision, passion, and ambition with your students, Dr.
David Maidment. You are an inspiring teacher, advisor, and mentor, and you have taught
me so much. I am grateful to have worked alongside you on such an awesome project.
Thank you to the South Florida Water Management District for funding my participation
in this phenomenal study, with special thanks to Chris Carlson and Michele Maierhofer
for always providing me with a clear vision of the project and more data than I could ever
imagine. Thank you also to PBS&J; it was a pleasure to work with your team of
professionals in producing this deliverable. Thank you to everyone at the Center for
Research in Water Resources. Special thanks go to Jonathon Goodall and Venkatesh
Merwade for your coding expertise and contributions to this research. Thank you all for
making my stint at The University of Texas a valuable learning, growing, and enriching
life experience.
ii
Table of Contents
List of Tables ......................................................................................................... vi
List of Figures....................................................................................................... vii
Chapter 1: Introduction...........................................................................................1
1.1 Background............................................................................................1
1.2 Problem Statement.................................................................................2
1.3 Objectives ..............................................................................................3
1.4 Approach................................................................................................4
1.5 Overview................................................................................................4
Chapter 2: Literature Review..................................................................................6
2.1 Kissimmee River Restoration Project....................................................6
2.2 Spatial Interpolation.............................................................................20
2.2.1 Inverse Distance Weighting........................................................21
2.2.2 Kriging ........................................................................................23
2.2.3 Spline ..........................................................................................26
2.2.4 Natural Neighbor ........................................................................27
2.3 Temporal Data Models ........................................................................29
Chapter 3: Model Development............................................................................34
3.1 Data Compilation.................................................................................34
3.1.1 Floodplain ...................................................................................36
3.1.2 Habitat Zone................................................................................36
3.1.3 Hydroperiod Points .....................................................................37
3.1.4 Water Depth Points.....................................................................37
3.1.5 Water Zone..................................................................................39
3.1.6 Raster Catalog.............................................................................39
3.1.7 Attribute Series ...........................................................................41
3.1.8 TSType Table..............................................................................43
3.2 Model Construction .............................................................................45
iii
3.2.1 DBHydro Data Ingest .................................................................52
3.2.2 River Interpolation......................................................................55
3.2.3 Generate Rasters .........................................................................59
3.2.4 Classify Depths ...........................................................................66
3.2.5 Calculate Statistics......................................................................69
3.2.5.1 Temporal Statistics.......................................................75
3.2.5.2 Zonal Statistics.............................................................76
3.2.5.3 Spatial Statistics...........................................................77
3.2.5.4 Summary Statistics.......................................................78
3.2.5.5 Overall Statistics ..........................................................80
3.2.6 Calculate Volume........................................................................81
3.3 Model Compilation ..............................................................................82
3.3.1 Biological Analysis.....................................................................83
3.3.2 Water Quality Analysis...............................................................84
3.3.3 Hydrologic Analysis ...................................................................86
3.4 Spatial Interpolation Analysis..............................................................87
Chapter 4: Results.................................................................................................91
4.1 Land Surface Elevation Grid Evaluation .............................................91
4.2 Validation of Data using Spatial Interpolation Comparisons ............100
4.3 Graphical Display of Spatial and Temporal Analysis........................113
4.4 Application of the Enhanced Arc Hydro Time Series Data Model ...128
4.4.1 Time Series ...............................................................................128
4.4.2 Attribute Series .........................................................................131
4.4.3 Raster Series..............................................................................133
4.4.4 Feature Series............................................................................135
4.5 Application of Temporal Geoprocessing...........................................137
Chapter 5: Conclusions.......................................................................................140
5.1 Synopsis of Hydroperiod Analysis ....................................................140
5.2 Findings..............................................................................................141
5.3 Significance of Research....................................................................143
iv
5.4 Future Research .................................................................................144
Appendix A: ModelBuilder Tutorial ..................................................................145
Appendix B: ModelBuilder Scripts ....................................................................160
B.1 DBIngest Part 1: InputXML.....................................................160
B.2 DBIngest Part 2: Web2TSXML...............................................162
B.3 DBIngest Part 3: XML2GDB...................................................162
B.4 River Interpolation: CreateNewPoints .....................................163
B.5 Generate Rasters: GenerateRastersBatch.................................163
B.6 Classify Depths: ClassifyDepthsBatch.....................................166
B.7 Calculate Statistics: ZonalStatisticsBatch ................................168
B.8 Calculate Volume: CalculateVolumeBatch .............................170
B.9 General Utilities: AppendTable ...............................................172
B.10 General Utilities: DeleteTable................................................172
Appendix C: GetZValues Visual Basic Macro...................................................173
Appendix D: Summary of Mathematical Framework Defined for Calculating
Hydroperiod ................................................................................................176
References............................................................................................................186
Vita .....................................................................................................................188
v
List of Tables
Table 2.1: Past, Present, and Future of the Kissimmee Wetland Ecosystem........15
Table 3.1: Input Data, Parameters, and Output Data of Models...........................48
Table 3.2: Three Approaches to Calculating Statistical Averages .......................73
Table 3.3: Three Approaches to Calculating Statistical Minimums .....................73
Table 3.4: Summary of Statistical Equations........................................................74
Table 4.1: Summary Statistics of Land Surface Elevation Difference Grids .......95
Table 4.3: Daily RMSE Values for each Interpolation Method .........................106
Table 4.4: Summary Statistics of Interpolated Mean Error Grids ......................110
Table D.1: Glossary of Hydroperiod Variables ..................................................184
vi
List of Figures
Figure 2.1: Florida?s five water management districts ...................................................... 7
Figure 2.2: Greater everglades ecosystem in South Florida .............................................. 8
Figure 2.3: Historic, channelized, and restored river profiles.......................................... 10
Figure 2.4: Reservoir spacing in channelized Kissimmee River ..................................... 10
Figure 2.5: Kissimmee River Restoration Project area.................................................... 13
Figure 2.6: Past, present and future of the Kissimmee River .......................................... 14
Figure 2.7: Hydraulic definitions (Illustrations from Maidment, 2004).......................... 18
Figure 2.8: Cell inclusion rules for polygon zones.......................................................... 19
Figure 2.9: Temporal components in mathematical expressions..................................... 20
Figure 2.10: Semivariogram plot ..................................................................................... 24
Figure 2.11: Covariance plot............................................................................................ 25
Figure 2.12: Convex hull ................................................................................................. 28
Figure 2.13: Voronoi diagram with Delaunay triangles .................................................. 29
Figure 2.14: Evolution of data storage to a temporal geodatabase.................................. 31
Figure 2.15: Components of the Arc Hydro Data Model (Maidment, 2002) .................. 32
Figure 3.1: AHED input data for hydroperiod analysis................................................... 35
Figure 3.2: 100year Floodplain with HydroperiodPoints and WaterZone ..................... 35
Figure 3.3: HabitatZone polygon feature class................................................................ 36
Figure 3.4: HabitatZone attribute table............................................................................ 37
Figure 3.5: 100year Floodplain with WaterDepthPoints................................................ 38
Figure 3.6: View of rasters in a Raster Catalog and File Folder...................................... 40
Figure 3.7: Input and output rasters from hydroperiod analysis...................................... 41
Figure 3.8: AttributeSeries table...................................................................................... 42
vii
Figure 3.9: DBHydro Browser......................................................................................... 43
Figure 3.10: Duplicate DBKeys for stage data stored in DBHydro ................................ 43
Figure 3.11: TSType table ............................................................................................... 44
Figure 3.12: Modular components of hydroperiod analysis ............................................ 46
Figure 3.13: Hydroperiod Toolbox summary of models and scripts............................... 47
Figure 3.14: DBHydro Data Ingest Toolbox ................................................................... 53
Figure 3.15: Data Ingest from DBHydro to Arc Hydro via ModelBuilder ..................... 54
Figure 3.16: DBIngest model........................................................................................... 55
Figure 3.17: Centerline through the WaterZone polygon................................................ 57
Figure 3.18: River Interpolation Centerline model.......................................................... 57
Figure 3.19: RiverWeightedPoints model........................................................................ 58
Figure 3.20: Measured and interpolated points along the river ....................................... 59
Figure 3.21: GenerateRastersPart1 model ....................................................................... 61
Figure 3.22: GenerateRastersPart2_IDW model ............................................................. 61
Figure 3.23: GenerateRastersPart2_Kriging model......................................................... 62
Figure 3.24: GenerateRastersPart2_NN model................................................................ 62
Figure 3.25: GenerateRastersPart2_Spline model ........................................................... 62
Figure 3.26: Part of the GenerateRastersBatch looping script......................................... 64
Figure 3.27: GenerateRastersBatch script parameters to be specified in GUI ................ 65
Figure 3.28: Determining model parameters to be called in scripts ................................ 66
Figure 3.29: ClassifyDepths model.................................................................................. 67
Figure 3.30: Depth classification GUI............................................................................. 68
Figure 3.31: Depth classes and their boundaries ............................................................. 68
Figure 3.32: TemporalStatistics model............................................................................ 76
Figure 3.33: ZonalStatistics model .................................................................................. 77
viii
Figure 3.34: SpatialStatistics model ................................................................................ 78
Figure 3.35: SummaryStatistics model............................................................................ 79
Figure 3.36: Statistics field selection for SummaryStatistics model ............................... 79
Figure 3.37: OverallStatistics model................................................................................ 80
Figure 3.38: CalculateVolume model.............................................................................. 82
Figure 3.39: OverallBio model ........................................................................................ 83
Figure 3.40: OverallWQDaily model .............................................................................. 85
Figure 3.41: OverallWQCell model................................................................................. 85
Figure 3.42: OverallHydroArea model............................................................................ 86
Figure 3.43: OverallHydroTime model ........................................................................... 87
Figure 4.1: Pre and postconstruction land surface elevation grids: (a) preconstruction
grid, ELEV; (b) postconstruction LSE grid 1, PostLandElev; and (c) post
construction LSE grid 2, PostElevCJR ..................................................................... 93
Figure 4.2: Differences between pre and postconstruction land surface elevation grids
................................................................................................................................... 95
Figure 4.3: Erroneous contour lines highlighted in blue among other contour line data
(left), erroneous contour lines highlighted in red overtop the postconstruction land
surface elevation grid 1 (right).................................................................................. 96
Figure 4.4: Contour line density in a single cell .............................................................. 97
Figure 4.5: Histograms for difference data...................................................................... 99
Figure 4.6: Trend analysis for difference data............................................................... 100
Figure 4.7: Water depth points for six days analyzed (left); Water depth points with large
RMSE values (right) ............................................................................................... 101
Figure 4.8: Daily RMSE at each measured water depth point....................................... 103
ix
Figure 4.9: Discrepancy between pre and postconstruction land surface elevation grids
................................................................................................................................. 104
Figure 4.10: Discrepancy between two postconstruction land surface elevation grids 104
Table 4.2: Daily Mean Error Values for each Interpolation Method............................. 106
Figure 4.11: Classified overall mean error ranges......................................................... 107
Figure 4.12: Spatial distribution of mean error.............................................................. 109
Figure 4.13: Daily RMSE values for each interpolation method................................... 111
Figure 4.14: Overall average RMSE value for each interpolation method.................... 112
Figure 4.15: Illustration of ponded depth calculation at one point location .................. 114
Figure 4.16: Selected land categories in Pool C of the Kissimmee River ..................... 115
Figure 4.17: Daily ponded depth in selected land categories ........................................ 115
Figure 4.18: Duration classes and their boundaries....................................................... 117
Figure 4.19: Percent of floodplain inundated during June 2003.................................... 121
Figure 4.20: Percent of floodplain in each water depth interval.................................... 121
Figure 4.21: Spatial distribution of minimum, mean, and maximum water depths....... 122
Figure 4.22: Duration and percent of floodplain inundated at different depth intervals 123
Figure 4.23: Daily mean water volume in each 60ft x 60ft cell .................................... 125
Figure 4.24: Daily total water volume in each zone ...................................................... 125
Figure 4.25: Stage in Kissimmee River graphed using TSPlotter ................................. 127
Figure 4.26: Enhanced Arc Hydro Time Series Framework ......................................... 129
Figure 4.27: Sample Time Series data query from DBHYDRO browser and associated
Attribute Series table............................................................................................... 130
Figure 4.28: Sample plot generated from DHI TimeSeries tools .................................. 131
Figure 4.29: Attribute series joined with point feature class ......................................... 132
Figure 4.30: Calculation of zonal statistics.................................................................... 133
x
Figure 4.31: Spatial interpolation of water surface elevation and calculation of ponded
depth grid ................................................................................................................ 134
Figure 4.32: Reclassification of the ponded depth grid ................................................. 135
Figure 4.33: Conversion of classified ponded depth grid to a dissolved polygon feature
class......................................................................................................................... 136
Figure 4.34: ArcGIS Tracking Analyst view of depth classified polygons changing
through time............................................................................................................ 137
xi
Chapter 1: Introduction
The once pristine Everglades in southern Florida covered an expansive eight
million acres and were home to 68 threatened or endangered species (SFWMD, 2003a).
Water that used to move in great sheets across the Everglades is now bound in canals.
Implemented in an effort to balance hydrologic fluctuations, meet urban and agricultural
demands of an expanding population, and provide flood protection, channelization badly
damaged the ecosystem in the floodplain. Excessive rainfall threatens the state?s
extraordinarily flat terrain with flooding, while insufficient rainfall threatens the state?s
fragile ecosystem and water supply. As such, the state is charged with a daunting task to
supply water when needed and remove it when in excess. Considered the world?s largest
ecosystem restoration project, the Comprehensive Everglades Restoration Plan (CERP)
seeks to restore the ecosystems of the Kissimmee River, Lake Okeechobee, and the
Everglades while maintaining flood control; it is expected to cost $7.8 billion and take
more than 30 years to complete in a joint state and federal effort (SFWMD, 2003b).
At the request of the South Florida Water Management District, the Center for
Research in Water Resources (CRWR) developed an analysis method to evaluate
hydroperiod, where hydroperiod is defined as the depth and duration of inundation in a
floodplain area. Biological, hydrologic, and water quality assessments made possible by
hydroperiod analysis will enable the state to evaluate ecological restoration and flood
control effectiveness.
1.1 BACKGROUND
Part of the Comprehensive Everglades Restoration Plan, the Kissimmee River
Restoration project exists to restore the channelized river to its original meandering
stream and floodplain system. The project is designed to backfill 22 miles of canal, re
1
carve 9 miles of the former meandering river channel, and restore over 40 square miles of
the river/floodplain ecosystem (SFWMD, 2003c). The hydroperiod tool is designed to
assess a restored prototype area along the Kissimmee River known as Pool C but generic
enough for application to other areas. Water surface elevation in the 100year Pool C
floodplain is measured by 21 water stage gages that strategically intersect the
river/floodplain system and measure stage every 15 minutes. These stage measurements
are averaged daily and are used to generate a water surface grid, which is in turn used to
generate a ponded depth, to be used in hydroperiod analysis.
1.2 PROBLEM STATEMENT
The purpose of the hydroperiod analysis is to define the depth and duration of
flood inundation as a function of location in the Pool C area of the Kissimmee River
Basin. The hydroperiod results can then be used to evaluate the biological, hydrologic,
and water quality response of the Kissimmee River ecosystem to reconstruction.
In terms of biological analysis, the purpose is to determine what part of the
floodplain is available to various fish and wildlife during a specified period of analysis.
To make this determination, the water depth throughout the floodplain must be calculated
and classified into user defined depth classes. These depth classes are then evaluated
over time to yield the duration of inundation within a specified depth class and selected
geographic extent.
Hydrologic analysis requires calculation of the mean daily water depth in a
selected geographic area and a specified period of time. The mean daily water depth for
this area is used to determine the mean monthly, seasonal, and annual water depth so that
a comparison can be made between wet and dry seasons, between and across months, and
over and across years. Simple statistics related to the daily mean water depth are
2
calculated for user provided geographic zones. Finally, the analysis must identify what
percent of the selected area is inundated for what percent of the time.
For water quality analysis, the user needs to determine the volume of water in the
river, over the floodplain, and in the combined river/floodplain system during a specified
period of analysis. These volumes can then be used to calculate residence time and
nutrient loads to assess the effect of restoration on water quality.
1.3 OBJECTIVES
The primary objectives of this research are to develop a method to evaluate depth
and duration of inundation over a selected geographic extent and to contribute to the
evolving concept of temporal geoprocessing. More specifically, the objectives are to:
1. Authenticate integration of external source temporal data with the Arc Hydro
Time Series data model and geoprocessing functionality available within
ArcMap.
2. Develop a hydroperiod analysis method in ArcGIS 9.0 to synthesize
geospatial and temporal water resources data, including the following
functionality (where the user is able to specify geographic extent, time period,
and depth class intervals):
a. Calculate depth and duration of inundation;
b. Classify depths of inundation into userdefined depth intervals;
c. Calculate spatial, temporal, and overall statistics (i.e. mean, minimum,
maximum, standard deviation, etc.) of depth of inundation; and
d. Calculate the volume of water in the river, in the floodplain, and in the
combined system.
3
3. Evaluate hydroperiod analysis accuracy by comparing calculated depth values
with water depth field data collected at various locations throughout the Pool
C floodplain.
1.4 APPROACH
Development of the hydroperiod analysis method is really an exercise in temporal
geoprocessing, a question of how a value (depth in this case) changes through space and
time. The question that follows is: how does one calculate, display, and manage
changing values through space and time?
This research utilizes Visual Basic programs and models and scripts created using
ModelBuilder in ArcGIS 9.0 to manage temporal data and to complete the hydroperiod
calculations. (ModelBuilder is further explained in Section 3.2.) Map algebra, spatial
interpolation, zonal statistics and other existing ArcGIS tools are used in the
ModelBuilder models; ArcGIS Tracking Analyst is used to view the extent and depth
classification of inundation animated over time; and graphs are created in Excel to
determine inundation trends over time.
1.5 OVERVIEW
The remaining chapters elaborate on the history, development, and results of the
hydroperiod analysis introduced in this chapter. Chapter 2 describes the geographic past,
present, and future of Kissimmee River, discusses advantages and disadvantages of
several spatial interpolation methods, and documents the existing ArcGIS Arc Hydro
Time Series data model. Chapter 3 provides an overview of the methods used to develop
the hydroperiod analysis, including data and model compilation, as well as the approach
to evaluate hydroperiod analysis accuracy. Chapter 4 presents graphical results of the
hydroperiod analysis, a comparison of measured and calculated water depth values, and
4
the enhanced Arc Hydro Time Series data model, as well as potential application of
temporal geoprocessing to future engineering problems. Chapter 5 summarizes the
findings of this research and introduces ideas for continued development and refinement
of the hydroperiod analysis method presented herein.
5
Chapter 2: Literature Review
Formation of a conceptual framework useful in evaluating restorative success of
the Kissimmee River requires understanding of the area?s historic, present, and restored
conditions. Water inundation depth, duration, and extent are central to assessment of
restorative success. Therefore, accurate estimation of each is critical. Several
interpolation methods are described here and are later compared (Chapter 4) to determine
which method is best suited for prediction of water depths in the Kissimmee River area.
Finally, the integration of temporal data (water level and depth changing through time)
must be integrated into a geospatial database. The existing ArcGIS temporal framework
is described briefly to establish a foundation for the enhancements described in Chapter
4.
2.1 KISSIMMEE RIVER RESTORATION PROJECT
When the state of Florida was established in 1845, twothirds of the land was
covered in swamps and marshes, mostly owned by the federal government. The state
received 20 million acres of wetlands through the Federal Swamp and Overflowed Land
Acts of 1850. During the next 100 years, the land was drained, the floodplain reduced,
and the water redirected for flood protection, agriculture, and residential use. The
drainage system proved insufficient in the 1920?s when 2000 people died mostly from
hurricaneinduced flooding. Two more hurricanes ripped through South Florida in 1947,
flooded five million acres of Florida for months, and prompted the state to form the South
Florida Water Management District in 1949. Florida?s water management district
boundaries (Figure 2.1) are hydrologically rather than politically determined.
6
Figure 2.1: Florida?s five water management districts
Courtesy: http://www.sfwmd.gov/histo/3_5wmd_map.html
The South Florida Water Management District includes 16 counties from Orlando
to Key West, covers nearly 18,000 square miles, and serves more than six million
residents. Charged with balancing and improving flood control, water supply, water
quality, and natural systems, one of the District?s best known projects is restoration of the
greater Everglades ecosystem (Figure 2.2) including the Kissimmee River, Lake
Okeechobee, the Everglades and related coastal estuaries. Problems facing the ecosystem
include loss of historic wetlands, loss of a vast quantity of fresh water, disrupted timing
and flows of water, and deterioration of water quality. Most fresh water has been
redirected to Florida Bay to minimize flooding and to prepare more land for
development, some is manually pumped to cities for industrial and municipal purposes,
and the little fresh water remaining feeds the Everglades. Ecosystem restoration will
include reservoirs, underground aquifer storage and recovery wells, manmade wetlands,
removal of canals and levees, and operational changes to the regional water management
system.
7
Orlando
Upper Chain
of Lakes
ATLANTIC
OCEAN
Lake Kissimmee
Kissimmee River
GULF OF
MEXICO
Lake
Okeechobee
West Palm
Beach
Fort
Myers
Water
Conservation
Areas
Naples
Fort
Lauderdale Big
Cypress
Preserve
Miami
10,000
Islands
EVERGLADES
NATIONAL
PARK
Florida
Bay
FLORIDA KEYS
Figure 2.2: Greater everglades ecosystem in South Florida
The Upper Chain of Lakes and the Kissimmee River are located at the
northernmost tip of the greater everglades ecosystem. Historically, the Kissimmee River
consisted of 103 river miles of meandering channel leading from Lake Kissimmee to
Lake Okeechobee (Figure 2.3(a)). The floodplain was about 56 miles long, one to two
miles wide, and sloped toward the south, dropping from 51 feet at Lake Kissimmee to 15
feet at Lake Okeechobee (about onethird of a foot in elevation over each river mile).
Flows exceeded 250 cubic feet per second 95% of the time, while water velocity
averaged less than two feet per second. Prolonged periods of extended floodplain
inundation (approximately 3550% of the time) contributed to a diverse habitat and
thriving ecosystem. The watershed flowed almost undetectably through the grass,
8
clockwise from Okeechobee to the coral reefs and estuaries of Florida Bay (located
between the Florida Keys and the mainland) using layers of shallow pools, reeds, and
marsh to naturally pump and distribute the water through South Florida.
Between 1962 and 1971, the meandering river and floodplain system was
channelized into a 56milelong, 30feetdeep, 300feetwide canal and transformed into
a series of impounded reservoirs, Pools AE (Figure 2.3(b)). Flood control structures (S
65A ? S65E) were added between reservoirs to allow the state to actively control the
water level and flow in each section of land between Lake Kissimmee and Lake
Okeechobee (Figure 2.4). After channelization, water flowed primarily through the
single canal; however, some stagnant water was stored in remnant river channels. These
remnant river channels look like the original meandering river in Figure 2.3(b), but are
not actually connected to the new canal. The channelization drained approximately two
thirds of the floodplain. Even before the channelization was complete, scientists and
engineers began to question the wisdom of channelizing the Kissimmee River. The once
soggy uncultivated land was now dry and occupied by farmers, residents, and tourists, but
no longer by the diverse array of plants, fish, and wildlife. Channelization badly
damaged the ecosystem. Migratory waterfowl decreased by 92 percent, the bald eagle
population dropped by 74 percent, the food chain was depleted, and fisheries dwindled.
Water quality worsened. Art Marshall appeared before the Florida governor and cabinet
twice to plead for ?environmental repentance? in the state; he went so far as to say that
channelization of the Kissimmee River was ?sluicing sewage from Orlando directly to
Lake Okeechobee? (Gunderson et al., 1995). Some say Florida experienced Barry
Commoner?s Third Law of Ecology, ?Whatever man touches he makes worse?
(Gunderson et al., 1995).
9
(a) Historic River (b) Channelized River (c) Restored River
Figure 2.3: Historic, channelized, and restored river profiles
Pool A
11 miles
Pool C
9 miles
Pool D
8.5 miles
Pool E
7 miles
Pool B
11.5 miles
8 miles
Okeechobe
Lake
Kissimmee
S65A S65B S65C S65D S65E
Figure 2.4: Reservoir spacing in channelized Kissimmee River
10
Lake
In addition to the damage caused by channelization of the river, Florida?s growing
population threatened future availability of a diminishing water supply. In 1950, Florida
had 2.77 million residents; the population grew to 13 million in 1990 and is expected to
grow to 20 million by 2020 (Simon, 1998). The water covering swampy marshlands in
Florida serves not only the ecosystem, but also replenishes aquifers for drinking water
supply. Already facing some water quantity and quality problems in the 1990s, Florida
needed to invoke sustainable water resources management. Preservation and restoration
of Florida?s natural water source became top priority.
After conducting a feasibility study in 1984, the United States Army Corps of
Engineers initially recommended ?no action? in response to the Kissimmee River
problems. This prompted the South Florida Water Management District to take matters
into their own hands. In 1985, the District did some restorative experimentation and
worked with the University of California at Berkley to develop an overall restoration plan
that was approved by the SFWMD governing board. The plan then went onto Congress
which sent the plan to the Corps for review and approval before final authorization. The
final decision to restore the Kissimmee River was helped by the 1992 Water Resources
Development Act authorizing federal funds to the Corps to support environmental
restoration projects (Gunderson et al. 1995).
The goal of the Kissimmee River Restoration Project (KRRP) is to reimplement
the natural water cycle of flow, flood, and drought that existed until the late 1940s.
Being the first venture of its kind, no one is sure it can be done (Rotherfeder, 2001).
More specifically, the KRRP hopes to reestablish historical wetland habitats with plant
and wildlife diversity, while maintaining required flood protection by dechannelizing the
Kissimmee River. A desirable byproduct is improved water quality in Lake Okeechobee.
11
Kissimmee River reconstruction objectives (illustrated in Figure 2.3(c) and Figure 2.5)
are to:
? Backfill 22 of 56 miles of flood control canal;
? Remove two of five control structures (S65B and S65C);
? Recarve nine miles of former meandering river channel; and
? Restore over 40 square miles of river/floodplain ecosystem.
This portion of the reconstruction is expected to be complete by the year 2010. By
restricting the area of restoration to the 22 miles of backfilled canal, the remaining 34
miles of canal will help control flooding, limiting inundation primarily to nonresidential
areas. Since the restoration efforts were initiated shortly after channelization was
complete, there was limited development in the floodplain. The land in Pool C is used
mostly for cattle grazing, but there is limited residential development in the floodplain.
The District is required to purchase or provide flood mitigation to protect residential
areas from 100year flood events.
12
Figure 2.5: Kissimmee River Restoration Project area
Courtesy: http://www.sfwmd.gov/org/erd/krr/pubs/kissflyr.pdf
Figure 2.6 summarizes the past, present, and future of the Kissimmee River.
Photograph (a) in the top center shows the historic meandering river. Moving clockwise,
photograph (b) shows channelization, photograph (c) shows a choked river remnant (after
channelization), and photograph (d) shows the canal and drained floodplain system. The
arrow from the canal state (d) back to the historic meandering stream (a) signifies the
District?s desire to ?recreate? a more natural environment, to revert to the meandering
stream with some allowable but controlled flooding to foster a diverse habitat and
thriving ecosystem. A more detailed description of the past, present, and future of the
wetland ecosystem is presented in Table 2.1 (SFWMD 2002, SFWMD 2003d, SFWMD
2004).
13
(a)
(d) (b)
(c)
Figure 2.6: Past, present and future of the Kissimmee River
Photographs courtesy of: http://www.sfwmd.gov/org/erd/krr/pastpres/3_krrpp.html
14
Table 2.1: Past, Present, and Future of the Kissimmee Wetland Ecosystem
River Plant
Communities
Fish Waterfowl Wading
Birds
Quantity
 103 miles long
in a 12 mile wide
floodplain
 35,000 acres of
wetlands
 81,000 pounds
(in the mid
1950's)
 12,500 winter
duck population
 18,000 birds
HISTORI
C
STATE
Type
 meandering
stream
 prolonged
periods of
inundation
 maidencane
 beakrush wet
prairies
 broadleaf marsh
 willow and
buttonbush shrub
swamps
 hardwood
 cypress
 oakcabbage
hammocks
 switchgrass
 sawgrass
 floating mats or
tussocks
 largemouth
bass
 black crappie
 blue gill
 catfish
 red ear sunfish
 ringnecked
ducks
 American
widgeon
 northern
pintail
 bluewinged
teal
 all 14 species
of wading birds
found in the
eastern United
States (1977)
 white and
glossy ibis
 (endangered)
wood stork
 (endangered)
snail kite
 (endangered)
bald eagle
 (threatened)
sandhill crane
Quantity
 56milelong,
30feetdeep,
300feetwide
 eliminated
6,200 acres of
wetlands and
damaged others
 approx. 26,000
31,000 acres of
floodplain were
drained, covered,
or converted to
canal
 declined due
to chronic low
dissolved
oxygen levels
 utilization by
wintering
waterfowl
declined by
92%
 declined and
largely replaced
CH
A
NNELIZ
A
TIO
N
Type
 canal with water
control structures
for flood control
 series of
impounded
reservoirs
 low and noflow
regimes resulted
in encroachment
of vegetation
(floating exotics)
to the center of
the river channel
 floating exotics:
Pistia stratiotes
(water lettuce)
and Eichhornia
crassipes (water
hyacinth)
 largemouth
bass and other
species largely
replaced by
species tolerant
of low dissolved
oxygen
concentrations
 species
common to
lentic systems
 same as listed
above
 wading birds
largely replaced
by Bubulcus
ibis (cattle
egret) and
other species
common to
upland,
terrestrial
habitats
RESTO
RATI
O
N
Quantity
and
Type
 restore 43 miles
of meandering
river channel
 restore 40
square miles of
ecosystem
 sandbars and
sandy bottom are
indicative of
improving river
hydrology
 formerly
isolated oxbows
are flowing again
 restore 27,000
acres of wetlands
 recreate historic
mosaic of
wetland plant
communities
 emergent and
shoreline
vegetation has
reappeared and
is thriving
 success will be
monitored by
reestablishment
of aquatic food
chains
 success will be
evaluated based
on diversity and
population
density
(reproductive
success), as
compared to
historic records
 success will
be evaluated
based on
diversity and
population
density
(reproductive
success), as
compared to
historic records
 success will
be evaluated
based on
diversity and
population
density
(reproductive
success), as
compared to
historic records
15
To track restoration success, the District needs to know water inundation depth,
depth ranges, trends, and surface water volume. The District is interested in water
inundation depth on a daily basis as well as mean water depth magnitude and variation
over monthly, seasonal, and annual intervals. Water depth ranges signify zones available
to plants and wildlife and need to be understood as they change over time. The percent of
area inundated in the floodplain for what percent of the time is also of interest. Finally,
the surface water volume must be known to calculate residence time and ultimately the
nutrient assimilation capacity of the river to improve water quality in Lake Okeechobee.
To capture all of this information, the District requested the Center for Research in Water
Resources to develop a hydroperiod analysis method within ArcGIS.
To describe spatial and temporal hydropatterns in Kissimmee River, the District
installed monitoring stations in the river and across the floodplain. The monitoring
station locations were carefully planned based on detailed topography, land categories,
and pre and postchannelization vegetative coverage. Stage measurements (accurate to
twohundredths of a foot) are collected every 15 minutes, stored in a data logger, and
downloaded once daily. The purpose of collecting this hydrologic data is to compare
documented prechannelization conditions with postrestoration conditions by delineating
the spatial extent of floodplain inundation, as well as water depth and duration (SFWMD,
2002).
Hydraulic definitions needed to understand the term hydroperiod are summarized
in Figure 2.7. Starting in the upper left quadrant (Figure 2.7(a)), hydraulic head is
defined as the water surface elevation in a standpipe anywhere in the water system,
measured in feet above mean sea level. A positive water surface elevation can exist both
above and below the land surface. Moving to the upper right quadrant (Figure 2.7(b)), a
map of hydraulic head specifies the continuous spatial distribution of hydraulic head over
16
the analysis domain for one time step. One hydraulic head value at one location occupies
only one point on the continuous surface. Moving to the lower right quadrant (Figure
2.7(c)), a time sequence of head maps describes hydraulic head changes over space and
time (three time steps are shown in the figure). Lastly, the lower left quadrant (Figure
2.7(d)) depicts ponded depth changes over time at a particular point (x,y), otherwise
referred to as an inundation time series. The upper plot in Figure 2.7(d) illustrates three
definitions: h is the hydraulic head as previously described, L is the land surface
elevation, and d is the depth of inundation, which is equal to the hydraulic head minus the
land surface elevation. In the other lower plot, the upper wavy line represents the
hydraulic head over time, the straight line represents the land surface elevation (the
straight line presumes a constant land surface elevation through time but it may change as
restoration work is completed), and the bottom wavy line represents the depth of
inundation over time. Indeed, this final plot portrays hydroperiod, which is the depth and
duration of inundation in a geographic area.
Hydroperiod analysis occurs spatially over polygon zones and depth class grid
zones. Let R be the region described by the domain, or study area. Let R
p
be a polygon
subdomain of R, where p represents habitat polygon zones, landscape polygon zones,
river polygon zones and so on (p = 1,2,?,P). Let R
g
be a grid subdomain of R, where g
represents depth class zones (g = 1,2,?,G); depth class zones consist of a set of cells.
Polygon zone p has area A
p
. Likewise, depth class zone g has area A
g.
Let grid g be
comprised of i cells with area a, such that a
i
is the area of cell i (i = 1,2,?,I). Equation
(21a) states that a
i
is an element of A
p
, and Equation (21b) states that a
i
is also an
element of A
g
. Equation (22a) states that a
i
(p) is the set of cells within A
p
, and Equation
(22b) states that a
i
(g) is the set of cells within A
g
.
17
hydraulic head map of hydraulic head
specifies the continuous spatial distribution
of hydraulic head at an instant of time
water surface elevation in a standpipe any
where in a water system, measured in feet
above mean sea level
land surface
water surface
mean sea
level (datum)
(a) (b)
inundation time series time sequence of head maps
hydraulic head changes over space and timeponded depth changes over space and time
d = depth of inundation
L = land surface elevation
h = hydraulic head
hydroperiod: depth and duration of
inundation in a geographic area
(d) (c)
Figure 2.7: Hydraulic definitions (Illustrations from Maidment, 2004)
{ }
pii
Aaa ?: (21a) { }
gii
Aaa ?: (21b)
?
?
=
pi
Aa
ip
paA )( (22a)
?
?
=
gi
Aa
ig
gaA )( (22b)
When a polygon zone is specified as the subdomain of study and the polygon
boundary divides or crosses topographic cells, cells must be selected based on an
inclusion rule. Three cell inclusion rules are:
18
? Rule 1: Use only those topographic cells that fall wholly within polygons
(Figure 2.8(a)).
? Rule 2: Use all cells within and those cells that touch polygon edges. This
means one cell may be used to calculate statistics for more than one polygon
(Figure 2.8(b)).
? Rule 3: Use cells where greater than 50% of the cell area is included in the
polygon (Figure 2.8(c)).
(a) Rule 1 (b) Rule 2 (c) Rule 3
Figure 2.8: Cell inclusion rules for polygon zones
Hydroperiod analysis occurs temporally over a specified time period, T*. The
time period is divided into J time intervals (Equation (23)) where the time interval is
represented by j (j = 1,2,?,J). Times within the specified time period are denoted with t,
where t
j
is the time at time interval j (Figure 2.9). In accordance with Equation (24),
time t
j
= ?t, 2?t, 3?t,?,J?t.
t
T
J
?
=
*
(23)
tjt
j
??= (24)
19
T*
?t
j = 1 2 3 ? ? J
Figure 2.9: Temporal components in mathematical expressions
Given a
i
and t
j
, let h
i,j
be the water surface elevation in cell i at time interval j, let
L
i
be the land surface elevation in cell i, and let d
i,j
be the ponded depth in cell i at time
interval j. The ponded depth is equal to the water surface elevation minus the land
surface elevation (Equation (25)).
ijiji
Lhd ?=
,,
(25)
2.2 SPATIAL INTERPOLATION
Interpolation functions create a continuous prediction surface from sample point
values. Interpolation assumes that values measured at the points are spatially correlated
(closer points tend to share similar values). Deterministic interpolation methods (i.e.
Inverse Distance Weighting and Spline) are directly based on nearby measured values or
on mathematical formulas to produce a smooth surface, while geostatistical interpolation
methods (i.e. Kriging) are based on statistical models that use autocorrelation (the
statistical relationship among measured points). In either method, values measured at
known points are used to predict values on a grid, thus to produce a grid of interpolated
values. Interpolation methods considered in this research include Inverse Distance
Weighting, Kriging, Spline, and Natural Neighbors. These methods were selected
because of their availability in ArcGIS Spatial Analyst.
The validity of depth estimation accomplished in hydroperiod analysis is
strengthened by the existence of spatial autocorrelation. Spatial autocorrelation suggests
20
that values in close proximity should be more similar to each other than those far apart.
Positive spatial correlation exists when one point is higher than normal and its neighbors
also tend to be higher than normal. Negative spatial correlation exists when one point is
higher than normal and its neighbors tend to be lower than normal. Zero autocorrelation
exists when the value at one point does not influence values at neighboring points.
No one spatial interpolation method is always superior to the others. The
interpolation method best suited for a given application depends on a variety of factors
including point density and spacing (irregular vs. regular); parameter modeled (i.e. water,
temperature, snow, etc.) and its range, variance, and correlation; extent and
characteristics of geographic area predicted (spatial scale); and the criteria determining a
?good fit?. An interpolation may be judged as ?good? based on prediction or
characterization; prediction states that the best interpolation is the one that minimizes
predictions error at unknown points, while characterization states the resulting surface
must globally look like the actual surface (Caruso 1998).
2.2.1 Inverse Distance Weighting
Inverse Distance Weighting (IDW) interpolation estimates cell values using
linearly weighted sample data points in the vicinity of the cell. Data points closer to the
estimated cell have more influence or weight, while those further from the estimated cell
have less influence. In other words, influence on estimated cell values decreases with
distance. A deterministic interpolation method, IDW is an exact interpolator meaning
that values in the continuous prediction surface are identical to the measured values at the
sample point locations. Inverse Distance Weighting is accomplished using Equation (2
6). In IDW, the weight,
i
? , depends solely on the distance to the prediction location.
, (26)
?
=
=
N
i
ii
ZZ
1
0
?
?
21
where = Predicted value at unmeasured location, (x
0
?
Z
0
,y
0
);
= measured value located at (x
i
Z
i
,y
i
);
i
? = weight for the value at the ith location; and
N = number of measured values.
Three variables effect IDW interpolation: power, search radius, and barrier.
Specifying a high power will give more influence to points in closest proximity, thus
producing a detailed (less smooth) surface. A lower power will give more influence to
points farther away and will produce a smoother surface. A fixed or variable search
radius can be selected to limit the number of points used in estimating the value of an
unknown cell. A fixed search radius dictates the neighborhood of points included in
interpolation provided a specified minimum number of known values are included in the
neighborhood. If this condition is not met, the search radius will be increased until it
encompasses the specified minimum number of known values. Alternatively, a variable
search radius may be used, for which a number of points to be used in interpolation of
each cell is specified. Because known points may be located at irregular distances from
one another, the search radius varies by cell. If specified, a maximum search radius will
limit (override) the number of points included in the interpolation. The variable search
radius is generally selected when the phenomenon has a great amount of variation.
Finally, a barrier can be used as a breakline to guard the interpolation from including
unwanted data points (on the other side of the barrier).
IDW is simple, produces reasonable results for a wide variety of data, and does
not generally exceed the range of meaningful values; however, this method is very
sensitive to the weighting function and can be adversely affected by uneven point
distribution (Caruso and Quarta, 1998). This contention was upheld when comparing
22
interpolation methods? estimation of snow distribution?IDW did not reliably predict
surfaces characterized by extreme spatial variability (Erxleben et al., 2002). IDW is
historically used to interpolate climatic data (Collins and Bolstad, 2003).
2.2.2 Kriging
Kriging interpolation fits a mathematical function to a specified number of known
values to determine values for each cell in a continuous surface. Like IDW, the Kriging
interpolation method estimates by assigning a weight based on the distance between
measured points and the prediction location (Equation (26)). Unlike IDW, Kriging is
also dependent on the overall spatial arrangement among measured points. The weight
i
? is determined from a model fit to the measured points, the distance to the prediction
location, and the spatial relationships among the measured values around the prediction
location.
Semivariograms and covariance functions are used to estimate statistical
dependence values (spatial autocorrelation). Measured data is used twice, first to
determine the semivariogram of the data, and second, to create the prediction surface.
Semivariance is defined in Equation (27). The distance d
i,j
between two measured
points, (x
i
,y
i
) and (x
j
,y
j
), is defined in Equation (28). The semivariogram is created by
plotting the semivariance,
ji
,? , against the distance between each pair of known
locations, d
i,j
(Figure 2.10). Next, semivariogram modeling is used to fit a function to the
semivariogram. Any reasonable function can be used to fit the semivariogram. ArcGIS
Spatial Analyst provides circular, spherical, exponential, Gaussian, and linear functions;
the spherical model is commonly used. The semivariance is recalculated using the fitted
semivariogram model. Then, the weights for interpolation are calculated to minimize the
difference between true and predicted values. Finally, values are predicted at
unmeasured locations using Equation (26),
23
[ ]
2
)(
,
2
ji
ji
ZZE ?
=? , (27)
where
ji
,? = variance of the difference of two points, (x
i
,y
i
) and (x
j
,y
j
);
= measured value located at (x
i
Z
i
,y
i
); and
= measured value located at (x
j
Z
j
,y
j
).
()()
22
, jijiji
yyxxd ???= (28)
ji
,?
Partial Sill
Sill
RangeNugget
Distance
Figure 2.10: Semivariogram plot
From Figure 2.10, the sill is defined as the height at which the semivariogram
levels off, the range is defined as the distance at which the semivariogram levels off to
the sill, and the nugget (also known as the nugget effect) is equal to the discontinuity at
the origin composed of measurement error and microscale variation.
Covariance is a scaled version of correlation and is defined in Equation (29),
where cov is the covariance, and graphed in Figure 2.11. When two locations are close,
they are expected to be similar so their covariance (or correlation) is large. As locations
are spaced farther apart, they are less similar and their covariance becomes zero. The
semivariogram and covariance function are related in Equation (210).
C
i,j
= cov(Z
i
, Z
j
) (29)
24
ji
,? = sill  C
i,j
(210)
C
i,j
Distance
Sill
Range
Nugget
Partial Sill
Figure 2.11: Covariance plot
In addition to fixed or variable search radius (same as described for IDW), a user
may specify Ordinary or Universal Kriging. Ordinary Kriging assumes an unknown
constant mean and is the default method. Universal Kriging, which should only be used
when a scientific justification exists to support a welldefined trend in the data, uses a
deterministic function (a polynomial) to incorporate the trend into surface estimation.
The snow distribution study found ordinary kriging as inadequate when predicting
surfaces characterized by extreme spatial variability (Erxleben et al., 2002). Conversely,
kriging was superior to IDW and Spline interpolation for temperature estimation, and was
considered to effectively describe surfaces with regionalized variables (Collins and
Bolstad, 2003). This same reference claims that kriging is considered the Best Linear
Unbiased Estimator (BLUE) but recognizes some uncertainty associated with the
subjective nature of variogram fitting. Unlike most other interpolation methods, kriging
provides a measure of error or uncertainty of the interpolated surface, which may prove
useful in identifying areas where more data would be helpful.
25
2.2.3 Spline
Spline interpolation (also referred to as thin plate interpolation) is best described
by its two conditions: (1) the predicted surface must pass exactly through known data
points and (2) the surface must have minimum curvature, meaning minimum cumulative
sums of the squares of the second derivative terms of the predicted surface. The
minimumcurvature technique produces a smooth, continuous, and differentiable surface.
Spline interpolation may be performed using either the regularized or tension
option. RegularizedSpline interpolation incorporates thirdderivative terms into the
minimization criteria and should be used if the second derivative of the interpolated
surface is needed. The weight specified (between zero and 0.5) is associated with the
thirdderivative terms; a higher weight value will produce a smoother surface. Spline
Tension, on the other hand, incorporates firstderivative terms into the minimization
criteria to produce a smooth surface. A weight of zero results in the theoretical ?thin
plate? Spline interpolation, while increasing weight values reduce the stiffness of the
?plate? such that the surface is more and more able to pass through the known point
values. Equation (211) is used for Spline surface interpolation.
?
=
+=
N
j
jjii
rRTS
1
)(? (21)
where
j
? = coefficient found by the solution of a system of linear equations;
r
j
= distance from the ith point (x
i
,y
i
) to the jth point (x
j
,y
j
);
j = 1,2,?,N where N is the number of points; and
T
i
and R(r) are defined differently based on the selected option.
For the Regularized option:
(212) yaxaaT
i 321
++=
26
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
++
?
?
?
?
?
?
+
?
?
?
?
?
?
?+
?
?
?
?
?
?
=
??
?
?? 2
ln1
2
ln
42
1
)(
2
2
r
c
r
Kc
rr
rR
o
(213)
For the Tension option:
1
aT
i
= (214)
()
?
?
?
?
?
?
++
?
?
?
?
?
?
?= ?
?
??
rKc
r
rR
o
2
ln
2
1
)(
2
(215)
where and are parameters entered at the command line;
2
?
2
?
r = distance between the point and the sample;
K
o
= modified Bessel function;
c = constant equal to 0.577215; and
a
i
= coefficient found by the solution of a system of linear equations.
Typically useful for dense regularly spaced data, Spline interpolation is generally
not recommended for interpolation of irregularly spaced data. It assumes smoothness of
variation to produce an aesthetically pleasing smooth surface which may mask
uncertainty or radical values in the data and produce inaccurate interpolation with more
outliers (Collins and Bolstad, 2003). Also, Spline interpolation provides no estimation of
error.
2.2.4 Natural Neighbor
Natural Neighbor, like IDW, is a weightedaverage interpolation method. A
raster surface is interpolated from input data points by first creating a TIN. The TIN is
constructed using the theory of Delauney Triangulation, where three points form a
triangle (as close to equilateral as possible), and a circle drawn through the nodes of the
triangle cannot include any other nodes. Nearby nodes form a convex hull around
27
unknown points and are weighted by proportionate area using a Theissen/Voroni
technique. A convex hull is defined as the smallest convex set containing a set of points.
This convex hull can be visualized as the shape of a rubber band that was stretched
around the set of points and then released to conform as closely as possible to the set
(Figure 2.12).
Figure 2.12: Convex hull
A Voronoi diagram (also known as a Theissen or Dirichlet tessellation) partitions
a plane into regions so that each point in a region is closer to its region?s site than to any
other site (Figure 2.13). A site exists at each vertex of a Delaunay triangle. To construct
a Voronoi diagram, construct perpendicular bisectors through the edges of Delaunay
triangles; the bisectors meet at the circumcenter of the triangle. The region surrounding a
data point and bound by the bisectors is a Voronoi region (Samet, 1997). All points
within the Voronoi region are closer to the interior triangle vertex than any other vertex.
A data set with N data points has N(N1)/2 possible edges. The triangulation is a
maximal set of these edges so that no edges intersect each other. If a convex hull of the
points has M vertices, the number of edges is 3NM3 and the number of faces (triangles)
is 2NM2.
28
Circumcircles
Delaunay triangles
Triangle bisectors
Triangle vertices
Circumcenters
Voronoi region
Figure 2.13: Voronoi diagram with Delaunay triangles
Natural Neighbor interpolation does not require specification of parameters such
as radius, number of neighbors, or weights, making it a great generalpurpose
interpolation method. According to ArcGIS Desktop Help, Natural Neighbor
interpolation is most appropriate when data points are distributed with uneven density.
2.3 TEMPORAL DATA MODELS
Temporal data consists of a sequence of (time, value) pairs for a specific type of
information (such as stage or flow), and its inclusion in geographic information systems
is necessary to compile a complete hydrologic data model for use within the GIS as well
as integration with water resources models operating independently of the GIS. It is only
with this integration that numerical models and simulation of dynamic processes can be
supported in a GIS (Dragicevic and Marceau, 1998). Ideally, an environmental model
would describe a variable continuously over space and time, but to date such models have
been limited by required computer time and memory as well as the lack of a sufficient
framework describing the role of temporal information in a spatial database (Maidment,
1996). This research tackles the complete representation of daily temporal data used to
simulate continuous hydrologic characteristics of the floodplain and presents a more
29
comprehensive framework for temporal integration into a GIS. Data storage has evolved
from relational databases to geodatabases with the addition of space, and now to temporal
geodatabases with the addition of temporal data (Figure 2.14).
Many challenges arise when trying to incorporate temporal data into a geospatial
context. First, the data must be retrieved and loaded into the spatial database. Second,
the data must be related to spatial features in a meaningful way. Third, the spatial and
temporal data must be processed for hydrologic and hydraulic analysis. Finally, the
spatial and temporal data must be accessed and displayed easily and intelligibly.
Water resources data is captured, stored, and often made available online by a
host of sources, such as the USGS National Water Information System (NWIS). Because
the data is available online, a customized application can be created to extract temporal
data from NWIS, load it into an Arc Hydro geodatabase, and link it with geospatial data
to enable hydrologic modeling. A great deal of work is involved in creating a custom
interface for each source of temporal data. Chapters 3 and 4 describe an alternate, more
generalized way of ingesting temporal data from online sources with an automated
interface model requiring little sitespecific customization. The interface model ingests
data from DBHydro (South Florida Water Management District?s water resources data
repository) and loads it directly into an Attribute Series table in a geodatabase.
30
Relational
Database
space
Geodatabase
time
Temporal
Geodatabase
Figure 2.14: Evolution of data storage to a temporal geodatabase
The ArcGIS Hydro data model, informally known as Arc Hydro, is comprised of
five components describing water resources data: hydrography, drainage, channels,
networks, and time series (Figure 2.15, Maidment, 2004). The first four spatial
components are stored as feature data sets in the complete Arc Hydro geodatabase, while
the final component is stored in a TimeSeries table, which describes timevarying
attributes of hydrologic features. The temporal data (table) is linked to spatial data
(point, line, or polygon feature classes) as appropriate. Chapter 4 presents an expanded
temporal Arc Hydro component (no longer confined to a single table) and describes its
utilization in the hydroperiod analysis of the Kissimmee River.
31
Figure 2.15: Components of the Arc Hydro Data Model (Maidment, 2002)
While various hydrologic and hydraulic models are commonly used to determine
engineering solutions to water resources questions, existing tools in ArcGIS were
sufficient for temporal geoprocessing required for hydroperiod analysis in South Florida.
(Temporal geoprocessing describes the analysis performed through space and time.)
Chapter 3 describes the collection of models created using ArcGIS tools to assess depth
and duration of inundation.
The Danish Hydraulic Institute (DHI) developed a Time Series manager to view,
plot, and analyze temporal data in ArcGIS and is continuing to develop software to
accommodate hydroperiod analysis, as performed in South Florida. Limited graphing is
available within ArcGIS; however, to dispel duplicate effort, no development or
automation of graphing was undertaken in this research. Excel graphing tools were used
to create the graphs included in Chapter 4. Additionally, using geographic location in
conjunction with temporal data, timeindexed shapes and map animations were produced
32
using ArcGIS Tracking Analyst. ArcGIS Tracking Analyst is able to animate simple,
static complex, or dynamic complex events (ESRI 1998). A simple event is characterized
by a single table containing a unique identifier, shape geometry, time, and value. A static
complex event (an Attribute Series) has changing (time, value) pairs associated with
fixed shapes, and a dynamic complex event (a Feature Series) has changing (time, value)
pairs associated with changing shapes. The Tracking Analyst creates a temporal layer
using a timecentric ideology; because the feature class is joined to the attribute series,
space is brought to time rather than time to space. The temporal layer created by the
Tracking Analyst is a temporary storage arrangement used to view the data and is not
permanently recorded.
33
Chapter 3: Model Development
When devising an approach to evaluate depth and duration of inundation in the
Kissimmee River, the first step was to develop a conceptual framework. The challenge
facing South Florida is to understand the magnitude of water depth and how it changes
through space and time. This challenge prompted exploration of existing and lacking
temporal geoprocessing tools available in GIS. Since most tools necessary to complete
the hydroperiod analysis were already available in GIS, building a usable tool for
hydroperiod analysis meant bringing the appropriate tools together, adding new tools
where necessary, and automating the analysis process. Geoprocessing tools in ArcGIS
are focused on spatial analysis. To achieve temporal geoprocessing (which is currently
not available in ArcGIS), the application of these tools must be sequenced through time.
Upon CRWR?s suggestion, the District agreed to accomplish temporal geoprocessing for
hydroperiod analysis using ModelBuilder in ArcGIS 9.0. The next steps, described in
this chapter, were to identify and gather all required input data, create models to produce
desired results, compile modular components to form overall models, and finally to
validate model results by comparing calculated water depth values with measured water
depth values.
3.1 DATA COMPILATION
The data used in hydroperiod analysis were provided by the South Florida Water
Management District. To support the District?s initiative to develop a single universal
data storage structure, an Arc Hydro Enterprise Database was created. Creation of this
database and several other projects underway in South Florida are completed by a team
composed of the SFWMD, PBS&J, and CRWR. There are five feature classes in the
database related to four synchronized projects, one of which is the hydroperiod analysis.
34
Data used in hydroperiod analysis is stored in two feature classes (Hydroperiod and
HandH), a raster catalog (currently a folder outside the geodatabase), and two tables, as
shown in Figure 3.1. Each feature, raster, and table is further described in this section.
Figure 3.1: AHED input data for hydroperiod analysis
Figure 3.2: 100year Floodplain with HydroperiodPoints and WaterZone
35
3.1.1 Floodplain
Floodplains are the product of hydrologic and hydraulic analysis. Additionally,
floodplains bound the region of consideration in an inundation study. The SFWMD
defined two 100year floodplains, one prior to and one following reconstruction. The
postreconstruction 100year floodplain boundary (Figure 3.2) is used to define the range
of inundation interpolation for hydroperiod analysis.
3.1.2 Habitat Zone
The HabitatZone polygon feature class (Figure 3.3) contains zones of biological
and ecological importance to South Florida. Each polygon in this feature class is
described by a habitat, a landscape name, a BCODE, and more (Figure 3.4). There are a
total of 5970 habitat polygons described by 30 habitat zones and 16 landscape zones.
Many polygons represent the same landscape but different habitat zones. This feature
class is used as input into the ModelBuilder statistics models so that daily averages,
maximums, minimums, etc. can be found in each zone.
Figure 3.3: HabitatZone polygon feature class
36
Figure 3.4: HabitatZone attribute table
3.1.3 Hydroperiod Points
The HydroperiodPoints point feature class (Figure 3.2) is a subset of the
MonitoringPoint point feature class in the AHED Arc Hydro dataset. This subset of
points is stored separately in the Hydroperiod feature dataset to simplify the automated
data ingest from DBHydro. (The temporal data query looks for time series data for every
point?s DBKEY in the file.) These points represent the monitoring stations in the river
and across the floodplain in Pool C along the Kissimmee River. During hydroperiod
analysis, these points are joined with their measured stage (time series values in Figure
3.8) and used to interpolate the daily water surface elevation grid.
3.1.4 Water Depth Points
The WaterDepthPoints point feature class contains 2183 points for which water
depth was measured in the field at irregular intervals over a four year time period (Figure
3.5). The data was collected in three different ways: HTOOL, Vegplot, and Hyperspec.
The HTOOL measurements of water depth were collected between August and October
of 2002 to establish a way of evaluating the accuracy of the hydroperiod analysis method.
HTOOL measurements were collected from an airboat at five points using a capped nine
37
foot long, half inch PVC pipe marked in one inch increments. Five depth measurements
(one at the preselected GPS coordinate and one at each corner of the airboat) were
collected, averaged, and recorded to the nearest inch.
Figure 3.5: 100year Floodplain with WaterDepthPoints
The VegPlot water depth measurements are collected two to three times per year
at 74 permanent plots and are used to evaluate vegetative response to restoration. Depth
is measured with a meter stick at five locations in each 5 m X 20 m plot (one at each of
four corners and one in the center); the mean depth recorded for each plot is the average
of the five measurements.
Hyperspec depth measurements were also collected between August and October
of 2002 and provide ground truthing for vegetative hyperspectral imagery. Hyperspec
depth values were measured at five locations within a five meter radius of randomly
selected GPS coordinates; the mean depth recorded for each coordinate is the average of
the five measurements.
38
Depth values of 999 represent locations where the water was deeper than one
meter, and values of 888 represent locations where the water level could not be measured.
VegPlot and Hyperspec measurements are recorded to the nearest foot (rather than
nearest inch) and therefore are not precise enough to be used in evaluating the accuracy
of hydroperiod results.
In this research, depth values at points measured with the HTOOL method were
used to compare the interpolated water depth values throughout the floodplain with the
field measured water depth values. This comparison is expected to yield information
regarding the interpolation method that produces the most accurate water depth values
and to check the validity of the water depth values estimated by hydroperiod analysis.
3.1.5 Water Zone
The WaterZone polygon feature class is a zone of water provided by SFWMD
(Figure 3.2). This feature class is used to weight the water surface elevation (WSE) in
the river (as compared to the WSE measured in the floodplain) during water surface
interpolation. Points are added at userdefined distances along the river whose water
surface elevation is linearly interpolated using the slope down the river. These points are
added to the floodplain WSE points and are collectively used to generate a water surface
elevation grid over the floodplain. This feature class may also be used as input to
statistical models. The WaterZone polygon is used in conjunction with the floodplain
polygon to calculate zonal statistics of the water volume grid. These statistics are used to
compare water volume and movement in the river versus the floodplain.
3.1.6 Raster Catalog
Raster Catalog is available in the ArcGIS 8.3 and future releases (Figure 3.6(a)).
A Raster Catalog can be added to a geodatabase in the same way that a feature dataset is
added. The contents of the Raster Catalog can be viewed in table format in the Contents
tab and in raster format in the Preview tab in ArcCatalog. The Raster Catalog contains
one record for each raster stored in the catalog. That record stores the name, shape, and
39
other desired attributes. TSDateTime and TSTypeID were added to the Raster Catalog to
make a Raster Series. (Raster Series is one of the components of the enhanced Arc
Hydro Time Series data model and is described in Section 4.4.3.) SQL queries may be
executed to manage data in a Raster Catalog.
(a) Raster Catalog view of ponded depth rasters
(b) File Folder view
Figure 3.6: View of rasters in a Raster Catalog and File Folder
40
Eventually, the Raster Catalog should contain all rasters used as input and
generated during the hydroperiod analysis. Currently, the Raster Catalog cannot be used
in conjunction with ModelBuilder because a Raster Catalog dataset is not recognized in
an input or output path string. Therefore, all rasters are temporarily stored in folders
outside the geodatabase (Figure 3.6(b)). The rasters in this catalog will include two land
surface elevation (LSE) rasters (Figure 3.7(a))?one preconstruction and one post
construction?along with the daily water surface elevation (WSE) raster (Figure 3.7(b)),
daily ponded depth (PD) raster (Figure 3.7(c)), and daily volume (VOL) rasters (Figure
3.7(d)). The pre and postconstruction land surface elevation rasters exist and the daily
WSE, PD, and VOL rasters are generated in the hydroperiod analysis. The pre
construction land surface elevation grid should be used when analyzing data through
December 2000 and the postconstruction land surface elevation grid should be used
starting January 2001. The preand postconstruction grids are discussed further in
Section 4.1.
(a)Land surface
elevation raster
(b)Water surface
elevation raster
(c) Ponded depth
raster
(d) Volume raster
Figure 3.7: Input and output rasters from hydroperiod analysis
3.1.7 Attribute Series
The AttributeSeries table (Figure 3.8) stores time and value pairs associated with
a FeatureID and a HydroCode. TSValue represents the daily stage or water surface
elevation in feet. The FeatureID corresponds to the HydroID of the HydroperiodPoint
feature class and is used to relate the time series data to monitoring stations. The
HydroCode field populates the station name which makes the table more userfriendly.
This table is populated using the automated DBHydro data ingest tool, which is called
from ModelBuilder.
41
Figure 3.8: AttributeSeries table
Temporal data is queried from DBHydro based on DBKEY, Start Date, and End
Date. DBHydro is an Oracle database which stores historic and current hydrologic,
meteorologic, hydrogeologic, and water quality data for the South Florida Water
Management District. Some data stored in this table is made available to the public
online via the DBHydro Browser (http://www.sfwmd.gov/org/ema/dbhydro/index.html).
A DBKey is a unique identifier of time series data and is assigned programmatically in a
sequential manner. An example DBKey is J8947 (Figure 3.9). More than one DBKey
may be used to describe the same parameter (i.e. stage) at one gage. For example,
DBKey J8948 is associated with breakpoint stage data at gage PC31, while DBKey
J8947 is associated with daily stage data for the same gage (Figure 3.10). In other
instances, different DBKeys may be assigned to the same gage for data recorded over
different time periods or collected using different methods. The hydroperiod method
described in this thesis allows only one DBKey per stage gage. In most cases, only one
time series per gage and thus, one DBKey, is of interest. However, if multiple DBKeys
are desired for the same stage gage, the analysis must be completed separately for each
DBKey.
42
Figure 3.9: DBHydro Browser
Figure 3.10: Duplicate DBKeys for stage data stored in DBHydro
3.1.8 TSType Table
The TSType table (Figure 3.11) is populated from information parsed from the
header that is provided when temporal data is downloaded from DBHydro. The loading
of this data into the TSType table will eventually be automated in the data ingest tool,
DBIngest, which is called from Model Builder. The TSType table records are populated
43
by hand for now, but can be automated using XML (described in Section 3.2.1). The
TSType table contains the type, interval, origin, units, and other attributes describing the
data in the Attribute Series table. A separate record exists for each TSTypeID (time
series type such as rainfall, stage, flow, etc.), and zero to many records in the Attribute
Series table may be described by each TSTypeID.
Figure 3.11: TSType table
44
3.2 MODEL CONSTRUCTION
The hydroperiod analysis was automated using a series of modular components
constructed in ModelBuilder. The design was kept modular to facilitate comprehension,
to simplify operations and maintenance, and to give the user flexibility regarding the
combination of methods and results desired for each analysis. There are six major
modular components, as shown in Figure 3.12, each containing one or more models and
scripts: (1) DBHydro Data Ingest, (2) River Interpolation, (3) Generate Rasters, (4)
Classify Depths, (5) Calculate Volume, and (6) Calculate Statistics. Models and scripts
from each component are organized into several toolsets within one toolbox (Figure
3.13). Table 3.1 summarizes the input data, input parameters, and output data for each
model in all six components.
ModelBuilder was developed by ESRI as a userfriendly way to build spatial
models (ESRI, 2002). The model is represented by a process flow diagram, which makes
it easy to construct, modify, and present to others. Existing ArcGIS predefined functions
are stored as tools in ArcToolbox, and Visual Basic scripts can be written to create new
tools. These tools can be selected and dropped into a model flow diagram as desired,
along with input data. A model can be called from within a model, meaning that smaller
models can be combined to create a larger model. Additionally, models can have user
defined parameters that change with every run. A tutorial for applying ModelBuilder to
the hydroperiod analysis is presented in Appendix A.
45
dbhydro data ingest
river interpolation
transfer temporal data from dbhydro create extra points for riverweighted interpolation
to geodatabase
time series
Point Spacing
(1) (2)
generate rasters classify depths
ponded depth classes, grid to polygon
surface water, ponded depth grids
userdefined depth classes
water surface
land surface
time series depth class polygons
ponded depth
(3) (4)
calculate volume calculate statistics
water volume in river, floodplain and system ponded depth statistics over userdefined
zones and time periods
statistics
x = t3
t2
cell area
60 ft x 60 ft
t1
ponded depth max(t1t3)
ponded depth water volume mean(t1t3)
habitat zones
min(t1t3)
(5) (6)
Figure 3.12: Modular components of hydroperiod analysis
46
Figure 3.13: Hydroperiod Toolbox summary of models and scripts
47
Table 3.1: Input Data, Parameters, and Output Data of Models
DBIngest: DBIngest
Input Data Input Parameters Output Data
A.1in HydroperiodPoints feature
class
StartDate (YYYYMMDD) to begin
retrieving temporal data
A.1out Attribute Series table in
Arc Hydro format
EndDate (YYYYMMDD) to stop
retrieving temporal data
River Interpolation: Centerline
Input Data Input Parameters Output Data
B.1in Pst_hydrop (waterzone
polygon) feature class
None B.1out Final Centerline feature
class (waterzone line)
River Interpolation: RiverWeightedPoints
Input Data Input Parameters Output Data
C.1in (same as A.1out)
Attribute Series table
TSDateTime Query to select data
from the Attribute Series table
C.1out Floodplain and Waterzone
Points (aka InterpPoints) point
feature class (stage points + new
points along centerline to be used
in riverweighted interpolation)
C.2in (same as A.1in)
HydroperiodPoints feature class
TSValueExists? Selects only
points with nonnull stage values
to be used for interpolation
C.3in Model Features
(Database and Dataset in which
to create a new point feature
class)
C.2in (same as B.1out)
Waterzone Centerline (line along
which to create points)
Generate Rasters: GenerateRastersPart1
Input Data Input Parameters Output Data
D.1in (same as A.1out)
Attribute Series table
TSDateTime Query to select data
from the Attribute Series table
D.1out HPwTSValue Layer (layer
file containing hydroperiod points
joined with temporal data)
D.2in (same as A.1in)
Hydroperiod_Point feature class
TSValueExists? selects only
points with nonnull stage values
to be used for interpolation
Generate Rasters: GenerateRastersPart2_IDW
Input Data Input Parameters Output Data
E.1in (same as D.1out)
HPwTSValue Layer
Output cell size for interpolated
water surface elevation raster
E.1out Ponded Depth Raster
(daily depth of inundation)
produced by IDW interpolation
E.2in LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
Search radius to be specified as
fixed or variable
Power to determine point
influence related to distance
Cell size of output ponded depth
raster
48
Generate Rasters: GenerateRastersPart2_Kriging
Input Data Input Parameters Output Data
F.1in (same as D.1out)
HPwTSValue Layer
Ordinary or Universal? specifies
the type of kriging to be executed
F.1out Ponded Depth Raster
(daily depth of inundation)
produced by Kriging interpolation
F.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
WSE Grid cell size for
interpolated water surface
elevation raster
PD Grid cell size for output
ponded depth raster
Generate Rasters: GenerateRastersPart2_NN
Input Data Input Parameters Output Data
G.1in (same as D.1out)
HPwTSValue Layer
WSE Grid cell size for
interpolated water surface
elevation raster
G.1out Ponded Depth Raster
(daily depth of inundation)
produced by Natural Neighbors
interpolation
G.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
PD Grid cell size for output
ponded depth raster
Generate Rasters: GenerateRastersPart2_Spline
Input Data Input Parameters Output Data
H.1in (same as D.1out)
HPwTSValue Layer
Spline type (regular or tension) H.1out Ponded Depth Raster
(daily depth of inundation)
produced by Spline interpolation
H.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
WSE Grid cell size for
interpolated water surface
elevation raster
PD Grid cell size for output
ponded depth raster
Classify Depths: ClassifyDepths
Input Data Input Parameters Output Data
I.1in (same as E,F,G,or H.1out)
Daily Ponded Depth Grid
Reclassification intervals, ranges,
and eliminations (can be
stored/loaded as a table or
defined uniquely for each run)
I.1out Master Ponded Depth
feature class with each depth
class represented by a single
polygon
TSDateTime to attach to each
depth class polygon
Ponded Depth feature class
(append new polygons to)
Calculate Statistics: TemporalStatistics
Input Data Input Parameters Output Data
J.1in (same as E,F,G,or H.1out)
Daily Ponded Depth Grid
Overlay statistic for which to
calculate Temporal Statistics
J.1out Output cell statistics raster
with the overlay statistic
calculated for each cell
49
Calculate Statistics: ZonalStatistics
Input Data Input Parameters Output Data
K.1in (same as E,F,G,or H.1out)
Daily Ponded Depth Grid
TSDateTime to attach to each set
of zonal statistics
K.1out ZonalStats output table
(master zonal statistics table with
one row per zone/date combo)
K.2in Habitat Zones feature
class
Calculate Statistics: SpatialStatistics
Input Data Input Parameters Output Data
L.1in (same as K.2in)
Habitat Zone feature class
None L.1out Spatial Statistics Table
with each row describing a zone
over time
L.2in (same as J.1out)
Cell Statistics Raster
Calculate Statistics: SummaryStatistics
Input Data Input Parameters Output Data
M.1in (use K.1out or L.1out)
Spatial or Zonal Statistics table
Case field by which to group
summary statistics for each
unique value
M.1out Summary Stats with
Range Value is the final summary
statistics table with all statistics
(including range) calculated for
the case field
Statistics field to be applied to
fields in the input table
Range between MIN and MAX is
the expression statement to
calculate RANGE as the max
minus the min value
Calculate Statistics: OverallStatistics
Input Data Input Parameters Output Data
N.1in (same as E,F,G,or H.1out)
Daily Ponded Depth Grid
Overlay statistic for which to
calculate Temporal Statistics
N.1out (same as J.1out) Raster
with cell statistic values
N.2in (same as K.2in)
Habitat Zone feature class
Case field by which to group
summary statistics for each
unique value
N.2out Overall spatial and
temporal statistics table
Statistics field to be applied to
fields in the input table
N.3out Summary Stats with
Range Value is the final Overall
Summary Statistics Table
Calculate Volume: CalculateVolume
Input Data Input Parameters Output Data
O.1in (same as E,F,G,or H.1out)
Daily Ponded Depth Grid
Value = 0 represents a where
positive clause to select only
positive depths from the Daily
Ponded Depth Grid to be used to
generate the Daily Cell Volume
Grid
O.1out Daily Cell Volume Grid
represents all positive volumes in
the Pool C river/floodplain system
Cell Area = 3600 ft^2 to be used
in calculating the volume (cell
area X depth)
50
Overall Models: OverallBio
Input Data Input Parameters Output Data
P.1in (same as A.1in)
HydroperiodPoints feature class
Model.mdb is the database in
which to store the output Attribute
Series table
P.1out Master Ponded Depth
feature class with each depth
class represented by a single
polygon
P.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
Overall Models: OverallWQDaily
Input Data Input Parameters Output Data
Q.1in (same as A.1in)
HydroperiodPoints feature class
Model.mdb is the database in
which to store the output Attribute
Series table
Q1.out Summary Stats with
Range Value is the final summary
statistics table with all statistics
(including range) calculated for
the case field
Q.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
Q.3in (same as K.2in)
Habitat Zone feature class
Overall Models: OverallWQCell
Input Data Input Parameters Output Data
R.1in (same as A.1in)
HydroperiodPoints feature class
Model.mdb is the database in
which to store the output Attribute
Series table
R.1out Spatial Statistics Table
with each row describing a zone
over time
R.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
R2.out Summary Stats with
Range Value is the final summary
statistics table with all statistics
(including range) calculated for
the case field
R.3in (same as K.2in)
Habitat Zone feature class
Overall Models: OverallHydroArea
Input Data Input Parameters Output Data
S.1in (same as A.1in)
HydroperiodPoints feature class
Model.mdb is the database in
which to store the output Attribute
Series table
S1.out Summary Stats with
Range Value is the final summary
statistics table with all statistics
(including range) calculated for
the case field
S.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
S.3in (same as K.2in)
Habitat Zone feature class
51
Overall Models: OverallHydroTime
Input Data Input Parameters Output Data
T.1in (same as A.1in)
HydroperiodPoints feature class
Model.mdb is the database in
which to store the output Attribute
Series table
T.1out Output cell statistics raster
with the overlay statistic
calculated for each cell
T.2in (same as E.2in)
LSE Raster (pre or post
reconstruction land surface
elevation grid based on time
period evaluated)
T.2out Spatial Statistics Table
with each row describing a zone
over time
T.3in (same as K.2in)
Habitat Zone feature class
3.2.1 DBHydro Data Ingest
Temporal data is retrieved from the DBHydro Browser using the DBIngest model.
The script tools in this model access Visual Basic source code compiled as dynamic link
libraries (DLLs). DBIngest tools were created by Timothy Whiteaker and Oscar Robayo
at the CRWR and were adapted for this project. The objective of the DBIngest model is
to populate an Arc Hydro Attribute Series table with temporal data downloaded from the
DBHydro browser. In other words, the model serves as a data bridge between DBHydro
and Arc Hydro. The data ingest is dependent on the ability to access temporal data
through a Uniform Resource Locator (URL). Once the desired data is queried, it is
downloaded from the webpage into eXtensible Markup Language (XML). The data is
then converted and transferred from XML format into Arc Hydro table format. The
model, scripts, and source files used in this process are briefly described in Figure 3.14.
The InputXML script tool gathers websitespecific inputs (Figure 3.15(a)) from
the user through the Model Builder graphical user interface (Figure 3.15(b)) and converts
these input parameters to XML to be used in querying the temporal data. The
Web2TSXML script tool then constructs the URL (Figure 3.15(c)) to access the webpage
storing the temporal data, retrieves and parses the data, and writes the data to XML
52
(Figure 3.15(d)). Finally, the XML2GDB script tool converts and imports the data from
XML format into an Arc Hydro Attribute Series table in a geodatabase (Figure 3.15(e)).
Binary form of Source Code
Intermediate Communication between
DLLs & MB model
Visual Basic Source Code
Provides components and instructions
to Source Code (i.e. formatting,
parsing)
Convert user inputs to XML
Model Builder
Script Tools
Build URL and extract web data to
XML file
Load XML Data into GDB
Model Builder Model to automate
data ingest from DBHydro
Figure 3.14: DBHydro Data Ingest Toolbox
(a) DBHydro Browser Query
(b) DBIngest GUI Input Parameters
53
(c) URL to access temporal data from DBHydro
(d) Temporal Data in XML
(e) Arc Hydro AttributeSeries table
Figure 3.15: Data Ingest from DBHydro to Arc Hydro via ModelBuilder
The DBIngest model (Figure 3.16) brings all three scripts together to automate the
process. Using this model, ten years of temporal data for all monitoring stations in the
Pool C floodplain can be downloaded from DBHydro and loaded into an Attribute Series
table in less than one minute.
54
Figure 3.16: DBIngest model
In ModelBuilder, light blue ovals correspond to input parameters, dark blue ovals
correspond to input data, green ovals correspond to output data, and yellow boxes
correspond to tools, which can be preexisting ArcGIS tools or new tools stored as scripts.
Scripts are designated with the white and blue scroll symbol on the tool icon while
preexisting ArcGIS tools are designated with a hammer on the tool icon. When a model
is stored inside another model, the model is stored in a yellow box with a
blue/yellow/green model icon. The letter P designates an object as a model parameter,
which may consist of a file path, an expression, or a query.
3.2.2 River Interpolation
Water surface interpolation is performed with extra weight given to points along
the Kissimmee River. Riverweighted interpolation is desirable partially because the
river and floodplain behave differently. The floodplain is covered in diverse vegetative
communities while the river remains relatively flat and undisturbed. When water is
released through the upstream water control structures, the water level in the river rises
faster than the water level in the floodplain. Likewise, the water level in the river recedes
faster than the water level in the floodplain. Riverweighted interpolation is also
55
desirable because there are currently an insufficient number of monitoring stations in the
river and floodplain system.
According to Steve Lin of the SFWMD (2004), the existing network of
monitoring stations provides adequate data for spatial analysis only for flows over 2000
cfs, which account for less than 10% of flow conditions. The network is considered
?adequate? when all monitoring stations measure a water surface elevation above the land
surface elevation, which occurs only for flows over 2000 cfs. Lin continued to report that
flow in the river is usually (6070% of the time) less than 1000 cfs and only a few
monitoring stations close to the river are inundated while the rest of the gages are dry
(water surface elevation is below land surface elevation). Under these conditions, spatial
analysis must be performed using very few points of inundation. Most spatial
interpolation methods rely on a number of surrounding point values, but the paucity of
monitoring stations causes weight to be placed on points that are too far away from the
point of interest. Adding points along the river allows the river to have greater influence
in the water surface interpolation.
Before points may be created along the centerline of the waterzone polygon
(Figure 3.17), the polygon must be thinned to a single line. This is accomplished in the
Centerline model (Figure 3.18). The waterzone polygon is first converted to a raster,
then ?thinned?. The ?thin? function reduces the number of cells used to represent a raster
surface; in this case, the number of cells is reduced to one. Next, the thin raster is
converted to a polyline, which is dissolved to produce a single final centerline used as
input into the RiverWeightedPoints model.
56
Figure 3.17: Centerline through the WaterZone polygon
Figure 3.18: River Interpolation Centerline model
To accomplish riverweighted spatial interpolation, the RiverWeightedPoints
model creates additional points along the centerline of the waterzone (Figure 3.19).
Monitoring stations with existing stage values for the selected day are used as one of
three inputs into a CreateNewPoints script. The two other inputs are the centerline of the
waterzone and a newly created empty point feature class. The CreateNewPoints script
creates additional points along the river to be used in riverweighted interpolation (Figure
3.20). Points are created along the centerline at spacing selected by the user. The points
can be as concentrated or spread out as desired; however, for consistency, the user may
57
wish to space the points along the river at similar spacing to those points measured across
the floodplain. Transects are spaced approximately 1.52 miles apart, and points along
each transect are spaced approximately 2000 feet apart. For this reason, new points are
spaced at 2000 feet along the river in Figure 3.20. The value of each new point is linearly
interpolated between the measured points in the river. The newly created points (green)
are added to the existing monitoring points (blue) and output to the point feature class
previously created. This new set of points is used to interpolate a water surface over the
entire floodplain using any of the GenerateRastersPart2 models. Water stage changes by
only 1.79 feet over nearly 15 river miles, resulting in a downward slope of 0.24%.
Figure 3.19: RiverWeightedPoints model
58
34
34.5
35
35.5
36
36.5
37
0 1020304050607080
Distance from top of Pool C, 1000s of river feet
W
a
ter
S
t
ag
e,
f
eet
Interpolated Point
Measured Point
Figure 3.20: Measured and interpolated points along the river
Some errors could not be reconciled when upgrading the models and scripts from
ArcGIS 9.0 Beta II to ArcGIS 9.0 Prerelease. One such error is encountered when
running the RiverWeightedPoints model. The tools are executed and the desired output is
produced; however, the model freezes on the last tool and will not end the run without
manual interception. Such a problem hinders this model from being incorporated into a
string of models or a looping script. For this reason, no analysis of the Kissimmee River
was completed with riverweighted spatial interpolation. This problem is expected to be
resolved in the full release of ArcGIS 9.0.
3.2.3 Generate Rasters
59
The Generate Rasters toolset consists of a GenerateRastersPart1 model (Figure
3.21), four GenerateRastersPart2 models?one each for IDW (Figure 3.22), Kriging
(Figure 3.23), Natural Neighbors (Figure 3.24), and Spline (Figure 3.25) interpolation
methods?and a GenerateRastersBatch script. The GenerateRastersPart1 model can be
combined with any GenerateRastersPart2 model to interpolate a water surface and
determine the ponded depth grid for a single day. The GenerateRastersBatch script is
used to loop through the Generate Rasters model duo over the time period entered by the
user. With the identify cursor on the ponded depth output raster, a user can identify the
depth of inundation at any point in the floodplain. The output from these models is
required as input to all other models.
The GenerateRastersPart1 model selects a single day of stage measurements from
the Attribute Series table and joins that selection with the hydroperiod point features.
Nonnull stage measurements are selected and written to a layer file for use in a
GenerateRastersPart2 model. The GenerateRastersPart2 models are very similar, with
the only major difference being the tool representing interpolation method. In addition,
the input parameters vary according to interpolation method. For example, Inverse
Distance Weighting parameters include search radius and power, while Kriging has only
one parameter to select ordinary or universal kriging. In general, the part two models are
used to interpolate a water surface using the water level as the ?Z Value field? and 60 feet
as the cell size. The land surface elevation grid is then subtracted from the interpolated
water surface elevation grid to produce a ponded depth grid. While the ponded depth
grid is useful on its own, it is also used as input to all the other models.
60
Figure 3.21: GenerateRastersPart1 model
Figure 3.22: GenerateRastersPart2_IDW model
61
Figure 3.23: GenerateRastersPart2_Kriging model
Figure 3.24: GenerateRastersPart2_NN model
Figure 3.25: GenerateRastersPart2_Spline model
62
The GenerateRastersBatch script calls the GenerateRasters models in series,
looping them through the time period specified by the user. A portion of the
GenerateRastersBatch looping script is shown in Figure 3.26 (the entire script is included
in Appendix B). First, a geoprocessor (referred to as ?gp? in the script) is created, along
with required DLLs (Figure 3.26(a)). The geoprocessor loads the Hydroperiod Toolbox
and (starting in ArcGIS 9.0 Prerelease) must ?check out? or invoke the Spatial Analyst
and 3D Analyst extensions when tools from those toolsets are included in a model called
by the script (Figure 3.26(b)). Input data, parameters, and output data locations may be
hardcoded in the script but for more flexibility should be listed as parameters of the
script (Figure 3.26(c)). The argument names, data types, and properties (including
default values) can be added, deleted, or changed in the model and through the
Parameters tab of the script Properties (Figure 3.27). Parameters should be identified in
the script in the order listed on the Parameters tab. When entered by this method, the
arguments are requested from a graphical user interface (GUI) at the time the script is
run.
After the geoprocessor is created, all extensions are checked out, and necessary
parameters are defined, a looping routine executes the appropriate models once per time
step for as many time steps as are included in the specified period of analysis (Figure
3.26(d)). Within the looping routine, the model is called by the geoprocessor (Figure
3.26(e)). The arguments following the model name are listed on the Parameters tab of
the model Properties, and correlate to everything in the model specified as a model
parameter. Consider the GenerateRastersPart2_IDW model, which has six model
parameters (identified by the ?P? to the upper right of icons in the flow sequence). The
Parameters tab of the model Properties lists these six parameters in the order they must be
63
listed following the model in the script (Figure 3.28). Error messages are also sought for
any problems encountered in executing the model (Figure 3.26(f)).
' Create the GP and dll objects
(a)
set gp = WScript.CreateObject("esriGeoprocessing.GPDispatch.1")
set pDLL = WScript.CreateObject("FlordiaOps.clsGeneralTools")
' Load required toolboxes...
(b)
gp.AddToolbox WorkingTempDirectory & "\HydroPeriod Toolbox.tbx"
gp.CheckOutExtension("Spatial")
gp.CheckOutExtension("3D")
(c)
' Input variables to be entered by user into GUI
HydroPeriodPoints = wscript.arguments.item(0)
TimeSeries = wscript.arguments.item(1)
LSEGrid = wscript.arguments.item(2)
CurrentDate = wscript.arguments.item(3)
EndDate = wscript.arguments.item(4)
GridPath = WScript.arguments.item(5)
' Set current and finish dates
Current = DateValue(CurrentDate)
Finish = DateValue(EndDate)
(d)
' Process: Generate Rasters
Do Until Current > Finish
' Set daily grid files
If month(Current) < 10 then CurrentMonth = "0" & month(Current)
Else CurrentMonth = month(Current)
End if
If day(Current) < 10 then CurrentDay = "0" & day(Current)
Else CurrentDay = day(Current)
End if
CurrentYear = year(Current)
' Prepare output path for PD Grid
PDGrid = Cstr(GridPath) & "\PD" & CurrentMonth & CurrentDay & CurrentYear
' Set query, output date, and z value
TSDateTimeQuery = "[TSDateTime] = #" & CStr(Current) & "#"
TSDateTime = "#" & Cstr(Current) & "#"
ZValue = "TSSelect.TSValue"
(e)
' Call models
gp.GenerateRastersPart1 TimeSeries, TSDateTimeQuery, HydroPeriodPoints
gp.RefreshCatalog WorkingTempDirectory & "\Model.mdb"
gp.GenerateRastersPart2_IDW PDGrid, LSEGrid
gp.RefreshCatalog WorkingTempDirectory & "\Model.mdb"
' Next day
Current = Current + 1
Loop
(f)
' Check for errors
If gp.getmessages(2) <> "" then msgbox gp.getmessages(2)
Else msgbox "Complete!"
End If
Figure 3.26: Part of the GenerateRastersBatch looping script
64
Figure 3.27: GenerateRastersBatch script parameters to be specified in GUI
Batch scripts are used to loop day by day through the set of functions included in
one or more models. Geoprocessing is accomplished within each model, but temporal
geoprocessing is only accomplished by using batch scripts to loop through the models.
The GenerateRastersBatch, ClassifyDepthsBatch and ZonalStatisticsBatch scripts are
currently not working; the CalculateVolumeBatch script is working. Errors incurred in
upgrading from ArcGIS 9.0 Beta II to Prerelease remain unresolved, but are expected to
be rectified in the final release of ArcGIS 9.0. Since the batch scripts operate similarly
(both in terms of looping and unresolved errors), they will not be discussed in detail.
65
Figure 3.28: Determining model parameters to be called in scripts
3.2.4 Classify Depths
The Classify Depths toolset consists of a ClassifyDepths model and a Classify
DepthsBatch script. The ClassifyDepths model (Figure 3.29) classifies the ponded depth
grid into user defined depth intervals and converts the grid into dissolved polygons, with
each polygon representing a single depth class. The model is designed to complete all
functions for a single day. Then, the ClassifyDepthsBatch script is used to loop day by
day through the ClassifyDepths model over the time period entered by the user.
66
Figure 3.29: ClassifyDepths model
The user is able to classify the ponded depth grid using equal intervals, defined
intervals, manual settings, or a classification table. The user may load a stored table of
depth class intervals or may select new intervals via the classification GUI, shown in
Figure 3.30. This is the same GUI accessed through the symbology tab of a feature?s
properties in ArcMap. Based on the user specified depth intervals, the Reclassify tool
produces a classified ponded depth grid. This classified grid is then converted to
classified polygons, which are dissolved based on depth class. All polygons sharing the
same depth class (whether adjacent or not) are dissolved to a single feature. The date is
attached to each polygon and then appended to a master ponded depth polygon feature
class. The master ponded depth polygon feature class stores one record for each depth
class for each day. The depth classes are used to identify regions where wading birds,
fish, and vegetative species will thrive, suffer, or be able to migrate safely (according to
the depth interval corresponding to each condition).
67
Figure 3.30: Depth classification GUI
After ponded depth is calculated, it can be classified into depth classes. Depth
class D
m
occurs when water depth is between c
m1
and c
m
(Figure 3.31, Equation (31)).
The annotation [ represents a closed interval including all values greater than or
equal to c
]
mm
cc ,
1?
m1
and less than c
m
(i.e. c
m1
? d
i,j
< c
m
). Depth class D
m
occurs when water
depth is between c
m1
and c
m
(Figure 3.31, Equation (31)).
Depth class boundaries c
0
c
1
c
2
c
3
? c
M1
c
M
Depth classes D
1
D
2
D
3
D
M
Figure 3.31: Depth classes and their boundaries
68
(31) [
mmm
ccD ,
1?
= ]
Next, the ponded depth grid is classified into depth class zones (of zone type g and
subdomain R
g
). For a given time interval j, polygon zone p, and depth range m, the area
of inundation A
j,p,m
is calculated using Equation (32a), which is the sum of the area of all
cells in polygon zone p with water depth in D
m
depth class. Similarly, for a given time
interval j, depth class zone g, and depth range m, the area of inundation A
j,g,m
is
calculated using Equation (32b), which is the sum of the area of all cells in depth class
zone g with water depth in D
m
depth class. In domain R, the area in each depth class for
a given depth range m and time interval j, A
j,m
, is calculated using Equation (32c). This
is calculated as the sum of the cell areas in domain R for which water depth is in depth
class D
m
. The Dirac delta function
mji ,,
? is equal to one when the water depth d
i,j
is
within D
m
depth class or is equal to zero otherwise, as defined in Equation (33).
(32a)
?
?
?=
p
Ai
mjiimpj
aA
,,,,
?
?
?
?=
g
Ai
mjiimgj
aA
,,,,
? (32b)
?
?
?=
Ri
mjiimj
aA
,,,
? (32c)
?
?
? ?
=
otherwise
Dd
mji
mji
0
1
,
,,
? (3)
3.2.5 Calculate Statistics
The Calculate Statistics toolset consists of several models: Temporal Statistics,
Zonal Statistics, Spatial Statistics, Summary Statistics, and Overall Statistics. The toolset
also includes a ZonalStatisticsBatch script. Central to grasping why so many statistical
models are necessary is understanding three different ways commonly used by biologists
69
to calculate mean, minimum, maximum and other statistics: (1) the daily average
approach, (2) the cell average approach, and (3) the all data approach.
Consider the information presented in Table 3.2, which consists of five threecell
rasters produced on five days. The table explains the three approaches as they pertain to
calculating mean, but the approach is similar for other statistics calculations. In the daily
average approach (yellow), a single day?s cell values are averaged spatially to produce a
daily average (sample size = 3); the daily average values are then averaged temporally to
produce the overall average (sample size = 5). Mathematically, daily mean water depth
across a zone of cells is calculated using Equation (34) and overall mean water depth
(averaged first across a zone of cells, then averaged through time) is calculated using
Equation (35). Likewise, daily minimum water depth across a zone of cells is calculated
using Equation (36) and overall minimum water depth (minimum across a zone of cells,
then averaged through time) is calculated using Equation (37). For each equation, part
(a) corresponds to the depth averaged over a polygon zone and part (b) corresponds to the
depth averaged over a depth class grid zone. Minimum depth is shown as a sample of a
statistical calculation other than average; maximum depth is calculated similarly. The
daily average approach is accomplished by executing the ZonalStatistics model followed
by the SummaryStatistics model.
?
?
=
p
Ai
ji
p
pj
d
A
d
,,
1
(34a)
?
?
=
g
Ai
ji
g
gj
d
A
d
,,
1
(34b)
?
?
=
*
,,
*
1
Tj
pjpj
d
T
d (35a)
?
?
=
*
,,
*
1
Tj
gjgj
d
T
d (35b)
ji
Ai
pj
dd
p
,(min),
min
?
= (36a)
ji
Ai
gj
dd
g
,(min),
min
?
= (36b)
70
?
?
=
*
(min),(min),
*
1
Tj
pjpj
d
T
d (37a)
?
?
=
*
(min),(min),
*
1
Tj
gjgj
d
T
d (37b)
In the cell average approach (blue), a single cell is averaged temporally to
produce a cell average (sample size = 5); the cell average values are then averaged
spatially to produce the overall average (sample size = 3). Mathematically, mean water
depth in each cell drilled through time is calculated using Equation (38) and overall
mean water depth (averaged first by drilling through time for each cell, then by averaging
spatially across cells) is calculated using Equation (39). Likewise, daily minimum water
depth in each cell drilled through time is calculated using Equation (310) and overall
minimum water depth (minimum by drilling through time for each cell, then by averaging
spatially across cells) is calculated using Equation (311). The cell average approach is
accomplished by executing the TemporalStatistics model followed by the Spatial
Statistics model.
?
?
=
*
,
*
1
Tj
jii
d
T
d (38)
?
?
=
p
Ai
i
p
pi
d
A
d
1
,
(39a)
?
?
=
g
Ai
i
g
gi
d
A
d
1
,
(39b)
ji
Tj
i
dd
,
*
(min)
min
?
= (310)
?
?
=
p
Ai
i
p
pi
d
A
d
(min)(min),
1
(311a)
?
?
=
g
Ai
i
g
gi
d
A
d
(min)(min),
1
(311b)
71
In the all data approach, all measured data are averaged simultaneously, both
spatially and temporally to produce the overall average (sample size = 15).
Mathematically, the overall average depth (average of all values over space and time) is
calculated using Equation (312), while the overall minimum depth (minimum of all
values over space and time) is calculated using Equation (313). The all data approach is
accomplished by executing the TemporalStatistics model followed by the
SummaryStatistics model.
??
??
?
=
p
AiTj
ji
p
pji
d
AT
d
*
,,,
*
1
(312a)
??
??
?
=
g
AiTj
ji
g
gji
d
AT
d
*
,,,
*
1
(312b)
ji
TjAi
pji
dd
p
,
*
(min),,
minmin
??
= (313a)
ji
TjAi
gji
dd
g
,
*
(min),,
minmin
??
= (313b)
Equations (35), (39), and (312) represent the overall means calculated from the
three different methods. The mean will be the same regardless of the method used, but
the minimum, maximum, sample size, and standard deviation will differ based on the
approach selected. For the cell average approach, the answer sought is the average value
of any statistic (i.e. the mean of the minimum), while for the all data approach, the
answer sought is the statistic of the statistic (i.e. the minimum of the minimum). This
idea is illustrated in Table 3.3, which follows the structure of the preceding table. All
three approaches produce a different overall minimum from the same input data.
Equations (34) through (313) are summarized in Table 3.4. Each equation is stated,
described, and associated with the ModelBuilder model executed to accomplish it.
72
Table 3.2: Three Approaches to Calculating Statistical Averages
Table 3.3: Three Approaches to Calculating Statistical Minimums
73
Table 3.4: Summary of Statistical Equations
Equation Description Model
Statistical Mean Calculations
(34a)
?
?
=
p
Ai
ji
p
pj
d
A
d
,,
1
(34b)
?
?
=
g
Ai
ji
g
gj
d
A
,,
1
d
Daily mean water depth
across the cells in (a)
polygon zone p or (b) depth
class zone g
Zonal Statistics
(35a)
?
?
=
*
,,
*
1
Tj
pjpj
d
T
d
(35b)
?
?
=
*
,,
*
1
Tj
gjgj
d
T
d
Overall mean water depth:
averaged first across the
cells in (a) polygon zone p
or (b) depth class zone g,
then averaged through time
Summary Statistics
(38)
?
?
=
*
,
*
1
Tj
jii
d
T
d
Mean water depth in each
cell, drilled through time
Temporal Statistics
(39a)
?
?
=
p
Ai
i
p
pi
d
A
d
1
,
(39b)
?
?
=
g
Ai
i
g
gi
d
A
1
,
d
Overall mean water depth:
averaged first by drilling
through time for each cell,
then by averaging spatially
across cells in (a) polygon
zone p or (b) depth class
zone g
Spatial Statistics
(312a)
??
??
?
=
p
AiTj
ji
p
pji
d
AT
d
*
,,,
*
1
(312b)
??
??
?
=
g
AiTj
ji
g
gji
d
AT
d
*
,,,
*
1
Overall mean water depth:
average of all values over
space and time where space
is comprised of (a) polygon
zone p or (b) depth class
zone g
Temporal Statistics,
followed by
Summary Statistics
Statistical Minimum Calculations
(36a)
ji
Ai
pj
dd
p
,(min),
min
?
=
(36b) d
ji
Ai
gj
d
g
,(min),
min
?
=
Daily minimum water depth
across the cells in (a)
polygon zone p or (b) depth
class zone g
Zonal Statistics
(37a)
?
?
=
*
(min),(min),
*
1
Tj
pjpj
d
T
d
(37b)
?
?
=
*
(min),(min),
*
1
Tj
gjgj
d
T
d
Overall minimum water
depth: minimum across the
cells in (a) polygon zone p
or (b) depth class zone g,
then averaged through time
Summary Statistics
74
(310) d
ji
Tj
i
d
,
*
(min)
min
?
=
Minimum water depth in
each cell, drilled through
time
Temporal Statistics
(311a)
?
?
=
p
Ai
i
p
pi
d
A
d
(min)(min),
1
(311b)
?
?
=
g
Ai
i
g
gi
d
A
(min)(min),
1
d
Overall minimum water
depth: minimum by drilling
through time for each cell,
then by averaging spatially
across cells in (a) polygon
zone p or (b) depth class
zone g
Spatial Statistics
(313a)
ji
TjAi
pji
dd
p
,
*
(min),,
minmin
??
=
(313b) d
ji
TjAi
gji
d
g
,
*
(min),,
minmin
??
=
Overall minimum water
depth: minimum of all
values over space and time
where space is comprised of
(a) polygon zone p or (b)
depth class zone g
Temporal Statistics,
followed by
Summary Statistics
3.2.5.1 Temporal Statistics
The TemporalStatistics model (Figure 3.32) creates a new raster representing the
selected statistical attribute in each cell of a series of temporal rasters. Statistical
attributes that may be selected include {MEAN, MAJORITY, MAXIMUM, MEDIAN,
MINIMUM, MINORITY, RANGE, STD, SUM, and VARIETY}. For example,
Equation (38) is used to calculate the MEAN depth in each cell of a series of temporal
rasters, and Equation (310) is used to calculate the MINIMUM depth in each cell of a
series of temporal rasters. This model should be used to generate monthly, seasonal, and
annual mean daily ponded depth grids. This model can also be used to generate the per
cellpondeddepthstatistics over a time period of a month, season, or year (i.e. the
minimum or maximum in each cell over time).
75
Figure 3.32: TemporalStatistics model
This model addresses a key question: how is data analyzed through time? Two or
more daily ponded depth grids are specified as input to this model, along with an overlay
statistic. Drilling through time, one value will encapsulate the statistical parameter in
each cell through the time period specified (time period is specified by the dates
corresponding to the ponded depth grids selected). The question remains: how is data
analyzed over space?
3.2.5.2 Zonal Statistics
The ZonalStatistics model (Figure 3.33) calculates zonal statistics in userdefined
zones over a selected grid. This model may be used when the user wants to calculate
statistics in one or more zones for a single day (i.e. average of many cells at one point in
time, such as the average depth of wet prairie cells used as foraging habitat). For
example, Equation (34) is used to calculate the average depth across cells in zone k at
time j, and Equation (36) is used to calculate the minimum depth across cells in zone k at
time j. The model is designed to complete all functions for a single day. Then, the
ZonalStatisticsBatch script is used to loop through the ZonalStatistics model over the
time period entered by the user. If interested in the zonal statistics for more than one day,
the SummaryStatistics model will summarize the statistics based on the case field
designated (i.e. zone).
76
Figure 3.33: ZonalStatistics model
Statistics are calculated by zone (i.e. habitat zones or land categories) on an input
grid (i.e. a ponded depth grid), and written to a temporary output table. A date field is
then added and populated in the temporary output table. As the model loops through the
userspecified time interval, the daily zonal statistics (from the temporary output table)
are appended to a master zonal statistics table. The master table includes one record for
each zoneanddate combination. The ZonalStatistics model summarizes data over space
and the TemporalStatistics model summarizes data over time; the question now remains:
how is data analyzed over space and time?
3.2.5.3 Spatial Statistics
The SpatialStatistics model (Figure 3.34) calculates zonal statistics in user
defined zones over the cell statistics raster generated in the TemporalStatistics model.
This model enables a user to summarize a particular statistical attribute over time and
space. For example, a user may wish to calculate the average ponded depth in a swamp
zone over a month or year (i.e. the average of many cells over a period of time) to
provide a rough measure of the availability of cells of appropriate depth over time. This
calculation is written to a spatial statistics output table. Equation (39) is used to
77
calculate the spatial average of the temporal mean depth in each cell of a raster produced
from Equation (38). Likewise, Equation (311) is used to calculate the spatial average of
the temporal minimum depth in each cell of a raster produced from Equation (310).
Although this model is similar to the ZonalStatistics model, both are needed. The
SpatialStatistics model is unique because the input grid already reflects temporal analysis
so there is no need to append the date to zonal statistics output.
Figure 3.34: SpatialStatistics model
3.2.5.4 Summary Statistics
The SummaryStatistics model (Figure 3.35) calculates summary statistics on the
input table. The input table may be the master Zonal Statistics table generated by the
Zonal Statistics model or the Spatial Statistics table generated by the Spatial Statistics
model. For the Zonal Statistics model, the user may be interested in the MINIMUM
MINIMUM value in a particular zone over the date range in the table. For the Spatial
Statistics model, the user may be interested in the MINIMUMMINIMUM value over the
entire geographic extent.
Summary statistics are calculated for an input table based on the case field, as
specified in the statistics field parameters. The case field is the field for which separate
statistics will be calculated for each unique attribute value. For example, the case field
may be ZoneID, in which case summary statistics would be calculated by zone. Statistics
78
field selections are made as shown in Figure 3.36. The user is able to calculate the
{VALUE, COUNT, AREA, MIN, MAX, RANGE, MEAN, STD, or SUM} of the
{SUM, MEAN, MIN, MAX, RANGE, STD, FIRST, and LAST} values in the input
table. The RANGE of the input table values must be calculated following the available
Statistics Field calculations to capture the range between the MINIMUMMINIMUM and
the MAXIMUMMAXIMUM. A new field RANGE is added to the SummaryStatistics
output table, then calculated using a simple expression.
Figure 3.35: SummaryStatistics model
79
Figure 3.36: Statistics field selection for SummaryStatistics model
3.2.5.5 Overall Statistics
The Overall Statistics model (Figure 3.37) steps through the modular statistics
components in this order: TemporalStatistics, SpatialStatistics, SummaryStatistics. Two
example scenarios are outlined. In one case, the user may wish to find the overall
average of ponded depth in swampy areas in the floodplain. To do so, first create a new
raster where each cell?s value represents the mean ponded depth over the selected month
(TemporalStatistics model). Next, calculate zonal statistics over the new raster using
habitat zones (SpatialStatistics model). Finally, calculate summary statistics (with a case
field of swampy zones) to find the overall ponded depth average in all swampy zones in
the floodplain (SummaryStatistics model).
Similar logic may be applied in a second scenario to find the overall average
ponded depth in a single zone over time (i.e. three years). To analyze trends between
time periods (i.e. how each year?s data compares to the other two years? data), three cell
statistics rasters should be generated, one for each time period (i.e. year) of interest
(TemporalStatistics model). Zonal statistics should be calculated over each raster
(SpatialStatistics model). These statistics can then be summarized by zone in the overall
summary statistics (SummaryStatistics model), so that the end result is the threeyear
average ponded depth in each zone.
Figure 3.37: OverallStatistics model
80
3.2.6 Calculate Volume
The CalculateVolume model (Figure 3.38) uses ponded depth and cell area to
calculate the water volume in each cell. The model is designed to complete all functions
for a single day. Then, the CalculateVolumeBatch script is used to loop through the
CalculateVolume model over the time period entered by the user. In conjunction with
flow rates and constituent concentrations, water volume can be used to find residence
time and nutrient assimilation capacity between Lake Kissimmee and Lake Okeechobee.
Because volume calculations should be based only on water above the land
surface, a new ponded depth grid is created based on selection of only positive ponded
depth values. Then another ponded depth grid is created in which the ponded depth in
each cell is multiplied by the cell area, thus yielding water volume per cell. In a 60foot
by 60foot grid, the cell area is 3600 square feet. Cells originally having zero or negative
ponded depth have zero volume. Zonal statistics (with the river defined as one zone and
the floodplain defined as another zone) can be calculated on this cell volume grid to
calculate the volume in the river, floodplain, and combined system.
Let V
i,j
be the volume of water in cell i at time interval j. Cell water volume is
calculated by multiplying positive ponded depth by cell area (Equation (314)). The
Dirac delta function
d
? is used in the volume equations to include only cells with
positive ponded depth (Equation (315)).
djiiji
daV ???=
,,
(314)
?
?
?
?
?
<
?
=
00
01
,
,
ji
ji
d
d
d
? (315)
81
The volume of water in a zone is calculated by summing the cell volume of all
cells included in the zone; V
j
(p) and V
j
(g) represent the volume of water in polygon zone
p and depth class zone g at time interval j (Equation (316a) and (316b), respectively).
?
?
=
p
Ai
jij
VpV
,
)( (316a)
?
?
=
g
Ai
jij
VgV
,
)( (316b)
Figure 3.38: CalculateVolume model
3.3 MODEL COMPILATION
There are multiple ways to evaluate hydroperiod. A single modular component
may be executed independently or in conjunction with other models. Results from one
model may be input to another model or may be the final output. The District requested a
model that is simple to manage for a novice user while flexible enough to meet the
druthers of an advanced user. The appropriate model and input parameters can be
selected based on the output desired by the user. A more advanced user may elect to
piece together a new unique model to meet a specific set of requirements. For a novice
user, several overall models were created to perform tasks commonly used in
hydroperiod analysis. However, this is not an exhaustive collection; the suite of modular
components were previously discussed in this chapter and can be organized in any way
desired.
82
3.3.1 Biological Analysis
One measure of restorative success in the Kissimmee River ecosystem is the
presence of fish, wading birds, and vegetation. Each requires a habitat partially described
by the range of water depths in which they exist or thrive. Two questions must be
answered by hydroperiod analysis. First, what part of the floodplain is available to a
given size class of fish, wading bird, or vegetation during a specified period of analysis?
Second, where do corresponding ranges of water depth conditions exist on the
floodplain?
These questions are answered by a combination of modular components already
described. The DBHydro Data Ingest model is used to extract temporal data for the
specified period of analysis. Then, the Generate Rasters models and Classify Depths
model are looped through time to produce daily depth classified polygons, where each
polygon covers the portion of the floodplain inundated at a userdefined depth range. All
three modular components are called in series from a new single model called OverallBio
(Figure 3.39). The spatial coverage of each depth class can be viewed in ArcGIS (such as
in Figure 4.21) or in ArcGIS Tracking Analyst (such as in Figure 4.34).
Figure 3.39: OverallBio model
83
3.3.2 Water Quality Analysis
The Kissimmee River Restoration Project is expected to improve the nutrient
assimilation capacity of the floodplain. To determine if nutrient loads to Lake
Okeechobee are reduced, the volume of water stored in the river/floodplain system must
be known, along with its residence time. Residence time can be calculated using the flow
measurements available in DBHydro. The question to be answered by this hydroperiod
analysis is: What is the volume of water in the river, in the floodplain, and in the
combined river/floodplain system?
The volume may be calculated in three different ways, in accordance with the
three ways of calculating mean (described in Section 3.2.5). Two different overall water
quality models are provided (capable of calculating mean in all three ways). Both models
use DBHydro to extract temporal data and then loop through the Generate Rasters models
and the Calculate Volume model. The next modular components vary according to
approach. The first model OverallWQDaily (Figure 3.40) uses the Daily Average
Approach by calculating zonal statistics, followed by summary statistics. The second
model OverallWQCell (Figure 3.41) uses the Cell Average Approach by calculating
temporal statistics followed by spatial statistics and the All Data Approach by proceeding
to calculate summary statistics.
84
Figure 3.40: OverallWQDaily model
Figure 3.41: OverallWQCell model
85
3.3.3 Hydrologic Analysis
The heart of hydroperiod analysis is the depth and duration of inundation over the
floodplain. This analysis must answer three related questions. What is the mean daily
water depth for a specified area? What is the mean monthly, seasonal, and annual water
depth? How does the mean water depth compare between months, seasons, and years?
The DBHydro Data Ingest and Generate Rasters models are once again executed
to produce daily ponded depth grids. Then, different individual models and combinations
of models from the Calculate Statistics toolset are executed to produce the mean water
depth information desired. The first question is answered by the OverallHydroArea
model (Figure 3.42) which calculates zonal statistics followed by summary statistics.
The second and third questions are answered by the OverallHydroTime model (Figure
3.43) which calculates temporal statistics followed by spatial statistics.
Figure 3.42: OverallHydroArea model
86
Figure 3.43: OverallHydroTime model
3.4 SPATIAL INTERPOLATION ANALYSIS
Inundation results from eight different spatial interpolation methods were
compared to measured water depth values for two reasons. First, a strong match between
measured and interpolated water depth values provides validation of the hydroperiod
analysis. Second, water depth differences produced by each interpolation method were
compared to determine the optimal interpolation method to be used in hydroperiod
analysis.
Days analyzed were selected based on collection dates of the WaterDepthPoints
throughout Pool C. A total of 2183 water depth points were recorded using three
different collection methods. As discussed in Section 3.1.4, only depth values at the
points measured with the HTOOL method were used to compare the interpolated and
measured water depth values throughout the floodplain. Of the 2183 water depth points
87
measured, only 303 points were measured using the HTOOL method; these points were
collected on 19 days. Approximately half of the HTOOL points were measured on six
days. The six days were chosen because they had a large number of sample points along
with corresponding stage measurements in DBHydro (DBHydro time series records were
not available for all monitoring stations on all days). The six days chosen and the
number of water depth points sampled on each day are as follows: 8/8/2002 (38 points),
8/15/2002 (27), 8/21/2002 (12), 8/22/2002 (19), 8/29/2002 (20) and 10/2/2002 (20).
Because the batch scripts are not working in ArcGIS 9.0 PreRelease, models
could not be looped through time in an automated manner. Therefore, the models were
executed manually for each day evaluated to generate the water surface elevation and
ponded depth grids. Then, a Visual Basic script was executed manually for each day
evaluated to extract the interpolated ponded depth values. Finally, spreadsheet
calculations comparing each day?s interpolated and measured water depth values were
completed manually. Because of the manual effort involved in each step of this process,
the number of days evaluated was limited to the six days described above. The process
established and outlined herein serves as a conceptual framework for future, more
automated comparisons, which may include all 303 HTOOL sample points.
After determining dates having a large number of water depth measurements, the
DBIngest model was used to download data from DBHydro into an Attribute Series table
for August through October of 2002. Starting with one day (say 10/1/2002), the
GenerateRastersPart1 model was executed to create the layer file with the hydroperiod
points and temporal data joined. This layer file served as input into all part two models,
which were then executed in the following order (name convention follows):
(1) GenerateRastersPart2_Kriging ? ordinary kriging with default spherical
semivariogram (pd_krig_MMDD)
88
(2) GenerateRastersPart2_Kriging ? universal kriging with default linear with
linear drift semivariogram (pd_krig_MMDD)
(3) GenerateRastersPart2_IDW ? power 2, variable search radius, 12 points
(pd_idw_MMDD)
(4) GenerateRastersPart2_IDW ? power 2, variable search radius, 5 points
(pd_idwb_MMDD)
(5) GenerateRastersPart2_IDW ? power 2, fixed radius of 5000 feet, minimum
of 5 points (pd_idwc_MMDD)
(6) GenerateRastersPart2_Spline ? regular (pd_spl_MMDD)
(7) GenerateRastersPart2_Spline ? tension (pd_splt_MMDD)
(8) GenerateRastersPart2_NN ? (pd_nn_MMDD)
Note that several models were executed multiple times with different parameters. This
process was completed for all days analyzed (i.e. the layer file was then created for
10/2/2002 using GenerateRastersPart1 model and the inundation rasters were created
using the part two models listed above, and so on). The interpolated water depth was
then extracted from the ponded depth rasters at the measured point location using a
?GetZValues? Visual Basic macro (Appendix C) in ArcMap. Because the macro expects
the data in a certain order, data was loaded into ArcMap one day at a time, in this order:
(1) WDP10012002 (WaterDepthPoints for 10/1/2002)
(2) pd_krig_1001
(3) pd_krigu_1001
(4) pd_idw_1001
(5) pd_idwb_1001
(6) pd_idwc_1001
(7) pd_spl_1001
89
(8) pd_splt_1001
(9) pd_nn_1001
The macro was executed once for each day analyzed. The macro was executed from
ArcMap by clicking on Tools?Macros?Macros, selecting the macro entitled
?GetZValues?, and clicking Run. The macro can also be executed from ArcMap by
clicking on Tools?Macros?Visual Basic Editor, then hitting the run arrow within Visual
Basic. The code produced an output text file with a list of point IDs, measured depth
values from the WaterDepthPoints feature class, and interpolated depth values from each
grid. The daily text files were combined to comprise a single master text file, which was
loaded into excel. The interpolated water depth was then compared to the measured
water depth by calculating the mean error and root mean square error (RMSE). Mean
error is calculated to reveal spatial bias. The interpolation method with the least RMSE
produces results most similar to the measured values.
90
Chapter 4: Results
The hydroperiod analysis conducted for this research prompted exploration of
four topics. First, validation of water depth predictions triggered an investigation into the
quality of the land surface elevation grid used in the model and its influence in
hydroperiod calculations. Two postconstruction land surface grids were generated using
different methods and were compared to each other and the preconstruction land surface
grid. Second, mean error and root mean square error (RMSE) were calculated between
measured and interpolated water depth values, with comparison between water depths
produced from different interpolation methods. Third, hydroperiod results were graphed
in Excel and presented in ArcMap to identify spatial and temporal inundation trends.
Fourth, the enhanced Arc Hydro Time Series data model was demonstrated through
implementation of the hydroperiod analysis for South Florida. Results from each study
are presented and interpreted in this chapter.
4.1 LAND SURFACE ELEVATION GRID EVALUATION
During the first phase of the Kissimmee River restoration, canals were backfilled,
meandering river segments were recarved, spoils were removed, structures were
demolished, and so on. Thus, the land surface changed significantly during construction.
For this reason, a new land surface elevation grid was needed. The preconstruction land
surface elevation raster was created by the United States Army Corps of Engineers under
contract to the SFWMD. The method used to create the preconstruction land surface
elevation raster is not known. Originally, only one postconstruction grid was created by
CRWR. However, when comparing measured and interpolated water depths, a few
locations were immediately flagged because of large water depth differences. This
prompted an investigation into the accuracy of the postconstruction land surface
91
elevation grid. Since the land surface elevation grid is subtracted from the interpolated
water surface elevation grid to calculate water depth, it may be a contributor to water
depth prediction error.
Two postconstruction land surface elevation rasters were created by CRWR
using two different methods: (1) by loading onefoot contour data from shapefiles and
coverages into a triangulated irregular network (TIN) which was then converted to a
raster and clipped with a mask of the study area to match the shape of the pre
construction land surface elevation raster and (2) by using CatchmentSIM (Ryan, 2003)
to convert vector data (contours) to grid. For the purposes of this thesis, the first post
construction grid created using a TIN will be referred to as postconstruction LSE grid 1
and the second postconstruction grid created using CatchmentSIM will be referred to as
postconstruction LSE grid 2.
CatchmentSIM is a free standalone threedimensional geographic information
system with topographic parameterization and a hydrologic analysis model (Ryan, 2003).
CatchmentSIM?s Vector to Raster conversion tool was utilized to produce the second
postconstruction land surface elevation grid from contour data provided by South
Florida. The theoretical production of such a grid is briefly summarized as follows.
When a vector component (such as a contour line) traverses two or more neighboring
cells, the cell containing the longest portion of the contour line is assigned the same
elevation as the contour line. CatchmentSIM incorporates an additional layer of vector
processing for streamline location to improve accuracy of the resulting raster. After
contour line and streamline elevations have been assigned to underlying cells, the
unassigned cells are calculated based on a distance weighted average of a userspecified
number of crosssectional rays passing through each cell.
92
The three land surface elevation grids (Figure 4.1) are similar with minor
disparity. One immediately noticeable difference between the grids is the canal carved
through the center of the preconstruction grid (along with spoils lining the sides of the
canal) and no canal in either postconstruction grid. This change reflects reconstruction
completed to backfill the canal and recarve the meandering stream where necessary.
Also noticeable are the yellow spots in the middle grid, PostLandElev. The yellow spots
represent low elevations approaching and in some places equal to zero feet. In fact, the
elevation range varies notably between grids; grid (a) ranges in elevation from 1262 feet,
grid (b) ranges in elevation from 060 feet, and grid (c) ranges in elevation from 2661
feet. The elevation difference between grids (a) and (c) is logical and attributable to the
backfilling of the deep canal and removal of spoil banks lining the canal.
(a) ELEV (b) PostLandElev (c) PostElevCJR
Figure 4.1: Pre and postconstruction land surface elevation grids: (a) preconstruction
grid, ELEV; (b) postconstruction LSE grid 1, PostLandElev; and (c) post
construction LSE grid 2, PostElevCJR
93
To assess the validity of the postconstruction land surface elevation grids
generated, three difference grids were created using the ArcGIS Spatial Analyst raster
calculator to subtract one grid from another (Figure 4.2). The three difference grids are:
(1) deltag1elev ? postconstruction grid 1 minus preconstruction grid;
(2) deltag2elev ? postconstruction grid 2 minus preconstruction grid; and
(3) deltag1g2 ? postconstruction grid 1 minus postconstruction grid 2.
In Figure 4.2, black represents a land surface elevation difference between negative one
and positive one foot (including zero difference). Red represents a negative difference
and blue represents a positive difference, where color intensity corresponds to magnitude
of difference (i.e. the darkest red corresponds to the highest negative difference). Not all
elevation difference is bad; in Figure 4.2(a) and (b), an expected elevation difference is
visible down the center of the floodplain where the spoil mounds were removed and the
canal was backfilled during construction.
Since Figure 4.2(a) shows mostly black and comparatively few red and blue spots,
the first postconstruction land surface elevation grid appears to have the smallest
difference from the preconstruction land surface elevation grid. However, grid statistics
(Table 4.1) reveal that the first postconstruction grid actually has a larger mean
difference from the preconstruction grid (0.54 feet) than the second postconstruction
grid (0.48 feet). The first grid also has a larger standard deviation (2.82 feet) than the
second grid (2.50 feet). Based on examination of each grid (and in agreement with the
statistics presented in Table 4.1), the first grid has relatively large variations at a few
distinct points, while the second grid has smaller variations at many points throughout the
floodplain. If both methods produced the same land surface elevation grid, Figure 4.2(c)
would be all black and the final column in Table 4.1 would be filled with zeros.
However, Figure 4.2(c) is covered in red and blue spots, and Table 4.1 reveals great
94
disparity between grids. Ponded depth grids were calculated using both postconstruction
land surface elevation grids to determine their influence in water depth prediction
(Section 4.2).
(a) deltag1elev (b) deltag2elev (c) deltag1g2
Figure 4.2: Differences between pre and postconstruction land surface elevation grids
Table 4.1: Summary Statistics of Land Surface Elevation Difference Grids
deltag1elev deltag2elev deltag1g2
Minimum 47.36 29.79 26.37
Maximum 27.73 28.97 43.00
Mean 0.54 0.48 0.13
Standard Deviation 2.82 2.50 2.82
Elevation differences in the land surface elevation grids may be caused by actual
differences in land surface elevation, errors in the elevation contour lines (used to
generate the land surface elevation grid), or the method chosen to generate the grid.
Differences in land surface elevation are anticipated primarily near the canal and
meandering stream, but not in other areas of the floodplain. Since grids (b) and (c) show
elevation differences throughout the floodplain, the second and third possibilities must be
considered.
95
Upon investigation, some error was discovered in the contour lines provided by
the District. Just over 200 contour lines were identified with untrue zero elevations.
Since the contour data consists of approximately 58,000 contour lines, the 200 erroneous
lines account for less than one half of one percent of the collective contours. However,
their presence had significant effect on generation of the postconstruction land surface
elevation grid. As seen in Figure 4.3, the locations of the erroneous contour data align
with the yellow low spots in the Figure 4.2, grid (b). For future reference, incorrect zero
elevation contour lines should be corrected or removed prior to generating the post
construction land surface elevation grid. Point elevation data would produce a better
postconstruction grid.
Figure 4.3: Erroneous contour lines highlighted in blue among other contour line data
(left), erroneous contour lines highlighted in red overtop the post
construction land surface elevation grid 1 (right)
Contour data (Figure 4.3, left) were used untouched to create grid 1 (TIN
method); conversely, untrue zero elevation contour lines were removed before converting
the contours to grid 2 (CatchmentSIM method). Another potential cause of Grid 2?s
variation from Grid 1 and the preconstruction land surface elevation grid is a recognized
96
limitation in CatchmentSIM grid generation. Whereas most grid generation methods
average the contours passing through a cell to assign its value, CatchmentSIM assigns
grid cell values based on the value of the last contour that passes through the cell. An
example cell is shown in Figure 4.4, where the contour lines vary from 36 to 39 feet.
Because the last line to pass through the cell is the 36foot line, the cell is assigned an
elevation of 36 feet. In an area as flat as Florida, a 3 foot difference in elevation can be
very meaningful, and could significantly skew inundation prediction. Stemming from
this observation is the following conclusion: because contour lines are so dense (with
multiple lines passing through a single cell), the resolution of the output grid should be
improved (smaller cell size than the 60ft x 60ft grid requested by the District).
39
38
39
37
Figure 4.4: Contour line density in a single cell
Next, the difference grids were converted to integer grids and then to points to
enable creation of histograms using Geostatistical Analyst. A histogram was created
97
36
38
for
each difference grid to display the frequency distribution of elevation differences. The
tall bars in Figure 4.5 represent zero or little difference between grids. Both post
construction grids average approximately half a foot less in elevation than the pre
construction grid. The lower elevation is likely attributable to the removal of spoil
mounds lining the canal.
Trend analysis was performed on difference data by projecting the shapefile
points onto threedimensional space using ArcGIS Geostatistical Analyst (Figure 4.6). In
the trend analysis plots, the elevation difference is represented by light green points
hovering above the dark red sample point locations. The light green points are projected
onto the XZ plane (green) and YZ plane (blue) as scatter plots, to which polynomial
curves are fit to produce the light green and blue trend lines in the XZ and YZ planes.
Trend analysis indicated that the difference between pre and postconstruction land
surface elevations was evenly distributed and was not biased spatially.
Both postconstruction land surface elevation grids reveal some artifacts caused
by an insufficient number of contour points. No algorithm can completely eliminate
these artifacts; corrections should be completed by quality control staff familiar with the
ground truth. Similarly, there is no single correct way to generate a grid from contour
lines. It requires many trials and errors and familiarity with the ground truth to generate
the grid that will best fit a specific project. Postconstruction grid 2 shows slightly less
deviation from the preconstruction grid (Figure 4.5(b)). Its standard deviation is likely
lessened since erroneous contour data was corrected before generating the land surface
elevation grid. However, the simplified way of determining cell values based on the last
contour to pass through the cell produces great variation throughout the floodplain
(Figure 4.4). Because it should render more reliable water depth values throughout the
floodplain, postconstruction grid 1 is recommended for use in hydroperiod analysis.
98
(a) deltag1elev
(b) deltag2elev
(c) deltag1g2
Figure 4.5: Histograms for difference data
99
(a) deltag1elev
(b) deltag2elev
(c) deltag1g2
Figure 4.6: Trend analysis for difference data
4.2 VALIDATION OF DATA USING SPATIAL INTERPOLATION COMPARISONS
For each water depth point measured during the six days analyzed (discussed in
Section 3.4), and for each interpolation method, the squared difference between observed
and interpolated depth was calculated to produce Mean Square Error (MSE). Then, the
Root Mean Square Error (RMSE) for each point was calculated as the square root of its
MSE. The six days included in this analysis were selected because a larger number of
100
points were sampled on those days than on other days. The clusters of points measured
on each day are shown in Figure 4.7. The associated RMSE values produced for the
water depth points measured on each day analyzed are shown graphically in Figure 4.8.
Legend
WDP08082002
WDP08152002
WDP08212002
WDP08222002
WDP08292002
WDP10022002
Floodplain100yr
Figure 4.7: Water depth points for six days analyzed (left); Water depth points with large
RMSE values (right)
101
Figure 4.8 does not reveal any significant trends in RMSE of measured versus
interpolated water depth. Points have similarly scattered RMSE values for all dates
analyzed, with exception of the lone blue point with an RMSE of 11.59 on 8/21/2002
when using postconstruction grid 1. An order of magnitude larger than other
questionable errors, this point required special attention; its location is marked with a red
boxed question mark in Figure 4.9. [The other red question marks in Figure 4.9 denote
points with the largest root mean square error (RMSE) of each day evaluated.] As the
Identify box reveals, the elevation of the preconstruction land surface elevation raster
(elev) is 37.7045 feet at the point location, while the elevation of the postconstruction
land surface elevation raster (postlandelev) is 24.0056 feet. It is doubtful that the pre
and postconstruction elevation changed by over 13 feet, especially because this point is
located so near the floodplain boundary and relatively far from the reconstruction. Even
greater discrepancies were identified by zooming in on this area. At one point, the post
construction grid shows a land surface elevation of zero, while the preconstruction grid
and alternate postconstruction grid show elevations around 35 feet (Figure 4.10). These
and other elevation conundrums prompted the difference studies presented in Section 4.1.
Water depth points selected in Figure 4.7 (highlighted in aqua blue) represent the
points in Figure 4.8 with RMSE greater than 2.0 feet for PostConstruction LSE Grid 1.
More highlighted points lie further from the river than close to it, suggesting that
interpolation may be less accurate further from the river. However, this statement cannot
be made with much certainty since three highlighted points lie along the river. Other
possible reasons for larger RMSE include (1) erroneous measured water depths, (2)
erroneous land surface elevation grids (discussed previously in Section 4.1), and (3)
insufficient number of monitoring stations used to interpolate a water surface. Perhaps
more monitoring stations are needed between existing transects and along the floodplain
boundaries.
102
0.0
2.0
4.0
6.0
8.0
10.0
12.0
Water Depth Points Measured
R
o
o
t
M
e
a
n
S
q
u
a
re
E
rro
r
P
o
stC
o
n
s
tr
u
c
ti
o
n
L
S
E
G
r
i
d
1
8/8/2002
8/15/2002
8/21/2002
8/22/2002
8/29/2002
10/2/2002
0.0
2.0
4.0
6.0
8.0
10.0
12.0
Water Depth Points Measured
R
oot
Me
a
n
S
qua
r
e
E
r
r
o
r
Po
s
t

C
o
n
s
t
r
u
c
t
i
o
n
L
SE G
r
i
d
2
8/8/2002
8/15/2002
8/21/2002
8/22/2002
8/29/2002
10/2/2002
Figure 4.8: Daily RMSE at each measured water depth point
103
Figure 4.9: Discrepancy between pre and postconstruction land surface elevation grids
Figure 4.10: Discrepancy between two postconstruction land surface elevation grids
104
To understand the influence of different interpolation methods in predicting water
depth, focus must be broadened from individual points to overall trends. Mean error
(Table 42) and root mean square error (Table 43) were calculated for each of the six
days analyzed. Mean error is calculated using Equation (41), and is used to understand
if interpolated values are systematically over or under predicted (error is biased) or if
error is random. Root mean square error is an estimator of standard deviation and is
calculated using Equation (42). In both equations, N is the number of observations, I is
the interpolated value, and M is the measured value. The significance of a RMSE value
is dependent on the scale of the values compared. For example, if comparing the number
1000 to 1005, a difference of five is very small; however, if comparing zero to five, a
difference of five is very large.
?
=
?=
N
n
nn
MI
N
MeanError
1
2
)(
1
(41)
()
2
1
1
?
=
??
N
n
nn
MI
N
RMSE
(42)
From interpretation of Table 4.2 only, Grid 2 (overall mean error = 0.0595 feet)
seems to more accurately predict water surface than Grid 1 (overall mean error = 0.2895
feet). Now consider Figure 4.11, which displays the percentage of overall mean error
(mean error averaged over all interpolation methods at each point) in each mean error
depth class. A greater portion of Grid 1 (65%) interpolated water depths are within 1 foot
of measured water depths than for Grid 2 (48%). The overall Grid 2 mean error is lower
than that of Grid 1 because the negative mean errors more equally balance the positive
mean errors. However, fewer points on Grid 1 have greater than one foot water depth
differences, making Grid 1 the preferred grid for hydroperiod analysis.
105
Table 4.2: Daily Mean Error Values for each Interpolation Method
Ordinary
Kriging
Universal
Kriging
IDW
Variable
IDW
Fixed
Regular
Spline
Tension
Spline
Natural
Neighbors
Daily
Average
PostConstruction LSE Grid 1 Mean Error (feet)
8/8/2002 0.1023 0.0830 0.0759 0.1607 0.0909 0.1044 0.1129 0.1043
8/15/2002 0.5580 0.5529 0.6450 0.5631 0.5831 0.5756 0.5792 0.5795
8/21/2002 1.9773 1.9672 1.9719 2.0383 1.9670 1.9937 1.9684 1.9834
8/22/2002 0.9958 1.0307 0.8071 0.9028 0.9392 0.9871 1.1117 0.9678
8/29/2002 0.7342 0.7046 0.6777 0.6840 0.7186 0.7263 0.7188 0.7092
10/2/2002 1.3426 1.2691 1.5577 1.5087 1.4694 1.3774 1.0593 1.3692
AVERAGE 0.3046 0.3090 0.2136 0.2796 0.2688 0.2970 0.3539 0.2895
SUM 31.6833 32.1410 22.2191 29.0745 27.9549 30.8881 36.8106 30.1102
PostConstruction LSE Grid 2 Mean Error (feet)
8/8/2002 0.2295 0.2102 0.2031 0.2880 0.2181 0.2316 0.2401 0.2315
8/15/2002 0.8195 0.8143 0.9065 0.8246 0.8445 0.8371 0.8407 0.8410
8/21/2002 0.8463 0.8362 0.8409 0.9073 0.8360 0.8627 0.8374 0.8524
8/22/2002 0.7294 0.7643 0.5407 0.6364 0.6727 0.7207 0.8453 0.7014
8/29/2002 0.6293 0.5997 0.5729 0.5792 0.6138 0.6215 0.6140 0.6043
10/2/2002 1.3426 1.2691 1.5577 1.5087 1.4694 1.3774 1.0593 1.3692
AVERAGE 0.0444 0.0400 0.1354 0.0695 0.0802 0.0520 0.0049 0.0595
SUM 4.6153 4.1577 14.0796 7.2242 8.3438 5.4106 0.5055 6.1894
Table 4.3: Daily RMSE Values for each Interpolation Method
Ordinary
Kriging
Universal
Kriging
IDW
Variable
IDW
Fixed
Regular
Spline
Tension
Spline
Natural
Neighbors
Daily
Average
PostConstruction LSE Grid 1 RMSE (feet)
8/8/2002 0.8440 0.8562 0.8970 0.9258 0.8284 0.8461 0.8792 0.8723
8/15/2002 1.0971 1.0778 1.2066 1.2048 1.0992 1.1016 1.0808 1.1357
8/21/2002 3.7370 3.7218 3.7359 3.7700 3.7213 3.7456 3.7279 3.7370
8/22/2002 1.2702 1.3102 1.0637 1.1397 1.2271 1.2758 1.4267 1.2278
8/29/2002 0.9400 0.9167 0.9116 0.9139 0.9101 0.9206 0.9243 0.9187
10/2/2002 1.8417 1.7794 2.0168 1.9618 1.9696 1.8869 1.6212 1.8911
AVERAGE 1.9048 1.8916 1.9256 1.9367 1.9129 1.9146 1.8867 1.9124
PostConstruction LSE Grid 2 RMSE (feet)
8/8/2002 1.5831 1.5555 1.6353 1.6195 1.6071 1.5307 1.5997 1.5997
8/15/2002 1.4878 1.4695 1.5637 1.5436 1.4953 1.4944 1.4790 1.5051
8/21/2002 1.4721 1.4577 1.4784 1.5073 1.4607 1.4794 1.4624 1.4741
8/22/2002 1.4804 1.4782 1.4482 1.4645 1.4289 1.4570 1.4929 1.4644
8/29/2002 1.1832 1.1648 1.1527 1.1565 1.1798 1.1885 1.1703 1.1709
10/2/2002 3.0463 2.9695 3.2762 3.2280 3.1891 3.0937 2.7570 3.0844
AVERAGE 1.8147 1.7825 1.8914 1.8788 1.8509 1.8199 1.7361 1.8269
106
6% 8%
13%
10%
4%
Mean Error
(feet) 17%
14%
12%
15%
LSE Grid 2LSE Grid 1
10%
8%
18%
16%
5%
13%
8%
12%
13%
Figure 4.11: Classified overall mean error ranges
Measured water depths range from 0.0 to 4.4 feet; interpolated water depths range
from 3.4 to 12.4 feet. On a scale spanning approximately 16 feet for interpolated water
depths and 4.4 feet for measured water depth, an average approximate mean error of 0.3
feet (Table 4.2) indicates that interpolated depth values vary from measured values by
less than less two percent (interpolated water depth range) and less than five percent
(measured water depth range). A two to five percent variance is considered reasonably
well matched considering the many contributors to water depth imprecision.
If surface prediction is unbiased, the summed mean error is equal to zero; the
overpredicted values balance the underpredicted values. However, the overall summed
mean error in Table 42 shows that water depth is overpredicted (sum ean error =
30.11 feet) for land surface elevation grid 1 and underpredicted (sum of mean error = 
6.19 feet) for land ation grid 2. In T
surface elevation grid
feet (Grid 1) and 0.1305 feet (Grid 2), suggesting that the land
agnitude more influential in a
ethod.
107
able 42, ean error varies between surface elev
tween interpo thods by only 0.1403
surface elevation gr
tely predicting water depth than
s by 1.131 feet, but be
ccura
of m
m
lation me
id is an
land
order of m
interpolation m
Mean error at measured points was interpolated to produce a raster surface
displaying the spatial distribution of water depth differences (Figure 4.12). Water depth
was estimated using IDW, Kriging, Spline, and Natural Neighbor interpolation methods.
Then the mean error produced from each interpolation method (difference between
measured and interpolated water depth) was interpolated using IDW to assess mean error
distribution differences between interpolation methods and land surface elevation grids.
The raster surface extent is limited by the location of sampled points that were compared
to interpolated points. Figures 4.12(1a) through (1d) represent different water depth
interpolation methods for grid 1, and Figures 4.12(2a) through (2d) represent different
water depth interpolation methods for grid 2. (For consistency, mean error in all figures
was interpolated using IDW interpolation.) All mean error grids produced for land
surface elevation grid 1 are nearly identical regardless of the water depth interpolation
method, as are the mean error grids produced for land surface elevation grid 2. However,
there are distinct differences between land surface elevation grids for a given water depth
interpolation method (i.e. compare Figure 4.12(1a) to Figure 4.12(2a)). This assertion
is supported by the grid statistics presented in Table 4.4; all statistics are similar between
interpolation methods for a given grid, but vary significantly between grids for a given
interpolation method. Thus, the mean error distribution varies more between land surface
elevation grids than between interpolation methods.
A large region of positive mean error (overpredicted water depth shown in blue)
exists in the center of Pool C, while pockets of negative mean error (underpredicted water
depth shown in green) exist along the east edge and southwest corner of the area
interpolated. Notable differences between the mean error distributions of each land
surface grid occur along the river and along the east and south edges of the floodplain. In
general, lower water depths are predicted over land surface elevation grid 2 than over
108
grid 1. This supports the previous finding from Table 42 that water depth is
overpredicted for grid 1 and underpredicted for grid 2.
Great variability of mean error spatial distribution between different land surface
elevation grids suggests that something other than interpolation method influences water
depth prediction. Perhaps geospatial interpolation isn?t the best way to predict water
depths; perhaps hydraulic modeling input is required to accurately compute water depths.
(1a) IDW (1b) Kriging (1c) Spline (1d) Natural Neighbor
(2a) IDW (2b) Kriging (2c) Spline (2d) Natural Neighbor
Figure 4.12: Spatial distribution of mean error
109
Table 4.4: Summary Statistics of Interpolated Mean Error Grids
Mean Error (feet) for LSE Grid 1 Mean Error (feet) for LSE Grid 2
IDW Kriging Spline NN IDW Kriging Spline NN
Minimum 3.321 3.082 3.347 2.748 6.134 5.946 6.132 5.579
Maximum 11.495 11.495 11.437 11.468 4.288 4.281 4.326 4.233
Mean 0.086 0.186 0.156 0.225 0.214 0.114 0.144 0.075
Std. Deviation 0.815 0.786 0.784 0.791 1.021 0.981 1.002 0.930
RMSE values from Table 43 are displayed in Figure 4.13. The overall average
RMSE is shown in Figure 4.14, where the dotted green and blue lines represent overall
average RMSE values of 1.9124 feet for Grid 1 and 1.8269 feet for Grid 2, respectively.
Although slight, Natural Neighbors and Kriging produce smaller RMSE values than IDW
and Spline interpolation methods.
It is interesting to note that the peak Daily Average RMSE occurs on 8/21/2002
for postconstruction LSE grid 1, while the peak Daily Average RMSE occurs on
10/2/2002 for postconstruction LSE grid 2. Grid 1 and Grid 2 average RMSE values
vary between interpolation methods by only 0.05 feet (2.6 %) and 0.1553 feet (8.2 %),
respectively. On the other hand, the daily average RMSE on a given day, such as
8/21/2002, varies between grids by 2.2629 feet (60.6 %). [Percent variance was
determined by subtracting the minimum value from the maximum value and dividing by
the maximum value.] With the exception of one day, the postconstruction land surface
elevation grid 1 (TIN method) has a smaller RMSE value than postconstruction grid 2
(CatchmentSIM). This trend supports the statement at the end of Section 4.1 which says
that the postconstruction land surface elevation grid 1 should be used in hydroperiod
analysis.
110
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
8/1/2002 8/16/2002 8/31/2002 9/15/2002 9/30/2002 10/15/2002
Date
R
oot M
e
a
n
S
qua
r
e
E
r
r
o
r
P
o
s
t

C
ons
t
r
uc
t
i
on LS
E
G
r
i
d
1
Ordinary Kriging
Universal Kriging
IDW V ariable
IDW Fix ed
Regular Spline
Tension Spline
Natural Neighbors
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
8/1/2002 8/16/2002 8/31/2002 9/15/2002 9/30/2002 10/15/2002
Date
R
o
o
t
M
e
a
n
S
q
u
a
re
E
rro
r
P
o
st

C
o
n
st
r
u
ct
io
n
L
S
E
G
r
id
2
Ordinary Kriging
Universal Kriging
IDW V ariable
IDW Fixed
Regular Spline
Tension Spline
Natural Neighbors
Figure 4.13: Daily RMSE values for each interpolation method
111
RMSE variation between grids (2.2629 feet) is more than an order of magnitude
larger than variation between interpolation methods (0.1553 feet). Figure 4.13 illustrates
the major differences between Daily Average RMSE values for Grid 1 and Grid 2, while
Figure 4.14 illustrates the relative indifference between Average RMSE values for
different interpolation methods. Such variability of RMSE values between grids reveals
depth prediction?s dependence on topographic quality and relative indifference to
interpolation method.
0.0
0.5
1.0
1.5
2.0
2.5
Ordinary
Kriging
Universal
Kriging
IDW Variable IDW Fixed Regular
Spline
Tension
Spline
Natural
Neighbors
Interpolation Method
R
o
o
t
M
e
a
n
S
q
u
a
re
E
rro
r
PostConstruction LSE Grid 1
PostConstruction LSE Grid 2
Figure 4.14: Overall average RMSE value for each interpolation method
There are many possible causes of error between measured and interpolated depth
values. The water depth measurements recorded in the field may be effected by human
error, the stage values measured and stored in DBHydro may be inaccurate if monitoring
stations are not adequately calibrated and maintained, or the interpolation of points may
112
not be accurate due to a variety of factors (topographic inaccuracy, false interpolation,
inadequate number of monitoring stations, etc.). Also, negative depths (water level
below ground surface) were not recorded in field measurements but are included in
interpolated depth values. A value of zero was recorded to represent a dry point but the
water surface may actually be anywhere at or below the ground surface. Therefore,
possibly invalid RMSEs are calculated when comparing negative interpolated depths to
zero measured depths.
4.3 GRAPHICAL DISPLAY OF SPATIAL AND TEMPORAL ANALYSIS
A biologist or hydrologist may wish to understand the pattern of inundation at a
specific point in the floodplain over a period of time. Output from the Generate Rasters
suite of models can be used as input to hydroperiod graphs. Figure 4.15 was created by
identifying a single point of interest in the floodplain. The point selected is located just
south of the confluence of the Oak Creek Tributary and the meandering Kissimmee
River. The water surface elevation, land surface elevation, and ponded depth were
extracted for the selected point from the WSE, LSE, and PD grids spanning the month of
June 2003. Elevation and depth values were extracted using the GetZValues Visual
Basic macro (Appendix C). A total of 90 grids were used (one grid per day per value).
The elevations and depths were then manually loaded into an Excel spreadsheet to
produce the graph shown in Figure 4.15. The primary yaxis (left) corresponds to the
green land surface elevation line and blue water surface elevation line. The secondary y
axis (right) corresponds to the red ponded depth line, which is calculated by subtracting
the land surface elevation from the water surface elevation.
113
30.0
31.0
32.0
33.0
34.0
35.0
36.0
6/
1/
20
03
6/
2/
20
03
6/
3/
20
03
6/
4/
20
03
6/
5/
20
03
6/
6/
20
03
6/
7/
20
03
6/
8/
20
03
6/
9/
20
03
6
/
10/
20
03
6
/
11/
20
03
6
/
12/
20
03
6
/
13/
20
03
6
/
14/
20
03
6
/
15/
20
03
6
/
16/
20
03
6
/
17/
20
03
6
/
18/
20
03
6
/
19/
20
03
6
/
20/
20
03
6
/
21/
20
03
6
/
22/
20
03
6
/
23/
20
03
6
/
24/
20
03
6
/
25/
20
03
6
/
26/
20
03
6
/
27/
20
03
6
/
28/
20
03
6
/
29/
20
03
6
/
30/
20
03
Day in June
W
a
t
e
r
/
L
a
n
d
E
l
evat
i
o
n
,
f
eet
0.0
1.0
2.0
3.0
4.0
5.0
6.0
P
onde
d D
e
p
t
h,
f
e
e
t
Water Surface Elevation
Land Surface Elevation
Ponded Depth
Figure 4.15: Illustration of ponded depth calculation at one point location
A biologist or ecologist may wish to understand inundation patterns over different
land types, habitats, or other zones. Figure 4.16 identifies seven different land categories,
for which the zonal ponded depth is plotted in Figure 4.17. The zonal ponded depth was
determined by first producing the ponded depth grid from the Generate Rasters toolset,
then calculating zonal statistics from the Calculate Statistics toolset. The mean ponded
depth value from the zonal statistics output table was then plotted for each day and land
category.
114
Sod
Farm
Pasture
Slough
Tributary
Impound
ment
Swamp
Woody
Shrub
Figure 4.16: Selected land categories in Pool C of the Kissimmee River
10.0
8.0
6.0
4.0
2.0
0.0
2.0
4.0
6.0
6/
1/
2003
6/
2/
2003
6/
3/
2003
6/
4/
2003
6/
5/
2003
6/
6/
2003
6/
7/
2003
6/
8/
2003
6/
9/
2003
6/
10/
2003
6/
11/
2003
6/
12/
2003
6/
13/
2003
6/
14/
2003
6/
15/
2003
6/
16/
2003
6/
17/
2003
6/
18/
2003
6/
19/
2003
6/
20/
2003
6/
21/
2003
6/
22/
2003
6/
23/
2003
6/
24/
2003
6/
25/
2003
6/
26/
2003
6/
27/
2003
6/
28/
2003
6/
29/
2003
6/
30/
2003
Day in June
Ponde
d D
e
pt
h,
f
e
e
t
Pas tur e Sw amp
Slough Tributary
Woody Shrub Impoundment
Sod Farm
Figure 4.17: Daily ponded depth in selected land categories
115
It makes sense that the tributary zone (blue) shows the highest ponded depth.
Since a tributary river flows through that zone, water level is likely to be higher than in
areas located further from a river. Notice that ponded depth may be either negative (if
the water surface is below the land surface) or positive (if the water surface is above the
land surface). The sod farm, swamp, and woody shrub all have a negative mean ponded
depth value. It is important to understand that zonal statistics represent an average over
the zone. Just because the mean ponded depth is negative does not mean that no area in
the zone is inundated. On the contrary, much of the area may be inundated but if
influenced heavily by a few areas of extraordinarily low water levels, the average may be
a negative ponded depth. If desired, a new ponded depth grid with depth values greater
than or equal to zero can be exported over which zonal statistics are calculated. The
CalculateVolume model (Figure 3.37) demonstrates creation of a new ponded depth grid
with only positive water depth values.
For a given depth class D
m
and polygon zone p, the duration of inundation T
m,p
is
calculated using Equation (43a). Likewise, for a given depth class D
m
and depth class
zone g, the duration of inundation T
m,g
is calculated using Equation (43b). The duration
of inundation for a given depth class D
m
in domain R is calculated using Equation (43c).
In all three equations, duration is calculated as the sum of time intervals within specified
time period T* for which the water depth is in depth class D
m
, multiplied by the ratio of
cell area to total zonal area in depth class D
m
at time interval j.
??
??
??
=
* ,,
,,
,
TjAi mpj
imjij
pm
p
A
at
T
?
(43a)
??
??
??
=
* ,,
,,
,
TjAi mgj
imjij
gm
g
A
at
T
?
(43b)
??
??
??
=
* ,
,,
TjRi mj
imjij
m
A
at
T
?
(43c)
116
After duration of inundation T
m
is calculated, it can be classified into duration
classes. Duration class T
n
occurs when water depth is between C
n1
and C
n
(Figure 4.18,
Equation (44)). The annotation [ ]
nn
CC ,
1?
represents a closed interval including all
values greater than or equal to c
n1
and less than c
n
(i.e. C
n1
? d
i,j
< C
n
).
Time class boundaries C
0
C
1
C
2
C
3
? C
N1
C
N
Duration classes T
1
T
2
T
3
T
N
Figure 4.18: Duration classes and their boundaries
[
nnn
CCT ,
1?
= ] (44)
For graphing purposes, statistics of interest include percent area inundated,
percent area in each depth class, percent time inundated, percent time in each depth class,
and percent area in a specified depth class and duration class.
Let A
wet
represent the area in domain R that is wet or inundated (d
i,j
? 0).
Subsequently, A
wet,j
(%) represents the percent of the domain R that is inundated at time
interval j and is equal to the cell area summed over all inundated cells in domain R
divided by the sum of the cell area in all cells in domain R (Equation 45). The Dirac
delta function
d
? (from Equation (315)) is used to select only cells with a positive water
depth d
i,j
. The portion of the domain that is not inundated is dry, as represented in
Equation (46).
() 100%
,
?
?
=
?
?
?
?
Ri
i
d
Ri
i
jwet
a
a
A
?
(45)
() (%)100%
,, jwetjdry
AA ?= (46)
117
The percent area in each depth class for a given depth range m and time interval j,
A
m
(%), is calculated using Equation (47). This is calculated as the area in depth class m
at time j divided by the total classified area.
() 100%
,
,
,
?=
?
?Mm
mj
mj
mj
A
A
A (47)
Let T
wet
represent the time that domain R is wet or inundated (d
i,j
?0).
Subsequently, T
wet
(%) represents the percent of the time that domain R is inundated and
is equal to the sum of time intervals within specified time period T* for which the water
depth is positive, multiplied by the ratio of cell area to total domain area at time interval j
(Equation (48)). The Dirac delta function
d
? (from Equation (315)) is used to select
only cells with a positive water depth. The time during which the domain is not
inundated, it is dry, as represented in Equation (49).
??
??
??
=
* ,
(%)
TjRi Rj
idj
wet
A
at
T
?
(48)
() (%)100%
wetdry
TT ?= (49)
The percent time in each depth class D
m
and time period T* in domain R, T
m
(%),
is calculated using Equation (410c). If considering a zone rather than the entire domain,
the percent time in each depth class D
m
and time period T* can be calculated in polygon
zone p using Equation (410a) and in depth class zone g using Equation (410b).
() 100
*
%
,
,
?=
T
T
T
pm
pm
(410a) () 100
*
%
,
,
?=
T
T
T
gm
gm
(410b)
() 100
*
% ?=
T
T
T
m
m
(410c)
118
The percent area for a specified depth class m and specified duration class n,
A
m,n
(%), is calculated using Equation (411). The area of cells within depth class D
m
summed over duration T
n
is divided by the area of cells within depth class D
m
summed
over the specified time period T*.
()
?
?
?
?
?
?
=
*
,,
,,
,
%
Tj
imji
Tj
imji
nm
a
a
A
n
?
?
(41)
Consider inundation as it relates to time (Figure 4.19), then as it relates to
magnitude (Figure 4.20), then as it relates to space (Figure 4.21), and finally as it relates
to all three (Figure 4.22). First consider Figure 4.19 which describes the percent of the
floodplain inundated (Equation (45)) during each day in June 2003. The graph was
created from the Ponded Depth output generated in the Classify Depths model. The
shape areas with depth classes greater than zero were summed for each day and divided
by the day?s total shape area. The floodplain extent is greatest at 36% on June 24th and
least at 28% on June 17th. This graph could be more meaningful (in identifying
inundation trends) if constructed for each month in a year, then compared between a few
years or seasons. However, because the batch scripts are not working in ArcGIS 9.0 Pre
release, the models must be executed by hand for each day analyzed. Inclusion of data
for an entire year or even several months requires an inordinate amount of time and
effort. Therefore, this thesis describes the conceptual framework to produce hydroperiod
graphs and illustrates analysis output over short time periods. The graphs can be re
created for longer time periods when the batch scripts are made functional.
Second consider Figure 4.20 which describes the percent of the floodplain in each
depth class (Equation (47)). Nearly 70% of the floodplain remained dry during June
2003; the wet portion of the floodplain was covered in varying water depths. Such
119
information may be useful to ecologists or biologists studying plant and wildlife habitats
and migration. This graph was also created from the Ponded Depth output generated in
the Classify Depths model. The sum of the shape areas associated with each depth class
was divided by the month?s total shape area to determine the percent of the floodplain in
each depth class.
Next, cell statistics of minimum, mean, and maximum were calculated over the
month of June using the Temporal Statistics model in the Calculate Statistics toolset
(Figure 4.21). The cell statistics were then classified into the depth intervals shown in the
Water Depth legend. The portion of the floodplain that was most inundated in June of
2003 is the portion just south of the confluence of Oak Creek and Kissimmee River.
With the exception of one canal leading from Lake Istokpoga, the streaks in the southern
portion of the floodplain misrepresent the actual inundation conditions. There are no
other canals in that region. The artificial streaks are caused by algorithms used to create
the DEM. Rectifying DEM artifacts is out of the scope of this research. Similar spatial
distribution statistics could be calculated between or across months, seasons, and years.
120
0
5
10
15
20
25
30
35
40
6/
1/03
6/
2/03
6/
3/03
6/
4/03
6/
5/03
6/
6/03
6/
7/03
6/
8/03
6/
9/03
6/
10/03
6/
11/03
6/
12/03
6/
13/03
6/
14/03
6/
15/03
6/
16/03
6/
17/03
6/
18/03
6/
19/03
6/
20/03
6/
21/03
6/
22/03
6/
23/03
6/
24/03
6/
25/03
6/
26/03
6/
27/03
6/
28/03
6/
29/03
6/
30/03
Day in June
P
e
r
c
e
n
t
of
Fl
ood
p
l
a
i
n
W
e
t
36
28
Figure 4.19: Percent of floodplain inundated during June 2003
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Dry 0.001
0.25
0.25
0.50
0.50
0.75
0.75
1.00
1.00
1.25
1.25
1.50
1.50
1.75
1.75
2.00
2.00
2.25
2.25
2.50
> 2.50
Water Depth Interval, feet
P
e
r
c
e
n
t
Fl
oodpl
a
i
n
Figure 4.20: Percent of floodplain in each water depth interval
121
(a) Minimum (b) Mean (c) Maximum
Figure 4.21: Spatial distribution of minimum, mean, and maximum water depths
Presentation of hydroperiod analysis culminates in Figure 4.22, which portrays
water depth as it changes through space and time. Again, the graph was created from the
Ponded Depth output generated in the Classify Depths model. The Ponded Depth feature
class has date, depth class, and area in its attribute table. The percent area in each depth
class was calculated and classified for a second time into day classes (i.e. 15 days, 610
days, and so on). Durations are calculated by summing the number of days each cell
had depths within the specified depth range. This provided the necessary three
parameters?percent area, day class, and depth class?to produce the graph. Though
complex, this graph presents a comprehensive summary of hydroperiod. Each bar is
located over a depth range, and may consist of one or more blocks. The length of the
blocks within the bar represents the percent of floodplain inundated at that depth range.
The color of the blocks within the bar represents different time spans.
122
0%
5%
10%
15%
20%
25%
30%
0.0010.25 0.250.5 0.50.75 0.751.0 1.01.25 1.51.75 1.752.0 > 2.0
Depth Intervals, feet
P
e
r
c
e
n
t
Floo
d
p
la
in In
un
da
t
e
d
2630 days
2125 days
1620 days
1115 days
610 days
15 days
Figure 4.22: Duration and percent of floodplain inundated at different depth intervals
Consider the first bar in Figure 4.22, located in the 0.0010.25 foot depth range.
The bottom block is blue which corresponds to a time span of 15 days, and extends from
0%9% floodplain inundation. The bottom blue block is translated as 9% of the
floodplain is inundated at a depth between 0.0010.25 feet between 15 days out of the
month. The next block is coral which corresponds to a time span of 2630 days, and
extends from 9%17% floodplain inundation. This means that 8% of the floodplain is in
the 0.0010.25 foot depth range 2630 days a month. No meaning should be derived from
the total bar height (the fact that the sum of the blocks puts the top of the bar at 17%
inundation is of no significance).
Figure 4.22 represents data from the month of June 2003. When data is analyzed
over longer time spans, greater variation will be observed in the number of days the
123
floodplain is inundated in each depth class. For example, June is part of the wet season
in South Florida, so more of the floodplain is typically inundated during this month than
in a month during the dry season. Also, data may be compared between months or
between years to derive monthly, seasonal, and annual trends. For example, El Nino
weather conditions in 1997 and 1998 resulted in 15% of the floodplain having water
depths ranging from 1.01.5 feet for 130 days. This magnitude of inundation over such a
large extent and time span was immediately recognized as abnormal when compared with
previous years? data.
Volume grids were created for each day in June of 2003 using the
CalculateVolume model. Zonal statistics were then calculated for each volume grid
using the ZonalStatistics model. The zone input file consisted of three zones: the river,
the floodplain, and the combined river/floodplain system. The statistics output table was
then exported to Excel and used to graph the daily mean volume in each 60 ft by 60 ft
cell (Figure 4.23) and the daily total volume in each zone (Figure 4.24). As evident in
these figures, the mean cell water volume in the river is 20003000 cubic feet more than
the mean cell water volume in the floodplain. However, because the floodplain covers a
much greater area than the river, the total water volume in the floodplain is about 100
times larger than the total water volume in the river. When these water volumes are used
in conjunction with flow measurements, residence times and nutrient assimilation in the
river, floodplain, and combined river/floodplain system can be calculated.
124
0
1000
2000
3000
4000
5000
6000
7000
8000
6
/
1/
200
3
6
/
2/
200
3
6
/
3/
200
3
6
/
4/
200
3
6
/
5/
200
3
6
/
6/
200
3
6
/
7/
200
3
6
/
8/
200
3
6
/
9/
200
3
6/
10/
200
3
6/
11/
200
3
6/
12/
200
3
6/
13/
200
3
6/
14/
200
3
6/
15/
200
3
6/
16/
200
3
6/
17/
200
3
6/
18/
200
3
6/
19/
200
3
6/
20/
200
3
6/
21/
200
3
6/
22/
200
3
6/
23/
200
3
6/
24/
200
3
6/
25/
200
3
6/
26/
200
3
6/
27/
200
3
6/
28/
200
3
6/
29/
200
3
6/
30/
200
3
Day in June
M
e
a
n
C
e
l
l
W
a
t
e
r
V
o
lu
m
e
, cu
b
i
c f
e
e
t
Floodplain
System
River
Figure 4.23: Daily mean water volume in each 60ft x 60ft cell
0
50
100
150
200
250
300
350
6/1/
2
003
6/2/
2
003
6/3/
2
003
6/4/
2
003
6/5/
2
003
6/6/
2
003
6/7/
2
003
6/8/
2
003
6/9/
2
003
6/
1
0
/
2
003
6/
1
1
/
2
003
6/
1
2
/
2
003
6/
1
3
/
2
003
6/
1
4
/
2
003
6/
1
5
/
2
003
6/
1
6
/
2
003
6/
1
7
/
2
003
6/
1
8
/
2
003
6/
1
9
/
2
003
6/
2
0
/
2
003
6/
2
1
/
2
003
6/
2
2
/
2
003
6/
2
3
/
2
003
6/
2
4
/
2
003
6/
2
5
/
2
003
6/
2
6
/
2
003
6/
2
7
/
2
003
6/
2
8
/
2
003
6/
2
9
/
2
003
6/
3
0
/
2
003
Day in June
T
o
t
a
l F
l
o
o
d
p
lain
an
d
S
yst
e
m
W
a
t
e
r
V
o
lu
m
e
,
m
i
ll
io
n
s
o
f
c
u
b
i
c f
e
et
0
1
2
3
4
5
T
o
t
a
l
R
i
ver
W
a
t
e
r
V
o
lu
m
e
,
m
i
ll
io
n
s
o
f
c
u
b
i
c f
e
et
Floodplain
System
River
125
Figure 4.24: Daily total water volume in each zone
Finally, TSPlotter was developed by Jonathon Goodall at the CRWR in order to
graph temporal data within ArcGIS. By selecting features of interest, an attribute for one
or more features is displayed over the selected time period (Figure 4.25). TSPlotter was
programmed in Visual Basic using ArcObjects and Microsoft chart tools, saved as a
DLL, and is accessible through the ArcGIS toolbar. After clicking on the TSPlotter
button (Figure 4.25(a)), the TimeSeries Plotter window (Figure 4.25(b)) allows the user
to select the layer and time series type to be graphed. The Start Date and End Date are
automatically updated to reflect the full range of dates available for the layer and type
combination; a date can be changed by clicking on the drop down arrow of the date box
and selecting the desired date from a calendar. The data is graphed by clicking on the
Plot button. The graph may be displayed in line (Figure 4.25(c)) or point format (Figure
4.25(d)), and in linear or log scale. A different line color or point type is used to
represent different HydroIDs for the selected features. TSPlotter capabilities are
currently confined to Arc Hydro TimeSeries and TSType table schemas.
Figure 4.25 was created using TSPlotter and shows stage at five points along the
Kissimmee River throughout the month of June 2003. Stage at the top of Pool C is
higher than at the bottom of Pool C. This is expected since the land surface elevation
slopes downward along the river. Also, points near the top of Pool C have more variable
stage over time, while points at the bottom of Pool C have more static water levels over
time; this is attributable to the spreading of water across the floodplain before reaching
the bottom of the pool. TSPlotter can also be used to plot depth and volume over time,
but the tool is currently unable to produce other graphs shown in Section 4.3. Technical
changes required to improve tool capabilities should be investigated.
126
(b)(a)
(d)
(c)
Figure 4.25: Stage in Kissimmee River graphed using TSPlotter
127
4.4 APPLICATION OF THE ENHANCED ARC HYDRO TIME SERIES DATA MODEL
An enhanced Arc Hydro Time Series Framework was developed through this
hydroperiod analysis. As outlined in Goodall et al. (2004), the enhanced framework
consists of four types of temporal data: time series, attribute series, raster series, and
feature series. Incorporation of this suite of temporal data into a geographic information
system enables visualization of complex water resources phenomena that occur through
space and time. Since all four time series types are utilized in the hydroperiod tool, this
analysis demonstrates the applicability of the framework and possible means of moving
between time series types within the framework (Figure 4.26).
4.4.1 Time Series
The Time Series component of the enhanced Arc Hydro time series model (Figure
4.26(a)) is represented in this hydroperiod project by DBHydro. DBHYDRO is an
Oracle database maintained by the South Florida Water Management District which
stores historic and current hydrologic, meteorologic, hydrogeologic, and water quality
data for the 16 counties included in the SFWMD. Daily stage values for the 21
monitoring stations in Pool C are accessible through the DBHYDRO browser
(http://www.sfwmd.gov/org/ema/DBHYDRO/index.html), which can be displayed,
summarized, and extracted based on userentered search criteria (i.e. station names, start
and end dates, etc). The DBHYDRO database is a catalog of time and value pairs
associated with an object identifier, and functions as the Time Series component in the
enhanced Arc Hydro Time Series Framework. For hydroperiod analysis, the DBIngest
model is used to extract temporal data from DBHYDRO and load it into Attribute Series
format (Figure 4.27). When temporal data is not accessible through a URL, a database
128
connection and data bridge can used to extract the time series data from a time series
repository and load it into a geodatabase.
(c)(b)
(d)(a)
Figure 4.26: Enhanced Arc Hydro Time Series Framework
Courtesy: Mike Zeiler, ESRI, 20 Jan 2004
129
Figure 4.27: Sample Time Series data query from DBHYDRO browser and associated
Attribute Series table
The Danish Hydraulic Institute (DHI) has developed a MIKE Object TimeSeries
package to manage time series data in ArcGIS. From ArcMap, a user can load time
series into a personal geodatabase, build associations between features and time series
data, query features and/or time series data, calculate simple statistics, and plot a graph of
time series data (DHI, 2004). DHI TimeSeries tools may be utilized to produce graphical
output desired from the hydroperiod tool. Figure 4.28 shows the daily depth of
inundation in a selected zone through the month of June. Such a graph is generated
simply by creating an association between a feature class and a time series table, then by
right clicking on the feature of interest and selecting Plot.
130
Figure 4.28: Sample plot generated from DHI TimeSeries tools
4.4.2 Attribute Series
131
The Attribute Series component (Figure 4.26(b)) represents the existing Arc
Hydro Time Series model, which stores information indexed by feature, type, and time.
This component does not retain the source tabular structure; rather it provides a
repository for time series data derived from measurements or models, which is inherently
related to a feature class. As in the original Arc Hydro Time Series framework, the
Attribute Series is meant to help query or select: (1) a collection of time series data for a
given feature, (2) a collection of features at a given time, or (3) a collection of time series
for many features; it helps organize and group time series selection. By adding Feature
ID to Time Series (from DBHYDRO), the data can be stored as an Arc Hydro Attribute
Series. The Attribute Series is described by feature ID, value, time, and type. The Arc
Hydro Attribute Series is then joined with the hydroperiod point feature class (which
represents the stations where stage is measured), and is used to interpolate a water surface
(Figure 4.29).
Attribute Series
Hydroperiod
Points
Figure 4.29: Attribute series joined with point feature class
Several different tables are utilized to organize different attributes, rather than
trying to store all information in a single table. The features can all be stored in a single
table but there are several reasons why it makes sense to store different attributes in
different tables. First, each set of features can be stored in a table named according to the
type of features stored in that table, making the table easily identifiable and accessible.
Second, when an attribute series serves as input to a model, a smaller table can be
searched more quickly for queried records.
The Attribute Series and TSType tables exist in conjunction with two other
Attribute Series tables. One table stores a collection of water depth measurements
recorded at irregular time intervals throughout the Pool C floodplain and is used to
evaluate the accuracy of various interpolation methods. Other tables store statistical
attributes. The ponded depth grid (described in the Raster Series section) is overlaid with
zones specified by the user (i.e. habitat zones or land categories) and ArcGIS Spatial
Analyst zonal statistics are calculated for each zone. The date is added to the statistics
and that table is then appended to a master zonal statistics table used for hydrologic
analyses (Figure 4.30).
132
Ponded Depth
Inundation Grid
Zones
(Land Categories
or Habitats)
Zonal Statistics Attribute Series
Figure 4.30: Calculation of zonal statistics
4.4.3 Raster Series
133
The Raster Series component (Figure 4.26(c)) stores rasters indexed by time. In
the case of the hydroperiod analysis, a single land surface elevation raster exists, and
timeindexed water surface elevation and ponded depth (inundation) rasters are generated
from data stored in Attribute Series. Nonnull values are selected for a single day from
the Attribute Series and are spatially interpolated based on the interpolation method
selected from ArcGIS (i.e. Kriging, IDW, Spline, etc.). The interpolation generates a
water surface elevation grid, from which the land surface elevation grid is subtracted to
produce a ponded depth grid (Figure 4.31). This process is repeated through the period
of analysis defined by the user. The water surface elevation grids are stored only
temporarily during execution of the tool, but the ponded depth grids are stored in a folder
(raster catalog in the future) for later reference. Each ponded depth raster, water surface
elevation raster, volume raster and statistics raster occupies 800 KB; the reclassification
rasters occupy 200 KB. Space required to store ponded depth, water surface, and volume
rasters is approximately 30 MB for data spanning one month, 350 MB for one year, and 1
GB for three years.
Ponded Depth
Inundation Grid
Interpolated
Water Surface
Elevation Grid
Land Surface
Elevation Grid
Figure 4.31: Spatial interpolation of water surface elevation and calculation of ponded
depth grid
For biological analysis, a reclassify tool (described in Section 3.2.4) is used to
create a new ponded depth grid that is classified according to userdefined intervals
(Figure 4.32). To maximize flexibility of the tool, the user has total freedom to define the
depth classes in any way desired, at any regular or irregular interval. This reclassified
depth grid is stored only temporarily because it is converted into dissolved polygons
(described further in Section 4.4.4) to minimize storage. For water quality analysis, the
ponded depth value in each cell is multiplied by the area of each cell to calculate the
volume of water in each cell, then in the river, over the floodplain, and in the
river/floodplain combined system.
134
Reclassified
Ponded Depth Grid
Ponded
Depth
Inundation
Grid
Depth
Class
Intervals
Figure 4.32: Reclassification of the ponded depth grid
4.4.4 Feature Series
The Feature Series component (Figure 4.26(d)) stores map attributes indexed by
geographic location. A feature series is described by shape, value, and time, all of which
can change. Using the geographic location in conjunction with time indexed data from
one of the other components, time indexed shapes and map animation may be produced,
as supported by ArcGIS Tracking Analyst.
When the reclassified ponded depth grid is converted to polygons, the geographic
area is covered by many polygons, each polygon representing a single depth class.
However, because the same depth class may occur in different, unconnected locations
throughout the floodplain, a single depth class may by represented by many polygons.
Polygons sharing a depth class are then dissolved into a single polygon feature (this
feature can consist of unconnected polygons, but if one of the polygons is selected, all
polygons will be highlighted since it is now considered a single feature). The date is then
appended to the dissolved polygons so that on any one day, if there are five depth classes,
there will be five features, each with the same date stamp. This data is then loaded into a
master ponded depth feature class (Figure 4.33).
135
Figure 4.33: Conversion of classified ponded depth grid to a dissolved polygon feature
class
The master ponded depth feature class is used as input for ArcGIS Tracking
Analyst to view the extent and classification of inundation animated over time, which has
both biologic and hydrologic value. ArcGIS Tracking Analyst is an ESRI extension for
mapping objects that move or change status through time (ESRI, 1998). Data can be
played backward or forward through time, and at any speed. The Playback Manager
shows the dates included in the feature class, with blue spikes at each time step and a red
arrow indicating the time currently displayed. The playback rate can be adjusted to view
temporal and spatial changes at different time steps (i.e. one day per second versus one
minute per second, depending on the type of data analyzed). In Figure 4.34, each shade
of blue corresponds to a different depth class. For example, the lightest shade of blue
corresponds to a depth class of zero, meaning that the area is dry; the next slightly darker
shade of blue corresponds to a depth class of one, meaning the area is inundated between
0.0010.5 feet. The depth classes, changing polygon shapes, and associated times all
come from the master ponded depth feature class.
136
Figure 4.34: ArcGIS Tracking Analyst view of depth classified polygons changing
through time
4.5 APPLICATION OF TEMPORAL GEOPROCESSING
Temporal geoprocessing for hydroperiod analysis of the Kissimmee River
provides a practical illustration of integration of space (GIS) and time (hydrologic data);
it exemplifies storage and visualization of a complex temporalspatial event. By
identifying different types of temporal data (Time Series, Attribute Series, Raster Series,
and Feature Series) and describing movement between types using geoprocessing tools
available in GIS, the hydrologic and geographic worlds are merged.
The hydroperiod conceptual framework was developed to meet the requirements
not only for Kissimmee River Restoration evaluation, but was also general enough to
apply to other hydrologic analyses. In fact, the models developed for hydroperiod
analysis will be used as a launching point for groundwater studies underway at the
University of Texas. A similar concept applies when calculating the thickness of an
aquifer?the bottom water level is subtracted from the top water level to produce the
137
thickness of groundwater in the aquifer, just as the land surface is subtracted from the
water surface to calculate the ponded depth of surface water. Principles of this research
may also be applied to other engineering problems including evaluation of
wetland/ecosystem restorative success and determination of magnitude, duration, and
location of flood inundation.
Though hoping to identify an interpolation method best suited for hydroperiod
analysis, the determination that interpolation has very little effect on hydroperiod
estimation accuracy is useful in itself. It allows emphasis to be removed from
interpolation and placed on more influential factors, such as topographic data or
monitoring station positioning.
The enhanced Arc Hydro Time Series framework can be used in a GIS for
temporal and spatial synthesis of hydrologic parameters such as rainfall, stream flow,
nutrient loading, stage, and so on. ModelBuilder can be applied similarly to any problem
requiring repetitive geoprocessing. ESRI suggests using ModelBuilder to build land use
suitability models, environmental sensitivity models, hazardous risk models, and social
impact models (Spalding, 2000). A working model can be constructed to repeat the same
process or an easily altered version of the process, using the same or different parameters,
to be used by a single person or by multiple people. Overall, ModelBuilder is designed to
automate spatial processes, but with incorporation of the enhanced time series model, it is
used in this research to automate spatial and temporal processes.
As with any explorative study, several areas for further analysis have been
uncovered. ModelBuilder successfully links existing and scripted tools together in a
model; however, two primary shortcomings were identified. First, ModelBuilder is not
equipped to loop through time, and scripts forcing a model to be executed multiple times
for each time step in a selected period of analysis are difficult to troubleshoot. Second,
138
ModelBuilder is not yet able to select or store files in a Raster Catalog. More
sophisticated automated graphing and plotting of ModelBuilder output would be
extremely useful for hydroperiod evaluators. Other areas for further study include spatial
and temporal autocorrelation, regression analysis, and normal distribution for data
produced from hydroperiod analysis. Preliminary graphing and correlation examination
reveal that more monitoring stations may be needed to improve water surface
interpolation, thereby producing more accurate water depths throughout the floodplain.
139
Chapter 5: Conclusions
A hydroperiod analysis method was developed in ArcGIS 9.0 using ModelBuilder
to evaluate depth and duration of inundation over a restored section of the Kissimmee
River. Results from hydroperiod analysis provide information necessary to evaluate
biological, hydrologic, and water quality response of the Kissimmee River ecosystem to
restoration. The method used to complete the analysis, findings from the analysis,
significance of the analysis, and possible enhancements to the analysis are summarized in
this chapter.
5.1 SYNOPSIS OF HYDROPERIOD ANALYSIS
Hydroperiod analysis consists of many modular components, which can be strung
together in any fashion desired by a user. The components are summarized as follows.
Temporal data is downloaded from an online repository and loaded into Arc Hydro
Attribute Series format. This attribute series contains stage measurements from the Pool
C area of the Kissimmee River and is joined with a point feature class comprised of
associated monitoring stations. A water surface is interpolated using the interpolation
method of choice. (A riverweighted approach may be used to give the river more
influence in the interpolation of floodplain water levels.) The land surface is then
subtracted from the water surface to produce a grid representing depth of inundation over
the study area. When repeated over time, this process yields depth and duration
information. From here, one of three things may be done. First, the inundation grid may
be classified into user defined depth intervals; this initially produces a classified grid
followed by dissolved classified polygons. Second, temporal, spatial, summary, or any
combination of these statistics may be calculated on either the inundation grid or the
depth classified polygons. Third, a volume grid may be calculated by multiplying the
140
positive portion of the inundation grid by cell area. To calculate the volume in the river,
floodplain, or combined river/floodplain system, zonal statistics must be calculated using
the river and the floodplain as zones. Collectively, this analysis produces temporal
geoprocessing of a specified geographic area over a specified period of analysis.
Temporal and spatial information is effectively integrated for evaluation of ecological
restorative success of the Kissimmee River.
Interpolated water depths produced from hydroperiod analysis were compared to
field measurements in the restored portion of the river. Mean error and root mean square
error were calculated between interpolated and measured values for a variety of
interpolation methods, yielding information regarding the validity of the analysis as well
as the effect of interpolation method and strong influence of topography on calculated
water depths.
Graphical and spatial depictions were created in Excel and ArcGIS to demonstrate
the usefulness of this analysis method in determining inundation trends over time.
Variability in depictions of hydroperiod information illustrate this tools? usefulness in
understanding and predicting inundation depths effecting bird, fish, vegetative, and other
ecological behavior.
5.2 FINDINGS
Conclusions drawn from the hydroperiod analysis method created and executed
for this research include the following:
1. A mathematical framework was defined for calculating hydroperiod, which is the
depth and duration of inundation over time (Appendix D).
2. Variability of mean error and RMSE values between postconstruction grids
suggests that depth prediction depends more on topographic quality than
interpolation method utilized; accurate land surface elevation values are critical to
141
predicting valid water depths. This conclusion was reached by comparing
measured and interpolated water depths at 136 points across the floodplain,
sampled on six days. The interpolation was performed using seven different
interpolation methods and two different land surface elevation grids. Then mean
error and RMSE were calculated between measured and interpolated water
depths. Mean error varies between interpolation methods by only 0.1403 feet, but
between land surface elevation grids by 1.131 feet. Likewise, the RMSE values
vary between interpolation methods by only 0.1553 feet (8.2%), while RMSE
values vary between land surface elevation grids by 2.2629 feet (60.6%). These
results support the contention that topographic accuracy is more influential than
the interpolation method used to predict water depth.
3. Since most water depth points with large prediction error (RMSE ? 2.0 feet) are
located between transects and along the floodplain boundaries (Figure 4.7), more
monitoring stations may be needed in those locations. The existence of more
monitoring stations will increase the number of stage values used to interpolate a
water surface, thereby improving the accuracy of the water surface elevation grid
and subsequently increasing the accuracy of water depth prediction.
4. Although slight, Natural Neighbors and Kriging produce less water depth
prediction error than IDW and Spline interpolation methods.
5. ModelBuilder is wellequipped to link existing ArcGIS tools together using visual
programming; however, ModelBuilder is an emerging technology with limitations
and does not yet reliably support looping through time, thus restricting current
implementation of a total solution for hydroperiod analysis.
6. Modular design of the hydroperiod analysis tools maximizes flexibility and
functionality according to user preferences.
142
7. The enhanced Arc Hydro Time Series Framework was visualized in the temporal
geoprocessing completed for hydroperiod analysis of the Kissimmee River
restoration area.
8. The generalized conceptual framework for hydroperiod analysis applies to other
engineering evaluations of inundation, ecosystems, surface/groundwater and
more.
5.3 SIGNIFICANCE OF RESEARCH
No mathematical definition of hydroperiod formerly existed. The development of
a set of equations describing inundation over space and time is a new and significant
contribution, which documents and describes what is accomplished in hydroperiod
analysis. This mathematical translation will be preserved and useful far after the current
version of ModelBuilder becomes obsolete. That said, this research does demonstrate the
ability to use ModelBuilder to complete repetitive temporal geoprocessing functions.
The hydroperiod methodology implemented for this research was completed in a general
way to enable application to other inundation evaluations.
This research suggests that water depths have greater dependency on quality
topographic data than on interpolation methods used to calculate water depths. RMSE
variation between grids (2.2629 feet) is more than an order of magnitude larger than
variation between interpolation methods (0.1553 feet). Such a conclusion may prompt
future evaluators of hydroperiod to assess and optimize topographic data before
proceeding with further analysis.
This research contributes to the integration of temporal information into a
geographic information system. Data storage has evolved from relational databases to
geospatial geodatabases and now to temporal geodatabases. This hydroperiod analysis
showcases the application of an enhanced temporal data model in ArcGIS Arc Hydro.
143
5.4 FUTURE RESEARCH
Considerable value may be added to the hydroperiod analysis method by making
the following changes or enhancements:
1. Incorporate looping into ModelBuilder functionality to enable a model to easily
be executed multiple times over a user specified period of analysis.
2. Improve hydroperiod estimation by creating a twodimensional hydraulic model
to be calibrated using previously observed values.
3. Automate more sophisticated graphical output of spatial and temporal information
within ArcMap.
4. Include additional variables known to influence water surface elevations and
distributions (i.e. erosion, evaporation, etc.) in hydroperiod analysis.
5. Incorporate stagedischarge relationships and stage recession rates into
hydroperiod analysis to more fully characterize floodplain inundation.
6. Expand the network of monitoring stations to more comprehensively describe the
river/floodplain system under low flow conditions.
7. Generate multiple land surface elevation grids using different methods to convert
contour lines to raster; trial and error assessment in conjunction with familiarity of
ground truth is needed to produce the best grid for its intended purpose (since
Florida?s terrain is extraordinarily flat, topographic accuracy is of great
importance).
8. Integrate output rasters into a Raster Catalog in the working geodatabase.
9. Complete spatial and temporal autocorrelation, regression analysis, and normal
distribution for data produced from hydroperiod analysis.
10. Represent surface water volume as a volume object in ArcGIS.
144
Appendix A: ModelBuilder Tutorial
*** Disclaimer: Models described in this tutorial were constructed in ArcGIS 9.0 Beta II
version and have since been upgraded and modified for ArcGIS 9.0 Prerelease.
Using ModelBuilder for Hydroperiod Analysis
By Jennifer Sorenson, Jon Goodall, David Maidment
Center for Research in Water Resources
University of Texas at Austin
19 December 2003
ModelBuilder was developed by ESRI as a userfriendly way to build spatial models.
The model is represented by a process flow diagram, which makes the models easy to
construct, modify, and present to others. Smaller models can be combined to create a
larger model, meaning a model can be called from within a model. Models can have
useridentified parameters, which change with every run. ESRI notes the following key
features:
? Represent models as process flow diagrams,
? Use predefined functions for building a model,
? Use data from ArcGIS as input into a function,
? Construct models using diagramming tools,
? Layout models automatically or manually,
? Change data and/or properties and rerun the model,
? Export models into other models, and
? Share models (as a single XML file).
The predefined functions used in Model Builder are stored as tools in ArcToolbox. We
will clickanddrag these tools into our model. Therefore, you will need to verify the
tools are available in ArcToolbox. If not available, go to ToolsCustomizeCommands,
click on the ArcToolbox category and the ArcToolbox command and add these tools
from their source folder. Under ToolsExtensions, make sure the Spatial Analyst
extension is checked.
145
? The toolbox as shown to the left, is
a container for tools and toolsets.
ArcGIS 9.0 currently contains eight
toolboxes (3D Analyst Tools,
Conversion Tools, Spatial Analyst
Tools, etc).
? Each toolbox contains many
toolsets, such as Interpolation, Map
Algebra, etc. Each toolset contains
many tools.
? Tools are single geoprocessing
operations (i.e. dialog, model,
script, custom built tools).
Toolbox
Toolset
Tool
Organize the Information
It is good practice to create a new toolbox, where you can store multiple toolsets, each
with models and/or scripts. Then you can write a script to combine models and scripts as
appropriate. Use of toolsets helps organize the different phases in the overall model.
Consider the following Hydroperiod Toolbox:
Project Toolbox
#4
#3
#2
#1
Model (one of many)
Toolset (one of many)
Script (one of many)
Model (single overall)
146
The red circled Overall Model is a single model created with all components for the
Hydroperiod Tool. Because all functionality is stored in one model, it is difficult to
follow the flow diagram and understand what is going on. All other toolsets shown
comprise the alternate overall model. Each toolset name is representative of the function
performed in the enclosed model. Each model is shown with a batch script which loops
through the associated model over time. The toolsets are numbered to show the possible
order the toolsets could be organized in a master script. The General Utilities toolset
contains scripts, which are called by the other models.
Build the Hydroperiod Tool Model
The purpose of the Hydroperiod Tool is to define the depth and duration of flood
inundation as a function of location in the Pool C area of the Kissimmee River Basin.
We will construct several models that can be used in conjunction to achieve this purpose.
Let?s get started.
1. In ArcCatalog, navigate to the folder where you will store your model. Right click on
the folder, and select New, then Toolbox. Name your toolbox: Hydroperiod
Toolbox.
2. Let?s set up the outline of the overall model:
147
? We know we want to use our stage data to interpolate the water surface and find
the ponded depth over the floodplain (we?ll call this the Generate Rasters
toolset).
? We want to calculate mean using one of three approaches (Calculate Mean
toolset).
? We want to classify ponded depth values into userdefined classes (Classify
Depths toolset).
? We want to calculate zonal statistics of the ponded depth raster using an input
coverage, such as Landcats (Zonal Statistics toolset).
? Other functionality such as graphing output analysis can be added in the future.
Right click on Hydroperiod Toolbox. Select New, then Toolset. Name the toolset
Generate Rasters. Repeat this process for the other toolsets.
3. Within the Generate Rasters toolset, create a new model. Right click on Generate
Rasters, and select New, then Model. When the new model window opens, just exit
out of it so we can finish our set up; we?ll come back to it. Right click on the model
name, select rename, and name it: Generate Rasters Model. Later, you can add a
script to automate looping of the model to generate rasters over multiple days.
Repeat this process for the other toolsets (except General Utilities since that toolset
contains only scripts). The Calculate Mean toolset will contain three models
(Approach1, Approach2, and Approach3).
148
4. Now you are ready to start building a model! Let?s start with the Generate Rasters
Model. To open the model you created, right click on the model name, and select
Edit. This will open the following window:
5. If ArcToolbox is not yet open, click on the Toolbox icon at the top of the screen.
To build the model, we will simply clickanddrag tools from the toolbox into the
model window.
6. The purpose of the Generate Rasters Model is to interpolate a water surface
elevation raster from stage values extracted from DBHydro, and calculate a ponded
depth raster from the water surface elevation and land surface elevation rasters. To
that end, three components are needed:
A. Starting with an Arc Hydro time series file and a Hydroperiod point feature
class, the model joins the TimeSeries data for a single day with each
Hydroperiod point.
149
B. The daily stage values (now associated with the hydroperiod points) are used
to interpolate a water surface covering the Pool C floodplain.
C. The land surface elevation is then subtracted from the interpolated water
surface elevation to determine the daily ponded depth grid.
Start with Component A. Load the selected TimeSeries data from DBHydro into
Arc Hydro TimeSeries format. Presumably, the TimeSeries data will span multiple
days. We are first going to build our model to generate rasters for one day at a time.
As such, we need to be able to associate the TimeSeries data from a single day with
150
the monitoring points. We must make a view of the TimeSeries table to be able to
select a single day?s data.
You?ll notice that ArcToolbox has three tabs: Favorites, Index, and Search. Play
around with each tab to determine your favorite way of finding the tools you need. I
think the Search tab is particularly helpful since you are able to type a keyword and
return all tools applicable to that keyword. Try typing in ?table?. We want to make a
table view, so find the tool called ?Make Table View? and clickanddrag the words
into the model window. You will see the words convert to the following:
The box represents the process and the oval represents the output table. You will
notice both are colored white. When all the required input information is supplied,
these boxes will change color. Double click on the ?Make Table View? box. A
properties box will pop up. The green dot next to the Input Table indicates that an
input parameter is needed.
There are three ways to supply the necessary input table. One way is to type in the
path of the input table source in the properties box. When you do this, a new blue
oval (color assigned to input parameters) will appear in front of the ?Make Table
View? box with a connecting arrow. The ?Make Table View? box will turn yellow
(color assigned to processes/tools) and the ?TimeSeries Table? oval will turn green
(color assigned to output). When all the blocks are colored, you can be confident you
have supplied a source for all required inputs. The model is now ?runable? though it
will not produce anything of value to us yet. We need to add some more
functionality.
151
A second way to supply the input parameter is to locate the input table in ArcCatalog
and clickanddrag the table into the model window. The input table will
automatically appear in a blue oval, but it will not be connected to anything else. You
will need to make the connection yourself. Click on the connector icon , then
click on the input table oval, then click on the ?Make Table View? box. The
connecting arrow will form and all the blocks will be colored. Again, this is a sign
that you are ready to continue building other parts of your model.
152
A third way to supply the input parameter is to right click on the ?Make Table View?
box and select Make Variable, then From Parameter, then Input Table. This will
result in a white colored oval being added to the model with the appropriate
connector. You must double click on the ?Input Table? oval to enter the source of the
input table. When you do so, the entire model will become colored, indicating that all
required inputs have been supplied.
Once you have the blue input oval, you may choose to make the oval an input
parameter, by right clicking on the oval and selecting Model Parameter. A ?P? will
appear to the upper right of the blue oval, indicating that it is a model parameter.
Every blue oval that is marked with a ?P? will require the user to specify its input
source. This is a great way of keeping the model flexible.
153
If your model is looking at all messy, use the automatic layout icon to organize
and align your model blocks. Also, use the full model view icon to view your
whole model at a glance (this icon may become more valuable as the model grows).
Now that you have a table view, you can perform the table select. Find the required
tool in the toolbox as you did before. I like to search for the keyword ?table? in the
Search tab, then clickanddrag ?Table Select? into the model window (put it
anywhere; you can organize the model later using the automatic layout icon).
Connect the TimeSeries Table View green oval with the new ?Table Select? box
using the connector icon. The blocks are all colored now, so we could proceed, but
we want to specify the date to select so we need to add a parameter, this time in the
form of an expression. Right click on the ?Table Select? icon, click on Make
Variable, then From Parameter, then Expression. Enter an expression such as the
sample provided below. Then right click on the blue oval to make it a Model
Parameter. This way, the user can enter the date about which they are interested.
Now you need to perform the join between the selected day of TimeSeries data and
the hydroperiod point feature class. Search for a tool to join. You should find a tool
called ?Add Join?. Clickanddrag ?Add Join? into the model window. Before you
154
can make the join, the hydroperiod point feature class must be converted to a layer. If
you didn?t know this, you could find this out by double clicking on the ?Add Join?
process box. As observed below, the join requires an input layer.
Search for a tool to convert a feature class into a layer. Clickanddrag ?Make Layer?
into the model window. Right click on the ?Make Layer? process, select Make
Variable, From Parameter, Input Features. (You can also elect to do this one of the
other methods described earlier). Double click on the Input Features oval and provide
the input source. Then make this blue oval a Model Parameter.
155
You can provide the required inputs into the ?Add Join? process by connecting the
output hydroperiod point layer to the ?Add Join? block and the output single day of
TimeSeries selection to the ?Add Join? block. All blocks in your model should now
be colored, and you are finished with Component A. You are able to rename the
ovals by right clicking on the oval and selecting ?rename?. You are actually able to
rename the yellow blocks, but for sake of consistency and ease of recognition, I
would recommend not altering the process/tool names. So far, your model should
look something like this:
Each block can be described as follows:
? Arc Hydro TimeSeries ? Input Arc Hydro TimeSeries table, which stores
daily stage values for monitoring points in the Pool C floodplain (see note*).
? Make Table View ? Make a view of the TimeSeries table which is necessary
to perform a select on the table.
? TimeSeries Table View ? Output Arc Hydro TimeSeries table view.
? TSDateTimeQuery ? Date by which to query the TimeSeries table. Data will
be selected for only one day at a time. The user will enter a date range in the
input GUI, and the batch program will cycle through one day at a time
accordingly.
? Table Select ? Select time series data for one day (as specified by the
TSDateTimeQuery parameter) from the Arc Hydro TimeSeries table and write
the selected data to a new table.
? Day of Time Series ? New table which stores the selected day?s TimeSeries
data. This is a temporary table which will be created for each day included in
analysis.
? Hydroperiod Point FC ? Input hydroperiod point feature class, which
consists of the 21 monitoring points across the Pool C floodplain.
? Make Layer ? Convert the hydroperiod point feature class to a layer, which is
necessary to join TimeSeries data to the feature.
? Hydroperiod Point Layer ? Output hydroperiod point layer.
156
? Add Join ? Join a single day of TimeSeries data to the hydroperiod point
layer.
? Hydroperiod Points with TimeSeries ? Output hydroperiod points with
TimeSeries data.
Now we need to add on Component B functionality. Since many interpolation
processes will fail if null values are included, we need to select only nonnull values
from the selected TimeSeries table. We can do this by adding the ?Select Layer by
Attribute? tool with a parameter expression which selects only nonnull values. (We
won?t make this blue oval a Model Parameter because we don?t want the user to have
to enter this information; every time we run this model, we want it to do the same
thing.) The ?Select Layer by Attribute? tool will then write the nonnull values to a
new feature class.
Now we are ready to add the interpolation tool! One great benefit from using
ModelBuilder is the ease of substituting other interpolation tools if we want to use or
compare different interpolation methods. For now, let?s just assume we want to use
Inverse Distance Weighting (IDW) interpolation from the Spatial Analyst toolbox.
After selecting and dragging ?IDW? into your model window, specify two input
parameters, the output cell size and the Z value field. Select 60 for the output cell
size since we are using a 60x60 DEM (do not make this a Model Parameter). Select
TSValue from the TimeSeries table for the Z value field, and make this a Model
Parameter. The output from the interpolation will be the Water Surface Elevation
raster.
157
You are now finished with Component B. This portion of your model should look
something like this:
Each block can be described as follows:
? Hydroperiod Points with TimeSeries ? Output hydroperiod points with
TimeSeries data (from Component 1).
? TSValue Exists? ? To eliminate interpolation errors caused by null values, let
the input parameter specify only those rows with an existing TSValue.
? Select Layer By Attribute ? Select hydroperiod point records with nonnull
TSValues.
? Hydroperiod Points with TSValue ? Output layer containing hydroperiod
points with nonnull daily TSValues.
? Output cell size ? Specifies an output cell size (i.e. 60m x 60 m cells).
? TSValue ? Stage value in the TSValue field for each hydroperiod point,
which is used to interpolate the surface.
158
? IDW ? Generate the Water Surface Elevation grid/raster using the Inverse
Distance Weighting (IDW) interpolation method. (Other tools may be
substituted here to perform surface interpolation using other methods.)
? WSE Grid ? Resulting Water Surface Elevation (WSE) grid, which is the
output of the interpolation.
Now we need to add on Component C functionality. We want to subtract the land
surface elevation grid from the interpolated water surface elevation grid, so we use
the ?Minus? tool to produce the ponded depth grid. This portion of the model is
shown below. You should be able to assemble this without any problems. The P to
the upper left of the green output oval indicates Model Parameter, as previously.
Here, a user is able to direct the (ponded depth grid) output to a specific user
identified location (path).
Each block can be described as follows:
? Water Surface Elevation Grid ? Water Surface Elevation (WSE) grid output
(from Component 2).
? Land Surface Elevation Grid ? Input Land Surface Elevation grid.
? Cell size ? Specifies an output cell size (i.e. 60 m x 60 m cells).
? Minus ? Subtracts the Land Surface Elevation grid from the Water Surface
Elevation grid to calculate a Ponded Depth (PD) Grid.
? Ponded Depth Grid ? Resulting Ponded Depth grid
When components A, B, and C are completed, the Generate Rasters Model will be
complete. Now a Generate Rasters Batch script can be written to run the model over
a user specified period of time. The user will be required to enter the start and end
dates as well as the source of all input parameters.
Woola! We have a model that is really starting to come together. We will need to add
more functionality, which is easy to do using ModelBuilder. Using the same
methodology we used to build the Generate Rasters Model, build other models as
desired.
159
Appendix B: ModelBuilder Scripts
B.1 DBIngest Part 1: InputXML
'Get the number Wscript arguments
ArgCount = wscript.arguments.count
'Dimension an array to store the parameters and associated XML tag names
dim inputarray(100) 'Assume there will never actually be more than 98 arguments
'Open the Parser XML
Set oParserXML = WScript.CreateObject("MSXML2.DOMDocument")
oParserXML.load wscript.arguments.item(0)
'Get the input nodes
sNodeName = "inputs" 'We only want the urlparts nodes from XML file
Set pNodeList = oParserXML.getElementsByTagName(sNodeName)
'Get the first node. There should only be one node for inputs.
set pInputsNode = pnodelist.nextnode
'Read parameters from script tool
'The parameters should be in the same order as they appear in the Parser XML
'The first parameter (0) should be the Parser XML. The last parameter (argcount1)
should be the output filename
'Therefore, only arguments (1 to argcount2) are read into the input array
for i = 1 to argcount2
'Get the node at the current position (you have to process the inputs in the same order as
they appear in the Parser XML)
Set pNode = pInputsNode.selectSingleNode("input[@order='" & i & "']")
'Get the urlkey from the Parser XML
Set pAtNode = pNode.Attributes.getNamedItem("urlkey")
urlkey = patnode.text
'Get the type from the Parser XML
Set pAtNode = pNode.Attributes.getNamedItem("type")
inputtype = patnode.text
'Get the value from wscript
value = wscript.arguments.item(i)
160
'Create an array for the current parameter
param=array(urlkey,inputtype,value)
'Add the parameter array to the final input array
inputarray(i) = param
next
'Get the output filename
OutFilename = wscript.arguments.item(argcount1)
'Create a new XML file to store the user inputs
Set oInputXML = WScript.CreateObject("MSXML2.DOMDocument")
'XML version processing instruction
Set objPI = oInputXML.createProcessingInstruction("xml", "version=""1.0""")
oInputXML.appendChild objPI
'Create the root node
Set pRoot = oInputXML.createElement("userinputs")
Set oInputXML.documentElement = pRoot 'updating docElement property
For i = 1 to (argcount2)
'Get the values from the array
sKey = InputArray(i)(0)
sType = InputArray(i)(1)
sVal = InputArray(i)(2)
'Create a new XML element
Set pElement = oInputXML.createElement("input")
'Write the inputs to the Element
pElement.setAttribute "urlkey", sKey
pElement.setAttribute "type", sType
pElement.setAttribute "value", sVal
'Add the input element to the userinput element
pRoot.appendChild pElement
Next
'Save the XML file
oInputXML.save OutFilename
161
B.2 DBIngest Part 2: Web2TSXML
'Create GeoProcessing object
Set gp = WScript.CreateObject("esrigeoprocessing.GPDispatch.1")
'Read parameters from script tool
UserInputXML = WScript.arguments.Item(0)
SiteFormatXML = WScript.arguments.Item(1)
'Instantiate the class from the DLL
'set pDLL = WScript.CreateObject("DLL_name.Class_name")
set pDLL = WScript.CreateObject("TSWebReader.clsRefineInputs")
'Call the function from the class
RefineXML = pDLL.RefineRawXML(cstr(UserInputXML))
set pDLL = WScript.CreateObject("TSWebReader.clsTSWebFetch")
OutputXML = pDLL.WebToXML(cstr(RefineXML), cstr(SiteFormatXML))
gp.SetParameterAsText 2, OutputXML
B.3 DBIngest Part 3: XML2GDB
'Create GeoProcessing object
Set gp = WScript.CreateObject("esrigeoprocessing.GPDispatch.1")
'Read parameters from script tool
TSXML = WScript.arguments.Item(0)
OutputGDB = WScript.arguments.Item(1)
'Instantiate the class from the DLL
'set pDLL = WScript.CreateObject("DLL_name.Class_name")
set pDLL = WScript.CreateObject("XML2GDB.clsXML2GDB")
'Call the function from the class
'bSuccess = Class_variable.Function_Name(argument1,argument2...)
bSuccess = pDLL.AccessDLL(TSXML, OutputGDB, ValTable)
gp.SetParameterAsText 2, ValTable
162
B.4 River Interpolation: CreateNewPoints
'Create dll object
Set gp = WScript.CreateObject("esrigeoprocessing.GPDispatch.1")
set pDLL = WScript.CreateObject("NewPoints.clsIntPoints")
'Get input data
sPathName1 = Wscript.arguments.item(0)
sPathName2 = WScript.arguments.item(1)
sPathName3 = WScript.arguments.item(2)
'Create new points in the river and add to floodplain points
pDLL.CreateNewHydroPoints cstr(sPathName1), cstr(sPathName2), cstr(sPathName3)
Set pDLL = nothing
gp.SetParameterAsText 3, sPathName3
msgbox "Done"
B.5 Generate Rasters: GenerateRastersBatch
' 
' HydroPeriod Model Batch (HPMB)
' Purpose: To generate daily ponded depth features for multiple days
' Note: This model references the HydroPeriod Model (HPM)
' Written by: J Goodall
' Last Edited: 10/23/03
' 
On Error Resume Next
'Hard coded for now...
WorkingTempDirectory = "C:\Sorenson\ModelBuilder"
'HydroPeriodPoints =
"C:\Sorenson\ModelBuilder\Model.mdb\Features\hydroperiod_point"
'TimeSeries = "C:\Sorenson\ModelBuilder\Model.mdb\AttributeSeries"
'LSEGrid = "C:\Sorenson\ModelBuilder\elev"
'CurrentDate = "6/1/2003"
'EndDate = "6/2/2003"
'GridPath = "C:\Sorenson\ModelBuilder\DailyGridFiles"
' Create the GP and dll objects
163
set gp = WScript.CreateObject("esriGeoprocessing.GPDispatch.1")
'Create dll object
set pDLL = WScript.CreateObject("FlordiaOps.clsGeneralTools")
' Load required toolboxes...
gp.AddToolbox WorkingTempDirectory & "\HydroPeriod Toolbox.tbx"
gp.CheckOutExtension("Spatial")
gp.CheckOutExtension("3D")
'input variables ...
HydroPeriodPoints = wscript.arguments.item(0)
TimeSeries = wscript.arguments.item(1)
LSEGrid = wscript.arguments.item(2)
CurrentDate = wscript.arguments.item(3)
EndDate = wscript.arguments.item(4)
GridPath = WScript.arguments.item(5)
'set current and finish dates
Current = DateValue(CurrentDate)
Finish = DateValue(EndDate)
' Process: GenerateRaster...
Do Until Current > Finish
'set daily grid files
if month(Current) < 10 then
CurrentMonth = "0" & month(Current)
Else
CurrentMonth = month(Current)
End if
If day(Current) < 10 then
CurrentDay = "0" & day(Current)
Else
CurrentDay = day(Current)
End if
CurrentYear = year(Current)
'prepare output path for PD Grid
PDGrid = Cstr(GridPath) & "\PD" & CurrentMonth & CurrentDay &
CurrentYear
'set query
TSDateTimeQuery = "[TSDateTime] = #" & CStr(Current) & "#"
'set output date
164
TSDateTime = "#" & Cstr(Current) & "#"
msgbox TSDateTime
'Set zvalue for IDW
ZValue = "TSSelect.TSValue"
'delete TSSelect table (if it exists)
pDLL.DeleteTable Cstr(WorkingTempDirectory & "\Model.mdb\TSSelect")
gp.RefreshCatalog WorkingTempDirectory & "\Model.mdb"
'call model
'msgbox "Calling Model for " & Cstr(Current)
gp.GenerateRastersPart1 TimeSeries, TSDateTimeQuery, HydroPeriodPoints
gp.RefreshCatalog WorkingTempDirectory & "\Model.mdb"
gp.GenerateRastersPart2_IDW PDGrid, LSEGrid
gp.RefreshCatalog WorkingTempDirectory & "\Model.mdb"
'check for errors with model run
If gp.getmessages(2) <> "" then
msgbox gp.getmessages(2)
Else
msgbox "Complete!"
End If
'next day
Current = Current + 1
Loop
' if an error occured above print the error message
If gp.getmessages(2) <> "" then
msgbox gp.getmessages(2)
Else
msgbox "Complete!"
End If
'delete zonal stats table (if it exists)
pDLL.DeleteTable Cstr(WorkingTempDirectory & "ZonalStatsTEMP")
165
B.6 Classify Depths: ClassifyDepthsBatch
' 
' HydroPeriod Model Batch (HPMB)
' Purpose: To generate classified ponded depth feature polygons for multiple days
' Note: This model references the HydroPeriod Model (HPM)
' Written by: J Goodall, J Sorenson
' Last Edited: 10/23/03
' 
On Error Resume Next
WorkingTempDirectory = "C:/Sorenson/ModelBuilder"
' Create the GP and dll objects
set gp = WScript.CreateObject("esriGeoprocessing.GPDispatch.1")
' Load required toolboxes...
gp.AddToolbox WorkingTempDirectory & "/HydroPeriod Toolbox.tbx"
gp.AddToolbox "C:/Program Files/ArcGIS/ArcToolbox/Toolboxes/Data Management
Tools.tbx"
gp.CheckOutExtension("Spatial")
gp.CheckOutExtension("3D")
'input variables ...
PDFC_Out = wscript.arguments.item(0)
Reclass = wscript.arguments.item(1)
CurrentDate = wscript.arguments.item(2)
EndDate = WScript.arguments.item(3)
GridPath = WScript.arguments.item(4)
'set current and finish dates
Current = DateValue(CurrentDate)
Finish = DateValue(EndDate)
' Process: Reclassify PD Grid into classified PD polygons...
Do Until Current > Finish
'set daily grid files
if month(Current) < 10 then
CurrentMonth = "0" & month(Current)
Else
CurrentMonth = month(Current)
End if
166
If day(Current) < 10 then
CurrentDay = "0" & day(Current)
Else
CurrentDay = day(Current)
End if
CurrentYear = year(Current)
'prepare output path for PD Grid
PDGrid_In = Cstr(GridPath) & "\PD" & CurrentMonth & CurrentDay &
CurrentYear
'set query
TSDateTimeQuery = "[TSDateTime] = #" & CStr(Current) & "#"
'set output date
TSDateTime = "#" & Cstr(Current) & "#"
'call model
msgbox "Model Called for day " & Cstr(Current)
gp.ClassifyDepths TSDateTimeQuery, PDFC_Out, Reclass, PDGrid_In
msgbox "Model Finished for day " & Cstr(Current)
'next day
Current = Current + 1
Loop
' if an error occured above print the error message
If Err.Number <> 0 Then
If gp.getmessages(2) <> "" then
msgbox gp.getmessages(2)
Else
msgbox "Complete!"
End If
Else
msgbox "Complete!"
End if
167
B.7 Calculate Statistics: ZonalStatisticsBatch
' 
' Zonal Statistics Batch  Part of the HydroPeriod Toolset
' Purpose: To generate daily ponded depth features for multiple days
' Note: This model references the HydroPeriod Model (HPM)
' Written by: J Goodall
' Last Edited: 10/23/03
' 
On Error Resume Next
WorkingTempDirectory = "C:\Sorenson\ModelBuilder"
' Create the GP and dll objects
set gp = WScript.CreateObject("esriGeoprocessing.GPDispatch.1")
'Create dll object
set pDLL = WScript.CreateObject("FlordiaOps.clsGeneralTools")
' Load required toolboxes...
gp.AddToolbox WorkingTempDirectory & "\HydroPeriod Toolbox.tbx"
gp.CheckOutExtension("Spatial")
gp.CheckOutExtension("3D")
'input variables ...
ZonalPolygons = wscript.arguments.item(0)
MasterTable = wscript.arguments.item(1)
CurrentDate = wscript.arguments.item(2)
EndDate = wscript.arguments.item(3)
GridPath = wscript.arguments.item(4)
'set current and finish dates
Current = DateValue(CurrentDate)
Finish = DateValue(EndDate)
' Process: GenerateRaster...
Do Until Current > Finish
'set daily grid files
If month(Current) < 10 then
CurrentMonth = "0" & month(Current)
Else
168
CurrentMonth = month(Current)
End if
If day(Current) < 10 then
CurrentDay = "0" & day(Current)
Else
CurrentDay = day(Current)
End if
CurrentYear = year(Current)
'set output date
TSDateTime = "#" & Cstr(Current) & "#"
'set ponded depth grid for this day
PondedDepthGrid = GridPath & "\pd_" & CurrentMonth & CurrentDay &
CurrentYear
'delete zonal stats table (if it exists)
pDLL.DeleteTable Cstr(WorkingTempDirectory &
"\Model.mdb\ZonalStatsTEMP")
'call model
msgbox "Model Called for day " & Cstr(Current)
gp.ZonalStatistics_HydroPeriod TSDateTime, ZonalPolygons, PondedDepthGrid,
MasterTable
'check for errors with model run
If gp.getmessages(2) <> "" then
msgbox gp.getmessages(2)
Else
msgbox "Complete!"
End If
'next day
Current = Current + 1
Loop
' if an error occured above print the error message
If gp.getmessages(2) <> "" then
msgbox gp.getmessages(2)
Else
msgbox "Complete!"
End If
'delete zonal stats table (if it exists)
pDLL.DeleteTable Cstr(WorkingTempDirectory & "ZonalStatsTEMP")
169
B.8 Calculate Volume: CalculateVolumeBatch
' 
' Zonal Statistics Batch  Part of the HydroPeriod Toolset
' Purpose: To generate daily ponded depth features for multiple days
' Note: This model references the HydroPeriod Model (HPM)
' Written by: J Goodall
' Last Edited: 10/23/03
' 
On Error Resume Next
' Create the GP and dll objects
set gp = WScript.CreateObject("esriGeoprocessing.GPDispatch.1")
' Load required toolboxes...
gp.AddToolbox "C:\Sorenson\ModelBuilder\HydroPeriod Toolbox.tbx"
gp.CheckOutExtension("Spatial")
gp.CheckOutExtension("3D")
'input variables ...
DailyPD = wscript.arguments.item(0)
DailyVol = wscript.arguments.item(1)
CurrentDate = wscript.arguments.item(2)
EndDate = wscript.arguments.item(3)
'set current and finish dates
Current = DateValue(CurrentDate)
Finish = DateValue(EndDate)
' Process: GenerateRaster...
Do Until Current > Finish
'set daily grid files
If month(Current) < 10 then
CurrentMonth = "0" & month(Current)
Else
CurrentMonth = month(Current)
End if
If day(Current) < 10 then
CurrentDay = "0" & day(Current)
Else
CurrentDay = day(Current)
170
End if
CurrentYear = year(Current)
'set output date
TSDateTime = "#" & Cstr(Current) & "#"
'set ponded grid for this day
PondedDepthGrid = DailyPD & "\pd_" & CurrentMonth & CurrentDay &
CurrentYear
'set Volume for this day
VolumeGrid = DailyVol & "\VOL_" & CurrentMonth & CurrentDay &
CurrentYear
'Check if PDgrid exists
if gp.exists(VolumeGrid) then
msgbox "It's there"
Else
'call model
msgbox "Model Called for day " & Cstr(Current)
gp.CalculateVolume PondedDepthGrid, VolumeGrid
msgbox "done"
End If
If Err.Number <> 0 Then
If gp.getmessages(2) <> "" then
msgbox gp.getmessages(2)
Else
msgbox "Complete!"
End If
Else
msgbox "Complete!"
End if
'next day
Current = Current + 1
Loop
171
B.9 General Utilities: AppendTable
'Create dll object
set pDLL = WScript.CreateObject("FlordiaOps.clsGeneralTools")
'Get input data
sPathName1 = Wscript.arguments.item(0)
sPathName2 = WScript.arguments.item(1)
'Append Table
pDLL.AppendTable Cstr(sPathName1), Cstr(sPathName2)
B.10 General Utilities: DeleteTable
'Create dll object
set pDLL = WScript.CreateObject("FlordiaOps.clsGeneralTools")
'Get input data
sPathName = Wscript.arguments.item(0)
'Delete TSSelect Table
pDLL.DeleteTable Cstr(sPathName)
172
Appendix C: GetZValues Visual Basic Macro
Public Sub GetZVlues()
Dim pMx As IMxDocument
Set pMx = ThisDocument
Dim pLyr As IFeatureLayer
Set pLyr = pMx.FocusMap.Layer(0)
Dim pFC As IFeatureCursor
Set pFC = pLyr.Search(Nothing, False)
Dim pFeat As IFeature
Set pFeat = pFC.NextFeature
Dim z(6) As Double
Dim id As Long
Dim pRLyr1 As IRasterLayer
Dim pRLyr2 As IRasterLayer
Dim pRLyr3 As IRasterLayer
Dim pRLyr4 As IRasterLayer
Dim pRLyr5 As IRasterLayer
Dim pRLyr6 As IRasterLayer
Set pRLyr1 = pMx.FocusMap.Layer(1)
Set pRLyr2 = pMx.FocusMap.Layer(2)
Set pRLyr3 = pMx.FocusMap.Layer(3)
Set pRLyr4 = pMx.FocusMap.Layer(4)
Set pRLyr5 = pMx.FocusMap.Layer(5)
Set pRLyr6 = pMx.FocusMap.Layer(6)
Dim pSurf1 As ISurface
Dim pSurf2 As ISurface
Dim pSurf3 As ISurface
Dim pSurf4 As ISurface
Dim pSurf5 As ISurface
Dim pSurf6 As ISurface
Set pSurf1 = GetSurfaceFromLayer(pRLyr1)
Set pSurf2 = GetSurfaceFromLayer(pRLyr2)
Set pSurf3 = GetSurfaceFromLayer(pRLyr3)
Set pSurf4 = GetSurfaceFromLayer(pRLyr4)
Set pSurf5 = GetSurfaceFromLayer(pRLyr5)
Set pSurf6 = GetSurfaceFromLayer(pRLyr6)
173
Dim pT As IPoint
Dim i As Integer
Open "c:\temp\FloridaPoints.txt" For Output As #1
Print #1, "ID" & "," & "Observed" & "," & "IDW" & "," & "Natural Neighbours" &_
"," & "N Kriging" & "," & "Anisotropic kriging" & "," & "Regular Spline" &_
"," & "Tension Spline"
Do While Not pFeat Is Nothing
Set pT = New Point
Set pT = pFeat.Shape
id = pFeat.OID
z(0) = pFeat.Value(pLyr.FeatureClass.FindField("WSE"))
z(1) = pSurf1.GetElevation(pT)
z(2) = pSurf2.GetElevation(pT)
z(3) = pSurf3.GetElevation(pT)
z(4) = pSurf4.GetElevation(pT)
z(5) = pSurf5.GetElevation(pT)
z(6) = pSurf6.GetElevation(pT)
Print #1, id & "," & z(0) & "," & z(1) & "," & z(2) & _
"," & z(3) & "," & z(4) & "," & z(5) & "," & z(6)
Set pFeat = pFC.NextFeature
Loop
Close #1
MsgBox "done"
End Sub
Public Function GetSurfaceFromLayer(pLayer As IRasterLayer) As ISurface
Dim pSurf As IRasterSurface
Dim pBands As IRasterBandCollection
Dim sName As String
If TypeOf pLayer Is IRasterLayer Then
Dim p3DProp As I3DProperties
Dim pLE As ILayerExtensions
Set pLE = pLayer
Dim i As Integer
174
' look for 3D properties of layer:
For i = 0 To pLE.ExtensionCount  1
If TypeOf pLE.Extension(i) Is I3DProperties Then
Set p3DProp = pLE.Extension(i)
Exit For
End If
Next
' look first for base surface of layer:
If Not p3DProp Is Nothing Then
Set pSurf = p3DProp.BaseSurface
End If
' if not found, try first band of raster:
If pSurf Is Nothing Then
If Not pLayer.Raster Is Nothing Then
Set pSurf = New RasterSurface
Set pBands = pLayer.Raster
pSurf.RasterBand = pBands.Item(0)
End If
End If
Set GetSurfaceFromLayer = pSurf
End If
Exit Function
GetSurfaceFromLayer_ERR:
Debug.Print "GetSurfaceFromLayer_ERR: " & vbCrLf & Err.Description
Debug.Assert 0
End Function
175
Appendix D: Summary of Mathematical Framework Defined for
Calculating Hydroperiod
***Note: Equation and figure numbers used in this appendix match those used in the
main text, which can be referenced for example application.
Hydroperiod analysis occurs spatially over polygon zones and depth class grid zones. Let
R be the region described by the domain, or study area. Let R
p
be a polygon subdomain
of R, where p represents habitat polygon zones, landscape polygon zones, river polygon
zones and so on (p = 1,2,?,P). Let R
g
be a grid subdomain of R, where g represents
depth class zones (g = 1,2,?,G); depth class zones consist of a set of cells. Polygon zone
p has area A
p
. Likewise, depth class zone g has area A
g.
Let grid g be comprised of i
cells with area a, such that a
i
is the area of cell i (i = 1,2,?,I). Equation (21a) states that
a
i
is an element of A
p
, and Equation (21b) states that a
i
is also an element of A
g
.
Equation (22a) states that a
i
(p) is the set of cells within A
p
, and Equation (22b) states
that a
i
(g) is the set of cells within A
g
.
{ }
pii
Aaa ?: (21a) { }
gii
Aaa ?: (21b)
?
?
=
pi
Aa
ip
paA )( (22a)
?
?
=
gi
Aa
ig
gaA )( (22b)
When a polygon zone is specified as the subdomain of study and the polygon boundary
divides or crosses topographic cells, cells must be selected based on an inclusion rule.
Three cell inclusion rules are:
? Rule 1: Use only those topographic cells that fall wholly within polygons (Figure
2.8(a)).
? Rule 2: Use all cells within and those cells that touch polygon edges. This means
one cell may be used to calculate statistics for more than one polygon (Figure
2.8(b)).
? Rule 3: Use cells where greater than 50% of the cell area is included in the
polygon (Figure 2.8(c)).
176
(a) Rule 1 (b) Rule 2 (c) Rule 3
Figure 2.8: Cell inclusion rules for polygon zones
Hydroperiod analysis occurs temporally over a specified time period, T*. The time
period is divided into J time intervals (Equation (23)) where the time interval is
represented by j (j = 1,2,?,J). Times within the specified time period are denoted with t,
where t
j
is the time at time interval j (Figure 2.9). In accordance with Equation (24),
time t
j
= ?t, 2?t, 3?t,?,J?t.
t
T
J
?
=
*
(23)
tjt
j
??= (24)
T*
?t
j = 1 2 3 ? ? J
Figure 2.9: Temporal components in mathematical expressions
Given a
i
and t
j
, let h
i,j
be the water surface elevation in cell i at time interval j, let L
i
be the
land surface elevation in cell i, and let d
i,j
be the ponded depth in cell i at time interval j.
The ponded depth is equal to the water surface elevation minus the land surface elevation
(Equation (25)).
(25)
ijiji
Lhd ?=
,,
177
After ponded depth is calculated, it can be classified into depth classes. Depth class D
m
occurs when water depth is between c
m1
and c
m
(Figure 3.31, Equation (31)). The
annotation [ represents a closed interval including all values greater than or
equal to c
]
]
mm
cc ,
1?
m1
and less than c
m
(i.e. c
m1
? d
i,j
< c
m
).
Depth class boundaries c
0
c
1
c
2
c
3
? c
M1
c
M
Depth classes D
1
D
2
D
3
D
M
Figure 3.31: Depth classes and their boundaries
(31) [
mmm
ccD ,
1?
=
Next, the ponded depth grid is classified into depth class zones (of zone type g and
subdomain R
g
). For a given time interval j, polygon zone p, and depth range m, the area
of inundation A
j,p,m
is calculated using Equation (32a), which is the sum of the area of all
cells in polygon zone p with water depth in D
m
depth class. Similarly, for a given time
interval j, depth class zone g, and depth range m, the area of inundation A
j,g,m
is
calculated using Equation (32b), which is the sum of the area of all cells in depth class
zone g with water depth in D
m
depth class. In domain R, the area in each depth class for
a given depth range m and time interval j, A
j,m
, is calculated using Equation (32c). This
is calculated as the sum of the cell areas in domain R for which water depth is in depth
class D
m
.
(32a)
?
?
?=
p
Ai
mjiimpj
aA
,,,,
?
?
?
?=
g
Ai
mjiimgj
aA
,,,,
? (32b)
?
?
?=
Ri
mjiimj
aA
,,,
? (32c)
The Dirac delta function
mji ,,
? is equal to one when the water depth d
i,j
is within D
m
depth class or is equal to zero otherwise, as defined in Equation (33).
?
?
? ?
=
otherwise
Dd
mji
mji
0
1
,
,,
? (3)
178
The next equations (Table 3.4) correspond to the statistical cell average, daily average,
and all data approaches for calculating mean water depth, as outlined in Table 3.2 and for
calculating minimum water depth, as outlined in Table 3.3. Each equation is stated,
described, and associated with the ModelBuilder model used to accomplish it.
Table 3.4: Summary of Statistical Equations
Equation Description Model
Statistical Mean Calculations
(34a)
?
?
=
p
Ai
ji
p
pj
d
A
d
,,
1
(34b)
?
?
=
g
Ai
ji
g
gj
d
A
,,
1
d
Daily mean water depth
across the cells in (a)
polygon zone p or (b) depth
class zone g
Zonal Statistics
(35a)
?
?
=
*
,,
*
1
Tj
pjpj
d
T
d
(35b)
?
?
=
*
,,
*
1
Tj
gjgj
d
T
d
Overall mean water depth:
averaged first across the
cells in (a) polygon zone p
or (b) depth class zone g,
then averaged through time
Summary Statistics
(38)
?
?
=
*
,
*
1
Tj
jii
d
T
d
Mean water depth in each
cell, drilled through time
Temporal Statistics
(39a)
?
?
=
p
Ai
i
p
pi
d
A
d
1
,
(39b)
?
?
=
g
Ai
i
g
gi
d
A
1
,
d
Overall mean water depth:
averaged first by drilling
through time for each cell,
then by averaging spatially
across cells in (a) polygon
zone p or (b) depth class
zone g
Spatial Statistics
(312a)
??
??
?
=
p
AiTj
ji
p
pji
d
AT
d
*
,,,
*
1
(312b)
??
??
?
=
g
AiTj
ji
g
gji
d
AT
d
*
,,,
*
1
Overall mean water depth:
average of all values over
space and time where space
is comprised of (a) polygon
zone p or (b) depth class
zone g
Temporal Statistics,
followed by
Summary Statistics
Statistical Minimum Calculations
(36a)
ji
Ai
pj
dd
p
,(min),
min
?
=
(36b) d
ji
Ai
gj
d
g
,(min),
min
?
=
Daily minimum water depth
across the cells in (a)
polygon zone p or (b) depth
class zone g
Zonal Statistics
(37a)
?
?
=
*
(min),(min),
*
1
Tj
pjpj
d
T
d
Overall minimum water
depth: minimum across the
cells in (a) polygon zone p
Summary Statistics
179
(37b)
?
?
=
*
(min),(min),
*
1
Tj
gjgj
d
T
d
or (b) depth class zone g,
then averaged through time
(310) d
ji
Tj
i
d
,
*
(min)
min
?
=
Minimum water depth in
each cell, drilled through
time
Temporal Statistics
(311a)
?
?
=
p
Ai
i
p
pi
d
A
d
(min)(min),
1
(311b)
?
?
=
g
Ai
i
g
gi
d
A
(min)(min),
1
d
Overall minimum water
depth: minimum by drilling
through time for each cell,
then by averaging spatially
across cells in (a) polygon
zone p or (b) depth class
zone g
Spatial Statistics
(313a)
ji
TjAi
pji
dd
p
,
*
(min),,
minmin
??
=
(313b) d
ji
TjAi
gji
d
g
,
*
(min),,
minmin
??
=
Overall minimum water
depth: minimum of all
values over space and time
where space is comprised of
(a) polygon zone p or (b)
depth class zone g
Temporal Statistics,
followed by
Summary Statistics
Let V
i,j
be the volume of water in cell i at time interval j. Cell water volume is calculated
by multiplying positive ponded depth by cell area (Equation (314)). The Dirac delta
function
d
? is used in the volume equations to include only cells with positive ponded
depth (Equation (315)).
djiiji
daV ???=
,,
(314)
?
?
?
?
?
<
?
=
00
01
,
,
ji
ji
d
d
d
? (315)
The volume of water in a zone is calculated by summing the cell volume of all cells
included in the zone; V
j
(p) and V
j
(g) represent the volume of water in polygon zone p
and depth class zone g at time interval j (Equation (316a) and (316b), respectively).
?
?
=
p
Ai
jij
VpV
,
)( (316a)
?
?
=
g
Ai
jij
VgV
,
)( (316b)
180
For a given depth class D
m
and polygon zone p, the duration of inundation T
m,p
is
calculated using Equation (43a). Likewise, for a given depth class D
m
and depth class
zone g, the duration of inundation T
m,g
is calculated using Equation (43b). The duration
of inundation for a given depth class D
m
in domain R is calculated using Equation (43c).
In all three equations, duration is calculated as the sum of time intervals within specified
time period T* for which the water depth is in depth class D
m
, multiplied by the ratio of
cell area to total zonal area in depth class D
m
at time interval j.
??
??
??
=
*
,,
,,
,
TjAi
mpj
imjij
pm
p
A
at
T
?
(43a)
??
??
??
=
*
,,
,,
,
TjAi
mgj
imjij
gm
g
A
at
T
?
(43b)
??
??
??
=
*
,
,,
TjRi
mj
imjij
m
A
at
T
?
(43c)
After duration of inundation T
m
is calculated, it can be classified into duration classes.
Duration class T
n
occurs when time duration is between C
n1
and C
n
(Figure 4.18,
Equation (44)). The annotation [ ]
nn
CC ,
1?
represents a closed interval including all
values greater than or equal to c
n1
and less than c
n
(i.e. C
n1
? d
i,j
< C
n
).
Time class boundaries C
0
C
1
C
2
C
3
? C
N1
C
N
Duration classes T
1
T
2
T
3
T
N
Figure 4.18: Duration classes and their boundaries
[
nnn
CCT ,
1?
= ] (44)
For graphing purposes, statistics of interest include percent area inundated, percent area
in each depth class, percent time inundated, percent time in each depth class, and percent
area in a specified depth class and duration class.
Let A
wet
represent the area in domain R that is wet or inundated (d
i,j
? 0). Subsequently,
A
wet,j
(%) represents the percent of the domain R that is inundated at time interval j and is
equal to the cell area summed over all inundated cells in domain R divided by the sum of
the cell area in all cells in domain R (Equation 45). The Dirac delta function
d
? (from
Equation (315)) is used to select only cells with a positive water depth d
i,j
. The portion
of the domain that is not inundated is dry, as represented in Equation (46).
181
() 100%
,
?
?
=
?
?
?
?
Ri
i
d
Ri
i
jwet
a
a
A
?
(45)
() (%)100%
,, jwetjdry
AA ?= (46)
The percent area in each depth class for a given depth range m and time interval j,
A
m
(%), is calculated using Equation (47). This is calculated as the area in depth class m
at time j divided by the total classified area.
() 100%
,
,
,
?=
?
?Mm
mj
mj
mj
A
A
A (47)
Let T
wet
represent the time that domain R is wet or inundated (d
i,j
?0). Subsequently, T
wet
(%) represents the percent of the time that domain R is inundated and is equal to the sum
of time intervals within specified time period T* for which the water depth is positive,
multiplied by the ratio of cell area to total domain area at time interval j (Equation (48)).
The Dirac delta function
d
? (from Equation (315)) is used to select only cells with a
positive water depth. The time during which the domain is not inundated, it is dry, as
represented in Equation (49).
??
??
??
=
* ,
(%)
TjRi Rj
idj
wet
A
at
T
?
(48)
() (%)100%
wetdry
TT ?= (49)
The percent time in each depth class D
m
and time period T* in domain R, T
m
(%), is
calculated using Equation (410c). If considering a zone rather than the entire domain,
the percent time in each depth class D
m
and time period T* can be calculated in polygon
zone p using Equation (410a) and in depth class zone g using Equation (410b).
() 100
*
%
,
,
?=
T
T
T
pm
pm
(410a) () 100
*
%
,
,
?=
T
T
T
gm
gm
(410b)
() 100
*
% ?=
T
T
T
m
m
(410c)
182
The percent area for a specified depth class m and specified duration class n, A
m,n
(%), is
calculated using Equation (411). The area of cells within depth class D
m
summed over
duration T
n
is divided by the area of cells within depth class D
m
summed over the
specified time period T*.
()
?
?
?
?
?
?
=
*
,,
,,
,
%
Tj
imji
Tj
imji
nm
a
a
A
n
?
?
(41)
183
Table D.1: Glossary of Hydroperiod Variables
Variable Name Meaning
a
i
cell area The area of a single cell i
A
p
area in polygon
zone
The area occupied by a set of cells within a specified
polygon zone p
A
g
area in depth class
zone
The area occupied by a set of cells within a specified depth
class zone g
A
j,p,m
depth classified
area in polygon
zone
The area occupied by a set of cells with ponded depth
values in depth class D
m
at time interval j within polygon
zone p
A
j,g,m
depth classified
area in depth class
zone
The area occupied by a set of cells with ponded depth
values in depth class D
m
at time interval j within depth class
zone g
A
j,m
depth classified
area
The area occupied by a set of cells with ponded depth
values in depth class D
m
at time interval j in domain R
A
m,n
depth and duration
classified area
The area occupied by a set of cells with ponded depth
values in depth class D
m
for time duration T
n
A
wet,j
area inundated The area occupied by a set of cells with positive ponded
depth at time interval j
A
dry,j
area dry The area occupied by a set of cells with zero or negative
ponded depth at time interval j
d
i,j
ponded depth Ponded water depth in cell i at time period j
d
i
temporally
averaged ponded
depth
Ponded water depth averaged through time in cell i
d
j,p
spatially averaged
ponded depth over
polygon zone
Ponded water depth averaged across cells in polygon zone
p at time interval j
d
j,g
spatially averaged
ponded depth over
depth class zone
Ponded water depth averaged across cells in depth class
zone g at time interval j
d
i,j,p
overall average
ponded depth over
polygon zone
Ponded water depth averaged across cells and through
time in polygon zone p
d
i,j,g
overall average
ponded depth over
depth class zone
Ponded water depth averaged across cells and through
time in depth class zone g
D
m
depth class The range of ponded depth values between c
m1
and c
m
h
i,j
water surface
elevation
Water surface elevation in cell i at time period j
L
i
land surface
elevation
Land surface elevation in cell i
184
R domain The region described by the domain or study area
R
p
polygon subdomain A polygon subdomain which may consist of habitat polygon
zones, river polygon zones, etc.
R
g
depth class grid
subdomain
A subdomain consisting of the set of grid cells in a specified
depth class zone
t
j
time interval A time interval in the specified time period of analysis T*
T* time period Range of dates included in the specified time period of
analysis
T
m
depth classified
duration
Duration of ponded depth in depth class D
m
in domain R
T
m,p
depth classified
duration in polygon
zone
Duration of ponded depth in depth class D
m
within polygon
zone p
T
m,g
depth classified
duration in depth
class zone
Duration of ponded depth in depth class D
m
within depth
class zone g
T
n
duration class The range of time duration values between C
n1
and C
n
T
wet
duration inundated The duration of time that cells in domain R have positive
ponded depth
T
dry
duration dry The duration of time that cells in domain R have zero or
negative ponded depth
V
i,j
water volume Water volume in cell i at time interval j
V
j
(p) water volume in
polygon zone
The sum of the water volume in the set of cells within
polygon zone p
V
j
(g) water volume in
depth class zone
The sum of the water volume in the set of cells within depth
class zone g
d
?
ponded depth Dirac
delta function
Dirac delta function equal to one when the ponded water
depth is equal to zero or positive and is equal to zero when
ponded depth is negative
mji ,,
?
depth classified
Dirac delta function
Dirac delta function equal to one when the ponded water
depth is within depth class D
m
and is equal to zero
otherwise
Index (Range)
i (i=1,2,?,I): cell index
j (j=1,2,?,J): time interval index
m (m=1,2,?,M): depth class index
n (n=1,2,?,N): duration class index
p (p=1,2,?,P): polygon zone index
g (g=1,2,?,G): depth class zone
index
c: depth class boundary index
C: duration class boundary index
185
References
Caruso, C. and F. Quarta. Interpolation Methods Comparison. Computers Mathematical
Applications, V. 35, No. 12, pp. 109126. 1998.
Collins, Fred C. and Paul V. Bolstad. A Comparison of Spatial Interpolation Techniques
in Temperature Estimation. IBM Government Systems ? Resource Management
and Distributed Systems. 2003.
Danish Hydraulic Institute. Mike Objects Time Series Manager, http://www.dhisoftware
.com/mikeobjects/TS_Manager/desc.htm. 2004.
Dragicevic, Suzana and Danielle J. Marceau. An application of fuzzy logic reasoning for
GIS temporal modeling of dynamic processes. Fuzzy Sets and Systems, V. 113,
pp. 6980. 2000.
Environmental Systems Research Institute, Inc. ArcView Tracking Analyst ? Realtime
Data Display, Interactive Playback and Analysis, pp. 14. ESRI Press, Redlands,
CA. 1998.
Environmental Systems Research Institute, Inc. Using the ArcGIS 9.0 Modeling
Environment. ESRI Press, Redlands, CA. 2002.
Erxleben, Jennifer, Kelly Elder, and Robert Davis. Comparison of spatial interpolation
methods for estimating snow distribution in the Colorado Rocky Mountains.
Hydrological Processes, V. 16, pp. 36273649. 2002.
Goodall, J., D. Maidment, and J. Sorenson. Representation of Spatial and Temporal Data
in ArcGIS. Specialty Conference Proceedings, Geographic Information Systems
(GIS) and Water Resources III. Nashville, TN. 2004.
Gunderson, Lance H. (ed.), C. S. Holling (ed.), and Stephen S. Light (au.). The
Everglades: Evolution of Management in a Turbulent Ecosystem. Barriers &
Bridges to the Renewal of Ecosystems and Institutions, pp. 101168. 1995.
Lin, Steve. South Florida Water Management District. Personal correspondence. 05
February 2004.
Maidment, David R. Arc Hydro and Time Series presentation, http://www.ce.utexas.edu
/prof/maidment/slide.html. ESRI, Redlands, CA. 15 January 2004.
186
Maidment, David R. (ed.) Arc Hydro: GIS for Water Resources. ESRI Press, Redlands,
CA. 2002.
Maidment, David R. (au.) and Goodchild, Michael F. (ed.) Environmental Modeling
within GIS. GIS and Environmental Modeling: Progress and Research Issues,
pp. 315322. Fort Collins, CO. 1996.
Rothfeder, Jeffrey. The Scramble to Restore. Every Drop for Sale: Our desperate battle
over water in a world about to run out, pp.139152. 2001.
Ryan, Chris. CatchmentSIM: A New GIS Tool for Topographic GeoComputation and
Hydrologic Modelling. 28
th
International Hydrology and Water Resources
Symposium, Wollongong, NSW. The Institute of Engineers, Australia.
November 2003.
Samet, Hanan. Triangulations. http://www.cs.umd.edu/class/fall2003/cmsc4200101
/slides/tg.pdf. College Park, Maryland. 1997.
Simon, Paul. Florida and Other States. Tapped out: The coming world crisis in water
and what we can do about it, pp.3345. 1998.
South Florida Water Management District. A Closer Look at Kissimmee River Research.
Closer Look. West Palm Beach, FL. 2003d.
South Florida Water Management District. Baseline Hydrology V. 8. West Palm Beach,
FL. 2002.
South Florida Water Management District. Kissimmee River Restoration at the South
Florida Water Management District. Reflections. West Palm Beach, FL. 2003c.
South Florida Water Management District. Managing Water in South Florida, The Facts
and Figures. West Palm Beach, FL. March 2003b.
South Florida Water Management District. Past/Present of Kissimmee River Restoration.
http://www.sfwmd.gov/org/erd/krr/pastpres/3_krrpp.html. 2004.
South Florida Water Management District. Restoring the Everglades at the South Florida
Water Management District. Reflections. West Palm Beach, FL. 2003a.
Spalding, Valerie. Automating Spatial Processes. ArcUser ? The Magazine for ESRI
Software Users. July?September 2000.
187
188
Vita
Jennifer Kay Sorenson was born in Minot, North Dakota on July 28, 1978 to
Richard and Barbara Sorenson. She hazed two amazing sisters into the family, Katie and
Lisa. The family has joyously followed Colonel Sorenson around the world with the Air
Force and continues to adore traveling. Next stop: Hawaii! Jennifer received her B.S. in
Civil Engineering from The Great University of North Dakota in Grand Forks, North
Dakota and worked in business consulting at Accenture in Minneapolis, Minnesota for
two years before finding her way down to Austin, Texas. She is currently working at
Camp Dresser & McKee (CDM) and is graduating in May 2004 with a M.S. in
Environmental and Water Resources Engineering from The University of Texas. Upon
graduation, she will begin work at URS in Austin, Texas. She is looking forward to an
exciting career in water resources and whatever other passion that may catch her eye.
Permanent address: 1326 Barton Creek, San Antonio, Texas 78258
This dissertation was typed by the author.