Copyright (C) 1996 Thomas R. Metcalf This software is provided "as is" and is subject to change without notice. No warranty of any kind is made with regard to this software, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The author shall not be liable for any errors or for direct, indirect, special, incidental or consequential damages in connection with the furnishing, performance, or use of this software: use it at your own risk. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -------------------------------- This directory holds the programs to process hurricane advisories from the WX-TROPL mailing list, the Michigan weather underground, the Ohio State and Florida State gopher servers, and the Ohio State WWW server. The programs will probably not run on your system as is. In particular you will need to modify various path definitions in most of the programs. Look for "metcalf" to find the paths that need modification. The code is a combination of UNIX shell, PERL, and IDL; all are required for the package to work. Perl is free (http://www.metronet.com/1h/perlinfo), IDL is not (http://sslab.colorado.edu:2222/projects/IDL/idl_ssl_home.html). Note: IDL is only used to plot the data. To pick up and analyze the tropical advisories you really only need PERL. This code is free and you are free to use it as you like, but it is not supported in any way, shape, or form. I'll be happy to help if I can, but no promises. I would appreciate an acknowledgement if you use these programs. -------------- Main Program ------------------------------------------- UpdateHurr: Grab the hurricane advisories from Michigan, the WX-TROPL mailing list, and the Ohio State and Florida State gopher servers, and pipe them through hurricane, NameCheck, and remdup. The data is stored in ~/tropical and PostScript and GIF files are created. UNIX shell script. -------------- Sub Programs ------------------------------------------- hurricane: Search through the hurricane advisories and extract the relevant information, such as position and strength. PERL. NameCheck: Check for changes in storm names, e.g. when a depression is upgraded to a storm or hurricane. PERL. remdup: Search through the output from hurricane and remove duplicate entries and old forecasts. PERL. sortropical: Sort the hurricane database (output from hurricane) by time. PERL. goperhurr: Grab the hurricane advisories from a gopher server. Two arguments are passed to gopherhurr: the server address and the path of the tropical advisories directory, e.g., gopherhurr metlab1.met.fsu.edu /weather/data/HURR. PERL. urlhurr: Grab the hurricane advisories from a WWW server. One arguments are passed to urlhurr: the URL of an index with links to hurricane advisories. PERL. nethurr: Grab the hurricane advisories from the various weather undergrounds. PERL. mailhurr: Grab the hurricane advisories from the Kline mail. For this to work you must subscribe to the WX-TROPL mailing list. Called with no arguments, the mail is printed and left in the spool file. With -delete on the command line, the mail is saved in this directory and deleted from the spool file. UNIX shell script. MakeMaps: Makes PostScript and GIF maps and puts them in the WWW directory. Includes many paths that will require modification. PERL, calls UNIX system commands and IDL (Interactive Data Language). --------------- PERL Libraries -------------------------------------- url_get.pl Called by urlhurr, to grab a file given its URL. URL.pl Called by url_get.pl ftplib.pl Called by url_get.pl socket.ph Called by url_get.pl if you are running PERL version 4. If you run version 5, it is not needed. This file may not work on your system as is. It is generated by running h2ph on the Unix system include file socket.h. --------------- IDL Programs ----------------------------------------- The IDL programs in the IDL sub-directory are used to plot the tropical cyclone tracks once the data has been analyzed with perl. The main IDL program is idl/tropical.pro. The other IDL programs are called by tropical.pro. See the comments at the start of tropical.pro. --------------- Other Useful Code------------------------------------- StrikeProb A PERL program which computes strike probabilities from the data processed by the hurricane program above. StrikeProb calls subroutines in StrikeProb.pl. --------------- Examples --------------------------------------------- Typical usage: % UpdateHurr OR ... % nethurr | hurricane >> ~/tropical % NameCheck ~/tropical | remdup | sortropical >> /tmp/tropical % mv /tmp/tropical ~/tropical OR ... % hurricane 940907.WX >> ~/tropical % NameCheck ~/tropical | remdup | sortropical >> /tmp/tropical % mv /tmp/tropical ~/tropical --------------- Format --------------------------------------------- The format for each line of the output from hurricane is: Column 00: Year of observation Column 01: Month number of observation (1..12) Column 02: Day of month of observation Column 03: Time of observation (hours.minutes) Column 04: UT (times are always UT) Column 05: Latitude of observation (decimal degrees) Column 06: N or S indicating hemisphere of latitude Column 07: Longitude of observation (decimal degrees) Column 08: E or W indicating hemisphere of longitude Column 09: Name of Storm Column 10: Course of storm (Degrees, True) Column 11: T (direction is always true) Column 12: Speed of storm Column 13: kt (speed is always in knots) Column 14: Estimated central pressure in storm (mb) Column 15: mb (pressure is always in mb) Column 16: Maximum sustained wind in storm (kt) Column 17: Maximum wind gusts in storm (kt) Column 18: kt (wind speeds are always in kt) Column 19: Type of storm (DEP, STO, HUR, TYP) Column 20: Type of observation (ACT=actual, FOR=forecast) Column 21: Date of observation (decimal years) Column 22: WMO Header for observation Column 23: Actual Observations: Date record written (decimal years) Forecasts: Date of associated actual observation (decimal years) If a quantity is unknown, the field will be ???. T. Metcalf metcalf@akala.ifa.hawaii.edu