#include <HadLateHcalCoreFracBar.h>
Inheritance diagram for FastShower::HadLateHcalCoreFracBar:
Private Methods | |
virtual double | value (const ParticleParameters &) const |
virtual IFnOfParticleParameters * | clone () const |
UML: IDistributionClass.unm
Definition at line 25 of file HadLateHcalCoreFracBar.h.
|
Implements FastShower::IFnOfParticleParameters. Definition at line 13 of file HadLateHcalCoreFracBar.cxx. References FastShower::ParticleParameters::energy().
00013 { 00014 00015 double energy = pp.energy(); 00016 00017 double p1 = -429.5318909*std::exp(-0.8211844*energy) + 1.1221508; 00018 double p2 = 0.0280945*std::exp(-0.0511857*energy) + 0.0376265; 00019 double p3 = -70.7056808*std::exp(-0.0866987*energy) + 31.9345112; 00020 double p4 = 0.0018101 + 0.0000344*energy; 00021 00022 double rndm = RandFlat::shoot(); 00023 00024 double denominator = ( (rndm - p4) > FLT_EPSILON )? (rndm - p4) : FLT_EPSILON; 00025 double result = p1 - p2*std::log(p3/denominator - 1.0); 00026 00027 return min(result, 1.0); 00028 } |
|
Implements FastShower::IFnOfParticleParameters. Definition at line 30 of file HadLateHcalCoreFracBar.cxx.
00030 { 00031 return new HadLateHcalCoreFracBar(*this); 00032 } |