Weather: Difference between revisions

From Public wiki of Kevin P. Inscoe
Jump to navigation Jump to search
 
(31 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This site is being migrated from my previous wiki at http://ke3vin.org/pmwiki.php/Main/Weather
This site is being migrated from my previous wiki at https://kevininscoe.com/ke3vin/pmwiki.php/Main/Weather


==Skywarn==
==Skywarn==


I am a trained Skywarn spotter. See [http://www.nws.noaa.gov/skywarn/ What is Skywarn] for more information.
I am a trained Skywarn spotter for the National Weather Service.  


Here is a script I use to alert me on days that spotter activation may be required based on the NWS HWO product for my forecast office (WFO or WSFO).  
National Weather Service (NWS) spotters are civilian volunteers who, after taking an online or onsite training course conducted by the NWS (there is a Basic level and an Advances level course sometimes taken together on the same day. Each course is typically three to four hours long) are authorized to report their weather observations directly to the NWS (using a special telephone number or sometimes via ham radio), especially during particularly bad weather conditions. Many times, the fact that something like a tornado has actually formed and touched the ground is first reported to the NWS by trained weather spotters.


The HWO or [https://en.wikipedia.org/wiki/Hazardous_weather_outlook Hazardous Weather Outlook] is created daily by your local forecast office. In it is always a mention of Skywarn Spotter activation.  
See http://www.nws.noaa.gov/skywarn/ for more information.


Even if you are not a trained spotter it is still good to know the outlook of the area where you will be that day. I travel fairly enough and visit relatives across several geographical areas. I can modify my script on a given day to include additional forecasts by the local WFO when I am traveling. Or I can put in the URL below (modify the "issuedby=" in the URL) and change the WFO or simply visit the top site at http://www.weather.gov/ and put in the zip code or city name for your current location and click down to Hazardous Weather.
===Spotter information statement===


Since I spend 90% of my time in Deltona, FL and 10% in Greeneville, TN (I own property in each) I monitor both offices statements.
Skywarn spotters sometimes are requested the NWS to monitor weather conditions if bad weather is anticipated. This is referred to as "spotter activation".
 
Weather spotter activation means that the NWS is monitoring weather conditions in a particular area and they want trained spotters to be on the alert for monitoring and reporting adverse weather conditions. This is because, with all the instrumentation available to NWS personnel, sometimes the best indications of current severe weather conditions are from people on the ground actually observing these conditions.
 
To know if your particular area will be requesting activation a bulletin is put out at least daily and often updated throughout the day referred to as the "Hazard Weather Outlook". A sample of one is found at https://www.weather.gov/mfl/ghwo. See also https://en.wikipedia.org/wiki/Hazardous_weather_outlook Hazardous Weather Outlook.
 
The HWO product from the NWS is usually only published to the public via the NWS various web sites. Sometimes it is available via FTP access and some weather forecast offices (WFO) will email the daily HWO bulletin to registered trained spotters.
 
Even if you are not a trained spotter it is still good to know the hazardous outlook of the area where you will be that day.
 
The part of the HWO that indicates if Skywarn activation is in a block of text titled ".SPOTTER INFORMATION STATEMENT...".
 
Since my local office does not provide the daily email of the HWO I wanted a way to get a daily email to know if activation was likely that day. A long time ago I used to send this to a text pager I carried.
 
===Notification Script===
 
To that end I wrote a Python 3 to alert me on days that spotter activation may be required based on the NWS HWO product for my forecast office (WFO or WSFO).
 
See https://github.com/KevinPInscoe/WXTools.
 
I have found the text HWO product to be reliably available via a properly formatted URL.
 
I can modify my script on a given day to include additional forecasts by the local WFO when I am traveling. Or I can put in the URL below (modify the "issuedby=" in the URL) and change the WFO or simply visit the top site at http://www.weather.gov/ and put in the zip code or city name for your current location and click down to Hazardous Weather.
 
Since I spend 10% of my time in Deltona, FL and 90% in Greeneville, TN I monitor both offices statements.


The two offices I monitor are Melbourne, FL coded as "MLB" at http://www.weather.gov/mlb/ and Morristown, TN coded as "MRX" at http://www.weather.gov/mrx/.
The two offices I monitor are Melbourne, FL coded as "MLB" at http://www.weather.gov/mlb/ and Morristown, TN coded as "MRX" at http://www.weather.gov/mrx/.
Line 27: Line 51:
Notice the "issuedby=" in the URL. That is where you would put in the code for your local forecast office. Forecast offices nearest you and their codes can be found at http://www.srh.noaa.gov/jetstream/nws/wfos.html.
Notice the "issuedby=" in the URL. That is where you would put in the code for your local forecast office. Forecast offices nearest you and their codes can be found at http://www.srh.noaa.gov/jetstream/nws/wfos.html.


The output of the script is sent to via email daily at 7:30am via cron (in Linux)
You will also need to know the "Warning Zone(s)" you are interested in being alerted as some WFO HWO bulletin's contain multiple warning zones in them. An example of this would be the bulletin for Charleston, SC (WFO CHS) at http://forecast.weather.gov/product.php?site=NWS&issuedby=MLB&product=HWO&format=txt&version=1&glossary=0.
 
Note the multiple spotter information statements in a single WFO HWO bulletin:


<pre>
<pre>
30 7 * * *  /home/kinscoe/bin/nws_spotter_activation.sh | mailx -s "Daily Hazardous Weather Outlook" -r kevin@inscoe.org kevin@inscoe.org 2>&1
SCZ048>050-150815-
Beaufort-Coastal Colleton-Charleston-
410 AM EDT Wed Oct 14 2020
...
 
.SPOTTER INFORMATION STATEMENT...
 
Spotter assistance is not anticipated at this time.
...
GAZ117-119-139-141-SCZ051-150815-
Coastal Bryan-Coastal Chatham-Coastal Liberty-Coastal McIntosh-
Coastal Jasper-
410 AM EDT Wed Oct 14 2020
...
.SPOTTER INFORMATION STATEMENT...
 
Spotter assistance is not anticipated at this time.
...
AMZ330-350-352-354-374-GAZ087-088-099>101-114>116-118-137-138-140-
SCZ040-042>045-047-052-150815-
Charleston Harbor-
Waters from South Santee River to Edisto Beach SC out 20 NM-
Waters from Edisto Beach SC to Savannah GA out 20 NM-
Waters from Savannah GA to Altamaha Sound GA out 20 NM, including
Grays Reef National Marine Sanctuary-
Waters from Savannah GA to Altamaha Sound GA from 20 to 60 NM-
Jenkins-Screven-Candler-Bulloch-Effingham-Tattnall-Evans-
Inland Bryan-Inland Chatham-Long-Inland Liberty-Inland McIntosh-
Allendale-Hampton-Inland Colleton-Dorchester-Inland Berkeley-
Inland Jasper-Tidal Berkeley-
410 AM EDT Wed Oct 14 2020
...
.SPOTTER INFORMATION STATEMENT...
 
Spotter assistance is not anticipated at this time.
</pre>
</pre>


This script runs in Linux Bash shell (https://www.gnu.org/software/bash/) however it can also run in Mac (which already has Bash installed) or Windows using the Cygwin install. For Cygwin see https://www.cygwin.com/. For the Mac (and Linux as well if you do have these dependencies installed) the script should work fine but you will also need to install curl and  html2text. Curl is likely already installed on both Mac and Linux by default. It has been on the Mac since 10.8 I believe. For Linux consult your distribution for the proper way to install Curl or visit the source code download at https://curl.haxx.se/. html2text may be slightly harder to obtain. You can visit the source code page at http://www.mbayer.de/html2text/. In Mac you can obtain a port using [https://www.macports.org/ Macports] or [https://brew.sh/ Homebrew]. I recommend Homebrew. In Homebrew I used the command
The above warning zones are: SCZ048 through SCZ050 ("SCZ048>050"), GAZ117, GAZ119, GAZ139, GAZ141, SCZ051 ("GAZ117-119-139-141-SCZ051") AMZ330, AMZ350, AMZ352, AMZ354, AMZ374, GAZ087, GAZ088, GAZ099 through GAZ101, GAZ114 through GAZ116, GAZ118, GAZ137, GAZ138, GAZ140, SCZ040, SCZ042 through to SCZ045, SCZ047 and SCZ052  ("AMZ330-350-352-354-374-GAZ087-088-099>101-114>116-118-137-138-140- SCZ040-042>045-047-052-").
 
Warning zones are usually the states initials followed by the letter "Z" (indicating a zone) an then a three digit number which I believe corresponds to a county FIPS code. For more on FIPS see https://en.wikipedia.org/wiki/Federal_Information_Processing_Standard_state_code.
 
Currently I am not parsing all of these warning zones I am merely matching text when I find one in the bulletin. In a future version of the script I will fully parse each warning zones.
 
====The Bash shell script====
 
This script is invoked by cron which in turn sets the environment variable and invokes the Python script.
 
The script which you will need to customize yourself is at https://github.com/KevinPInscoe/WXTools/blob/master/sample_nws_spotter_activation_statement_script.sh.
 
The output of the script is sent to via email daily at 7:30am local time via cron (in Linux) but you could run it manually or also on Windows or Mac using a scheduler.
 
See https://github.com/KevinPInscoe/WXTools/blob/master/sample_cron_for_spotter_info
 
This could also be sent to Twitter or other such alerting media.
 
====The Python script====
 
This should not require any modification to work.
 
The Python script is at https://github.com/KevinPInscoe/WXTools/blob/master/nws_spotter_info_statement.py
 
====Sample output====


<pre>
<pre>
brew install html2text
For full HWO bulletin for WFO MLB click on https://forecast.weather.gov/product.php?site=NWS&issuedby=MLB&product=HWO&format=txt&version=1&glossary=0
 
MLB-FLZ041: Spotter activation will not be needed this afternoon and tonight.
 
For full HWO bulletin for WFO MRX click on https://forecast.weather.gov/product.php?site=NWS&issuedby=MRX&product=HWO&format=txt&version=1&glossary=0
 
MRX-TNZ012: Spotter activation is not needed at this time.
</pre>
</pre>


The Bash shell script:
==Observation==
 
===Visual===
 
====Skywarn====
 
Observation reports to NWS Skywarn - https://www.weather.gov/skywarn/
 
====Thunderstorms====
 
[[File:17240700 1640322595984697 6144082786866914181 o.jpg|600px]]
 
===Nexrad Radar===
 
[[File:IMG 0003r.jpg|320px]]
 
https://kevininscoe.com/gallery/index.php/National-Weather-Service-Tour---Melbourne-Florida-MLB/IMG_0003
 
"NEXRAD or Nexrad (Next-Generation Radar) is a network of 158 high-resolution Doppler weather radars operated by the National Weather Service, an agency of the National Oceanic and Atmospheric Administration (NOAA) within the United States Department of Commerce. Its technical name is WSR-88D, which stands for Weather Surveillance Radar, 1988, Doppler. NEXRAD detects precipitation and atmospheric movement or wind. It returns data which when processed can be displayed in a mosaic map which shows patterns of precipitation and its movement. The radar system operates in two basic modes, selectable by the operator: a slow-scanning clear-air mode for analyzing air movements when there is little or no activity in the area, and a precipitation mode with a faster scan time for tracking active weather. NEXRAD has an increased emphasis on automation, including the use of algorithms and automated volume scans. Second generation NEXRAD radar systems will have the capability to optically detect hailstone size down to the square mile." - Intellicast
 
Details on the NEXRAD system are available in [http://www.ofcm.gov/publications/fmh/allfmh2.htm Federal Meteorological Handbook] No. 11.
 
There are additional handbooks (publications) available for download from the Office of the Federal Coordinator for Meteorology (http://www.ofcm.gov/publications/fmh/allfmh2.htm).
 
Four volumes are available:
 
*A - System Concepts, Responsibilities, and Procedures
*B - Doppler Radar Theory and Meteorology
*C - Products and Algorithms
*D - Unit Description and Operational Analysis


<pre>
The official Interface Control Documents (ICDs) contain detailed information on the binary data formats and product specifications.
#/bin/bash
 
====Imagery====


for WFO in MLB MRX
Public - https://radar.weather.gov/
do
echo "HWO statement for $WFO..."
echo " "
URL="http://forecast.weather.gov/product.php?site=NWS&issuedby=`echo $WFO`&product=HWO&format=txt&version=1&glossary=0"
# SPOTTER INFORMATION STATEMENT
#curl -s "$URL" | html2text | grep -i -A 4 "Spotter activation"
curl -s "$URL" | html2text | grep -i -A 4 "SPOTTER INFORMATION STATEMENT" | sed -e 's/\$\$//g'
echo " "
echo "For full outlook click on $URL"
echo " "
done


</pre>
====Data====


The output which I will see in email:


<pre>
Weather Radar Applications - http://www.ou.edu/radar/z_r_relationships.pdf
HWO statement for MLB...
Spotter activation will not be needed today.


The netCDF data format (https://www.unidata.ucar.edu/software/netcdf/) is a set of software
For full outlook click on http://forecast.weather.gov/product.php?site=NWS&issuedby=MLB&product=HWO&format=txt&version=1&glossary=0
libraries and machine-independent data formats that support the creation, access, and
sharing of array-oriented scientific data. The Java NEXRAD Viewer allows users to export Level II or Level III radar data into netCDF format for later manipulation using programs such as MATLAB.
HWO statement for MRX...
Spotter activation will be needed Friday night into early
Saturday morning.
For full outlook click on http://forecast.weather.gov/product.php?site=NWS&issuedby=MRX&product=HWO&format=txt&version=1&glossary=0
</pre>


This could also be sent to Twitter or other such alerting media.
====Archived data====


==Observation==
https://www.ncdc.noaa.gov/data-access/radar-data/nexrad


==Reporting==
==Reporting==
===Storm reports===
*National Weather Service Local Storm Report Application - https://nwschat.weather.gov/lsr/
*Storm Prediction Center Storm Reports https://www.spc.noaa.gov/climo/reports/today.html
*Local Storm Reports interactive https://www.spc.noaa.gov/exper/reports/


==Forecast==
==Forecast==
==Code==
My code (to be migrated from SVN) is at https://github.com/KevinPInscoe/WXTools.

Latest revision as of 18:43, 15 March 2021

This site is being migrated from my previous wiki at https://kevininscoe.com/ke3vin/pmwiki.php/Main/Weather

Skywarn

I am a trained Skywarn spotter for the National Weather Service.

National Weather Service (NWS) spotters are civilian volunteers who, after taking an online or onsite training course conducted by the NWS (there is a Basic level and an Advances level course sometimes taken together on the same day. Each course is typically three to four hours long) are authorized to report their weather observations directly to the NWS (using a special telephone number or sometimes via ham radio), especially during particularly bad weather conditions. Many times, the fact that something like a tornado has actually formed and touched the ground is first reported to the NWS by trained weather spotters.

See http://www.nws.noaa.gov/skywarn/ for more information.

Spotter information statement

Skywarn spotters sometimes are requested the NWS to monitor weather conditions if bad weather is anticipated. This is referred to as "spotter activation".

Weather spotter activation means that the NWS is monitoring weather conditions in a particular area and they want trained spotters to be on the alert for monitoring and reporting adverse weather conditions. This is because, with all the instrumentation available to NWS personnel, sometimes the best indications of current severe weather conditions are from people on the ground actually observing these conditions.

To know if your particular area will be requesting activation a bulletin is put out at least daily and often updated throughout the day referred to as the "Hazard Weather Outlook". A sample of one is found at https://www.weather.gov/mfl/ghwo. See also https://en.wikipedia.org/wiki/Hazardous_weather_outlook Hazardous Weather Outlook.

The HWO product from the NWS is usually only published to the public via the NWS various web sites. Sometimes it is available via FTP access and some weather forecast offices (WFO) will email the daily HWO bulletin to registered trained spotters.

Even if you are not a trained spotter it is still good to know the hazardous outlook of the area where you will be that day.

The part of the HWO that indicates if Skywarn activation is in a block of text titled ".SPOTTER INFORMATION STATEMENT...".

Since my local office does not provide the daily email of the HWO I wanted a way to get a daily email to know if activation was likely that day. A long time ago I used to send this to a text pager I carried.

Notification Script

To that end I wrote a Python 3 to alert me on days that spotter activation may be required based on the NWS HWO product for my forecast office (WFO or WSFO).

See https://github.com/KevinPInscoe/WXTools.

I have found the text HWO product to be reliably available via a properly formatted URL.

I can modify my script on a given day to include additional forecasts by the local WFO when I am traveling. Or I can put in the URL below (modify the "issuedby=" in the URL) and change the WFO or simply visit the top site at http://www.weather.gov/ and put in the zip code or city name for your current location and click down to Hazardous Weather.

Since I spend 10% of my time in Deltona, FL and 90% in Greeneville, TN I monitor both offices statements.

The two offices I monitor are Melbourne, FL coded as "MLB" at http://www.weather.gov/mlb/ and Morristown, TN coded as "MRX" at http://www.weather.gov/mrx/.

The text only HWO for MLB is at http://forecast.weather.gov/product.php?site=NWS&issuedby=MLB&product=HWO&format=txt&version=1&glossary=0.

The text only HWO for MRX is at http://forecast.weather.gov/product.php?site=NWS&issuedby=MRX&product=HWO&format=txt&version=1&glossary=0

There is also a RAW text source for MLB but I am not sure how long it will last:

MLB: http://tgftp.nws.noaa.gov/data/raw/fl/flus42.kmlb.hwo.mlb.txt

MRX: http://tgftp.nws.noaa.gov/data/raw/fl/flus44.kmrx.hwo.mrx.txt

Notice the "issuedby=" in the URL. That is where you would put in the code for your local forecast office. Forecast offices nearest you and their codes can be found at http://www.srh.noaa.gov/jetstream/nws/wfos.html.

You will also need to know the "Warning Zone(s)" you are interested in being alerted as some WFO HWO bulletin's contain multiple warning zones in them. An example of this would be the bulletin for Charleston, SC (WFO CHS) at http://forecast.weather.gov/product.php?site=NWS&issuedby=MLB&product=HWO&format=txt&version=1&glossary=0.

Note the multiple spotter information statements in a single WFO HWO bulletin:

SCZ048>050-150815-
Beaufort-Coastal Colleton-Charleston-
410 AM EDT Wed Oct 14 2020
...

.SPOTTER INFORMATION STATEMENT...

Spotter assistance is not anticipated at this time.
...
GAZ117-119-139-141-SCZ051-150815-
Coastal Bryan-Coastal Chatham-Coastal Liberty-Coastal McIntosh-
Coastal Jasper-
410 AM EDT Wed Oct 14 2020
...
.SPOTTER INFORMATION STATEMENT...

Spotter assistance is not anticipated at this time.
...
AMZ330-350-352-354-374-GAZ087-088-099>101-114>116-118-137-138-140-
SCZ040-042>045-047-052-150815-
Charleston Harbor-
Waters from South Santee River to Edisto Beach SC out 20 NM-
Waters from Edisto Beach SC to Savannah GA out 20 NM-
Waters from Savannah GA to Altamaha Sound GA out 20 NM, including
Grays Reef National Marine Sanctuary-
Waters from Savannah GA to Altamaha Sound GA from 20 to 60 NM-
Jenkins-Screven-Candler-Bulloch-Effingham-Tattnall-Evans-
Inland Bryan-Inland Chatham-Long-Inland Liberty-Inland McIntosh-
Allendale-Hampton-Inland Colleton-Dorchester-Inland Berkeley-
Inland Jasper-Tidal Berkeley-
410 AM EDT Wed Oct 14 2020
...
.SPOTTER INFORMATION STATEMENT...

Spotter assistance is not anticipated at this time.

The above warning zones are: SCZ048 through SCZ050 ("SCZ048>050"), GAZ117, GAZ119, GAZ139, GAZ141, SCZ051 ("GAZ117-119-139-141-SCZ051") AMZ330, AMZ350, AMZ352, AMZ354, AMZ374, GAZ087, GAZ088, GAZ099 through GAZ101, GAZ114 through GAZ116, GAZ118, GAZ137, GAZ138, GAZ140, SCZ040, SCZ042 through to SCZ045, SCZ047 and SCZ052 ("AMZ330-350-352-354-374-GAZ087-088-099>101-114>116-118-137-138-140- SCZ040-042>045-047-052-").

Warning zones are usually the states initials followed by the letter "Z" (indicating a zone) an then a three digit number which I believe corresponds to a county FIPS code. For more on FIPS see https://en.wikipedia.org/wiki/Federal_Information_Processing_Standard_state_code.

Currently I am not parsing all of these warning zones I am merely matching text when I find one in the bulletin. In a future version of the script I will fully parse each warning zones.

The Bash shell script

This script is invoked by cron which in turn sets the environment variable and invokes the Python script.

The script which you will need to customize yourself is at https://github.com/KevinPInscoe/WXTools/blob/master/sample_nws_spotter_activation_statement_script.sh.

The output of the script is sent to via email daily at 7:30am local time via cron (in Linux) but you could run it manually or also on Windows or Mac using a scheduler.

See https://github.com/KevinPInscoe/WXTools/blob/master/sample_cron_for_spotter_info

This could also be sent to Twitter or other such alerting media.

The Python script

This should not require any modification to work.

The Python script is at https://github.com/KevinPInscoe/WXTools/blob/master/nws_spotter_info_statement.py

Sample output

For full HWO bulletin for WFO MLB click on https://forecast.weather.gov/product.php?site=NWS&issuedby=MLB&product=HWO&format=txt&version=1&glossary=0

MLB-FLZ041: Spotter activation will not be needed this afternoon and tonight.

For full HWO bulletin for WFO MRX click on https://forecast.weather.gov/product.php?site=NWS&issuedby=MRX&product=HWO&format=txt&version=1&glossary=0

MRX-TNZ012: Spotter activation is not needed at this time.

Observation

Visual

Skywarn

Observation reports to NWS Skywarn - https://www.weather.gov/skywarn/

Thunderstorms

Nexrad Radar

https://kevininscoe.com/gallery/index.php/National-Weather-Service-Tour---Melbourne-Florida-MLB/IMG_0003

"NEXRAD or Nexrad (Next-Generation Radar) is a network of 158 high-resolution Doppler weather radars operated by the National Weather Service, an agency of the National Oceanic and Atmospheric Administration (NOAA) within the United States Department of Commerce. Its technical name is WSR-88D, which stands for Weather Surveillance Radar, 1988, Doppler. NEXRAD detects precipitation and atmospheric movement or wind. It returns data which when processed can be displayed in a mosaic map which shows patterns of precipitation and its movement. The radar system operates in two basic modes, selectable by the operator: a slow-scanning clear-air mode for analyzing air movements when there is little or no activity in the area, and a precipitation mode with a faster scan time for tracking active weather. NEXRAD has an increased emphasis on automation, including the use of algorithms and automated volume scans. Second generation NEXRAD radar systems will have the capability to optically detect hailstone size down to the square mile." - Intellicast

Details on the NEXRAD system are available in Federal Meteorological Handbook No. 11.

There are additional handbooks (publications) available for download from the Office of the Federal Coordinator for Meteorology (http://www.ofcm.gov/publications/fmh/allfmh2.htm).

Four volumes are available:

  • A - System Concepts, Responsibilities, and Procedures
  • B - Doppler Radar Theory and Meteorology
  • C - Products and Algorithms
  • D - Unit Description and Operational Analysis

The official Interface Control Documents (ICDs) contain detailed information on the binary data formats and product specifications.

Imagery

Public - https://radar.weather.gov/

Data

Weather Radar Applications - http://www.ou.edu/radar/z_r_relationships.pdf

The netCDF data format (https://www.unidata.ucar.edu/software/netcdf/) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. The Java NEXRAD Viewer allows users to export Level II or Level III radar data into netCDF format for later manipulation using programs such as MATLAB.

Archived data

https://www.ncdc.noaa.gov/data-access/radar-data/nexrad

Reporting

Storm reports

Forecast

Code

My code (to be migrated from SVN) is at https://github.com/KevinPInscoe/WXTools.