Regional Breakout Session GIS Topics: ABRFC River Flood Climatology John Schmidt, Senior Hydrologist...
-
Upload
owen-stevenson -
Category
Documents
-
view
221 -
download
0
Transcript of Regional Breakout Session GIS Topics: ABRFC River Flood Climatology John Schmidt, Senior Hydrologist...
Regional Breakout Session
GIS Topics: ABRFC River Flood Climatology
John Schmidt, Senior Hydrologist
James Paul, Senior HAS
December 6, 2002
2002 National Weather Service National Hydrologic Program
Manager’s Conference
River Flood Climatology Origins
Hydrologic companion to popular percent-of-normal precipitation products (Sep 1999).
Initial Problems/Limitations
1. Climatological time-scale of data
> PRISM data for percent-of-normal products
> ABRFC archived data from 1993 to present
> USACE Tulsa, Albuquerque and Little Rock generously provide entire digital archive allowing ABRFC to compile comprehensive 6-hourly dataset back to 1984.
Initial Problems/Limitations
2. Defining a flood ‘event’
> Hydrograph resulting from single precipitation event?
> Period between river rising above and falling below flood stage?
> Every crest of river stages?
Initial Problems/LimitationsDefining flood “event”
Initial Problems/LimitationsDefining flood “event”
Consistent logic must be used when automating.
So…..an “event” is a single, synoptic observation.&
(“flood event”/4) = “flood day”
Consistent with verification assumption.
Not perfect, but is easily applicable at all locations.
Flood Climatology Calculations
• Database queries on SQL Server database with mirror of AWIPS abarchive schema provided number of flood days per month for months 1984-2001 (needed 75% of complete data for a month for a site)
• Used ArcView to create graphics depicting river reach flood climatology
Flood Climatology Calculations
Monthly Average Flood Climatology (1984-2001)
0.0
10.0
20.0
30.0
40.0
50.0
60.0
70.0
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
To
tal F
loo
d D
ay
s
/ Flo
od
Lo
ca
tio
ns
0.00
0.50
1.00
1.50
2.00
2.50
3.00
3.50
4.00
4.50
Da
ys
of
Flo
od
ing
pe
r L
oc
ati
on
Days of Flooding per Location Total Flood Days Locations with Flooding
Flood Climatology Calculations
ABRFC Statistics
Arkansas River @ Van Buren, AR 31.43
Deep Fork River @ Beggs, OK 23.12
Neosho River @ Commerce, OK 16.74
Fourche La Fave River @ Houston, AR 14.43
River Station (days/year)
Neosho River @ Parsons, OK 7.58
Little River @ Tecumseh, OK 4.32
Neosho River @ Commerce, OK 3.63
Deep Fork River @ Beggs, OK 3.35
Arkansas River @ Van Buren, AR 3.24
River Station (months/year)
Petit Jean River @ Danville, AR 3.06
Top five annual flood sites Top five average number of months with flooding per year
Amount of flooding Frequency of flooding
Define Boundaries and Barriers
Boundaries for river reach
Barriers for river interpolation
Interpolating and Masking
Interpolation using barriers Interpolated result masked to river
Joining Masked Interpolations
Average annual flood days (1984-2001)
Abrfcr ivs.shp
0 - 0.50.5 - 11 - 33 - 55 - 77 - 1414 - 2121 - 2828 - 6060 - 90No Data
ABRFC Flood Climatology WFO-Specific Webpages
Average Annual Flood Days
ABRFC Flood Climatology WFO-Specific Webpages
Winter Spring
Summer Fall
ABRFC Flood Climatology WFO-Specific Webpages
Average Annual Flood Days
ABRFC Flood Climatology WFO-Specific Webpages
FOURCHE LAFAVE RIVER - HOUSTON 3SWHUSA4
Average number of flood days per month
ABRFC Flood Climatology WFO-Specific Webpages
FOURCHE LAFAVE RIVER - HOUSTON 3SWHUSA4
Yearly Flood Days
Possible Uses
A. VerificationThe genesis of this project was to find a way to assess the "forecastability" of rivers in order to explain the fluctuation of hydrologic verification statistics. The Sacramento Soil Moisture Accounting Model is calibrated empirically. Therefore, the greater the number of flood events at a given station, the more data available to calibrate the model. Additionally, flood events of long duration are typically easier to forecast with less error than floods of short duration. These analyses will assist in the explanation of hydrological verification metrics.
B. TrainingService Hydrologists and Warning Coordination Meteorologists at the WFO may use these products to brief staff, emergency managers and the general public on the seasonal variability of flooding, as well as the more flood-prone rivers in their Hydrologic Service Areas. Additionally, these products will be used to train new ABRFC employees on the hydrologic climatology of the ABRFC area. It is much easier to present and understand this information in a graphical format than by using text.
For More Information...
http://www.srh.noaa.gov/abrfc/floodclimate/index.shtml
NOAA Technical Memorandum NWS SR-219
'written by John Schmidt 08-2001'this script generates a masked, gridded map given point data
rivList = {"Cottonwood_Wichita_FourcheLaFave", "Washita_Neosho_LittleSE", "Arkansas_Red", "Canadian_WalnutC_Blue","Cimarron_PetitJean_ECache", "Verdigris_LittleOKC_MedicineLodge","RedNF_ArkSaltFork_Lee", "NCanadian_Shoal_Glover", "Chikaskia_Cobb_Mulberry", "LilArkansas_MuddyBoggy_Sweetwater","Poteau_Walnut_Wolf", "Cow_Flint_BlackBear", "DeepFork_ElkKS_Crooked", "Fall_Ninnescah_CottonwoodC","Whitewater_Caney_BeaverC", "LilCaney_Polecat_Sanders", "Rattlesnake_Illinois_LilWashita","SaltForkRed_Bird_MountainFork", "Hominy_Spavinaw_Wildhorse", "DeepRedRun_Kiamichi_SFkNinnescah","Fountain_Cossatot_Birch", "Pawnee_Spring_CimarronC", "Saline_Mora_Buckner", "Revuelta_Purgatoire_ElkMO","PaloDuro_Pease_BigHill", "RollingFrk_BeaverR_Rock_BaronFrk"}
barList = {"CWFbar.shp", "WNLbar.shp", "ARbar.shp", "CWBbar.shp", "CPEbar.shp", "VLMbar.shp", "RALbar.shp", "NSGbar.shp","CCMbar.shp", "LMSbar.shp", "PWWbar.shp", "CFBbar.shp", "DECbar.shp", "FNCbar.shp", "WCBbar.shp", "LPSbar.shp","RILbar.shp", "SBMbar.shp", "HSWbar.shp", "DKSbar.shp", "FCBbar.shp", "PSCbar.shp", "SMBbar.shp", "RPEbar.shp","PPBbar.shp", "RBRBbar.shp"}
'"jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"
monthList ={"jan"}rivCount = rivList.Countcounter = rivCount - 1
theView = av.GetActiveDoctheTheme = theView.GetActiveThemes.Get(0)theRadius = Radius.MakeVariable(2,100)thePower = 1
theABRFCTheme = theView.FindTheme("ABRFCMask")theABRFCGrid = theABRFCTheme.GetGrid
for each mon in 0..0for each num in 0..counter
river = rivList.Get(num) barrier = barList.Get(num) month = monthList.Get(mon) tablename = "\fldclimate\"+river.AsString+theTheme.AsString+month.AsString+".txt" tablelabel = river.AsString+theTheme.AsString+month.AsString+".txt" finlabel = "ABRFC"+theTheme.AsString+month.AsString+".txt"
'run external program to filter monthly file
' system.execute("cd \fldclimate") system.execute("filter"++theTheme.AsString+month.AsString+ ".txt"++river.AsString)'MsgBox.Info(theTheme.AsString+month.AsString+".txt", "\fldclimate\filter")
theFileName = tablename.AsFileName theVTab = VTab.Make(theFileName, false, false) myTable = Table.Make(theVTab) myTable.SetName(tablelabel) myTable.GetWin.Open
'Add as a table and add event theme to View
tableVTab = av.GetProject.FindDoc(tablelabel).GetVTab xField = theVTab.FindField("Lat") yField = theVTab.FindField("Lon") theSrc = XYName.Make(theVTab,yField,xField) tableTheme = Theme.Make(theSrc) theView.AddTheme(tableTheme) tableTheme.SetActive(true) theTheme.SetActive(false) 'Generate grid from point theme
aPrj = theView.GetProjection interpTheme = theView.GetActiveThemes.Get(0) theVTab = interpTheme.GetFTab zField = theVtab.GetFields.Get(4) barrierTheme = theView.FindTheme(barrier) barrierTheme.SetActive(true) barTheme = theView.GetActiveThemes.Get(1) barVTab = barTheme.GetFTab theInterp=Interp.MakeIDW(thePower,theRadius,barVTab) theResult=Grid.MakeByInterpolation(theVTab,aPrj,zField,theInterp,NIL) tableTheme.SetActive(false) barrierTheme.SetActive(false)
theGTheme = GTheme.Make(theResult) theView.AddTheme(theGTheme) customLegend = "\fldclimate\monthly.avl".AsFileName
'multiply by appropriate mask
maskTheme = theView.FindTheme(river)' maskTheme.SetActive(true) interpGrid = theGTheme.GetGrid maskGrid = maskTheme.GetGrid theMaskedGrid = (interpGrid * maskGrid) theMaskGridTheme = GTheme.Make(theMaskedGrid) theView.AddTheme(theMaskGridTheme) theMaskGridTheme.SetVisible(true) theThemeList = theView.GetThemes theThemeList.Shuffle(theThemeList.Get(0), (theThemeList.Count)) theView.InvalidateTOC(nil) theView.GetDisplay.Invalidate(true)' theGLegend = theMaskGridTheme.GetLegend' theGLegend.Load(customLegend,#LEGEND_LOADTYPE_ALL)' theMaskGridTheme.UpdateLegend' theMaskGridTheme.SetName(tablelabel)
'Merge Grids
theABRFCGrid = (theMaskedGrid.merge({theABRFCGrid})) theABRFCGridTheme = GTheme.Make(theABRFCGrid) theView.AddTheme(theABRFCGridTheme) theThemeList = theView.GetThemes theThemeList.Shuffle(theThemeList.Get(0), (theThemeList.Count)) theView.InvalidateTOC(nil) theView.GetDisplay.Invalidate(true)' theABRFCGridTheme.SetName(tablelabel) theABRFCGridTheme.SetVisible(true)
'Cleanup
' system.execute("cd \\fldclimate;rm"++river.AsString+theTheme.AsString)' theView.DeleteTheme(theGTheme) ' theView.DeleteTheme(theMaskGridTheme)' theView.DeleteTheme(tableTheme) if (num < counter) then theView.DeleteTheme(theABRFCGridTheme) else theGLegend = theABRFCGridTheme.GetLegend theGLegend.Load(customLegend,#LEGEND_LOADTYPE_ALL) theABRFCGridTheme.UpdateLegend theABRFCGridTheme.SetName(finlabel) end
end end
Avenue Script