SourceXtractorPlusPlus  0.13
Please provide a description of the project.
VariablePsf.h
Go to the documentation of this file.
1 
17 /*
18  * VariablePsf.h
19  *
20  * Created on: Jun 25, 2018
21  * Author: Alejandro Álvarez Ayllón
22  */
23 
24 #ifndef _SEIMPLEMENTATION_PSF_VARIABLEPSF_H_
25 #define _SEIMPLEMENTATION_PSF_VARIABLEPSF_H_
26 
29 
30 namespace SourceXtractor {
31 
32 
49 class VariablePsf {
50 public:
51 
58  struct Component {
60  int group_id;
61  double offset, scale;
62  };
63 
76  VariablePsf(double pixel_sampling, const std::vector<Component> &components, const std::vector<int> &group_degrees,
77  const std::vector<std::shared_ptr<VectorImage<SeFloat>>> &coefficients);
78 
83  VariablePsf(double pixel_sampling, const std::shared_ptr<VectorImage<SeFloat>> &constant);
84 
88  virtual ~VariablePsf() = default;
89 
93  int getWidth() const;
94 
98  int getHeight() const;
99 
103  double getPixelSampling() const;
104 
108  const std::vector<Component>& getComponents() const;
109 
121 
122 private:
128 
130  void selfTest();
131 
134 
148  void calculateExponents();
149 };
150 
151 }
152 
153 #endif //_SEIMPLEMENTATION_PSF_VARIABLEPSF_H_
SourceXtractor::VariablePsf::selfTest
void selfTest()
Verify that the preconditions of getPsf are met at construction time.
Definition: VariablePsf.cpp:95
SourceXtractor::VariablePsf::m_coefficients
std::vector< std::shared_ptr< VectorImage< SeFloat > > > m_coefficients
Definition: VariablePsf.h:126
SourceXtractor::VariablePsf::m_components
std::vector< Component > m_components
Definition: VariablePsf.h:124
std::string
STL class.
std::shared_ptr
STL class.
SourceXtractor::VariablePsf::Component::name
std::string name
Definition: VariablePsf.h:59
std::vector
STL class.
SourceXtractor::VariablePsf::~VariablePsf
virtual ~VariablePsf()=default
SourceXtractor::VariablePsf::calculateExponents
void calculateExponents()
Definition: VariablePsf.cpp:152
SourceXtractor::VariablePsf::m_group_degrees
std::vector< int > m_group_degrees
Definition: VariablePsf.h:125
VectorImage.h
SourceXtractor::VariablePsf::Component::group_id
int group_id
Definition: VariablePsf.h:60
SourceXtractor::VariablePsf::VariablePsf
VariablePsf(double pixel_sampling, const std::vector< Component > &components, const std::vector< int > &group_degrees, const std::vector< std::shared_ptr< VectorImage< SeFloat >>> &coefficients)
Definition: VariablePsf.cpp:31
SourceXtractor::VariablePsf::Component::scale
double scale
Definition: VariablePsf.h:61
SourceXtractor
Definition: Aperture.h:30
SourceXtractor::VariablePsf
Implements a variable PSF using an arbitrary number of components (i.e. X, Y), and degrees.
Definition: VariablePsf.h:49
SourceXtractor::VariablePsf::Component::offset
double offset
Definition: VariablePsf.h:61
SourceXtractor::VariablePsf::getWidth
int getWidth() const
Definition: VariablePsf.cpp:47
SourceXtractor::VariablePsf::scaleProperties
std::vector< double > scaleProperties(const std::vector< double > &values) const
Normalizes the values.
Definition: VariablePsf.cpp:139
SourceXtractor::VariablePsf::m_exponents
std::vector< std::vector< int > > m_exponents
Definition: VariablePsf.h:127
SourceXtractor::VariablePsf::getHeight
int getHeight() const
Definition: VariablePsf.cpp:51
SourceXtractor::VariablePsf::m_pixel_sampling
double m_pixel_sampling
Definition: VariablePsf.h:123
PropertyHolder.h
SourceXtractor::VectorImage< SeFloat >
SourceXtractor::VariablePsf::getPsf
std::shared_ptr< VectorImage< SeFloat > > getPsf(const std::vector< double > &values) const
Definition: VariablePsf.cpp:63
SourceXtractor::VariablePsf::getComponents
const std::vector< Component > & getComponents() const
Definition: VariablePsf.cpp:59
SourceXtractor::VariablePsf::Component
Definition: VariablePsf.h:58
SourceXtractor::VariablePsf::getPixelSampling
double getPixelSampling() const
Definition: VariablePsf.cpp:55