lsst.jointcal  16.0-15-g8e16a51+3
Public Member Functions | Protected Member Functions | Friends | List of all members
lsst::jointcal::PhotometryModel Class Referenceabstract

Interface class for PhotometryFit. More...

#include <PhotometryModel.h>

Inheritance diagram for lsst::jointcal::PhotometryModel:
lsst::jointcal::ConstrainedPhotometryModel lsst::jointcal::SimplePhotometryModel lsst::jointcal::ConstrainedFluxModel lsst::jointcal::ConstrainedMagnitudeModel lsst::jointcal::SimpleFluxModel lsst::jointcal::SimpleMagnitudeModel

Public Member Functions

virtual unsigned assignIndices (std::string const &whatToFit, unsigned firstIndex)=0
 Assign indices in the full matrix to the parameters being fit in the mappings, starting at firstIndex. More...
 
virtual void offsetParams (Eigen::VectorXd const &delta)=0
 Offset the parameters by the provided amounts (by -delta). More...
 
virtual void offsetFittedStar (FittedStar &fittedStar, double delta) const =0
 Offset the appropriate flux or magnitude (by -delta). More...
 
virtual double computeResidual (CcdImage const &ccdImage, MeasuredStar const &measuredStar) const =0
 Compute the residual between the model applied to a star and its associated fittedStar. More...
 
virtual double transform (CcdImage const &ccdImage, MeasuredStar const &measuredStar) const =0
 Return the on-sky transformed flux for measuredStar on ccdImage. More...
 
virtual double transformError (CcdImage const &ccdImage, MeasuredStar const &measuredStar) const =0
 Return the on-sky transformed flux uncertainty for measuredStar on ccdImage. More...
 
virtual void freezeErrorTransform ()=0
 Once this routine has been called, the error transform is not modified by offsetParams(). More...
 
virtual void getMappingIndices (CcdImage const &ccdImage, std::vector< unsigned > &indices) const =0
 Get how this set of parameters (of length Npar()) map into the "grand" fit. More...
 
virtual void computeParameterDerivatives (MeasuredStar const &measuredStar, CcdImage const &ccdImage, Eigen::VectorXd &derivatives) const =0
 Compute the parametric derivatives of this model. More...
 
virtual double getRefError (RefStar const &refStar) const =0
 Return the refStar error appropriate for this model (e.g. fluxErr or magErr). More...
 
virtual double computeRefResidual (FittedStar const &fittedStar, RefStar const &refStar) const =0
 Return the fittedStar - refStar residual appropriate for this model (e.g. flux - flux or mag - mag). More...
 
virtual std::shared_ptr< afw::image::PhotoCalibtoPhotoCalib (CcdImage const &ccdImage) const =0
 Return the mapping of ccdImage represented as a PhotoCalib. More...
 
unsigned getNpar (CcdImage const &ccdImage) const
 Return the number of parameters in the mapping of CcdImage. More...
 
PhotometryMappingBase const & getMapping (CcdImage const &ccdImage) const
 Get the mapping associated with ccdImage. More...
 
virtual int getTotalParameters () const =0
 Return the total number of parameters in this model. More...
 
virtual void dump (std::ostream &stream=std::cout) const =0
 Dump the contents of the transfos, for debugging. More...
 

Protected Member Functions

virtual PhotometryMappingBasefindMapping (CcdImage const &ccdImage) const =0
 Return a pointer to the mapping associated with this ccdImage. More...
 

Friends

std::ostreamoperator<< (std::ostream &s, PhotometryModel const &model)
 

Detailed Description

Interface class for PhotometryFit.

Definition at line 24 of file PhotometryModel.h.

Member Function Documentation

◆ assignIndices()

virtual unsigned lsst::jointcal::PhotometryModel::assignIndices ( std::string const &  whatToFit,
unsigned  firstIndex 
)
pure virtual

Assign indices in the full matrix to the parameters being fit in the mappings, starting at firstIndex.

Parameters
[in]whatToFitString containing parameters to fit.
[in]firstIndexIndex to start assigning at.
Returns
The highest assigned index.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ computeParameterDerivatives()

virtual void lsst::jointcal::PhotometryModel::computeParameterDerivatives ( MeasuredStar const &  measuredStar,
CcdImage const &  ccdImage,
Eigen::VectorXd &  derivatives 
) const
pure virtual

Compute the parametric derivatives of this model.

Parameters
[in]measuredStarThe measured star with the position and flux to compute at.
[in]ccdImageThe ccdImage containing the measured star, to find the correct mapping.
[out]derivativesThe computed derivatives. Must be pre-allocated to the correct size.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ computeRefResidual()

virtual double lsst::jointcal::PhotometryModel::computeRefResidual ( FittedStar const &  fittedStar,
RefStar const &  refStar 
) const
pure virtual

Return the fittedStar - refStar residual appropriate for this model (e.g. flux - flux or mag - mag).

Implemented in lsst::jointcal::ConstrainedMagnitudeModel, lsst::jointcal::ConstrainedFluxModel, lsst::jointcal::SimpleMagnitudeModel, and lsst::jointcal::SimpleFluxModel.

◆ computeResidual()

virtual double lsst::jointcal::PhotometryModel::computeResidual ( CcdImage const &  ccdImage,
MeasuredStar const &  measuredStar 
) const
pure virtual

Compute the residual between the model applied to a star and its associated fittedStar.

