1 #ifndef __JPHYSICS__JGEANZ__
2 #define __JPHYSICS__JGEANZ__
15 namespace JPP {
using namespace JPHYSICS; }
61 const double a =
a0 +
a1 * log(E);
62 const double y = pow(z,a-1.0) * exp(-z/
b) / (pow(
b,a) * TMath::Gamma(a));
100 const double a =
a0 +
a1 * log(E);
101 const double x = z /
b;
102 const double y = TMath::Gamma(a,x);
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);
Function object for longitudinal profile of EM-shower.
JGeanz(const double __a0, const double __a1, const double __b)
constructor
static const JGeanz geanz(1.85, 0.62, 0.54)
Function object for longitudinal EM-shower profile.
static double getMinimalShowerSize()
Get minimal shower size.
double getIntegral(const double E, const double z) const
Integral of PDF (starting from 0).
double getMaximum(const double E) const
Get depth of shower maximum.
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.
double operator()(const double E, const double z) const
Probability Density Function.