summaryrefslogtreecommitdiffstats
path: root/ast/ast.news
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2018-01-09 19:26:44 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2018-01-09 19:26:44 (GMT)
commit1332d38f2805d986ea130e43218c0d2e870b4dc1 (patch)
treeaa72853cb8d0d8fcd53a6f5eddf196a374226706 /ast/ast.news
parent5e545ec8058cc5238dc870468b34b5d4617f307f (diff)
downloadblt-1332d38f2805d986ea130e43218c0d2e870b4dc1.zip
blt-1332d38f2805d986ea130e43218c0d2e870b4dc1.tar.gz
blt-1332d38f2805d986ea130e43218c0d2e870b4dc1.tar.bz2
update ast 8.6.2
Diffstat (limited to 'ast/ast.news')
-rw-r--r--ast/ast.news1189
1 files changed, 0 insertions, 1189 deletions
diff --git a/ast/ast.news b/ast/ast.news
deleted file mode 100644
index cbefd45..0000000
--- a/ast/ast.news
+++ /dev/null
@@ -1,1189 +0,0 @@
-AST Library
------------
- A new release (V8.6.2) of the Starlink AST (astrometry) library is
-now available.
-
- AST provides a comprehensive range of facilities for attaching
-world coordinate systems (such as RA/Dec, frequency, etc) to astronomical
-data, for retrieving and interpreting that information and for generating
-graphical output based on it.
-
- The library should be of interest to anyone writing astronomical
-software which needs to manipulate coordinate system data, especially
-celestial coordinate systems. AST is portable and
-environment-independent.
-
-
-
-Main Changes in this Version
-----------------------------
-
-- The astWrite method of the FitsChan class can now create FITS-WCS headers
-that include keyords describing focal plane distortion using the
-conventions of the Spitzer SIP scheme. This is however only possible if
-the SipOK attribute of the FitsChan is set to a non-zero value (which is
-the default), and the FrameSet being written out contains an appropriate
-PolyMap that conforms to the requirements of the SIP convention.
-
-- The behaviour of the astLinearApprox method of the Mapping class has
-been changed in cases where the Mapping being approximated generates bad
-(AST__BAD) values for one or more of its outputs. Previously, any such
-Mapping would be deemed non-linear and no fit would be returned. Now, a
-fit is returned, provided the other outputs of the Mapping are linear,
-but the fit contains AST__BAD values for the coefficients describing the
-bad Mapping output.
-
-
-Main Changes in V8.6.1
-----------------------
-
-- A new function call astCreatedAt is now available that returns the function
-name, file path and line number at which an AST object was first created.
-
-- The number of digits used to format floating point values has been
-increased in order to avoid loss of precision when converting from binary
-to string and back to binary. This could cause very small changes in numerical
-values returned by AST functions.
-
-- If a FrameSet is supplied as the "Map" argument to astAddFrame, it now
-extracts and stores the base->current Mapping from the supplied FrameSet.
-Previously, the entire FrameSet was stored as the Mapping.
-
-
-Main Changes in V8.5.1
-----------------------
-
-- A new class of Mapping called ChebyMap has been added. This is a
-Mapping that implements Chebyshev polynomial transformations.
-
-- If the function that delivers error messages to the user (astPutErr) is
-re-implemented, the new version can now be registered at run-time using
-the new astSetPutErr function. Previously, the new version needed to be
-linked into the application at build time.
-
-- A bug has been fixed in the PolyMap class that caused incorrect values
-to be returned for the TranForward and TranInverse attributes if the PolyMap
-has been inverted.
-
-- The KeyMap class has a new method called astMapGetC (AST_MAPGETC) which
-returns a named entry as a single string. If the entry is a vector the
-returned string is a comma-separated list of its elements, enclosed in
-parentheses.
-
-- The Frame class now has a new attribute caled DTAI, which can be used
-to specify the number of leap seconds at the moment represented by the
-Frame's Epoch attribute. By default, the internal look-up table of leap
-seconds contained within AST is used. The DTAI attribute allows old
-versions of AST, which may not include the most recent leap seconds, to
-be used with new data.
-
-- The TimeMap class has been changed so that some conversions now require
-a "Dtai" value (i.e. the number of leap seconds) to be supplied by the
-caller. If AST__BAD is supplied for "Dtai", the internal look-up table of
-leap seconds contained withn AST will be used. The conversions affected
-are those between TAI and UTC, and those between TT and TDB.
-
-Main Changes in V8.3.0
-----------------------
-
-- The PAL library files included in the AST distribution have been updated
-to PAL version 0.9.7.
-
-- Multiple identical NormMaps in series will now be simplified to a
-single NormMap.
-
-- A NormMap that encapsulates a basic Frame will now be simplified to a
-UnitMap.
-
-- The astTimeAdd (AST_TIMEADD) method of the TimeMap class now include an
-extra argument that gives the number of values supplied in the arguments
-array. Note, any existing code that uses this method will need to be
-changed.
-
-- The astSlaAdd (AST_SLAADD) method of the SlaMap class now include an
-extra argument that gives the number of values supplied in the arguments
-array. Note, any existing code that uses this method will need to be
-changed.
-
-- The astSpecAdd (AST_SPECADD) method of the SpecMap class now include an
-extra argument that gives the number of values supplied in the arguments
-array. Note, any existing code that uses this method will need to be
-changed.
-
-- If the astMapRegion (AST_MAPREGION) method is used to map a Region into
-a new Frame that has fewer axes than the original Region, and if the
-inverse transformation of the supplied Mapping does not specify a value
-for the missing axes, then those axes are removed entirely from the
-Region. Previously they were retained, but supplied with bad values. This
-affects the number of mesh points per axes for such Regions, and so
-affects the accuracy of overlap determination.
-
-
-Main Changes in V8.3.0
-----------------------
-
-- A new method called astAxNorm has been added to the Frame class that
-normalises an array of axis values. When used with SkyFrames, it allows
-longitude values to be normalised into the shortest range.
-
-- A bug has been fixed in the Fortran include file AST_PAR that caused constants
-related to PI to be defined as single rather than double precision.
-
-- A bug has been fixed in the astGetRegionBounds method that could
-cause the wrong bounds to be returned for regions spanning a longitude =
-zero singularity.
-
-Main Changes in V8.2.0
-----------------------
-
-- A new class of Mapping called UnitNormMap has been added that converts a
-vector to a unit vector relative to a specified centre, plus length. A
-UnitNormMap has N inputs and N+1 outputs.The lower N output coordinates
-represent a unit vector parallel to the supplied input vector, and the
-(N+1)'th output coordinate is the length of the input vector.
-
-- The restriction that Mappings are immutable has been extended to all
-Mapping classes. This means that attributes representing parameters of
-a Mapping's forward or inverse transformation cannot be changed after
-the Mapping has been created. In order to minimise the risk to existing
-software, this rule does not apply to Mappings that have not yet been
-included in other objects such as CmpMaps or FrameSets, or which have not
-yet been cloned. In other words, an error is reported if an attempt is
-made to change the nature of a Mapping's transformation, but only if the
-reference count of the Mapping is greater than one. The Mapping classes
-affected include: GrismMap, LutMap, PcdMap, SphMap, WcsMap and ZoomMap.
-
-
-Main Changes in V8.1.0
-----------------------
-
-- The configure script has a new option "--without-fortran" that allows
-AST to be built in situations where no Fortran compiler is available. The
-resulting library has no Fortran interface and so cannot be used within
-Fortran applications. Also, the link scripts do not attempt to include the
-fortran runtime libraries.
-
-Main Changes in V8.0.7
-----------------------
-
-- A bug in FitsChan has been fixed which could cause a small shift in
- spectral axis value when writing out a spectral cube to FITS-WCS headers,
- This shift occurred only if the celestial axes in the cube were not FK5
- (RA,Dec).
-
-- Avoid some more compiler warnings.
-
-- A "BadKeyValue" warning is now issued by the FitsChan class if an illegal
-FITS keyword value is encountered. See attribute "Warnings" and function
-"astWarnings".
-
-Main Changes in V8.0.6
-----------------------
-
-- Fix bug in FitsChan that caused SIP headers to be treated as linear
-when creating a FrameSet from the headers.
-
-- Fix bug in LutMap that incorrectly allowed an inverse lutmap to be used
-even if the original LutMap was not monotonic.
-
-- Allow attributes to be set for each plane of a Plot3D.
-
-- Avoid some compiler warnings.
-
-Main Changes in V8.0.5
-----------------------
-
-- The SkyFrame class has a new attribute called SkyTol, which specifies
-the smallest significant distance within the SkyFrame. It is used to
-decide if the Mapping between two SkyFrames can be considered a unit
-transformation. The default value is 0.001 arc-seconds.
-
-- A bug has been fixed in the FitsChan class that prevented illegal
-characters within FITS keyword names (i.e. characters not allowed by the
-FITS standard) being detected. This bug could under some circumstances
-cause a subsequent segmentation violation to occur.
-
-- A "BadKeyName" warning is now issued by the FitsChan class if a FITS
-keyword name is encountered that contains any illegal characters. See
-attribute "Warnings" and function "astWarnings".
-
-Main Changes in V8.0.4
-----------------------
-
-- The behaviour of the astAddFrame method has been changed slightly.
-Previously, astAddFrame modified the FrameSet by storing references to
-the supplied Mapping and Frame objects within the FrameSet. This meant
-that any subsequent changes to the current Frame of the modified FrameSet
-also affected the supplied Frame object. Now, astAddFrame stores deep
-copies of the Mapping and Frame objects (rather than references) within
-the modified FrameSet. This means that subsequent changes to the modified
-FrameSet will now have no effect on the supplied Frame.
-
-- The choice of default tick-mark for time axes has been improved, to avoid
-previous issues which could result in no suitable gap being found, or
-inappropriate tick marks when using formatted dates.
-
-- A new method called astRegionOutline has been added to the Plot class.
-It draws the outline of a supplied AST Region.
-
-- A bug has been fixed that could cause astSimplfy to enter an infinite loop.
-
-- Some improvements have been made to the Mapping simplification process
-that allow more Mappings to be simplified.
-
-- The Frame class has a new read-only attribute called "InternalUnit",
-which gives the units used for the unformatted (i.e. floating-point) axis
-values used internally by application code. For most Frames, the
-InternalUnit value is just the same as the Unit value (i.e. formatted and
-unformatted axis values use the same units). However, the SkyFrame class
-always returns "rad" for InternalUnit, regardless of the value of Unit,
-indicating that floating-point SkyFrame axis values are always in units
-of radians.
-
-- The LutMap class has a new attribute called LutEpsilon, which specifies
-the relative error of the values in the table. It is used to decide if
-the LutMap can be simplified to a straight line.
-
-
-Main Changes in V8.0.3
-----------------------
-
-- Methods astRebin, astRebinSeq, astResample and astTranGrid now report an
-error if an array is specified that has more pixels than can be counted by
-a 32 bit integer.
-
-- The hypertext documentation is now generated using Tex4HT rather
-than latex2html. The format of the hypertext docs has changed
-significantly.
-
-- Another bug fix associated with reading CAR projections from FITS-WCS headers.
-
-- Constructor options strings of the form "..., "%s", text );" can now be
-supplied. This avoids a security issue associated with the alternative
-form "..., text );".
-
-
-Main Changes in V8.0.2
-----------------------
-
-- For security reasons, the change introduced to astAppendString in
- V8.0.1 has been moved to a new function called astAppendStringf, and
- astAppendString itself has been reverted to its V8.0.0 version.
-
-
-Main Changes in V8.0.1
-----------------------
-
-- The macro used to invoke the astAppendString utility function has
- changed to allow printf-style converstions to be included in the
- supplied text. Any code that uses this macro must be re-compiled.
-
-- The astRebin and astRebinSeq family of functions now include support
- for arrays with char (byte) and unsigned char (unsigned byte) data types.
-
-- The Base and Current attributes of a FrameSet may now be set using the
- Domain name or the index of the required Frame.
-
-- The FITS XPH projection is now supported.
-
-- The order of WCS axes within new FITS-WCS headers created by astWrite
- can now be controlled using a new attribute called FitsAxisOrder.
-
-Main Changes in V8.0.0
-----------------------
-
-- AST is now distributed under the Lesser GPL licence.
-
-- Least squares fitting of N-dimensional polynomials is now done using
-files copied from the C/C++ Minpack package (see
-http://devernay.free.fr/hacks/cminpack/index.html).
-
-- Use of the IAU SOFA library has been replaced by ERFA library, which is
-a re-badged copy of SOFA distributed under a less restrictive license. A
-copy of ERFA is included within AST.
-
-Main Changes in V7.3.4
-----------------------
-
-- By default, the simplification of Polygons no longer checks that the
-edges are not bent by the simplification. A new attribute, SimpVertices,
-can be set to zero in order to re-instate this check.
-
-- The Polygon class has a new mathod, astConvex, that returns a Polygon
-representing the shortest polygon (i.e. convex hull) enclosing a
-specified set of pixel values within a supplied array.
-
-Main Changes in V7.3.3
-----------------------
-
-- The FitsChan class has new attributes CardName and CardComm, which hold
-the keyword name and comment of the current card.
-
-- When reading FITS-WCS headers that include polynomial distortion in the
-SIP format, any inverse transformation specified in the header is now
-ignored and a new inverse is created to replace it based on the supplied
-forward transformation. Previously, an inverse was created only if the
-header did not include an inverse. The accuracy of the inverse
-transformation has also been improved, although it may now be slower to
-evaluate in some circumstances.
-
-- A bug has been fixed that could over-write the FitsChan CarLin attribute
-with a non-zero value if the header contains a spectral axis.
-
-- The default options for each newly created FitsChan can now be
-specified via the environment variable FITSCHAN_OPTIONS.
-
-Main Changes in V7.3.2
-----------------------
-
-- Fix support for reading GLS projections from FITS headers.
-
-- The KeyMap class has new sorting options "KeyAgeUp" and "KeyAgeDown" that
-retain the position of an existing entry if its value is changed. See the
-SortBy attribute.
-
-- A bug has been fixed in FitsChan that caused CDELT keywords for sky
-axes to be treated as radians rather than degrees when reading a FITS
-header, if the corresponding CTYPE values included no projection code.
-
-
-Main Changes in V7.3.1
-----------------------
-
-- Fix bug that could cause a segmenatation fault when reading a FITS TNX
-header.
-
-Main Changes in V7.3.0
-----------------------
-
-- IMPORTANT! The interface for the astRebinSeq<X> (AST_REBINSEQ) family
-of functions has been changed in order to allow a greater number of
-pixels to be pasted into the output array. In C, the "nused" parameter
-is now a pointer to a "int64_t" variable, instead of a simple "int". In
-Fortran, the NUSED argument for AST_REBINSEQ<X> is now an INTEGER*8.
-
-APPLICATION CODE SHOULD BE CHANGED ACCORDINGLY TO AVOID SEGMENTATION
-FAULTS AND OTHER ERRATIC BEHAVIOUR.
-
-- Added a new facility to the FrameSet class to allow each Frame to be
-associated with multiple Mappings, any one of which can be used to
-connect the Frame to the other Frames in the FrameSet. The choice of
-which Mapping to use is controlled by the new "Variant" attribute of the
-FrameSet class.
-
-- Mappings (but not Frames) that have a value set for their Ident attribute
-are now left unchanged by the astSimplify (AST_SIMPLIFY) function.
-
-Main Changes in V7.2.0
-----------------------
-
-- A new method call astMapDefined has been added to the KeyMap class.
-It checks if a gtiven key name has a defined value in a given KeyMap.
-
-
-Main Changes in V7.1.1
-----------------------
-
-- A bug has been fixed in FitsChan that caused inappropriate CTYPE values
-to be generated when writing a FrameSet to FITS-WCS headers if the
-current Frame describes generalised spherical coordinates (i.e. a
-SkyFrame with System=Unknown).
-
-- When a FitsChan is used to write an "offset" SkyFrame (see attribute
-SkyRefIs) to a FITS-WCS encoded header, two alternate axis descriptions
-are now created - one for the offset coordinates and one for the absolute
-coordinates. If such a header is subsequently read back into AST, the
-original offset SkyFrame is recreated.
-
-
-Main Changes in V7.1.0
-----------------------
-
-- IMPORTANT! The default behaviour of astRebinSeq is now NOT to conserve
-flux. To conserve flux, the AST__CONSERVEFLUX flag should be supplied
-when calling astRebinSeq. Without this flag, each output value is a
-weighted mean of the neighbouring input values.
-
-- A new flag AST__NONORM can be used with astRebinSeq<X> to indicate that
-normalisation of the output arrays is not required. In this case no
-weights array need be supplied.
-
-- A bug has been fixed in astAddFrame (AST_ADDFRAME) method that could
-result in the incorrect inversion of Mappings within the FrameSet when
-the AST__ALLFRAMES flag is supplied for the "iframe" parameter.
-
-- The astRate method has been re-written to make it faster and more
-reliable.
-
-Main Changes in V7.0.6
-----------------------
-
-- A bug has been fixed in astRebinSeq<X> which could result in
-incorrect normalisation of the final binned data and variance values.
-
-- When reading a FrameSet from a FITS-DSS header, the keywords CNPIX1 and
-CNPIX2 now default to zero if absent. Previously an error was reported.
-
-Main Changes in V7.0.5
-----------------------
-
-- The FitsChan class can now read FITS headers that use the SAO
-convention for representing distorted TAN projections, based on the use
-of "COi_j" keywords to hold the coefficients of the distortion polynomial.
-
-
-Main Changes in V7.0.4
-----------------------
-
-- The previously private grf3d.h header file is now installed into
-prefix/include.
-
-
-Main Changes in V7.0.3
-----------------------
-
-- A bug has been fixed which could cause an incorrect axis to be used when
-accessing axis attributes within CmpFrames. This could happen if axes
-within the CmpFrame have been permuted.
-
-- A bug has been fixed in the SkyFrame class that could cause the two
-values of the SkyRef and/or SkyRefP attributes to be reversed.
-
-- Bugs have been fixed in the CmpRegion class that should allow the border
-around a compound Region to be plotted more quickly, and more accurately.
-Previously, component Regions nested deeply inside a CmpRegion may have
-been completely or partially ignored.
-
-- A bug has been fixed in the Plot3D class that caused a segmentation
-violation if the MinTick attribute was set to zero.
-
-- The astResampleX set of methods now includes astResampleK and
-astResampleUK that handles 64 bit integer data.
-
-Main Changes in V7.0.2
-----------------------
-
-- The libast_pal library is no longer built if the "--with-external_pal"
-option is used when AST is configured.
-
-
-Main Changes in V7.0.1
-----------------------
-
-- The levmar and wcslib code distributed within AST is now stored in the
-main AST library (libast.so) rather than in separate libraries.
-
-
-Main Changes in V7.0.0
-----------------------
-
-- Fundamental positional astronomy calculations are now performed
-using the IAU SOFA library where possible, and the Starlink PAL library
-otherwise (the PAL library contains a subset of the Fortran Starlink SLALIB
-library re-written in C). Copies of these libraries are bundled with AST
-and so do not need to be obtained or built separately, although external
-copies of SOFA and PAL can be used if necessary by including the
-"--with-external_pal" option when configuring AST.
-
-
-Main Changes in V6.0-1
------------------------
-
-- The Spitzer "-SIP" distortion code is now recognised within FITS
-headers that describe non-celestial axes, as well as celestial axes.
-
-- A bug has been fixed that could cause inappropriate equinox values to
-be used when aligning SkyFrames if the AlignSystem attribute is set.
-
-- The format of the version string for AST has changed from
-"<major>.<minor>-<release>" to "<major>.<minor>.<release>".
-
-Main Changes in V6.0
------------------------
-
-- This version of AST is the first that can be used with the Python
-AST wrapper module, starlink.Ast, available at http://github.com/timj/starlink-pyast.
-
-- When reading a FITS-WCS header, the FitsChan class now recognises the
-non-standard "TPV" projection code within a CTYPE keyword value. This
-code is used by SCAMP (see www.astromatic.net/software/scamp) to
-represent a distorted TAN projection.
-
-- The Plot class has been changed to remove visual anomalies (such as
-incorrectly rotated numerical axis labels) if the graphics coordinates have
-unequal scales on the X and Y axes.
-
-- The graphics escape sequences used to produce graphical sky axis labels
-can now be changed using the new function astTuneC (AST_TUNEC).
-
-Main Changes in V5.7-2
------------------------
-
-- The PolyMap class can now use an iterative Newton-Raphson method to
-evaluate the inverse the inverse transformation if no inverse
-transformation is defined when the PolyMap is created.
-
-- The FitsChan class has a new method astWriteFits (AST_WRITEFITS)
-which writes out all cards currently in the FitsChan to the associated
-external data sink (specified either by the SinkFile attribute or the
-sink function supplied when the FitsChan was created), and then empties
-the FitsChan.
-
-- The FitsChan class has a new method astReadFits (AST_READFITS)
-which forces the FitsChan to reads cards from the associated external
-source and appends them to the end of the FitsChan.
-
-- The FitsChan class has a new read-only attribute called "Nkey", which
-holds the number of keywords for which values are held in a FitsChan.
-
-- The FitsChan class has a new read-only attribute called "CardType", which
-holds the data type of the keyword value for the current card.
-
-- The FitsChan astGetFits<X> (AST_GETFITS<X>) methods can now be used to
-returned the value of the current card.
-
-- If the FitsChan astRead method reads a FITS header that uses the
--SIP (Spitzer) distortion code within the CTYPE values, but which does
-not provide an inverse polynomial correction, and for which the PolyTran
-method of the PolyMap class fails to create an accurate estimate of the
-inverse polynomial correction, then an iterative method will be used to
-evaluate the inverse correction for each point transformed.
-
-- The Object class has a new function astToString (C only), which creates
-an in-memory textual serialisation of a given AST Object. A corresponding
-new function called astFromString re-creates the Object from its
-serialisation.
-
-
-Main Changes in V5.7-1
------------------------
-
-- All classes of Channel can now read to and write from specified text
-files, without the need to provide source and sink functions when the
-Channel is created. The files to use are specified by the new attributes
-SourceFile and SinkFile.
-
-- The FitsChan class now ignores trailing spaces in character-valued WCS
-keywords when reading a FrameSet from a FITS header.
-
-- If the FitsChan astRead method reads a FITS header that uses the -SIP
-(Spitzer) distortion code within the CTYPE values, but which does not
-provide an inverse polynomial correction, the FitsChan class will now use
-the PolyTran method of the PolyMap class to create an estimate of the
-inverse polynomial correction.
-
-
-
-Main Changes in V5.7-0
------------------------
-
-- The FitsChan class support for the IRAF-specific "TNX" projection has
-been extended to include reading TNX headers that use a Chebyshev
-representation for the distortion polynomial.
-
-- The FitsChan class support for the IRAF-specific "ZPX" projection has
-been extended to include reading ZPX headers that use simple or Chebyshev
-representation for the distortion polynomial.
-
-- A bug has been fixed in the FitsChan class that caused headers
-including the Spitzer "-SIP" distortion code to be read incorrectly if no
-inverse polynomial was specified in the header.
-
-- A new attribute called PolyTan has been added to the FitsChan class. It
-can be used to indicate that FITS headers that specify a TAN projection
-should be interpreted according to the "distorted TAN" convention
-included in an early draft of FITS-WCS paper II. Such headers are created
-by (for instance) the SCAMP tool (http://www.astromatic.net/software/scamp).
-
-- The PolyMap class now provides a method called astPolyTran (AST_POLYTRAN)
-that adds an inverse transformation to a PolyMap by sampling the forward
-transformation on a regular grid, and then fitting a polynomial function
-from the resulting output values to the grid of input values.
-
-
-Main Changes in V5.6-1
------------------------
-
-- Tables can now have any number of parameters describing the global
-properties of the Table.
-
-- Frames now interpret the unit string "A" as meaning "Ampere" rather
-than "Angstrom", as specified by FITS-WCS paper I.
-
-- A bug has been fixed in the astFindFrame (AST_FINDFRAME) method that
-allowed a template Frame of a more specialised class to match a target
-frame of a less specialised class. For example, this bug would allow a
-template SkyFrame to match a target Frame. This no longer happens.
-
-
-Main Changes in V5.6-0
------------------------
-
-- New functions astBBuf (AST_BBUF) and astEBuf (AST_EBUF) have been added
-to the Plot class. These control the buffering of graphical output
-produced by other Plot methods.
-
-- New functions astGBBuf and astGEBuf have been added to the interface
-defined by file grf.h. The ast_link command has been modified so that the
--grf_v3.2 switch loads dummy versions of the new grf functions. This
-means that applications that use the -grf_v3.2 switch should continue to
-build without any change. However, the new public functions astBBuf and
-astEBuf described in the previous item will report an error unless the
-new grf functions are implemented. If you choose to implement them, you
-should modify your linking procedure to use the -grf (or -grf_v5.6)
-switch in place of the older -grf_v3.2 switch. See the description of the
-ast_link command for details of these switches.
-
-- New method astGetRegionMesh (AST_GETREGIONMESH) returns a set of
-positions covering the boundary, or volume, of a supplied Region.
-
-Main Changes in V5.5-0
------------------------
-
-- The FitsChan "TabOK" attribute is now an integer value rather
-than a boolean value. As in previous versions, it is used to indicate
-whether the "-TAB" algorithm should be supported by the astRead
-(AST_READ) and astWrite (AST_WRITE) methods, but in addition it is now
-also used to give the version number to assign to any table gebnerated as
-a consequence of calling astWrite (AST_WRITE). A negative or zero value
-(the default) indicates that support for the -TAB algorithm is not
-available, where as a positive non-zero value indicates that support is
-available and also gives the table version number to use when creating
-subsequent -TAB headers.
-
-
-Main Changes in V5.4-0
------------------------
-
-- The FitsChan class now has an option to support reading and writing
-of FITS-WCS headers that use the -TAB algorithm described in FITS-WCS paper
-III. This option is controlled by a new FitsChan attribute called TabOK.
-See the documentation for TabOK for more information.
-
-- A new class called "Table" has been added. A Table is a KeyMap in
-which each entry represents a cell in a two-dimensional table.
-
-- A new class called "FitsTable" has been added. A FitsTable is a
-Table that has an associated FitsChan holding headers appropriate to a
-FITS binary table.
-
-- KeyMaps can now hold byte (i.e. "unsigned char" or BYTE) values.
-
-- A new method called astMapRename (AST_MAPRENAME) has been added to rename
-an existing entry in a KeyMap.
-
-- KeyMaps have a new attribute called KeyCase that can be set to zero to
-make the handling of keys case insensitive.
-
-Main Changes in V5.3-2
------------------------
-
-- A bug has been fixed in the FitsChan class that could cause wavelength
-axes to be assigned the units "m/s" when reading WCS information from a
-FITS header.
-
-- The astSet function (AST_SET) now allows literal commas to be included in
-string attribute values. String attribute values that include a literal
-comma should be enclosed in quotation marks.
-
-- A bug in FitsChan has been fixed that caused "-SIN" projection codes within
-FITS-WCS headers to be mis-interpreted, resulting in no FrameSet being
-read by astRead.
-
-- The KeyMap class has a new attribute called "SortBy". It controls
-the order in which keys are returned by the astMapKey (AST_MAPKEY) function.
-Keys can be sorted alphabetically or by age, or left unsorted.
-
-- Access to KeyMaps holding thousands of entries is now significantly
-faster.
-
-- KeyMaps can now hold word (i.e. "short int" or INTEGER*2) values.
-
-Main Changes in V5.3-1
------------------------
-
-- The KeyMap class has a new method called astMapCopy/AST_MAPCOPY that
-copies entries from one KeyMap to another KeyMap.
-
-- The KeyMap class now supports entries that have undefined values. A
-new method called astMapPutU/AST_MAPPUTU will store an entry with undefined
-value in a keymap.
-
-- The KeyMap class has a new boolean attribute called MapLocked. If true
-(non-zero), an error is reported if an attempt is made to add any new entries
-to a KeyMap (the value associated with any old entry may still be changed #
-without error). The default is false (zero).
-
-- The Object class has a new method called astHasAttribute/AST_HASATTRIBUTE
-that returns a boolean value indicating if a specified Object has a named
-attribute.
-
-- The SkyFrame class has two new read-only boolean attributes called
-IsLatAxis and IsLonAxis that can be used to determine the nature of a
-specified SkyFrame axis.
-
-- A bug has been fixed in the astRebin(Seq)/AST_REBIN(SEQ) methods
-that could cause flux to be lost from the edges of the supplied array.
-
-- A bug has been fixed in the astRebin(Seq)/AST_REBIN(SEQ) methods
-that caused the first user supplied parameter to be interpreted as the
-full width of the spreading kernel, rather than the half-width.
-
-- The StcsChan class now ignores case when reading STC-S phrases (except
-that units strings are still case sensitive).
-
-- The Channel class now has an Indent attribute that controls indentation
-in the text created by astWrite/AST_WRITE. The StcsIndent and XmlIndent
-attributes have been removed.
-
-- All classes of Channel now use the string "<bad>" to represent the
-floating point value AST__BAD, rather than the literal formatted value
-(typically "-1.79769313486232e+308" ).
-
-- The KeyMap class now uses the string "<bad>" to represent the
-floating point value AST__BAD, rather than the literal formatted value
-(typically "-1.79769313486232e+308" ).
-
-- The KeyMap class has a new method called astMapPutElem<X>/AST_MAPPUTELEM<X>
-that allows a value to be put into a single element of a vector entry in
-a KeyMap. The vector entry is extended automatically to hold the new
-element if required.
-
-- The DSBSpecFrame class now reports an error if the local oscillator
-frequency is less than the absoliute value of the intermediate frequency.
-
-- A new method astQuadApprox produces a quadratic fit to a 2D Mapping.
-
-- A new method astSkyOffsetMap produces a Mapping from absolute SkyFrame
-coordinates to offset SkyFrame coordinates.
-
-
-Main Changes in Version 5.3
----------------------------
-
-- The details of how a Frame is aligned with another Frame by the
-astFindFrame and astConvert (AST_FINDFRAME and AST_CONVERT) functions
-have been changed. The changes mean that a Frame can now be aligned with
-an instance of a sub-class of Frame, so long as the number of axes and
-the Domain values are consistent. For instance, a basic 2-dimensional
-Frame with Domain "SKY" will now align succesfully with a SkyFrame,
-conversion between the two Frames being achieved using a UnitMap.
-
-- The arrays that supply input values to astMapPut1<X> are now declared
-"const".
-
-- Added method astMatchAxes (AST_MATCHAXES) to the Frame class. This
-allows corresponding axes in two Frames to be identified.
-
-- The astAddFrame (AST_ADDFRAME) method can now be used to append one or
-more axes to all Frames in a FrameSet.
-
-
-Main Changes in Version 5.1
----------------------------
-
-- A new method called astSetFitsCM (AST_SETFITSCM) has been added to
-the FitsChan class. It stores a pure comment card in a FitsChan (that
-is, a card with no keyword name or equals sign).
-
-- A new attribute called ObsAlt has been added to the Frame class. It
-records the geodetic altitude of the observer, in metres. It defaults to
-zero. It is used when converting times to or from the TDB timescale, or
-converting spectral positions to or from the topocentric rest frame, or
-converting sky positions to or from horizon coordinates. The FitsChan
-class will include its effect when creating a set of values for the
-OBSGEO-X/Y/Z keywords, and will also assign a value to it when reading a
-set of OBSGEO-X/Y/Z keyword values from a FITS header.
-
-- The TimeMap conversions "TTTOTDB" and "TDBTOTT", and the SpecMap
-conversions "TPF2HL" and "HLF2TP", now have an additional argument -
-the observer's geodetic altitude.
-
-- The Polygon class has been modified to make it consistent with the
-IVOA STC definition of a Polygon. Specifically, the inside of a polygon
-is now the area to the left of each edge as the vertices are traversed in
-an anti-clockwise manner, as seen from the inside of the celestial sphere.
-Previously, AST used the anti-clockwise convention, but viewed from the
-outside of the celestial sphere instead of the inside. Any Polygon saved
-using previous versions of AST will be identified and negated automatically
-when read by AST V5.2.
-
-- A new class of Channel, called StcsChan, has been added that allows
-conversion of suitable AST Objects to and from IVOA STC-S format.
-
-- A new method called astDownsize (AST_DOWNSIZE) has been added to the
-Polygon class. It produces a new Polygon that contains a subset of the
-vertices in the supplied Polygon. The subset is chosen to retain the main
-features of the supplied Polygion, in so far as that is possible, within
-specified constraints.
-
-- A new constructor called astOutline (AST_OUTLINE) has been added to the
-Polygon class. Given a 2D data array, it identifies the boundary of a
-region within the array that holds pixels with specified values. It then
-creates a new Polygon to describe this boundary to a specified accuracy.
-
-- A new method called astRemoveRegions (AST_REMOVEREGIONS) has been added
-to the Mapping class. It removes the masking effects of any Regions found
-within a (possibly compound) Mapping or Frame. In effect, it replaces
-each Region found within the Mapping or Frame with a UnitMap or
-equivalent Frame.
-
-- A new set of methods, called astMapGetElem<X> (AST_MAPGETELEM<X>) has
-been added to the KeyMap class. They allow a single element of a vector
-valued entry to be returned.
-
-- A new attribute called KeyError has been added to the KeyMap Class. It
-controls whether the astMapGet... (AST_MAPGET...) family of functions report
-an error if an entry with the requested key does not exist in the KeyMap.
-
-Main Changes in Version 5.1
----------------------------
-
-- The astUnlock function now has an extra parameter that controls whether
-or not an error is reported if the Object is currently locked by another
-thread.
-
-- The values of the AST__THREADSAFE macro (defined in ast.h) have
-been changed from "yes" and "no" to "1" and "0".
-
-- The PointList class has a new method, astPoints, that copies the axis
-values from the PointList into a supplied array.
-
-- The PointList class has a new (read-only) attribute, ListSize, that
-gives the number of points stored in the PointList.
-
-- A new method (astIntersect) has been added to the Frame class. It
-determines the position at which two geodesic curves intersect.
-
-- The XmlStrict attribute and astXmlWarnings function have been removed.
-The same functionality is now available via the existing Strict attribute,
-a new attribute called ReportLevel, and a new function called astWarnings.
-
-- A bug in the type-checking of Objects passed as arguments to constructor
-functions has been fixed. This bug could lead to applications crashing or
-showing strange behaviour if an inappropriate class of Object was
-supplied as an argument to a constructor.
-
-- The astPickAxes function will now return a Region, if possible, when
-applied to a Region. If this is not possible, a Frame will be returned as
-before.
-
-- The default gap size between the ISO date/time labels used by the Plot
-class when displaying an annotated axis described by a TimeFrame has been
-changed. The changes are meant to improve the labelling of calendar time
-axes that span intervals from a day to a few years.
-
-Main Changes in Version 5.0
----------------------------
-
-- AST is now thread-safe. Many of the macro definitions in the "ast.h"
-header file have changed, and so all source code that include "ast.h"
-should be re-compiled.
-
-- The TimeFrame class now support Local Time as a time scale. The offset
-from UTC to Local Time is specified by a new TimeFrame attribute called
-LTOffset.
-
-- Addition of a new class called Plot3D that provides facilities for
-producing 3-dimensional annotated coordinate grids.
-
-- A correction for diurnal aberration is now included when
-converting between AZEL and other celestial coordinate systems. The
-correction is based on the value of the ObsLat Frame attribute (the
-geodetic latitude of the observer).
-
-- A bug has been fixed which caused the DUT1 attribute to be ignored
-by the SkyFrame class when finding conversions between AZEL and other
-celestial coordinate systems.
-
-- The Channel class has a new attribute called Strict which controls
-whether or not to report an error if unexpected data items are found
-within an AST Object description read from an external data source. Note,
-the default behaviour is now not to report such errors. This differs from
-previous versions of AST which always reported an error is unexpected
-input items were encountered.
-
-
-
-Main Changes in Version 4.5
----------------------------
-
-- All FITS-CLASS headers are now created with a frequency axis. If the
-FrameSet supplied to astWrite contains a velocity axis (or any other form
-of spectral axis) it will be converted to an equivalent frequency axis
-before being used to create the FITS-CLASS header.
-
-- The value stored in the FITS-CLASS keyword "VELO-LSR" has been changed
-from the velocity of the source to the velocity of the reference channel.
-
-- Addition of a new method call astPurgeWCS (AST_PURGEWCS) to the FitsChan
-class. This method removes all WCS-related header cards from a FitsChan.
-
-- The astRebinSeq functions now have an extra parameter that is used to
-record the total number of input data val;ues added into the output
-array. This is necessary to correct a flaw in the calculation of output
-variances based on the spread of input values. NOTE, THIS CHANGE WILL
-REQUIRE EXISTING CODE THAT USES ASTREBINSEQ TO BE MODIFIED TO INCLUDE THE
-NEW PARAMETER (CALLED "NUSED").
-- The Plot class now honours the value of the LabelUp attribute even if
-numerical labels are placed around the edge of the Plot. Previously
-LabelUp was only used if the labels were drawn within the interior of
-the plot. The LabelUp attribute controls whether numerical labels are
-drawn horizontally or parallel to the axis they describe.
-- The Plot class has a new attribute called GrfContext that can be used
-to comminicate context information between an application and any
-graphics functions registered with the Plot class via the astGrfSet
-(AST_GRFSET) function.
-- Functions registered with the Plot class using astGrfSet (AST_GRFSET)
-now take a new additional integer parameter, "grfcon". The Plot class
-sets this parameter to value of the Plot's GrfContext attribute before
-calling the graphics function. NOTE, THIS CHANGE WILL REQUIRE EXISTING
-CODE THAT USES astGrfSet (AST_GRFSET) TO BE MODIFIED TO INCLUDE THE
-NEW PARAMETER.
-- Support has been added for the FITS-WCS "HPX" projection (HEALPix).
-- A new flag "AST__VARWGT" can be supplied to astRebinSeq. This causes
-the input data values to be weighted using the reciprocals of the input
-variances (if supplied).
-- The Frame class has a new read-only attribute called NormUnit that
-returns the normalised value of the Unit attribute for an axis. Here,
-"normalisation" means cancelling redundant units, etc. So for instance, a
-Unit value of "s*(m/s)" would result in a NormUnit value of "m".
-- A new method astShowMesh has been added to the Region class. It
-displays a mesh of points covering the surface of a Region by writing out
-a table of axis values to standard output.
-- A bug has been fixed that could segmentation violations when setting
-attribute values.
-
-Main Changes in Version 4.4
----------------------------
-
-- The astFindFrame (AST_FINDFRAME) method can now be used to search a
-CmpFrame for an instance of a more specialised class of Frame (SkyFrame,
-TimeFrame, SpecFrame, DSBSpecFrame or FluxFrame). That is, if an instance
-of one of these classes is used as the "template" when calling
-astFindFrame, and the "target" being searched is a CmpFrame (or a
-FrameSet in which the current Frame is a CmpFrame), then the component
-Frames within the CmpFrame will be searched for an instance of the
-supplied template Frame, and, if found, a suitable Mapping (which will
-include a PermMap to select the required axes from the CmpFrame) will be
-returned by astFindFrame. Note, for this to work, the MaxAxes and MinAxes
-attributes of the template Frame must be set so that they cover a range
-that includes the number of axes in the target CmpFrame.
-
-- The DSBSpecFrame class has a new attribute called AlignSB that
-specifies whether or not to take account of the SideBand attributes when
-aligning two DSBSpecFrames using astConvert (AST_CONVERT).
-
-- The Frame class has a new attribute called Dut1 that can be used to
-store a value for the difference between the UT1 and UTC timescales at
-the epoch referred to by the Frame.
-
-- The number of digits used to format the Frame attributes ObsLat and
-ObsLon has been increased.
-
-- The use of the SkyFrame attribute AlignOffset has been changed. This
-attribute is used to control how two SkyFrames are aligned by astConvert.
-If the template and target SkyFrames both have a non-zero value for
-AlignOffset, then alignment occurs within the offset coordinate systems
-(that is, a UnitMap will always be used to align the two SkyFrames).
-
-- The Plot class has a new attribute called ForceExterior that can be
-used to force exterior (rather than interior) tick marks to be produced,
-even if this would result in less than 3 tick marks being produced.
-
-- The TimeFrame class now supports conversion between angle based
-timescales such as UT1 and atomic based timescales such as UTC.
-
-
-Main Changes in Version 4.3
----------------------------
-
-- The SpecFrame class has a new attribute called SourceSys that specified
-whether the SourceVel attribute (which specifies the rest frame of the
-source) should be accessed as an apparent radial velocity or a redshift.
-Note, any existing software that assumes that SourceVel always represents
-a velocity in km/s should be changed to allow for the possibility of
-SourceVel representing a redshift value.
-
-- The astGetFitsS (AST_GETFITSS) function now strips trailing white space
-from the returned string, if the original string contains 8 or fewer
-characters.
-
-
-Main Changes in Version 4.2
----------------------------
-
-- The SideBand attribute of the DSBSpecFrame class can now take the
-option "LO" in addition to "USB" and "LSB". The new option causes the
-DSBSpecFrame to represent the offset from the local oscillator frequency,
-rather than either of the two sidebands.
-
-- The FitsChan class has been changed so that it writes out a VELOSYS
-keyword when creating a FITS-WCS encoding (VELOSYS indicates the
-topocentric apparent velocity of the standard of rest). FitsChan also
-strips out VELOSYS keywords when reading a FrameSet from a FITS-WCS
-encoding.
-
-- The FitsChan class has a new method called astRetainFits (AST_RETAINFITS)
-that indicates that the current card in the FitsChan should not be
-stripped out of the FitsChan when an AST Object is read from the FitsChan.
-Unless this method is used, all cards that were involved in the creation
-of the AST Object will be stripped from the FitsChan afte a read operation.
-
-- The ast_link_adam and ast_link scripts now ignore the -fsla and -csla
-options, and always link against the minimal cut-down version of SLALIB
-distributed as part of AST.
-
-- A problem with unaligned memory access that could cause bus errors on
-Solaris has been fixed.
-
-- A new function called astTune (or AST_TUNE) has been added which can be
-used to get and set global AST tuning parameters. At the moment there are
-only two such parameter, both of which are concerned with memory management
-within AST.
-
-- A new method called astTranGrid (AST_TRANGRID in Fortran) has been
-added to the Mapping class. This method creates a regular grid of points
-covering a rectangular region within the input space of a Mapping, and
-then transforms this set of points into the output space of the Mapping,
-using a piecewise-continuous linear approximation to the Mapping if
-appropriate in order to achive higher speed.
-
-- A new subclass of Mapping has been added called SwitchMap. A
-SwitchMap represents several alternate Mappings, each of which is used to
-transforms input positions within a different region of the input
-coordinate space.
-
-- A new subclass of Mapping has been added called SelectorMap. A
-SelectorMap tests each input position to see if it falls within one of
-several Regions. If it does, the index of the Region containing the
-input position is returned as the Mapping output.
-
-- The behaviour of the astConvert (AST_CONVERT) method when trying to
-align a CmpFrame with another Frame has been modified. If no conversion
-between positions in the Frame and CmpFrame can be found, an attempt is
-now made to find a conversion between the Frame and one of two component
-Frames contained within the CmpFrame. Thus is should now be possible to
-align a SkyFrame with a CmpFrame containing a SkyFrame and a SpecFrame
-(for instance). The returned Mapping produces bad values for the extra
-axes (i.e. for the SpecFrame axis in the above example).
-
-Main Changes in Version 4.1
----------------------------
-
-- A new control flag has been added to the AST_RESAMPLE<X>/astResample<X>
-functions which produces approximate flux conservation.
-
-- The SkyFrame class now supports a System value of "AZEL" corresponding
-to horizon (azimuth/elevation) coordinates.
-
-- The FitsChan class allows the non-standard strings "AZ--" and "EL--" to
-be used as axis types in FITS-WCS CTYPE keyword values.
-
-- The Frame class now has attributes ObsLon and ObsLat to specify
-the geodetic longitude and latitude of the observer.
-
-- The ClockLon and ClockLat attributes have been removed from the
-TimeFrame class. Likewise, the GeoLon and GeoLat attributes have been
-removed from the SpecFrame class. Both classes now use the ObsLon and
-ObsLat attributes of the parent Frame class instead. However, the old
-attribute names can be used as synonyms for ObsLat and ObsLon. Also,
-dumps created using the old scheme can be read succesfully by AST V4.1
-and converted to the new form.
-
-- A new function astMapSplit has been added to the Mapping class. This
-splits a Mapping into two component Mappings which, when combined in
-parallel, are equivalent to the original Mapping.
-
-- The default value for the SkyRefIs attribute has been changed from
-"Origin" to "Ignored". This means that if you want to use a SkyFrame
-to represent offsets from some origin position, you must now set the
-SkyRefIs attribute explicitly to either "Pole" or "Origin", in addition
-to assigning the required origin position to the SkyRef attribute.
-
-
-Main Changes in Version 4.0
----------------------------
-
-- Experimental support for reading IVOA Space-Time-Coordinates (STC)
-descriptions using the XmlChan class has been added. Support is included
-for a subset of V1.20 of the draft STC specification.
-
-- A new set of methods (AST_REBIN<X>/astRebin<X>) has been added to
-the Mapping class. These are accurately flux-conserving alternatives to the
-existing AST_RESAMPLE<X>/astResample<X> methods.
-
-
-Main Changes in Version 3.7
----------------------------
-
-- Support for time coordinate systems has been introduced throught the
-addition of two new classes, TimeFrame and TimeMap. The TimeFrame is a
-1-dimensional Frame which can be used to describe moments in time (either
-absolute or relative) in various systems (MJD, Julian Epoch, etc.) and
-referred to various time scales (TAI, UTC, UT1, GMST, etc). The TimeMap
-is a Mapping which can transform time values between these various
-systems and time scales.
-
-
-Main Changes in Version 3.6
----------------------------
-
-- If the Format attribute associated with an axis of a SkyFrame starts
-with a percent character (%), then axis values are now formatted and
-unformatted as a decimal radians value, using the Format syntax of a
-simple Frame.
-
-- The Plot class has a new attribute called Clip which controls the
-clipping performed by AST at the plot boundary.
-
-- The PolyMap class has been modified to allow a PolyMap to be written
-succesfully to a FitsChan using Native encoding.
-
-- A mimimal cut down subset of the C version of SLALIB is now included
-with the AST distribution and built as part of building AST. This means
-that it is no longer necessary to have SLALIB installed separately at
-your site. The SLALIB code included with AST is distrubuted under the
-GPL. The default behaviour of the ast_link script is now to link with
-this internal slalib subset. However, the ``-csla'' option can still be
-used to force linking with an external full C SLALIB library. A new
-option ``-fsla'' has been introduced which forces linking with the
-external full Fortran SLALIB library.
-
-
-Main Changes in Version 3.5
----------------------------
-
-- AST now provides facilities for representing regions of various
-shapes within a coordinate system. The Region class provides general
-facilities which are independent of the specific shape of region being
-used. Various sub-classes of Region are also now available which provide
-means of creating Regions of specific shape. Facilities provided by the
-Region class include testing points to see if they are inside the
-Region, testing two Regions for overlap, transforming Regions from one
-coordinate system to another, etc.
-
-- A new class of 1-dimensional Frame called FluxFrame has been added which
-can be used to describe various systems for describing ovserved value at a
-single fixed spectral position.
-
-- A new class of 2-dimensional Frame called SpecFluxFrame has been added which
-can be used to describe a 2-d frame spanned by a spectral position axis
-and and an observed value axis.
-
-- A new class of Mapping called RateMap has been added. A RateMap encapsulates
-a previously created Mapping. The inputs of the RateMap correspond to the
-inputs of the encapsulated Mapping. All RateMaps have just a single
-output which correspond to the rate of change of a specified output of
-the encapsulated Mapping with respect to a specified input.
-
-- The SkyFrame class now supports a value of "J2000" for System. This
-system is an equatorial system based on the mean dynamical equator and
-equinox at J2000, and differs slightly from an FK5(J2000) system.
-
-- Methods have been added to the FitsChan class to allow values for named
-keywords to be changed or added.
-
-- The parameter list for the astRate method of the Mapping class has been
-modified. It no longer returns a second derivative estimate. Existing
-code which uses the astRate (AST_RATE) method will need to be changed.