IEM :: Cow (Storm Based Warning Verification) (2023)

Reset Application (All timestamps are displayed in UTC)

IEM Cow (NWS Storm Based Warning Verification)

IEM Cow API Access

(Video) New Breed of Storms (Full Episode) | Storm Rising

IEM :: Cow (Storm Based Warning Verification) (1)Data presented here is unofficial and should be used for educational purposes only. This application allows you to view warningsand storm reports issued by a Weather Forecast Office (WFO) for a periodof time of your choice. The application attempts to automatically provideverification numbers for the warnings issued.

This application works for dates after 8 June 2005.

Storm Based Warnings

On the first of October 2007, the National WeatherService began issuing warnings for tornados, severe weather, floods, and marine hazards on a storm by storm basis. Previously, the warningswere issued for an entire county. This application attempts to provide verification statistics for these storm based warnings.

(Video) BREAKING: Hurricane Ian Makes Landfall In Florida As Category 4 Storm | NBC News

Related links:

  • Graphical Summaries of Daily SBW
  • SBW Size Statistics

Verification Methodology

IEM :: Cow (Storm Based Warning Verification) (2)

The map on the left illustrates some of the spatial statistics the Cowproduces. The following is a brief description of these values.

(Video) Rescue Missions Underway In Hurricane Ian Aftermath

  • SBW Area: (P) (black/white outline polygon) This is the areal size of the polygon expressed in square kilometers. The computationis done in the projection "US National Atlas Equal Area" (EPSG 2163).
  • County Area: (C) (red outline polygon) Each storm based warning is associated with one or more counties. This value is the totalarea of the associated counties. Same projected used as above.
  • Size % (C-P)/C This is the size reductionpercentage of the storm based warning versus the counties. Prior to SBW,the warning would have included the entire area of the county. So largerreduction values are desired.
  • Perimeter Ratio: (purple line) This is an attemptto determine how much of the storm based warning perimeter is being influencedby a county political boundary. The ratio is simply the portion of the SBWperimeter that closely coincides with a political boundary. A 100% value implies the warning is simply a retracement of county borders.
  • Verification Area %: (filled ovals) Local Storm Reports are buffered out in a circular fashion and combined to create a coverage of impacted areas. The area of the buffered LSRs is then comparedwith the area of the storm based warning to yield a percentage.

API for IEM Cow Data

20 June 2018: The IEM is pleased to announce availabilityof an API for programatic access to IEM Cow data and statistics.

6 August 2019: The API should be considered stable now andhas been favorably compared against the legacy PHP based Cow statistics. Pleasefeel free to use it and report back any issuesyou find.

25 May 2022: The website Cow interface was updated to usethis API service to drive the statistics displayed (dogfooding). As doing such,some shortcomings of the API were realized. So the JSON schema returned by theservice was improved some, but should all still be backwards compat.

(Video) Hurricane Ian strikes Florida

6 July 2022: The API returned value forunwarned_reports was updated to not include severe thunderstormtype reports made during a tornado warning.

The JSON emitting service endpoint is:

This endpoint accepts a large number of CGI parameters via HTTP GET. None ofthe parameters are required.

(Video) Special Report: Hurricane Ian's eye moves ashore in southwest Florida

callback=func not used This supports JSON-P style requests with the resulting JSON data begin encapsulated by a javascript function call. i.e. callback=gotdata
wfo=XXX All WFOs considered This specifies the three character WFO identifier that you wish to get statistics for. If none are specified, then you get the entire NWS. You can provide this parameter one or more times, i.e. wfo=XXX&wfo=YYY
Time Specification Option 1
Last 4 Hour Period This start time and end time sets the window to look for NWS Storm Based Warnings and Local Storm Reports. For the case of warnings, the warning must have been issued after the start time and have an expiration prior to the end time. The tricky issue issue is when warnings cross either the start or end time, this can lead to incomplete statistics (ie a storm report was actually covered by a warning, but that warning was outside your time domain. These timestamps are in UTC., i.e. begints=2018-06-18T12:00Z&endts=2018-06-19T12:00Z
Time Specification Option 2
syear=YYYY smonth=MM sday=DD shour=HH24

eyear=YYYY emonth=MM eday=DD ehour=HH24
Last 4 Hour PeriodSame time details above as with Option 1, but here you are just specifying manuallyeach part of the date, i.e. syear=2018&smonth=6&sday=18&shour=12&eyear=2018&emonth=6&eday=19&ehour=12&
phenomena=XXAll TO, SV, FF, MA, DSThese are the VTEC phenomena codes that you want the data and stats for. Theseare two character and the currently supported Storm Based Warning types are Tornado (TO), Severe Thunderstorm (SV), Flash Flood (FF), Marine (MA), andDust Storm (DS). You canspecify more than one phenomena, i.e. phenomena=TO&phenomena=SV
lsrtype=XXAll TO, SV, FF, MA, DSSo like in the case of phenomena above, here you are specifying whichcategory of Local Storm Reports to consider. This gets to be a bit difficultto fully explain. In general, the codes reflect with Local Storm Report typesshould be used that can potentially verify the warning. i.e. lsrtype=TO&lsrtype=SV.The two letter identifiers are aliases to explicit LSR types. You can specifythe explicit types of T: Tornado, G: TStorm Wind Gust,D: TStorm Wind Damanage, H: Hail.
hailsize=SIZE_IN_INCHES1.00 inchesWhat hail size in inches should be considered when verifying the warnings. Thepresent day standard is one inch, but previously it was 0.75 inches. This parameteronly considers one value, i.e. hailsize=1.50
lsrbuffer=DIST_IN_KM15 kmIEM Cow attempts to provide an areal verification percentage within the polygons,this areal value is computed by buffering out the point LSR reports by the given radiusin kilometers. The GIS operation is done in USGS Albers (EPSG:2163).example, lsrbuffer=15
warningbuffer=DIST_IN_KM1 kmSo this is kind of a bug-a-boo and dirty little secret, but the NWS Storm BasedWarnings are not necessarily exact in latitude/longitude space. The basic dataprovides polygon points with two places of decimal precision. Given political boundariesand other lame limitations, there are places in the country that would never receivea warning if not for allowing the polygons to buffer out slightly for folks implementingworkflows with this data. So we default to buffer out the warning 1km, which is usedin verification, but not in size calculations. example, warningbuffer=1
wind=SPEED_IN_MPH58 MPHFor wind Local Storm Reports, what minimum speed should be considered forverifying a warning. This value is not used in the case of Marine Warnings.example, wind=58
windhailtag=N_or_YNoFor Severe Thunderstorm Warnings, the tags used to denote the wind speedand hail size at issuance are used to verify the warning. For example, if a hailtag of 2 inches was used at issuance, any reports below that would not be consideredas verifying the report.
limitwarns=N_or_YNoUse the wind and hailsize parameters to filterconsidered warnings for the verification. For example, if you set wind=70then any warnings issued with a wind tag below 70 MPH would be ignored.
fcster=stringNot consideredWith this enabled, resulting stats should not be used Thiswill limit considered warnings to those signed by the exact string provided. Thiscreates a problematic situation with all storm reports considered, but only a subsetof warnings provided for verification. The actual verification of individual warningswill be accurate, but the bulk stats are not correct.example, fcster=forecaster10

Resulting JSON Schema.

{"generated_at": "ISO9660", "params": {dictionary of how API was called}, "stats": {dictionary of generated statistics}, "area_verify%": float # percent of polygon area verified "avg_leadtime[min]": int # Average leadtime in minutes "avg_size[sq km]": float # Average polygon size in square kilometers "CSI[1]": float # Critical Success Index 0-1 "events_verified": int # Number of warning events verified "events_total": int # Number of warning events considered for report "FAR[1]": float # False Alarm Rate 0-1 "max_leadtime[min]": int # Longest leadtime in minutes "min_leadtime[min]": int # Shortest leadtime in minutes "POD[1]": float # Probability of Detection 0-1 "reports_total: int # Number of LSRs considered for report "shared_border%": float # percent of polygon border coincident with political bounds "size_poly_vs_county[%s]" : float # percent of polygon size compared to county size "tdq_stormreports": int # number of non-verifying storm reports in a TOR but outside SVR "unwarned_reports": int # number of LSRs without a warning "events": GeoJSON-style object of warnings, "features": [] "id": str # unique id for this warning "properties": "ar_ugc": [] # list of ugc codes for this warning "ar_ugcname": [] # list of ugc names for this warning "areaverify": float # percent of polygon area verified "carea": float # area of associated counties/parishes in square kilometers "eventid": int # VTEC Event Identifier "expire": "ISO8601" # expiration time of warning "fcster": str # Forecaster/Product Signature of the warning "hailtag": float # IBW Hail Size (inch) at issuance "issue": "ISO8601" # issue time of warning "lat0": float # latitude of polygon centroid "lead0": int # leadtime in minutes of the first verifying LSR "lon0": float # longitude of polygon centroid "parea": float # sq km area of polygon computed in EPSG:2163 "perimeter": float # perimeter of polygon computed in EPSG:2163 "phenomena": str # VTEC Phenomena Two-Letter Code "sharedborder": float # perimeter of polygon shared with political border "significance": str # VTEC Significance One-Letter Code "status": str # VTEC Status of last event product update "statuses": str # typo of status, but kept for backwards compatibility "stormreports": str # comma seperated list of storm report IDs that verified warning "stormreports_all": str # comma seperated list of all storm reports within space/time bounds "verify": bool # true if warning verified "wfo": str # WFO that issued warning "windtag": float # IBW Wind Speed (mph) at issuance "year": int # year of warning "stormreports": GeoJSON-style object on LSRS "features": [] "id": int # Sequential LSR identifier used for cross-references "properties": "city": str # City name of LSR "county": str # County name of LSR "lat0": float # latitude of LSR "leadtime": int # leadtime in minutes to first verifying warning "lon0": float # longitude of LSR "lsrtype": str # LSR type (SV, TO, FF, MA) "magnitude": float # LSR magnitude "remark": str # LSR remark "source": str # LSR source "state": str # State identifier of LSR "tdq": bool # Was this LSR covered only by a TOR warning, but not of a # TOR LSR type? Such events are not counted against verif. "type": str # IEM internal LSR type code (1 char) "typetext": str # LSR type found in NWS Product Text "valid": "ISO8601" # LSR valid time "warned": bool # Was this LSR warned for? "wfo": str # WFO that issued warning}

There is a Python based examplethat uses this API to generate shapefiles of the verification data.


1. HSN | Holiday Gift Faves with Shannon Fox 10.22.2022 - 02 PM
2. Hurricane Ian -- Florida gets battered by powerful Category 4 hurricane on Wednesday, Sept 28, 2022
(ABC Action News)
3. Storm surge dangers - explained
(FOX 13 Tampa Bay)
4. ABC News Prime: Hurricane Ian Makes Landfall in Florida
(ABC News)
5. ABC News Live: Search and rescue efforts underway as Ian pounds Florida
(ABC News)
6. Clean Water Board Meeting October 18, 2022
(Clean Water Initiative)
Top Articles
Latest Posts
Article information

Author: Ms. Lucile Johns

Last Updated: 01/17/2023

Views: 6066

Rating: 4 / 5 (41 voted)

Reviews: 88% of readers found this page helpful

Author information

Name: Ms. Lucile Johns

Birthday: 1999-11-16

Address: Suite 237 56046 Walsh Coves, West Enid, VT 46557

Phone: +59115435987187

Job: Education Supervisor

Hobby: Genealogy, Stone skipping, Skydiving, Nordic skating, Couponing, Coloring, Gardening

Introduction: My name is Ms. Lucile Johns, I am a successful, friendly, friendly, homely, adventurous, handsome, delightful person who loves writing and wants to share my knowledge and understanding with you.