Starlink Software Collection - Nanahope Release Notes
Highlighted Changes
- GAIA can now visualise 2-D and 3-D clumps created by the CUPID package.
- GAIA now has full support for the Virtual Observatory and has been modified to support the SAMP protocol to enable it to communicate with other VO tools.
- Automated provenance propagation can now track HISTORY information in addition to provenance. The PROVSHOW command can now list the history of all of the parents in the processing history. HISLIST (and NDF history propagation) has not been changed and still only examines the history of a single path through the processing.
- The software can now be built with gfortran 4.4.
Software Deprecations
- The NBS (Notice Board System) library will be removed from the distribution following this release. It has never worked on 64-bit systems. Please let us know if this will cause problems. The code will still be available but will not be built by default. Associated TCL and Perl interfaces will also be removed.
- The PERIOD application has been found to have problems in some usage patterns relating to the use of dynamic memory allocation. These appeared in release of v5.0 in 2001. The JAC do not have any resources for fixing this problem and volunteers would be appreciated if you have a desire to keep this program running.
- This will be the last release for OS X on PPC CPUs and for OS X 10.4. The next release will use Leopard.
- This will be the last release using Java 1.5. The next release will require Java 1.6.
Changes to Applications
ATOOLS
- Add ASTNEGATE, ASTREMOVEREGION, ASTDOWNSIZE, ASTOUTLINE, ASTRATE and ASTOVERLAP commands.
- Now behaves as expected when loading a .txt file after CONVERT has been initialised. Previously, convert intercepted the .txt file and attempted to convert it to NDF. (the fix for this was in the KAPLIBS library).
CCDPACK
- A memory handling bug in ccdwish has been fixed. This effected many of the UI applications, like PAIRNDF, CCDALIGN etc.
CONVERT
- Problems with the package startup scripts under the bash shell have been fixed.
CUPID
The FINDCLUMPS command has a new parameter called SHAPE that allows a textual description of the spatial extent of each clump to be added to the output catalogue. This description uses the IVOA "STC-S" format, and can either be in the form of an ellipse or a 15 vertex polygon. These shapes can be plotted using KAPPA:LISTSHOW or GAIA.
- The ILEVEL message level interface has been modified to match the MERS standard. Symbolic names can now be used in addition to integers. ALL will show all messages and NONE will disable all message output.
The description in SUN/255 of how to make the CUPID ClumpFind algorithm emulate the IDL ClumpFind algorithm has been corrected.
CURSA
- The remote catalogue configuration file is now installed locally. This restores the catremote command to working order.
FINDCOORDS
- Now uses the locally installed remote configuration file of CURSA and is restored to working order.
Figaro
- Bug fixes:
- ARC2D and LONGSLIT now correctly map spectral data. Previously these applications failed to run.
GAIA
The most significant changes in this release are the introduction of facilities for querying the Virtual Observatory for images and catalogues. These new query toolboxes are located in the Data-Analysis menu.
Other significant changes are the introduction of support for the visualisation of 2D and 3D clumps detected by the CUPID package, support for the VOTable catalogue format and various special other catalogue types created by the SMURF and KAPPA packages.
Catalogues with suitable descriptions (like those from SMURF and KAPPA) will now have their coordinate systems matched to that of the displayed image. For instance this means you can now query for catalogue positions in J2000 and plot over an image set to B1950 and vice versa.
Finally the GAIA has been updated to use the new SAMP protocol for interoperating with other desktop applications (TOPCAT, SPLAT etc). This replaces PLASTIC support, which has been removed.
- The mean angles reported by the select positions toolbox are now normalised as position angles. Previously they were just the arithmetic mean.
- New options in the spectral extraction window now forces the X and Y coordinates to be positive. This is useful when drawing the with log scaling.
- Several problems when determining the min/max values and percentile cuts displayed in the main window have been fixed.
- A bug in the pick object toolbox has been fixed. Previously if you opted for RA and Dec in degrees this setting would be ignored when zooming.
- Many changes to the XY profile toolbox have been made. This now displays the position along the X and Y axes (previously an offset was shown), along with the value and position of the peaks and the coordinate ranges of each profile. It is also possible to display the peak values using lines drawn in the profiles and on the main image.
- The blank pixel colour is now preserved when new colour tables are loaded.
- Time-series spectra extracted from cubes can now be displayed showing the elapsed time from the first observation.
- The coordinate system used when handling a cube can now be changed to display pixel and grid coordinates, as well as spectral ones.
- A new command-line option -rtd_autocut has been added. This applies the -default_cut percentile to any images received by the realtime interface.
- The contour toolbox now detects cubes displayed in other windows and will step through the slices of the cube contouring each in turn over the displayed image. See the help in the contour toolbox for how to use this.
- A bug in the operation of the patch toolbox has been fixed. Previously GAIA could crash when using very small detached sky regions.
- A bug in the handling of temporary images created by the regions toolbox has been fixed. Previously if more than one instance of this toolbox was in use the names of the temporary files could clash.
- The gaiadisp command now uses the RTD_REMOTE_DIR environment variable to locate the .rtd-remote file (this matches the behaviour of the gaia command).
- The text importer toolbox is no longer shared between all cloned windows. Each window now has it's own instance so that more than one import can be done at a time.
- A bug in saving and restoring the overlay graphics has been fixed. This was introduced when dashed lines were offered as an option for contouring.
- A bug tracking coordinates using the arrow keys and the "Show all coordinates" toolbox has been fixed. Previously the reported Y coordinates were those of the last position, not the current one.
- It is now possible to resize the 3D toolboxes during the first rendering. Previously this could case the application to terminate.
- The 3D scene now offers lighting controls.
- A bug in the positioning of the 3D direction axes has been fixed.
- The baseline subtraction tool in the cube toolbox now allows for the output cube to be given a named prefix.
- The default celestial coordinate system for FITS files is now FK5/J2000.
- FITS access is now based on the installed version of the CFITSIO package. This supports closer compatibility with other FITS based applications and is important for UKIDSS.
- The cube animation controls now allow the reversal of the order of slices displayed by interchanging the lower and upper limits.
KAPPA
- BEAMFIT increased the precision of the formatted values stored in CENTRE and REFOFF output parameters.
- CHANMAP has new estimators for clipped mean and clipped standard deviation. A new CLIP parameter can
- be used to control the clip level.
- CLINPLOT can now plot the data in a variety of ways, including markers and the histogram style. It can also align the displayed spectra spatially with a pre-displayed image, and now has an option to suppress the drawing of axes around each spectrum.
- COLCOMP can now specify the BADCOL colour using an HTML colour code.
- COLLAPSE has new estimators for clipped mean and clipped standard deviation. A new CLIP parameter can be used to control the clip level. The WLIM-related warning has been improved.
- CONVOLVE no longer aborts if a slice within a cube contains no good data.
- DISPLAY can now specify the BADCOL colour using an HTML colour code.
- FITSMOD There is a new editing option "Null" that nullify the value of the chosen keyword, i.e. makes it undefined, by substituting spaces for its value.
- HISCOM has a new parameter called DATE. It allows the date and time of the new history record to be set explicitly rather than to the default current time. There is a choice of formats including Gregorian Date and Time, and Julian Date.
- LISTMAKE has been modified to allow more ways to specify the coordinate frame through the FRAME parameter.
- LISTSHOW can now plot STC-S regions (as created by CUPID).
- LOOK can now format a list to include the WCS coordinate of a pixel.
- MSTATS has new estimators for clipped mean and clipped standard deviation. A new CLIP parameter can be used to control the clip level.
- NDFCOPY has a new parameter called LIKEWCS. This allows the shape of the template NDF in the WCS Frame to be used to determine the bounds of the output NDF.
- NDFCOPY has a new parameter called EXTEN. Setting this parameter to TRUE results in any extension NDFs within the supplied NDF being trimmed or padded so that they have the same pixel bounds as the main NDF.
- NDFCOPY has a new parameter called TRIMBAD. If set TRUE, the output NDF will be trimmed so that it just encloses all good data values in the input NDF.
- PROVREM now has an option to HIDE the provenance information instead of removing it.
- PROVSHOW can now report HISTORY information associated with each file listed in the provenance. The HIDE parameter can be used to control whether hidden provenance entries are displayed.
- ROTATE has many efficiency improvements.
- STATS can now calculate accurate median and percentile values using sorting by setting the new ORDER parameter to true.
- THRESH has additional output parameters for returning the number of changed and unchanged pixels.
- Bug Fixes:
- BEAMFIT formerly generated erroneous second-axis values of the CENTRE output parameter.
- CENTROID formerly failed for data with backgrounds less approximately dex-10.
- COPYBAD now correctly propagates the VARIANCE information.
- PROVSHOW formerly ignored the SHOW=ROOTS option.
- WCSALIGN formerly could misplace the pixel origin in the output NDF by one pixel.
- ROTATE now uses significantly less memory than before.
- Fix problem in CONVOLVE when a plane in a cube is all bad and aborts the whole command.
ORAC-DR
- ACSIS:
- Quality assurance parameters have been improved for Gould Belt and Nearby Galaxies JLS Surveys.
- Quality assurance parameters have been expanded to handle many more transitions.
- Quality assurance tests have expanded to include:
- testing uniformity of noise across the bandpass after the map has been made.
- testing uniformity of noise across the map after the map has been made.
- flagging any samples whose RMS is higher than some percent over the mean RMS.
- Observations failing quality assurance will not be co-added into groups.
- Advanced processing recipes have been made more self-consistent.
- Multi-subscan hybrid mode observations are now handled.
- All baselines removed are now linear instead of fifth-order.
- The REDUCE_STANDARD recipe now creates cubes and removes baselines.
- A cube (or cubes) is now created for each individual subsystem when running the _ADV recipes.
- Flat-fielding can now be performed through the FLATFIELD argument to the _ITERATIVE_GROUP_PRODUCTION_ primitive.
- Iterative cube production can now be performed through the ITERATIONS argument to the _ITERATIVE_GROUP_PRODUCTION_ primitive.
- Supplying specific baseline regions can be done by using the _REMOVE_BASELINE_BY_RANGES_ primitive (see e.g. the new REDUCE_SCIENCE_SELFBL recipe).
- Intermediate time-series cubes are now deleted upon end of processing of the given observation.
- PNG graphic files are now created for representative images and spectra.
- CGS4:
- A bias frame can now be subtracted.
- General:
- ORAC-DR has been moved to a git repository.
- A "-onegroup" command-line option has been added. All observations processed with this flag will go into a single group.
- Infrastructure is in place to support writing ORAC-DR messages to file headers.
- Graphic files can be created from any 1- or 2-D file using the _CREATE_GRAPHIC_FROM_FILE_ primitive.
SMURF
- A summary of input observations is now presented.
- If an output file is derived from multiple observations the output FITS header will now include start and end information (such as date and airmass from the oldest observation and date and airmass from the newest observation).
- MAKECUBE can now fix up most issues associated with older ACSIS data from 2006 and 2007.
- MAKECUBE output catalogues can now contain additional JCMTSTATE information by using the EXTRACOLS parameter.
- TIMESORT is now significantly faster.
- MAKECUBE, MAKEMAP and QLMAKEMAP are now multi-threaded by default on multi-processor machines.
- MAKECUBE now issues a warning message if WCS information implied by the RECEPPOS and FPLANEX/Y values in an input NDF is inconsistent.
- TIMESORT can now handle single time slice data cubes.
- Many enhancements to SCUBA-2 functionality including support for bad pixel masks and interpolated darks.
- jcmtstate2cat now reports AZ and EL as well as DAZ and DEL.
- Bug Fixes:
- MAKECUBE formerly mis-interpreted non-zero instrument aperture (INSTAP) values in recent ACSIS data.
- MAKECUBE now ignores input data values that have negative input Tsys values.
- TIMESORT now sets the correct pixel origin in the output NDFs.
SPLAT
- SPLAT has been updated to use SAMP for interoperability with other desktop applications. It is still possible to use PLASTIC, but that protocol is now deprecated. See the main documentation for more about these changes.
- When displaying dual sideband spectra, line identifiers can now be drawn for both sidebands, not just the current one.
- When opening NDF spectra with redundant axes the position of the redundant axes may be reported in the synopsis. This will typically be the position on the sky that the spectrum occupied.
- SSAP query failures are now reported in more detail.
- The offsets applied to spectra during display can now be derived from an expression, rather than just using an order with a fixed offset. The way that line identifiers are handled when applying offsets is also changed. This should stop excessive data limits being used when most line identifiers are not displayed.
- A bug parsing the names of remotely downloaded spectra has been fixed. This should make guessing the file types more robust and support compressed sources.
- SSAP servers that do not return any results will now not be shown in the server response table.
- Series of spectra displayed in a single plot can now be offset from each other using artificial baselines for easier inspections. The ordering of the offsets can be determined by evaluating an expression based on the FITS card values in the spectra. This can include the evaluation of dates and times.
- The VO registry interface has been updated to use version 1 access. Note that any existing saved lists of SSAP registries will no longer be compatible and must be regenerated.
- A bug calculating UTC from TDB for the epoch of observation in the JAC synopsis has been fixed.
- A new toolbox for applying offsets to spectra displayed in the same window has been added. This allows the spectra to be displayed stacked above each other by a fixed amount. The spectra can be ordered using the transformation of a FITS value, so that the shift can be applied in, say, date order.
- The filter box has been changed so that rebin is now the default option.
- A new menu item for removing all line identifiers from a plot has been added.
- A fuller description of the items shown in the JAC plot synopsis has been added to SUN/243.
- The colours that are automatically selected for spectra will no longer include shades of yellow. These tend to be indistinctive on a white background.
- The properties used for rendering the current spectrum (line style, width colour etc.) can now be saved as the default properties and will persist between sessions. Note that the colour of the spectrum will not be re-used unless you have switched off automatically colouring.
- Extra controls have been added to the SSAP download dialog. You can now clear all the selections and just download data to the stack without displaying it.
- Line identifiers can be have the associated spectrum shortname suffixed to labels (it is already possible to prefix the shortname) or just have the shortname shown as the label.
STAR2HTML
- A new command-line option -hcserver has been added. This supports the movement of the hardcopy server to other URLs.
Changes to Libraries
AGI
- /PNG graphics device can now be used
AST
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 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.
The Format attribute for the TimeFrame class has been extended to allow the letter "T" to be used to separate the date and time fields when producing ISO date/time strings.
Use 1 and 0 instead of "yes" and "no" for the AST__THREADSAFE macro defined in ast.h
- The astSimplify method now makes a better job of spotting simplifications that can be made to Prism regions.
The Channel class has a new attribute called ReportLevel that can be used to control the warnings and errors generated when using a Channel to read or write an AST Object.
- Updated to include the 2009 leap second.
The FitsChan class has been modified so that, when reading a FITS header, it does not remove keywords that may have other non-WCS relevance.
- A new Channel has been added to read and write STC-S.
- Bug Fixes:
- The labelling of Plot axes representing calendar date has been improved. Formerly, axes spanning time intervals of a day to a few years could be badly labelled.
- Various minor bugs to do with thread-safety have been fixed (including a change to the API for astUnlock).
ATL
- New routine atlGetParam() for reading a parameter directly into an AST key map.
- New routine atlShow() to dump an AST object into a text file.
- New routine ATL_RDSTCS to allow STC-S descriptions to be read into an AST object.
- New routine ATL_RMBLFT to remove contiguous blank lines from a FITS header.
- ATL_RDGRP has been modified to enable it to read an AST object from a group containing an AST object dump,
- a set of FITS headers or an STC-S description.
- Bug Fixes:
- Fixed a bug in ATL_MGFTS that resulted in too many FITS headers being removed after blank lines.
CAT
- Allow FITS table columns to hold strings up to 500 characters long.
EMS
- The API has been expanded to allow sprintf formatting directly in forming error messages. See emsRepf. Also added emsSet to take printf formatting strings when setting a message token.
GRP
- Add C wrapper to GRP_REMOV
HDS
- Improve error reporting by naming the component that can not be altered or can't be mapped.
KAPLIBS
- Integrated generic CCDPACK-derived routines from KAPPA. This is part of the work to remove duplicate routines from the tree.
- Much improved sparseness handling in KPG1_FRACx
- Improved automatic grid detection.
- KPG1_ELGAU imported from KAPPA.
- New routine KPG1_WRCAT for writing catalogue entries.
- New routine KPG1_BADBX and KPG1_BBOX for finding bounding boxes.
- Fix bug in IRQ when compiling expressions that use more than two names.
MERS
- Now completely rewritten in C and is thread-safe.
C interface no longer includes the fortran msgFmt<x> routines. Instead a single C routine is provided for sprintf-style formatting (msgFmt).
- New function msgBlankif. This is a version of msgBlank that can be output conditionally similar to msgOut vs msgOutif.
- C interface for messaging level now uses a special type (msglev_t) rather than simple int.
- errRepf, msgOutiff, msgOutifv and msgOutf: new routines supporting sprintf-style formatting in addition to token replacement. %KEYWORD expansion disabled. $PARAM expansion unaffected. (C interface only)
- Can now be used in a threaded application so long as msgTune and errTune are only called before multiple threads are created.
- New function msgFlusherr can be used to flush error messages using MSG instead of ERR.
MSG filter levels extended to include MSG__DEBUG1 to MSG__DEBUG20. This should allow more fine-grained control of debugging messages.
The filter level can now also be set to MSG__NONE (no messages at all) and MSG__ALL (every message) but these can not be used in msgOutif calls. This allows all messages to be silenced or all messages to be displayed.
- msgIfget can now understand parameters that have an integer value as well as parameters containing the level string. This is to allow the KAPPA ILEVEL scheme to coexist.
- New function msgFlevok() can be used to compare the supplied filter level with the internal value. A simple wrapper around msgIflev.
- Only msg_fmtx routines remain in Fortran (there is no C library available to handle arbitrary Fortran format specifiers).
NDF
- New routine: NDF_HSDAT/ndfHsdat to allow a date to be specified for the next history record.
- History items are now sorted into date order. This allows history to be inserted into the correct place if it could not be added at the correct point previously (this is used by ORAC-DR to add pipeline log messages to the history).
- History items now use UTC. Previously localtime was used.
- Bug fixes:
- Fix some NDF sectioning bugs. For example in WCS axes that have constant values.
- Fix problem with ndfHout C interface.
NDG
The provenance API has been completely rewritten to improve performance significantly. AstKeyMaps are used rather than on-disk HDS structures.
- HISTORY information is now tracked along with provenance.
PAR
- Fix parGet1c C wrapper.
PCS
- The C interface to SUBPAR is now thread-safe (using a mutex around the fortran). This is required for MERS to be thread-safe.
Changes to thirdparty software
- match updated to v0.10
- SExtractor updated to v2.5.0
- Tcl/Tk have been updated to v8.4.19
- Xerces C XML parser now included (v3.0.1)
- perl version 5.10 now included
- cfitsio updated to v3.13
- Skycat updated to v3.0.2
- GSL updated to v1.12
- tdom now included at v0.8.3
- tcldict now included at v8.5.2
- FFTW updated to 3.2.1
- M4 updated to 1.4.12
- VTK updated to 5.4.2
- MESA updated to 7.0.4