STScI Logo

Release Notes for stsci_python
stsci_python 2.14 Release Notes



===============================
STScI_Python 2.14 Release Notes
===============================

STScI_Python is a collection of Python modules, packages and C
extensions that has been developed to provide a general astronomical
data analysis infrastructure. They can be used for Python tasks
that are accessible from within STSDAS when running under PyRAF or
standalone from within Python. This distribution continues to develop
packages with tasks specific to each HST instrument, with changes
since the last release being noted here.

AstroPy and STScI_Python
========================

The next release will include dependencies on astropy within most
of the packages in STScI_Python.  These dependencies will at a
minimum include the use of astropy.io.fits instead of a separate
version of PyFITS and astropy.wcs instead of a separate version of
PyWCS. In fact, both PyFITS and PyWCS will be maintained solely
within astropy, with separate releases of these packages stopping,
after the next release.  Users and developers are encouraged to
start reviewing how to transition your own code to use astropy as
soon as possible so that these dependencies will not pose any
problems in the future.

PyFITS
=======

This release includes PyFITS Version 3.1.1 with full release notes
being available online at:

        http://www.stsci.edu/institute/software_hardware/pyfits/release

This package has been included as part of the AstroPy project found
at:

    http://www.astropy.org/

As a result, the next release of STScI_Python will depend on AstroPy
for the PyFITS library instead of using this standalone release.

ACSTOOLS
========

* TEAL interfaces for running CALACS-based tasks in HSTCAL (like
  acsccd, acs2d,...) and for running PixCteCorr have been added to
  this package
* an indentation bug that caused garbage output was fixed in the
  acs_destripe task
* PixCteCorr was updated to add reporting of CTE variables in the
  header of the CTE corrected image
* script to run astrodrizzle in the pipeline, runastrodriz, had
  several updates including:
    * adding the ability to run astrodrizzle entirely in memory
      (eliminating most intermediate file creation)
    * pipeline processing with runastrodriz now can generate
      headerlets reporting the WCS provided by the pipeline

COSTOOLS
========

Version 2.19.7 of CALCOS has been included in this release with the
following updates:

* If the user specified an output directory but that directory
  doesn't exist, calcos will create it.
* If the input is an association file and an output directory was
  specified, the input association file will be copied to the output
  directory, and the copy (rather than the original) will be updated.
  This allows running calcos on write-protected data.
* If the lamptab has a HAS_LINES column, the value in this column
  will be used to determine whether to copy wavecal information from
  segment A to segment B data.  This was previously done only for
  G140L data.
* If the disptab has an FPOFFSET column, this will be used by CALCOS
  (in addition to other keywords) to select the appropriate row of
  the disptab.
* The Gehrels variance function is now used to compute the error
  estimates (the ERR image extension) for the flt and counts files
  and for the ERROR column in the x1d and x1dsum tables.
* When averaging x1d spectra to an x1dsum, the flat field is included
  in the weight.  The primary reason for this is to give less weight
  within the FUV grid wire shadows.
* When flagging regions as bad in the DQ extension, the regions
  will be expanded by a quarter of a pixel in each direction.  This
  reduces the number of cases where a pixel should have been flagged
  as bad but wasn't due to roundoff to integer pixel number.
* In the case that there is a non-tagflash exposure with no auto/GO
  wavecal at the same fpoffset, another wavecal in the association
  can be used, and the correction due to different fpoffset will be
  taken from the FP_PIXEL_SHIFT column in the lamptab.
* There has been some reordering of calibration steps.  The Doppler
  correction and filtering by pulse height are now done after the
  deadtime correction, and checking for FUV bursts is now done after
  wavecal correction.  For the most part this should not affect the
  results, except that checking for bursts should be more reliable.

In addition to the updates to CALCOS, the following changes were
made to other tasks in this package:

* The timefilter task was added.
* All TEAL tasks now get reported when the package gets loaded
* Most tasks now include Sphinx-based documentation

DRIZZLEPAC
===========

Version 1.1.8 of astrodrizzle has been included in this release
with the following updates:

* Fixed a bug which caused the 'blot' step/task to crash when
  specifying the 'sinc' kernel
* Resolved problems with PyFITS not working correctly when updating
  WCSNAME when a value was specified for the 'after' keyword in the
  update method. This affected astrodrizzle when running on input
  images updated with information from a headerlet under some
  circumstances.
* shiftfile interpretation no longer crashes when no RMS values are
  found in shiftfile
* Validation of good input WFC3 images based on NGOODPIX now added.
* Input file validation to verify that the inputs have valid, updated
  WCS information has been updated if updatewcs is turned on.
