CLHEP
2.4.6.4
C++ Class Library for High Energy Physics
Loading...
Searching...
No Matches
GammaDistribution.hh
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id:
3
//---------------------GammaDistribution------------------------------------//
4
// //
5
// Class Gamma, x^a * e(-x/b) / (b^(a+1) Gamma(Alpha+1)); //
6
// Joe Boudreau, Jan 2007 //
7
// //
8
//--------------------------------------------------------------------------//
9
#ifndef GammaDistribution_h
10
#define GammaDistribution_h 1
11
#include "CLHEP/GenericFunctions/AbsFunction.hh"
12
#include "CLHEP/GenericFunctions/Parameter.hh"
13
#include "CLHEP/GenericFunctions/LogGamma.hh"
14
#define _GAMMADISTRIBUTION_REVISED_ 1
15
namespace
Genfun
{
16
17
/**
18
* @author
19
* @ingroup genfun
20
*/
21
class
GammaDistribution
:
public
AbsFunction
{
22
23
FUNCTION_OBJECT_DEF
(
GammaDistribution
)
24
25
public
:
26
27
// Constructor
28
GammaDistribution
();
29
30
// Copy constructor
31
GammaDistribution
(
const
GammaDistribution
&right);
32
33
// Destructor
34
virtual
~GammaDistribution
();
35
36
// Retreive function value
37
virtual
double
operator ()
(
double
argument)
const override
;
38
virtual
double
operator ()
(
const
Argument
& a)
const override
{
return
operator()
(a[0]);}
39
40
// Get the paramter alpha
41
Parameter
&
alpha
();
42
43
// Get the paramter alpha
44
Parameter
&
beta
();
45
46
private
:
47
48
// It is illegal to assign an adjustable constant
49
const
GammaDistribution
& operator=(
const
GammaDistribution
&right);
50
51
// Here are the two parameters alpha and beta:
52
53
Parameter
_alpha;
54
Parameter
_beta;
55
56
57
// This function has a LogGamma Function;
58
LogGamma
_logGamma;
59
60
61
};
62
}
// namespace Genfun
63
#endif
FUNCTION_OBJECT_DEF
#define FUNCTION_OBJECT_DEF(classname)
Definition:
AbsFunction.hh:143
Genfun::AbsFunction
Definition:
AbsFunction.hh:48
Genfun::Argument
Definition:
Argument.hh:17
Genfun::GammaDistribution
Definition:
GammaDistribution.hh:21
Genfun::GammaDistribution::GammaDistribution
GammaDistribution()
Definition:
GammaDistribution.cc:15
Genfun::GammaDistribution::alpha
Parameter & alpha()
Definition:
GammaDistribution.cc:37
Genfun::GammaDistribution::beta
Parameter & beta()
Definition:
GammaDistribution.cc:42
Genfun::GammaDistribution::operator()
virtual double operator()(double argument) const override
Definition:
GammaDistribution.cc:30
Genfun::GammaDistribution::~GammaDistribution
virtual ~GammaDistribution()
Definition:
GammaDistribution.cc:27
Genfun::LogGamma
Definition:
LogGamma.hh:19
Genfun::Parameter
Definition:
Parameter.hh:35
Genfun
Definition:
Abs.hh:14
CLHEP-CLHEP_2_4_6_4
GenericFunctions
GenericFunctions
GammaDistribution.hh
Generated by
1.9.6