CLHEP VERSION Reference Documentation
CLHEP Home Page
CLHEP Documentation
CLHEP Bug Reports
Main Page
Namespaces
Classes
Files
File List
File Members
GenericFunctions
GenericFunctions
GenericFunctions/BetaDistribution.hh
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id:
3
//---------------------BetaDistribution-------------------------------------//
4
// //
5
// Class Beta, x^(a-1)(1-x)^beta-1 Gamma(a+b)/Gamma(a)/Gamma(b); //
6
// Joe Boudreau, Jan 2007 //
7
// //
8
//--------------------------------------------------------------------------//
9
#ifndef BetaDistribution_h
10
#define BetaDistribution_h 1
11
#include "
CLHEP/GenericFunctions/AbsFunction.hh
"
12
#include "
CLHEP/GenericFunctions/Parameter.hh
"
13
#include "
CLHEP/GenericFunctions/LogGamma.hh
"
14
#define _BETADISTRIBUTION_REVISED_ 1
15
namespace
Genfun {
16
21
class
BetaDistribution :
public
AbsFunction {
22
23
FUNCTION_OBJECT_DEF
(
BetaDistribution
)
24
25
public
:
26
27
// Constructor
28
BetaDistribution
();
29
30
// Copy constructor
31
BetaDistribution
(
const
BetaDistribution
&right);
32
33
// Destructor
34
virtual
~BetaDistribution
();
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
BetaDistribution
& operator=(
const
BetaDistribution
&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
Generated on Sun Jun 17 2012 08:08:26 for CLHEP by
1.8.1.1