CLHEP VERSION Reference Documentation
CLHEP Home Page
CLHEP Documentation
CLHEP Bug Reports
GenericFunctions
CLHEP
GenericFunctions
CLHEP/GenericFunctions/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
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
;
38
virtual
double
operator ()
(
const
Argument
&
a
)
const
{
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
Parameter.hh
Genfun::AbsFunction
Definition:
CLHEP/GenericFunctions/AbsFunction.hh:48
FUNCTION_OBJECT_DEF
#define FUNCTION_OBJECT_DEF(classname)
Definition:
CLHEP/GenericFunctions/AbsFunction.hh:144
Genfun::GammaDistribution::GammaDistribution
GammaDistribution()
Definition:
GammaDistribution.cc:13
Genfun::GammaDistribution::beta
Parameter & beta()
Definition:
GammaDistribution.cc:40
LogGamma.hh
Genfun::GammaDistribution::operator()
virtual double operator()(double argument) const
Definition:
GammaDistribution.cc:28
Genfun::GammaDistribution::alpha
Parameter & alpha()
Definition:
GammaDistribution.cc:35
Genfun::GammaDistribution::~GammaDistribution
virtual ~GammaDistribution()
Definition:
GammaDistribution.cc:25
a
Definition:
testCategories.cc:125
AbsFunction.hh
Genfun::Argument
Definition:
CLHEP/GenericFunctions/Argument.hh:17
Genfun::LogGamma
Definition:
CLHEP/GenericFunctions/LogGamma.hh:19
Genfun::GammaDistribution
Definition:
CLHEP/GenericFunctions/GammaDistribution.hh:21
Genfun::Parameter
Definition:
CLHEP/GenericFunctions/Parameter.hh:35
Genfun
Definition:
CLHEP/GenericFunctions/Abs.hh:14
Generated by
1.8.13