SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
ExpSigmoidConverter.h
Go to the documentation of this file.
1
23
24#ifndef EXP_SIGMOID_CONVERTER_H_
25#define EXP_SIGMOID_CONVERTER_H_
26
27#include "ElementsKernel/Exception.h"
29
30namespace ModelFitting {
31
39
40public:
41
42 ExpSigmoidConverter(const double min_value, const double max_value, const double scale_factor=1.0) :
43 m_min_value(min_value), m_max_value(max_value), m_scale_factor(scale_factor) {
46 << "ExpSigmoidConverter: min_value larger than max_value!";
47 }
48 if (m_min_value <= 0.0) {
49 throw Elements::Exception() << "ExpSigmoidConverter: min_value is not a positive value!";
50 }
51 }
52
64 double worldToEngine(const double world_value) const override;
65
75 double engineToWorld(const double engine_value) const override;
76
77 double getEngineToWorldDerivative(const double value) const override;
78
83
84private:
85
87 const double m_min_value;
88
90 const double m_max_value;
91
92 const double m_scale_factor;
93};
94
95} // namespace ModelFitting
96
97#endif /* EXP_SIGMOID_CONVERTER_H_ */
The coordinate converter interface.
double engineToWorld(const double engine_value) const override
Engine to world coordinate converter.
ExpSigmoidConverter(const double min_value, const double max_value, const double scale_factor=1.0)
const double m_max_value
maximum model value in world coordinates
virtual ~ExpSigmoidConverter()
Destructor.
const double m_min_value
minimum model value in world coordinates
double getEngineToWorldDerivative(const double value) const override
double worldToEngine(const double world_value) const override
World to engine coordinate converter.