LSSTApplications
20.0.0
LSSTDataManagementBasePackage
|
Go to the documentation of this file.
25 #ifndef LSST_IP_DIFFIM_DIPOLEALGORITHMS_H
26 #define LSST_IP_DIFFIM_DIPOLEALGORITHMS_H
40 #include "ndarray/eigen.h"
218 _numPositiveKey(
schema.addField<int>(
name+
"_npos",
"number of positive pixels",
"count")),
219 _numNegativeKey(
schema.addField<int>(
name+
"_nneg",
"number of negative pixels",
"count"))
297 _chi2dofKey(
schema.addField<float>(
name+
"_chi2dof",
298 "chi2 per degree of freedom of fit"))
309 double negCenterX,
double negCenterY,
double negFlux,
310 double posCenterX,
double poCenterY,
double posFlux
335 #endif // !LSST_IP_DIFFIM_DIPOLEALGORITHMS_H
ResultKey const & getNegativeKeys() const
void fail(afw::table::SourceRecord &measRecord, meas::base::MeasurementError *error=NULL) const
Handle an exception thrown by the current algorithm by setting flags in the given record.
DipoleCentroidControl Control
An abstract base classes for which the same implementation can be used for both SingleFrameAlgorithm ...
static meas::base::FlagDefinition const POS_FLAG
NaiveDipoleCentroid(Control const &ctrl, std::string const &name, afw::table::Schema &schema)
Record class that contains measurements made on a single exposure.
float stepSizeCoord
"Default initial step size for coordinates in non-linear fitter" ;
ResultKey const & getPositiveKeys() const
Return the standard centroid keys registered by this algorithm.
@ SIGMA_ONLY
Only the diagonal elements of the covariance matrix are provided.
Intermediate base class for algorithms that compute a centroid.
meas::base::CentroidResultKey ResultKey
void measure(afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure) const
Given an image and a pixel position, return a Centroid using a naive 3x3 weighted moment.
NaiveDipoleFlux(Control const &ctrl, std::string const &name, afw::table::Schema &schema)
DipoleFluxControl Control
A typedef to the Control object for this algorithm, defined above.
Exception to be thrown when a measurement algorithm experiences a known failure mode.
DipoleFluxAlgorithm(Control const &ctrl, std::string const &name, afw::table::Schema &schema, std::string const &doc)
void measure(afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure) const
Given an image and a pixel position, return a Centroid using a naive 3x3 weighted moment.
Intermediate base class for algorithms that compute a flux.
meas::base::FlagHandler _flagHandler
Defines the fields and offsets for a table.
Intermediate base class for algorithms that compute a centroid.
A FunctorKey for CentroidResult.
ResultKey const & getNegativeKeys() const
A FunctorKey for FluxResult.
ResultKey const & getPositiveKeys() const
ResultKey const & getPositiveKeys() const
Return the standard flux keys registered by this algorithm.
static CentroidResultKey addFields(afw::table::Schema &schema, std::string const &name, std::string const &doc, UncertaintyEnum uncertainty)
Add the appropriate fields to a Schema, and return a CentroidResultKey that manages them.
vector-type utility class to build a collection of FlagDefinitions
C++ control object for PSF dipole fluxes.
int maxFnCalls
"Maximum function calls for non-linear fitter; 0 = unlimited" ;
DipoleCentroidAlgorithm(Control const &ctrl, std::string const &name, afw::table::Schema &schema, std::string const &doc)
static meas::base::FlagDefinition const FAILURE
const char * source()
Source function that allows astChannel to source from a Stream.
meas::base::FluxResultKey ResultKey
Utility class for handling flag fields that indicate the failure modes of an algorithm.
meas::base::FluxResultKey _fluxResultKey
meas::base::FluxResultKey _fluxResultKey
#define LSST_CONTROL_FIELD(NAME, TYPE, DOC)
A preprocessor macro used to define fields in C++ "control object" structs.
void fail(afw::table::SourceRecord &measRecord, meas::base::MeasurementError *error=NULL) const
Handle an exception thrown by the current algorithm by setting flags in the given record.
std::pair< double, int > chi2(afw::table::SourceRecord &source, afw::image::Exposure< float > const &exposure, double negCenterX, double negCenterY, double negFlux, double posCenterX, double poCenterY, double posFlux) const
A base class for image defects.
ResultKey const & getCenterKeys() const
Return the standard centroid keys registered by this algorithm.
static meas::base::FlagDefinitionList const & getFlagDefinitions()
Simple class used to define and document flags The name and doc constitute the identity of the FlagDe...
static meas::base::FlagDefinition const NEG_FLAG
NaiveDipoleCentroid(Control const &ctrl, std::string const &name, afw::table::Schema &schema, ResultKey const &positiveKeys, ResultKey const &negativeKeys)
Initialize with a manually-constructed key tuple.
Implementation of Psf dipole flux.
void mergeCentroids(afw::table::SourceRecord &source, double posValue, double negValue) const
void fail(afw::table::SourceRecord &measRecord, meas::base::MeasurementError *error=NULL) const
Handle an exception thrown by the current algorithm by setting flags in the given record.
ResultKey const & getNegativeKeys() const
static meas::base::FlagDefinition const NEG_FLAG
meas::base::FlagHandler _flagHandler
static FluxResultKey addFields(afw::table::Schema &schema, std::string const &name, std::string const &doc)
Add a pair of _instFlux, _instFluxErr fields to a Schema, and return a FluxResultKey that points to t...
double errorDef
"How many sigma the error bars of the non-linear fitter represent" ;
PsfDipoleFluxControl Control
void measure(afw::table::SourceRecord &measRecord, afw::image::Exposure< float > const &exposure) const
Called to measure a single child source in an image.
PsfDipoleFlux(PsfDipoleFluxControl const &ctrl, std::string const &name, afw::table::Schema &schema)
float stepSizeFlux
"Default initial step size for flux in non-linear fitter" ;
static meas::base::FlagDefinition const POS_FLAG
static meas::base::FlagDefinitionList const & getFlagDefinitions()
static FlagHandler addFields(afw::table::Schema &schema, std::string const &prefix, FlagDefinitionList const &flagDefs, FlagDefinitionList const &exclDefs=FlagDefinitionList::getEmptyList())
Add Flag fields to a schema, creating a FlagHandler object to manage them.
meas::base::CentroidResultKey ResultKey
Tuple type that holds the keys that define a standard centroid algorithm.
DipoleFluxControl Control
static meas::base::FlagDefinition const FAILURE