You are on page 1of 17

PLOT_HOV

PLOT_HOV reads a three-dimensional statistical dataset (longitude-latitude-time) that has been


written in CEDRIC format, averages or sums data along one of the dimensions and produces plots
in the remaining two dimensions. Plots can be produced in the longitude-time, latitude-time or
longitude-latitude domains. The user has control over the size and location of the averaging/sum-
mation window, which can be xed or vary as a function of time. Plot_hov has been compiled and
is available on both LINUX and Solaris machines. The LINUX and Solaris versions can be found
in /users/tuttle/uswrp/hovm/linux and /users/tuttle/uswrp/hovm/solaris, respectively. The three
dimensional CEDRIC datasets are located in /blackbutt2/tuttle/uswrp/nids and as of March 6,
2002 are available for June, July and August 1996-2002. All datasets are uncompressed and are
directly readable by plot_hov. The datasets are also available on the NCAR mass store system.
The data are in compressed tar les with a separate tar le for each year. They have names of the
form /TUTTLE/NIDS/1996_NIDS_CED.TAR.GZ. The data were created by reading the NIDS
national 2-km radar composites and computing statistics over a 0.2 deg longitude/latitude grid.
The CEDRIC les contain 6 elds, FREQ15, FREQ25, FREQ35, FREQ45, FREQ55 (the number
of 2-km data points that exceed 15, 25, 35, 45, and 55 dBZ in each 0.2 deg box) and AVG (the
average rainfall rate, mm/hr, in each box computed from z = 300*R**1.5). Details on how to use
plot_hov, sample input parameter les and output plots are included in the documentation.
PLOT_HOV uses NCAR graphics for plotting output. When compiling make sure to include the
NCAR graphics libraries. Also you need to include cin.c during compilation. Cin.c contains c rou-
tines for reading CEDRIC format data. You may need to change a variable (BYTE_ORDER) in
cedric.h depending upon which type of machine you are using. If you are using a DEC or Linux
machine BYTE_ORDER should be set to 1 (DEC and Linux machines have a different byte
ordering from Sun, HP, etc.) otherwise set BYTE_ORDER to 0.
PLOT_HOV Documentation
PLOT_HOV reads a three-dimensional statistical dataset (longitude-latitude-time) that has been
written in CEDRIC format, averages or sums data along one of the dimensions and produces plots
in the remaining two dimensions. Plots can be produced in the longitude-time, latitude-time or
longitude-latitude domains. The user has control over the size and location of the averaging/sum-
mation window, which can be xed or vary as a function of time. An axis rotation can also be
done, allowing for Hovmoller plots at an arbitrary angle, say for example, along and perpendicu-
lar to a NE-SW oriented squall line. From the longitude-time or latitude-time data a cosine func-
tion can be correlated with the data to nd the slopes of the Hovmoller streaks. From the slope
information the span, duration and propagation speed of the streaks can be calculated and plotted.
Input to plot_hov is through a parameter le (plot_hov.inp) which can be read into plot_hov by
the UNIX redirection command (plot_hov < plot_hov.inp). The parameter le consists of 12 col-
umns of input information, each column is 10 characters wide. The rst column contains a com-
mand word with subsequent columns containing data values related to the command. Most
parameters are entered as oating point values; a few as characters. Any input line that starts with
an * is ignored and is treated as a comment. The basic command ow is to rst specify the type
of grid wanted, the averaging/summation window, any grid remapping/rotation and whether or not
to accumulate data over the diurnal cycle. This is followed by the reading of the data and lling up
the grids. Finally the data can be manipulated, correlation functions applied and plotted.
The following commands need to be specied before data are read.
*****************************************************************************
Input type of grid for the accumulation of data.
GRID GRD
GRD-(A4, left justied) grid type. Can have three possible values. LOTI- Statistics are accumu-
lated on a longitude-time grid (Hovmoller plot), LATI- Statistics are accumulated on a lat-
itude-time grid (Hovmoller plot), LOLA- Statistics are accumulated on a longitude-
latitude grid
*****************************************************************************
Input summation/averaging limits for the third dimension and the dates and times to start using
them. Up to 100 different limits and times may be entered allowing one to adjust the limits as a
function of time to follow a storm. Between the start times, the limits are linearly interpolated
allowing for a smooth transition. The inputting of limits must be terminated with a DONE in
the second column.
AVGWIN
XLIM1 XLIM2 AVGDATE AVGTIME
XLIM1 XLIM2 AVGDATE AVGTIME

