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