lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin Class Reference
Inheritance diagram for lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin:

## Public Member Functions

def __init__ (self, config, name, schemaMapper, metadata)

def measure (self, measRecord, exposure, refRecord, refWcs)

def fail (self, measRecord, error=None)

def measureN (self, measCat, exposure, refCat, refWcs)

def getExecutionOrder (cls)

def getLogName (self)

## Static Public Member Functions

def getExecutionOrder ()

def getTransformClass ()

algorithm

config

name

logName

## Static Public Attributes

ConfigClass = CModelForcedConfig

registry = PluginRegistry(ForcedPluginConfig)

float CENTROID_ORDER = 0.0

float SHAPE_ORDER = 1.0

float FLUX_ORDER = 2.0

float APCORR_ORDER = 3.0

float DEFAULT_CATALOGCALCULATION = 4.0

## Detailed Description

Forced measurement interface for CModelAlgorithm

This class simply provides __init__ and measure methods that matched the ForcedPlugin signatures
and delegate to CModelAlgorithm implementations.

The CModel algorithm currently cannot be run in forced mode when the measurement WCS is different
from the reference WCS (as is the case in CCD forced photometry).  This is a temporary limitation
that will be addressed on DM-5405.

CModel forced measurement when the measurement image is the same as the reference image should be
almost -- but not quite -- identical to unforced measurement.  The primary difference is that
the final fit region from the reference measurement will be used for the initial fit in forced mode
as well as the exp, dev, and combined exp+dev fits


Definition at line 77 of file cmodelContinued.py.

## ◆ __init__()

 def lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin.__init__ ( self, config, name, schemaMapper, metadata )

Definition at line 98 of file cmodelContinued.py.

98  def __init__(self, config, name, schemaMapper, metadata):
99  lsst.meas.base.ForcedPlugin.__init__(self, config, name, schemaMapper, metadata)
100  self.algorithm = CModelAlgorithm(name, config.makeControl(), schemaMapper)
101

## ◆ fail()

 def lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin.fail ( self, measRecord, error = None )
Record a failure of the measure or measureN method.

Parameters
----------
measRecord : lsst.afw.table.SourceRecord
Table record describing the source being measured.
error : MeasurementError, optional
Only provided if the measurement failed due to a
MeasurementError being raised; otherwise, will be None.

Notes
-----
When the plugin raises an exception, framework will call
BasePlugin.fail to allow the plugin to set its failure flag
field(s).  When BasePlugin.measureN raises an exception,
BasePlugin.fail will be called repeatedly with all the records that
were being measured.

If the exception is an MeasurementError, it will be passed as the
error argument; in all other cases the error argument will be None,
and the failure will be logged by the measurement framework as a
warning.

Reimplemented from lsst.meas.base.pluginsBase.BasePlugin.

Definition at line 110 of file cmodelContinued.py.

110  def fail(self, measRecord, error=None):
111  self.algorithm.fail(measRecord, error.cpp if error is not None else None)

## ◆ getExecutionOrder() [1/2]

 def lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin.getExecutionOrder ( )
static

Definition at line 95 of file cmodelContinued.py.

95  def getExecutionOrder():
96  return 3.0
97

## ◆ getExecutionOrder() [2/2]

 def lsst.meas.base.pluginsBase.BasePlugin.getExecutionOrder ( cls )
inherited
Get the relative execution order of this plugin.

Must be reimplemented as a class method by concrete derived classes.


Definition at line 121 of file pluginsBase.py.

121  def getExecutionOrder(cls):
122  """Get the relative execution order of this plugin.
123
124  Must be reimplemented as a class method by concrete derived classes.
125  """
126  raise NotImplementedError("All plugins must implement getExecutionOrder()")
127

## ◆ getLogName()

 def lsst.meas.base.pluginsBase.BasePlugin.getLogName ( self )
inherited

Definition at line 134 of file pluginsBase.py.

134  def getLogName(self):
135  return self.logName
136

## ◆ getTransformClass()

 def lsst.meas.base.pluginsBase.BasePlugin.getTransformClass ( )
staticinherited
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.


Definition at line 169 of file pluginsBase.py.

169  def getTransformClass():
170  """Get the measurement transformation appropriate to this plugin.
171
172  This returns a subclass of transforms.MeasurementTransform, which
173  may be instantiated with details of the algorithm configuration and
174  then called with information about calibration and WCS to convert from
175  raw measurement quantities to calibrated units. Calibrated data is
176  then provided in a separate output table.
177
178  Notes
179  -----
180  By default, we copy everything from the input to the output without
181  transformation.
182  """
183  return PassThroughTransform

## ◆ measure()

 def lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin.measure ( self, measRecord, exposure, refRecord, refWcs )
Measure the properties of a source given an image and a reference.

Parameters
----------
exposure : lsst.afw.image.ExposureF
The pixel data to be measured, together with the associated PSF,
WCS, etc. All other sources in the image should have been replaced
by noise according to deblender outputs.
measRecord : lsst.afw.table.SourceRecord
Record describing the object being measured. Previously-measured
in-place with the outputs of this plugin.
refRecord : lsst.afw.table.SimpleRecord
Additional parameters to define the fit, as measured elsewhere.
refWcs : lsst.afw.geom.SkyWcs or lsst.afw.geom.Angle
The coordinate system for the reference catalog values. An
~lsst.geom.Angle may be passed, indicating that a local tangent
WCS should be created for each object using the given angle as a
pixel scale.

Notes
-----
In the normal mode of operation, the source centroid will be set to
the WCS-transformed position of the reference object, so plugins that
only require a reference position should not have to access the
reference object at all.