XLIM1 XLIM2 AVGDATE AVGTIME
DONE
XLIM1,XLIM2-(F10.1) Summation/averaging limits. If GRD = LOTI then the limits are in lati-
tude, if GRD = LATI, the limits are in longitude, and if GRD= LOLA, the limits are in
time. For example, if GRD=LOTI, XLIM1=20. and XLIM2=40., then at each longitude
all of the data between latitudes of 20 and 40 deg will be summed/averaged. If
GRD=LOLA, XLIM1=6. and XLIM2=8., then at each longitude-latitude grid point data
between 6:00 and 8:00 will be summed/averaged. Whether the data are summed or aver-
aged is dependent upon the value of ACCTYP entered on the READ command.
AVGDATE, AVGTIME-(F10.1) Date (YYYYMMDD-19980620) and time (hour-16.5) to start
using the limits. Note if only one set of limits is to be used for the entire time, AVGDATE
and AVGTIME do not need to be specied.
*****************************************************************************
As data are read in, either remap the data to a rotated/displaced coordinate systemor shift the data
E-W/N-S about arbitrary line segments. Up to 100 different grid origins and rotation angles my be
specied allowing them to change as a function of time. This is useful for producing Hovmoller
plots in a frame of reference of a moving convective line/synoptic feature or for shifting data rela-
tive to a topographic feature. The inputting of information must be terminated with a DONE in
the second column.
REMAP XR1 XR2 YR1 YR2 RMAPTYPSHFDIR SORG
X0 Y0 ANGLE ROTDATE ROTTIME
X0 Y0 ANGLE ROTDATE ROTTIME

