5 #include "Pythia8/PhaseSpace.h"
32 const PhaseSpace* phaseSpacePtr,
35 if (sigmaProcessPtr->nFinal() != 1)
return 0.;
41 int idRes = sigmaProcessPtr->resonanceA();
42 double mRes = particleDataPtr->m0(idRes);
43 double wRes = particleDataPtr->mWidth(idRes);
44 double m2Res = mRes*mRes;
45 double gamMRat = wRes/mRes;
46 double sHat = phaseSpacePtr->sHat();
47 double weightBW = m2Res*m2Res + sHat*sHat*(1 + gamMRat*gamMRat) - 2.*sHat*m2Res;
48 double rH = std::sqrt(sHat);
60 if(mFrac < 0.0425)
return 1
e-12/(-1.293+1.098e+2*mFrac-2.800e+3*mFrac*mFrac+2.345e+4*mFrac*mFrac*mFrac);
61 if(mFrac < 0.073)
return 1.248e-12*(
std::exp(1.158+18.34*mFrac));
68 double pe0 = 9.705/2000.;
69 double pe1 = -1.27668e-03;
71 double weightHighpT =1./(
std::exp(pe0+pe1*rH));
73 double p0 = 0.00405295;
74 double p1 = -1.15389e-06;
75 double p2 = -8.83305e-10;
76 double p3 = 1.02983e-12;
77 double p4 = -3.64486e-16;
78 double p5 = 6.05783e-20;
79 double p6 = -4.74988e-24;
80 double p7 = 1.40627e-28;
83 if(rH < 400.) weightFinal *= 0.5;
85 return weightHighpT * weightFinal;