Release Notes

Changes from Jtech paper version:

New low level routine, subspace1, added.

X Windows version 11 support added for pgraf.

Version 1 release -- 14 November 1988

Radsource modified to correct a conceptual error in its design. Radzfix deleted, since its only reason for existence was to feed the erroneous radsource. -- 18 November 1988

Cdftrans bugs fixed: If a malloc fails, cdftrans now dies gracefully. If an ascii Candis file contains NaN's, cdftrans still fails, but at least says why. -- 21 November 1988

I/O calls in utils repackaged in one file and rearranged slightly internally. This should have no effect on anything visible to the user. -- 27 November 1988

An improved nopipes option was developed that puts desired files on the command line. -- 27 November 1988

Added new I/O routines gislice, gaslice, pislice, paslice, getilist for accessing ascii and int type slices. -- 30 November 1988

Replaced cdftrans with a new version that uses the above routines for accessing ascii and int slices. -- 30 November 1988

An experimental version of Candis layered on top of Unidata's netCDF is now included. This is in the subdirectory netcandis, and is currently undocumented, slow, and subject to further change -- so don't use it for now. -- 6 December 1988

Version 1.1 release -- 13 December 1988

Fixed a number of bugs in nwspv; potential vorticity is now computed up to the edge of the domain -- 26 January 1989

Added a new pgraf driver for Bellcore's mgr window system -- 6 February 1989

Adjusted way pgx calculates text size and position to make graphs look better with a variety of fonts -- 7 March 1989

Moved the makefile for pgraf metacode readers to pgraf/lolevels. This simplifies generation of these programs. -- 26 March 1989

Made uniget create dummy index fields in the Candis file if corresponding index fields don't exist in the netCDF file. -- 2 April 1989

Made main directory makefile for cleaning subdirectories, making libraries, and generating a tarred version of Candis in the parent directory, called "candis.tar". Making Candis programs is still done one subdirectory at a time. -- 2 April 1989

Fixed some bugs in uniget. -- 3 April 1989

Version 1.2 release -- 3 April 1989

Added a new pgraf deriver for GKS. Uses xgks locally, but should work on any version of GKS with appropriate changes in the makefile. -- 7 April 89

Fixed a bug in nwsua that occurred when a sounding and the applicable date stamp spanned a month boundary -- the incorrect month was recorded in the output file. -- 8 April 1989

Added an e-mail address for bug reports. -- 8 April 1989

Modified pgmgr so that vertical dimension of bitmap is a multiple of 8. This means that the mgr window can be dumped to an HP laser printer using the mgr utilities window_print, rotate, and hp_raster. -- 8 April 1989.

The pgraf X Windows hard copy program xwljd is no longer supported since the X Windows utilities xwd and xpr do a much better job of dumping a window to a printer. Also, pgmpix has been modified to produce bitmaps in Bellcore's mgr format. -- 12 April 1989.

Fixed radcedric so that it can read Cedric files not written to disk using the rtape utility. The byte swapping option is now made explicitly available to the user as well. -- 23 April 1989.

Fixed a bug in pgmgr that made it hang sometimes. -- 24 April 1989.

Fixed a bug in cdfmerge -- newline sometimes not added to comment line. -- 1 May 1989.

Added conditional code to zin (in io) to make it work with System V. Alarm function also removed from zin, as it didn't work properly anyway. -- 2 May 1989.

Makefiles revised slightly so that they will work better on System V. -- 3 May 1989.

Version 1.3 release -- 3 May 1989

Fixed a bug common to pgx and pgmgr which caused problems on dotted and dashed lines on some systems. -- 5 May 1989.

Version 1.3.1 release -- the above bug is rather serious -- 5 May 1989

The "nopipes" and "netcandis" options are no longer supported. C doesn't work very well on VMS, so I have decided to eliminate "nopipes", which only has application to VMS. "Netcandis" was eliminated because layering Candis on top of netcdf was very inefficient. Access to the netcdf world is now via the translators in the unidata directory. -- 10 May 1989.

Added AT&T's "getopt" subroutine to the cdf library (libcdf.a) so that UNIX systems that don't have this routine can still implement Candis. My intention is to make getopt the standard way of evaluating options in Candis filters. No filters use it yet, but new ones might, and old ones might be converted. -- 10 May 1989.

Major change in documentation! A new tutorial exists in candis/doc, and all manual pages have been put in troff -man format and arranged in a man directory structure. -- 19 May 1989.

Cdfderiv now does second order derivatives at edges of of good data by extrapolation from the interior. It will only do first order derivatives if there is no other choice. -- 21 May 1989.

Bug fixed in nws/jtime.c. The conversion from Julian date to Gregorian date wasn't working correctly. This affected the programs cdfj and nwsts. -- 23 May 1989 (Julian day 2447670).

All documentation for the system, including pgraf documentation, is now contained in candis/doc. -- 23 May 1989.

Cdfmath has been greatly improved. The main change is that new fields are only as big as necessary. -- 25 May 1989.

A new program called cdfinteg has been added. This integrates a selected variable over a specified dimension. -- 25 May 1989.

A bug in pgmpix was fixed. When multiple plots were made into bitmaps in one command, they were named bitmap.0, bitmap.1, etc. They were then typically printed in bitmap.* order, which puts bitmap.10 before bitmap.2. Thus, if more than 10 plots were done at once, they would be printed out of order. This was fixed by naming the bitmaps bitmap.100, bitmap.101, etc. The problem is still there, but only after about 900 plots! -- 30 May 1989.

Nwsuafix will now accept optional arguments to change the pressure grid from the default 1000 mb, 950 mb, ... , 100 mb. -- 19 July 1989.

Version 1.4 release -- 19 July 1989

The Candis format has been modified to allow image data to be stored in Candis files. Fields with image data have "p" in place of the precision "c", "s", or "l". Pixels are tightly packed into field elements. Conversions to and from int and ascii formats are done in a sensible manner. -- 21 July 1989.

Zin now sends a ^Q to com line every 30 s in BSD version -- this feature now works, and serves to wake up buffer box if it inadvertently gets set in an XOF state. It should be easy to extend this feature to System V. -- 27 July 1989.

Cdfwindow is modified to allow expansion of domains. Regular intervals in the index fields are assumed. For unexpanded domains, it works as before. -- 2 August 1989.

Pgmpix now creates a slightly smaller bitmap so that landscape as well as portrait mode can be accomodated on a Laserjet printer. -- 2 August 1989.

Fixed a problem in pgmpix that made it have a file open for every page printed. -- 10 August 1989.

A new filter, cdfbadcut, is included. This filter cuts out a subspace along the boundary of good data in a test field. -- 29 August 1989.

Improved cdflagr so that it integrates forward and backward in time in the same call. There is a slightly different command line sequence. -- 30 August 1989.

Fixed a minor bug of text placement with pgmgr. -- 3 September 1989.

The 2 August 89 modification in cdfwindow has a bug. The old version is re-installed at this point. -- 4 October 1989.

Made pgmpix so it complains and dies when it can't find the font it needs, rather than core dumping. -- 5 October 1989.

Extend alarm feature in zin to System V and make it optional. -- 6 October 1989.

Sparc architecture broke pgmpix, as pixrects pad to longs rather than shorts. Fixed by changing bitmap dimensions to even numbers of longs. -- 6 October 1989.

Pixrect version of mgr makes output bitmaps 10 smaller in each dimension than the specified size of the window. The production version for Sun 3's did weird things to the output dimensions. Fixed pgmgr so that it is compatible with the pixrect version rather than the production version. This way it will work on both Sun 3's and Sun 4's as long as the pixrect version of mgr is used. -- 6 October 1989.

Bug fixed in 2 Aug 89 modification of cdfwindow and new version reinstalled. -- 8 October 1989.

Fixed pgsunm so that it doesn't core dump if pixrect can't find the desired font. -- 12 October 1989.

Made pgmgr so that it cleans up nicely after interrupt. -- 27 October 1989.

An option was added to cdfuaplot so that parcel pseudoadiabats could be plotted for a specified value of the saturated equivalent potential temperature. -- 3 November 1989.

Modified radvert so that the assumed cloud top terminal velocity could be changed from its default value. -- 12 November 1989.

Further modified radvert so that the assumed cloud top terminal velocity is a function of the cloud top divergence. -- 13 November 1989.

Fixed incorrect setting of index parameter "time0" by cdflagr. -- 20 November 1989.

Fixed incorrect ordering of index fields in cdflagr. -- 24 November 1989.

Made pgx so it writes both set and clear values of pixels on text write. -- 11 December 1989.

Version 1.5 release -- 11 December 1989

Fixed a bug associated with the "pow" function in cdfmath, which caused a false syntax error when bad data occurred. -- 15 December 1989.

Fixed a bug in cdfj that didn't show up on Sun 3. -- 15 December 1989.

Converted some Candis files in nws to ascii format so that when Candis is ftp'ed in ascii mode, no errors occur. -- 15 December 1989.

Changed zin so that XON sent just before read and XOFF sent just after. Alarm feature eliminated, as this change makes alarm redundant. Also, made it so that a zero length read doesn't cause it to quit. -- 5 January 1990.

Fixed a bug in pgx that gave incorrect character spacing after a resize or secondary exposure event. -- 5 January 1990.

Fixed a bug in auxio.c routines which caused a core dump when translating a pixel image in ascii format to some other format. Also changed ascii pixel format from hexidecimal to decimal form. Finally, added consistency checking of smul and sadd for pixel fields to addfld in Candis library. -- 9 January 1990.

Version 1.6 release -- 9 January 1990

Tuned the block read and timeout constants in zin to make it work better with a Sparcstation. -- 25 January 1990.

Modified pgmgr so that pushing the middle mouse button creates a popup menu that selects the next plot or quits. -- 30 January 1990.

Added fzin and fzout (in io). This pair operates like zin in reading input from a serial port, but the buffering is better. -- 15 March 1990.

Added cdfhisto, which makes histograms of one to four dimensions of arbitrary fields. -- 5 April 1990.

Made cdfuaplot so that it seeks the pressure fields in the static slice if it can't find them in the variable slice. -- 26 April 1990.

Added rafdap, which converts data in NCAR/RAF's DAP format to Candis format. -- 1 June 1990.

Changed pgx so that it uses dashed lines produced by X11 server. This makes a significant improvement in quality. -- 5 June 1990.

An option has been added to cdftrans so that translations out of int format result in short and long integers having their bytes swapped before translation. The calling sequence for gislice in the Candis library was slightly changed to accomodate this. -- 8 June 1990.

An option was added to rtape to suppress the generation of record headers on the output. -- 12 June 1990.

An option was added to cdfua so that wind components in addition to wind speed and direction would be accepted as well. -- 12 June 1990.

Fix core dump problem with llpzap. -- 5 July 1990.

Add the functions mod and atan2 to cdfmath. -- 9 August 1990.

Fix rafdap so that it doesn't die when a field is specified twice in the DAP file. -- 9 August 1990.

Fixed a problem with cdfplot -- station data wouldn't plot if one or both axes decreased in value. -- 13 August 1990.

Cdfwindow was not working correctly on cases with irregular spacing of values in index fields. Problem is (hopefully) fixed. -- 16 August 1990.

Fixed a problem with cdfisocut that made it coredump on occasion. The interpolation was also being done slightly incorrectly. -- 17 August 1990.

Fixed a bug in cdfmerge found by IBM RS-6000 compiler. -- 28 August 1990.

An explicit exit(0) was added to the normal exit spot of all programs so that a proper exit code is returned to the shell. (Unlike 68000's, Sparcstations don't make 0 the default exit code.) -- 5 October 1990.

A new program, cdfpix, converts fields to and from pixel format. -- 5 October 1990.

Major additions to pgraf, and one small change -- in the vector call, the scaling is different. The main additions are so that contouring, etc., can be done to an irregular grid. Old versions of pgraf main program and metacode generators are in oldpg.c and oldpgc.c. The Fortran metacode generator is now obsolete. The new metacode file is now called pgraf2.out to avoid confusion. -- 27 October 1990.

A new version of cdfplot has been implemented to use the new features of pgraf. The old version is called oldcdfplot.c. -- 27 October 1990.

A new subdirectory, mcidas, has been added. This contains the programs mcselect (decode PC-McIDAS data stream for satellite pictures, converting them into Candis format), mcdisp (a utility to loop images on an X11 display), and mcmap (a utility to remap portions of a satellite image to a lat-lon grid). -- 27 October 1990.

A new subdirectory, scripts, has been added. This contains useful shell scripts to do various things with nws and mcidas data. -- 27 October 1990.

Make and installation procedures are simplified. -- 3 November 1990.

Add two satellite images to sample data. -- 13 November 1990.

Version 2.0 release -- 13 November 1990

Fix a bug in cdfisocut that kept it from working between the lowest two levels in a topdown search. -- 10 December 1990.

Mcselect was growing indefinitely, even though malloc'ed space was being free'ed. Fixed it so that new space is malloc'ed only when image size grows. -- 14 December 1990.

Fixed mcselect so that it would handle changes in image size and images with an x pixel dimension not an integral multiple of 32 -- it pads out to a multiple of 32 with zeros. -- 31 January 1991.

There are now separate versions of mcdisp for X11 and the Mgr windowing system -- called mcdisp_x11 and mcdisp_mgr. Mgr can now run on a Sparcstation without crashing the system, courtesy of SunOS 4.1.1. -- 11 February 1991.

Bug fixed in raduf that caused occasional incorrect results due to pointers getting prematurely deallocated. -- 4 March 1991.

Oldcdfplot, oldcdfuaplot, and oldpgraf taken out of service. New versions assume regular names. -- 4 March 1991.

Bug fixed in raduffix. Apparently this doesn't compile and run correctly on Sparc SunOS 4.1.1 with -g flag. It works ok with -O flag, and also with gcc. -- 4 March 1991.

Version 2.1 release -- 23 March 1991

Fixed a bug in mcselect that made it grow indefinitely when image sizes continually change. This is fix to an earlier fix which really didn't fix the problem. -- 5 April 1991.

Bug fixed in mcmap which made it do bad things when the image is not 640x350 pixels. -- 10 April 1991.

Version 2.2 release -- 10 April 1991

Made cdflook and cdfextr so that input Candis header buffers of twice the standard size of HBMAX = 300 will be accepted. Output header buffers must still not exceed HBMAX, however. -- 23 May 1991.

Fixed various bugs in rafread -- this happens at the beginning of each new aircraft project! Rafread (and cdfextr and cdflook) will now handle jumbo-sized GENPRO files with up to 400 variables. Nulls (!) in the header are turned into spaces. -- 23 May 1991.

Added the capability to mcdisp to display only a segment of a satellite image. -- 31 May 1991.

Turned off annoying diagnostic messages in rtape and wtape. -- 5 June 1991.

Speed up line drawing in pgmgr by replacing the mgr call m_line, which uses fprintf, by a routine that uses a lookup table to convert from binary integers to ascii. -- 5 June 1991.

Added declaration of elemcnt as long and added VARARGS comment to addfld to shut up lint. (Note that varargs routines have not been used in addfld -- this should be done.) -- 9 June 1991.

Added a new general purpose routine, cdffill. This linearly interpolates across bad data segments in the direction of the specified dimension for all variable fields. -- 15 June 1991.

Made radrp7 field names more consistent with raduf, and made radfudge change the range index parameters as well as index field. -- 15 June 1991.

Created rafthetae. This computes a highly accurate reversible equivalent potential temperature, the derivation of which is due to Kerry Emanuel of MIT. -- 19 August 1991.

Changed mcselect so that it recovers from a number of errors that previously caused a satellite image to be rejected. If one of these errors occurs a possibly damaged satellite image is still recovered. -- 19 August 1991.

Changed mcdisp so that a maximum of 48 images will be displayed. If more than 48 are requested, earlier images are dropped until the limit is reached. -- 19 August 1991.

A bug was fixed in mcmap that precluded correct gridding of satellite images if the grid increment was a non-integral number of degrees. This program still needs more work. -- 19 August 1991.

Bug fixed in pgraf, in which the fill (hatching) function would mess up on rare occasions. -- 4 September 1991.

Quickcandis, a set of functions for creating a one-variable-slice Candis file with a minimum of bother, now exists. -- 10 October 1991.

Unidata directory now depends on finding netcdf library in /usr/local/lib and netcdf includes in /usr/local/include. -- 20 October 1991.