X0 Y0 ANGLE ROTDATE ROTTIME
DONE
XR1,XR2-(F10.1) Minimum and maximum x limits of the new coordinate system. The origin of
the new coordinate system is considered to be 0,0.
YR1,YR2-(F10.1) Minimum and maximum y limits of the new coordinate system.
RMAPTYP-(A10) Type of remapping to do. RMAPTYP = ROTATE, create a new grid that is
rotated and translated from the original. RMAPTYP = LINE, create new grid that is
shifted either E-Wor N-S fromthe original. The amount of shifting can vary as a function
of latitude or longitude.
SHFDIR-(A10) Direction to shift data (when RMAPTYP=LINE). If SHFDIR = EW , shift
data east-west, if NS, shift data north-south.
SORG-(F10.1) Latitude (when SHFDIR=NS) or longitude (SHFDIR=EW) to shift data to.
XO,Y0-(F10.1) If RMAPTYP = ROTATE, origin of new coordinate system with respect to the
original coordinate system. If RMAPTYP = LINE, then XO and Y0 are the endpoints
(longitude, latitude) of a series of line segments that dene some topographic feature that
the data are to be shifted with respect to. For example if SORG= 105 degrees longitude,
SHFDIR= EW, X0(1), Y0(1) = 103, 30, and X0(2),Y0(2)=102, 40, then data at 30
degrees latitude would be shifted 2 degrees eastward and data at 40 degrees latitude would
be shifted 3 degrees eastward. Data between 30 and 40 degrees would be shifted between
2 to 3 degrees.
ANGLE-(F10.1) Rotation angle of new coordinate system measured in degrees clockwise from
north.
ROTDATE,ROTTIME-(F10.1) Date (YYYYMMDD-19980620) and time (hour-16.5) to start
using the coordinates. Note if only one set of coordinates is to be used for the entire time,
ROTDATE and ROTTIME do not need to be specied.
*****************************************************************************
When reading data into a longitude-time or latitude-time grid, accumulate data over a diurnal
cycle, i.e., accumulate data according to the time of day. After accumulation is done, data are
normalized by the total number of samples in each time slot.
ACCUM FLDIN FLDOUT HRMIN HRMAX HRINC
FLDIN-(A10)-Name of eld to accumulate. This should be the same as the input eld specied
on the READ command.
FLDOUT-(A10)-Name of output eld that contains the accumulated data.
HRMIN,HRMAX,HRINC-(F10.1)-Minimum, maximum and increment hour bins to accumulate
data in. Normally HRMIN and HRMAX would be 0. and 24. hours.
*****************************************************************************
Read the input data from les in CEDRIC or MDV format. As data are read in they are also
summed/averaged, remapped and/or accumulated according to the commands that may have
already been specied.
READ FLDIN FLDNAME DATE1 DATE2 ACCTYP/SGN CNTHR LEVEL
MASTER
FLDIN-(A10)- Name of eld to read from input le.
FLDNAME-(A10) Name to use for input eld after it has been read in. If left blank, FLDNAME
defaults to FLDIN.
DATE1,DATE2-(F10.1) All data between (inclusive) the dates specied by DATE1 and DATE2
will be read. DATE1 and DATE2 are of the form YYYYMMDD (19980620.). Note that
the year and month/day limits are tested separately and both conditions must be met
before data are read. For example if DATE1 and DATE2 have values of 19960701. and
19980731., then only the Julys of 1996, and 1997 and 1998 will be read.
ACCTYP and SGN-(A8, left justied and A2, right justied) Specify how data are
to be summed or averaged in the third dimension and the sign convention to
use. Valid strings for ACCTYP are SUM, NTHR, AVG and
EVENT. Valid strings for SGN are GT and LT. The defaults values
are SUM and GT for ACCTYP and SGN, respectively. As an example
consider that GRD has been set to LOTI (longitude-time grid with aver-
aging/summing to be done in the latitude direction) and that at a particular
longitude-time we have the data shown on the right where the numbers rep-
resent the number of 2-km NIDS reectivity data points exceeding 25 dBZ
in each 0.2 deg box. If ACCTYP is set to SUM then the data will be
summed over all the latitudes specied in AVGWIN, which in this example
would be 260. The case of ACCTYP set to NTHR is a variation of SUM
where a box is set to 1 if the number of data points is greater (less) than
CNTHR if SGN is set to GT (LT), otherwise it is set to 0. The box val-
ues are then summed. The end result is the number of boxes that have data
values greater (less) than CNTHR. If CNTHR were set to 5, the result for
the example would be 7 if SGN is GT and 3 if SGN is LT. IF ACCTYP
is AVG the data are averaged, which in this case would be 26. If CNTHR
is also specied, then only those data points which have values greater
(less) than CNTHR are averaged for SGN set to GT (LT). The case of
ACCTYP equal to EVENT is a combination of AVG and NTHR. The
average of all the boxes is found and if the average exceeds CNTHR, the
value for this longitude-time is set to 1. This is useful, if for example, you
wanted to accumulate data over the diurnal cycle and wanted to calculate
the fraction of time that any longitude strip has data in it.
Note that when GRD= LOLA (third dimension is over time), the LOLA grid values
get normalized by the number of times sampled after all data have been accumu-
lated. Thus if ACCTYP =SUM, the data get summed over time and when all data have
been read, they get normalized by the number of samples. The end result is a time-aver-
aged eld. If the NTHR option is chosen, then the number of times that data values
exceed CNTHR is accumulated at each grid point. After normalization by the total number
of samples you end up with the fraction of time that data exceeded CNTHR at each grid
point.
CNTHR-(F10.1) Threshold to use when ACCTYP = NTHR or AVG. If CNTHR is left blank,
it defaults to -999. and 999. when SGN is equal to GT and LT, respectively.
LEVEL-(F10.1) When reading three-dimensional data, level species the height level of data (in
index space) to process.
MASTER-(A80) Name of le that contains the complete path names of all of the CEDRIC/MDV
les. The CEDRIC/MDV les have names of the form YYYYMMDDHHMM.ced
(199806201200.ced). The list of les is read, the data and time information is decoded and
only those les with dates between DATE1 and DATE2 are read. MASTER is on a sepa-
rate line immediately following the READ command and begins in the second column.
The following commands should follow the READ command.
*****************************************************************************
Do a contour or color-lled plot of the data.
PLOT FLD PX1 PX2 PY1 PY2 CMIN CMAX CINC PLTYP FRAME ASPECT
0
4
8
44
80
70
35
10
9
0
FLD-(A10) Name of eld to plot.
PX1,PX2,PY1,PY2-(F10.1) Longitude and latitude limits of plot window. If limits are left blank
they will default to the limits of the input statistical grid.
CMIN,CMAX,CINC-(F10.1) Minimum, maximum and increment of contour levels.
PLTYP-(A1, left justied) Type of plot to produce. PLTYP= F results in a color lled plot,
PLTYP= C produces a contour plot.
FRAME-(A10) If FRAME = NOFRAME, frame will not be advanced when the plot is nished.
This allows for the overlaying of one or more plots.
ASPECT-(F10.2) Aspect ratio of Hovmoller plots. A value of less than 1.0 causes the horizontal
axis (longitude or latitude) to be narrower than the vertical (time) axis. If left blank,
defaults to 1.0.
*****************************************************************************
Do a vector plot of two elds.
VECTOR FLD1 FLD2 SKP1 SKP2 VEL WCOR FRAME
FLD1-(A10) Field name of U component of vector.
FLD2-(A10) Field name of V component of vector.
SKP1,SKP2-(F10.0) Skipping factors in the x and y directions for the plotting of vectors. Every
SKPth vector will be plotted.
VEL and WCOR-(F10.1) Set the scaling of vectors on the plot. VEL is a reference velocity (m/s)
and WCOR the length that a vector of VEL m/s magnitude will have. WCOR is expressed
in units of frame coordinates where the coordinates range from 0.0 to 1.0.
FRAME-(A10) If FRAME = NOFRAME, frame will not be advanced when the plot is nished.
This allows for the overlaying of one or more plots.
******************************************************************************
Perform arithmetic operations on elds.
FUNC FTYP FOUT FLD1 FLD2 C1 C2 C3 C4
FTYP-(A10) Name of function to perform.
FOUT-(A10) Name of output eld to contains results of operation.
FLD1-(A10) Name of rst input eld if needed.
FLD2-(A10) Name of second input eld if needed.
C1,C2,C3,C4- Constants 1,2,3 and 4 if needed.
Currently three functions are recognized.
FTYP =
+: FOUT = C1*FLD1 + C2*FLD2
LINEAR: FOUT = C1*FLD1 + C2
ACCUM: Accumulate data in FLD1 over the diurnal cycle and output results in FOUT.
C1: Bin size in hours
C2: If C2=1., reset all counters to zero before doing the accumulation operation.
For other values of C2, do nothing.
C3: If C3=1., normalize the accumulated values in each time bin by the total
number of samples in each bin. For other values of C3 do not normalize.
*****************************************************************************
Fill in missing data using a least squares lling technique.
FILL RAD RMNPTS QUAD FLD1
RAD- (F10.1) Number of grid points to search outward.
RMNPTS-(F10.1) Minimum number of points required before doing the least squares t.
QUAD- (F10.1)Minimum number of quadrants required to have good data in them before lling.
FLD1- (A10) Name of eld to ll.
*****************************************************************************
Do correlation anaylsis to nd the slopes (velocity) of the streaks in the Hovmoller plots. A linear
cosine function is rotated through a number of orientations in longitude/latitude-time space and
correlated with the hovmoller data to nd the orientation of maximum correlation. This orienta-
tion determines the orientation of the long axis of the streaks and hence the propagation speed.
The correlation analysis is done for the entire grid and the correlation values are stored in arrays
and also written to a le (fortran unit 90) for later use. The correlation eld is processed and plot-
ted using the PLOTSTAT command. In order to do the correlation analysis the data are rst inter-
polated in the time domain to a grid with a constant time spacing (data are not always collected at
equal time intervals). Note that a plot of the correlation eld is automatically generated with this
command. By comparing the correlation eld to the hovmoller streaks, you can determined what
value of the correlation eld should be used for determining the streak endpoints in the PLOT-
STAT command.
CORR DTMIN WAVE RLEN UMIN UMAX UINC FLDCOR PCX1 PCX2
DTMIN-(F10.1) Time interval (minutes) to use for interpolation to a constant time grid. Set
DTMIN to roughly the time resolution of the original input data.
WAVE,RLEN-(F10.1) Wavelength and length of cosine function in units of number of grid
points. The values to use for these are somewhat arbitrary. When looking at the Hovmoller
plots the wavelength should be about equal to the width of the Hovmoller streaks. The
length can be varied according to what information is desired. If the overall propagation of
the longer streaks is desired, the length can be made long, say 1/4 to 1/2 the length of the
streaks. If one is after the span and duration of the streaks then a shorter length is better
since the endpoints of the streaks will be better dened. Note that since the Hovmoller
data is on a space-time grid, the wavelength and length are specied in terms of number of
grid points and not in units of degrees or time.
UMIN,UMAX,UINC-(F10.1) Specify the rotation angles of the cosine function in terms of the
propagation speed of the streaks. UMIN, UMAX, and UINC are the minimum, maximum
and increment in propagation speed (m/s). For example if UMIN and UMAX are set to 0.
and 50. m/s, then the cosine funtion will be rotated through those angles that correspond to
eastward moving streaks (between 0 and 50 m/s). Westward moving features would be l-
tered out.
FLDCOR-(A10) Name of eld to perform correlation analysis on.
PCX1,PCX2-(F10.1) Minimum and maximum limits in the x-direction for doing the correlation
analysis. If GRD=LOTI then PCX1 and PCX2 would be longitude limits; if GRD=LATI
the limits would be in latitude. If PCX1 and PCX2 are not specied, they have default val-
ues equal to the input grid.
*****************************************************************************
Take the correlation eld calculated by the CORR command, plot it, and nd continuous strings
of correlation values greater than CORMIN to determine the endpoints of Hovmoller streaks.
From the endpoints calculate and plot the span, duration and overall propagation of the streaks.
The correlation eld information can either be that which was calculated in the same run of the
programor read in froma le calculated in an earlier run of the program. Note that the correlation
eld along with lines showing the streak endpoints are automatically plotted.
PLOTSTAT CORMIN RDFILE ENDPNT RLENTHR TIMETHR
DURMIN DURMAX DURINC
SPNMIN SPNMAX SPNINC
SPDMIN SPDMAX SPDINC
FILENAME
CORMIN-(F10.1) The endpoints of Hovmoller streaks are determined by nding continuous
strings of correlation values greater than CORMIN.
RDFILE-(F10.1) Flag to tell programwhether to read correlation eld froma le or to use the val-
ues determined in the same run. If RDFILE = 1. then programreads values froma le and
the name of the le must be specied. Any other value of RDFILE causes the program to
use the values calculated in the same run and a le name does not need to be specied.
ENDPNT-(A8, left justied) Species how the endpoints of a streak are determined. They are
determined either by nding strings of correlation values that maximize the duration of the
streak (ENDPNT set to TIME) or those that maximize the span (length) of the streak
(ENDPNT set to SPAN). The default value of ENDPNT is SPAN.
RLENTHR,TIMETHR-(F10.2) Specify the span (km) and duration (hr) thresholds for keeping
streaks. Only those streaks that have a longer span and duration than the thresholds will be
included in the histogram and scatter plots.
After the plotstat command up to 4 additional lines of input parameters need to be specied.
These lines contain the plot limits for the scatter and histogram plots of streak duration (hours),
span (km) and propagation speed (m/s). If needed the 4th line contains the le name of the ts.
Note that all data lines start in the second column; The rst column is left blank.
DURMIN,DURMAX-(F10.1) Minimum and maximum limits for streak duration histograms
(hours).
DURINC-(F10.1) Bin increment for duration histograms (hours).
SPNMIN,SPNMAX-(F10.1) Minimum and maximum limits for streak span histograms (km).
SPNINC-(F10.1) Bin increment for span histograms.
SPDMIN,SPDMAX-(F10.1) Minimum and maximum limits for propagation speed plots (m/s).
SPDINC-(F10.1) Bin increment for speed plots.
FILENAME-(A80) Name of le containing the correlation values from a previous run.
****************************************************************************
Terminate program
QUIT
Examples of Input Parameter Files and Output Produced
/users/tuttle/uswrp/hovm/plot_hov.inp
GRID LOTI
READ FREQ15 19980714. 19980715. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
PLOT FREQ15 1. 40. 2. F
QUIT
/users/tuttle/uswrp/hovm/plot_hov_avgwin.inp
*Set summing window to 30 and 50 degrees latitude. This will produce a Hovmoller plot
*over a smaller latitude band than the previous example.
GRID LOTI
AVGWIN
30. 50.
DONE
READ FREQ15 19980714. 19980715. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
PLOT FREQ15 1. 40. 2. F
QUIT
/users/tuttle/uswrp/hovm/plot_hov_avgwin1.inp
*Summing window varies as a function of time following the main convective event.
GRID LOTI
AVGWIN
43. 50. 19980714. 0.
43. 50. 19980715. 3.
40. 50. 19980715. 9.
35. 50. 19980715. 24.
DONE
READ FREQ15 19980714. 19980715. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
PLOT FREQ15 1. 40. 2. F
QUIT
/users/tuttle/uswrp/hovm/plot_hov_lola.inp
*Since an averaging window is not specied it defaults to 0:00 and 24:00 hours. Plot shows
*average rainfall rate averaged over two days.
GRID LOLA
READ AVG 19980714. 19980715.
/users/tuttle/uswrp/hovm/master.lis
PLOT AVG 0.1 3.0 0.1 F
QUIT
/users/tuttle/uswrp/hovm/plot_hov_percent.inp
*Accumulate data for the month of July 1998 between 0:00 and 1:00.
GRID LOLA
AVGWIN
0. 1.
DONE
READ FREQ15 19980701. 19980731. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
FUNC LINEAR PERCENT FREQ15 100. 0.
PLOT PERCENT 10. 70. 5.0 F
QUIT
To make a movie loop of data accumulated in one-hour time bins for a 24 hour period, repeat
plot_hov_lola_percent.inp 24 times changing the limits in AVGWIN for each time bin.
GRID LOLA
AVGWIN
0. 1.
DONE
READ FREQ15 19980701. 19980731. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
FUNC LINEAR PERCENT FREQ15 100. 0.
PLOT PERCENT 10. 70. 5.0 F
AVGWIN
1. 2.
DONE
READ FREQ15 19980701. 19980731. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
FUNC LINEAR PERCENT FREQ15 100. 0.
PLOT PERCENT 10. 70. 5.0 F
AVGWIN
2. 3.
DONE
READ FREQ15 19980701. 19980731. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
FUNC LINEAR PERCENT FREQ15 100. 0.
PLOT PERCENT 10. 70. 5.0 F



