SourceXtractorPlusPlus  0.10
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SigmoidConverter.h
Go to the documentation of this file.
1 
24 #ifndef SIGMOID_CONVERTER_H_
25 #define SIGMOID_CONVERTER_H_
26 
29 
30 namespace ModelFitting {
31 
39 
40 public:
41 
42  SigmoidConverter(const double min_value, const double max_value) :
43  m_min_value(min_value), m_max_value(max_value) {
44  if (m_min_value > m_max_value) {
45  throw Elements::Exception()
46  << "SigmoidConverter: min_value larger than max_value!";
47  }
48  }
49 
61  double worldToEngine(const double world_value) const override;
62 
72  double engineToWorld(const double engine_value) const override;
73 
74  double getEngineToWorldDerivative(const double value) const override;
75 
76 
80  virtual ~SigmoidConverter();
81 
82 private:
83 
85  const double m_min_value;
86 
88  const double m_max_value;
89 };
90 
91 } // namespace ModelFitting
92 
93 #endif /* SIGMOID_CONVERTER_H_ */
CoordinateConverter implementation using the sigmoid function.
The coordinate converter interface.
double engineToWorld(const double engine_value) const override
Engine to world coordinate converter.
double getEngineToWorldDerivative(const double value) const override
const double m_min_value
minimum model value in world coordinates
const double m_max_value
maximum model value in world coordinates
SigmoidConverter(const double min_value, const double max_value)
double worldToEngine(const double world_value) const override
World to engine coordinate converter.
virtual ~SigmoidConverter()
Destructor.