SourceXtractorPlusPlus  0.10
Please provide a description of the project.
MultiframeSourceModel.h
Go to the documentation of this file.
1 
17 /*
18  * MultiframeSourceModel.h
19  *
20  * Created on: Nov 24, 2017
21  * Author: mschefer
22  */
23 
24 #ifndef _SEIMPLEMENTATION_PLUGIN_MULTIFRAMEMODELFITTING_MULTIFRAMESOURCEMODEL_H_
25 #define _SEIMPLEMENTATION_PLUGIN_MULTIFRAMEMODELFITTING_MULTIFRAMESOURCEMODEL_H_
26 
29 
36 
37 namespace SourceXtractor {
38 
40 
42 
43  int m_size;
47 
48 
49  // common parameters
51 
54 
57 
60 
63 
66 
69 
70  // per band
77 
78  // per frame
83 
86 
88 
89 
90  //
91 // // per measurement frame parameters
92 //
93 
94 
95 public:
96 
98 
99  void createParamsForBand(const std::vector<int>& frames_in_band);
100 
101  void createParamsForFrame(int band_nb, int frame_nb, std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset);
103 
105 
106  void debugPrint() const;
107 
108 
109  int getNumberOfParameters() const;
111 
113 
114  double getExpFluxForBand(int band_nb) const;
115  double getDevFluxForBand(int band_nb) const;
116 
120 
121  SeFloat getExpRadius() const;
122  SeFloat getDevRadius() const;
123 
124 private:
125  int getSize() const;
126  double getCenterX() const;
127  double getCenterY() const;
128 
129  double getFluxGuess(const std::vector<int>& frames_in_band) const;
130  double getRadiusGuess() const;
131  double getAspectGuess() const;
132  double getRotGuess() const;
133 
135 
136 };
137 
138 }
139 
140 #endif /* _SEIMPLEMENTATION_PLUGIN_MULTIFRAMEMODELFITTING_MULTIFRAMESOURCEMODEL_H_ */
ModelFitting::EngineParameter
EngineParameter are those derived from the minimization process.
Definition: EngineParameter.h:47
SourceXtractor::MultiframeSourceModel::exp_aspect
ModelFitting::EngineParameter exp_aspect
Definition: MultiframeSourceModel.h:64
SourceXtractor::PixelCoordinate
A pixel coordinate made of two integers m_x and m_y.
Definition: PixelCoordinate.h:37
SourceXtractor::MultiframeSourceModel::m_center_x
double m_center_x
Definition: MultiframeSourceModel.h:44
std::shared_ptr
STL class.
SourceXtractor::MultiframeSourceModel::exp_fluxes
std::vector< std::unique_ptr< ModelFitting::EngineParameter > > exp_fluxes
Definition: MultiframeSourceModel.h:67
SourceXtractor::MultiframeSourceModel::registerParameters
void registerParameters(ModelFitting::EngineParameterManager &manager)
EngineParameter.h
SourceXtractor::MultiframeSourceModel::getFluxGuess
double getFluxGuess(const std::vector< int > &frames_in_band) const
SourceXtractor::MultiframeSourceModel::getNumberOfParameters
int getNumberOfParameters() const
SourceXtractor::MultiframeSourceModel::getExpRadius
SeFloat getExpRadius() const
SourceXtractor::MultiframeSourceModel::exp_i0s
std::vector< std::unique_ptr< ModelFitting::DependentParameter< ModelFitting::EngineParameter, ModelFitting::EngineParameter, ModelFitting::EngineParameter > > > exp_i0s
Definition: MultiframeSourceModel.h:73
SourceXtractor::SeFloat
SeFloat32 SeFloat
Definition: Types.h:32
SourceInterface.h
std::vector
STL class.
SourceXtractor::MultiframeSourceModel::dev_aspect
ModelFitting::EngineParameter dev_aspect
Definition: MultiframeSourceModel.h:65
SourceXtractor::MultiframeSourceModel::getExpFluxForBand
double getExpFluxForBand(int band_nb) const
SourceXtractor::MultiframeSourceModel
Definition: MultiframeSourceModel.h:39
SourceXtractor::MultiframeSourceModel::getFittedWorldCoordinate
WorldCoordinate getFittedWorldCoordinate() const
SourceXtractor::MultiframeSourceModel::exp_effective_radius
ModelFitting::EngineParameter exp_effective_radius
Definition: MultiframeSourceModel.h:58
SourceXtractor::MultiframeSourceModel::dev_n
ModelFitting::ManualParameter dev_n
Definition: MultiframeSourceModel.h:56
SourceXtractor::MultiframeSourceModel::getDevFluxes
std::vector< double > getDevFluxes() const
SourceXtractor::MultiframeSourceModel::exp_k
ModelFitting::DependentParameter< ModelFitting::EngineParameter > exp_k
Definition: MultiframeSourceModel.h:61
std::tuple< double, double, double, double >
SourceXtractor::MultiframeSourceModel::m_frame_band_map
std::map< int, int > m_frame_band_map
Definition: MultiframeSourceModel.h:85
SourceXtractor::MultiframeSourceModel::getRadiusGuess
double getRadiusGuess() const
SourceXtractor::MultiframeSourceModel::createParamsForBand
void createParamsForBand(const std::vector< int > &frames_in_band)
CoordinateSystem.h
SourceXtractor::MultiframeSourceModel::dev_xs
ModelFitting::ManualParameter dev_xs
Definition: MultiframeSourceModel.h:55
SourceXtractor::MultiframeSourceModel::getExpFluxes
std::vector< double > getExpFluxes() const
ModelFitting::DependentParameter< ModelFitting::EngineParameter >
SourceXtractor::MultiframeSourceModel::m_ref_coordinate_system
std::shared_ptr< CoordinateSystem > m_ref_coordinate_system
Definition: MultiframeSourceModel.h:45
SourceXtractor::MultiframeSourceModel::getRefCoordinateSystem
std::shared_ptr< CoordinateSystem > getRefCoordinateSystem() const
SourceXtractor::WorldCoordinate
Definition: CoordinateSystem.h:33
SourceXtractor::MultiframeSourceModel::getFittedCoordinate
ImageCoordinate getFittedCoordinate() const
SourceXtractor::MultiframeSourceModel::getCenterX
double getCenterX() const
SourceXtractor
Definition: Aperture.h:30
SourceXtractor::MultiframeSourceModel::dev_rot
ModelFitting::EngineParameter dev_rot
Definition: MultiframeSourceModel.h:65
SourceXtractor::MultiframeSourceModel::MultiframeSourceModel
MultiframeSourceModel(const SourceInterface &source)
SourceXtractor::MultiframeSourceModel::m_number_of_parameters
int m_number_of_parameters
Definition: MultiframeSourceModel.h:87
SourceXtractor::MultiframeSourceModel::exp_xs
ModelFitting::ManualParameter exp_xs
Definition: MultiframeSourceModel.h:52
SourceXtractor::MultiframeSourceModel::m_aspect_guess
double m_aspect_guess
Definition: MultiframeSourceModel.h:46
SourceXtractor::MultiframeSourceModel::m_frame_map
std::map< int, int > m_frame_map
Definition: MultiframeSourceModel.h:84
SourceXtractor::MultiframeSourceModel::dy
ModelFitting::EngineParameter dy
Definition: MultiframeSourceModel.h:50
SourceXtractor::MultiframeSourceModel::exp_rot
ModelFitting::EngineParameter exp_rot
Definition: MultiframeSourceModel.h:64
ManualParameter.h
SourceXtractor::MultiframeSourceModel::createParamsForFrame
void createParamsForFrame(int band_nb, int frame_nb, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset)
SourceXtractor::MultiframeSourceModel::dev_fluxes
std::vector< std::unique_ptr< ModelFitting::EngineParameter > > dev_fluxes
Definition: MultiframeSourceModel.h:68
SourceXtractor::MultiframeSourceModel::debugPrint
void debugPrint() const
ModelFitting::EngineParameterManager
Class responsible for managing the parameters the least square engine minimizes.
Definition: EngineParameterManager.h:61
SourceXtractor::MultiframeSourceModel::getAspectGuess
double getAspectGuess() const
SourceXtractor::MultiframeSourceModel::getRotGuess
double getRotGuess() const
SourceXtractor::MultiframeSourceModel::pixel_x
std::vector< std::unique_ptr< ModelFitting::DependentParameter< ModelFitting::EngineParameter, ModelFitting::EngineParameter > > > pixel_x
Definition: MultiframeSourceModel.h:80
std::map< int, int >
SourceXtractor::ImageCoordinate
Definition: CoordinateSystem.h:42
SourceXtractor::MultiframeSourceModel::dev_k
ModelFitting::DependentParameter< ModelFitting::EngineParameter > dev_k
Definition: MultiframeSourceModel.h:62
SourceXtractor::MultiframeSourceModel::getDevFluxForBand
double getDevFluxForBand(int band_nb) const
DependentParameter.h
SourceXtractor::MultiframeSourceModel::m_size
int m_size
Definition: MultiframeSourceModel.h:43
SourceXtractor::MultiframeSourceModel::getCenterY
double getCenterY() const
ExtendedModel.h
SourceXtractor::MultiframeSourceModel::exp_n
ModelFitting::ManualParameter exp_n
Definition: MultiframeSourceModel.h:53
SourceXtractor::MultiframeSourceModel::getFluxes
std::vector< double > getFluxes() const
SourceXtractor::MultiframeSourceModel::dev_i0s
std::vector< std::unique_ptr< ModelFitting::DependentParameter< ModelFitting::EngineParameter, ModelFitting::EngineParameter, ModelFitting::EngineParameter > > > dev_i0s
Definition: MultiframeSourceModel.h:76
SourceXtractor::MultiframeSourceModel::dx
ModelFitting::EngineParameter dx
Definition: MultiframeSourceModel.h:50
SourceXtractor::MultiframeSourceModel::m_source
const SourceInterface & m_source
Definition: MultiframeSourceModel.h:41
TransformedModel.h
SourceXtractor::SourceInterface
The SourceInterface is an abstract "source" that has properties attached to it.
Definition: SourceInterface.h:46
SourceXtractor::MultiframeSourceModel::getSize
int getSize() const
SourceXtractor::MultiframeSourceModel::m_radius_guess
double m_radius_guess
Definition: MultiframeSourceModel.h:46
std::unique_ptr
STL class.
SourceXtractor::MultiframeSourceModel::addModelsForFrame
void addModelsForFrame(int frame_nb, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian)
SourceXtractor::MultiframeSourceModel::getDevRadius
SeFloat getDevRadius() const
SourceXtractor::MultiframeSourceModel::m_center_y
double m_center_y
Definition: MultiframeSourceModel.h:44
SourceXtractor::MultiframeSourceModel::dev_effective_radius
ModelFitting::EngineParameter dev_effective_radius
Definition: MultiframeSourceModel.h:59
SourceXtractor::MultiframeSourceModel::pixel_y
std::vector< std::unique_ptr< ModelFitting::DependentParameter< ModelFitting::EngineParameter, ModelFitting::EngineParameter > > > pixel_y
Definition: MultiframeSourceModel.h:82
ModelFitting::ManualParameter
Definition: ManualParameter.h:30
EngineParameterManager.h