DM-4692 and DM-5348 overhaul ProcessCcdTask and introduce some backwards-incompatible changes.
Code changes
-
ProcessCoaddTaskis gone, along with all bin scripts that run it. Use the new Multi-Band code, instead. -
ProcessCcdTaskhas been rewritten, so its config has changed. Config override files will need to be updated. This will be done for the obs_ packages as part of the merge, but if you have personal config override files then you will probably need to update them. -
Camera-specific variants of
ProcessCcdTaskare gone. You will runbin/processCcdTask.pyto process images for all cameras. -
For DECam
bin/processCcdTask.pywill use the LSST stack’s ISR by default. To readinstcalfiles from the community pipeline, replace the ISR task withDecamNullIsrTaskby using a config override file containing the following:from lsst.obs.decam.decamNullIsr import DecamNullIsrTask
config.isr.retarget(DecamNullIsrTask) -
A new dynamic dataset type is available for adding data ID arguments to the argument parser for command-line tasks:
ConfigDatasetTypeobtains the dataset type from a config parameter. -
Various subtasks have changed, including:
- New camera-specific ISR task variants for SDSS and DECam:
SdssNullIsrTaskandDecamNullIsrTask. - New task
DetectAndMeasureTaskdetects and deblends sources and performs single-frame measurement. - New task
CharacterizeImageTaskmeasures PSF and aperture correction, among other things. -
CalibrateTaskhas been rewritten. It now performs deep detection and measurement, astrometry and photometry. - Camera-specific variants of
CalibrateTaskare gone. -
ProcessImageTask(formerly a base class forProcessCcdTaskandProcessCoaddTask) is gone.
- New camera-specific ISR task variants for SDSS and DECam:
Data product changes
-
icSrcno longer includes RA/Dec coordinate data, because the fit WCS is not available when the catalog is constructed. You will have to set the coord field yourself if you need it. -
icExpandicExpBackgroundcan optionally be written byCharacterizeImageTask. They are so close tocalexpandcalexpBackgroundthat they are not written by default. -
icMatchis no longer being written.
Algorithm changes
- PSF is fit somewhat differently. The new task fits the PSF in using a configurable number of iterations. By default each iteration starts with a simple Gaussian PSF whose sigma matches the PSF of the previous fit, but you can use the actual PSF each time. Using a Gaussian causes convergence in 2 iterations. Using the fit PSF slows convergence.
- Sources in the
icSrccatalog should have a more consistent minimum SNR for varying seeing. The old code detected once, using a Gaussian PSF with FWHM set by a config parameter. The new code performs detection using the PSF in the final PSF iteration. - The default star selector for
MeasurePsfTaskisobjectSizerather thansizeMagnitude. TheobjectSizestar selector is preferred and was already being specified as an override by HSC. - The icSrc catalog is not matched to an astrometric reference catalog unless the star selector used to measure PSF can use the matches (which is unusual).
- The astrometric and photometric solution now use the deeper
srccatalog instead of the shallowericSrccatalog, though with a new SNR cutoff whose default provides a depth similar to theicSrccatalog. - Fake source handling is temporarily missing; it will be re-added in DM-5310.