\[ residual = Model(measuredStar) - fittedStar \]

Parameters
ccdImageThe ccdImage where measuredStar resides.
measuredStarThe measured star position to compute the residual of.
Returns
The residual.

Implemented in lsst::jointcal::ConstrainedMagnitudeModel, lsst::jointcal::ConstrainedFluxModel, lsst::jointcal::SimpleMagnitudeModel, and lsst::jointcal::SimpleFluxModel.

◆ dump()

virtual void lsst::jointcal::PhotometryModel::dump ( std::ostream stream = std::cout) const
pure virtual

Dump the contents of the transfos, for debugging.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ findMapping()

virtual PhotometryMappingBase* lsst::jointcal::PhotometryModel::findMapping ( CcdImage const &  ccdImage) const
protectedpure virtual

Return a pointer to the mapping associated with this ccdImage.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ freezeErrorTransform()

virtual void lsst::jointcal::PhotometryModel::freezeErrorTransform ( )
pure virtual

Once this routine has been called, the error transform is not modified by offsetParams().

The routine can be called when the mappings are roughly in place. After the call, the transformations used to propagate errors are no longer affected when updating the mappings. This allows an exactly linear fit, which can be necessary for some model+data combinations.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ getMapping()

PhotometryMappingBase const& lsst::jointcal::PhotometryModel::getMapping ( CcdImage const &  ccdImage) const
inline

Get the mapping associated with ccdImage.

Definition at line 130 of file PhotometryModel.h.

◆ getMappingIndices()

virtual void lsst::jointcal::PhotometryModel::getMappingIndices ( CcdImage const &  ccdImage,
std::vector< unsigned > &  indices 
) const
pure virtual

Get how this set of parameters (of length Npar()) map into the "grand" fit.

Parameters
[in]ccdImageThe ccdImage to look up.
[out]indicesThe indices of the mapping associated with ccdImage.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ getNpar()

unsigned lsst::jointcal::PhotometryModel::getNpar ( CcdImage const &  ccdImage) const
inline

Return the number of parameters in the mapping of CcdImage.

Definition at line 127 of file PhotometryModel.h.

◆ getRefError()

virtual double lsst::jointcal::PhotometryModel::getRefError ( RefStar const &  refStar) const
pure virtual

Return the refStar error appropriate for this model (e.g. fluxErr or magErr).

Implemented in lsst::jointcal::ConstrainedMagnitudeModel, lsst::jointcal::ConstrainedFluxModel, lsst::jointcal::SimpleMagnitudeModel, and lsst::jointcal::SimpleFluxModel.

◆ getTotalParameters()

virtual int lsst::jointcal::PhotometryModel::getTotalParameters ( ) const
pure virtual

Return the total number of parameters in this model.

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ offsetFittedStar()

virtual void lsst::jointcal::PhotometryModel::offsetFittedStar ( FittedStar fittedStar,
double  delta 
) const
pure virtual

Offset the appropriate flux or magnitude (by -delta).

Parameters
fittedStarThe star to update.
deltaThe amount to update by.

Implemented in lsst::jointcal::ConstrainedMagnitudeModel, lsst::jointcal::ConstrainedFluxModel, lsst::jointcal::SimpleMagnitudeModel, and lsst::jointcal::SimpleFluxModel.

◆ offsetParams()

virtual void lsst::jointcal::PhotometryModel::offsetParams ( Eigen::VectorXd const &  delta)
pure virtual

Offset the parameters by the provided amounts (by -delta).

The shifts are applied according to the indices given in assignIndices.

Parameters
[in]deltavector of offsets to apply

Implemented in lsst::jointcal::ConstrainedPhotometryModel, and lsst::jointcal::SimplePhotometryModel.

◆ toPhotoCalib()

virtual std::shared_ptr<afw::image::PhotoCalib> lsst::jointcal::PhotometryModel::toPhotoCalib ( CcdImage const &  ccdImage) const
pure virtual

◆ transform()

virtual double lsst::jointcal::PhotometryModel::transform ( CcdImage const &  ccdImage,
MeasuredStar const &  measuredStar 
) const
pure virtual

Return the on-sky transformed flux for measuredStar on ccdImage.

Parameters
[in]ccdImageThe ccdImage where measuredStar resides.
measuredStarThe measured star position to transform.
Returns
The on-sky flux transformed from instFlux at measuredStar's position.

Implemented in lsst::jointcal::ConstrainedMagnitudeModel, lsst::jointcal::ConstrainedFluxModel, lsst::jointcal::SimpleMagnitudeModel, and lsst::jointcal::SimpleFluxModel.

◆ transformError()

virtual double lsst::jointcal::PhotometryModel::transformError ( CcdImage const &  ccdImage,
MeasuredStar const &  measuredStar 
) const
pure virtual

Return the on-sky transformed flux uncertainty for measuredStar on ccdImage.

Identical to transform() until freezeErrorTransform() is called.

Parameters
[in]ccdImageThe ccdImage where measuredStar resides.
measuredStarThe measured star position to transform.
Returns
The on-sky flux transformed from instFlux at measuredStar's position.

Implemented in lsst::jointcal::ConstrainedMagnitudeModel, lsst::jointcal::ConstrainedFluxModel, lsst::jointcal::SimpleMagnitudeModel, and lsst::jointcal::SimpleFluxModel.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream s,
PhotometryModel const &  model 
)
friend

Definition at line 140 of file PhotometryModel.h.


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