Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-06-02 08:48:23

0001 /*
0002  * ScalingFunctionMeanStdDeviation.h
0003  *
0004  *  Created on: Apr 23, 2016
0005  *      Author: Pawel Sznajder
0006  */
0007 
0008 #ifndef SCALINGFUNCTIONMEANSTDDEVIATION_H_
0009 #define SCALINGFUNCTIONMEANSTDDEVIATION_H_
0010 
0011 #include <utility>
0012 #include <vector>
0013 
0014 #include "../beans/ScalingModeType.h"
0015 #include "ScalingFunction.h"
0016 
0017 namespace NumA {
0018 
0019 class ScalingFunctionMeanStdDeviation: public ScalingFunction {
0020 
0021 public:
0022 
0023     static const unsigned int classId;
0024 
0025     ScalingFunctionMeanStdDeviation();
0026     virtual ~ScalingFunctionMeanStdDeviation();
0027     virtual ScalingFunctionMeanStdDeviation* clone() const;
0028 
0029     virtual double evaluate(ScalingModeType::Type mode, double input,
0030             const std::pair<double, double>& parameters) const;
0031     virtual double evaluateFirstDerivative(ScalingModeType::Type mode,
0032             double input, const std::pair<double, double>& parameters) const;
0033     virtual std::pair<double, double> evaluateParameters(
0034             const std::vector<double>& input) const;
0035 
0036 protected:
0037 
0038     ScalingFunctionMeanStdDeviation(
0039             const ScalingFunctionMeanStdDeviation& other);
0040 };
0041 
0042 }
0043 
0044 #endif /* SCALINGFUNCTIONMEANSTDDEVIATION_H_ */