These draft notes cover the major updates made by Data Release Production to the LSST stack since release 12 (Winter/Extra 2016). Please add material here which should ultimately be incorporated into the notes accompanying the Fall 2016 release.
Major Functionality and Interface Changes
Add a measurement extension which performs Kron photometry
The KronFluxAlgorithm measures the flux in an elliptical aperture as defined by Kron (1980). The plugin is not enabled by default, but may be switched on by requesting ext_photometryKron_KronFlux in measurement configuration.
- DM-3440Getting issue details... STATUS - DM-6561Getting issue details... STATUS
Package version tracking and checking ("stack provenance")
A package version tracking and checking capability has been included in the stack and integrated with the ``CmdLineTask`` system. This keeps track of what versions of packages are being used in order to prevent the user from unwittingly processing data with multiple, subtly different, versions of the code. This provides a provisional implementation of a provenance tracking
system: it is essential for short-term use, but will be rendered obsolete before we move to operations. A more detailed description of this system is available on the LSST Community Forum.
- DM-3372Getting issue details... STATUS
ngmix-based measurement
Erin Sheldon's ngmix has been integrated with the LSST codebase: it can be installed as package ngmix, and meas_extensions_ngmix package provides an interface between it and the LSST measurement framework. At time of writing, these packages are purely optional, and have not been included in any of the standard Science Pipelines top-level packages (lsst_apps, lsst_distrib). Currently, we provide an ngmix-based plugins for approximating the PSF and for fitting sources using a mixture of Gaussians in both single frame and forced measurement.
- DM-5429Getting issue details... STATUS - DM-6123Getting issue details... STATUS - DM-6124Getting issue details... STATUS - DM-6125Getting issue details... STATUS - DM-2253Getting issue details... STATUS - DM-5867Getting issue details... STATUS - DM-5432Getting issue details... STATUS - DM-6719Getting issue details... STATUS - DM-6724Getting issue details... STATUS
Multiband coadd processing now saves metadata
Metadata describing the operations of algorithms within the multiband coadd processing framework is now correctly persisted along with their outputs.
- DM-4991Getting issue details... STATUS
Bug Fixes
Corrected configuration dictionary comparisons
Resolved a bug whereby comparison of (intrinsically unordered) configuration dictionaries incorrectly compared their ordering rather than just their contents. This lead to unexpected failure of re-runs due to incorrectly identified “mismatched configurations”.
- DM-6661Getting issue details... STATUS
Correct CModel table schema units
Units for the time field changed from seconds to second to comply with the Astropy convention.
- DM-6282Getting issue details... STATUS
Restore capability of calculating temporary local backgrounds in source detection
Our SourceDetectionTask
provides the optional capability of fitting and temporarily removing a local background before detecting sources. This capability was accidentally disabled in the X/W16 release (v12); it has now been restored. It is disabled by default.
- DM-5323Getting issue details... STATUS
Resolve a memory error in convolution
A memory handling error could cause our convolution code to generate incorrect results on some platforms (problems observed on OS X when the code is built without optimization; no errors seen on Linux, or when building with -O2
or -O3
on OS X). This appears to originate in the Boost Generic Image Library, an external dependency of the LSST stack. We have been unable to isolate the problem in Boost, but have worked around it for our particular use case.
- DM-5822Getting issue details... STATUS
Build & Code Improvements
Migration from Boost to standard library equivalents
Continuing work started in the previous release, we have audited the stack for use of the Boost libraries. Where possible, Boost has been replaced with C++11 standard library equivalents.
- DM-5880Getting issue details... STATUS - DM-6089Getting issue details... STATUS - DM-6090Getting issue details... STATUS - DM-6091Getting issue details... STATUS - DM-6092Getting issue details... STATUS - DM-6093Getting issue details... STATUS - DM-6094Getting issue details... STATUS - DM-6095Getting issue details... STATUS - DM-6096Getting issue details... STATUS - DM-6097Getting issue details... STATUS - DM-6325Getting issue details... STATUS
Properly log warnings in ObjectSizeStarSelector
Previously, non-fatal NumPy warnings of the form RuntimeWarning: invalid value encountered in less could appear on the console, but not be caught and logged anywhere. It was therefore easy to miss problems arising when running the algorithm. These warnings are now ingested into the LSST logging system, and are hence recorded properly.
- DM-5428Getting issue details... STATUS
Unit tests for colorterm framework
A set of unit tests have been written which properly exercise the colorterm framework which was adapted from Hyper Suprime-Cam in the S15 cycle.
- DM-2837Getting issue details... STATUS
FlagHandler accessible from Python
The FlagHandler system for efficiently and safely setting flags corresponding to measurement algorithm failures on source records is now accessible from Python. Previously, it was only available for use in C++ code.
- DM-4009Getting issue details... STATUS
Exact image comparison utility code
The assertImagesEqual
and assertMaskedImagesEqual
methods have been added to added to LSST's test cases. These provide explicit mechanisms for checking for exact equality of image data.
- DM-6641Getting issue details... STATUS
Add integration test for stellaricity of sources used to measure PSF
Added a test to the ci_hsc package to monitor the fraction of sources used to model the PSF in when processing a CCD image and ensure that the vast majority of them are ultimately classified as stars. This provides an automated check that we are not inadvertantly estimating the PSF based on extended objects.
- DM-6051Getting issue details... STATUS
Use measurement "afterburners" to handle aperture corrections
The afterburner facility was added to the stack in the previous (v12) release; it provides a capability to run algorithms akin to our regular measurements, but which only take inputs from catalogs (i.e. not pixel data). This has now been used to clean up the logic used to apply aperture corrections within our regular data processing flow. This old method for handling aperture corrections was a persistent source of bugs and confusion: these should be avoided by the new approach.