SourceXtractorPlusPlus  0.8
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FlexibleModelFittingModel.h
Go to the documentation of this file.
1 
17 /*
18  * FlexibleModelFittingModel.h
19  *
20  * Created on: Sep 17, 2018
21  * Author: mschefer
22  */
23 
24 #ifndef _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTINGMODEL_H_
25 #define _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTINGMODEL_H_
26 
30 
33 
34 namespace SourceXtractor {
35 
36 class FlexibleModelFittingParameterManager;
37 
39 public:
41 
43  const SourceInterface& source,
48  std::shared_ptr<CoordinateSystem> reference_coordinates,
49  std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset) const = 0;
50 
51 private:
52 };
53 
55 public:
59  : m_x(x), m_y(y), m_flux(flux) {}
60 
62 
64  const SourceInterface& source,
69  std::shared_ptr<CoordinateSystem> reference_coordinates,
70  std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset) const;
71 private:
75 };
76 
78 public:
85  : m_x(x),
86  m_y(y),
87  m_flux(flux),
88  m_effective_radius(effective_radius),
89  m_aspect_ratio(aspect_ratio),
90  m_angle(angle) {}
91 
93 
95  const SourceInterface& source,
100  std::shared_ptr<CoordinateSystem> reference_coordinates,
101  std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset) const;
102 
103 private:
110 };
111 
113 public:
120  : m_x(x),
121  m_y(y),
122  m_flux(flux),
123  m_effective_radius(effective_radius),
124  m_aspect_ratio(aspect_ratio),
125  m_angle(angle) {}
126 
128 
130  const SourceInterface& source,
135  std::shared_ptr<CoordinateSystem> reference_coordinates,
136  std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset) const;
137 
138 private:
145 };
146 
148 public:
156  : m_x(x),
157  m_y(y),
158  m_flux(flux),
159  m_sersic_index(sersic_index),
160  m_effective_radius(effective_radius),
161  m_aspect_ratio(aspect_ratio),
162  m_angle(angle) {}
163 
165 
167  const SourceInterface& source,
172  std::shared_ptr<CoordinateSystem> reference_coordinates,
173  std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset) const;
174 
175 private:
183 };
184 
186 public:
188  : m_value(value) {}
189 
191 
193  const SourceInterface& source,
198  std::shared_ptr<CoordinateSystem> reference_coordinates,
199  std::shared_ptr<CoordinateSystem> coordinates, PixelCoordinate offset) const;
200 
201 private:
203 };
204 
205 
206 }
207 
208 #endif /* _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTINGMODEL_H_ */
std::shared_ptr< FlexibleModelFittingParameter > m_x
std::shared_ptr< FlexibleModelFittingParameter > m_effective_radius
std::shared_ptr< FlexibleModelFittingParameter > m_value
virtual void addForSource(FlexibleModelFittingParameterManager &manager, const SourceInterface &source, std::vector< ModelFitting::ConstantModel > &constant_models, std::vector< ModelFitting::PointModel > &point_models, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian, std::shared_ptr< CoordinateSystem > reference_coordinates, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset) const
std::shared_ptr< FlexibleModelFittingParameter > m_angle
std::shared_ptr< FlexibleModelFittingParameter > m_x
std::shared_ptr< FlexibleModelFittingParameter > m_x
std::shared_ptr< FlexibleModelFittingParameter > m_angle
std::shared_ptr< FlexibleModelFittingParameter > m_x
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
std::shared_ptr< FlexibleModelFittingParameter > m_y
std::shared_ptr< FlexibleModelFittingParameter > m_flux
FlexibleModelFittingPointModel(std::shared_ptr< FlexibleModelFittingParameter > x, std::shared_ptr< FlexibleModelFittingParameter > y, std::shared_ptr< FlexibleModelFittingParameter > flux)
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
std::shared_ptr< FlexibleModelFittingParameter > m_flux
std::shared_ptr< FlexibleModelFittingParameter > m_y
std::shared_ptr< FlexibleModelFittingParameter > m_aspect_ratio
virtual void addForSource(FlexibleModelFittingParameterManager &manager, const SourceInterface &source, std::vector< ModelFitting::ConstantModel > &constant_models, std::vector< ModelFitting::PointModel > &point_models, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian, std::shared_ptr< CoordinateSystem > reference_coordinates, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset) const
FlexibleModelFittingConstantModel(std::shared_ptr< FlexibleModelFittingParameter > value)
virtual void addForSource(FlexibleModelFittingParameterManager &manager, const SourceInterface &source, std::vector< ModelFitting::ConstantModel > &constant_models, std::vector< ModelFitting::PointModel > &point_models, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian, std::shared_ptr< CoordinateSystem > reference_coordinates, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset) const
std::shared_ptr< FlexibleModelFittingParameter > m_aspect_ratio
std::shared_ptr< FlexibleModelFittingParameter > m_y
A pixel coordinate made of two integers m_x and m_y.
std::shared_ptr< FlexibleModelFittingParameter > m_y
std::shared_ptr< FlexibleModelFittingParameter > m_effective_radius
std::shared_ptr< FlexibleModelFittingParameter > m_sersic_index
virtual void addForSource(FlexibleModelFittingParameterManager &manager, const SourceInterface &source, std::vector< ModelFitting::ConstantModel > &constant_models, std::vector< ModelFitting::PointModel > &point_models, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian, std::shared_ptr< CoordinateSystem > reference_coordinates, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset) const =0
std::shared_ptr< FlexibleModelFittingParameter > m_effective_radius
std::shared_ptr< FlexibleModelFittingParameter > m_flux
FlexibleModelFittingExponentialModel(std::shared_ptr< FlexibleModelFittingParameter > x, std::shared_ptr< FlexibleModelFittingParameter > y, std::shared_ptr< FlexibleModelFittingParameter > flux, std::shared_ptr< FlexibleModelFittingParameter > effective_radius, std::shared_ptr< FlexibleModelFittingParameter > aspect_ratio, std::shared_ptr< FlexibleModelFittingParameter > angle)
std::shared_ptr< FlexibleModelFittingParameter > m_aspect_ratio
std::shared_ptr< FlexibleModelFittingParameter > m_flux
std::shared_ptr< FlexibleModelFittingParameter > m_angle
FlexibleModelFittingDevaucouleursModel(std::shared_ptr< FlexibleModelFittingParameter > x, std::shared_ptr< FlexibleModelFittingParameter > y, std::shared_ptr< FlexibleModelFittingParameter > flux, std::shared_ptr< FlexibleModelFittingParameter > effective_radius, std::shared_ptr< FlexibleModelFittingParameter > aspect_ratio, std::shared_ptr< FlexibleModelFittingParameter > angle)
The SourceInterface is an abstract &quot;source&quot; that has properties attached to it.
virtual void addForSource(FlexibleModelFittingParameterManager &manager, const SourceInterface &source, std::vector< ModelFitting::ConstantModel > &constant_models, std::vector< ModelFitting::PointModel > &point_models, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian, std::shared_ptr< CoordinateSystem > reference_coordinates, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset) const
FlexibleModelFittingSersicModel(std::shared_ptr< FlexibleModelFittingParameter > x, std::shared_ptr< FlexibleModelFittingParameter > y, std::shared_ptr< FlexibleModelFittingParameter > flux, std::shared_ptr< FlexibleModelFittingParameter > sersic_index, std::shared_ptr< FlexibleModelFittingParameter > effective_radius, std::shared_ptr< FlexibleModelFittingParameter > aspect_ratio, std::shared_ptr< FlexibleModelFittingParameter > angle)
virtual void addForSource(FlexibleModelFittingParameterManager &manager, const SourceInterface &source, std::vector< ModelFitting::ConstantModel > &constant_models, std::vector< ModelFitting::PointModel > &point_models, std::vector< ModelFitting::TransformedModel > &extended_models, std::tuple< double, double, double, double > jacobian, std::shared_ptr< CoordinateSystem > reference_coordinates, std::shared_ptr< CoordinateSystem > coordinates, PixelCoordinate offset) const