Hurricane Display Developping Notes

 
Updated on March 9, 2000
This notes  is as a document for the developer to understand the Hurricane Display .
Jime Ramer designed the hurricane display architecture  and implemented the TextDGMDepict and the TCMplotter. So there is the TCM plotting display in the build 4.3. In the build 5.0, I extanded the TCMplottor
by adding the wind radius display, and implemented  the CHGplotter, TCEplotter and SPFplotter.

1.0 Capabilities
The Hurricane Display decodes hurricane text messages, converts them into DGM format, passes the DGM
file to the IGC,  then displays them in the D-2D graphics window.

1.1 Architecture and Implementation
The hurricane display looks like an "opened"architecture for user who can write conversion programs and
modify some config-files.
The implemetation requires that to create the data key entry in the textDataKeys.template for text product-DGM conversion program and the depict key entry in the natlTextDepictKeys.template for the TextDGMDepict, and to create hurricane display buttons and menus in the productButtonInfo.txt and the dataMenus.txt.The TextDGMDepict can in theory make a display from any arbitray text product in the text DB. The text to display coversion is done by a standalone program that decodes text from stdin and writes DGM instructions to a file. The current conversion program are the TCMplotter, CHGplotter, TCEplotter and SPFplotter. Of course user could write themselts conversion programs.

1.2 Running
There are two ways to run the Hurricane Display.


2.0  Menus, Executable and Keys

Selecting "Hurricane" in the "Surface" menu, the "Hurricane" submenu will pop up. There are five parts selection buttons  in the this submenu, the Track Summaries, Position Update, Model Guidance, 12hr Strike Probabilities, and 48hr Strike Probabilities. The executable are the four plotters.  And the Keys are defined in the textDataKeys.template and textDepictKeys.template files.

2.1 Track Summaries

Menu and Buttons
The "Atlantic", "E Pacific", "W Pacific" and "Hourly forecasts" buttons display the TCM/TCP products.

Executable
TCMplotter:Converting the TCM text data into a DGM data file.
Usage:
Input: standard in, a TCM text message.
Output: converted DGM data is stored into the "DGMFilename".
Command lines,    TCMplotter <-A | -F>  DGMFilename [forecastTime]
     -A -- Display all times' storm data including center,wind speed, press
                and time. Only the DGMFilename is used.
     -F -- Display all times' storm data with wind radius of one forecast time.
     forecastTime -- A forecastTime  in secaonds.
     DGMFilename -- Store DGM data.


Data Keys
6431-6435 |        | |  |   |  |10800,-5400 |  @@@TCMAT?               |     |   |$FXA_HOME/bin/TCMplotter -A
6436-6440 |        | |  |   |  |10800,-5400 |  @@@TCMEP?               |     |   |$FXA_HOME/bin/TCMplotter -A
6441-6445 |        | |  |   |  |10800,-5400 |  @@@TCMCP?               |     |   |$FXA_HOME/bin/TCMplotter -A
6446-6450 |        | |  |   |  |10800,-5400 |  @@@TCPWP?               |     |   |$FXA_HOME/bin/TCMplotter -A

Depict Keys

6431 |69|6431-6435 | |0 |1 |Atlantic Hurricane Tracks      |AT TCM plot   |1 |0 |1 |
6436 |69|6436-6445 | |0 |1 |E Pacific Hurricane Tracks     |EP TCM plot   |1 |0 |1 |
6441 |69|6441-6450 | |0 |1 |W Pacific Hurricane Tracks     |WP TCM plot   |1 |0 |1 |
 

2.2  Position Update

Buttons
The "Atlantic", "E Pacific" and "W Pacific" buttons display the TAP products.
Selecting the "Atlantic", "E Pacific", or "W Pacific" button, plots the positions of the current tropical system and its name.  It uses standard meteorological symbols for depressions, storms, hurricanes and extratropical systems.

Executable
TCEplotter: converting the TCE text data into a DGM data file.
Usage:

Input: standard in, a TCM text message.
Output: converted DGM data is stored into the "DGMFilename".
Command line:TCEplotter DGMFilename forecastTime
     DGMFilename -- Store DGM data.
     forecastTime -- A forecastTime in seconds.


Data Keys
6520 | | |   |   |  |3600,-1800  |  @C@TCEAT                 |     |   |$FXA_HOME/bin/TCEplotter
6521 | | |   |   |  |3600,-1800  |  @C@TCEEP                 |     |   |$FXA_HOME/bin/TCEplotter
6522 | | |   |   |  |3600,-1800  |  @C@TCECP                 |     |   |$FXA_HOME/bin/TCEplotter

Depict Keys
6520 |69|6520  | |0 |1 |Atlantic Hurricane Position Update |TCEAT    |1 |0 |1 | |period
6521 |69|6521  | |0 |1 |E Pacific Hurricane Position Update |TCEEP    |1 |0 |1 | |period
6522 |69|6522  | |0 |1 |C Pacific Hurricane Position Update |TCECP    |1 |0 |1 | |period
 

2.3  Model Guidance
Buttons
The "CHGHUR Guidance" and "CHGQLM Guidance" buttons display the CHG forecast products

Executable
CHGplotter:Converting the CHG text data into a DGM data file.
Usage:
Input: standard in, a CHG text message.
Output: converted DGM data is stored into the "DGMFilename".
Command lines, CHGplotter XXX  Model DGMFilename forecastTime
     XXX -- HUR and  QLM are availibale currently.
     Model -- A model name of the Hurricane forecast. For example,
              BAMD, BAMM and LABAR, the NONE is none model.
     forecastTime -- A forecastTime  in seconds.
     DGMFilename -- Store DGM data.
