#include <EmHcalLeakageEc.h>
Inheritance diagram for FastShower::EmHcalLeakageEc:
Public Methods | |
EmHcalLeakageEc () | |
virtual std::pair< double, double > | value (const ParticleParameters &) const |
virtual IFnOfParticleParameters2 * | clone () const |
Definition at line 24 of file EmHcalLeakageEc.h.
|
Definition at line 26 of file EmHcalLeakageEc.h. Referenced by clone().
00026 : IFnOfParticleParameters2(), DebugBase("EmHcalLeakageEc"){} |
|
Implements FastShower::IFnOfParticleParameters2. Definition at line 13 of file EmHcalLeakageEc.cxx. References FastShower::ParticleParameters::energy().
00013 { 00014 00015 double energy = pp.energy(); 00016 00017 double p1 = 0.1582*std::exp(0.009531*energy) - 0.1939; 00018 double p2 = (energy>55.0) ? 0.0425 : 0.043987 - 0.0001719*energy; 00019 double p3 = 0.4690 - 0.002518*energy; 00020 00021 if (energy>15.0) p1= max(p1,0.0); 00022 00023 double base = p1 - p2*std::log(1.0/RandFlat::shoot() - 1.0); 00024 double leakage = (base>0.) ? std::pow(base,(1.0/p3)) : 0.; 00025 00026 std::pair<double, double> ehFracs; 00027 ehFracs.first = 1.0 - leakage; 00028 ehFracs.second = leakage; 00029 00030 return ehFracs; 00031 } |
|
Implements FastShower::IFnOfParticleParameters2. Definition at line 33 of file EmHcalLeakageEc.cxx. References EmHcalLeakageEc().
00033 { 00034 return new EmHcalLeakageEc(*this); 00035 } |