Pgraf now makes an error exit rather than silently truncating lines if they have too many points. Also, upper limit raised from 10000 to 50000. -- 22 November 1991.

Created cdffilter, which does either low or high pass filtering of single fields, rather than every field like cdfsmooth. -- 22 November 1991.

Version 2.3 release -- 22 November 1991

A bug was fixed in quickcandis that rendered it inoperative, and one new routine (for irregular grid spacings) was added. -- 26 November 1991.

Version 2.4 release -- 26 November 1991

Ranlib made optional, so that systems that don't have it don't choke. -- 2 December 1991.

Fixed an error in tutorial. -- 2 December 1991.

Changed "fsin" variable names to something else because of a clash with SGI math library. -- 2 December 1991.

Version 2.5 release -- 2 December 1991

Cdfhisto core dumps sometimes with SunOS compiler on optimization. Solution -- compile unoptimized or use gcc. -- 2 January 1992.

A new program, cdfuncat, takes a Candis file with one variable slice and turns it into one with many variable slices and one less dimension. -- 27 January 1992.

The autoscaling option for vector lengths in cdfplot was fixed. This involved changes in both cdfplot and libpgc.a. -- 4 February 1992.

Flush stdout after each record write in rtape. -- 5 February 1992.

Modify pgtek so that it puts out "ESC ^X \r\n" when quiting -- this switches MSKERMIT back to text mode. -- 1 March 1992.

Add minor features to radrp7 and radcart2. New programs (for HaRP) program are radeq (to compute radar reflectivies from NCAR RP-7 data) and radvert2 (to compute dual Doppler vertical velocities). -- 5 March 1992.

Fixed a bug in pgx that caused a black rectangle to occur at the end of text strings for certain fonts. Also changed the command line arguments, eliminating the display argument -- uses only default display. -- 9 March 1992.

Changed a calling sequence in quickcandis. Introduce an instance argument to candiscreate so that file names can be qualified with an instance number as suffix. -- 18 March 1992

Fixed a bug in cdfpix -- illegal calls to open stdin and stdout. -- 27 March 1992.

Version 2.6 release -- 15 April 1992

Bug fixed in pg -- core dump occurred when dimension sizes or number of points became too large. -- 21 April 1992.

Modify rafread so that units may contain lower case letters. -- 22 June 1992.

Hrdair, a preliminary version of a program to translate NOAA P-3 data to Candis format, created. New directory, hrd, to contain Hurricane Research Division stuff. -- 22 June 1992.

Cdfmath now detects and fails with a message on two common errors -- leaving the '=' off the end of the command and using data from a field that doesn't exist. -- 6 July 1992.

A new option on cdfextr means that all but the named quantities are extracted. -- 26 July 1992.

Cdfhisto command line parameters now define the center of the histogram bins rather than the edges. Also, a new option allows the direct creation of a pgraf2.out file for one-dimensional histograms. -- 27 July 1992.

A new program, cdfnull, creates a Candis file that is empty except for index fields, index parameters, and a token placeholder variable field. -- 29 July 1992.

A new directory containing the SISAL interface to Candis has been added. Also, a program, cdffibre has been added that converts a Candis file to SISAL Fibre format. This directory is not automatically compiled with a global make, since most sites don't have SISAL at this point. -- 31 July 1992.

Version 2.7 release -- 2 August 1992

A new program, cdfgnuplot, creates ASCII files suitable for plotting using the Free Software Foundation's program "gnuplot". -- 4 August 1992.

A new low level pgraf driver, pgfig, has been added. This converts pgraf format to fig format for use by transfig. In this way pgraf plots can be added to LaTeX documents. -- 6 August 1992.

Pgx now responds differently to different mouse buttons -- middle means advance to next plot, left means backup one plot, and right means exit. -- 11 August 1992.

A new program, cdfmean, takes averages of selected fields and adds the results to the Candis file. -- 13 August 1992.

Made it so that it is easier to change C compilers. -- 15 August 1992.

Minor bug involving tic marks fixed in cdfplot. -- 24 August 1992.

Fix (hopefully!) a bug in cdforder that would occasionally make it core dump. -- 12 September 1992.

I have repented of my decision to eliminate BINDIR and LIBDIR defines in each subdirectory make file. They have been reinstalled, which means that the main directory make call cannot override them, and they have to be changed by hand. However, since most people will probably only want to install pieces of Candis, they will be in there editing and running make files in individual directories anyway, and this mechanism seems more convenient in that case. -- 7 October 1992.

Version 2.8 release -- 7 October 1992

Improve Makefiles in pgraf/lolevels and mcidas by putting macros defining where X11 libraries may be found. -- 8 Oct 1992.

Fix the man page and protect some unprotected mallocs in cdfthresh. -- 17 October 1992.

Hrdair modified so that it optionally reads data read to disk by rtape. -- 17 October 1992.

Two Postscript versions of pgraf low level drivers added, pgnext for NeXT computer displays, and pgps for Postscript printers. Source code courtesy of Giorgio Caranti of Cordoba University in Argentina. -- 30 October 1992.

Replaced exp10 with pow in pscale.c (part of cdfhisto). -- 3 Feb 1993.

Renamed "div" to "div1" in radvert.c. RS-6000 portability! -- 8 Feb 1993.

Fix on rafread received from Kelly McNerney, Wisconson -- eof not detected on certain machines due to character sign extension problem. -- 9 Feb 1993.

Modify rtape and wtape to better handle tapes with multiple files. -- 11 Feb 1993.

Modifications to rafdap, rafwinds, rafthetae. -- 11 Feb 1993.

New program, rafclouds, to handle Ophir radiative thermometer and UV Hygrometer on Electra. -- 11 Feb 1993.