AVGWIN
23. 24.
DONE
READ FREQ15 19980701. 19980731. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
FUNC LINEAR PERCENT FREQ15 100. 0.
PLOT PERCENT 10. 70. 5.0 F
QUIT
/users/tuttle/uswrp/hovm/plot_hov_diurnal.inp
*Accumulate data over the diurnal cycle for July 1998.
GRID LOTI
ACCUM FREQ15 ACC 0. 24. 1.
READ FREQ15 19980701. 19980731. NTHR 5.
/users/tuttle/uswrp/hovm/master.lis
PLOT ACC 1. 30. 1. F
QUIT
/users/tuttle/uswrp/hovm/plot_cor.inp
*Use the CORR and PLOTSTAT commands to apply a linear cosine correlation function to the
*data and nd the endpoints of the Hovmoller streaks. Plot histograms of the span, duration and
*propagation speeds of the streaks.
GRID LOTI
AVGWIN
30. 50.
DONE
READ FREQ15 20020720. 20020730. AVG
/users/tuttle/uswrp/hovm/master.lis
CORR 15. 12. 15. 5. 50. 2. FREQ15 -110. -75.
PLOTSTAT 35. 0. SPAN 300. 3.
0. 80. 5.
0. 3000. 100.
0. 40. 2.
PLOT FREQ15 -110. -75. 0.5 35. 1.0 F
QUIT

You might also like