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

CLHEP/GenericFunctions/PeriodicRectangular.hh
Go to the documentation of this file.
1 // -*- C++ -*-
2 // $Id: PeriodicRectangular.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3 //---------------------Rectangular------------------------------------------//
4 // //
5 // Class Exponential //
6 // Joe Boudreau, Petar Maksimovic, November 1999 //
7 // //
8 //--------------------------------------------------------------------------//
9 #ifndef PeriodicRectangular_h_
10 #define PeriodicRectangular_h_ 1
13 namespace Genfun {
14 
20 
22 
23 
24  public:
25 
26  // Constructor
28 
29  // Copy constructor
31 
32  // Destructor
33  virtual ~PeriodicRectangular();
34 
35  // Retreive function value
36  virtual double operator ()(double argument) const;
37  virtual double operator ()(const Argument & arg) const {return operator() (arg[0]);}
38 
39  // Get the position of the first discontinuity
40  Parameter & a();
41 
42  // Get the position of the second discontinuity
43  Parameter & b();
44 
45  // Get the value of the function at its top
46  Parameter & height();
47 
48  // Derivative.
49  Derivative partial (unsigned int) const;
50 
51  // Does this function have an analytic derivative?
52  virtual bool hasAnalyticDerivative() const {return true;}
53 
54  private:
55 
56  // It is illegal to assign an adjustable constant
57  const PeriodicRectangular & operator=(const PeriodicRectangular &right);
58 
59  // Here is the decay constant
60  Parameter _a;
61  Parameter _b;
62  Parameter _height;
63 
64  };
65 } // namespace Genfun
66 #endif
#define FUNCTION_OBJECT_DEF(classname)
virtual double operator()(double argument) const
Derivative partial(unsigned int) const