DiaObjectCalculationTask#

class lsst.meas.base.DiaObjectCalculationTask(plugMetadata=None, **kwargs)#

Bases: CatalogCalculationTask

Run plugins which operate on a catalog of DIA sources.

This task facilitates running plugins which will operate on a source catalog. These plugins may do things such as classifying an object based on source record entries inserted during a measurement task.

This task differs from CatalogCaculationTask in the following ways:

-No multi mode is available for plugins. All plugins are assumed to run

in single mode.

-Input and output catalog types are assumed to be pandas.DataFrames with

columns following those used in the Apdb.

-No schema argument is passed to the plugins. Each plugin specifies

output columns and required inputs.

Parameters#

plugMetaDatalsst.daf.base.PropertyList or None

Will be modified in-place to contain metadata about the plugins being run. If None, an empty PropertyList will be created.

**kwargs

Additional arguments passed to the superclass constructor.

Notes#

Plugins may either take an entire catalog to work on at a time, or work on individual records.

Methods Summary

callCompute(diaObjectCat, diaSourceCat, ...)

Run each of the plugins on the catalog.

initializePlugins()

Initialize the plugins according to the configuration.

run(diaObjectCat, diaSourceCat, ...)

The entry point for the DIA catalog calculation task.

Methods Documentation

callCompute(diaObjectCat, diaSourceCat, updatedDiaObjectIds, filterNames)#

Run each of the plugins on the catalog.

For catalog column names see the SDM schema definitions for the DiaObject and DiaSource tables (lsst/sdm_schemas).

Parameters#

diaObjectCatpandas.DataFrame

DiaObjects to update values of and append new objects to. DataFrame should be indexed on “diaObjectId”.

diaSourceCatpandas.DataFrame

DiaSources associated with the DiaObjects in diaObjectCat. DataFrame must be indexed on [“diaObjectId”, “band”, “diaSourceId”].

updatedDiaObjectIdsnumpy.ndarray

Integer ids of the DiaObjects to update and create.

filterNameslist of str

List of string names of filters to be being processed.

Returns#

returnStructlsst.pipe.base.Struct

Struct containing:

diaObjectCat

Full set of DiaObjects including both un-updated and updated/new DiaObjects (pandas.DataFrame).

updatedDiaObjects

Catalog of DiaObjects that were updated or created by this task (pandas.DataFrame).

Raises#

KeyError

Raises if pandas.DataFrame indexing is not properly set.

initializePlugins()#

Initialize the plugins according to the configuration.

run(diaObjectCat, diaSourceCat, updatedDiaObjectIds, filterNames)#

The entry point for the DIA catalog calculation task.

Run method both updates the values in the diaObjectCat and appends newly created DiaObjects to the catalog. For catalog column names see the SDM schema definitions for the DiaObject and DiaSource tables (lsst/sdm_schemas).

Parameters#

diaObjectCatpandas.DataFrame

DiaObjects to update values of and append new objects to. DataFrame should be indexed on “diaObjectId”.

diaSourceCatpandas.DataFrame

DiaSources associated with the DiaObjects in diaObjectCat. DataFrame should be indexed on [“diaObjectId”, “band”, “diaSourceId”].

updatedDiaObjectIdsnumpy.ndarray

Integer ids of the DiaObjects to update and create.

filterNameslist of str

List of string names of filters to be being processed.

Returns#

returnStructlsst.pipe.base.Struct

Struct containing:

diaObjectCat

Full set of DiaObjects including both un-updated and updated/new DiaObjects (pandas.DataFrame).

updatedDiaObjects

Catalog of DiaObjects that were updated or created by this task (pandas.DataFrame).