24AbsFunction *DoubleParamToArgAdaptor<F>::_clone ()
const {
34 _scaleFactor0(
"Scale 0", 1.0, 0, 10),
35 _scaleFactor1(
"Scale 1", 1.0, 0, 10),
36 _function(function.clone()),
37 _parameterFetchMethod0(parameterFetchMethod0),
38 _parameterFetchMethod1(parameterFetchMethod1)
40 _parameterFetchMethod0(*_function).setLowerLimit(-std::numeric_limits<double>::max());
41 _parameterFetchMethod0(*_function).setUpperLimit(+std::numeric_limits<double>::max());
42 _parameterFetchMethod1(*_function).setLowerLimit(-std::numeric_limits<double>::max());
43 _parameterFetchMethod1(*_function).setUpperLimit(+std::numeric_limits<double>::max());
53 _scaleFactor0(
right._scaleFactor0),
54 _scaleFactor1(
right._scaleFactor1),
55 _parameterFetchMethod0(
right._parameterFetchMethod0),
56 _parameterFetchMethod1(
right._parameterFetchMethod1),
57 _function(
right._function->clone())
59 _parameterFetchMethod0(*_function).setLowerLimit(-std::numeric_limits<double>::max());
60 _parameterFetchMethod0(*_function).setUpperLimit(+std::numeric_limits<double>::max());
61 _parameterFetchMethod1(*_function).setLowerLimit(-std::numeric_limits<double>::max());
62 _parameterFetchMethod1(*_function).setUpperLimit(+std::numeric_limits<double>::max());
70 <<
"Warning. DoubleParamToArgAdaptor called with scalar argument"
105 <<
"Warning: DoubleParamToArgAdaptor function/argument dimension mismatch"
113 (_parameterFetchMethod0(*_function)).setValue(_scaleFactor0.
getValue()*a[
dMinus]);
114 (_parameterFetchMethod1(*_function)).setValue(_scaleFactor1.
getValue()*a[
dMinus]);
115 return (*_function)(a);
virtual AbsFunction * clone() const =0
virtual double operator()(double argument) const =0
unsigned int dimension() const
Parameter & scaleFactor0()
Parameter &(F::* ScopedMethodPtr)()
DoubleParamToArgAdaptor(const F &function, ScopedMethodPtr parameterFetchMethod0, ScopedMethodPtr paraemterFetchMethod1)
Parameter & scaleFactor1()
virtual double operator()(double argument) const override
virtual unsigned int dimensionality() const override
virtual double getValue() const