diff --git a/Core/Algorithms/inc/ISquaredFunction.h b/Core/Algorithms/inc/ISquaredFunction.h index 8969ec38661b440e33e0254e8eb85d4efe1eca83..4c205fe255e9c3164e6c98f145819bfd1d508d17 100644 --- a/Core/Algorithms/inc/ISquaredFunction.h +++ b/Core/Algorithms/inc/ISquaredFunction.h @@ -31,19 +31,17 @@ class BA_CORE_API_ ISquaredFunction { public: + ISquaredFunction(){} virtual ~ISquaredFunction() {} virtual ISquaredFunction *clone() const=0; - virtual double calculateSquaredDifference( double real_value, double simulated_value) const=0; virtual double calculateSquaredError( - double real_value, double simulated_value = 0.0) const - { (void)real_value; - (void)simulated_value; - throw NotImplementedException( - "ISquaredFunction::calculateError() -> " - "Error! Not implemented."); - } + double real_value, double simulated_value = 0.0) const = 0; + +private: + ISquaredFunction(const ISquaredFunction& ); + ISquaredFunction& operator=(const ISquaredFunction& ); }; @@ -64,15 +62,14 @@ public: virtual double calculateSquaredDifference(double real_value, double simulated_value) const { double diff_squared = (simulated_value-real_value)*(simulated_value-real_value); - if (diff_squared < Numeric::double_epsilon) { - return 0.0; - } - double sigma_squared = std::max(real_value,1.0); - return diff_squared/sigma_squared; + if (diff_squared < Numeric::double_epsilon) return 0.0; + double normalization = calculateSquaredError(real_value); + return diff_squared/normalization; } - virtual double calculateSquaredError(double real_value, double /* simulated_value */) const + virtual double calculateSquaredError(double real_value, double simulated_value = 0) const { + (void) simulated_value; return std::max(real_value,1.0); } @@ -91,20 +88,24 @@ class BA_CORE_API_ SquaredFunctionMeanSquaredError : public ISquaredFunction public: SquaredFunctionMeanSquaredError() {} virtual ~SquaredFunctionMeanSquaredError() {} - virtual SquaredFunctionMeanSquaredError *clone() const { return new SquaredFunctionMeanSquaredError(*this); } + virtual SquaredFunctionMeanSquaredError *clone() const { return new SquaredFunctionMeanSquaredError(); } virtual double calculateSquaredDifference(double real_value, double simulated_value) const { double diff_squared = (simulated_value-real_value)*(simulated_value-real_value); - if (diff_squared < Numeric::double_epsilon) { - return 0.0; - } + if (diff_squared < Numeric::double_epsilon) return 0.0; + double normalization = calculateSquaredError(real_value, simulated_value); + return diff_squared/normalization; + } + + virtual double calculateSquaredError(double real_value, double simulated_value) const + { + (void) simulated_value; double sigma1 = std::max(real_value,1.0); double sigma2 = std::max(simulated_value,1.0); - double sigma = std::sqrt(sigma1*sigma1 + sigma2*sigma2); - double normalization = sigma; - return diff_squared/normalization; + return std::sqrt(sigma1*sigma1 + sigma2*sigma2); } + }; @@ -120,14 +121,15 @@ class BA_CORE_API_ SquaredFunctionSystematicError : public ISquaredFunction public: SquaredFunctionSystematicError(double epsilon = 0.08) : m_epsilon(epsilon){} virtual ~SquaredFunctionSystematicError() {} - virtual SquaredFunctionSystematicError *clone() const { return new SquaredFunctionSystematicError(*this); } + virtual SquaredFunctionSystematicError *clone() const { return new SquaredFunctionSystematicError(m_epsilon); } virtual double calculateSquaredDifference(double real_value, double simulated_value) const { double diff_squared = (simulated_value-real_value)*(simulated_value-real_value); - return diff_squared/calculateSquaredError(real_value); + double normalization = calculateSquaredError(real_value, simulated_value); + return diff_squared/normalization; } - virtual double calculateSquaredError(double real_value, double simulated_value = 0.0) const + virtual double calculateSquaredError(double real_value, double simulated_value) const { (void)simulated_value; return std::max(std::fabs(real_value) + (m_epsilon*real_value)*(m_epsilon*real_value),1.0); @@ -150,7 +152,7 @@ class BA_CORE_API_ SquaredFunctionGaussianError : public ISquaredFunction public: SquaredFunctionGaussianError(double sigma = 0.01) : m_sigma(sigma){} virtual ~SquaredFunctionGaussianError() {} - virtual SquaredFunctionGaussianError *clone() const { return new SquaredFunctionGaussianError(*this); } + virtual SquaredFunctionGaussianError *clone() const { return new SquaredFunctionGaussianError(m_sigma); } virtual double calculateSquaredDifference(double real_value, double simulated_value) const { diff --git a/Fit/PythonAPI/src/FitStrategyFixParameters.pypp.cpp b/Fit/PythonAPI/src/FitStrategyFixParameters.pypp.cpp index 54738ca49f0a9600a42a14f88912e3057f961420..886c16916782f580310524a783cc4f10d3442aa8 100644 --- a/Fit/PythonAPI/src/FitStrategyFixParameters.pypp.cpp +++ b/Fit/PythonAPI/src/FitStrategyFixParameters.pypp.cpp @@ -30,6 +30,13 @@ struct FitStrategyFixParameters_wrapper : FitStrategyFixParameters, bp::wrapper< } + FitStrategyFixParameters_wrapper(::std::vector< std::string > const & pars ) + : FitStrategyFixParameters( boost::ref(pars) ) + , bp::wrapper< FitStrategyFixParameters >(){ + // constructor + + } + virtual void clear( ) { if( bp::override func_clear = this->get_override( "clear" ) ) func_clear( ); @@ -98,6 +105,7 @@ void register_FitStrategyFixParameters_class(){ typedef bp::class_< FitStrategyFixParameters_wrapper, bp::bases< FitStrategyAdjustParameters > > FitStrategyFixParameters_exposer_t; FitStrategyFixParameters_exposer_t FitStrategyFixParameters_exposer = FitStrategyFixParameters_exposer_t( "FitStrategyFixParameters", bp::init< >() ); bp::scope FitStrategyFixParameters_scope( FitStrategyFixParameters_exposer ); + FitStrategyFixParameters_exposer.def( bp::init< std::vector< std::string > const & >(( bp::arg("pars") )) ); { //::FitStrategyFixParameters::clear typedef void ( ::FitStrategyFixParameters::*clear_function_type )( ) ; diff --git a/Fit/PythonAPI/src/FitStrategyReleaseParameters.pypp.cpp b/Fit/PythonAPI/src/FitStrategyReleaseParameters.pypp.cpp index 4a41384a5627f02f13f708ea3411bf53411df533..b97d4a684760c96bacf526a96aa248b23c74e9b5 100644 --- a/Fit/PythonAPI/src/FitStrategyReleaseParameters.pypp.cpp +++ b/Fit/PythonAPI/src/FitStrategyReleaseParameters.pypp.cpp @@ -30,6 +30,13 @@ struct FitStrategyReleaseParameters_wrapper : FitStrategyReleaseParameters, bp:: } + FitStrategyReleaseParameters_wrapper(::std::vector< std::string > const & pars ) + : FitStrategyReleaseParameters( boost::ref(pars) ) + , bp::wrapper< FitStrategyReleaseParameters >(){ + // constructor + + } + virtual void clear( ) { if( bp::override func_clear = this->get_override( "clear" ) ) func_clear( ); @@ -98,6 +105,7 @@ void register_FitStrategyReleaseParameters_class(){ typedef bp::class_< FitStrategyReleaseParameters_wrapper, bp::bases< FitStrategyAdjustParameters > > FitStrategyReleaseParameters_exposer_t; FitStrategyReleaseParameters_exposer_t FitStrategyReleaseParameters_exposer = FitStrategyReleaseParameters_exposer_t( "FitStrategyReleaseParameters", bp::init< >() ); bp::scope FitStrategyReleaseParameters_scope( FitStrategyReleaseParameters_exposer ); + FitStrategyReleaseParameters_exposer.def( bp::init< std::vector< std::string > const & >(( bp::arg("pars") )) ); { //::FitStrategyReleaseParameters::clear typedef void ( ::FitStrategyReleaseParameters::*clear_function_type )( ) ; diff --git a/Fit/PythonAPI/src/ISquaredFunction.pypp.cpp b/Fit/PythonAPI/src/ISquaredFunction.pypp.cpp index 03961fd42f54edf9f09a3ad4ce233f78b6345e0e..e8164d591c82ec0504b6751965f00e642c486677 100644 --- a/Fit/PythonAPI/src/ISquaredFunction.pypp.cpp +++ b/Fit/PythonAPI/src/ISquaredFunction.pypp.cpp @@ -16,11 +16,11 @@ namespace bp = boost::python; struct ISquaredFunction_wrapper : ISquaredFunction, bp::wrapper< ISquaredFunction > { - ISquaredFunction_wrapper() - : ISquaredFunction() + ISquaredFunction_wrapper( ) + : ISquaredFunction( ) , bp::wrapper< ISquaredFunction >(){ // null constructor - + } virtual double calculateSquaredDifference( double real_value, double simulated_value ) const { @@ -28,16 +28,9 @@ struct ISquaredFunction_wrapper : ISquaredFunction, bp::wrapper< ISquaredFunctio return func_calculateSquaredDifference( real_value, simulated_value ); } - virtual double calculateSquaredError( double real_value, double simulated_value=0.0 ) const { - if( bp::override func_calculateSquaredError = this->get_override( "calculateSquaredError" ) ) - return func_calculateSquaredError( real_value, simulated_value ); - else - return this->ISquaredFunction::calculateSquaredError( real_value, simulated_value ); - } - - - double default_calculateSquaredError( double real_value, double simulated_value=0.0 ) const { - return ISquaredFunction::calculateSquaredError( real_value, simulated_value ); + virtual double calculateSquaredError( double real_value, double simulated_value=0.0 ) const { + bp::override func_calculateSquaredError = this->get_override( "calculateSquaredError" ); + return func_calculateSquaredError( real_value, simulated_value ); } virtual ::ISquaredFunction * clone( ) const { @@ -51,7 +44,7 @@ void register_ISquaredFunction_class(){ { //::ISquaredFunction typedef bp::class_< ISquaredFunction_wrapper, boost::noncopyable > ISquaredFunction_exposer_t; - ISquaredFunction_exposer_t ISquaredFunction_exposer = ISquaredFunction_exposer_t( "ISquaredFunction" ); + ISquaredFunction_exposer_t ISquaredFunction_exposer = ISquaredFunction_exposer_t( "ISquaredFunction", bp::init< >() ); bp::scope ISquaredFunction_scope( ISquaredFunction_exposer ); { //::ISquaredFunction::calculateSquaredDifference @@ -66,12 +59,10 @@ void register_ISquaredFunction_class(){ { //::ISquaredFunction::calculateSquaredError typedef double ( ::ISquaredFunction::*calculateSquaredError_function_type )( double,double ) const; - typedef double ( ISquaredFunction_wrapper::*default_calculateSquaredError_function_type )( double,double ) const; ISquaredFunction_exposer.def( "calculateSquaredError" - , calculateSquaredError_function_type(&::ISquaredFunction::calculateSquaredError) - , default_calculateSquaredError_function_type(&ISquaredFunction_wrapper::default_calculateSquaredError) + , bp::pure_virtual( calculateSquaredError_function_type(&::ISquaredFunction::calculateSquaredError) ) , ( bp::arg("real_value"), bp::arg("simulated_value")=0.0 ) ); } diff --git a/Fit/PythonAPI/src/SquaredFunctionDefault.pypp.cpp b/Fit/PythonAPI/src/SquaredFunctionDefault.pypp.cpp index 3b0b52c824aaccf828d36061a7c0a4ba77a587a3..9b4d17d693fa41be165354c85ac9b0f22d73eebb 100644 --- a/Fit/PythonAPI/src/SquaredFunctionDefault.pypp.cpp +++ b/Fit/PythonAPI/src/SquaredFunctionDefault.pypp.cpp @@ -16,13 +16,6 @@ namespace bp = boost::python; struct SquaredFunctionDefault_wrapper : SquaredFunctionDefault, bp::wrapper< SquaredFunctionDefault > { - SquaredFunctionDefault_wrapper(SquaredFunctionDefault const & arg ) - : SquaredFunctionDefault( arg ) - , bp::wrapper< SquaredFunctionDefault >(){ - // copy constructor - - } - SquaredFunctionDefault_wrapper( ) : SquaredFunctionDefault( ) , bp::wrapper< SquaredFunctionDefault >(){ @@ -42,16 +35,16 @@ struct SquaredFunctionDefault_wrapper : SquaredFunctionDefault, bp::wrapper< Squ return SquaredFunctionDefault::calculateSquaredDifference( real_value, simulated_value ); } - virtual double calculateSquaredError( double real_value, double arg1 ) const { + virtual double calculateSquaredError( double real_value, double simulated_value=0 ) const { if( bp::override func_calculateSquaredError = this->get_override( "calculateSquaredError" ) ) - return func_calculateSquaredError( real_value, arg1 ); + return func_calculateSquaredError( real_value, simulated_value ); else - return this->SquaredFunctionDefault::calculateSquaredError( real_value, arg1 ); + return this->SquaredFunctionDefault::calculateSquaredError( real_value, simulated_value ); } - double default_calculateSquaredError( double real_value, double arg1 ) const { - return SquaredFunctionDefault::calculateSquaredError( real_value, arg1 ); + double default_calculateSquaredError( double real_value, double simulated_value=0 ) const { + return SquaredFunctionDefault::calculateSquaredError( real_value, simulated_value ); } virtual ::SquaredFunctionDefault * clone( ) const { @@ -71,7 +64,7 @@ struct SquaredFunctionDefault_wrapper : SquaredFunctionDefault, bp::wrapper< Squ void register_SquaredFunctionDefault_class(){ { //::SquaredFunctionDefault - typedef bp::class_< SquaredFunctionDefault_wrapper, bp::bases< ISquaredFunction > > SquaredFunctionDefault_exposer_t; + typedef bp::class_< SquaredFunctionDefault_wrapper, bp::bases< ISquaredFunction >, boost::noncopyable > SquaredFunctionDefault_exposer_t; SquaredFunctionDefault_exposer_t SquaredFunctionDefault_exposer = SquaredFunctionDefault_exposer_t( "SquaredFunctionDefault", bp::init< >() ); bp::scope SquaredFunctionDefault_scope( SquaredFunctionDefault_exposer ); { //::SquaredFunctionDefault::calculateSquaredDifference @@ -95,7 +88,7 @@ void register_SquaredFunctionDefault_class(){ "calculateSquaredError" , calculateSquaredError_function_type(&::SquaredFunctionDefault::calculateSquaredError) , default_calculateSquaredError_function_type(&SquaredFunctionDefault_wrapper::default_calculateSquaredError) - , ( bp::arg("real_value"), bp::arg("arg1") ) ); + , ( bp::arg("real_value"), bp::arg("simulated_value")=0 ) ); } { //::SquaredFunctionDefault::clone diff --git a/Fit/PythonAPI/src/SquaredFunctionGaussianError.pypp.cpp b/Fit/PythonAPI/src/SquaredFunctionGaussianError.pypp.cpp index 35ffa1942c4cf3afdda57c4e380e82b111d1a58f..532433e882e432cb1af5bc41ac0aa60d5476c2a4 100644 --- a/Fit/PythonAPI/src/SquaredFunctionGaussianError.pypp.cpp +++ b/Fit/PythonAPI/src/SquaredFunctionGaussianError.pypp.cpp @@ -16,13 +16,6 @@ namespace bp = boost::python; struct SquaredFunctionGaussianError_wrapper : SquaredFunctionGaussianError, bp::wrapper< SquaredFunctionGaussianError > { - SquaredFunctionGaussianError_wrapper(SquaredFunctionGaussianError const & arg ) - : SquaredFunctionGaussianError( arg ) - , bp::wrapper< SquaredFunctionGaussianError >(){ - // copy constructor - - } - SquaredFunctionGaussianError_wrapper(double sigma=1.00000000000000002081668171172168513294309377670288085938e-2 ) : SquaredFunctionGaussianError( sigma ) , bp::wrapper< SquaredFunctionGaussianError >(){ @@ -71,7 +64,7 @@ struct SquaredFunctionGaussianError_wrapper : SquaredFunctionGaussianError, bp:: void register_SquaredFunctionGaussianError_class(){ { //::SquaredFunctionGaussianError - typedef bp::class_< SquaredFunctionGaussianError_wrapper, bp::bases< ISquaredFunction > > SquaredFunctionGaussianError_exposer_t; + typedef bp::class_< SquaredFunctionGaussianError_wrapper, bp::bases< ISquaredFunction >, boost::noncopyable > SquaredFunctionGaussianError_exposer_t; SquaredFunctionGaussianError_exposer_t SquaredFunctionGaussianError_exposer = SquaredFunctionGaussianError_exposer_t( "SquaredFunctionGaussianError", bp::init< bp::optional< double > >(( bp::arg("sigma")=1.00000000000000002081668171172168513294309377670288085938e-2 )) ); bp::scope SquaredFunctionGaussianError_scope( SquaredFunctionGaussianError_exposer ); { //::SquaredFunctionGaussianError::calculateSquaredDifference diff --git a/Fit/PythonAPI/src/SquaredFunctionMeanSquaredError.pypp.cpp b/Fit/PythonAPI/src/SquaredFunctionMeanSquaredError.pypp.cpp index 075705d2b2e4d0c3b26544f44f8d88e46a602afa..39872437b176f59bc5e684936fc89b856e26b368 100644 --- a/Fit/PythonAPI/src/SquaredFunctionMeanSquaredError.pypp.cpp +++ b/Fit/PythonAPI/src/SquaredFunctionMeanSquaredError.pypp.cpp @@ -16,13 +16,6 @@ namespace bp = boost::python; struct SquaredFunctionMeanSquaredError_wrapper : SquaredFunctionMeanSquaredError, bp::wrapper< SquaredFunctionMeanSquaredError > { - SquaredFunctionMeanSquaredError_wrapper(SquaredFunctionMeanSquaredError const & arg ) - : SquaredFunctionMeanSquaredError( arg ) - , bp::wrapper< SquaredFunctionMeanSquaredError >(){ - // copy constructor - - } - SquaredFunctionMeanSquaredError_wrapper( ) : SquaredFunctionMeanSquaredError( ) , bp::wrapper< SquaredFunctionMeanSquaredError >(){ @@ -42,28 +35,28 @@ struct SquaredFunctionMeanSquaredError_wrapper : SquaredFunctionMeanSquaredError return SquaredFunctionMeanSquaredError::calculateSquaredDifference( real_value, simulated_value ); } - virtual ::SquaredFunctionMeanSquaredError * clone( ) const { - if( bp::override func_clone = this->get_override( "clone" ) ) - return func_clone( ); + virtual double calculateSquaredError( double real_value, double simulated_value ) const { + if( bp::override func_calculateSquaredError = this->get_override( "calculateSquaredError" ) ) + return func_calculateSquaredError( real_value, simulated_value ); else - return this->SquaredFunctionMeanSquaredError::clone( ); + return this->SquaredFunctionMeanSquaredError::calculateSquaredError( real_value, simulated_value ); } - ::SquaredFunctionMeanSquaredError * default_clone( ) const { - return SquaredFunctionMeanSquaredError::clone( ); + double default_calculateSquaredError( double real_value, double simulated_value ) const { + return SquaredFunctionMeanSquaredError::calculateSquaredError( real_value, simulated_value ); } - virtual double calculateSquaredError( double real_value, double simulated_value=0.0 ) const { - if( bp::override func_calculateSquaredError = this->get_override( "calculateSquaredError" ) ) - return func_calculateSquaredError( real_value, simulated_value ); + virtual ::SquaredFunctionMeanSquaredError * clone( ) const { + if( bp::override func_clone = this->get_override( "clone" ) ) + return func_clone( ); else - return this->ISquaredFunction::calculateSquaredError( real_value, simulated_value ); + return this->SquaredFunctionMeanSquaredError::clone( ); } - double default_calculateSquaredError( double real_value, double simulated_value=0.0 ) const { - return ISquaredFunction::calculateSquaredError( real_value, simulated_value ); + ::SquaredFunctionMeanSquaredError * default_clone( ) const { + return SquaredFunctionMeanSquaredError::clone( ); } }; @@ -71,7 +64,7 @@ struct SquaredFunctionMeanSquaredError_wrapper : SquaredFunctionMeanSquaredError void register_SquaredFunctionMeanSquaredError_class(){ { //::SquaredFunctionMeanSquaredError - typedef bp::class_< SquaredFunctionMeanSquaredError_wrapper, bp::bases< ISquaredFunction > > SquaredFunctionMeanSquaredError_exposer_t; + typedef bp::class_< SquaredFunctionMeanSquaredError_wrapper, bp::bases< ISquaredFunction >, boost::noncopyable > SquaredFunctionMeanSquaredError_exposer_t; SquaredFunctionMeanSquaredError_exposer_t SquaredFunctionMeanSquaredError_exposer = SquaredFunctionMeanSquaredError_exposer_t( "SquaredFunctionMeanSquaredError", bp::init< >() ); bp::scope SquaredFunctionMeanSquaredError_scope( SquaredFunctionMeanSquaredError_exposer ); { //::SquaredFunctionMeanSquaredError::calculateSquaredDifference @@ -85,6 +78,18 @@ void register_SquaredFunctionMeanSquaredError_class(){ , default_calculateSquaredDifference_function_type(&SquaredFunctionMeanSquaredError_wrapper::default_calculateSquaredDifference) , ( bp::arg("real_value"), bp::arg("simulated_value") ) ); + } + { //::SquaredFunctionMeanSquaredError::calculateSquaredError + + typedef double ( ::SquaredFunctionMeanSquaredError::*calculateSquaredError_function_type )( double,double ) const; + typedef double ( SquaredFunctionMeanSquaredError_wrapper::*default_calculateSquaredError_function_type )( double,double ) const; + + SquaredFunctionMeanSquaredError_exposer.def( + "calculateSquaredError" + , calculateSquaredError_function_type(&::SquaredFunctionMeanSquaredError::calculateSquaredError) + , default_calculateSquaredError_function_type(&SquaredFunctionMeanSquaredError_wrapper::default_calculateSquaredError) + , ( bp::arg("real_value"), bp::arg("simulated_value") ) ); + } { //::SquaredFunctionMeanSquaredError::clone @@ -98,18 +103,6 @@ void register_SquaredFunctionMeanSquaredError_class(){ , bp::return_value_policy< bp::manage_new_object >() ); } - { //::ISquaredFunction::calculateSquaredError - - typedef double ( ::ISquaredFunction::*calculateSquaredError_function_type )( double,double ) const; - typedef double ( SquaredFunctionMeanSquaredError_wrapper::*default_calculateSquaredError_function_type )( double,double ) const; - - SquaredFunctionMeanSquaredError_exposer.def( - "calculateSquaredError" - , calculateSquaredError_function_type(&::ISquaredFunction::calculateSquaredError) - , default_calculateSquaredError_function_type(&SquaredFunctionMeanSquaredError_wrapper::default_calculateSquaredError) - , ( bp::arg("real_value"), bp::arg("simulated_value")=0.0 ) ); - - } } } diff --git a/Fit/PythonAPI/src/SquaredFunctionSystematicError.pypp.cpp b/Fit/PythonAPI/src/SquaredFunctionSystematicError.pypp.cpp index f6db460c160a45c94d6bf50a7a6edc7a310d08fb..3c321f1af1aeaebc187a7c4fbe426bfe6798147a 100644 --- a/Fit/PythonAPI/src/SquaredFunctionSystematicError.pypp.cpp +++ b/Fit/PythonAPI/src/SquaredFunctionSystematicError.pypp.cpp @@ -16,13 +16,6 @@ namespace bp = boost::python; struct SquaredFunctionSystematicError_wrapper : SquaredFunctionSystematicError, bp::wrapper< SquaredFunctionSystematicError > { - SquaredFunctionSystematicError_wrapper(SquaredFunctionSystematicError const & arg ) - : SquaredFunctionSystematicError( arg ) - , bp::wrapper< SquaredFunctionSystematicError >(){ - // copy constructor - - } - SquaredFunctionSystematicError_wrapper(double epsilon=8.000000000000000166533453693773481063544750213623046875e-2 ) : SquaredFunctionSystematicError( epsilon ) , bp::wrapper< SquaredFunctionSystematicError >(){ @@ -42,7 +35,7 @@ struct SquaredFunctionSystematicError_wrapper : SquaredFunctionSystematicError, return SquaredFunctionSystematicError::calculateSquaredDifference( real_value, simulated_value ); } - virtual double calculateSquaredError( double real_value, double simulated_value=0.0 ) const { + virtual double calculateSquaredError( double real_value, double simulated_value ) const { if( bp::override func_calculateSquaredError = this->get_override( "calculateSquaredError" ) ) return func_calculateSquaredError( real_value, simulated_value ); else @@ -50,7 +43,7 @@ struct SquaredFunctionSystematicError_wrapper : SquaredFunctionSystematicError, } - double default_calculateSquaredError( double real_value, double simulated_value=0.0 ) const { + double default_calculateSquaredError( double real_value, double simulated_value ) const { return SquaredFunctionSystematicError::calculateSquaredError( real_value, simulated_value ); } @@ -71,7 +64,7 @@ struct SquaredFunctionSystematicError_wrapper : SquaredFunctionSystematicError, void register_SquaredFunctionSystematicError_class(){ { //::SquaredFunctionSystematicError - typedef bp::class_< SquaredFunctionSystematicError_wrapper, bp::bases< ISquaredFunction > > SquaredFunctionSystematicError_exposer_t; + typedef bp::class_< SquaredFunctionSystematicError_wrapper, bp::bases< ISquaredFunction >, boost::noncopyable > SquaredFunctionSystematicError_exposer_t; SquaredFunctionSystematicError_exposer_t SquaredFunctionSystematicError_exposer = SquaredFunctionSystematicError_exposer_t( "SquaredFunctionSystematicError", bp::init< bp::optional< double > >(( bp::arg("epsilon")=8.000000000000000166533453693773481063544750213623046875e-2 )) ); bp::scope SquaredFunctionSystematicError_scope( SquaredFunctionSystematicError_exposer ); { //::SquaredFunctionSystematicError::calculateSquaredDifference @@ -95,7 +88,7 @@ void register_SquaredFunctionSystematicError_class(){ "calculateSquaredError" , calculateSquaredError_function_type(&::SquaredFunctionSystematicError::calculateSquaredError) , default_calculateSquaredError_function_type(&SquaredFunctionSystematicError_wrapper::default_calculateSquaredError) - , ( bp::arg("real_value"), bp::arg("simulated_value")=0.0 ) ); + , ( bp::arg("real_value"), bp::arg("simulated_value") ) ); } { //::SquaredFunctionSystematicError::clone