* Exposure time values (EXPTIME, EXPSTART, EXPEND) in single drizzle
  exposures now should be correct
* Logic for interpreting the 'group' parameter revised so that it
  now works with a single input value, a list of integers or even a
  single 'sci,1' value.
* Many calls within astrodrizzle no use direct PyFITS calls which
  speed up many operations, some quite significantly, especially in
  the initialization step.
* The wfpc2_inmask*.fits files no longer get created and have been
  replaced by direct computation of the masks for each chip as needed.
* Sky array used in computing the IVM weight image for WFC3/IR data
  now used the correct units.
* data without WCSNAME keyword can now be processed by astrodrizzle
* added the ability for astrodrizzle to be run in 'in-memory' mode
  which elminates most intermediate file creation at the expense of
  memory to process more quickly in some cases
* Static mask step revised to skip updates to static mask if all
  pixels get masked out in an input image. This allows low S/N SBC
  data to be processed with this step turned on.
* IVM weighting now correctly uses the SCI array instead of the ERR
  array.

In addition, tweakreg Version 1.2.1 has been included with the following updates:
* Use of fluxmin/fluxmax to trim the source catalog determined by
  imagefindpars now works without crashing
* input images which do not have WCSNAME defined (non-HST images
  primarily) may now work with tweakreg
* fixed a bug which caused tweakreg to crash when flux limits were
  specified by no fluxes were read in from the source catalog
* 2D histogram peak finding fixed for cases where all sources match
  perfectly (no spurious matches from mis-identifications)
* 2D histogram building moved to a C extension to dramatically
  speed-up this computation
* Use of Ctrl-C no longer crashes tweakreg
* implemented more stringent nsigma separation checking to avoid
  most (all?) duplicate sources found at the same pixel
* Improved the code that read in 'catfiles' to tweakreg so that
  blank lines or comments will not be included erroneously in the
  final list of filenames
* Moved 'separation' parameter for use with 2D histogram

Other updates include:
* Fixed a bug that cased pixtopix, pixtosky and skytopix to crash
  when no output file was specified when running with a list of files
  as input
* tweakback now allows the user to specify the name of the new WCS
  written out to FLT files, rather than simply copying the name found
  in the drizzled image header
* tweakback will now create a unique WCSNAME when input WCSNAME
  matches one already in the image header
* the  'pixtopix' task was updated to use the input image as the
  default frame rather than requiring an 'outimage' for all runs.
* Updated 'resetbits' task to preserve the format of the values in
  the DQ arrays.


FITSBLENDER
============

New header rules, Version 1.1, have been provided for use with ACS
and WFC3 data.

REFTOOLS
========

These tools are used almost exclusively to help with the generation
of instrument calibration reference files. Updates to tasks in this
package include:
* revising makedxy to allow a user to specify the pixel spacing for
  the reference file

STWCS
=====

This packages supports the new distortion model as part of the WCS
in HST FITS image headers.  Changes implemented since the last
release include:
* Default headerlet output name defined as _hlet.fits if
  nothing gets specified by the user
* The WCSDVARR extensions now always get written out as float32
  with FITS standard error keywords CPERR
* STWCS changes made to allow it to understand NPOL corrections for
  WFC3 once they are made available
* Reports describing the distortion model and its use have been
  updated and formatted for users
* Change WCS error keywords in headerlet from RMS* to the FITS
  standard CRDER* keywords
* headerlet code was updated to work with non-HST data as well as
  HST images, now used for Subaru images

WFC3TOOLS
=========

This package includes support for WFC3 specific tasks, supporting
CALWF3 3.0 in the HSTCAL package.
* TEAL interfaces have been added for calwf3 and related tasks (such
  as wf3ccd)
* HTML based help files have been made available for use with the
  TEAL interfaces for calwf3 and calwf3-related tasks

WFPC2TOOLS
==========

The Sphinx based documentation has been added to describe wfpc2
tasks such as wfpc2cte and destreak.

STSCI.TOOLS
===========

This packages contains code used by multiple packages within the
stsci_python distribution.  Changes to this package include:
* updating the checkfiles code to use the latest PyFITS setval()
  syntax to allow this code to work with STIS images.
* created new stand-alone function to perform GEIS and waiver-FITS
  conversion to multi-extension FITS (MEF) format to enable astrodrizzle
  processing of older formatted WFPC2 data
* Updates to PyRAF code with full PyRAF Release Notes available at:
        http://www.stsci.edu/institute/software_hardware/pyraf/Pyraf-full-release-notes
* fix a bug in iterfile module to work with in-memory PyFITS objects
* fixed a bug in nimageiter to correctly handle more odd image size
    cases