LSST Applications
21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
|
Public Member Functions | |
def | __init__ (self, refObjLoader, schema=None, **kwds) |
Create the photometric calibration task. More... | |
def | getSourceKeys (self, schema) |
def | extractMagArrays (self, matches, filterLabel, sourceKeys) |
Extract magnitude and magnitude error arrays from the given matches. More... | |
def | run (self, exposure, sourceCat, expId=0) |
Do photometric calibration - select matches to use and (possibly iteratively) compute the zero point. More... | |
def | displaySources (self, exposure, matches, reserved, frame=1) |
def | getZeroPoint (self, src, ref, srcErr=None, zp0=None) |
Flux calibration code, returning (ZeroPoint, Distribution Width, Number of stars) More... | |
Public Attributes | |
scatterPlot | |
fig | |
usedKey | |
match | |
Static Public Attributes | |
ConfigClass = PhotoCalConfig | |
Calculate the zero point of an exposure given a lsst.afw.table.ReferenceMatchVector.
Calculate an Exposure's zero-point given a set of flux measurements of stars matched to an input catalogue. The type of flux to use is specified by PhotoCalConfig.fluxField.
The algorithm clips outliers iteratively, with parameters set in the configuration.
Create the photometric calibration task. See PhotoCalTask.init for documentation
Do photometric calibration - select matches to use and (possibly iteratively) compute the zero point.
[in] | exposure | Exposure upon which the sources in the matches were detected. |
[in] | sourceCat | A catalog of sources to use in the calibration (i.e. a list of lsst.afw.table.Match with first being of type lsst.afw.table.SimpleRecord and second type lsst.afw.table.SourceRecord — the reference object and matched object respectively). (will not be modified except to set the outputField if requested.). |
photometric
True for objects which should be considered as photometric standardsMust include a field flux
the flux used to impose a magnitude limit and also to calibrate the data to (unless a color term is specified, in which case ColorTerm.primary is used; See https://jira.lsstcorp.org/browse/DM-933)May include a field stargal
if present, True means that the object is a starMay include a field var
if present, True means that the object is variable The measured sources:Must include PhotoCalConfig.fluxField; the flux measurement to be used for calibration RuntimeError with the following strings: No matches to use for photocal No matches are available (perhaps no sources/references were selected by the matcher).
No reference stars are available No matches are available from which to extract magnitudes.
See PhotoCalConfig
The command line task interface supports a flag -d
to import debug.py from your PYTHONPATH
; see Using lsstDebug to control debugging output for more about debug.py files.
The available variables in PhotoCalTask are:
display
displaySources
scatterPlot
scatterPlot
is 2 or more, prompt to continue after each iteration) This code is in , and can be run as e.g examples/photoCalTask.py photoCalTask.py Import the tasks (there are some other standard imports; read the file for details) from lsst.pipe.tasks.astrometry measPhotocal We need to create both our tasks before processing any data as the task constructors can add extra columns to the schema which we get from the input catalogue, scrCat:
getSchema Astrometry first: AstrometryTask.ConfigClass aTask (that filterMap
line is because our test code doesn't use a filter that the reference catalogue recognises, so we tell it to use the r
band) Then photometry: measPhotocal pTask If the schema has indeed changed we need to add the new columns to the source table (yes; this should be easier!) srcCat srcCat = cat We're now ready to process the data (we could loop over multiple exposures/catalogues using the same task objects): matches result We can then unpack and use the results: calib np.log To investigate the Debug variables, put something like
into your debug.py file and run photoCalTask.py with the –debug
flag.
Definition at line 127 of file photoCal.py.
def lsst.pipe.tasks.photoCal.PhotoCalTask.__init__ | ( | self, | |
refObjLoader, | |||
schema = None , |
|||
** | kwds | ||
) |
Create the photometric calibration task.
See PhotoCalTask.init for documentation
Definition at line 248 of file photoCal.py.
def lsst.pipe.tasks.photoCal.PhotoCalTask.displaySources | ( | self, | |
exposure, | |||
matches, | |||
reserved, | |||
frame = 1 |
|||
) |
Display sources we'll use for photocal Sources that will be actually used will be green. Sources reserved from the fit will be red. Parameters ---------- exposure : `lsst.afw.image.ExposureF` Exposure to display. matches : `list` of `lsst.afw.table.RefMatch` Matches used for photocal. reserved : `numpy.ndarray` of type `bool` Boolean array indicating sources that are reserved. frame : `int` Frame number for display.
Definition at line 487 of file photoCal.py.
def lsst.pipe.tasks.photoCal.PhotoCalTask.extractMagArrays | ( | self, | |
matches, | |||
filterLabel, | |||
sourceKeys | |||
) |
Extract magnitude and magnitude error arrays from the given matches.
@param[in] matches Reference/source matches, a @link lsst::afw::table::ReferenceMatchVector@endlink @param[in] filterLabel Label of filter being calibrated @param[in] sourceKeys Struct of source catalog keys, as returned by getSourceKeys() @return Struct containing srcMag, refMag, srcMagErr, refMagErr, and magErr numpy arrays where magErr is an error in the magnitude; the error in srcMag - refMag If nonzero, config.magErrFloor will be added to magErr *only* (not srcMagErr or refMagErr), as magErr is what is later used to determine the zero point. Struct also contains refFluxFieldList: a list of field names of the reference catalog used for fluxes (1 or 2 strings) @note These magnitude arrays are the @em inputs to the photometric calibration, some may have been discarded by clipping while estimating the calibration (https://jira.lsstcorp.org/browse/DM-813)
Definition at line 287 of file photoCal.py.
def lsst.pipe.tasks.photoCal.PhotoCalTask.getSourceKeys | ( | self, | |
schema | |||
) |
Return a struct containing the source catalog keys for fields used by PhotoCalTask. Parameters ---------- schema : `lsst.afw.table.schema` Schema of the catalog to get keys from. Returns ------- result : `lsst.pipe.base.Struct` Result struct with components: - ``instFlux``: Instrument flux key. - ``instFluxErr``: Instrument flux error key.
Definition at line 264 of file photoCal.py.
def lsst.pipe.tasks.photoCal.PhotoCalTask.getZeroPoint | ( | self, | |
src, | |||
ref, | |||
srcErr = None , |
|||
zp0 = None |
|||
) |
Flux calibration code, returning (ZeroPoint, Distribution Width, Number of stars)
We perform nIter iterations of a simple sigma-clipping algorithm with a couple of twists: 1. We use the median/interquartile range to estimate the position to clip around, and the "sigma" to use. 2. We never allow sigma to go _above_ a critical value sigmaMax --- if we do, a sufficiently large estimate will prevent the clipping from ever taking effect. 3. Rather than start with the median we start with a crude mode. This means that a set of magnitude residuals with a tight core and asymmetrical outliers will start in the core. We use the width of this core to set our maximum sigma (see 2.) @return Struct of: - zp ---------- Photometric zero point (mag) - sigma ------- Standard deviation of fit of zero point (mag) - ngood ------- Number of sources used to fit zero point
Definition at line 512 of file photoCal.py.
def lsst.pipe.tasks.photoCal.PhotoCalTask.run | ( | self, | |
exposure, | |||
sourceCat, | |||
expId = 0 |
|||
) |
Do photometric calibration - select matches to use and (possibly iteratively) compute the zero point.
[in] | exposure | Exposure upon which the sources in the matches were detected. |
[in] | sourceCat | A catalog of sources to use in the calibration (i.e. a list of lsst.afw.table.Match with first being of type lsst.afw.table.SimpleRecord and second type lsst.afw.table.SourceRecord — the reference object and matched object respectively). (will not be modified except to set the outputField if requested.). |
photometric
True for objects which should be considered as photometric standardsMust include a field flux
the flux used to impose a magnitude limit and also to calibrate the data to (unless a color term is specified, in which case ColorTerm.primary is used; See https://jira.lsstcorp.org/browse/DM-933)May include a field stargal
if present, True means that the object is a starMay include a field var
if present, True means that the object is variable The measured sources:Must include PhotoCalConfig.fluxField; the flux measurement to be used for calibration RuntimeError with the following strings: No matches to use for photocal No matches are available (perhaps no sources/references were selected by the matcher).
No reference stars are available No matches are available from which to extract magnitudes.
Definition at line 392 of file photoCal.py.
|
static |
Definition at line 245 of file photoCal.py.
lsst.pipe.tasks.photoCal.PhotoCalTask.fig |
Definition at line 253 of file photoCal.py.
lsst.pipe.tasks.photoCal.PhotoCalTask.match |
Definition at line 259 of file photoCal.py.
lsst.pipe.tasks.photoCal.PhotoCalTask.scatterPlot |
Definition at line 252 of file photoCal.py.
lsst.pipe.tasks.photoCal.PhotoCalTask.usedKey |
Definition at line 255 of file photoCal.py.