|
lsst.ip.diffim
18.1.0-8-g63591cb
|
Public Member Functions | |
| def | getExecutionOrder (cls) |
| def | __init__ (self, config, name, schema, metadata) |
| def | measure (self, measRecord, exposure, posExp=None, negExp=None) |
| def | doClassify (self, measRecord, chi2val) |
| def | fail (self, measRecord, error=None) |
Public Attributes | |
| log | |
| centroidKey | |
| fluxKey | |
| orientationKey | |
| separationKey | |
| chi2dofKey | |
| signalToNoiseKey | |
| classificationFlagKey | |
| classificationAttemptedFlagKey | |
| flagKey | |
| edgeFlagKey | |
Static Public Attributes | |
| ConfigClass = DipoleFitPluginConfig | |
| DipoleFitAlgorithmClass = DipoleFitAlgorithm | |
| int | FAILURE_EDGE = 1 |
| int | FAILURE_FIT = 2 |
| int | FAILURE_NOT_DIPOLE = 4 |
A single frame measurement plugin that fits dipoles to all merged (two-peak) ``diaSources``. This measurement plugin accepts up to three input images in its `measure` method. If these are provided, it includes data from the pre-subtraction posImage (science image) and optionally negImage (template image) to constrain the fit. The meat of the fitting routines are in the class `~lsst.module.name.DipoleFitAlgorithm`. Notes ----- The motivation behind this plugin and the necessity for including more than one exposure are documented in DMTN-007 (http://dmtn-007.lsst.io). This class is named `ip_diffim_DipoleFit` so that it may be used alongside the existing `ip_diffim_DipoleMeasurement` classes until such a time as those are deemed to be replaceable by this.
Definition at line 941 of file dipoleFitTask.py.
| def lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.__init__ | ( | self, | |
| config, | |||
| name, | |||
| schema, | |||
| metadata | |||
| ) |
Definition at line 976 of file dipoleFitTask.py.
| def lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.doClassify | ( | self, | |
| measRecord, | |||
| chi2val | |||
| ) |
Classify a source as a dipole.
Parameters
----------
measRecord : TODO: DM-17458
TODO: DM-17458
chi2val : TODO: DM-17458
TODO: DM-17458
Notes
-----
Sources are classified as dipoles, or not, according to three criteria:
1. Does the total signal-to-noise surpass the ``minSn``?
2. Are the pos/neg fluxes greater than 1.0 and no more than 0.65 (``maxFluxRatio``)
of the total flux? By default this will never happen since ``posFlux == negFlux``.
3. Is it a good fit (``chi2dof`` < 1)? (Currently not used.)
Definition at line 1146 of file dipoleFitTask.py.
| def lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.fail | ( | self, | |
| measRecord, | |||
error = None |
|||
| ) |
Catch failures and set the correct flags.
Definition at line 1198 of file dipoleFitTask.py.
| def lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.getExecutionOrder | ( | cls | ) |
Set execution order to `FLUX_ORDER`. This includes algorithms that require both `getShape()` and `getCentroid()`, in addition to a Footprint and its Peaks.
Definition at line 968 of file dipoleFitTask.py.
| def lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.measure | ( | self, | |
| measRecord, | |||
| exposure, | |||
posExp = None, |
|||
negExp = None |
|||
| ) |
Perform the non-linear least squares minimization on the putative dipole source.
Parameters
----------
measRecord : `lsst.afw.table.SourceRecord`
diaSources that will be measured using dipole measurement
exposure : `lsst.afw.image.Exposure`
Difference exposure on which the diaSources were detected; `exposure = posExp-negExp`
If both `posExp` and `negExp` are `None`, will attempt to fit the
dipole to just the `exposure` with no constraint.
posExp : `lsst.afw.image.Exposure`, optional
"Positive" exposure, typically a science exposure, or None if unavailable
When `posExp` is `None`, will compute `posImage = exposure + negExp`.
negExp : `lsst.afw.image.Exposure`, optional
"Negative" exposure, typically a template exposure, or None if unavailable
When `negExp` is `None`, will compute `negImage = posExp - exposure`.
Notes
-----
The main functionality of this routine was placed outside of
this plugin (into `DipoleFitAlgorithm.fitDipole()`) so that
`DipoleFitAlgorithm.fitDipole()` can be called separately for
testing (@see `tests/testDipoleFitter.py`)
Returns
-------
result : TODO: DM-17458
TODO: DM-17458
Definition at line 1051 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.centroidKey |
Definition at line 985 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.chi2dofKey |
Definition at line 1027 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.classificationAttemptedFlagKey |
Definition at line 1039 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.classificationFlagKey |
Definition at line 1035 of file dipoleFitTask.py.
|
static |
Definition at line 960 of file dipoleFitTask.py.
|
static |
Definition at line 961 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.edgeFlagKey |
Definition at line 1047 of file dipoleFitTask.py.
|
static |
Definition at line 963 of file dipoleFitTask.py.
|
static |
Definition at line 964 of file dipoleFitTask.py.
|
static |
Definition at line 965 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.flagKey |
Definition at line 1043 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.fluxKey |
Definition at line 1015 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.log |
Definition at line 979 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.orientationKey |
Definition at line 1019 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.separationKey |
Definition at line 1023 of file dipoleFitTask.py.
| lsst.ip.diffim.dipoleFitTask.DipoleFitPlugin.signalToNoiseKey |
Definition at line 1031 of file dipoleFitTask.py.
1.8.13