CLHEP 2.4.6.4
C++ Class Library for High Energy Physics
Loading...
Searching...
No Matches
Genfun::VoigtProfile Class Reference

#include <VoigtProfile.hh>

+ Inheritance diagram for Genfun::VoigtProfile:

Public Member Functions

 VoigtProfile ()
 
 VoigtProfile (const VoigtProfile &right)
 
virtual ~VoigtProfile ()
 
virtual double operator() (double argument) const override
 
virtual double operator() (const Argument &a) const override
 
Parametermass ()
 
Parameterwidth ()
 
Parametersigma ()
 
- Public Member Functions inherited from Genfun::AbsFunction
 AbsFunction ()
 
 AbsFunction (const AbsFunction &right)
 
virtual ~AbsFunction ()
 
virtual unsigned int dimensionality () const
 
virtual double operator() (double argument) const =0
 
virtual double operator() (const Argument &argument) const =0
 
virtual AbsFunctionclone () const =0
 
virtual FunctionComposition operator() (const AbsFunction &f) const
 
virtual ParameterComposition operator() (const AbsParameter &p) const
 
Derivative derivative (const Variable &v) const
 
Derivative prime () const
 
virtual bool hasAnalyticDerivative () const
 
virtual Derivative partial (unsigned int) const
 

Detailed Description

Author

Definition at line 20 of file VoigtProfile.hh.

Constructor & Destructor Documentation

◆ VoigtProfile() [1/2]

Genfun::VoigtProfile::VoigtProfile ( )

Definition at line 83 of file VoigtProfile.cc.

83 :
84 _mass("mass", 50, 10, 90),
85 _width ("width", 5, 0, 100),
86 _sigma("sigma", 5, 0, 100)
87{}

◆ VoigtProfile() [2/2]

Genfun::VoigtProfile::VoigtProfile ( const VoigtProfile right)

Definition at line 89 of file VoigtProfile.cc.

89 :
91 _mass(right._mass),
92 _width (right._width),
93 _sigma(right._sigma)
94{
95}

◆ ~VoigtProfile()

Genfun::VoigtProfile::~VoigtProfile ( )
virtual

Definition at line 97 of file VoigtProfile.cc.

97 {
98}

Member Function Documentation

◆ mass()

Parameter & Genfun::VoigtProfile::mass ( )

Definition at line 115 of file VoigtProfile.cc.

115 {
116 return _mass;
117}

◆ operator()() [1/2]

virtual double Genfun::VoigtProfile::operator() ( const Argument a) const
inlineoverridevirtual

Implements Genfun::AbsFunction.

Definition at line 37 of file VoigtProfile.hh.

37{return operator() (a[0]);}
virtual double operator()(double argument) const override

◆ operator()() [2/2]

double Genfun::VoigtProfile::operator() ( double  argument) const
overridevirtual

Implements Genfun::AbsFunction.

Definition at line 100 of file VoigtProfile.cc.

100 {
101 double M=_mass.getValue();
102 double G=_width.getValue()/2.0;
103 double s=_sigma.getValue();
104 static const double sqrt2=sqrt(2.0);
105 static const double sqrt2PI=sqrt(2.0*M_PI);
106 static const std::complex<double> I(0,1);
107 std::complex<double> z = ((x-M) + I*G)/sqrt2/s;
108
109 double f=nwwerf(z).real()/s/sqrt2PI;
110
111 return f;
112
113}
std::complex< double > nwwerf(std::complex< double > z)
Definition: VoigtProfile.cc:22
virtual double getValue() const
Definition: Parameter.cc:29
void f(void g())
Definition: excDblThrow.cc:38

Referenced by operator()().

◆ sigma()

Parameter & Genfun::VoigtProfile::sigma ( )

Definition at line 124 of file VoigtProfile.cc.

124 {
125 return _sigma;
126}

◆ width()

Parameter & Genfun::VoigtProfile::width ( )

Definition at line 120 of file VoigtProfile.cc.

120 {
121 return _width;
122}

The documentation for this class was generated from the following files: