New in version 5.58 (February 2012)
Dual pole radar support
Added support for dual pole radar products
New in version 5.57 (August 2011)
New hurricane changes
Added shorthand directories to hurricane. These are "atl", "epa", "cpa", "wpa", "nio", "spa", "sio". Turn this on with -pa=path3
Added CSV output of storm information to hurricane (storm.csv)
Bug Fixes:
- Fixed a bug in region where the default batch region wasn't set properly
- Fixed a bug in mapplt where it wouldn't read raw files from stdin
- Fixed a bug in rad where product 211 wouldn't label properly
- Fixed a bug in rad where level 2 radar data causing core dump. This was the result of a buffer overflow caused by the new higher res data
- Fixed how level2 data reader dealt with bad data
- Fixed a bug in rad where memcpy bombs on decompressing, GINI satellite and level2 and level3 (NIDS) radar data. Had to replace with memmove
- Fixed a bug in rad where product 138 was giving bad start times for precip
- Fixed hurricane where it wasn't decoding newer Pacific hurricane discussion forecast positions
- Fixed a bug in xsat where reading a bad image file could caused a core dump. This results from reading an indirect WXP IMG file where the filename listed in the file is blank or corrupted
New in version 5.56 (March 2011)
NSSL radar mosaic support
Added support for the NSSL radar mosaics
Bug Fixes:
- Fixed a bug which caused a core dump if the symbol file was
missing
- Fixed a bug in the METAR decoder where extra visibility groups
were not handled correctly for international METARs
New in version 5.55 (September 2010)
Bug Fixes:
- Fixed a small bug in how WMO ids for old Yugoslavia are handled
- Fixed a bug in the GFS MOS reading where it only read 15 time
values rather than 21. This cut off everything after 48 hours.
- Fixed a bug in the NLDN plotting where bad times were displayed
when there was no valid data
New in version 5.54 (April 2010)
New NIDS products
Added support for new NIDS products 134 (Digital VIL) and 135 (Enhanced
Echo Tops).
New in version 5.53 (December 2009)
Upgraded 64 bit support for MacOS X
Changed more code to handle 64 bit processing.
New NIDS products
Added support for NIDS products 94 and 99 (high res bref and vel) which
will replace products 19 and 27.
Bug Fixes:
- Fixed a couple of bugs in grdmath functions
- Fixed a bug in GRIB reader where some values might be undefined
before use
- Fixed a bug in NIDS reader where bad data in BZip2 compressed
files could result in infinite loop
- Added default domain size in NIDS so that bad products don't
produce strange domains
- Fixed an issue in RAW_write where 64 bit pointers and 32 bit ints
didn't work well. This resulted in bad raw file output on 64 big
machines
New in version 5.52 (September 2009)
Upgraded 64 bit support for MacOS X
Compiling for Snow Leopard exposed a couple of buffer overruns and
small bugs
Bug Fixes:
- Fixed bug where fill patterns decoded improperly
- Fixed a buffer overrun in contouring when too many contour levels
are specified
- Fixed a bug in city database reading where WMO id variable not
large enough to hold buoy names
- Changed city database reading to fix possible 64 bit issues
- Fixed a couple of bugs in image processing code that were
introduced in 5.51
- Fixed a bug in grid reader of WXP grid files where variable too
small to handle some information strings
- Fixed a bug where units weren't applied to GRIB data read in with
header files. This only affected griblook output.
- Fixed a bug in hurricane where data read into a buffer was too
small
- Fixed issue with displaying WXP 6 RCM mosaics in WXP 5.
This eliminates the winter masking that WXP 5 can't handle.
- Fixed a bug in coded WMO ids where id was improperly computed for
Netherland Antilles
New in version 5.51 (August 2009)
Upgraded 64 bit support
Performed testing on 64 bit version of WXP to make sure each program
worked properly
Bug Fixes:
- Freed up pixmaps which might lead to memory leak on X server
- Fixed bug in AREA reader for 64 bit OS
- Fixed bug in enhancement file reader. Incorrect processing
of @label parameter
- Fixed bug in plot domain decoding where missing parameters
weren't handled correctly
- Removed debug pring line from upper air calculations
- Fixed bug in variable processing where "strm" plot type doesn't
properly set up grids and thus results in no grids to plot
Additional Functionality:
- Raised GRIB size limit to 2MB
- Added Mercator projection for GRIB2 data
- Added code to read in special WRF model GRIB parameters
- Added code to swap levels in layers so that lowest level is first
New in version 5.50 (June 2009)
Updated ingest program
Changed
com processing to
handle end of line better. The end of line is now CR/CR/LF rather
than just LF.
Added a test for just ETX. All products are terminated with a
sole ETX character but this is hard to test for since it not at the end
of a line but at the beginning. But packets are terminated
with ETX so reworking the processing to go packet by packet allows for
this test. This then allows product's output files to be
closed when the product is terminated rather than waiting for the start
of the next product (i.e. when the next line comes across).
Fixed several bugs in wrap testing the end of line. This fixed
some issues with products getting truncated if the right combination of
characters were present.
Fixed a bug which could cause a core dump on some run-on lines.
Fixed a bug for GRIB header processing. The parameter array
was too small to handle possible parameters and thus the output header
files were not getting the right parameters. In other
words, the header files would be wrong.
Added new logging for potential issue relating to partial headers and
possible truncated products.
Bug Fixes:
- Fixed bug in the processing of TDWR data (bzlib compressed files
only) where bad data could result in an infinite loop.
- Fixed a bug in rad where
plotting of MESO data (composite reflectivity attributes) didn't
accound for new MDA data (numeric rather than YES/NO).
- Fixed a bug in light
that resulted in extended format NAPLN/USPLN data not getting parsed
properly. The date was expecting integral seconds and the
extended format using a floating point value.
- Fixed the labeling of NAPLN/USPLN and NLDN data in light.
- Fixed the domain specification for MDR and RCM plotting and
decoding (rad and radcvt).
- Fixed a bug in sacvt
that wouldn't properly recognize some NIL Canadian METAR reports (where
NIL is in the RMK section) and resulted in the next line being appended
to the current METAR line. This would result in some
reports being lost.
New in version 5.49 (March 2009)
Added support for TEMP MOBIL upper air reports
WXP
uacvt will now decode
TEMP MOBIL products. This includes IIA, IIBB, IICC, IIDD, EEBB
and EEDD products.
Added more support for NAM MOS data
Even though Eta MOS had been supported, it wasn't fully supported in
programs like
fo_parse and
statlog. In converting Eta to
NAM some parameters were not fully decoded. Now all the
parameters are decoded adding SNW, CIG, VIS and OBV.
Several bug in the decoder were fixed.
Additional Functionality:
- Added processing to allow NAM UA products to go to 60 hours.
- Added demo licensing.
Bug Fixes:
- Fixed bug in color fill where a missing value would return a bad
color.
- Fixed NAM UA identifier search in city database (added leading K
to id).
- Fixed bug in model sounding plot where values were missing.
- Fixed bug in NAM UA decoder where second and third reports in a
product cuold be skipped.
- Fixed several bugs related to TDWR decompression.
- Fixed bug in vector plotting where programs core dumped if color
fill with values used.
New in version 5.48.3 (January 2009)
Added support for TDWR
The
rad program will now
process and display TDWR (Terminal Doppler Radar) data files.
Bug Fixes:
- Fixed some small bugs in the NIDS decoder.
- Fixed bug in license decoder.
New in version 5.48.2 (November 2008)
Additional Functionality:
- Increased variable parameter in grbcalc
to 200 characters
- Added WXP6 cutoff value reading in image files (values ignored)
- Modified some constants to match WXP6
Bug Fixes:
- Fixed bug in Coriolis grid math function where improper latitude
was being used.
- Fixed bug in variable processing in rad for Level 2 radar plotting
- Fixed a bug specification of wind chill temperature in sfcwx.
New in version 5.48.1 (October 2008)
Bug Fixes:
- Fixed bug in gifcat
related to exapnsion of color table.
- Fixed bug in griblook where
grid_type
was
ignored if you wanted to extract a grid from a file.
- Fixed issue in hurricane where
month
was
improperly computed for forecasts
New in version 5.48 (August 2008)
Ported WXP6 Level 2 decoder for MSG 31 to WXP 5
The WXP 5 decoder for Level 2 radar data was replaced with a backported
version of the WXP 6 Level 2 decoder in order to handle the high res.
MSG 31 format.
Added "unit" function to grdmath
This adds the ability to change units in
grdmath.
grdmath filename unit new_units = new_filename
Additional Functionality:
- Increased buffering in ingest
to 10K.
- Modified sacvt to treat
"NCD" and "NSC" as clear skies.
Bug Fixes:
- Fixed bug in ingest
relative to BUFR processing that would possibly read in next product
and append it to current product.
- Fixed bug in the grd_read module that didn't properly read in the
units of a grid that was saved as a WXP grid file. This meant
changing units in grdmath couldn't
be
done
on WXP grids.
- Fixed bug in processing of ETA and GFS MOS data that involved
improper conversion of some cloud height/ceiling parameters.
New in version 5.47 (May 2008)
Converted code to ANSI C with full function prototyping
Completed work to move the WXP 5 code to ANSI compliance and prototype
each function. The -Wall parameter was added to compilation
to extract an issues. This flagged about 20 small problems
which were resolved.
New in version 5.46 (January 2008)
Added use of generic resources
WXP 6 was designed to use generic resources. Any resource
specified in the resource file (*generic_resource: xxx) or the command
line (-generic_resource=xxx) will be read into the resource
database. Before, only a set list of resources specified by the
program could be used.
Added generic paths to name convention file
WXP 6 has the ability to define generic resources in the command line
and in some database files. The use of generic paths in the name
convention file was backported to WXP 5. This means you can
specify a generic path resource in the naming convention:
nids
%{nids_path}/%i/%y%m%d%h%n_%e.nid
The resource path can be specified in the resource file (wxp.cfg) or
the command line (-nids_path=xxx).
Support for Digital Hybrid Reflectivity (DHR) and Digital Storm
Precipitation (DSP) 8 bit NIDS products
The
rad program can now
display these products. These are high resolution 8 bit products
as opposed to the 4 bit (16 value) N0R and NTP products.
Additional Functionality:
- Added code to handle forecast time labels in days and months.
- Reworked processing of probabilities in the GRIB
decoder. Before, a probability was assumed to be from an
ensemble grid. Now it distinguishes between ensemble probability
and regular probability.
- Added code to handle forecast time increments in GRIB2 in 3, 6
and 12 hour increments. This affect labeling of plots.
- Added visibility string data to MOS decoder. This
creates a visibility string varying on visibility value (10, 2.5,
.12). This was available for plotting in surface data but
not MOS data.
- The MOS decoder not checks the header file for valid data.
Before, the whole file would be searched whether it was needed or
not. This improves plotting performance and cuts plotting time in
half.
- Added check to see if license file could be opened. This
was done for license file debugging problems.
- Increased the number of significant levels handled by the upper
air decoder from 100 to 200 levels. The new high resolution
soundings often have more than 100 significant levels.
Bug Fixes:
- Fixed bug in climat that
didn't properly handle max/min data in the 444 group.
- Fixed bug in objective analysis code that didn't use the last
piece of data in the array.
- Reworked the lat/lon parsing in the front decoder to eliminate
issues with spurious lines. The code was backported from WXP 6
that didn't have this problem.
- Fixed bug in GRIB2 decoder that didn't index grids
properly. Referencing grids in contour
by grid number would be off because multi-grids (U/V) would be counted
as one and the second grid became inaccessible.
- Fixed bug in GRIB2 4.8 template where missing statistical type
was not handled. Now it distinguishes between missing end
forecast time and one where it is specified.
- Added code to initialize all gridpoints in the GRIB decoder to
MISS. In some cases where the grid wasn't fully defined, the
gridpoint values could be random.
- Fixed bug in GRIB2 decoder that didn't handle allocation of bit
map block correctly.
- Fixed bug where bit map block not used for some grid
types.
- Added code to handle reuse of bit map block from prior grids.
- Fixed bug in GRIB2 decoder where complex spatial differencing
wasn't being done properly. Added code to handle 1 byte
differencing (only handled 2 byte before). Fixed segment length
(glen) computation by adding segment offset (inc_glen).
- Fixed bug in METAR decoder that interpreted ///// (5 slashes) as
missing visibility rather than missing wind.
- Fixed bug in sfcwx where wind direction was being reset when
plotted. The wind directory was corrected to plot the winds
relative to north on the projection but this could affect wind
direction if requested by an Alt-v on the display or being saved to a
raw file.
New in version 5.45 (July 2007)
Reworked the hurricane program to handle subtropical and
extratropical storms
The
hurricane program in the
past ignored the subtropical and extratropical designators because it
often happened after a storm was tropical. But now that these
storms are being named from the beginning,
hurricane now has to deal with a
storm like Andrea that was never tropical in nature. So the
hurricane program now has a storm
type designator so that it can properly label each storm.
In addition, the
hurricane program
has
an
additional check to make sure eastern Pacific storms don't end
up in the western Pacific directory. Finally, for simplicity, the
northern Indian Ocean storms now go into a "n_indian" directory to
match the other directory paths (such as e_pacific, s_pacific,
s_indian).
Eventually, this program will be replaced with a WXP 6 equivalent.
Added support for EuMetSat LRIT data
The compression scheme the LRIT uses is a non-standard version of
JPG. Thus to get the JPG API to read the files in correctly, a
modified library must be used. This has now be incorporated into
WXP and these compressed LRIT files can now be displayed. WXP has
supported uncompressed LRIT files for several versions and support for
GOES LRIT data is being considered (issues with proprietary compression
scheme need to be resolved).
Additional Functionality:
- Added scaling for marker plotting in light. Now markers can be
specified for lightning plotting and that can be properly scaled.
- Added test in licensing program to search for license file in
"/usr/local/wxp/etc" as well as "/home/wxp/etc". This is used if
the "wxpdefault" environment variable is not set. Similar testing
was added for the location of the resource file in a prior
version.
- Added a better warning message for missing license file.
Bug Fixes:
- Fixed bug in DATE_time_date where it computed the wrong number of
hours given seconds since midnight.
- Fixed bug in GRIB2 decoder that limited grid size to 2000
gridpoints in either direction. Some radar mosaics put in GRIB2
format are larger than that.
- Fixed bug in GRIB decoder that didn't calculate forecast time
when it was missing. In some cases, its left missing and forecast
time (say 24 hour forecast) must be derived from valid time.
- Fixed bug in GRIB2 decoder for JMA template 50008 wher the
forecast time and level were left unset.
- Fixed bug in ingest that
put the wrong level in header files for products using the "hybrid"
level designator. This is for the base reflectivity products
coming from the NAM model.
- Fixed bug in LRIT decoder that used the wrong offset value for
locating images. It had been hard coded that the images would be
split into 10 slices. This test code had been left in WXP and
should have been replaced. Now, the LRIT decoder uses the offset
values in the image file to correctly locate the image.
- Fixed problem in parse
that prevented multiline zone and county designators (PAZ029-031...)
from being interpretted. Now parse
will decode all available designator lines.
- Changed maxtop parameter
in rad program to echotop.
- Fixed bug in raw file reader that didn't offset the field number
correctly. If you specified "file-0",
the
wrong
data field would display. It should display the first
field/column after the lat/lon.
- Fixed bug where a program would go into an infinite loop is an
invalid region was specified. In other words, if a region was
specified that wasn't in the "wxp.reg"
file.
- Fixed bug where forecast hour would be incorrect if something
like "3day-24acc" was specified. The "day" computation would be
missed and 3 would be assumed as hours, not days.
- Fixed bug in plotting programs where streamline and vector
plotting wouldn't work properly if mixed in with standard data
plots. The streamline specification would be ignored and U and V
component values would be plotted to screen, not drawn as
streamlines. This affected programs like sfcwx and upairwx.
New in version 5.44 (May 2007)
Updated the GRIB decoder
The GRIB1 and GRIB2 decoders were reworked to streamline reading of
data. The problems involved losing track of the current position
in the file and in some cases core dumping.
Added in support for GRIB2 data templates that support ensemble data.
The templates include 1, 2, 5, 9, 11 and 12.
Added differentiation for ensemble mean and stdev fields. Use
ensmean[]var for mean and
ensdev[]var for stdev fields. The
variable number is
19000vvv for mean and
19001vvv for stdev fields.
Changed ensemble member specification. Control is 19300vvv.
Positive is
1932##vvv. Negative is
194##vvv
(used to be 193).
Added support for thinned grids in GRIB2.
Additional Functionality:
- Added support for hybrid levels (lev = 105) for radar model
output.
Bug Fixes:
- Fixed bug in grbsnd where some grids could be inadvertantly read
in. This is case when 25 mb level data is available and the program
wants 50 mb levels. The 25 were read in anyway and sometimes
overwrote the 50 mb data.
- Fixed bug in GRIB reader that if a file contained two sizes of
grids, that the data grid would be reallocated. Otherwise, there
was a core dump.
- Reworked satellite transformation to fix mapping problem on
non-sphere earth. This threw some projections off by close to a
half degree.
New in version 5.43 (April 2007)
Updated AREA file decoder
The AREA file decoder was updated to handle many new AREA file types
and navigation schemes. Specifically, support for RECT, MERC,
LAMB and MSAT AREA file navigations have been added. Also, the
MOLL projection code has been updated to handle the two types of MOLL
projections specified in the AREA file documentation.
With the addition of angle based satellite navigation and elliptical
earth, xsat can use its native georeferencing and not have to rely on
the GVAR code. This simplifies the navigation interface and
eliminates some estimation of pixel spacing done in prior versions.
Additional Functionality:
- Modified reading in of NGM MOS POP12 data to handle Alaska off
hour reports.
- Added satellite projection code for non-spherical earth.
- Added domain specification so that "e" can be specified for
non-sphere/elliptical earth:
proj:e:plat:plon:...
- Comments can be added to wxp.reg file.
- Corrected the line/elem for AREA files to use 0,0 as origin.
- Added many new levels to GRIB specification such as boundary
layer, cloud ceiling, wet bulb zero, equilibrium level, super cooled
liquid water.
Bug Fixes:
- Fixed bug in color_fill file that caused DOS formatted files to
read in incorrectly.
- Fixed bugs in GRIB2 decoder to handle embedded GRIB
products. In some cases, the wrong grid was read in.
New in version 5.42 (February 2007)
Added new gridpoint plotting capabilities
- First, you can specify a skip factor so that not every grid value
is plotted.
- Second, you can offset the plotted values.
- Third, you can scale the values.
In plot_param: plt_skip=x:y (with y optional) and
plt_off=x:y
In variable: sk=xy:xy=xy:sc=# (mimic vector plotting)
Updated the GRIB2 decoder
Even though WXP 5 could read in simple GRIB2 products, it couldn't
handle products with multiple grids. Support was added to handle
these multiple grid products. Because of the way WXP 5 is
designed, this addition break support for GRID products (WMO ASCII text
version of GRIB).
Added limited support for LRIT data files
Even though WXP 6 has had this support for a while, it was added to the
WXP 5 code base. This is limited support for uncompressed
products using the GOES navigation. You can access these data
using "-inp=lrit" from
xsat.
This
is
primarily for support for JMA images and doesn't include GOES
LRIT data since it uses a proprietary compression algorithm.
Additional Functionality:
- Added hexadecimal color definitions to color table file.
Instead of using floating point R G B values, you can use #rrggbb in
hex format (#c08427)
- Added navigation support for satellite projections based on scan
angle and not a projection plane. Satellite projection
information is: sat:plat:plon:sat_rad:flag,clat,clon,...
where
the
flag is 0 for
projection plane space and 1 for angle space. Angle space is scaled by
the sat_rad to make numbers
reasonable. For example, geostationary satellites have a sat_rad
of 421.64.
- Added support for Unisys 1km winter mosaics.
- Added marker plotting to light.
Use
the
plot parameter mark with a standard marker type:
-pp=mark:circle
- Added IR temperature computations to Unisys satellite images so
that they can be enhanced with temperature based enhancement schemes.
Bug Fixes:
- Fixed problem with wrapping contours in Lambert Conformal
projection. On global grids, lines going across the back of the
earth could cause spurious horizontal lines to display.
- Fixed bug that would cause core dump on Jpeg2000 grids.
- Fixed bug in reading in upper air data from WXP decoded files
that limited the number of significant levels to 50. Many sites
today report more than 50 significant levels and this would cause the
file reader to ignore the following station. The total number of
levels was raised from 120 to 200 to accommodate these newer stations.
- Fixed bug in color fill file reader that read the last line of
the file twice. This resulted in double used colors and no color
bar.
- Fixed bug in suncalc
where the Julian date didn't account accurately for non-leap
years. This meant sunrise, sunset times were two days off for the
months of January and February 2007.
New in version 5.41 (September 2006)
Added processing for WXP v6 Grid and Image files
WXP v6 adds new functionality to grid and image files. This
update allows WXP 5 to read these files, not create them.
Added new mapplt plotting options
Added the ability to plot text, markers and range circles from the
mapplt command line:
mapplt -pd=us mark:lat:lon:type text:lat:lon:text range:lat:lon:range
So from the command line, you can plot a marker at any lat,lon
location. The type is the standard types such as "+", "circle",
"square", etc. The text is plotted centered at the
location. The range circle is in nm.
Default resource file location
WXP will now look in default locations for the resource and license
files. If you put the resource file and license file in the
"/home/wxp/etc" or "/usr/local/wxp/etc" directory (c:/wxp/etc for
Windows), WXP will find them without having to set the wxpdefault
environment variable.
Additional Functionality:
- Added comment lines to color fill and enhancement files.
Precede them with a #. Also added @value line for WXP v6 valued
images.
- Added "/c/" for Windows filenames. You can use "/c/"
instead of "c:/" in filename to eliminate some confusion with ":" being
a delimiter for WXP options.
- Added the parsing of some new JTWC tropical storm advisories to
the hurricane program.
- Added storm track plotting to raw files. For example:
216,36:track:co=white:wi=2
Will plot a track marker with direction 216 and speed 36 knots.
- Added labels for special GOES products on NOAAPORT. The
satellite derived lifted index, precipitable water, surface temperature
and cloud top height will now be properly labeled.
Bug Fixes:
- Fixed a bug in the conventions that could code dump if lines in
the name convention file were longer than 100 characters. The
line limit is now 160 characters.
- Fixed a bug in grdmath
that prevented the prepending of the grid_path
path onto the first filename used in some math computations.
- Fixed an issue with the determination of hurricane
location. The hurricane program
now
has
some additional checks to make sure eastern Pacific storms
don't make it into the western Pacific list of storms.
- Fixed a bug in the MDR decoder that didn't account for a storm
movement attribute after max tops.
New in version 5.40 (June 2006)
New GRIB header file format
This new format prefixes numbers with a single character:
S - source,
M - model number,
G - grid number,
T - forecast time value,
L - level type,
H- level value,
V - variable/parameter specification.
Added limited functionality for GeoTIFF GOES imagery
Even though a GeoTIFF decoder was added to WXP, it didn't handle many
types of GeoTIFF imagery. This version updates the GeoTIFF
decoder to handle both big and little endian files as well as RLE
compression of TIFF data. Georeferencing support was extended to
lat/lon projected TIFF imagery. This will support GeoTIFF imagery
produced by NESDIS.
Updates to NIDS storm attribute data
- Rewrote NIDS bit reader and decoder. This was done so that the full storm
attribute table could be decoded. Prior to the rewrite, rad would stop decoding after the
first 4 storms.
- Fixed check for TVS and MESO.
- Added drop shadowing to markers so that storm attribute plotting
will stand out.
- Added strong and numplt:# options to rad to filter storms. With the
additional storm attribute data, cluttering is an issue. Using
the strong option "-pp=strong",
only storms with a TVS, MESO or severe hail > 50% will be
plotted. Using the numplt option "-pp=numplt:3",
only
a
set number of storms will be plotted. In general storm
attribute tables are sorted with the strongest storms at the top.
Both options can be used so that at least # number of storms will plot
even if they're not strong or that strong storms will plot even if it
exceeds the numplt specification.
Additional Functionality:
- Changed DATE_print output formatting
- Added "uspln-t" and "uspln-b" format decoding for direct
USPLN feed.
- Added "lev2z" input
format type for compressed Level 2 data files. With changes to
the Level 2 format, it was impossible to determine the file format
directly from the contents. Use "lev2"
for
uncompressed
data only.
- Added marker plotting to light.
To
specify
plotting a marker, use "-pp=mark:+".
The
scale
resource (-sc) can be
used to scale the marker.
- Added GRIB2 support for JMA radar imagery. This adds the
templates to the GRIB2 decoder for JMA radar data.
- Added drop shadowing for markers. So if shadowing is
specified "-pp=shadow:3",
markers in addition to text will have shadowing.
- Added refresh option to
the sfcwx program.
- Fixed arrow size for storm track option "-va=track" in rad.
Bug Fixes:
- Removed setting of file type and name convention in rad. This eliminates a
conflict when both are specified.
- Fixed a bug in the licensing code.
- Fixed a bug in sacvt
that caused random core dumps.
- Fixed bug in SHEF comment parsing. shefcvt would stop
parsing at comments. Problem introduced with parser rewrite.
- Fixed raw file read issues. Lines with a leading space were
ignored. Problem intorduced with parser rewrite.
- Fixed bug in DATE_chk_range that led to bad checks for times in sacvt and uacvt.
- Fixed bug in sacvt the
could miss from reports in METAR or SPECI not put in METAR code line.
- Fixed a bug in the RCM plotter that didn't plot storm tops
properly.
- Fixed bug in storm track arrow "-va=track"
on
the
rad program. The
bug enhanced arrow size for fast moving storms.
- Fixed offset in GRIB2 decoder. This was causing some GRIB
products to be skipped because the offset between products was not
properly calculated. This cause some GRIB files such as ones
downloaded from NWS FTP servers to not be parsed properly and as a
result every other GRIB product was skipped.
- Fixed GRIB2 decoding of level specification. This meant
layer specifications were wrong.
New in version 5.39 (January 2006)
New variable specification for ensemble probability grids
The ensemble grids use a different numbering scheme for the
variable. There are two types of ensemble grids that require
special attention. The mean and spread fields can be run with
existing commands.
- The individual ensemble grids will generally go into a single
file but prior could would show 2-8 grids of the same parameter.
The new code will denote the perturbation run number:
Reading from grid
file:/mnt/noaaport/nwstg/model/06012512_gfse.grb
0: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[+1]
Temperature (K)
1: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[+2]
Temperature (K)
2: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[+4]
Temperature (K)
3: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[+3]
Temperature (K)
4: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[+5]
Temperature (K)
5: 6 hour GFSE valid 18Z WED 25 JAN 06-500 mb Ens[-1]
Temperature (K)
6: 6 hour GFSE valid 18Z WED 25 JAN 06-500 mb Ens[-2]
Temperature (K)
7: 6 hour GFSE valid 18Z WED 25 JAN 06-500 mb Ens[-4]
Temperature (K)
8: 6 hour GFSE valid 18Z WED 25 JAN 06-500 mb Ens[-5]
Temperature (K)
9: 6 hour GFSE valid 18Z WED 25 JAN 06-850 mb Ens[+1]
Temperature (K)
10: 6 hour GFSE valid 18Z WED 25 JAN 06-500 mb Ens[-3]
Temperature (K)
11: 6 hour GFSE valid 18Z WED 25 JAN 06-850 mb Ens[+2]
Temperature (K)
12: 6 hour GFSE valid 18Z WED 25 JAN 06-850 mb Ens[+5]
Temperature (K)
13: 6 hour GFSE valid 18Z WED 25 JAN 06-850 mb Ens[+3]
Temperature (K)
14: 6 hour GFSE valid 18Z WED 25 JAN 06-850 mb Ens[+4]
Temperature (K)
15: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[-1]
Geopotential Height (m)
16: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[-3]
Geopotential Height (m)
The purturbation will be shown as + or - and then the run
number.
NOTE: The header file will not specify ensemble information to
it is important to specify "-pa=nohdr"
when
viewing
the file contents.
To specify this with contour
use the ens[+1]temp variable
specification with the parameter in the brackets being the purturbation
number (i.e. +2 or -3).
contour -if=grib_gfs_ens -cu=la -gn=+6:850:ens[+2]temp
The variable number is encoded. If you run griblook at message level 4, you
will see the internal parameters.
0: 6 hour GFSE valid 18Z WED 25 JAN 06-250 mb Ens[+1]
Temperature (K)
Model: GFSE Time:
6hr Level:
250mb
Variable: Units: K
Model: 80 Ltype: 100 Level: 250 Var: 19331011
Hour: 6 Grid: 39
Proj:
latlon:::::,45.000,-165.000,73,73,1.2500,1.2500
The number 19331011 is a combination of "193" specifying ensemble data,
"3" which is the ensemble type (positive perturbation), "1" the run
number (of product ID) and "011" which is the old variable number (11 =
Temperature).
- Probability grids offer a different problem. There are
three types of probability grids: probability the value is greater than
a number, probability the value is less than a number and probability
the value is between two numbers.
Reading from grid file:../GRIB/sref.t09z.pgrb212.prob
0: Eta analysis for 0900Z 12 DEC 05-Surface Ens prob (%) CAPE
above 500.00 J/kg
1: Eta analysis for 0900Z 12 DEC 05-Surface Ens prob (%) CAPE
above 1000.00 J/kg
2: Eta analysis for 0900Z 12 DEC 05-Surface Ens prob (%) CAPE
above 2000.00 J/kg
3: Eta analysis for 0900Z 12 DEC 05-Surface Ens prob (%) CAPE
above 3000.00 J/kg
4: Eta analysis for 0900Z 12 DEC 05-Surface Ens prob (%) CAPE
above 4000.00 J/kg
5: Eta analysis for 0900Z 12 DEC 05-0-3000 m AG Ens prob (%)
Helicity above 100.00 m^2/s^2
6: Eta analysis for 0900Z 12 DEC 05-0-3000 m AG Ens prob (%)
Helicity above 150.00 m^2/s^2
7: Eta analysis for 0900Z 12 DEC 05-0-3000 m AG Ens prob (%)
Helicity above 200.00 m^2/s^2
8: Eta analysis for 0900Z 12 DEC 05-0-3000 m AG Ens prob (%)
Helicity above 250.00 m^2/s^2
9: Eta analysis for 0900Z 12 DEC 05-0-3000 m AG Ens prob (%)
Helicity above 300.00 m^2/s^2
The number is encoded into a 3 digit number. The first digit is
the exponent which runs from 0-5 for numbers greater than 1 (0=1, 1-10,
2=100, etc) and 6-9 for numbers between 0 and 1 (9 = .1, 8 = .01,
etc). The next two numbers are the first two significant
digits. For example, 500 is 250, 3000 is 330, 2.54 is 025.
The lead number is 191 for probability, the next 3 digits are the
variable number, the next digit is the probability type (1 is below a
number, 2 is above a number, 3 is between numbers where only the first
number gets used) and the last 3 digits is the encoded number. If
the number is negative, 5 is added to the probability type. For
example: 1911566240 is ensemble probability of convective inhibition
(var=156) below (type=6) -400 (encoded as 240 and 5 is added to
type. Another example is 1910612950, which is ensemble
probability of precipitation (var=061) above (type=2) .25 (encoded as
950).
To access these with contour,
use a similar variable specification:
contour ../GRIB/sref.t09z.pgrb212.prob
"-gn=+3hr-3acc:sfc:ensprob[>1.27]prec"
contour ../GRIB/sref.t09z.pgrb212.prob
"-gn=+6hr:850:ensprob[<273]temp"
Make sure you use the quotes to prevent redirection.
NOTE: In this release,
there is no support for the variable specification in grbcalc.
But you can specify the encoded variable number such as
"19331011". Also, you need to turn off header file processing (-pp=nohdr).
grbcalc -mo=gfs_ens -cu=la -ft=6 -le=250 -va=19331011
-pp=nohdr
USPLN lightning data decoding
The "
uspln" format has been
added to the
light
program. Specify "
-inp=uspln".
Additional functionality:
- Added grdfmt option to parameters resource for specifying the
output format for ASCII grid files. Use "-pa=grdfmt=%.1f". For graphics
programs, this is under "-pp".
- Added support for displaying PNG files with an alpha channel.
Bug Fixes:
- Fixed several decoding problems in sacvt. This includes newer
METAR tags used internationally. This includes better support for
missing visibility, cloud and wind data.
- Fixed some decoding problems in hurricane.
- Fixed a problem in ingest that prevented it from saving data in
raw format. The WMO header was being saved in the WXP format with
the asterisks. The WMO header was being cleaned so trailing
CR/CR/LF was removed and not saved to file.
- Fixed the interface specification in ingest that caused an invalid
argument on the multicast setup. This should allow ingest to directly ingest NOAAPORT
data directly from the multicast stream.
- Fixed X color mask for extracting images from non-24 bit
displays.
New in version 5.38a (August 2005)
Mapplt additions
Added the xy: plotting of data from the command line. You can
specify "
xy:3:-50:Text" to the
command line to plot text in a specific location in projection
coordinate (not lat lon).
GeoTIFF input into xsat
xsat can now read and display some GeoTIFF images. Specify "tiff"
for the input parameter.
Additional functionality:
- Added hwind variable to
plot winds greater than 25 knots in fouswx
and sfcwx.
- Added WARP mosaic plotting to rad.
- Added "slabel" to rad to
plot a simpler watch box labels such as "TORNADO WATCH to 8 PM" and
"SEV TSTORM WATCH 9 AM".
Bug Fixes:
- Fixed date processing in hurricane.
Fixed
some
glitches for dissipating storms. Fixed processing of some
eastern Pacific storms as western Pacific storms.
- Fixed some processing errors in ingest
that resulted in core dumps
- Fixed a plot scaling issue in mapplt.
- Fixed a vector plotting bug in vector,
grbcalc.
New in version 5.37a (March 2005)
Ingest additions
Added parameter "pan_id" so that the PAN ID number, before only stated
in the ingest.bul file could be specified on the command line.
Also,
fixed bug in PAN transmission that would cause PAN message to drop if a
client somehow disconnected.
Bug Fixes:
Removed "SCALE: x y" debug message from GRIB decoder.
New in version 5.37 (February 2005)
GRIB2 additions
Added support for DRS templates 1,2 and 3 to handle NDFD grids.
Added support for DRS template 40 (same as 40000 for Jpeg2000
compression). Changed the grid type specification for lat-lon
grids to be more representative of the actual values. Added
support for "max" and "min" time ranges in GRIB2.
Bug Fixes:
- Fixed bug in resetting file pointer location in GRIB1. This
also fixes a problem with reading in GRIB size in GRIB2.
- Fixed bug in reading some GRIB2 files (primarily NDFD) that would
cause a core dump when reading past the first grid in a multigrid file.
- Fixed GDS lat-lon domain problems for GRIB2. This allows
the use of CONDUIT grids.
- Fixed bug in GRIB2 level determination.
- Fixed bug in header file date/time initialization for GRIB2
header files.
- Fixed header file parameter determination in ingest.
New in version 5.36 (February 2005)
Updated ingest for DVB
The ingest program has been updated to accept packets directly from a
DVB receiver. Since this is not buffered, packet loss can occur
but ingest is possible.
ingest
msock:port=1201:host=224.0.0.1:inter:10.0.0.2
This initializes a multicast socket connection on port 1201, reading
packets from host 224.0.0.1 off NIC interface 10.0.02. The last
parameter is used if the multicast packets are coming from a second NIC
card (interface is that card's IP address).
Updated ingest for GRIB2
The ingest program now can create header files for a subset of the
GRIB2 products coming across NOAAPORT. The program maps data from
the product header to old GRIB1 parameter sets. This is done with
the aid of 3 files (
new versions of
these files must be downloaded):
- grib_var.lup - this file
maps GRIB 0 and 1 parameters to strings. For example, parameter
17 maps to "dewp". This file also specifies the units and allows
for parameter sets not from NWS.
- grib2_var.lup - this file
maps GRIB2 parameters to strings. This is similar to the previous
file but also uses the discipline and category parameters as
well. For example, discipline 0, category 0, parameter 6 is
"dewp".
- variable.lup - this maps
the parameter string back to a number. For example, "dewp" maps
to 17. This will be the parameter number in the header file.
The determination of a grid number is done through a formula that
includes the projection, start lat, lon, horizontal number of
gridpoints and horizontal grid size. This replaces the grid
number that was imbedded in the GRIB 1 products. For example,
301226112 is the representation of the 218 grid. 30 is the
projection (Lambert), 1 is the starting latitude (~10N), 22 is the
starting longitude (~220E or 140W), 61 is the number of gridpoints in X
(~610), 12 is the grid size in km.
Limited support for GRIB version 2
Support has been added for the GRIB version 2 products that are on
NOAAPORT as of the start of 2005. GRIB 2 is a complicated code
which
will require decoding on a case by case basis. The parameter
determination is done through the "
grib2_var.lup"
and
"
variable.lup" files.
griblook will produce header files although there are still some bugs
in the output.
Hurricane support for extended forecasts
Support is available in the hurricane program to decode forecasts out
to 120 hours.
Support for NAM MOS data
The MOS decoders can now handle MOS data from the NAM (formerly ETA)
model. The model resource is "NAM" and "NAM_UA".
Bug Fixes:
Fixed a bug in the RCM decoder that faulted on reading in of the /SC
parameter with no number attached.
Beta 6.0 programs
NOW the the C++ WXP library is nearing maturity, its time to start
making some of the programs available.
- nids2image - a program
to take NIDS data and convert it into a WXP image file. This is a
simple radar mosaic program with support for winter mosaics. The
winter mosaics are done through applying a grid file as a mask (0=rain,
1=mixed, 2=snow)
- redbook - a program to
display redbook graphics images
- upxplot and upxcont - programs to display upper
air cross sections using rawinsonde data
The 6.0 library will have an API available along with a Perl
module.
New in version 5.32 (March 2004)
Added Level II Nexrad data display
The Level II data can be accessed using the "-inp=lev2" option.
To select which scan and parameter in the file, use the "
variable" resource:
- -va=ref1 is the first scan reflectivity
- -va=vel4 is the fourth scan velocity
- -va=spect8 is the eighth scan spectrum width
The Level II decoder will handle uncompressed Level II archive data and
the new bzip2 compressed files sent through the LDM. The
rad program will automatically sense which file type.
Added support for NCEP ensemble data (GRIB v1)
The GRIB decoder now reads the extended PDB to create a label for the
ensemble grids.
0: Eta analysis for 0900Z 23 FEB 04-Surface Ens prob (%) CAPE above 500.00 J/kg
1: Eta analysis for 0900Z 23 FEB 04-Surface Ens prob (%) CAPE above 1000.00 J/kg
2: Eta analysis for 0900Z 23 FEB 04-Surface Ens prob (%) CAPE above 2000.00 J/kg
3: Eta analysis for 0900Z 23 FEB 04-Surface Ens prob (%) CAPE above 3000.00 J/kg
4: Eta analysis for 0900Z 23 FEB 04-Surface Ens prob (%) CAPE above 4000.00 J/kg
5: Eta analysis for 0900Z 23 FEB 04-0-3000 m AG Ens prob (%) Helicity above 100.00 m^2/s^2
6: Eta analysis for 0900Z 23 FEB 04-0-3000 m AG Ens prob (%) Helicity above 150.00 m^2/s^2
and
0: Eta analysis for 0900Z 23 FEB 04-Surface Ens mean CAPE (J/kg)
1: Eta analysis for 0900Z 23 FEB 04-0-3000 m AG Ens mean Helicity (m^2/s^2)
2: Eta analysis for 0900Z 23 FEB 04-0-30 mb AG Ens mean Parcel lifted index (dK)
3: Eta analysis for 0900Z 23 FEB 04-Surface Ens mean Convective inhibition (J/kg)
4: Eta analysis for 0900Z 23 FEB 04-Sea level Ens mean Pressure (Pa)
Additional functionality:
- Added compressed GINI file resampling to awipsat_sample.
- Added display of GIF images from NOAAPORT with leading WMO header.
- Added level type 117 (potential vorticity), 206, 207, 248, 249,
251 and 252 to GRIB decoding. Added variables 191 an 192.
- Added Lambert Azimuthal projection "-pd=lambaz,40,-90,2.3"
Bug Fixes:
- Fixed a bug in contour, vector and grbcalc that confused the -in
and -inp command line resources.
- Fixed bug in MOS decoder for wind speed on GFSX/MRF data.
- Corrected problem with NIL reports being added into the sacvt
internal database. This resulted in some METAR reports not being
saved. This only occurs when the first observation for a station
for a particular hour is listed as NIL.
New in version 5.31 (December 2003)
Added GFS MOS support
The AVN and MRF MOS data have been replaced with GFS equivalents.
This changes how the MOS data is extraced from the file.
This corrects that problem. To access the old AVN MOS, use
"-mo=gfs". To access to old MRF MOS, use "-mo=gfsx". The 24
hour snowfall values are also available under the variable "snwfl24".
Pixel value cutoff support for XSAT
This allows image files for winter mosaics to be displayed using pixel
averaging. For example, the winter mosaic has cutoff values at 15
and 25. Values below 15 are for rain. Values below 25 are
for mixed and values at or above 25 are for snow. If this is not
specified, a gradient will appear. Say you are going from 20 Dbz
rain to 20 Dbz mixed. The values will be averaged between 5 and
19 giving all the colors inbetween. The cutoff eliminates this by
suspending averaging around cutoff values.
Also, there is the concept of a cutoff base value. This is the 0
value for the mosaic. For most mosaics, this is the 0 pixel
value. But for some, 0 is used for no data and 0 Dbz is actually
1. Specifying the cutoff base allows pixel averaging for mixed
and snow to act like rain where the edges gradually diminish to 0.
To use this, specify "-pp=cutoff:1:15:25".
GRIB support for raw files
To handle raw GRIB files like those from the NOGAPS model, a grib
option has been added to contour, griblook, grbcalc. This forces the
interpretation of the file to be a GRIB file. The NOGAPS GRIB
files can be confused as WXP grid files by these programs. To
implement this, add "-inp=grib" to the command line.
Added option for loop title
In newer versions of the gnome window manager, there is a memory leak
surrounding the title of a window. The loop mode for WXP graphics
program will change the window title reflecting which frame it is
showing. This invokes the memory leak and can with time exhaust
the system of memory. To display the loop frame titling, use
"-pp=nolooptitle".
Additional functionality:
- Added support for Unisys mosaic product 180.
- Added SAPQ to list of WMO headers sacvt will decode.
Bug Fixes:
- Fixed a bug in the grid reader where file type might be unset.
- Fixed a bug in the MOS decoder for setting qpf values.
- Fixed a bug in displaying clutter radius
- Fixed a bug that prevented proper image redraws in "refresh"
mode. If a radar or satellite loop is in refresh mode, it won't
properly redraw after a certain amount of time. This is because
the program did not keep track of the latest file date and once the
aged out of available data, it would freeze on redraw.
New in version 5.30 (July 2003)
Support for compressed NOAAPORT satellite imagery
Xsat has been updated to support the new compressed satellite imagery
on NOAAPORT. NOAAPORT is using a simple zlib compression scheme
similar to that used in the NIDS data. Since binary data is
difficult to inquire format from, xsat has added a awipz data type
specification:
xsat -inp=awipz
This can be added to the wxp.cfg file as a default type "
xsat.input:
awipz". Xsat will decompress the images on the fly.
Added transparency to GIF output
The WXP graphics programs can create GIF images with the transparent
color index set. This is done by specifying "
-pp=gif_trans".
This
will
set the transparent color to whatever you set the
background color to be in the image.
Added track plot to NIDS output
The
rad program can display
estimated tracks for storms using the storm attribute table in the
composite reflectivity data. This is an arrow with hash marks
representing estimated location of storm at 30, 60, 90 and 120 minutes.
Select "
-va=track" on the
rad program.
Additional Functionality:
- Added "corners2proj" option to domtran.
This
will
print out the projection coordinates of the 4 corners
of the domain.
- The watch plotting now uses the "sao.cty" file for ID lookup.
It searches for IDs removing the leading "K" from the identifier.
Bug Fixes:
- Fixed a bug in the front plotting that misinterprets fronts at
high latitudes and can cause a line across the display.
- Fixed a bug in the divergence computation in grdmath/grbcalc.
- Fixed date output in fo_parse so that it is one string (
12/06Z).
If
hour
was less than 10, it was two strings (12/ 6Z with
a space).
- Fixed problem in shefcvt where
parsing
continued
past a "$$" designator.
New in version 5.29 (May 2003)
NOTE: Linux version compiled on RedHat 7.0
As of this version, the Linux version will be compiled using the 2.1
glibc libraries available with RedHat 7.0. In previous versions,
WXP was compiled on RedHat 6.0.
Support for cygwin
There are new binaries for cygwin.
cygwin is a Unix emulator for Window
and uses gcc and XFree86 for its interface. cygwin does resolve
many of the Windows issues with WXP like overlays with wxploop,
transparent dithers, background processing, etc. It in essence
behaves just like the Unix version. There are some outstanding
issues.
- Interactive drag zoom doesn't always work. If you drag fast
it seems to work, otherwise not.
- wxploop doesn't die in background mode:
wxploop -wn=1 -ba
loopset -wn=1 open
loopset -wn=1 cr pix
loopset -wn=1 kill
The kill doesn't close the window. But strangely by
just issuing another loopset command (any command) will cause the
window
to close.
MacOSX version using Apple X11 distribution
The Mac version of WXP is now compiled against the Apple X11 (even
though beta) distribution. This may not work with the Darwin X11
distribution.
New model source in header files
In order to separate the model definitions and differences in parameter
definitions, the
ingest
program
will generate header files with a source designator. For example,
ECMWF model data will have "
98:203"
as
the
grid type. This will also appear in the PAN
messages.
griblook will
also generate header files with this designator. To disable this,
use the "
-pa=nosrc" parameter.
XML decoder output
sacvt,
smcvt and
uacvt
both output XML files.
Use "
-ou=xml" to specify
XML output. The append option won't work at this time. The DTDs
are available at
http://wxp.unisys.com/wxp/xml.
The XML files can't be read by WXP but that should be available
in
the next version.
Additional Functionality:
- Added "corners2earth" option to domtran.
This
will
print out the lat/lon coordinates of the 4 corners of
the domain.
- Added new grid debug output for grbcalc.
This
will
help in determining what grids are being used and which have
valid data.
- Added additional grid parameters from ECMWF. This is for
those who use direct ECMWF output, not the data available from NWS.
- Added WND plotting to MOS programs for MRF data.
- Added tephigram sensing to region definition.
- Added new GOES 12 parameters (13um labels).
- Added "-pa=dst" parameter
to suncalc to force DST time. Previously, it was only possible
through the DST environment variable.
Bug Fixes:
- Fixed lat/lon decode problem in the front display. sfcwx had troubles with latitudes
less than 10.
- Increased the fore_time string for grbcalc so that long time sequences
for loops can be entered. Now, up the string can be up to 199
characters.
- Fixed malloc error in contour.
- Fixed projection problem with GRIB data. This prevented
southern hemisphere grids from being displayed properly.
- Fixed bug in socket processing in loopset/wxploop. This
prevented long output like help from being printed.
- Fixed bug in xsat that prevented proper zooming on McIDAS area
files.
- Fixed bug in Solaris scour program.
- Fixed bug in sacvt that
interpreted sub-zero dewpoint as visibility (11/M02).
- Changed smcvt default
time range from +-90 minutes to +-45 minutes. Some stations in
Europe (and elsewhere) are reporting hourly.
- Fixed a bug in uacalplt that caused the sounding line to have an
erroneous starting pressure. This occurred if the LCL was within
25 mb of the starting position.
- Changed grdmath to put
multiple values on separate lines.
New in version 5.28 (Mar 2003)
Added Eta MOS plotting
Decoding and plotting of Eta MOS was added to "fouswx", "focalc",
"fo_parse" and "statlog". The model specification is "-mo=eta".
Updated AVN and MRF MOS plotting
The MRF MOS (-mo=mrf) was updated to plotting mean temp and temperature
deviation. The variables are "nmaxt", "dmaxt", "nmint" and
"dmint". Additional AVN parameters were added. POP12 can be
accessed for intermediate hours.
MOS plotting uses 4 letter site names
The default is now to use 4 letter site names for MOS plotting.
It is required to update the "mos.cty" database to the 4 letter
IDs before using the new version of "fouswx" and "focalc". The
new
file is available at:
http://wxp.unisys.com/etc/mos.cty.
Additional Functionality:
- WXP uses "wxp.cfg" for the resource file in addition to
".wxpdef". "wxp.cfg" is checked first, then ".wxpdef".
- Added decoding of RVRNO in METAR reports.
- Made new wind chill formula default for "wchill" program.
It is still "wchill2" for variable specifications in other
programs.
- Xsat now checks to make sure WXP image files are complete before
displaying them. It will wait up to 10 seconds for the file to
completely write to disk before displaying it. This functionality
will be added to other files in the next few versions.
- For raw file plotting, all underscores are changed to spaces.
- Added "no_pixave" to plot parameters for xsat. This was
available in earlier versions but removed for some reason. With
this set, xsat does not interpolate for pixel values on remap and
instead takes value of nearest image value.'
- Cleaned up loop delay, especially in refresh mode.
Bug Fixes:
- Correct bug in polar stereographic projection that caused the
true latitude for southern hemisphere plots to be +60 rather than -60.
This meant that scaling for southern hemishpere plots were wrong and it
appeared that you were still looking at the northern hemisphere.
- Fixed memory leak in zlib decompression for rad and xsat.
- Fixed bug in Eta and sigma level decoding for GRIB data.
This allows the use of 1.0eta and 0.78sig for level designations.
- Corrected problem in valid date where year was "3" instead of
"03".
New in version 5.27 (Jan 2003)
Added new compressed image file format
Xsat can now create image files where the image is zlib compressed.
It can also read them. This functionality will be added to
the radar mosaic program as well. To save the output as
compressed, specify "-ou=imgz".
Added PNG image support to xsat
Xsat can now read GINI formatted files that have imbedded data encoded
in PNG format. This is for the radar mosaics from Gempak.
Added rotated Tephigram
Some use a Tephigram where the theta and temperature lines are
horizontal and vertical. This is essentially a Tephigram rotated
45 degrees. The plot type is "-pl=rteph".
Additional Functionality:
- Added netCDF support to Windows. The Windows version of WXP can
now read and write netCDF files.
- Added new icons and cursors to Windows. The icons and
cursors used in the Windows version now resembles that used in the Unix
version.
- Added geometry to Metafile output. There was no way to specify a
geometry or size of plot in the metafile output. This now
supports
the same geometry as the display option.
- Added new GRIB parameters to grbcalc. Grbcalc can now plot
Eta levels. It did do sigma levels but not Eta.
- Added support for NIDS product 67 (Composite Reflectivity APR
removed).
- Added precip type contouring to sfcccalc. Now you can
contour precip type (Rain=1, Freezing=2, Snow=3).
Bug Fixes
- Fixed cursor problem in wxploop
- Fixed a problem in griblook that caused problems with creating
header files. On Solaris, the read/write access for append (a+
mode) doesn't work for appending large amounts of data (limited to
1KB). I now read the file, close it and open the same file for
append to get around that limitation.
- Fixed a problem in ingest where directories and files could be
created with garbage characters. This was a problem when the
output file was from the WMO header or second line. Now only
printable characters can exist in file names.
- Fixed a problem in rad in displaying Kavouras MNG files.
The MNG file always seems to have a "truncate to end of line" code
whether it needs it or not. I assumed that if the line is fully
specified, that code would not be needed. This resulted in the
next line being skip. The truncate resulted in a blank line and
resulting echoes were displaced too far south.
- Fixed a problem in wxploop with sockets not reconnecting after a
disconnect. This is only a problem with the Windows version of
wxploop where the error codes are different than in Unix.
- Fixed another problem in rad involving NIDS zlib decompression.
- Fixed a problem in sacvt that caused a core dump when writing
long remarks sections to a netCDF file.
Added in version 5.26 (Sept 2002)
Tephigram added to uacalplt
To use tephigram, specify "
-pl=teph". There are some
functions not yet available including specifying a domain for the
tephigram and zooming.
Full PNG support
WXP can now read and write PNG files. Before it could only output
PNG files. PNG support is now part of Windows programs.
There is a fix in the PNG support for Solaris.
Added "lower" to prfplt
This allows prfplt to plot lower atmosphere (below 8000m) with data
plotted at 250m increments (data resolution) rather than 500m.
Specify "
-pp=lower" with prfplt.
Bug Fixes
- Mollweide AREA files fixed. These images were offset due to
improper determination of header size.
- Mollweide domain output for grbcalc fixed. Edge wrapping did not
work so grid boxes that wrapped from one side of the plot to the other
would cause strange results.
- Problem with grbsnd and NCEP Avn grids. Grbsnd improperly
used grids above 100mb overwriting surface information.
- Fixed bugs in specification of postscript page size. The
page size parameter "sz=wxh" works. It used to core dump.
Width and height are now the full page size (11x8.5). The
postscript code reduces the size by a half inch in each direction
automatically.
- Fixed scour for windows.
- Fixed bug in NIDS decompression.
- Eliminated need for UCB library in Solaris and statically linked
PNG/Zlib library.
- Added gettimeofday to MacOSX version to allow fractional second
loop delay.
Added in recent versions (5.23-5.25)
Socket support added to wxploop/loopset
For operating systems that don't support SysV message queues, wxploop
and loopset can communicate via TCP sockets. To enable this, use "
-pa=qtype=sock"
on
both
wxploop and loopset. This is the default on MacOSX and
Windows.
Full Mac OS-X support
WXP now runs on OS-X using an X server package like XDarwin. The
wxploop and loopset programs work using socket messaging rather than
message queues.
Added loopset to Windows (win32) programs
Wxploop is now interactive using socket messaging. This will
allow windows users to take advantage of more of wxploop's features.
Added standard output to Windows graphics programs
NOTE: Some Windows scripts may not work!!
Prior to 5.025, Windows graphics program would not display output to
stdout, thus requiring all the parameters to the program to be
specified
via the command line. There was no text output for calculations
such as with uacalplt. Additionally, the programs were
forced into batch mode. Now, the menus will appear and text
output
is available. This means some Windows scripts will fail since
they
assume the program is in batch mode and left out some parameters on the
command line. Before, you could do:
sfcwx -re=at -va=all
But now, this will leave prompts for filename and device and
your scripts won't work. You will have to add the extra
parameters to the command line:
sfcwx -cu=la -re=at -va=all -de=d
Added support for TANC projected AREA files
This enables xsat to read AREA files from the ADDE server that have
been converted from NOAAPORT GINI format.
Added transparent images to Windows
This enables the use of overlay images as maps on Windows.
mapplt -re=at -de=d -pp=gif:./at_map.gif
rad -inp=rcm -cu=la -re=at -mf=+im:./at_map.gif -va=all -de=d
Reenabled WXP ASCII metafile output
Output to ASCII metafile is the default rather than CGM. I had
not confirmed the CGM output worked so its now only available with "
-de=m,file.meta,cgm".
sfcwx -cu=la -re=at -va=all -de=m,../meta/test.meta
mapplt ../meta/test.meta -re=at -dr=data -de=d
Added true latitude to Stereographic projection
You can specify the true latitude for a PS projection as:
-pd=ps:90:-95:60,46,-92,1.4with
the
third
parameter (
60) being the true latitude.
Added metafile plotting to wxploop
You can specify the command "mf filename.meta" within loopset to plot a
metafile with wxploop. This is handy for Windows systems that
don't have wxploop overlay capabilities.
Bugs Fixed
- sfcwx (fronts) - Plotting of troughs in the tropics cause
spurious lines. Program didn't account for single digit latitude.
- NIDS - Fixed bug that prevented rad from recognizing
compressed NIDS files.
- prfplt - Fixed several bugs that caused prfplt to
core dump on bad data and not plot level data properly.
- grbsnd - Fixed bugs that prevented it from reading files
from NWS/NCEP servers.
- sa_parse - Fixed bugs that prevented it from outputting
"M" for missing data in some parameters.
Other Additions since WXP 5.0