LSSTApplications  19.0.0-14-gb0260a2+72efe9b372,20.0.0+7927753e06,20.0.0+8829bf0056,20.0.0+995114c5d2,20.0.0+b6f4b2abd1,20.0.0+bddc4f4cbe,20.0.0-1-g253301a+8829bf0056,20.0.0-1-g2b7511a+0d71a2d77f,20.0.0-1-g5b95a8c+7461dd0434,20.0.0-12-g321c96ea+23efe4bbff,20.0.0-16-gfab17e72e+fdf35455f6,20.0.0-2-g0070d88+ba3ffc8f0b,20.0.0-2-g4dae9ad+ee58a624b3,20.0.0-2-g61b8584+5d3db074ba,20.0.0-2-gb780d76+d529cf1a41,20.0.0-2-ged6426c+226a441f5f,20.0.0-2-gf072044+8829bf0056,20.0.0-2-gf1f7952+ee58a624b3,20.0.0-20-geae50cf+e37fec0aee,20.0.0-25-g3dcad98+544a109665,20.0.0-25-g5eafb0f+ee58a624b3,20.0.0-27-g64178ef+f1f297b00a,20.0.0-3-g4cc78c6+e0676b0dc8,20.0.0-3-g8f21e14+4fd2c12c9a,20.0.0-3-gbd60e8c+187b78b4b8,20.0.0-3-gbecbe05+48431fa087,20.0.0-38-ge4adf513+a12e1f8e37,20.0.0-4-g97dc21a+544a109665,20.0.0-4-gb4befbc+087873070b,20.0.0-4-gf910f65+5d3db074ba,20.0.0-5-gdfe0fee+199202a608,20.0.0-5-gfbfe500+d529cf1a41,20.0.0-6-g64f541c+d529cf1a41,20.0.0-6-g9a5b7a1+a1cd37312e,20.0.0-68-ga3f3dda+5fca18c6a4,20.0.0-9-g4aef684+e18322736b,w.2020.45
LSSTDataManagementBasePackage
Public Member Functions | Protected Member Functions | List of all members
lsst::jointcal::FluxTransformSpatiallyInvariant Class Reference

Photometric offset independent of position, defined as (fluxMag0)^-1. More...

#include <PhotometryTransform.h>

Inheritance diagram for lsst::jointcal::FluxTransformSpatiallyInvariant:
lsst::jointcal::PhotometryTransformSpatiallyInvariant lsst::jointcal::PhotometryTransform

Public Member Functions

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

Protected Member Functions

double getValue () const
 

Detailed Description

Photometric offset independent of position, defined as (fluxMag0)^-1.

initialCalibFlux * SpatiallyInvariantTransform -> correctedFlux

Definition at line 146 of file PhotometryTransform.h.

Constructor & Destructor Documentation

◆ FluxTransformSpatiallyInvariant()

lsst::jointcal::FluxTransformSpatiallyInvariant::FluxTransformSpatiallyInvariant ( double  value = 1)
inlineexplicit

Definition at line 148 of file PhotometryTransform.h.

Member Function Documentation

◆ clone()

std::shared_ptr<PhotometryTransform> lsst::jointcal::FluxTransformSpatiallyInvariant::clone ( ) const
inlineoverridevirtual

return a copy (allocated by new) of the transformation.

Implements lsst::jointcal::PhotometryTransform.

Definition at line 160 of file PhotometryTransform.h.

160  {
161  return std::make_shared<FluxTransformSpatiallyInvariant>(getValue());
162  }

◆ computeParameterDerivatives()

void lsst::jointcal::FluxTransformSpatiallyInvariant::computeParameterDerivatives ( double  x,
double  y,
double  value,
Eigen::Ref< Eigen::VectorXd >  derivatives 
) const
inlineoverridevirtual

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 transform).
[in]yThe y coordinate to compute at (in the appropriate units for this transform).
[in]valueThe instrument flux or magnitude to compute the derivative at.
[out]derivativesThe computed derivatives, in the same order as the deltas in offsetParams.