Reimplemented from lsst.meas.base.forcedMeasurement.ForcedPlugin.

Definition at line 102 of file cmodelContinued.py.

102  def measure(self, measRecord, exposure, refRecord, refWcs):
103  if refWcs != exposure.getWcs():
105  "CModel forced measurement currently requires the measurement image to have the same"
106  " Wcs as the reference catalog (this is a temporary limitation)."
107  )
108  self.algorithm.measure(measRecord, exposure, refRecord)
109
Exception to be thrown when a measurement algorithm experiences a fatal error.
Definition: exceptions.h:76
def measure(mi, x, y, size, statistic, stats)
Definition: fringe.py:517

## ◆ measureN()

 def lsst.meas.base.forcedMeasurement.ForcedPlugin.measureN ( self, measCat, exposure, refCat, refWcs )
inherited
Measure the properties of blended sources from image & reference.

This operates on all members of a blend family at once.

Parameters
----------
exposure : lsst.afw.image.ExposureF
The pixel data to be measured, together with the associated PSF,
WCS, etc. Sources not in the blended hierarchy to be measured
should have been replaced with noise using deblender outputs.
measCat : lsst.afw.table.SourceCatalog
Catalog describing the objects (and only those objects) being
here, and it will be updated in-place with the outputs of this
plugin.
refCat : lsst.afw.table.SimpleCatalog
Additional parameters to define the fit, as measured elsewhere.
Ordered such that zip(measCat, refcat) may be used.
refWcs : lsst.afw.geom.SkyWcs or lsst.afw.geom.Angle
The coordinate system for the reference catalog values. An
~lsst.geom.Angle may be passed, indicating that a local tangent
WCS should be created for each object using the given angle as a
pixel scale.

Notes
-----
In the normal mode of operation, the source centroids will be set to
the WCS-transformed position of the reference object, so plugins that
only require a reference position should not have to access the
reference object at all.


Reimplemented in lsst.meas.base.wrappers.WrappedForcedPlugin.

Definition at line 135 of file forcedMeasurement.py.

135  def measureN(self, measCat, exposure, refCat, refWcs):
136  """Measure the properties of blended sources from image & reference.
137
138  This operates on all members of a blend family at once.
139
140  Parameters
141  ----------
142  exposure : lsst.afw.image.ExposureF
143  The pixel data to be measured, together with the associated PSF,
144  WCS, etc. Sources not in the blended hierarchy to be measured
145  should have been replaced with noise using deblender outputs.
146  measCat : lsst.afw.table.SourceCatalog
147  Catalog describing the objects (and only those objects) being
149  here, and it will be updated in-place with the outputs of this
150  plugin.
151  refCat : lsst.afw.table.SimpleCatalog
152  Additional parameters to define the fit, as measured elsewhere.
153  Ordered such that zip(measCat, refcat) may be used.
154  refWcs : lsst.afw.geom.SkyWcs or lsst.afw.geom.Angle
155  The coordinate system for the reference catalog values. An
156  ~lsst.geom.Angle may be passed, indicating that a local tangent
157  WCS should be created for each object using the given angle as a
158  pixel scale.
159
160  Notes
161  -----
162  In the normal mode of operation, the source centroids will be set to
163  the WCS-transformed position of the reference object, so plugins that
164  only require a reference position should not have to access the
165  reference object at all.
166  """
167  raise NotImplementedError()
168
169

## ◆ algorithm

 lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin.algorithm

Definition at line 100 of file cmodelContinued.py.

## ◆ APCORR_ORDER

 float lsst.meas.base.pluginsBase.BasePlugin.APCORR_ORDER = 3.0
staticinherited

Definition at line 98 of file pluginsBase.py.

## ◆ CENTROID_ORDER

 float lsst.meas.base.pluginsBase.BasePlugin.CENTROID_ORDER = 0.0
staticinherited

Definition at line 72 of file pluginsBase.py.

## ◆ config

 lsst.meas.base.pluginsBase.BasePlugin.config
inherited

Definition at line 130 of file pluginsBase.py.

## ◆ ConfigClass

 lsst.meas.modelfit.cmodel.cmodelContinued.CModelForcedPlugin.ConfigClass = CModelForcedConfig
static

Definition at line 92 of file cmodelContinued.py.

## ◆ DEFAULT_CATALOGCALCULATION

 float lsst.meas.base.pluginsBase.BasePlugin.DEFAULT_CATALOGCALCULATION = 4.0
staticinherited

Definition at line 108 of file pluginsBase.py.

## ◆ FLUX_ORDER

 float lsst.meas.base.pluginsBase.BasePlugin.FLUX_ORDER = 2.0
staticinherited

Definition at line 89 of file pluginsBase.py.

## ◆ logName

 lsst.meas.base.pluginsBase.BasePlugin.logName
inherited

Definition at line 132 of file pluginsBase.py.

## ◆ name

 lsst.meas.base.pluginsBase.BasePlugin.name
inherited

Definition at line 131 of file pluginsBase.py.

## ◆ registry

 lsst.meas.base.forcedMeasurement.ForcedPlugin.registry = PluginRegistry(ForcedPluginConfig)
staticinherited

Definition at line 96 of file forcedMeasurement.py.

## ◆ SHAPE_ORDER

 float lsst.meas.base.pluginsBase.BasePlugin.SHAPE_ORDER = 1.0
staticinherited

Definition at line 80 of file pluginsBase.py.

The documentation for this class was generated from the following file:
• /j/snowflake/release/lsstsw/stack/lsst-scipipe-0.7.0/Linux64/meas_modelfit/22.0.1-4-g44f2e3d+9e4ab0f4fa/python/lsst/meas/modelfit/cmodel/cmodelContinued.py