CLHEP 2.4.6.4
C++ Class Library for High Energy Physics
Loading...
Searching...
No Matches
ConstMinusFunction.hh
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id: ConstMinusFunction.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3//--------------------------ConstMinusFunction------------------------------//
4// //
5// ConstMinusFunction, result of subtracting a function from constant //
6// Joe Boudreau, Petar Maksimovic, November 1999 //
7// //
8//--------------------------------------------------------------------------//
9
10#ifndef ConstMinusFunction_h
11#define ConstMinusFunction_h 1
12#include "CLHEP/GenericFunctions/AbsFunction.hh"
13
14namespace Genfun {
15
16 /**
17 * @author
18 * @ingroup genfun
19 */
21
23
24 public:
25
26 // Constructor
27 ConstMinusFunction(double constant, const AbsFunction *arg);
28
29 // Copy constructor
31
32 // Destructor
33 virtual ~ConstMinusFunction();
34
35 // Retreive function value
36 virtual double operator ()(double argument) const override;
37 virtual double operator ()(const Argument & a) const override;
38
39 // Dimensionality
40 virtual unsigned int dimensionality() const override;
41
42 // Derivative.
43 Derivative partial (unsigned int) const override;
44
45 // Does this function have an analytic derivative?
46 virtual bool hasAnalyticDerivative() const override {return true;}
47
48 private:
49
50 // It is illegal to assign a ConstMinusFunction
51 const ConstMinusFunction & operator=(const ConstMinusFunction &right);
52
53 double _constant;
54 const AbsFunction *_arg;
55 };
56} // namespace Genfun
57#endif
#define FUNCTION_OBJECT_DEF(classname)
Definition: AbsFunction.hh:143
Derivative partial(unsigned int) const override
virtual bool hasAnalyticDerivative() const override
virtual double operator()(double argument) const override
virtual unsigned int dimensionality() const override
Definition: Abs.hh:14