CLHEP VERSION Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

CumulativeChiSquare.cc
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id: CumulativeChiSquare.cc,v 1.3 2003/09/06 14:04:14 boudreau Exp $
3// ---------------------------------------------------------------------------
4
8
9namespace Genfun {
10FUNCTION_OBJECT_IMP(CumulativeChiSquare)
11
12//---------------------------------------------------------------------------------//
13// Implementation notes: The Cumulative Chi Square function is implemented in //
14// terms of the incomplete gamma function. //
15//---------------------------------------------------------------------------------//
16
18 _nDof(ndf)
19{
20 create();
21}
22
24 delete _function;
25}
26
28AbsFunction(right),
29_nDof(right._nDof)
30{
31 create();
32}
33
34double CumulativeChiSquare::operator() (double x) const {
35 return (*_function)(x);
36}
37
38unsigned int CumulativeChiSquare::nDof() const {
39 return _nDof;
40}
41
42void CumulativeChiSquare::create() {
43 Variable x;
44 IncompleteGamma incompleteGamma;
45 incompleteGamma.a().setValue(_nDof/2.0);
46 _function = (incompleteGamma(x/2.0)).clone();
47}
48} // namespace Genfun
#define FUNCTION_OBJECT_IMP(classname)
virtual AbsFunction * clone() const =0
CumulativeChiSquare(unsigned int nDof)
virtual double operator()(double argument) const
void setValue(double value)
Definition Parameter.cc:57