LSSTApplications  16.0-10-g4f78f78+16,16.0-10-gc1446dd+42,16.0-11-g09ed895+1,16.0-13-g7649090,16.0-14-g0a28612+1,16.0-14-g6c7ed55+16,16.0-15-ga29f190+1,16.0-16-g89065d4+14,16.0-16-gd8e3590+16,16.0-16-ge6a35c8+6,16.0-17-g7e0e4ff+10,16.0-17-ga3d2e9f,16.0-19-gb830ed4e+16,16.0-2-g0febb12+21,16.0-2-g9d5294e+61,16.0-2-ga8830df+5,16.0-24-gc1c7f52+9,16.0-25-g07af9f2+1,16.0-3-ge00e371+21,16.0-36-g07840cb1,16.0-4-g18f3627+5,16.0-4-g5f3a788+20,16.0-4-ga3eb747+10,16.0-4-gabf74b7+16,16.0-4-gade8416+9,16.0-4-gb13d127+5,16.0-5-g6a53317+21,16.0-5-gb3f8a4b+74,16.0-5-gef99c9f+12,16.0-6-g9321be7+4,16.0-6-gcbc7b31+22,16.0-6-gf49912c+16,16.0-63-gae20905ba,16.0-7-gd2eeba5+31,16.0-8-g21fd5fe+16,16.0-8-g3a9f023+12,16.0-8-g4734f7a,16.0-9-g85d1a16+16,16.0-9-gf5c1f43,master-g07ce7b41a7,w.2018.48
LSSTDataManagementBasePackage
Public Member Functions | Friends | List of all members
lsst::jointcal::PhotometryTransfo Class Referenceabstract

A photometric transform, defined in terms of the input flux or magnitude. More...

#include <PhotometryTransfo.h>

Inheritance diagram for lsst::jointcal::PhotometryTransfo:
lsst::jointcal::PhotometryTransfoChebyshev lsst::jointcal::PhotometryTransfoSpatiallyInvariant lsst::jointcal::FluxTransfoChebyshev lsst::jointcal::MagnitudeTransfoChebyshev lsst::jointcal::FluxTransfoSpatiallyInvariant lsst::jointcal::MagnitudeTransfoSpatiallyInvariant

Public Member Functions

virtual double transform (double x, double y, double value) const =0
 Return the transform of value at (x,y). More...
 
double transform (Point const &in, double value) const
 Return the transformed value at Point(x,y). More...
 
virtual double transformError (double x, double y, double value, double valueErr) const =0
 Return the transformed valueErr at Point(x,y). More...
 
double transformError (Point const &in, double value, double valueErr) const
 Return the transformed valueErr at Point(x,y). More...
 
virtual void dump (std::ostream &stream=std::cout) const =0
 dumps the transfo coefficients to stream. More...
 
virtual int getNpar () const =0
 Return the number of parameters (used to compute chisq) More...
 
virtual void offsetParams (Eigen::VectorXd const &delta)=0
 Offset the parameters by some (negative) amount during fitting. More...
 
virtual std::shared_ptr< PhotometryTransfoclone () const =0
 return a copy (allocated by new) of the transformation. More...
 
virtual void computeParameterDerivatives (double x, double y, double value, Eigen::Ref< Eigen::VectorXd > derivatives) const =0
 Compute the derivatives with respect to the parameters (i.e. More...
 
virtual Eigen::VectorXd getParameters () const =0
 Get a copy of the parameters of this model, in the same order as offsetParams. More...
 

Friends

std::ostreamoperator<< (std::ostream &s, PhotometryTransfo const &transfo)
 

Detailed Description

A photometric transform, defined in terms of the input flux or magnitude.

Unit agnostic: a higher level Model must keep track of the units going into and out of of its Transfos.

See also
lsst::afw::image::PhotoCalib

Definition at line 52 of file PhotometryTransfo.h.

Member Function Documentation

◆ clone()

virtual std::shared_ptr<PhotometryTransfo> lsst::jointcal::PhotometryTransfo::clone ( ) const
pure virtual

◆ computeParameterDerivatives()

virtual void lsst::jointcal::PhotometryTransfo::computeParameterDerivatives ( double  x,
double  y,
double  value,
Eigen::Ref< Eigen::VectorXd >  derivatives 
) const
pure virtual

Compute the derivatives with respect to the parameters (i.e.

the coefficients).

Parameters
[in]xThe x coordinate to compute at (in the appropriate units for this transfo).
[in]yThe y coordinate to compute at (in the appropriate units for this transfo).
[in]valueThe instrument flux or magnitude to compute the derivative at.
[out]derivativesThe computed derivatives, in the same order as the deltas in offsetParams.

Implemented in lsst::jointcal::MagnitudeTransfoChebyshev, lsst::jointcal::FluxTransfoChebyshev, lsst::jointcal::MagnitudeTransfoSpatiallyInvariant, and lsst::jointcal::FluxTransfoSpatiallyInvariant.

◆ dump()

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

dumps the transfo coefficients to stream.

Implemented in lsst::jointcal::PhotometryTransfoChebyshev, and lsst::jointcal::PhotometryTransfoSpatiallyInvariant.

◆ getNpar()

virtual int lsst::jointcal::PhotometryTransfo::getNpar ( ) const
pure virtual

Return the number of parameters (used to compute chisq)

Implemented in lsst::jointcal::PhotometryTransfoChebyshev, and lsst::jointcal::PhotometryTransfoSpatiallyInvariant.

◆ getParameters()

virtual Eigen::VectorXd lsst::jointcal::PhotometryTransfo::getParameters ( ) const
pure virtual

Get a copy of the parameters of this model, in the same order as offsetParams.

Implemented in lsst::jointcal::PhotometryTransfoChebyshev, and lsst::jointcal::PhotometryTransfoSpatiallyInvariant.

◆ offsetParams()

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

Offset the parameters by some (negative) amount during fitting.

Equivalent to flatten(parameters) -= delta

Ordering of delta is the same as the ordering of the derivatives returned from computeParameterDerivatives.

Implemented in lsst::jointcal::PhotometryTransfoChebyshev, and lsst::jointcal::PhotometryTransfoSpatiallyInvariant.

◆ transform() [1/2]

virtual double lsst::jointcal::PhotometryTransfo::transform ( double  x,
double  y,
double  value 
) const
pure virtual

◆ transform() [2/2]

double lsst::jointcal::PhotometryTransfo::transform ( Point const &  in,
double  value 
) const
inline

Return the transformed value at Point(x,y).

Definition at line 58 of file PhotometryTransfo.h.

58 { return transform(in.x, in.y, value); }
virtual double transform(double x, double y, double value) const =0
Return the transform of value at (x,y).

◆ transformError() [1/2]

virtual double lsst::jointcal::PhotometryTransfo::transformError ( double  x,
double  y,
double  value,
double  valueErr 
) const
pure virtual

◆ transformError() [2/2]

double lsst::jointcal::PhotometryTransfo::transformError ( Point const &  in,
double  value,
double  valueErr 
) const
inline

Return the transformed valueErr at Point(x,y).

Definition at line 64 of file PhotometryTransfo.h.

64  {
65  return transformError(in.x, in.y, value, valueErr);
66  }
virtual double transformError(double x, double y, double value, double valueErr) const =0
Return the transformed valueErr at Point(x,y).

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream s,
PhotometryTransfo const &  transfo 
)
friend

Definition at line 71 of file PhotometryTransfo.h.

71  {
72  transfo.dump(s);
73  return s;
74  }
solver_t * s

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