OABSFC performs a Barnes objective analysis on surface data.
INPUT PARAMETERS
SFFILE *Surface data file
GDFILE *Grid file
SFPARM *Surface parameter list
DATTIM *Date/time
DTAAREA *Data area for OA
GUESS *Guess file^time
GAMMA *Convergence parameter
SEARCH *Search radius/EXtrapolation
NPASS *Number of passes
PROGRAM DESCRIPTION
OABSFC performs a Barnes objective analysis on surface
data. Multiple parameters may be analyzed at the same
time. If more than one time is entered, the analyses
will be performed sequentially.
The input surface file is specified in SFFILE. Two files
may be entered by separating the names with a plus, +.
The projection and area for the grid are read from the
navigation block in the output grid file. The extend grid
area, the station spacing and the data subset area are read
from the analysis block. The extend area is used to define
a larger grid for the first pass, allowing data to be
interpolated back to stations outside the final grid area.
The average station spacing is used to compute the weighting
functions. The data subset area specifies which data
will be used in the analysis. If DTAAREA is blank or set
to DATA, the data area defined in the analysis block will
be used. This is the recommended procedure. However,
DTAAREA may be specified in the same way as the AREA
parameter used in other programs. This is especially useful
to eliminate stations which are known to have bad data.
A first-guess field can be used in the analysis. The name
of the grid file containing the guess field must be entered
in GUESS. In addition, the time to be used to extract the
guess field from the file must be entered as the second
value in GUESS following a ^. If a guess field is entered,
the navigation information in the guess grid file must be
identical to that in the output grid file. When a guess
field is used, it is inserted into the grid as the zeroth
pass.
Each pass of the analysis interpolates data from stations to
grid points using the weighting function:
WTFUNC = EXP [ -DIST ** 2 / WEIGHT ]
where:
DIST ** 2 = [ ( lat (grid) - lat (stn) ) ** 2 +
( lon (grid) - lon (stn) ) ** 2 * coslsq (grid) ]
COSLSQ = COS ( lat (grid) ) ** 2
WEIGHT = 5.051457 * ( DELTAN * 2 / PI ) ** 2
DELTAN = Station spacing read from grid file analysis block
Near the poles, an approximate calculation of the distance along
a great circle arc is used.
GAMMA, the convergence parameter, multiplies the weights for
passes after the first pass. GAMMA must be within the range
0 - 1. Any value outside this range will default to a value
of .3. If GAMMA is 0, the number of passes will be set to 1.
The recommended value for GAMMA is .3.
SEARCH is used to control the search radius, which is the
maximum distance that a station may be from a grid point to be
used in the analysis for that point. The search radius will be
set so that stations whose weighting factor would be less than
EXP (-SEARCH) will not be used. SEARCH must be in the range
1 - 50. If it is not, a default value of 20 will be used. If
a very small value is used, many grid points will not have 3
stations within the search area and will be set to the missing
data value. Entering /EX after the SEARCH value allows
data extrapolation to assign values to grid points on the
periphery of the data region. This will reduce the number of
grid points with missing values in data void regions.
NPASS controls the number of passes. Valid values are in the
range 1 - 5. Note that two passes are STRONGLY RECOMMENDED.
EXAMPLES
1. Analyze temperature, dewpoint and the wind components
from the latest time in the surface file, SURFDAT. Add
the computed grids to the file, TEST.GRD.
SFFILE = surfdat
GDFILE = test.grd
SFPARM = tmpf;dwpf;uwnd;vwnd
DATTIM = last
DTAAREA = data
GUESS =
GAMMA = .3
SEARCH = 10
NPASS = 2
2. Repeat the dewpoint analysis setting the convergence
parameter to .25 and eliminating the data at stations DCA
and BUF.
SFPARM = dwpf
DTAAREA = data/-@dca;buf
GAMMA = .25
3. Repeat the wind analysis using the 24-hour forecast from
the model data stored in model.ngm.
SFPARM = uwnd;vwnd
DTAAREA = data
GUESS = model.ngm*f24
ERROR MESSAGES
[OABSFC +9] No data from ... will be used.
[OABSFC +8] Parameter ... is a character parameter.
[OABSFC +7] Parameter ... cannot be computed.
[OABSFC +6] WARNING: Area is not DATA area in file.
[OABSFC +5] WARNING: The recommended number of passes is 2.
[OABSFC +4] ... is invalid for NPASS. It is set to 2.
[OABSFC +3] ... is invalid for search. It is set to 20.
[OABSFC +2] WARNING: GAMMA is 0. There will be only 1 pass.
[OABSFC +1] ... is invalid for GAMMA. It is set to .3.
[OABSFC -1] Fatal error initializing TAE.
[OABSFC -2] Fatal error reading TAE parameters.
[OABSFC -3] Fatal error initializing GEMPLT.
[OABSFC -4] Grid size is too large.
[OABSFC -5] Not enough buffer space; reduce number of grids.
[OABSFC -6] There are too many stations in data subset area.
[OABSFC -7] There are too few stations in data subset area.
[OABSFC -8] There are no times in the surface file.
[OABSFC -9] No valid parameters have been entered.
[OABSFC -10] Surface file ... cannot be opened.
[OABSFC -11] Time cannot be found in ....