04-Dec-2014: RESISTANT_MEAN - Fix problem with use of DIMENSION keyword with non-square arrays 10-Nov-2014: FITS_OPEN - Allow compressed file names to include spaces 02-Nov-2014: DBSEARCH - Fix problem with string "less than" searches 01-Nov-2014: SXPAR() - Use cgErrorMsg rather than On_error,2 26-Nov-2014: QUERYVIZIER - Add /CFA keyword, remove /CADC keyword 20-Oct-2014: MATCH2 - Fix occasional problem with strings with numerical content 14-Oct-2014: MWRFITS - Avoid LONG overflow for very large files 26-Sep-2014: FXREAD - Fix bug in handling of BSCALE keyword 3-Sep-2014: HEULER - Now work for GLS projection PUTAST - PV1_3, PV1_4 keywords take precedence over LONPOLE, LATPOLE coordinates 25-Aug-2014: STRN() - Fix truncation problem when used with vector input 9-Aug-2014: HPRECESS - Now works for GLS projection 29-Jul-2014: MODFITS - A scalar in the header field means no header PLOTHIST - Fix /FILL to work when axes are inverted 21-Jul-2014: SAFE_CORRELATE() - compute the probability that data is uncorrelated while accounting for data uncertainties 14-Jul-2014: XY2AD - Faster evalution of SIP polynomial 9-Jul-2014: CONVOLVE() - Fix bug where output is double precision even for float input 14-Jun-2014: EQ2HOR - Fix case of scalar position but vector JD 3-Jun-2014: TSUM() - Added /NaN keyword 30-May-2014: EXTAST - Fixed bug introduced Jan 2014 where SIP parameters were not recognized when NAXIS = 0 07-May-2014: FITS_READ - Fix bug when using /DATA_ONLY 05-May-2014: FITS_OPEN - can now read Unix compressed (.Z) FITS files FITS_READ - close unit when reading .fz or .Z compressed files SXADDPAR - Don't allow NaN values to be written to FITS header 25-Apr-2014: MRDFITS(), FITS_OPEN - Use LONG64 for very large tables 24-Apr-2014: SXPAR(), FXPAR() - Don't convert LONG64 values to double precision 24-Apr-2014: TBGET() - Use V6.0 notation TBINFO - Use long64 for .numval for very large tables 23-Apr-2014: MWRFITS - Added /No_Copy keyword, fix problem with 32 bit overflow 18-Apr-2014: GSSSADXY - No longer call DELVARX which apparently can be slow QUERYGSC() - Update for new server format. The names and number of structure tags has now changed. 7-Apr-2014: SOLVE_ASTRO - Solve for an tangent-plane astrometric plate solution with optional distortion terms. Requires MPFIT, MPFIT2dFUN from the Markwardt Library New /markwardt directory contains procedures from the Markwardt library used in the Astron Library 7-Apr-2014: MRDFITS() - Work with LONG64 variable length binary tables 18-Mar-2014: MRDFITS() - Suppress "zero length" message when /SILENT is set 13-Mar-2014: STRN() - Now accepts vector input 12-Mar-2014: TNX_EVAL() - Evaluate distortion correction given IRAF TNX coefficients (polynomial only) AD2XY, ADD_DISTORT, EXTAST, PUTAST, XY2AD - now support IRAF TNX projection (polynomial only -- not yet Chebyshev or Legendre). 5-Mar-2014: TPV_EVAL() - Correct several typos for 4th order terms 26-Feb-2014: FITSDIR - Don't let a corrupted file cause an abort 26-Feb-2014: QUERYVIZIER - Updated for new http: syntax if /CANADA is set FITSRGB_TO_TIFF - use 24bit display when /Visualize is set 25-Feb-2014: HASTROM - Now has a /SILENT keyword 05-Feb-2014: MULTIPLOT - Now handles [!X/Y.OMargin] 25-Jan-2014: Removed spurious versions of EXTAST, XY2AD, and SIP_EVAL which had been duplicated in the /fits directory. 24-Jan-2014: FM_UNRED - Fix computation of output keyword EXTCURVE 10-Jan-2014: QuerySimbad- Now has optional keywords to get magnitude and parallax. 9-Jan-2014: WCS_CHECK_CTYPE - Now recognize when "RA" and "DEC" CTYPE values are flipped. 3-Jan-2013: AD2XY, XY2AD, EXTAST, TPV_EVAL() - Now support the TPV model of distortion (used by the SCAMP software) 14-Dec-2013: AD2XY, EXTAST, SIP_EVAL() - support reverse SIP distortion calculation when only forward coefficients supplied WCSXY2SPH - Return scalar output for scalar input for ZPN projection WCSSPH2XY - Polar offset correctly done in radians 13-Dec-2013: WCS_ROTATE - Avoid roundoff error when longitude = +/- 180 1-Dec-2013: EXTAST - Add warning if astrometry includes SCAMP distortions (These are not yet evaluated but will be in the future). 05-Nov-2013:MRANDOMN - Use LA_CHOLDC instead of CHOLDC to enable use of STATUS keyword SELECT_W - Add kluge for Unix systems when Y_SCROLL_SIZE is set. 29-Oct-2013: DBCREATE - .db files no longer need be in current directory 27-Sep-2013: New procedures to query IRSA catalogs and tables QUERY_IRSA_CAT - queries IRSA catalogs, returning an IDL structure READ_IPAC_TABLE - reads an IPAC Table file into an IDL structure READ_IPAC_VAR - converts an internal variable to an IDL structure WRITE_IPAC_TABLE - writes an IDL structure to an IPAC Table file 21-Sep-2013: EXTAST - Fix for converting GLS projection to SLS 19-Sep-2013: MRD_STRUCT - Fix typo when creating LONG64 arrays with /No_Execute 17-Sep-2013: XDISPSTR - Now has POS keyword to specify where to display the widget on the screen. 31-Aug-2013: DBSEARCH - Put in a strtrim() prior to sorting SELECT_W - Fix SELECTIN keyword problem introduced 20-Aug 28-Aug-2013: AD2XY, PUTAST - Fix bugs introduced 30-Jul-2013 Library now assumes IDL V6.4 or later. Look at /old for older versions 23-Aug-2013: READFITS() - Fix bug when skipping extensions with > 2GB 20-Aug-2013: APER - Don't ever modify input SKYRAD parameter SELECT_W - Use CW_BGROUP instead of obsolete XMENU, implement comments parameter as ToolTips DBOPEN - Use tooltips when called without any parameters 13-Aug-2013: AD2XY - Don't modify shape of input arrays 7-Aug-2013: UNZOOM_XY - Fix algorithm for non-zero zoom values 30-Jul-2013: Major upgrade to world coordinate procedures including adding HealPix "butterfly" (XPH) projection, using the "Version 2" astrometry structure with 11 new tags, and stricter adherence to the WCS standard AD2XY, ADXY, EXTAST, MAKE_AST, PUTAST, WCS_GETPOLE, WCS_ROTATE, WCSSPH2XY, WCSXY2SPH, XY2AD, XYAD WCS_CHECK_CTYPE - Check that pair of CTYPE parameters conform to WCS format. 18-Jul-2013: DATE_CONV() = Now has a /BAD_DATE output keyword XDISPSTR - Made widget resizeable 17-Jul-2013: EXTAST - Major rewrite to add AXES, REVERSE, COORD_SYS, PROJECTION,, RADECSYS, EQUINOX, DATEOBS, MJDOBS, PV1, and X0Y0 tags to the structure. SKY - Fixed occasional out of bounds problem when /NAN set. 10-Jul-2013: WRITEFITS - 28 June bug fix introduced error when CHECKSUM is set and NAXIS = 0 01-Jul-2013: SELECT_W - Added Columns, y_scroll_size keyword inputs, 28-Jun-2013: WRITEFITS - Fixed bug when using /CHECKSUM with unsigned integers 11-Jun-2013: RDPLOT - Added /CURSOR_STANDARD keyword, fix occasional crashes 23-May-2013: EQ2HOR - Fix problem with scalar JD and vector RA,Dec 22-May-2013: CO_NUTATE, CO_ABERRATION - Fix problems when JD is a 1-element vector and RA,Dec have 2 or more values 17-May-2013: WCSSPH2XY, WCSXY2SPH -- Allow GPL as a synonym for SFL projection 1-May-2013: Text file idl_stsdas.tex moved to /obsolete since the Library no longer supports STSDAS tables. 19-Apr-2013: RESISTANT_MEAN - Allow a row/column to be all NaN values 10-Apr-2013: RESISTANT_MEAN - fix problem when NaN values present PLOTHIST - Fix problems when /XLOG is set 1-Apr-2013: EXTAST - Work with PARITEL headers with extra quotes 26-Mar-2013: PARTVELVEC - Now work NaN values in input array. 8-Mar-2013: MRDFITS() - Fix problem when ther FITS columns differ only in having a different case. 6-Mar-2013: AL_LEGEND - Can now use embedded symbols in items string array 26-Feb-2013: WEBGET() -- Allow http_proxy to be upper or lower case 21-Feb-2013: MRDFITS() - Fix problem introduced Nov 2010 when using /FSCALE 15-Feb-2013: SUNSYMBOL() - Use DejaVuSans true-type font for V8.2 or later 14-Feb-2013; OPLOTERROR - Work with a Coyote resizeable window 30-Jan-2013: ARCBAR - Fix problem when using /DATA coordinates and not in postscript. 28-Jan-2013: PUTAST - Spurious error message introduced April 2012 when CD matrix supplied. 15-Jan-2013: Coyote library procedures are no longer included in the Astron library .tar or .zip files and must be downloaded separately from http://www.idlcoyote.com/documents/programs.php. Alternatively, one can download coyote_astron.tar.gz which contains a subset of the Coyote library routines needed by the Astronomy library. 11-Jan-2013: FITS_INFO - Fill EXTNAME even when /SILENT is set 3-Jan-2013: DBCIRCLE() - Fix occasional problem when crossing 0h 13-Dec-2012: AL_LEGEND - Fixed bug when linsize, /right called simultaneously 29-Nov-2012: RHOTHETA() - Calculate separation and position angle of a binary star given its orbital elements 26-Nov-2012: AL_LEGENDTEST - Renamed from LEGENDTEST 02-Nov-2012: PUTAST - Don't warn about missing reverse SIP coefficients when forward transformation has order 0 01-Nov-2012: READFITS() - Fixed check that header begins with 'SIMPLE' Removed legend.pro because its name conflicts with IDL 8.0 intrinsic function. Use AL_LEGEND instead. 25-Oct-2012: OPLOTERROR - Fixed problem when overplotting a single point. 24-Oct-2012: DBCREATE - Fix occasional problem where item descriptions overlap. 22-Oct-2012: HCONGRID, HREBIN - Allow new CRPIX* values to be double precision 17-Oct-2012: TICLABELS - Bug fixed where degrees (not just hours) would be forced to be between 0 and 24. 12-Oct-2012: MWRFITS - Bug fixed to set location of column header comments. SXADDHIST - Bug fix when finding location to insert a comment **Procedures in /sdas_table have been moved to the /obsolete directory http://idlastro.gsfc.nasa.gov/ftp/obsolete/ ** 10-Oct-2012: MRDFITS() - Better error checking for FPack compressed files 02-Oct-2012: FITS_OPEN - work with gzip'ed files even if gzip is not available 21-Sep-2012: FITS_INFO - Increase maximum number of file extensions from 400 to 2000. 05-Sep-2012: ADSTRING() - can now convert longitudes >99.99 to sexagesimal 24-Aug-2012: EQ2HOR - use STRICT_EXTRA to flag spurious keywords CO_ABERRAtION - fixed case both the Julian Date and RA,Dec are vectors 09-Aug-2012: MWRFITS - Better documentation, error checking for logical columns 07-Aug-2012: AL_LEGEND - A symbol can now be specified by its cgSYMBOL name 30-Jul-2012: PERMUTE() - Moved from /contrib to the main library 19-Jul-2012: WRITEFITS - Now writes a dummy primary header if user supplies an extension table header. 16-Jul-2012: RESISTANT_MEAN - Use of Dimension keyword yielded transpose of correct value. READCOL- Correctly handle blanks without a conversion error 20-Jun-2012: QUERYVIZIER() - Better handling of case when more than one catalog returned 29-May-2012: WCSSPH2XY, WCSXY2SPH -- Added HealCart projection 25-May-2012: EXTAST - Recognize obsolete keywords PC001002, CD001002 HISTOGAUSS - Better formatting of text output 03-May-2012:MRD_STRUCT - Added more capabilities in /No_execute mode 02-May-2012: HELIO_RV() - Change convergence test from relative to absolute precision on E 30-Apr-2012: SXPAR(), FXPAR() - Fixed problem extracting keywordN when N=0 17-Apr-2012: FXBREADM, FXBWRITM - Now use long64 to support files > 2GB 12-Apr-2012: TVBOX - Added /SQUARE keyword to keep box square even when X and Y plotting scales differ. 04-Apr-2012: PUTAST - Now adds SIP distortion parameters if present 25-Mar-2012: TVELLIPSE - Now has /FILL keyword to draw filled ellipses 21-Mar-2012: MULTIPLOT - Default to use a white background color 20-Mar-2012: TVCIRCLE, TVELLIPSE, TVBOX - Added /DEVICE keyword, fix 04-Jan-2012 change. 07-Mar-2012: TICLABELS - Fix problem when a label falls at exactly 0 degrees 07-Feb-2012: MODFITS - now works with a 1 element structure 01-Feb-2012: AL_LEGEND - Fix problems with use with a CG window, and setting a background color 31-Jan-2012: DELVARX - No longer uses EXECUTE, always frees memory 12-Jan-2012: MRD_HREAD - Now has a /NO_BADHEADER keyword to abort if any bad characters are found in the FITS header. 05-Jan-2012: PLOTERROR, OPLOTERROR - Speed improvement by calling PLOTS rather than CGPLOTS internally. FITS_HELP - Use V6.0 notation 04-Jan-2012: TVCIRCLE, TVBOX, TVELLIPSE - Default to data coordinates if !X.CRANGE is set (i.e. plot system defined) WEBGET() - Timeout now defaults to 15 seconds and applies to both reading and connecting from the socket REM_DUP() - Call BSORT() to ensure original order maintained for equal values 03-Jan-2012: TABINV - Faster test for monotonicity, allow double precision output 02-Jan-2012: ZBRENT - Can now pass parameters to user function via _EXTRA 20-Dec-2011: DBPRINT - Fix problem when displaying linked databases 15-Dec-2011: WEBGET() - Work for web sites with out a MIME type 14-Dec-2011: AL_LEGEND - Removed call to SYMCAT to avoid symbol problems 10-Dec-2011: LINMIX_ERR - Fix bug when updating MU with Metropolis-Hastings 08-Dec-2011: MMM, APER -- Now have a MINSKY keyword PLOTHIST - Plot Keywords now work properly with /ROTATE 03-Dec-2011: AL_LEGEND - Fixed typo that kept BTHICK keyword from working 25-Nov-2011: EXTAST - Give warning if reverse SIP coefficients not supplied 23-Nov-2011: GLACTC_PM - Correct occasional sign error in galactic longitude 02-Oct-2011: QUERYSIMBAD - Display coordinates if /PRINT set, or only one parameter supplied. 22-Sep-2011: GET_EQUINOX - Added ALT keyword, support RADESYS keyword 15-Sep-2011: DBOPEN, DB_ENT2EXT, DB_ENT2HOST - Fix Nov 2010 bug that affects external databases 25-Aug-2011: GETROT - Fix problem when X and Y rotations have opposite signs STARAST - Check for singular matrix (collinear star positions) 19-Aug-2011: PUTAST - Don't add PV2 value to FITS header for WCS types (e.g. 'TAN') for which it is not defined, added PLTSCL, ROTAT keywords PIXCOLOR - Can specify Coyote graphics colors 07-Aug-2011: MAKE_ASTR - Fixed bug introduced October 2010 for setting default plate scale. Affected use of STARAST. 04-Aug-2011: PLOTHIST - Explictly set XSTYLE,YSTYLE to avoid confusion when _EXTRA keywords are used by both PLOTS and PLOT. 20-Jul-2011: LEGEND - Replace SIZE with CHARSIZE keyword in calls to XYOUTS for GDL compatibility 9-Jul-2011: TVBOX - Now has /FILL keyword 25-Jun-2011: AL_LEGEND - Erroneous call to CGQUERY instead of CGCONTROL 01-Jun-2011: HROTATE - Work even if no astrometry present, just update NAXIS* 31-May-2011: SXADDPAR - Fix problem saving comment when slashes present 16-May-2011: AL_LEGEND - Fixed problem when using resizable graphics window 09-May-2011: AL_LEGEND - Added LINSIZE keyword to control size of line 02-May-2011: MODFITS - Don't try to update CHECKSUM keywords when a structure supplied MRDFITS - Use better defaults for null values for FITS ASCII tables 23-Apr-2011: FORPRINT - Comments can now be a vector (one per line) 17-Apr-2011: HELIO_RV() - Allow any consistent time system, not just HJD 07-Apr-2011: QUERYVIZIER()- Ignore vector tags, (such as SEDs recently added to the 2Mass catalog) 06-Apr-2011: OPLOTERROR - "Hats" were not being plotted 05-Apr-2011: FILTER_IMAGE() - Keep double precision datatype if using /ALL_PIXELS 28-Mar-2011: MRDFITS() - Fix bug with ROWS keyword introduced Nov 2010 17-mar-2011 AIRTOVAC - now iterates for even better precision 14-Mar-2011: AIRTOVAC, VACTOAIR - Use more accurate formula, added optional output keyword 13-Mar-2011: SRCOR - Fixed problem when sources separated by more than 180 degrees and no critical radius set. 07-Mar-2011: GETTOK() - Added /NOTRIM to leave input string unaltered 28-Feb-2011: HEADFITS(), MODFITS, WRITEFITS, CHECK_FITS, FITSDIR - Use V6.0 notation 25-Feb-2011: KSONE, KUIPERONE, KUIPERTWO, AUTOHIST, HISTOGAUSS - now use Coyote Graphics 16-Feb-2011: The following 16 procedures now use the Coyote Graphics library (http://www.idlcoyote.com/graphics_tips/coyote_graphics.html ) -- AL_LEGEND,ARCBAR, ARROWS, IMCONTOUR,LEGEND_TEST, LINEID_PLOT, MULTIPLOT, ONE_ARROW, ONE_RAY, OPLOTERRROR, PARTVELVEC, PLOTERROR, PLOTHIST, TVBOX, TVELLIPSE, TVCIRCLE AL_LEGEND - Added BACKGROUND_COLOR keyword 14-Feb-2011: READCOL - Added COMPRESS keyword to read gzip'ed text files 10-Feb-2011: DB_ITEM - Ignore any blank lines in the .items file REMOVE - Fix occasional integer overflow problem 02-Feb-2011: READFITS() - First header not necessarily primary header if unit rather than filename supplied 24-Jan-2010: READCOL - Now accepts full FORTRAN format values (e.g. F4.1) 21-Jan-2010: GAL_UVW - Updated to a more recent local standard of rest vector 11-Jan-2010: MRDFITS() - fixed use of /FSCALE from bug introduced 11-Nov-2010 23-Dec-2010: MRDFITS() = Fix reading of complex valued data in variable length binary tables 18-Dec-2010: DBOPEN - Fixed bug opening multiple databases /fanning directory renamed to /coyote 06-Dec-2010: FITS_READ, FITS_OPEN - Now support Fpack compressed FITS files ( http://heasarc.gsfc.nasa.gov/fitsio/fpack/ ) 05-Dec-2010: GET_PIPE_FILESIZE - Determine the number of bytes in a unit opened as a pipe with SPAWN 20-Nov-2010: TEXTOPEN, FORPRINT - Now have a /WIDTH keyword to pass to OPENW (and avoid possible problems with 80 character wraparound) 18-Nov-2010: MWRFITS - Fix problem with longword overflow, update to V6.0 notation 11-Nov-2010: MRDFITS() - Fixed problem with unsigned integers, update to V6.0 notation 28-Oct-2010: PLOTHIST - Added FTHICK keyword to control thickness of lines used in POLYFILL 14-Oct-2010: DBSEARCH, FITS_OPEN - Use compound operators, slightly faster MAKE_ASTR - Default plate scale is now 1"/pixel (not 1 deg/pix) 13-Oct-2010: Database routines now support databases with entry lengths larger than 32767 bytes. This requires some changes in the internal database formating but these changes should be transparent to the user. Modified routines are DBCREATE, DBEXT_DBF, DBFIND() DB_INFO(), DB_ITEM, DB_ITEM_INFO(), DBOPEN DBWRT - Faster byte swapping 11-Oct-2010: LEGEND - Now has BTHICK keyword to control legend box thickness 04-Oct-2010 COSMO_PARAM - Better error checking. 08-Sep-2010: READCOL - Now has /QUICK keyword for faster (but less flexible) reading KSTWO - Fix 32 bit overflow problem when computing N_eff for very large integers 19-Aug-2010: CNTRD - Fix bug that would return NaN values rather than -1,-1 when centroiding failed GCNTRD - Gaussian smooth image prior to finding maximum pixel (unless /KEEPCENTER is set ) DB_ENT2HOST - Fix bug with multidimensional strings 18-Aug-2010: DBPRINT - Fix display of multidimensional data AL_LEGEND - Duplicate of legend.pro that avoids name conflict with new IDL 8.0 LEGEND() function. 17-Aug-2010: MRDFITS() - Fix bug with /EMPTYSTRING keyword and multidimensional strings DB_ENT2EXT - Fix bug with multidimensional strings 8-Aug-2010: READFITS() - Fix possible problem when startrow=0 supplied 3-Aug-2010: READFITS() - Faster access to FPACK decompression MRD_STRUCT - Serious bug introduced 16-Jul fixed. Could have caused MRDFITS() to fail if short integers present. 30-Jul-2010: GETPRO - Test for .sav file, more robust test for write privilege 24-Jul-2010: READCOL - Free memory used by internal pointers DBBUILD - Fix for when first parameter is multi-valued 16-Jul-2010: LEGEND - Make a box with sharper edges 14-Jul-2010: WFPC2_READ - Fix header when only reading PC chip in MEF format 12-Jul-2010: QUERYGSC - fix case for dec between -1 and 0 11-Jul-2010: QUERYSIMBAD - Added /SILENT keyword 08-Jul-2010 FXPOSIT() - Prompt for file name if supplied as an empty string (same effect for MRDFITS(), HEADFITS() ) 02-Jul-2010: DBCIRCLE() - Fields RA_OBJ (degrees) now works correctly 24-Jun-2010: ROBUST_SIGMA() - Correctly handle data with NaN values 20-Jun-2010: FXREAD - Update BLANK keyword when applying BSCALE/BZERO 03-Jun-2010: READFITS() - Use short-circuit operators, correct treatment of BLANK keyword, use dialog_pickfile when filename supplied as an empty string. 24-May-2010: WCS_GETPOLE - Make native pole calculaions ocnsistently in radians READFMT - Recognize 'G' format, use SKIP_LUN DBBUILD - Avoid spurious warning message about # of elements 09-May-2010: FXBFIND - Fix potentially serious bug introduced April 2010 DBFIND_SORT - Fixed occasional out of bounds error 06-May-2010: WFPC2_READ - Can now read multi-extension FITS format 04-May-2010: MATCH - Added EPSILON keyword to get matches within tolerance. 09-Apr-2010: FXBREADM - Add support for columns with TNULLn keywords 07-Apr-2010: DBCREATE - Remove spurious warning that database name is too long 06-Apr-2010: FXBTORM, FXBHELP, FXBFIND, FXBPARSE - Stop using obsolete !ERR system variable (and maintain GDL compatibility) 06-Apr-2010: READCOL - Graceful return even if no valid lines present 05-Apr-2010: FXBCREATE - Fixed rare truncation of FITS header when updating THEAP keyword 02-Apr-2010: FTAB_PRINT, TBPRINT - Can now print in 'table' format (1 row per line by setting the column parameter to '*'; also added a NUM_HEADER_LINES keyword. 28-Mar-2010: FXBADDCOL - Do *not* force TTYPE* keyword to upper case 23-Mar-2010: Now have a /fanning directory containing procedures from David Fanning's library ( http://www.dfanning.com/) used with Astron procedures. Currently contains SETDEFAULTVALUE - Set default value for positional & keyword argument SYMCAT() - a direct graphics symbol catalog 22-Mar-2010: CONVOLVE - Add /No_PAD keyword for better speed and less memory usage when edge effects are not important 11-Mar-2010: QUERYVIZIER - Avoid error if output columns but not data returned 10-Mar-2010: MRDFITS() - Fix COLUMN keyword to work as advertised 06-Mar-2010: REMOVE - Can now remove elements from up to 25 vectors 25-Feb-2010: READCOL - Now recognizs LL, UL, and ULL data types STRNUMBER() - Now has a /L64 keyword 18-Feb-2010: SXPAR(), FXPAR() - Fix problem with extracting very large negative integers. QUERYGSC() - Handle updated server format which now also returns infrared photometry 17-Feb-2010: READ_FMR() - Read a journal (ApJ, AJ) machine-readable table into IDL 09-Feb-2010: CO_REFRACT() - Allow more than 32767 elements 02-Feb-2010: REPSTR() - Test for empty input string (could cause infinite loop) 01-Jan-2010: VALID_NUM() -- Corrected bug that would treat '124.' as invalid 31-Dec-2009: SRCOR - Return as soon as no matches are found 17-Dec-2009: SRCOR - Fix RA search to account for cos(Dec) RESISTANT_MEAN - Now has DIMENSION keyword to take mean over 1 dimension, more consistent double precision 11-Dec-2009: DBCREATE - Warn if record length exceeds 32767 bytes FXBREAD - Fix use of DIMENSION keyword 29-Nov-2009: MWRFITS - Fix /USE_COLNUM for binary tables DBFIND_SORT - Fixed 01-Nov update to not use VALUE_LOCATE on single value 25-Nov-2009: READCOL - Use pointers to improve speed and avoid bug with using SCOPE_VARFETCH() in IDL 7.1 workbench. MULTIPLOT - Reinitialize common block if M[X/Y]TITLE set 03-Nov-2009: LEGEND - PSYM values between 11 and 46 will now use the plotting symbols defined in David Fanning's SYMCAT() function http://www.dfanning.com/programs/symcat.pro 01-Nov-2009: DBINDEX, DBFIND_SORT -- Now allow string items to be sorted 30-Oct-2009: READFITS() - Ignore degenerate trailing dimensions with NSLICE keyword 29-Oct-2009: CONVOLVE - Pad images prior to FFT to avoid edge effects 23-Oct-2009: GLACTC_PM - Convert between celestial and Galactic (or Supergalactic) proper motion 19-Oct-2009: FITS_READ - Make sure FIRST is long64 for very large files 30-Sep-2009: FXADDPAR - Now has /NOLOGICAL keyword to *not* interpret 'T' and 'F' as logical values MWRFITS - Allow TTYPE values of 'T' and 'F' 16-Sep-2009: TAG_EXIST() - June 2009 update wasn't setting INDEX keyword 20-Aug-2009: READCOL - Now allows up to 40 output parameters FTAB_EXT - Now allows up to 30 output parameters 14-Aug-2009: HPRECESS, PRECESS_CD - Use J/Bprecess for conversion between J2000 and B1950 11-Aug-2009: FITS_ADD_CHECKSUM - Make sure FITS header has 80 characters/line 10-Aug-2009: FDECOMP - Removed MacOS section (since it is same as Unix) BLKSHIFT - MacoS *can* move beyond EOF with POINT_LUN 31-Jul-2009: MRDFITS - Added /EMPTYSTRING keyword to bypass IDL memory bug when reading empty strings 31-Jul-2009: DBFIND - Avoid possible "Illegal Operand" error 30-Jul-2009: MRD_STRUCT - restored 131 character limit for execute() 22-Jul-2009: READFITS() - Fix error using NUMROW,STARTROW with non-byte data, allow these keywords to be used with primary array 21-Jul-2009: SXPAR() - Faster handling of Long String convention 17-Jul-2009: WHERE_TAG(), CREATE_STRUCT(), TAG_EXIST(), SXDELPAR - cleaner and slightly faster coding Removed NUMLINES() which is superceded since V5.6 by FILE_LINES 16-Jul-2009: Remove N_STRUCT() (now in /obsolete) since it is rinky-dink (and to recapture the namespace) 15-Jul-2009: TABINV - use ARRAY_EQUAL for speed, always internal double precision 14-Jul-2009: FXPOSIT, MRDFITS() - More complete handling of FPACK compressed files, including automatic detection of FPACK compression. 11-Jul-2009: KSONE - work for functions that do not accept keywords 03-Jul-2009: RDFITS_STRUCT - Added EXTEN keyword to only read specified extensions DBSEARCH() - Faster search for large databases MRD_HREAD - Now has a /SKIPDATA to position at end of HDU 03-Jul-2009: Library now requires IDL V6.1 or later IDL_VALIDNAME - removed since an intrinsic function since V6.0 ADSTRING - Use new formatting for "+" and "-" CHECKSUM32 - Use TOTAL(/INTEGER) for faster performance DBBUILD - Eliminate use of EXECUTE() and use SCOPE_VARFETCH(), accept up to 50 input variables. MRD_STRUCT - Assume lmgr() function available 02-Jul-2009: WCSSPH2XY - Check for valid range of nonlinear polynomial in a ZPN projection. 01-Jul-2009: MRDFITS() - Fixed bug introduced March 2009 when using file unit (the Unixpipe variable was undefined) 29-Jun-2009: MWRFITS - trim alias, implement logical TFORM 'L', don't add space after TFORM key 28-Jun-2009: DBCREATE - Remove calls to IEEE_TO_HOST 23-Jun-2009: LINMIX_ERR - Fixed bug so the iteration count reset after the burnin stage when /SILENT 17-Jun-2009: MRDFITS() - Fixed typo giving an error with /FSCALE introduced April 2009 HOR2EQ - Fixed case of scalar Julian date but vector positions CO_ABERRATION - Fix error with vector input SRCOR - Fix case when no matches found with /SPHERICAL 9-Jun-2009: MODFITS -- allow input data to be an (MRDFITS) structure 27-May-2009: FXPOSIT(), READFITS, MRDFITS, HEADFITS() - can now read FITS files compressed with FPACK ( http://heasarc.gsfc.nasa.gov/fitsio/fpack/ ) 15-May-2009: CREATE_STRUCT - Now puts "compile_opt hidden" in temporary .pro file to suppress error messages 05-May-2009: CHECKSUM32 - Skip byteswapping for float or longword data 30-Apr-2009: DBCIRCLE() - Fix problem when RA range exceeds 24h 10-Apr-2009: MWRFITS - Small efficiency update when writing ASCII tables 03-Apr-2009: MRDFITS() - Small efficiency updates in MRD_SCALE 01-Apr-2009: PLOTERROR, OPLOTERROR - Fixed problem when axes are both logarithmic and reversed 19-Mar-2009: TAG_EXIST() - Added a dummy /RECURSE keyword for compatibility with the Solarsoft version 16-Mar-2009: FXPOSIT() - Now opens files with the /SWAP_IF_LITTLE_ENDIAN keyword for byteswapping on the fly. MRDFITS() - Use new FXPOSIT() for much faster byteswapping. **The new MRDFITS() must be used with the new fxposit.pro ** 13-Mar-2009: GCIRC - Now uses haversine formula for less roundoff error at the milliarcsecond level SRCOR - Now much faster when using spherical coordinates. Added /SILENT keyword 09-Mar-2009: IMDBASE - Addded /SILENT keyword 24-Feb-2009: WEBGET() - Now has TIMEOUT keyword (defaulting to 30s) 21-Feb-2009: GETROT - Account for rotation introduced by nondefault value of LONGPOLE SKY - Avoid possible out of bounds if /NAN set 20-Feb-2009: EXTAST - Fix typo for AZP projection, nonzero longpole If duplicate WCS keywords, then use the *last* values DBOPEN - Fix typos in keywords passed to BYTEORDER 10-Feb-2009: FXBADDCOL, FXBWRITM - Now work with unsigned integers FXADDPAR - Increase formatting precision for double precision RXTE Software in contrib/rxte directory updated to Version 1.2 06-Feb-2009: TEN(), TENV() - Now accept string inputs 02-Feb-2009: READCOL - Now has STRINGSKIP keyword to skip lines beginning with a specified string 22-Jan-2009: ROBUST_POLY_FIT() - Added /DOUBLE keyword, removed obsolete call to POLYFITW HELIO - Work for more than 32767 positions 21-Jan-2009: PLOTHIST - Now has a /ROTATE keyword to switch X and Y axis (put the plot on its side). 18-Jan-2009: WEBGET(), QUERYVIZIER() - Added /SILENT keyword 13-Jan-2009: ASTROLIB - Removed !DEBUG definition (no longer used) 12-Jan-2009: SCREEN_SELECT, SELECT_O, SCR_*.PRO moved to /obsolete directory (i.e. widgets are now assumed to be always available). 09-Jan-2009: MWRFITS - Now has output STATUS keyword to indicate success/failure JPLEPHINTERP - Now allows base time TBASE to be scalar or vector 22-Dec-2008: KSTWO - Fix bug when maximum difference occurs at the end of the array 19-Dec-2008: DBCIRCLE() - Added /GALACTIC input keyword and COUNT output keyword 12-Dec-2008: GAL_UVW - Now 10 times faster for large arrays 26-Nov-2008: JPLEPHINTERP - More input checking, SSB and EMB aliases for solar system and earth-moon barycenter 25-Nov-2008: QUERYSIMBAD - Remove CADC keyword, add CFA keyword, update address of Sesame server 11-Nov-2008 FIND - Now has /MONITOR keyword to control whether to display each individual star READCOL - Now has NLINES output keyword 29-Sep-2008: EULER - Now has /RADIAN keyword 06-Sep-2008 FITS_WRITE - Delete BSCALE/BZERO before writing file PLOTHIST - Check whether all values are NaN 28-Aug-2008: IMCONTOUR - Work when RA crosses 0 hours TICLABELS - Use 0h labeling instead of 24h 19-Aug-2008: ADSTRING() - Fix roundoff error when -1 < dec < 0 , add PRECISION keyword 15-Aug-2008: READCOL - COUNT output keyword added giving number of valid lines EXTAST - Now use the *last* values if duplicate astrometry keywords are present in the FITS header 08-Aug-2008: MRDFITS() - Added OUTALIAS keyword, use vector form of VALID_NUM() 07-Aug-2008: VALID_NUM() - Major rewrite to use STREGEX, accept vector input SXPAR() - Use vectorized form of VALID_NUM 05-Aug-2008: QUERYVIZIER() - Use STRCOMRPESS2 for more robust searches using Constraint string 04-Aug-2008: STRCOMPRESS2() - Remove blanks around specified chars in a string 01-Aug-2008: DBCREATE - Fix bug introduced May 2008 when not in ZDBASE dir DBGET() - Fix possible bug when sublist supplied 30-Jul-2008: MODFITS - Now has EXTNAME input keyword JDCNV - Now checks for valid day, month ranges CT2LST - Change sign of time zone parameter to match standard Positive East of Greenwich (ahead of GMT). QUERYVIZIER() - Allow for possible lower-case returned formats 19-Jul-2008: OBSERVATORY - Fix error message for unknown observatory MODFITS - Fix bug when adding CHECKSUM changed header size FITS_ADD_CHECKSUM - Don't update DATASUM if not already present and no data array supplied. RXTE Software in contrib/rxte directory updated to Version 1.1 27-Jun-2008: EULER - Use less virtual memory for large arrays 24-Jun-2008: MRDFITS() - More informative error message when EOF encountered. 18-Jun-2008: GAL_UVW - Fix overflow for >32767 elements and update Sun velocity 12-Jun-2008: FITS_ADD_CHECKSUM - Fix error when CHECKSUM is an empty string 07-Jun-2008: QUERYVIZIER - Now recognize 'D' format specification 13-May-2008: FITS_ADD_CHECKSUM - Fix problem with images with multiples of 2880 bytes. 10-May-2008: READFITS() - Now always reset BSCALE/BZERO after applying even for unsigned integers 03-Apr-2008: HEXTRACT - Added ALT keyword to specify alternate astrometry UPDATE_DISTORT - Update SIP nonlinear transformation astrometry coefficient for a linear transformation 27-Mar-2008: SIZE_STRUCT() - Moved to /obsolete directory becuase it is superceded by LENGTH and DATA_LENGTH keywords to N_TAGS 21-Mar-2008: FIND - Now computes centroids using marginal Gaussian fits GCNTRD - Modified centroid algorithm to match IRAF/DAOFIND & allow shifts of more than 1 pixel from initial guess. 19-Mar=2008: FXBREADM, FXBWRITM - Read/write 64 bit integer columns 18-Mar-2008: FITS_INFO, FXBOPEN, FXBPARSE, FXFINDEND, FXBFINDLUN - Update integers to LONG64 to deal with very large files. HREBIN, HCONGRID - Don't update BSCALE/BZERO for unsigned integer 13-Mar-2008: APER - Allow output of negative fluxes (if /FLUX is set) 10-Mar-2008: READFITS() - Avoid 32bit overflow when using NSLICE keyword 03-Mar-2008: QUERYVIZIER - Update Strasbourg Web address to work correctly 01-Mar-2008: DBCREATE - No longer requires user to be on a ZDBASE directory FIND - /SILENT now suppresses *all* output 18-Feb-2008: WRITEFITS - EXTEND keyword is no longer required in the primary header of a FITS file with extensions as in proposed new FITS guideline 14-Feb-2008: RESISTANT_MEAN - Use double precision internally IMCONTOUR - Make use of the OVERLAY keyword always optional 29-Jan-2008: SKY - Avoid possible out of bounds if /NaN set. 17-Jan-2008: CONS_RA() - Ensure that returned declination is between -90 and 90 IMCONTOUR - Added OVERLAY keyword to ensure accuracy ot 1 pixel when overlaying an image. Use FORMAT_AXIS_VALUES() New /contrib/rxte directory contains "IDL Extractor" programs to extract light curves, spectra and power spectra from RXTE data (and also Swift and Chandra data). 14-Jan-2008: FXWRITE - Now has /APPEND keyword to append to existing FITS files FXHMAKE - Now has /XTENSION keyword to specify header is for an image extension. FXBWRITM - Now allows output table to have TSCAL/TZERO keyword values, unless new /NOSCALE keyword is set FXBREADM - Now recognizes unsigned integer scalings, and scalings can be either float or double precision. 08-Jan-2008: ADD_DISTORT -- Add a SIP distortion astrometry structure into a FITS header HREBIN, HCONGRID - will now update SIP distortion coefficients when expanding or compressing an image MMM - make sure that program never aborts but returns gracefully 24-Dec-2007 TRANSFORM_COEFF - Compute new polynomial coefficients under a linear transformation 19-Dec-2007: FITS_INFO - Now has out keyword EXTNAME to return extension names QUERYGSC() - Updated Webserver name (sigh) 13-Dec-2007: MODFITS - Ensure that supplied header contains 80 byte lines 11-Dec-2007: QUERYVIZIER(), CREATE_STRUCT() - Use vector form of IDL_VALIDNAME if IDL V6.4 or later 4-Dec-2007: FXMOVE() - Fix data size calculation for very large files FXPOSIT() - Added LUNIT keyword for user-supplied unit number 2-Dec-2007; QUERYGSC() - major rewrite to use new STScI server & GSC 2.3.2 QUERYUSNO (to query USNO-A2 catalog) has been removed since the newer USNO-B1 catalog can be queried with QUERYIVIZIER, e.g. IDL> info = queryvizier('usno-b1','m13',5) 25-Nov-2007: Minimum IDL version is now IDL V5.6 Updated procedures include RDFLOAT, BLKSHIFT, MEDARR, DBDELETE, FTAB_DELROW, GETPRO, WEBGET, READCOL, READFMT, READFITS, MRDFITS PRODUCT() - removed since intrinsic PRODUCT() is in V5.6 PLOTHIST - Added AXISCOLOR keyword, fix color problem when overplotting 20-Nov-2007: ABSCAL() - Moved to /obsolete directory 14-Nov-2007: FXFINDEND, FXMOVE, FXBOPEN, FXREAD, FXWRITE, FXHMODIFY - Now account for possibility 64bit integers needed for # of bytes. 13-Nov-2007: CORREL_IMAGES - Always REBIN() using floating pt. arithmetic 27-Oct-2007: WCSXY2SPH, WCSSPH2XY - Now supports the HEALPIX projection 12-Oct-2007: WRITEFITS - By default, update CHECKSUM keywords if already present 26-Sep-2007: FIND - Fix error message when no local maxima found 13-Sep-2007: HOR2EQ - Avoid integer overflow for more than 32767 points 31-Aug-2007: MODFITS - Fix problem when data size must be extended MULTIPLOT - Added /SQUARE keyword, overall (x)(y)title keyword. Can now control gaps between plots and overall tick format. 22-Aug-2007: MRDFITS() - Fix problem when both /FSCALE and /UNSIGNED set 8-Aug-2007: READFITS() - Fix bug introduced Mar 2006 in applying Bzero 6-Aug-2007: MATCH2 - New procedure to find every matching element in 2 arrays 3-Aug-2007: LEGEND - 13-Jul update introduced a bug for /NORMAL coords FXADDPAR - Bug fix for long string convention OBSERVATORY - Added info for Mount Graham observatory WCSSPH2XY, WCSXY2SPH - Correct treatment of PVi_j parameters 13-Jul-2007: WEBGET() - Partially upgrade to support HTTP 1.1 LEGEND - Don't modify position keyword DATE_CONV() - Add Julian date capabilities 06-Jul-2007: HPRECESS - Fix for case where CROTA2 is in the FITS header PUTAST - Allow PC matrix to updated when CD matrix is supplied 02-Jul-2007: QUERYSIMBAD - Update for parsing new /NED format 24-Jun-2007: WEBGET() - Now has a POST keyword for POST rather than GET queries 22-Jun-2007: FITS_READ - Added /PDU keyword to always inherit primary header even if INHERIT=T is not present (pre-April 2007 behavior) MRDFITS() - Fix for variable length arrays when used with the virtual machine. 29-May-2007: LINMIX_ERR, MLINMIX_ERR - Improved Bayesian prior for more reliable results 25-May-2007: CHECK_FITS - Work again for a null array 17-May-2007: New procedures supplied by Brandon Kelly (Steward U.) LINMIX_ERR : Bayesian approach to linear regression with errors in both X and Y MLINMIX_ERR : Bayesian approach to multiple linear regression with errors in both X and Y MRANDOMN : Generate random vectors from a multivariate normal density. MULTINOM : Genereate random vectors from a multinomial distribution. RANDOMCHI : Generate random numbers from a chi-square density. RANDOMDIR : Generate random vectors from a Dirichlet density. RANDOMGAM : Generate random numbers from a gamma distribution. RANDOMWISH : Generate random matrices from a Wishart density. 15-May-2007: FITS_READ, READFITS(), WRITEFITS - Set data variable to LONG64 for handling very large files 08-May-2007: MEDARR - Added /DOUBLE keyword to force double precision 07-May-2007: PSF_GAUSSIAN() - Do not modify NPIXEL input keyword 24-Apr-2007: REM_DUP() - Use faster algorithm when flag parameter not given FORPRINT - Fix error message when variable is undefined 23-Apr-2007: FXADDPAR - Now has an ERRMSG output keyword to capture error messages. 14-Apr-2007: FITS_OPEN - Warn user that compressed files cannot be updated 13-Apr-2007: WEBGET - Friendlier error recovery 12-Apr-2007: FITS_READ - Don't inherit the primary header unless INHERIT = T 9-Apr-2007: GCIRC - Use internal double precision for U=0 mode as advertised EXTAST, MAKE_ASTR - .CRPIX tag now double instead of float 6-Apr-2007: MRDFITS - Convert ASCII table array output to DOUBLE if needed to preserve precision 28-Mar-2007: HEXTRACT - Work for dimensions larger than 32767 21-Mar-2007: TBINFO - Now has a /NOSCALE keyword to skip TSCAL, TZERO TBPRINT, TBGET() - Avoid pointer leaks due to TBINFO call TBDELCOL - Use /NOSCALE in call to TBINFO 13-Mar-2007: MODFITS - Update the file control block (FCB) structure if the file size changes 09-Mar-2007: AD2XY, XY2AD - Use CRVAL ref. point for non-WCS transformations 08-Mar-2007: DBDELETE - Fix problem when deleting final entry FXMOVE - Use a case-independent search for EXTNAME 06-Mar-2007: QUERYSIMBAD - Update NED query to account for new IPAC format 05-Mar-2007: SKY - Fix problem for very large (>5000 x 5000) images 02-Mar-2007: MWRFITS - fix problem where strings were being right-justified instead of being written exactly as supplied. 21-Feb-2007: TVELLIPSE - Added /MAJOR, /MINOR keywords to add major, minor axes 16-Feb-2007: FTAB_PRINT - Check for empty extension 15-Feb-2007: LIST_WITH_PATH - Restore pre-Sep 2006 behavior of not searching subdirectories 12-Feb-2007: PCA - fix bug in computation of attribute projections 9-Feb-2007: DBMATCH - Fixed bug where /FULLSTRING was always being set 8-Feb-2007: CREATE_STRUCT - Added a descriptor type 'K' for LONG64 data 7-Feb-2007: REMCHAR - Work for string arrays with more than 32767 elements 6-Feb-2007: QUERYSIMBAD - Now use the more reliable Simbad Sesame name server, added /VERBOSE,/CADC keywords 20-Jan-2007: TEXTOPEN - Make sure output keyword MORE_SET is always defined EXTAST - Now includes .NAXIS tag in output astrometry structure PUTAST - New /NAXIS keyword to write .NAXIS values to FITS header 09-Jan-2007: DBPRINT, DBEXT_DBF - Remove use of EXECUTE() statements 03-Jan-2007: READCOL - Now has /PRESERVE_NULL keyword. This was formerly set as the default 28-Dec-2006: DBEXT, WFPC2_READ, FTAB_EXT - Avoid EXECUTE() for V6.1 or later 26-Dec-2006: DBINDEX- Automatically enlarge index (.dbx) file if necessary Fix serious bug introduced 18-Dec 19-Dec-2006: CONVOLVE() - Avoid unnecessary recomputation for double complex TVCIRCLE - Make default integers LONG so largest postscript circles display properly. 18-Dec-2006: DBSORT, DBINDEX - Avoid use of EXECUTE() for V6.1 or later 16-Dec-2006: MRDFITS(), HEADFITS() - Can now specify FITS extension by name (in the EXTNAME keyword) FXMOVE(), FXPOSIT() - Added EXT_NO, ERRMSG keywords 13-Dec-2006: MRD_SKIP - Restored check to avoid POINT_LUN with compressed files 8-Dec-2006: WEBGET - Added case for reading FITS images from FIRST survey 1-Dec-2006: EXTGRP - Restored to Library (needed by WFPC2_READ) 24-Nov-2006:FITEXY - normalize input data before processing 22-Nov-2006: CHECK_FITS - Fix dimension error introduced 14-Nov 20-Nov-2006: RDPLOT - Major upgrade, added BACKGROUND, /ACCUMULATE keywords fixed full cursor display for different setups 15-Nov-2006: EXTAST - Use GSSS astrometry if WCNAME = "DSS" (as in recent DSS images from the STScI server) 14-Nov-2006: CHECK_FITS - Removed support for STSDAS headers 2-Nov-2006: APER - All additional keywords to be passed to MEANCLIP 1-Nov-2006: ONE_RAY, ONE_ARROW - Now accept /DATA and /NORMAL keywords 25-Oct-2006: FITS_READ - Fix bug when using /DATA_ONLY keyword 20-Oct-2006: QUERYVIZIER - Set target='NONE' for an all-sky search, accept '+/-' constraints 17-Oct-2006: TBINFO - treat Logical type as character 'T' or 'F' 13-Oct-2006:GCIRC - Option (U=2) to supply input longitude, latitude in Degrees 3-Oct-2006: TVELLIPSE - Now uses _EXTRA to pass optional keywords to PLOTS 2-Oct-2006: MRD_SKIP - now uses POINT_LUN for compressed files since it is as fast as any other method READFITS() - Now calls MRD_SKIP to select fastest possible method of skipping bytes 26-Sep-2006: FITS_OPEN, FITS_READ, FITS_WRITE, MODFITS - now use /SWAP_IF_LITTLE_ENDIAN keyword to OPEN 25-Sep-2006: Library now requires V5.5 or later. VMS support has been removed from most procedures The following "stale" procedures have been removed from the Library They can still be obtained from http://idlastro.gsfc.nasa.gov/ftp/obsolete/ afhread - Used for mostly obsolete WFPC1 data astrmfix = Used for mostly obsolete FOC data conv_stsdas - Mainly for converting between VAX and unix conv_vax_unix() - Vaxes rarely used conv_unix_vax - Vaxes rarely used datatype() - JHUAPL routine dbcompress - TRUNCATE_ON_CLOSE makes it unnecessary def_dirlist -- Mainly for VMS extgrp - mainly for old WFPC1/FOC data getfiles -- Use dialog_pickfile instead getlog.pro -- mainly for VMS imgread -- for mostly obsolete WFPC1/FOC data mid_*.pro -- Midas I/O routines, no evidence that they are used osfcnvrt.pro -- mainly for VMS strd - only worked for small set of (mostly obsolete) GEIS files stsub, stsubim - only worked for small set of (mostly obsolete) GEIS files spline_smooth -- Never worked properly redshift -- 1970's cosmology, from JHUAPL library sxhedit -- just use a regular editor table_conv.pro - mainly for vax/unix conversion wfpcread -- WFPC1 data rarely used 12-Sep-2006: FITS_OPEN - Support very large files by using 64 bit variables 9-Sep-2006: DBDELETE -Use TRUNCATE_LUN (if V5.6 or later) to compress the .dbf file after deleting entries. DBCOMPRESS moved to obsolete directory. 1-Sep-2006: READCOL, STRNUMBER() now have a /NAN keyword to specify that empty strings should be interpreted as NAN values 30-Aug-2006: STRNUMBER() - An empty string is a valid number (=0.0) 25-Aug-2006: HASTROM - Account for half-pixel shift when using nearest neighbor 23-Aug-2006: FORPRINT - Warn if supplied vectors are not all the same size 11-Aug-2006: TBPRINT - Fixed check for multiple values 08-Aug-2006: MWRFITS - Allow logical columns to be specified as bytes 04-Aug-2006: PLOTHIST - fix possible color problem introduced May 2006 26-Jul-2006: TBINFO - Added ERRMSG keyword, Treat repeat count for strings as specifying string length, not number of elements 25-Jul-2006: FITS_OPEN - FCB.Filename now expands any wildcards 21-Jul-2006: DBFPARSE - Don't convert DATE/TIME to numeric for string items 14-Jul-2006: DBCREATE - New MAXENTRY keyword to override hardcoded #maxentries 12-Jul-2006: QUERYVIZIER - Removed V6.0 notation to restore V5.4 compatibility 06-Jul-2006: MWRFITS - Make 29-Jun-2006 fix work for pre V6.0 versions 29-Jun-2006: MWRFITS - Fix problem introduced May 2006 with multi-dimensional strings MRDFITS - Better error catching for gzip files, fix handling of unsigned integers when BSCALE not present 27-Jun-2006: PLOTHIST - Now supports logarithmic axes (/XLOG, /YLOG) 26-Jun-2006: DBCREATE - Fix problem introduced May 2006 when default integer types were change to LONG 23-Jun-2006: MWRFITS - Use /SWAP_IF_LITTLE_ENDIAN keyword to OPEN for improved speed. 8-Jun-2006: TBPRINT - Use case-insensitive match of column names with TTYPES 7-Jun-2006: FITS_OPEN - Call XDISPSTR if /HPRINT is set on a GUI terminal HPRINT - Call XDISPSTR if on a GUI terminal 5-Jun-2006: XDISPSTR - Widget display of text with a simple search capability 2-Jun-2006: GETPRO - Now uses FILE_WHICH() function for improved speed FINDPRO - Use FILE_SEARCH instead of FINDFILE for V5.5 or later 26-May-2006: PLOTHIST - Add /BOXPLOT keyword, use exact XRANGE as default 16-May-2006: FDECOMP - Include final delimiter in directory name under Windows, as advertised QUERYVIZIER() - New /ALLCOLUMNS keyword to return all catalog columns. Also, QUERYVIZIER() **now returns an anonymous rather than a named structure** 1-May-2006: DBCREATE - Make sure to use lowercase file names on Unix HROT - Work with a 1 element floating point angle 28-Apr-2006: MRDFITS(), TBGET() - Use faster byteswapping keywords to BYTEORDER 25-Apr-2006: DBEDIT - Now use DIALOG_MESSAGE for error messages A_b() - Moved to obsolete directory 24-Apr-2006: AITOFF_GRID, ARCBAR, HISTOGAUSS, SUNSYMBOL(), TICLABELS - Now have a FONT keyword to specify font (-1, 0 or 1) HOST_TO_IEEE, IEEE_TO_HOST - use new keywords to BYTEORDER for improved performance 21-Apr-2006: FITS_WRITE - Fix problem when number of bytes exceeds 32 bit word N_BYTES() - Now returns a long64 integer QUERYVIZIER() - Recognize 'E' format (same as 'F'format) 14-Apr-2006: Library now requires V5.4 or later, v53 directory contains frozen version, V5.4 related changes include: GET_DATE - Removed LOCAL_DIFF keyword FSTRING() - moved to obsolete directory ADSTRING(), TO_HEX(), FTPUT - removed call to FSTRING() BOXAVE() - allow 64bit integers GETTOK(), MATCH, FM_UNRED - use COMPLEMENT keyword to WHERE HPRINT, FTDELCOL - Use BREAK instead of GOTO MRD_SKIP, FITS_OPEN, FITS_INFO - Use fstat.compress GET_JULDATE - Use /UTC keyword to SYSTIME() DB_ITEM, FITSDIR, NUMLINES(), IRAFRD - Use FILE_EXPAND_PATH 13-Apr-2006: DATE_CONV() - removed RETALL from error messages MMM - Now has NaN keyword to check for not-a-number values 05-Apr-2006: HPRECESS - Fix algorithm when CROTA2 in FITS header XYAD - Include equinox when displaying coordinates 03-Apr-2006: DATE_CONV() - Don't include space in output FITS date 01-Apr-2006: FITS_READ, READFITS() - Do not modify BSCALE/BZERO in FITS header if reading unsigned integers 31-Mar-2006: MODFITS - Make sure last line of input FITS header is END DBPRINT - Fix display on GUI terminals 27-Mar-2006: POLY_SMOOTH() - Add /EDGE_TRUNCATE to CONVOL call 22-Mar-2006: QUERYVIZIER - 22 Feb update was not properly returning the first object found. 17-Mar-2006: FXHMODIFY - Fixed problem when needing to extend size of primary header with a call to BLKSHIFT 14-Mar-2006: DBEDIT - Added /BYTENUM keyword to treat bytes as numbers rather than characters 1-Mar-2006: SIXTY() - Added /TrailSign keyword to always place minus sign on first element, rather than first nonzero element. 28-Feb-2006: CONVOLVE() - Match output precision type to that of input 24-Feb-2006: NUMLINES() -- Handle Unix files with spaces prior to IDL V5.6 23-Feb-2006: FXBADDCOL, FXBTFORM -- Added support for 64 bit integers MWRFITS - Removed warning about 64bit integers now that they are standard FITS (as of December 2005) 22-Feb-2006: QUERYVIZIER - Updated for a change in the VIZIER output 6-Feb-2006: FXPOSIT - Remove leading spaces in filename when FINDFILE used 20-Jan-2006: RESISTANT_MEAN - Fix calculation of SIGMA_MEAN MMM - Fixed error introduced June 2004 removing outliers when READNOISE not set 29-Dec-2005: WCSSPH2XY, WCSXY2SPH - Fixed AIRY projection when centered at 90 degree latitude 21-Dec-2005: CO_REFRACT() - Fix problem with vector input when /TO_OBSERVED set 15-Dec-2005: JPLEPHINTERP - Fix highest order term in velocity computation 05-Dec-2005: TEN(), TENV() - Now recognize -0.0 as a negative value 23-Nov-2005: APER - Added MEANBACK keyword to use sigma-clipped mean instead of calling mmm.pro MMM - Added /SILENT keyword to suppress error messages 17-Nov-2005: TBPRINT - Better display formatting (space between columns) 16-Nov-2005: MEANCLIP - Added /DOUBLE keyword 09-Nov-2005: PRINT_STRUCT - Avoid overflow when displaying more than 10000 elements 27-Oct-2005: SXADDPAR - Work again with empty string input MMM - Fewer aborts for strange sky histograms 15-Sep-2005: LEGEND - Added FONT keyword [-1,0 or 1} to pass to XYOUTS commands. 09-Sep-2005: TBHELP - Fixed bug introduced 31-Aug-2005 to not display TFORM 02-Sep-2005: TVBOX - Don't round coordinates when /DATA is set 31-Aug-2005: FTAB_HELP - Now defaults to display all extensions TBHELP, FTHELP - Slightly more compact display formats 26-Aug-2005: QUERYVIZIER - Make dis (3rd parameter) optional (as advertised) 17-Aug-2005: HEULER - Use double precision to compute new North Pole 21-Jul-2005: FITS_INFO - Now work for FITS files with SIMPLE=F 18-Jul-2005: WCSSPH2XY - Return unprojectable points as NaN values PLOTHIST - Added /AUTOBIN keyword to set the number of bins to the square root of the number of samples 05-Jul-2005: READCOL - added "compile_opt idl2" to ensure pre-V6.1 compatibility 22-Jun-2005: MRD_STRUCT - Fix problem when both NO_EXECUTE and STRUCTYPE set QUERYVIZIER - Eliminate use of EXECUTE() statement READCOL - Eliminate use of EXECUTE() for V6.1 or later; accept null strings separated by delimiter ,e.g. ',,,' 18-May-2005: SXADDPAR - Fix SAVECOMMENT error with non-string values 17-May-2005: PUTAST - Don't use CROTA2 keyword if skew is present in the input astrometry GETROT - Added ALT keyword 12-May-2005: HREBIN, HCONGRID - Fixed problem in output astrometry if CROTA2 or PC matrix used. Added ALT keyword. 05-May-2005: ADXY - Still work if no WCS coordinates are present 02-May-2005: FXBWRITM - Remove call to EXECUTE() when using POINTERS keyword 25-Apr-2005: KSONE - Allow passing keywords to func_name via _EXTRA facility 20-Apr-2005: TICPOS - Fix cases where tic increment is at degree/minute or minute/arcsec boundary 19-Apr-2005: IMDBASE - Now accepts ALT keyword for alternate astrometry 11-Apr-2005: FXBGROW - Fixed bug in the zeroing of the output file 06-Apr-2005: JPLEPHINTERP - Handle custom-built ephemerides 30-Mar-2005: PARTVELVEC - Now has a VecColors keyword to set arrow colors 08-Mar-2005: FXREAD - Can now be used to read image extensions 25-Feb-2005: READFITS() - Fix problem with unsigned integers introduced Sep 2004 HASTROM - Check for distortion parameters in headers, add more FITS HISTORY records 24-Feb-2005: MINMAX() - Work again for versions prior to V5.5 07-Feb-2005: MRDFITS() - Fix problem when /USE_COLNUM is set 03-Feb-2005: MRDFITS() - Fix problem with string variable binary tables, possible math overflow on non-IEEE machines 01-Feb-2005: FITS_HELP - Don't truncate displayed EXTNAME values at 10 chars 31-Jan-2005: BLKSHIFT - Call TRUNCATE_LUN when shifting data forward from the end of the file. 20-Jan-2005: MOONPOS, NUTATE - Avoid possible integer overflow 12-Jan-2005: MRDFITS() - Fixed problem reading zero width arrays in binary tables on non-IEEE (e.g. Linux) machines 10-Jan-2005: MINMAX() - Added SUBSCRIPT_MIN and SUBSCRIPT_MAX output keywords 03-Jan-2005: MWRFITS - Fix writing of empty strings to a binary table 31-Dec-2004: MODFITS - More robust error reporting 16-Dec-2004: MRDFITS() - Propragate /SILENT to MRD_HREAD, more LONG64 casting APER - Fixed bug introduced 11/04 when there are no bad pixels 15-Dec-2004: RDFITS_STRUCT - Don't copy primary header into extension headers 14-Dec-2004: FITS_INFO - Check entire header for EXTNAME keyword SXPAR() - Make sure ABORT parameter always defined 10-Dec-2004: CHECKSUM32 - Sep. 2004 update introduced byte-ordering error for Linux boxes 24-Nov-2004: HROTATE - If GSSS astrometry is present, then convert to standard world coordinate system (WCS) astrometry 22-Nov-2004: WRITEFITS - Fixed problem when CHECKSUM set, and a heap array given 02-Nov-2004: APER - Now has /NAN keyword to signal a check for NaN pixels 29-Oct-2004: MMM - Improved numerical precision 25-Oct-2004: MRDFITS() - Check if extra degenerate NAXISi keywords are present 19-Oct-2004: WRITEFITS - Added ability to write to heap area CURVAL - Now has "ALT" keyword to select alternate astrometry 18-Oct-2004: HPRINT - Fixed 1 line offset on terminal that don't support /MORE 15-Oct-2004: XYAD, XY2AD, AD2XY - Now work for FITS headers with WCS keywords (CRPIX, CRVAL, CDELT) but no astronomical projection. 12-Oct-2004: RDFITS_STRUCT - Now has a /HEADER_ONLY keyword to read all the headers (and no data) in a FITS file 11-Oct-2004: HPRINT, FORPRINT - Do a simple PRINT if IDL in demo mode 01-Oct-2004: UNZOOM_XY, ZOOM_XY, TVLIST, CURVAL - Now compatible with versions in the MOUSSE library (http://archive.stsci.edu/uit/analysis.html)