CLHEP VERSION Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

GenericFunctions/Sigma.hh
Go to the documentation of this file.
1 // -*- C++ -*-
2 // $Id:
3 //--------------------------Sigma-------------------------------------------//
4 // //
5 // Sigma, result of addition of N functions //
6 // //
7 //--------------------------------------------------------------------------//
8 
9 #ifndef Sigma_h
10 #define Sigma_h 1
12 
13 namespace Genfun {
14 
19  class Sigma : public AbsFunction {
20 
22 
23  public:
24 
25  // Constructor
26  Sigma();
27 
28  // Copy constructor
29  Sigma(const Sigma &right);
30 
31  // Destructor
32  virtual ~Sigma();
33 
34  // Retreive function value
35  virtual double operator ()(double argument) const;
36  virtual double operator ()(const Argument & a) const;
37 
38  // Dimensionality
39  virtual unsigned int dimensionality() const;
40 
41  // Derivative.
42  Derivative partial (unsigned int) const;
43 
44  // Does this function have an analytic derivative?
45  virtual bool hasAnalyticDerivative() const {return true;}
46 
47  // Add a function to the sum:
48  void accumulate (const AbsFunction & fcn);
49 
50  private:
51 
52  // It is illegal to assign a Sigma
53  const Sigma & operator=(const Sigma &right);
54 
55  std::vector<const AbsFunction *> _fcn;
56 
57  };
58 } // namespace Genfun
59 #endif
#define FUNCTION_OBJECT_DEF(classname)
Derivative partial(unsigned int) const
virtual bool hasAnalyticDerivative() const
void accumulate(const AbsFunction &fcn)
virtual ~Sigma()
virtual double operator()(double argument) const
Definition: Sigma.cc:36
virtual unsigned int dimensionality() const
Sigma(const Sigma &right)
@ a