Fixes done on cdfhisto and cdfthin. -- 11 Feb 1993.

New functions and operators added to cdfmath. -- 11 Feb 1993.

Fixes done to pgps. -- 11 Feb 1993.

New programs for Hurricane Research Division P-3 data: hrdair and hrdrawair for converting in situ slow data to Candis, hrdrad for converting radar data to Candis. -- 11 Feb 1993.

Small bugs fixed in cdfmean and cdfuncat. -- 5 Mar 1993.

Enhance cdfsisal(3). -- 2 April 1993.

Pgmgr_hrc is a new version of pgmgr that fits on a Hercules graphics console. -- 3 April 1993.

New program, cdfparams, adds an arbitrary number of parameters to a Candis file. -- 5 April 1993.

Fixed Makefile in utils to accommodate systems (such as Linux) that don't have tsort or lorder, but have ranlib. -- 11 April 1993.

Pgmgr_vga and pgx_vga are new versions of pgmgr and pgx that fit on a 640x480 standard VGA console. -- 16 April 1993.

I have abandoned trying to make everything from the main directory, as many people only want part of Candis. Thus, make the libraries from the main directory and change to each subdirectory to make the desired pieces. Also, everything except io is set up to use gcc. -- 16 April 1993.

Version 3.0 release -- 16 April 1993

Fix a bug in pgraf that caused marks outside of the window to pile up on the edge of the window. -- 22 April 1993.

