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

CLHEP/GenericFunctions/Power.hh
Go to the documentation of this file.
1 // -*- C++ -*-
2 // $Id: Power.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3 //----------------------Power-----------------------------------------------//
4 // //
5 // Class Power //
6 // Joe Boudreau, Petar Maksimovic, Nov. 1999 //
7 // //
8 // Power(x) returns x^n //
9 //--------------------------------------------------------------------------//
10 #ifndef Power_h
11 #define Power_h 1
13 namespace Genfun {
14 
19  class Power : public AbsFunction {
20 
22 
23  public:
24 
25  // Constructor
26  Power(double n);
27  Power(int n);
28  Power(unsigned int n);
29 
30  // Copy constructor
31  Power(const Power &right);
32 
33  // Destructor
34  virtual ~Power();
35 
36  // Retrieve function value
37 
38  virtual double operator ()(double argument) const;
39  virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
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  private:
48 
49  // It is illegal to assign a fixed constant
50  const Power & operator=(const Power &right);
51 
52  double _doublePower; // power (as a double)
53  int _intPower; // power (as an integer)
54  bool _asInteger; // flag: object constructed with integer argument
55 
56  };
57 } // namespace Genfun
58 #endif
Genfun::Power::Power
Power(double n)
Definition: Power.cc:19
a
@ a
Definition: testCategories.cc:125
Genfun::AbsFunction
Definition: CLHEP/GenericFunctions/AbsFunction.hh:48
AbsFunction.hh
Genfun::Power::~Power
virtual ~Power()
Definition: Power.cc:31
CLHEP::detail::n
n
Definition: Ranlux64Engine.cc:85
Genfun::Power::partial
Derivative partial(unsigned int) const
Definition: Power.cc:62
Genfun::Argument
Definition: CLHEP/GenericFunctions/Argument.hh:17
Genfun::FunctionNoop
Definition: CLHEP/GenericFunctions/FunctionNoop.hh:19
Genfun::Power::operator()
virtual double operator()(double argument) const
Definition: Power.cc:34
Genfun::Power::hasAnalyticDerivative
virtual bool hasAnalyticDerivative() const
Definition: CLHEP/GenericFunctions/Power.hh:45
Genfun::Power
Definition: CLHEP/GenericFunctions/Power.hh:19
FUNCTION_OBJECT_DEF
#define FUNCTION_OBJECT_DEF(classname)
Definition: CLHEP/GenericFunctions/AbsFunction.hh:144
Genfun
Definition: CLHEP/GenericFunctions/Abs.hh:14