1#ifndef __JPHYSICS__JGEANZ__
2#define __JPHYSICS__JGEANZ__
61 const double a =
a0 +
a1 * log(E);
62 const double y = pow(z,a-1.0) * exp(-z/
b) / (pow(
b,a) * std::tgamma(a));
100 const double a =
a0 +
a1 * log(E);
101 const double x = z /
b;
124 const double eps = 1.0e-3)
const
131 const double Q = P * (1.0 - eps);
133 for (
int i = 100; i != 0; --i) {
135 const double z = 0.5 * (zmin + zmax);
138 if (fabs(p-Q) < p*eps) {
148 return 0.5 * (zmin + zmax);
164 const double a =
a0 +
a1 * log(E);
Auxiliary methods for mathematics.
Function object for longitudinal profile of EM-shower.
JGeanz(const double __a0, const double __a1, const double __b)
constructor
double getIntegral(const double E, const double z) const
Integral of PDF (starting from 0).
double operator()(const double E, const double z) const
Probability Density Function.
double getLength(const double E, const double P, const double eps=1.0e-3) const
Get shower length for a given integrated probability.
double getProbability(const double E, const double z) const
Probability Density Function.
static double getMinimalShowerSize()
Get minimal shower size.
double getMaximum(const double E) const
Get depth of shower maximum.
double Gamma(const double a, const double x)
Incomplete gamma function.
Auxiliary methods for light properties of deep-sea water.
static const JGeanz geanz(1.85, 0.62, 0.54)
Function object for longitudinal EM-shower profile.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).