Remove `getopt' from cdf library, since it is universally available. -- 3 June 1993.

Cdfinterp was quadratic in dimension size -- it is now linear. -- 3 June 1993.

Modified lex programs in mcidas, raf, and nws to optionally work with the Free Software Foundation's flex program. -- 5 June 1993.

Mcdisp needed a cdfhdr.h include to implicitly include stdlib.h in ANSI C systems. -- 15 June 1993.

Yet another fix for rafread -- this time to handle GENPRO II data for TOGA-COARE. -- 4 August 1993.

Fixed an overflow bug in cdfplot (actually, libpgc) that caused a crash when the number of grid points in a contour plot, etc., exceeded 1500. -- 5 August 1993.

New program, raftheform, that computes the potential temperature, theta, on a grid of pressure and equivalent potential temperature. -- 8 August 1993.

Made true airspeed correction optional in rafwinds. Also corrected the correction, based on DLR analysis. -- 19 Aug 1993.

Eliminate explicit bad data values in rafread. -- 9 Sept 1993.

Fix a problem with the Candis header in rafwinds. Also, update rafclouds to refer to the current standard NCAR/RAF field names. -- 15 Sept 1993.

Make rafclouds reject liquid water values > 10 g/m^3 -- needed because fssp sometimes fails, giving large values. -- 15 Sept 1993.

More changes to rafclouds: Change all scaling coefficients to 1. Make the humidity calculation use the Lyman-alpha instrument if the UV-hygrometer is not available. -- 16 Sept 1993.

A major bug in cdffilter was fixed -- the backward filtering was being done, but not the forward filtering -- this was getting lost! -- 17 Sept 1993.

Version 3.1 Release -- 28 September 1993

A new program, rafalpha, converts RAF 1 sec aircraft data to ascii format. -- 29 Sept 1993.

Changed variable that receives characters from getopt from char to int in rtape and other programs that use getopt. This is important for RS-6000s. -- 6 Oct 1993.

Hrdrawair2 has been added. It is a version of hrdrawair that handles a newer input format. -- 7 Oct 1993.

An unfolding editor, radedit, for Doppler radar data has been added. -- 17 Oct 1993.

Added an include to cdfhdr.h in pg.c, so that stdlib.h gets included when necessary. -- 13 Nov 1993.

Fixed radsynth for dual doppler work -- this had never been adequately tested before. Also, made it so that the program looks for the radar location in both the static and variable slices. Finally, made the assumed names more accessible to the programmer that needs to change them. -- 27 Nov 1993.

Changed uniget so that it treats the indefinite dimension like any other dimension, thus creating only one variable slice. -- 2 Dec 1993.

Wrote a new program, radvort, to make calculations of absolute vorticity transport in convective systems which have been observed by radar. -- 12 Dec 1993.

Changed radsynth so that it also computes vertical air motion. It will now also accept input from radcart2. -- 20 Dec 1993.

More cleanup done on radcart2. All names have specific default assumptions now. To change them, edit the source code and recompile. -- 20 Dec 1993.

Radrp7 (a program that converts NCAR field format data to Candis format) is (briefly) documented. -- 20 Dec 1993.

Fix an uninitialized data bug in cdfmerge. (Merry Christmas!) -- 26 Dec 1993.

Added a reference time argument to radcart2. If this optional argument is used, the positions of all data points are advected to the specified reference time rather than the time at the beginning of the volume scan. -- 28 Dec 1993.

Version 3.2 Release -- 28 December 1993

Fixed bug in usage statement for radcart2. Also, made radcart2 propagate the storm speed variables to the output. -- 29 Dec 1993.

Minor improvements done in radedit. -- 13 Jan 1994.

Fixed a bug in cdfnull that occurred in ANSI/POSIX machines -- no atof declaration unless cdhdr.h included. -- 20 Feb 1994.

A new version of cdfocut written by Michael Ruehle is added. The old version was hard to maintain and had a bug. Also, a new program, cdfrotate, was added. -- 29 April 1994.

Version 3.3 Release -- 27 May 1994

Make the -s flag in cdftrans swap bytes on float input. This allows translation to Intel float format without going through ascii. -- 1 July 1994.

Add a user-changeable flag to cdfhdr.h called FLOATSWAP. If this is set to 1, bytes are swapped on floats in getslice and putslice. This allows Suns and Intels to read the same files without translation. -- 1 July 1994.

Add a new program, cdftable, that creates a Candis file from a list of numbers on the standard input and a list of field names on the command line. -- 6 July 1994.

Forgot that cdfcat writes slices by hand, so had to incorporate FLOATSWAP stuff directly into this program. -- 13 July 1994.

Fixed Makefile in hrd to pick up cdflib locally rather than in /usr/local/lib. -- 27 July 1994.

Fixed bad calls to fopen in mcmap. -- 27 July 1994.

Development system is now Linux. -- 27 July 1994.

Cdfhisto wasn't retaining previous history from the input Candis file. Fix this. -- 15 August 1994.

Quickcandis needed to do floatswap on Intels since it does nonstandard slice writes. -- 17 August 1994.

Fix a bug in the Makefile in sisal. -- 17 August 1994.

Cdfuncat also does nonstandard slice writes, thus need to do a floatswap -- hope this is the last! -- 17 August 1994.

Fixed a bug in cdfplot that made it core dump when a curve consisting of all zeros was plotted. (How did this one go on for so long?!) -- 2 September 1994.

Added a LINUX flag in cdfhdr.h for Linux and other POSIX systems -- fixed zin and fzin so that they use Linux termios if the LINUX flag is set. -- 13 September 1994.

Version 3.4 Release -- 16 September 1994

Optimizing cdforder under Linux causes it to core dump. -- 19 September 1994.

Fixed a bug in pg programs that caused a core dump on contour plotting when a field had constant, nonzero values. -- 28 October 1994.

Increase the maximum number of plots in pgx and pgx_vga from 100 to 501. -- 5 November 1994.

Make all of quickcandis' global variables static to prevent name clashes with the outside. -- 9 November 1994.

Some obsolete code in cdfisocut was causing it to core dump under certain circumstances -- removed this code and cdfisocut works fine. -- 10 November 1994.

Remove reference to the drift angle in hrdrad, since it doesn't exist in some versions of the P-3 slow data, and isn't needed for subsequent analysis. Also, seek the aircraft altitude from either the ra (radar altitude) or ga (geopotential altitude) fields in the aircraft data. -- 23 November 1994.

Put reference to drift angle back into hrdrad, as it is needed later, and can be calculated in the aircraft data with a shell script if it doesn't exist. -- 29 November 1994.

Cdfdefint didn't work if the index parameter was absent. It will now work off of either the index parameter or index field. -- 16 January 1995.

Rafclouds had an error in the interpolation across bad data regions. This was pointed out by Ding Ying Wei. -- 8 February 1995.

Version 3.5 Release -- 8 February 1995

Increase the font size in pgps. -- 20 April 1995.

Blank out a spot for text before writing it in pgfig. -- 29 June 1995.

Fix an esthetic problem with pg.c -- on axis labels, all numbers on the axis will now appear with the same number of digits to the right of the decimal point. -- 4 July 1995.

Change cdfplot so that in station plots the labels are done first so that the arrow prints on top of it and doesn't disappear. -- 5 July 1995.

Change pg.c so that type 1 and 4 marks are bigger, so that they appear to be same size as type 2 and 3 marks. -- 5 July 1995.

Change cdfmean so that the dimensions of the averaged fields are reduced. Also, make the suffix for the averaged fields a command line option. Only one dimension at a time can be averaged over in this new version. The command line is different also. -- 25 July 1995.

Minor error message fixes in cdfplot. -- 11 November 1995.

Fixed mcdisp_x11 and mcselect for byte swapping of images. On Intel architectures the bytes shouldn't be swapped for images in pixel format, but byteswap in getslice and putslice doesn't know this. So... reswap them on creation and display if needed. -- 11 November 1995.

Fix byte swapping problems in mcmap as well. -- 11 November 1995.

Fix a bad memory leak in cdfvlim. Also fix a namespace clash due to a bug in linux/gcc. -- 21 November 1995.

Add an exit(0) to the end of cdftable. -- 21 November 1995.

Fix a bug in cdfcatf -- under the right circumstances the cdfcatf comment added to the file would be too long. -- 7 December 1995.

Changed the copyright to the GNU copyleft. -- 9 December 1995.

Made all globals static that didn't need to be global in general and pgraf. This addresses a bug in the current version of Linux gcc, but is generally good practice anyway. -- 9 December 1995.

Add a new pgraf metacode reader, pgeps. This creates encapsulated Postscript files for use in documents. Also, on both pgps and pgeps, blot out background before writing text. Finally, reduce the number of metacode readers to pghp, pgtex, pgx, pgfig, pgps, and pgeps. Many readers for obsolete devices were removed. -- 11 December 1995.

Changed the protocol on the pgraf metacode slightly to do a better job on number grids. The metacode file is now called pgraf3.out. -- 11 December 1995.

Make pgraf independent of the rest of Candis by replacing the #include "cdfhdr.h" on pg.c with #include <stdlib.h>. This may break on some very old unix systems. Also, put pgraf documentation in the pgraf subdirectory and make symbolic links so that it also appears in the Candis documentation. -- 18 December 1995.

Make pg* programs copy the metacode file into a file with a unique name so that more than one pg* program may run at once in the same directory. This temporary file is deleted when pg* exits normally. -- 19 December 1995.

Extend the meaning of ltype in the pgraf metacode so that 1-4 makes black lines, 5-8 makes red lines, 9-12 makes green lines and 13-16 makes blue lines. So far this only works with pgx, but it shouldn't break the other metacode readers. Pgx also converts them all to black lines on monochrome displays. -- 19 December 1995.

Add 3-D perspective axes and perspective viewing of a function of two variables to pgraf. Change the X11 viewer so that mouse clicks in conjunction with keyboard presses changes the viewing parameters of an existing perspective view plot. -- 21 December 1995.

Clean up cdfplot and improve diagnosis of errors. -- 25 December 1995.

Add a pgraf metacode generator for the Matlab-like freeware program RLaB. Also add a program cdfrlab, which translates a Candis file into RLaB format. -- 25 December 1995.

Cdfplot now has a more sensible way to determine default fill boundaries. -- 26 December 1995.

Pgps and pgeps now have better whiteout of text background. -- 26 December 1995.

Fixed a memory leak in cdfdefint and made it much more efficient. -- 7 January 1996.

Fix to pgx.c so that window focus goes to plot window rather than parent window. (Hope this works for all window managers!) -- 9 January 1996.

Fix problems in pgc.c and pg.c with numbers that are very large. -- 13 March 1996.

Add checks in pgraf.r so that non-real (e. g., complex) matrices are caught in plotting attempts; they don't work! -- 13 March 1996.

Fix the dashed and dotted line patterns in pgps and pgeps. -- 13 March 1996.

Fix an integer overflow problem in cdfplot.c. -- 28 March 1996.

Change the US sounding code in select.l to U[ACDEFGHIJKLMNOPQRSTUVWYZ]US since the NWS seems to have changed their format. -- 28 April 1996.

Create a new program, nwsuaorder, which properly orders the thermodynamic and wind parts of the sounding data -- since the National Weather Service has seen fit to send these out in random order. Also, a minor change was made in the pattern recognition part of nwsua to fit the new scheme. -- 30 April 1996.

Change compression routine in Makefile to gzip. -- 8 May 1996.

Version 3.6 Release -- 8 May 1996

Fix bug in cdfcatf -- opened files weren't being closed before the next was opened. -- 23 May 1996.

Fixed a buffer-not-big-enough bug in cdfhisto. -- 6 June 1996.

Added a new Doppler radar Cartesianization program, radcart5. This program does dual Doppler only, but has well-defined error thresholding characteristics. -- 27 June 1996.

Added a fix to hrdrad which adds a field monotime which is monotonic across midnight. Courtesy of Carlos Lopez. -- 28 June 1996.

In uniget the indefinite dimension now results in multiple variable slices unless an option is set to suppress this behavior. Uniget also made much more efficient in cpu time and memory usage. -- 5 July 1996.

The option to suppress multiple variable slices in uniget is no longer needed, so it was removed. Also, all variable and dimension names are now converted to lower case. -- 23 July 1996.

Modified select.l to put METARs in the surface observation slot, in accord with the recent changes at NWS. -- 23 July 1996.

Fixed problem with pgraf -- bad data values were not being checked for in ordinary graphs! -- 25 July 1996.

New program -- cdfjday calculates the Julian day given day, month, and year fields. Written by James Fox. -- 26 July 1996.

Fixed a bug in nwsuaorder. -- 28 Oct 1996.

Fixed a bug and simplified derivative taking in cdfderiv. Now only centered derivatives are attempted except on ends where first order off-centered derivatives are done. -- 30 Dec 1996.

Fixed a bug in cdfthresh. 'Val < badlim' actually selected values greater than badlim and vice versa. Altered the sense to make sense. -- 31 Dec 1996.

Version 3.7 Release -- 31 December 1996

New version of radvert, radvert4. This is vastly simplified and employs just those options needed for dual Doppler analysis. -- 5 Jan 1997.

Radcart5 modified so that the minimum height for which gates are accepted can be made a function of range. -- 6 Jan 1997.

Cdfcatf modified so that only one file on the command line is acceptable. -- 7 Jan 1997.

Jagged lines in postscript output fixed with the help of Melissa Griffin. -- 28 March 1997.

Created a new version of pgps called pgsps, which has smaller fonts than pgps. -- 29 March 1997.

Incorporated some changes in hrdrad by Carlos Lopez. -- 15 June 1997.

Modified mcselect and mcdisp to work on GOES-8/9 (GVAR) images as well as the older GOES images. Wrote a new program, mctrans, to translate to Candis McIDAS satellite files which have already been extracted from the data stream. Mcselect currently doesn't work because of problems decoding the McIDAS packet stream. -- 17 June 1997.

Fixed mcmap to work with the new navigation. -- 27 June 1997.

Version 3.8 Release -- 17 July 1997

Added satellite-specific corrections in navigation to dumbnav.c for GVAR-8. (GVAR-9 is yet to be done.) Had to extract satid in getimage.c and mcmap.c to make this work. -- 16 August 1997.

Added a new program nwstao to convert NOAA/PMEL's TOGA TAO hourly data files to a form which cdftable can read. -- 29 August 1997.

Put a hack into mcdisp so that GVAR images, which have y resolution twice the x resolution, are displayed in the proper aspect ratio. This still isn't quite right, but it is the best we can do without remapping pixels. -- 28 December 1997.

Rough navigation corrections have been done for GVAR-9. -- 28 December 1997.

Added a new program by Carlos Lopez-Carillo called radsmooth, which does an objective analysis of data on horizontal planes in radar data, and which also does column divergence corrections on the newly computed divergence. -- 20 January 1998.

Version 3.9 Release -- 20 April 1998

Added a program cdfsst, written by James Fox, which converts Reynolds SST data to Candis format. -- 13 May 1998.

Fix a bug in cdfmath having to do with pow. Pointed out by Vaughan Phillips. -- 19 May 1998.

Increased default header size from 300 lines to 1000 lines. This is needed to deal with the latest aircraft data files. -- 14 June 1998.

Fixes and enhancements were done to cdfsst. -- 18 August 1998.

The maximum block size on rtape and wtape was reduced to 32768. This is the maximum block size Linux will accept for variable block size reads and writes on SCSI tape drives. This parameter really should be setable from the command line. -- 11 September 1998.

Updated pgfig so it puts out version 3.2 of the fig protocol rather than version 2.1. Dashed lines may not work yet. -- 24 February 1999.

Added the scaling attributes ``add_offset'' and ``scale_factor'' to uniget so that scaled data get unscaled on conversion. -- 5 April 1999.

Version 3.10 Release -- 6 August 1999

Changed nwstao so that it will handle 4 digit years as well as 2 digit years. -- 16 August 1999.

Added an ``x'' to all the internal function names in pgraf.r in order to avoid collisions with one of the default graphics packages, pgplot. Also, write the pgraf3.out file to the /tmp directory and then copy it to the current directory. If the current directory is NFS mounted, this can save lots of time. -- 25 August 1999.

Fix a bug in pg.c which screws up contour plots, etc., when the number of grid points is at precisely the maximum size.

Version 3.11 Release -- 30 January 2000

Cdfhisto is changed in two ways: (1) The -g flag is eliminated, which means that no instant graphics can be made. (2) The -k flag is added, which means that the original fields are kept in the new file. The latter change necessitated a change in the naming convection for the histogram dimensions -- a ``-dim'' is appended to the field name on which histogramming is done. -- 14 June 2000.

Added some functions to quickcandis to read Candis files assuming that the calling program knows everything about the Candis file. -- 14 June 2000.

Added the flag -r to uniput. This forces only one variable slice of the input Candis file to be read and eliminates the record dimension from the output netCDF file. -- 19 June 2000.

Altered the quickcandis interface for reading Candis files to a ``20 questions'' approach to make it easy to interface with Sisal. -- 19 June 2000.

Enhanced the Sisal interface to Candis so that Sisal can read a Candis file as well as write one. -- 22 June 2000.

Fixed a bug in cdfrdim (!) which failed when an averaging range was taken over a dimension whose values decreased with increasing index. -- 27 June 2000.

Added the program olrget which is just like cdfget except it translates the time origin to 1 Jan 1970. -- 29 June 2000.

Version 3.12 Release -- 2 July 2000

Add the program cdfgriv which does some data reformating to aid in the use of the GRI graphics package. -- 3 July 2000.

Forgot to add a cdfread.globals to sisal. -- 14 July 2000.

Added mctranspng, which translates McIDAS satellite images to Candis format which have been decoded from the data stream using Unidata's pnga2area program. -- 11 August 2000.

Add a routine dcandisfld to quickcandis. This is just like candisfld except that it handles double precision fields. -- 23 August 2001.

New program hrdasciitrans. This translates an ascii file for HRD aircraft in situ data to a format that can be usefully read by cdftable. -- 6 September 2001.

Add an option to cdftable to allow a string to be included as a comment in the output file. -- 7 September 2001.

Made cdftable more robust against phase errors -- a line is read at a time and all variables are extracted. -- 8 September 2001.

Add a new program, cdfcomment, which adds a comment line to a Candis file. -- 10 September 2001.

Add a new program, rafsegsub, which does conditional variable substitution on a time series. -- 17 September 2001.

Fix a bug in cdfinterp that prevented interpolation when the index field varied in a sense opposite that of the command line argument ``dval''. -- 18 October 2001.

Version 3.13 Release -- 19 October 2001

Add a new program, cdfentropy, which computes the entropy of moist air using the equation of Iribarne and Godson. -- 20 October 2001.

Add two spaces after ``Letter'' in the output file of pgfig, as fig2dev seems to need them for some reason. -- 13 November 2001.

Add a new program, rertape, which reinserts rtape ascii record headers into an HRD P-3 in situ data file which has been read to disk without the benefit of rtape. -- 15 January 2002.

Version 3.14 Release -- 16 January 2002

Modify hrdair to extract Dave Jorgensen's vertical velocity and the GPS position and ground speed as well as the previously defined variables. -- 8 March 2002.

In cdftable, if an input line starts with ``#'' it is now ignored. -- 17 April 2002.

Fixed a memory leak in cdfcatf and documented (but didn't fix) a bug. -- 5 May 2002.

Fixed a bug in cdfmerge, which didn't take into account implicit bad data values in input files. -- 15 May 2002.

Fixed a character offset problem in pgfig. -- 16 May 2002.

Add a new program cdfentform which creates a grid of potential temperature values on a saturated entropy-pressure grid. -- 27 May 2002.

Fix the ordering of index fields to be consistent with the ordering of dimensions in cdfhisto. Also, change the behavior so that a separate histogram is computed for each input variable slice rather than making one histogram from the entire input file. -- 7 November 2002.

Fix a bug in cdfinterp in which a single point was left at zero during interpolations. -- 10 November 2002.

Fix latent bugs in cdfentropy and rafthetae in which the entropy and theta-e fields potentially end up with the wrong size and shape. -- 1 May 2003.

New program cdfmr to calculate the mixing ratio from the pressure, temperature, and dewpoint. -- 1 May 2003.

Make mcdisp work on 24 bit X11 displays as well as 1 and 8 bits. -- 4 July 2003.

New program cdfnewent, which calculates the Lopez-Carrillo moist entropy. -- 31 May 2004.