00001 #include "FastShowerUtils/Samplers/PeakSigmaS0EmEcalEc1.h"
00002 #include "FastShowerUtils/PolyArgs.h"
00003 #include <cmath>
00004 namespace FastShower{
00005
00006 double PeakSigmaS0EmEcalEc1::value(const PolyArgs& pa) const {
00007 double energy = pa.pp()->energy();
00008 double aDelEta = fabs(pa.pp()->delEta());
00009
00010 double p1 = 0.0620425;
00011 double p2 = 0.00421225;
00012 double p3 = 0.9951;
00013 double p4 = -1022.0*std::exp(-0.005007*energy) + 753.2;
00014
00015 return 1. - p3/(1.+std::exp((aDelEta-p1)/p2)) - p4*std::pow(aDelEta,3);
00016 }
00017
00018 IFn* PeakSigmaS0EmEcalEc1::clone() const {return new PeakSigmaS0EmEcalEc1();}
00019 }
00020
00021