Implements lsst::jointcal::PhotometryTransform.

Definition at line 165 of file PhotometryTransform.h.

166  {
167  // the derivative of a spatially constant transform w.r.t. that value is just the value.
168  derivatives[0] = value;
169  }

◆ getNpar()

std::size_t lsst::jointcal::PhotometryTransformSpatiallyInvariant::getNpar ( ) const
inlineoverridevirtualinherited

Return the number of parameters (used to compute chisq)

Implements lsst::jointcal::PhotometryTransform.

Definition at line 120 of file PhotometryTransform.h.

120 { return 1; }

◆ getParameters()

Eigen::VectorXd lsst::jointcal::PhotometryTransformSpatiallyInvariant::getParameters ( ) const
inlineoverridevirtualinherited

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

Implements lsst::jointcal::PhotometryTransform.

Definition at line 126 of file PhotometryTransform.h.

126  {
127  Eigen::VectorXd parameters(1);
128  parameters[0] = _value;
129  return parameters;
130  }

◆ getValue()

double lsst::jointcal::PhotometryTransformSpatiallyInvariant::getValue ( ) const
inlineprotectedinherited

Definition at line 133 of file PhotometryTransform.h.

133 { return _value; }

◆ offsetParams()

void lsst::jointcal::PhotometryTransformSpatiallyInvariant::offsetParams ( Eigen::VectorXd const &  delta)
inlineoverridevirtualinherited

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.

Implements lsst::jointcal::PhotometryTransform.

Definition at line 123 of file PhotometryTransform.h.

123 { _value -= delta[0]; };

◆ print()

void lsst::jointcal::PhotometryTransformSpatiallyInvariant::print ( std::ostream out) const
inlineoverridevirtualinherited

Print the transform coefficients to stream.

Implements lsst::jointcal::PhotometryTransform.

Definition at line 115 of file PhotometryTransform.h.

115  {
116  out << "PhotometryTransformSpatiallyInvariant: " << std::setprecision(10) << _value;
117  }

◆ transform() [1/2]

double lsst::jointcal::FluxTransformSpatiallyInvariant::transform ( double  x,
double  y,
double  value 
) const
inlineoverridevirtual

Return the transform of value at (x,y).

Implements lsst::jointcal::PhotometryTransform.

Definition at line 152 of file PhotometryTransform.h.

152 { return value * getValue(); }

◆ transform() [2/2]

double lsst::jointcal::PhotometryTransform::transform ( Point const &  in,
double  value 
) const
inlineinherited

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

Definition at line 58 of file PhotometryTransform.h.

58 { return transform(in.x, in.y, value); }

◆ transformError() [1/2]

double lsst::jointcal::FluxTransformSpatiallyInvariant::transformError ( double  x,
double  y,
double  value,
double  valueErr 
) const
inlineoverridevirtual

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

Implements lsst::jointcal::PhotometryTransform.

Definition at line 155 of file PhotometryTransform.h.

155  {
156  return getValue() * valueErr;
157  }

◆ transformError() [2/2]

double lsst::jointcal::PhotometryTransform::transformError ( Point const &  in,
double  value,
double  valueErr 
) const
inlineinherited

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

Definition at line 64 of file PhotometryTransform.h.

64  {
65  return transformError(in.x, in.y, value, valueErr);
66  }

The documentation for this class was generated from the following file:
std::setprecision
T setprecision(T... args)
lsst::jointcal::PhotometryTransformSpatiallyInvariant::PhotometryTransformSpatiallyInvariant
PhotometryTransformSpatiallyInvariant(double value)
Definition: PhotometryTransform.h:112
lsst::jointcal::PhotometryTransformSpatiallyInvariant::getValue
double getValue() const
Definition: PhotometryTransform.h:133
lsst::jointcal::PhotometryTransform::transform
virtual double transform(double x, double y, double value) const =0
Return the transform of value at (x,y).
lsst::jointcal::PhotometryTransform::transformError
virtual double transformError(double x, double y, double value, double valueErr) const =0
Return the transformed valueErr at Point(x,y).