STSDAS 3.0 RELEASE NOTES PyRAF-RELATED CHANGES Several changes were made to the STSDAS to accomodate the inclusion of Python-based tasks which are to be run under PyRAF. 1) A new 'python' directory has been added alongside the bin directories. This directory contains links to the directories containing Python tasks. The tasks should be set up as Python packages themselves, with the name of the link being the name of the package. This directory can then be added to the user's PYTHONPATH environment variable if they want to run the tasks directly from Python. When PyRAF is started and STSDAS is loaded, it is automatically added to the user's Python load path. 2) A new task has been added to the STSDAS distribution: pyexecute. There are two versions of this task, a Python version for use under PyRAF, and an IRAF version written as a CL script. This task is used in package definition CL scripts to set up the Python task to appear as an IRAF task when running PyRAF. However, if only IRAF is being used, the CL version is run to tell the user that PyRAF is needed to use that task. These changes allow Python tasks to be added in such a way that very little (if anything) needs to be done by the user to use the new Python tasks under PyRAF. It also provides a safeguard for those users who are using the IRAF CL when they try to load or run the new tasks. CHANGES TO APPLICATIONS ANALYSIS.DITHER dr2gpar was added to the package script dither.cl -Drizzle Creation of a context image was added. This image keeps track of which images contributed to each pixel in the output product. CD matrix is properly linearized after application of the distortion coefficients. Bugs were also fixed to allow a linear CD matrix as input. The option to use different kernels when drizzling was added. Distortion coefficients with order greater than 3 is now supported. New Tasks: - PyDrizzle This Python-based task automates the use of the 'drizzle' task. This task is used in the ACS Calibration Pipeline to apply distortion correction and dither-combining to ACS observations using 'drizzle' in an automated manner. PyDrizzle determines the parameters necessary for drizzle to create the output image specified by the user for an image or associated set of images, then runs drizzle as necessary. PyDrizzle has been tested to work with most WFPC2 or ACS data sets, and should work with STIS imaging data as well. It can not only combine dithered data, but will also support the creation of mosaics with data from one or more detectors/instruments. For ACS, it requires an IDCTAB reference file for the distortion coefficients needed for drizzle. It also requires the use of an association table in the form used by ACS for any associated datasets whether they are WFPC2, ACS or STIS data. This task relies solely on the WCS information in the input images for determination of the drizzle parameters, specifically shifts, scaling, and rotations. The WCS parameters required are: CD matrix, CRPIX1/2, CRVAL1/2, ORIENTAT. Both an IRAF task interface and a more flexible Python interface are available. However, PyDrizzle can only be run under the PyRAF environment. The current version will only work with full frame images, not subarrays, due to limitations of the 'drizzle' task. - XYTOSKY This task takes an input position or list of input positions and returns a distortion-corrected RA/Dec position for an image based on the distortion model as understood by drizzle (or PyDrizzle for ACS). It is a Python-based task derived from PyDrizzle and will only run under PyRAF. ANALYSIS.FITTING - I2GAUSFIT A task parameter was misspelled in the CL script. - NFIT1D Flag initialization was fixed as well as the getfit calling sequence. ANALYSIS.ISOPHOTE - BMODEL An bug was fixed when the rebinned semi-major axis became negative. CONTRIB.SPECFIT - SPECFIT The parameter file was changed so that the default value for one of the parameters was set to 1 instead of incorrectly to YES. GRAPHICS.STPLOT - PSIKERN Typos in psikern.template were reported by a user; they have been corrected. - SCIAPER Data file now uses a FITS table. HST_CALIB.ACS - CALACS History records on the overscan table used were added. A bug was corrected in acsrej_sky; it now initializes the histogram for each input image during sky computation. A bug that severely affected the sky calculation for flat images was fixed. The values for EXPSTART and EXPEND for CR-combined products were modified to reflect the start time and end time of the entire period during which all exposures were taken. A dummy _dth product no longer gets created by CALACS. Instead, a more extensive message explains that PyDrizzle needs to be run in order to implement distortion correction for proper photometry. BUNITS was updated to reflect the change of units during flat-fielding from DN to electrons. BUNIT is now updated in the SCI and ERR headers upon successful flat fielding instead of updating it in the primary header. A compatiblity problem with OPUS was corrected. Images with no processing switch set to PERFORM will only produce a WARNING message instead of ERRORS. Corrected building of PHOTMODE string for pol_v and pol_uv so they work properly with synphot. A typo was corrected in photmode.c CALACS was updated to use SYNPHOT fucntions to calculate photometry keyword values. This requires the use of GRAPHTAB and PHOTTAB. References to PHOTTAB and APERTAB were deleted from all code. The PHOTMODE keyword is populated with values which correspond to SYNPHOT components. HISTORY records are added listing all the component files used in the calculation of absolute photometry. The default array size for the photometry functions was increased to match the default used by the interactive SYNPHOT task. doPhot now ignores filter names of 'N/A' The OBSTYPE keyword was added to support coronographic photmode strings. CCDAMP, CCDGAIN, and CCDCHIP keywords are now used to select rows from the BPIXTAB in doDQI. In addition, a warning message was added to alert users to cases where no rows from BPIXTAB are applied to the DQ array. The structure of the CCDTAB reference file was changed and the corresponding changes were made to CALACS to support the changes. The CCDTAB reference file now contains entries for each amp's bias level to be applied separately to the data. Significant changes were made to properly compute dark time for CR-combined products and to compute the bias level from the overscan region in computing bias drift. CALACS now ignores STATFLAG and always performs doStat, adds DQ checking to the building of the initial guess image in ACSREJ, and only updates ASN_STAT in tables. Errors in trailer file have been corrected, namely it now always copies all comments for all subproducts into the association trailer file for associations. A small bug in applying gain to subarray flats has been fixed. A bug with the bias level calculation for 1-amp use per row was fixed. A more generalized findblev was developed to use either 1 or 2 biassections so that both sections can be averaged into a polynomial fit if appropriate. A bug was corrected in how the ccdamp string was built for WFC exposures. Fixed several bugs in the interpretaion of RPT-OBS associations and dithered RPT-OBS datasets. These associated datasets are now correctly interpreted by CALACS, and generate all the correct products under the supporting operating systems for associations that do not contain too many input images. Error values for CR-combined products no longer include all input values, instead those marked as bad are ignored when computing final errors. Post-flash processing now controlled by 'FLSHCORR' keyword, instead of 'POSTFLSH' keyword. The 'POSTFLSH' keyword was removed from image headers and replaced by 'FLSHCORR'. New package: - aXe This package of tasks provide the tools necessary for extracting and calibrating spectra from a grism or prism image using executables provided by ST-ECF. This package has been written using PyRAF and will not load if it can not find the executables or if PyRAF is not being used. Each executable has been wrapped in PyRAF to present an IRAF task interface for those using PyRAF. The binaries are only included for Solaris (2.5 or later), Redhat, and Mac OS X. These tasks are supported by ST-ECF, aside from PyRAF interface issues, questions about using these tasks should be directed to acsdesk@eso.org. The tasks each come with extensive help files to guide the user in processing their data. If there are problems with the binaries distributed with STSDAS, new executables and a User Manual can be obtained from the ST-ECF at: http://www.stecf.org/software/aXe/ The tasks included in this package are: - af2pet: generate a Pixel Extraction Table(PET) for the input data. - backest: estimate the background. - gol2af: generates an Aperture File from a Grism Object List (GOL). - pet2spc: transform the contents of the PET into 1D binned spectra. - petcont: checks whether each pixel in a beam is a member of another spectrum. - petff: flat-fields the contents of a PET from a flat-field calibration file. - sex2gol: generates a Grism Object List (GOL) from Sextractor input list. - stamps: uses a PET to generate stamp images of all extracted spectral beams. HST_CALIB.CTOOLS - CHCALPAR Support for ACS was added. Support for NICMOS temperature-dependent dark reference files was added. HST_CALIB.FOS - CALFOS A new routine was added to determine whether the input data set can or should be processed by the STPOA calibration pipeline (available from ST-ECF). If it is determined that the dataset should be processed by STPOA a warning message is issued by CALFOS, but the processing continues. The POA messages were moved from yclfos.f and put in stcomply.f PFLAG settings have been cleaned up when the corresponding calibration switch is not applicable. In particular PFLAGS is set to SKIPPED (not OMIT) so the output files will have the calibration switches updated. Checks were added for the old-style calibration (FLX_CORR) such that it will not be performed if WAV_CORR is set to OMIT. The help file was updated to document the STPOA package. HST_CALIB.HRS - WAVEOFF The default value of the linetab parameter was changed since the file referred to by the old default (scidata@czptnelinec) did not exist. HST_CALIB.NICMOS NLINCOR was removed from the NICMOS package. - CALNICA CALNICA has had a major reorganization so that all calibration steps are performed on a group before proceeding to the next group. The capability to generate temperature-dependent darks has been added. This generates a dark reference image in real-time as a sum of linear dark component (proportional to exposure time), amplifier glow (proportional to number of reads) and shading component (depends on delta-time and temperature in a complex fashion). Users will need the SPT file to run CALNICA; the required temperature is stored in the SPT header. See NICMOS ISR-99-010 for more details. HST_CALIB.STIS - CALSTIS Time-dependent sensitivity and blaze shift corrections have been added. Support for a blazeshift command line argument was added. Geometric correction has been implemented. The darkscale parameter was implemented for basic2d and NUV mama. Dispersion relation now depends on the MAMA offset. CALSTIS now handles prism data. The changes have to do with the interpretation of the dispersion coefficients, and different procedures for prism wavecal observations. Support for handling the OCCDHTAV keyword was added. In CALSTIS4 double precision is used for squaring values when computing the sum of the squares. It also was changed to only check DQ bits specified by SDQFLAGS. CALSTIS6 now quits when the cross-corr procedure fails A check was added to crrej for invalid imset structures. Include _sx1 and _sx2 in the list of filename suffixes. When CALSTIS was run on MAMA repeatobs data with RPTCORR = PERFORM, it produced either an sx2 or sfl file, depending on whether X2DCORR (or GEOCORR) was PERFORM or OMIT respectively. In either case, only one summed file was produced. CALSTIS has been modified to produce both the sx2 and sfl files if RPTCORR is PERFORM and X2DCORR or GEOCORR is PERFORM. The help file was updated to reflect that the default value of the verbose keyword is yes. - INTTAG If the beginning of a time interval falls within one of the good- time intervals (GTI), but the end of that interval either falls between two GTIs or is later than the last GTI, the computed exposure time was too small. The function exp_range for computing the exposure time and the exposure start and stop times was rewritten; get_gti_indexes was deleted. - NORMSPFLAT This task was modified by Paul Goudfrooij to handle binned data. - OVAC2AIR Updated with a better expression for the index of refraction of air. Help was also updated and information about correcting to different values of pressure and temperature along with references was added. - TASTIS Changed so that it reads the PROPAPER keyword. If the value ends in "E1", it uses this value for the aperture name, otherwise it reads the APERTURE keyword as it has done previously. For ACQ/PEAKs it checks whether the maximum occurs at an endpoint of a linear scan. If so, it prints a warning message. Some of the warning messages have been revised. The summary message no longer written. References to the STIS Instrument Handbook were added to the help as well as the changes described in the previous paragraph. HST_CALIB.SYNPHOT A bug that was causing tasks to crash in some circumstances when issuing error messages has been fixed. Several bugs involving wavelength set computations have been fixed, including one that was causing tasks to give incorrect flux results when using multiple redshift values and another that was causing multiple executions of the same simulation to produce output spectra or passbands to have different numbers of data points. Fixes were made to logical comparisons that failed to work properly on the Redhat f77 compiler. - BANDPAR The task has been fixed to correct an error that was causing the output EMFLX and TLAMBDA values to be zero. - IMSPEC The task has been modified so that the output image wavelength axis type is assigned a value that is recognized by other IRAF plotting tasks (e.g. splot). Plotting tasks had been giving an incorrect units label to the wavelength axis. New Task: - THERMBACK This is a task that was developed to compute the thermal background emission of an instrument in the telescope, particularly for infra-red instruments (e.g., NICMOS). Given an obsmode, it returns the thermal background, in counts per second, observed by the instrument in the specified mode. It computes both emission and throughput for each transparent optical element (or mirror) in the light path, but it computes only emission for the opaque elements (spider, mask, etc). It relies on a thermal file (analogous to the throughput file) for each component. These files contain emissivity as a function of wavelength, as well as the default temperature, beam filling factor, and type (thru, opaque, numeric) for each component. These files have been added to CDBS, along with a new _tmt file (analogous to the _tmc file) that performs component filename lookups. Presently, results for all three NICMOS cameras are modeled using the best known optical properties of NIC2, which is the only one that has been extensively studied with respect to the cold mask shifting in the instrument. (Krist et al, 1998, PASP 110:1046) DQE variation with temperature is not supported by this task. Changes were made to libsynphot, and to other synphot reference files, to support this task. HST_CALIB.SYNPHOT.SIMULATORS Added ACS detector data. HST_CALIB.WFPC Paths for the help for 4 tasks were fixed. - CALWP2 The number of wavelength samples (nwave) was increased from 1000 to 10,000 so that the photometry parameters will be calculated more accurately for narrow-band filters. TOOLBOX.IMGTOOLS.MSTOOLS - MSCOMBINE A bug with the handling of NICMOS DQ extensions was fixed as well as a bug with NICMOS BUNIT values. - MSCOPY The extnames parameter was added so the user can specify the extension names for an imset. SYSTEM LIBRARY CHANGES LIB.CVOS The value of FIO_MAXFD was changed from 256 to 4096 to match changes in IRAF 2.12. LIB.SYNPHOT To support the new thermback task, a new column was added to the graph table. This column, THCOMPNAME, is analogous to the COMPNAME column, but includes all emissive elements, including opaque elements such as the spider. The include file libsynphot.h was modified to reflect this change in structure. These changes should not affect traditional uses of the synphot library. The calling sequence of the library routines mapgraf and searchgraf were modified to permit the specification of which column (COMPNAME or THCOMPNAME) to search. A new routine, evalemiss, was added, analogous to evalfilt. A new routine, bbsi, was added, to return the black body function in units of photons/cm^2/second/arcsec^2/angstrom. Configuration and data files: strip.stsdas: now does not remove Python files.