LSST Applications g0d97872fb5+4fd969bb9d,g1653933729+34a971ddd9,g28da252d5a+072f89fe25,g2bbee38e9b+a99b0ab4cd,g2bc492864f+a99b0ab4cd,g2ca4be77d2+c0e3b27cd8,g2cdde0e794+704103fe75,g3156d2b45e+6e87dc994a,g347aa1857d+a99b0ab4cd,g35bb328faa+34a971ddd9,g3a166c0a6a+a99b0ab4cd,g3e281a1b8c+8ec26ec694,g4005a62e65+ba0306790b,g414038480c+9ed5ed841a,g569e0e2b34+cb4faa46ad,g5a97de2502+520531a62c,g717e5f8c0f+29153700a5,g7ede599f99+367733290c,g80478fca09+17051a22cc,g82479be7b0+f2f1ea0a87,g858d7b2824+29153700a5,g8b782ad322+29153700a5,g8cd86fa7b1+05420e7f7d,g9125e01d80+34a971ddd9,ga5288a1d22+e7f674aaf3,gae0086650b+34a971ddd9,gae74b0b5c6+45ef5cdc51,gb58c049af0+ace264a4f2,gc28159a63d+a99b0ab4cd,gcf0d15dbbd+8051a81198,gda6a2b7d83+8051a81198,gdaeeff99f8+7774323b41,gdf4d240d4a+34a971ddd9,ge2409df99d+cb167bac99,ge33fd446bb+29153700a5,ge79ae78c31+a99b0ab4cd,gf0baf85859+890af219f9,gf5289d68f6+9faa5c5784,w.2024.36
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.meas.base.plugins.SingleFrameJacobianPlugin Class Reference
Inheritance diagram for lsst.meas.base.plugins.SingleFrameJacobianPlugin:
lsst.meas.base.sfm.SingleFramePlugin lsst.meas.base.baseMeasurement.BaseMeasurementPlugin lsst.meas.base.pluginsBase.BasePlugin

Public Member Functions

 getExecutionOrder (cls)
 
 __init__ (self, config, name, schema, metadata)
 
 measure (self, measRecord, exposure)
 
 fail (self, measRecord, error=None)
 

Public Attributes

 jacValue
 
 jacFlag
 
 scale
 

Static Public Attributes

 ConfigClass = SingleFrameJacobianConfig
 

Detailed Description

Compute the Jacobian and its ratio with a nominal pixel area.

This enables one to compare relative, rather than absolute, pixel areas.

Parameters
----------
config : `SingleFrameJacobianConfig`
    Plugin configuraion.
name : `str`
    Plugin name.
schema : `lsst.afw.table.Schema`
    The schema for the measurement output catalog. New fields will be
    added to hold measurements produced by this plugin.
metadata : `lsst.daf.base.PropertySet`
    Plugin metadata that will be attached to the output catalog

Definition at line 181 of file plugins.py.

Constructor & Destructor Documentation

◆ __init__()

lsst.meas.base.plugins.SingleFrameJacobianPlugin.__init__ ( self,
config,
name,
schema,
metadata )

Reimplemented from lsst.meas.base.sfm.SingleFramePlugin.

Definition at line 205 of file plugins.py.

205 def __init__(self, config, name, schema, metadata):
206 SingleFramePlugin.__init__(self, config, name, schema, metadata)
207 self.jacValue = schema.addField(name + '_value', type="D", doc="Jacobian correction")
208 self.jacFlag = schema.addField(name + '_flag', type="Flag", doc="Set to 1 for any fatal failure")
209 # Calculate one over the area of a nominal reference pixel, where area is in arcsec^2
210 self.scale = pow(self.config.pixelScale, -2)
211

Member Function Documentation

◆ fail()

lsst.meas.base.plugins.SingleFrameJacobianPlugin.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 221 of file plugins.py.

221 def fail(self, measRecord, error=None):
222 measRecord.set(self.jacFlag, True)
223
224

◆ getExecutionOrder()

lsst.meas.base.plugins.SingleFrameJacobianPlugin.getExecutionOrder ( cls)
Get the relative execution order of this plugin.

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

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

Definition at line 202 of file plugins.py.

202 def getExecutionOrder(cls):
203 return cls.SHAPE_ORDER
204

◆ measure()

lsst.meas.base.plugins.SingleFrameJacobianPlugin.measure ( self,
measRecord,
exposure )
Measure the properties of a source on a single image.

The image may be from a single epoch, or it may be a coadd.

Parameters
----------
measRecord : `lsst.afw.table.SourceRecord`
    Record describing the object being measured. Previously-measured
    quantities may be retrieved from here, and it will be updated
    in-place tih the outputs of this plugin.
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.

Reimplemented from lsst.meas.base.sfm.SingleFramePlugin.

Definition at line 212 of file plugins.py.

212 def measure(self, measRecord, exposure):
213 center = measRecord.getCentroid()
214 # Compute the area of a pixel at a source record's centroid, and take
215 # the ratio of that with the defined reference pixel area.
216 result = np.abs(self.scale*exposure.getWcs().linearizePixelToSky(
217 center,
218 lsst.geom.arcseconds).getLinear().computeDeterminant())
219 measRecord.set(self.jacValue, result)
220

Member Data Documentation

◆ ConfigClass

lsst.meas.base.plugins.SingleFrameJacobianPlugin.ConfigClass = SingleFrameJacobianConfig
static

Definition at line 199 of file plugins.py.

◆ jacFlag

lsst.meas.base.plugins.SingleFrameJacobianPlugin.jacFlag

Definition at line 208 of file plugins.py.

◆ jacValue

lsst.meas.base.plugins.SingleFrameJacobianPlugin.jacValue

Definition at line 207 of file plugins.py.

◆ scale

lsst.meas.base.plugins.SingleFrameJacobianPlugin.scale

Definition at line 210 of file plugins.py.


The documentation for this class was generated from the following file: