CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
GammaLn.cc
Go to the documentation of this file.
2 #include <cmath>
3 
4 float GammaLn(float z) {
5  const static double coefficients[6] = {76.18009172947146,
6  -86.50532032941677,
7  24.01409824083091,
8  -1.231739572450155,
9  0.1208650973866179e-2,
10  -0.5395239384953e-5};
11 
12  double temp = z + 5.5;
13  temp -= (z + 0.5) * log(temp);
14  double y = z;
15  double series = 1.000000000190015;
16  for (int term = 0; term < 6; term++)
17  series += coefficients[term] / ++y;
18  return -temp + log(2.5066282746310005 * series / z);
19 }
static std::vector< std::string > checklist log
float float float z
float GammaLn(float z)
Definition: GammaLn.cc:4