7 #include "GeoGenericFunctions/FunctionTimesParameter.h" 8 #include "GeoGenericFunctions/Parameter.h" 10 FUNCTION_OBJECT_IMP(FunctionTimesParameter)
12 FunctionTimesParameter::FunctionTimesParameter(const AbsParameter *parameter, const AbsFunction *function):
13 _function(function->clone()),
14 _parameter(parameter->clone())
16 if (parameter->parameter() && _parameter->parameter()) {
17 _parameter->parameter()->connectFrom(parameter->parameter());
21 FunctionTimesParameter::FunctionTimesParameter(
const FunctionTimesParameter & right) :
23 _function(right._function->clone()),
24 _parameter(right._parameter->clone())
27 unsigned int FunctionTimesParameter::dimensionality()
const {
28 return _function->dimensionality();
31 FunctionTimesParameter::~FunctionTimesParameter()
38 double FunctionTimesParameter::operator ()(
double x)
const 40 return _parameter->getValue() * (*_function)(x);
44 double FunctionTimesParameter::operator ()(
const Argument & x)
const 46 return _parameter->getValue() * (*_function)(x);
52 Derivative FunctionTimesParameter::partial(
unsigned int index)
const {
53 const Derivative & d=_function->partial(index);
54 const AbsFunction & fPrime = (*_parameter)*d;
55 return Derivative(&fPrime);