CLHEP 2.4.6.4
C++ Class Library for High Energy Physics
Loading...
Searching...
No Matches
Landau.hh
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id: Landau.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3//---------------------Landau-----------------------------------------------//
4// //
5// Class Landau //
6// Joe Boudreau, November 1999 //
7// //
8//--------------------------------------------------------------------------//
9#ifndef Landau_h
10#define Landau_h 1
11#include "CLHEP/GenericFunctions/AbsFunction.hh"
12#include "CLHEP/GenericFunctions/Parameter.hh"
13
14namespace Genfun {
15
16 /**
17 * @author
18 * @ingroup genfun
19 */
20 class Landau : public AbsFunction {
21
23
24 public:
25
26 // Constructor
27 Landau();
28
29 // Copy constructor
30 Landau(const Landau &right);
31
32 // Destructor
33 virtual ~Landau();
34
35 // Retreive function value
36 virtual double operator ()(double argument) const override;
37 virtual double operator ()(const Argument & a) const override {return operator() (a[0]);}
38
39 // Get the mean of the Landau
40 Parameter & peak();
41 const Parameter & peak() const;
42
43 // Get the sigma of the Landau
44 Parameter & width();
45 const Parameter & width() const;
46
47
48 private:
49
50 // It is illegal to assign an adjustable constant
51 const Landau & operator=(const Landau &right);
52
53 // Here is the decay constant
54 Parameter _peak;
55
56 // Here is the sigma
57 Parameter _width;
58
59 // The old cernlib routine does the work:
60 double _denlan(double x) const;
61
62 };
63} // namespace Genfun
64
65#endif
#define FUNCTION_OBJECT_DEF(classname)
Definition: AbsFunction.hh:143
virtual ~Landau()
Definition: Landau.cc:21
Parameter & peak()
Definition: Landau.cc:38
virtual double operator()(double argument) const override
Definition: Landau.cc:31
Parameter & width()
Definition: Landau.cc:42
Definition: Abs.hh:14