DiaObjectCalculationPlugin

class lsst.meas.base.DiaObjectCalculationPlugin(config, name, metadata)

Bases: lsst.meas.base.CatalogCalculationPlugin

Base class for DIA catalog calculation plugins.

Task follows CatalogCalculationPlugin with modifications for use in AP.

Parameters:
config : DiaObjectCalculationPlugin.ConfigClass

Plugin configuration.

name : str

The string the plugin was registered with.

metadata : lsst.daf.base.PropertySet

Plugin metadata that will be attached to the output catalog

Attributes Summary

APCORR_ORDER
CENTROID_ORDER
DEFAULT_CATALOGCALCULATION
FLUX_MOMENTS_CALCULATED Add order after flux means and stds are calculated.
FLUX_ORDER
SHAPE_ORDER
inputCols DiaObject column names required by the plugin in order to run and complete its calculation.
needsFilter This plugin requires a filter to be specified.
outputCols DiaObject column names output by the plugin.
plugType Does the plugin operate on a single source or the whole catalog (str)? If the plugin operates on a single source at a time, this should be set to "single"; if it expects the whoe catalog, to "multi".
registry List of available plugins (lsst.meas.base.PluginRegistry).

Methods Summary

calculate(diaObject, diaSources[, …]) Perform the calculation specified by this plugin.
fail(diaObject, columns[, error]) Set diaObject position values to nan.
getExecutionOrder() Used to set the relative order of plugin execution.
getLogName()
getTransformClass() Get the measurement transformation appropriate to this plugin.

Attributes Documentation

APCORR_ORDER = 3.0
CENTROID_ORDER = 0.0
DEFAULT_CATALOGCALCULATION = 4.0
FLUX_MOMENTS_CALCULATED = 5.0

Add order after flux means and stds are calculated.

FLUX_ORDER = 2.0
SHAPE_ORDER = 1.0
inputCols = []

DiaObject column names required by the plugin in order to run and complete its calculation. DiaCalculationTask should raise an error is a plugin is instantiated without the needed column available. Input columns should be defined in the DPDD/cat/Apdb schema. Filter dependent columns should be specified without the filter name perpended to them. eg PSFluxMean instead of uPSFluxMean.

needsFilter = True

This plugin requires a filter to be specified. Plugin’s using filter names usually deal with fluxes and only a sub-set of the DiaSource catalog. Plugins that to not use the filter name usually run over a value common across all observations/detections such as position.

outputCols = []

DiaObject column names output by the plugin. DiaCalculationTask should raise an error if another pluging is run output to the same column. Output columns should be defined in the DPDD/cat/Apdb schema. Filter dependent columns should be specified without the filter name perpended to them. eg PSFluxMean instead of uPSFluxMean.

plugType = 'single'

Does the plugin operate on a single source or the whole catalog (str)? If the plugin operates on a single source at a time, this should be set to "single"; if it expects the whoe catalog, to "multi". If the plugin is of type "multi", the fail method must be implemented to accept the whole catalog. If the plugin is of type "single", fail should accept a single source record.

registry = <lsst.meas.base.pluginRegistry.PluginRegistry object>

List of available plugins (lsst.meas.base.PluginRegistry).

Methods Documentation

calculate(diaObject, diaSources, filterDiaFluxes=None, filterName=None, **kwargs)

Perform the calculation specified by this plugin.

This method can either be used to operate on a single catalog record or a whole catalog, populating it with the output defined by this plugin.

Note that results may be added to catalog records as new columns, or may result in changes to existing values.

Parameters:
diaObject : dict

Summary object to store values in.

diaSources : pandas.DataFrame

DataFrame representing all diaSources associated with this diaObject.

filterDiaFluxes : pandas.DataFrame

DataFrame representing diaSources associated with this diaObject that are observed in the band pass filterName.

filterName : str

Simple name of the filter for the flux being calculated.

**kwargs

Any additional keyword arguments that may be passed to the plugin.

fail(diaObject, columns, error=None)

Set diaObject position values to nan.

Parameters:
diaObject : dict

Summary object to store values in.

columns : list of str

List of string names of columns to write a the failed value.

error : BaseException or None

Error to pass. Kept for consistency with CatologCalculationPlugin. Unused.

classmethod getExecutionOrder()

Used to set the relative order of plugin execution.

The values returned by getExecutionOrder are compared across all plugins, and smaller numbers run first.

Notes

CatalogCalculationPlugins must run with BasePlugin.DEFAULT_CATALOGCALCULATION or higher.

All plugins must implement this method with an appropriate run level

getLogName()
static getTransformClass()

Get the measurement transformation appropriate to this plugin.

This returns a subclass of transforms.MeasurementTransform, which may be instantiated with details of the algorithm configuration and then called with information about calibration and WCS to convert from raw measurement quantities to calibrated units. Calibrated data is then provided in a separate output table.

Notes

By default, we copy everything from the input to the output without transformation.