CLHEP 2.0.4.7 Reference Documentation
CLHEP Home Page CLHEP Documentation CLHEP Bug Reports |
00001 // -*- C++ -*- 00002 // $Id: ConstMinusFunction.cc,v 1.3 2003/09/06 14:04:14 boudreau Exp $ 00003 #include "CLHEP/GenericFunctions/ConstMinusFunction.hh" 00004 00005 00006 namespace Genfun { 00007 FUNCTION_OBJECT_IMP(ConstMinusFunction) 00008 00009 ConstMinusFunction::ConstMinusFunction(double constant, const AbsFunction *arg): 00010 _constant(constant), 00011 _arg(arg->clone()) 00012 { 00013 } 00014 00015 ConstMinusFunction::ConstMinusFunction(const ConstMinusFunction & right) : 00016 _constant(right._constant), 00017 _arg(right._arg->clone()) 00018 {} 00019 00020 unsigned int ConstMinusFunction::dimensionality() const { 00021 return _arg->dimensionality(); 00022 } 00023 00024 ConstMinusFunction::~ConstMinusFunction() 00025 { 00026 delete _arg; 00027 } 00028 00029 00030 00031 double ConstMinusFunction::operator ()(double x) const 00032 { 00033 return _constant - (*_arg)(x); 00034 } 00035 00036 00037 double ConstMinusFunction::operator ()(const Argument & x) const 00038 { 00039 return _constant - (*_arg)(x); 00040 } 00041 00042 00043 Derivative ConstMinusFunction::partial(unsigned int index) const { 00044 const AbsFunction & fPrime = -_arg->partial(index); 00045 return Derivative(& fPrime); 00046 } 00047 00048 00049 } // namespace Genfun