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

GenericFunctions/VoigtProfile.hh
Go to the documentation of this file.
1 // -*- C++ -*-
2 // $Id:
3 //---------------------VoigtProfile----------------------------------------//
4 // //
5 // //
6 // Joe Boudreau, June 2011 //
7 // //
8 //--------------------------------------------------------------------------//
9 #ifndef VoigtProfile_h
10 #define VoigtProfile_h 1
14 namespace Genfun {
15 
20  class VoigtProfile : public AbsFunction {
21 
23 
24  public:
25 
26  // Constructor
27  VoigtProfile();
28 
29  // Copy constructor
30  VoigtProfile(const VoigtProfile &right);
31 
32  // Destructor
33  virtual ~VoigtProfile();
34 
35  // Retreive function value
36  virtual double operator ()(double argument) const;
37  virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
38 
39  // Get the paramter alpha
40  Parameter & mass();
41 
42  // Get the parameter beta
43  Parameter & width();
44 
45  // Get the parameter beta
46  Parameter & sigma();
47 
48 
49  private:
50 
51  // It is illegal to assign an adjustable constant
52  const VoigtProfile & operator=(const VoigtProfile &right);
53 
54  // Here are the two parameters alpha and beta:
55 
56  Parameter _mass;
57  Parameter _width;
58  Parameter _sigma;
59 
60 
61  };
62 } // namespace Genfun
63 #endif