00001 #include "FastShowerUtils/Samplers/TailFracS0HadEarlyEcalBar1.h" 00002 #include "FastShowerUtils/PolyArgs.h" 00003 00004 #include <cmath> 00005 namespace FastShower{ 00006 00007 double TailFracS0HadEarlyEcalBar1::value(const PolyArgs& pa) const { 00008 00009 double energy = pa.pp()->energy(); 00010 double aDelEta = fabs(pa.pp()->delEta()); 00011 // 00012 double p1 = 0.04911 + 0.0005584*energy; 00013 double p2 = -0.003471 + 0.0003688*energy; 00014 double p3 = 0.7961 + 0.001650*energy; 00015 // 00016 return 1. - p3/(1. + std::exp((aDelEta-p1)/p2)); 00017 } 00018 // 00019 IFn* TailFracS0HadEarlyEcalBar1::clone() const { 00020 return new TailFracS0HadEarlyEcalBar1(); 00021 } 00022 }//namespace 00023 00024