lsst.jointcal  16.0+1
SimplePhotometryModel.h
Go to the documentation of this file.
1 // -*- LSST-C++ -*-
2 #ifndef LSST_JOINTCAL_SIMPLE_PHOTOMETRY_MODEL_H
3 #define LSST_JOINTCAL_SIMPLE_PHOTOMETRY_MODEL_H
4 
5 #include <map>
6 
11 #include "lsst/jointcal/Point.h"
12 
13 namespace lsst {
14 namespace jointcal {
15 
16 class CcdImage;
17 class Point;
18 
21 public:
22  SimplePhotometryModel(CcdImageList const &ccdImageList);
23 
29 
31  unsigned assignIndices(std::string const &whatToFit, unsigned firstIndex) override;
32 
34  void offsetParams(Eigen::VectorXd const &delta) override;
35 
37  double transform(CcdImage const &ccdImage, MeasuredStar const &measuredStar,
38  double instFlux) const override;
39 
41  double transformError(CcdImage const &ccdImage, MeasuredStar const &measuredStar,
42  double instFluxErr) const override;
43 
45  void freezeErrorTransform() override;
46 
48  void getMappingIndices(CcdImage const &ccdImage, std::vector<unsigned> &indices) const override;
49 
51  int getTotalParameters() const override;
52 
54  void computeParameterDerivatives(MeasuredStar const &measuredStar, CcdImage const &ccdImage,
55  Eigen::VectorXd &derivatives) const override;
56 
62  std::shared_ptr<afw::image::PhotoCalib> toPhotoCalib(CcdImage const &ccdImage) const override;
63 
65  void dump(std::ostream &stream = std::cout) const override;
66 
67 private:
69  MapType _myMap;
70 
72  PhotometryMappingBase *findMapping(CcdImage const &ccdImage) const override;
73 };
74 
75 } // namespace jointcal
76 } // namespace lsst
77 
78 #endif // LSST_JOINTCAL_SIMPLE_PHOTOMETRY_MODEL_H
std::shared_ptr< afw::image::PhotoCalib > toPhotoCalib(CcdImage const &ccdImage) const override
Return the mapping of ccdImage represented as a PhotoCalib.
double transform(CcdImage const &ccdImage, MeasuredStar const &measuredStar, double instFlux) const override
Return the on-sky transformed flux for measuredStar on ccdImage.
Relates transfo(s) to their position in the fitting matrix and allows interaction with the transfo(s)...
int getTotalParameters() const override
Return the total number of parameters in this model.
SimplePhotometryModel(CcdImageList const &ccdImageList)
void computeParameterDerivatives(MeasuredStar const &measuredStar, CcdImage const &ccdImage, Eigen::VectorXd &derivatives) const override
Compute the parametric derivatives of this model.
STL class.
void getMappingIndices(CcdImage const &ccdImage, std::vector< unsigned > &indices) const override
Get how this set of parameters (of length Npar()) map into the "grand" fit.
Class for a simple mapping implementing a generic Gtransfo.
objects measured on actual images.
Definition: MeasuredStar.h:19
double transformError(CcdImage const &ccdImage, MeasuredStar const &measuredStar, double instFluxErr) const override
Return the on-sky transformed flux uncertainty for measuredStar on ccdImage.
unsigned assignIndices(std::string const &whatToFit, unsigned firstIndex) override
Assign indices to parameters involved in mappings, starting at firstIndex.
void offsetParams(Eigen::VectorXd const &delta) override
Offset the parameters by the provided amounts.
Interface class for PhotometryFit.
void dump(std::ostream &stream=std::cout) const override
Dump the contents of the transfos, for debugging.
Handler of an actual image from a single CCD.
Definition: CcdImage.h:35
STL class.
SimplePhotometryModel & operator=(SimplePhotometryModel const &)=delete
Photometric response model which has a single photometric factor per CcdImage.
void freezeErrorTransform() override
Once this routine has been called, the error transform is not modified by offsetParams().