Data Keys
6451 | | | 0 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMD
6452 | | |12 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMD
6453 | | |24 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMD
6454 | | |36 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMD
6455 | | |48 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMD
6456 | | |72 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMD
6461 | | | 0 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMM
6462 | | |12 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMM
6463 | | |24 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMM
6464 | | |36 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMM
6465 | | |48 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMM
6466 | | |72 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR BAMM
6471 | | | 0 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR A90E
6472 | | |12 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR A90E
6473 | | |24 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR A90E
6474 | | |36 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR A90E
6475 | | |48 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR A90E
6476 | | |72 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR A90E
6481 | | | 0 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR LBAR
6482 | | |12 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR LBAR
6483 | | |24 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR LBAR
6484 | | |36 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR LBAR
6485 | | |48 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR LBAR
6486 | | |72 |   |  |21600,-10800|  @@@CHGHUR                |     |   |$FXA_HOME/bin/CHGplotter HUR LBAR
6501 | | |0  |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6502 | | |6  |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6503 | | |12 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6504 | | |18 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6505 | | |24 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6506 | | |30 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6507 | | |36 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6508 | | |42 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6509 | | |48 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6510 | | |54 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6511 | | |60 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6512 | | |66 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6513 | | |72 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE
6514 | | |78 |   |  |21600,-10800|  @@@CHGQLM                |     |   |$FXA_HOME/bin/CHGplotter QLM NONE

Depict Keys
 6451 |69|6451-6456 | |0 |1 |BAMD model guidance from CHGHUR  |BAMD model   |1 |0 |1 | |period
 6461 |69|6461-6466 | |0 |1 |BAMM model guidance from CHGHUR  |BAMM model   |1 |0 |1 | |period
 6471 |69|6471-6476 | |0 |1 |A90E model guidance from CHGHUR  |A90E model   |1 |0 |1 | |period
 6481 |69|6481-6486 | |0 |1 |LBAR model guidance from CHGHUR  |LBAR model   |1 |0 |1 | |period
6487 |0 |    | | 0    |1 |Hurricane model guidance from CHGHUR    |CHGHUR guidance  |1 |0 |1 |
 6501 |69|6501-6514 | |0 |1 |Hurricane model guidance from CHGQLM  |CHGQLM guidance    |1 |0 |1 | |period

Multi-Loading
For loading forecasts of all HUR models in one frame,  the multiloading depict key, the 6487 should be added in themultiLoadInfo.txt file.
6487  |0 |0 |  |1 |*6451,*6461,*6471,*6481|CHGHUR guidance
 

2.4  12hr Strike Probabilities

Buttons
The AT1 to AT5  buttons are different tropical systems. Selecting one, will display a SPF product by plots the current position using meteorological symbols,  the possible future positions with 12 hours strike probability in a frame.
Executable
SPFplotter:Converting the SPF text data into a DGM data file.
Usage:

Input: standard in, a SPF text message.
Output: converted DGM data is stored into the "DGMFilename".
Command line: SPFplotter <A|B|C|D|E>  DGMFilename forecastTime
     A,B,C,D or E -- What kind of probability?
     DGMFilename -- Store DGM data.
     forecastTime -- A forecastTime in seconds.
For decoding the SPF text products,  the  SPFplotter creates a table to convert a city name to a lat-lon location. The data of this table is saved in the SPFCitiesInfo.txt file.

Data Keys
6531-10 | | | 12 |   |  |3600,-1800  |  MIASPFAT?                 |     |   |$FXA_HOME/bin/SPFplotter A
6532-10 | | | 24 |   |  |3600,-1800  |  MIASPFAT?                 |     |   |$FXA_HOME/bin/SPFplotter B
6533-10 | | | 36 |   |  |3600,-1800  |  MIASPFAT?                 |     |   |$FXA_HOME/bin/SPFplotter C
6534-10 | | | 48 |   |  |3600,-1800  |  MIASPFAT?                 |     |   |$FXA_HOME/bin/SPFplotter D
6591-6595 | | | 0  |   |  |3600,-1800  |  MIASPFAT?                 |     |   |$FXA_HOME/bin/SPFplotter E

Depict Keys
6531 |69|6531-6534 | |0 |1 |AT1 12hr Strike Probability |AT1 12hr SPF |1 |0 |1 | |
 6541 |69|6541-6544 | |0 |1 |AT2 12hr Strike Probability |AT2 12hr SPF |1 |0 |1 | |
 6551 |69|6551-6554 | |0 |1 |AT3 12hr Strike Probability |AT3 12hr SPF |1 |0 |1 | |
 6561 |69|6561-6564 | |0 |1 |AT4 12hr Strike Probability |AT4 12hr SPF |1 |0 |1 | |
 6571 |69|6571-6574 | |0 |1 |AT5 12hr Strike Probability |AT5 12hr SPF |1 |0 |1 | |

2.5  48hr Strike Probabilities
Buttons
This is same as 2.4, except the forecast time is 48 hours.
Executable
Same as 2.4
Data keys
6591-6595 | | | 0  |   |  |3600,-1800  |  MIASPFAT?                 |     |   |$FXA_HOME/bin/SPFplotter E
Depict Keys
6591 |69|6591 | |0 |1 |AT1 48HR Strike Probability |AT1 48hr SPF |1 |0 |1 | |
 6592 |69|6592 | |0 |1 |AT2 48HR Strike Probability |AT2 48hr SPF |1 |0 |1 | |
 6593 |69|6593 | |0 |1 |AT3 48HR Strike Probability |AT3 48hr SPF |1 |0 |1 | |
 6594 |69|6594 | |0 |1 |AT4 48HR Strike Probability |AT4 48hr SPF |1 |0 |1 | |
 6595 |69|6595 | |0 |1 |AT5 48HR Strike Probability |AT5 48hr SPF |1 |0 |1 | |