2306 double Gamma=0, mZ=0, a0=0, a1=0, a2=0, a3=0, Gamma0=0, m0=0,
f=0, f0=0;
2307 double a0_bkgd=0, a1_bkgd=0, a2_bkgd=0, a3_bkgd=0, a4_bkgd=0, a5_bkgd=0, a6_bkgd=0, a7_bkgd=0;
2308 double a8_bkgd=0, a9_bkgd=0, a10_bkgd=0, a11_bkgd=0, a12_bkgd=0, a13_bkgd=0;
2313 Gamma0 = 24.3063 + -0.169814*
mZZ + 0.00274393*(
mZZ - 108.86)*(
mZZ - 108.86);
2314 m0 = -273.264 + 6.81815*
mZZ + -0.0520652*TMath::Power(
mZZ,2) + 0.000129716*TMath::Power(
mZZ,3);
2315 a0 = 0.00205023 + 1.49685e-05*
mZZ + 2.45743e-07*(
mZZ - 110.553)*(
mZZ - 110.553);
2316 a1 = -34.7502 + 1.15173*
mZZ +-0.0152287*TMath::Power(
mZZ,2) + 0.000100538*TMath::Power(
mZZ,3)+ -3.317e-07*TMath::Power(
mZZ,4)+ 4.37829e-10*TMath::Power(
mZZ,5);
2317 a2 = 0.0710702 + -0.00232026*
mZZ + 3.00042e-05*TMath::Power(
mZZ,2) + -1.92831e-07*TMath::Power(
mZZ,3)+ 6.18009e-10*TMath::Power(
mZZ,4)+ -7.92751e-13*TMath::Power(
mZZ,5);
2318 f = 4.81681e-01*(TMath::Erf( (
mZZ-1.47620
e+02)/8.12397
e-01 ) + 1.);
2319 Gamma = 252.406 + -5.11437*
mZZ + 0.0345238*TMath::Power(
mZZ,2) + -7.44284e-05*TMath::Power(
mZZ,3);
2320 f0 = 3.68735e-01*(TMath::Erf( (
mZZ-1.17687
e+02)/2.61381
e-01 ) + 1.);
2334 a3_bkgd = 0.0823749;
2340 a9_bkgd = 0.0957905;
2344 a13_bkgd = 0.110563;
2348 Gamma0 = 64.5791 + -0.465027*
mZZ + 0.00680112*(
mZZ - 109.083)*(
mZZ - 109.083);
2349 m0 = -4528.09 + 98.4925*
mZZ + -0.70193*TMath::Power(
mZZ,2) + 0.00164952*TMath::Power(
mZZ,3);
2350 a0 = 0.00205023 + 1.49685e-05*
mZZ + 2.45743e-07*(
mZZ - 110.553)*(
mZZ - 110.553);
2351 a1 = 0.0549555 + -0.000367875*
mZZ + 6.16188e-10*(
mZZ - 106.028)*(
mZZ - 106.028)*(
mZZ - 106.028)*(
mZZ - 106.028);
2352 a2 = -0.000222052 + 1.51606e-06*
mZZ + -9.57278e-08*(
mZZ - 144.667)*(
mZZ - 144.667);
2353 f = 4.82988e-01*(TMath::Erf( (
mZZ-1.47620
e+02)/8.12397
e-01 ) + 1.);
2354 Gamma = 252.406 + -5.11437*
mZZ + 0.0345238*TMath::Power(
mZZ,2) + -7.44284e-05*TMath::Power(
mZZ,3);
2355 f0 = 3.68735e-01*(TMath::Erf( (
mZZ-1.17687
e+02)/2.61381
e-01 ) + 1.);
2369 a3_bkgd = 0.0361427;
2373 a7_bkgd = 0.0345372;
2377 a11_bkgd = -6.94956;
2379 a13_bkgd = 0.0320278;
2399 Gamma0 = 36.9986 + -0.250136*
mZZ + 0.00474031*(
mZZ - 108.732)*(
mZZ - 108.732);
2400 m0 = -3266.9 + 73.5969*
mZZ + -0.544448*TMath::Power(
mZZ,2) + 0.00133127*TMath::Power(
mZZ,3);
2401 a0 = 0.00205023 + 1.49685e-05*
mZZ + 2.45743e-07*(
mZZ - 110.553)*(
mZZ - 110.553);
2402 a1 = 0.0206819 + -0.000168968*
mZZ + 4.26934e-11*(
mZZ - 40.4456)*(
mZZ - 40.4456)*(
mZZ - 40.4456)*(
mZZ - 40.4456);
2403 a2 = -1.271e-05 + 8.742e-08*
mZZ + -6.34276e-08*(
mZZ - 144.032)*(
mZZ - 144.032);
2404 f = 4.82988e-01*(TMath::Erf( (
mZZ-1.47620
e+02)/8.12397
e-01 ) + 1.);
2405 Gamma = 252.406 + -5.11437*
mZZ + 0.0345238*TMath::Power(
mZZ,2) + -7.44284e-05*TMath::Power(
mZZ,3);
2406 f0 = 3.68735e-01*(TMath::Erf( (
mZZ-1.17687
e+02)/2.61381
e-01 ) + 1.);
2420 a3_bkgd = 0.0455842;
2424 a7_bkgd = 0.0692236;
2426 a9_bkgd = 0.0561965;
2428 a11_bkgd = -1.71367;
2430 a13_bkgd = 0.543254;
2433 std::cout <<
"Invalid paramters for this PDF!" << std::endl;
2438 double ZZshape = (.5+.5*TMath::Erf((
mZZ-a0_bkgd)/a1_bkgd))*(a3_bkgd/(1+
exp((
mZZ-a0_bkgd)/a2_bkgd)))+(.5+.5*TMath::Erf((
mZZ-a4_bkgd)/a5_bkgd))*(a7_bkgd/(1+
exp((
mZZ-a4_bkgd)/a6_bkgd))+a9_bkgd/(1+
exp((
mZZ-a4_bkgd)/a8_bkgd)))+(.5+.5*TMath::Erf((
mZZ-a10_bkgd)/a11_bkgd))*(a13_bkgd/(1+
exp((
mZZ-a10_bkgd)/a12_bkgd)) );
2441 double mZDistribution, acceptance;
2445 if(beta<0)
return 0.0000001;
2446 else mZDistribution =
beta;
2453 double onShellZ =
exp(-(
mZstar-mZ)*(
mZstar-mZ)/(2*Gamma*Gamma))/
sqrt(2*3.1415*Gamma*Gamma);
2455 double errorFunc =
exp(-(
mZstar-m0)*(
mZstar-m0)/(2*Gamma0*Gamma0))/
sqrt(2*3.1415*Gamma0*Gamma0);
2458 double final = mZDistribution*((1-
f)*(f0*acceptance+(1-f0)*errorFunc)+
f*onShellZ);
2459 if (
final <= 0)
final = 1
e-12;
2463 double E = 2.71828183;
2468 double mZstarFix=12.;
2469 double integralT1Lo=((1 -
f)*f0*((a1*Power(mZstarFix,6))/6. + (2*a2*Power(mZstarFix,7))/7. + (a0 - a2)*mZstarFix*Power(Power(mZ,2) - Power(
mZZ,2),2) + (a1*Power(mZstarFix,2)*Power(Power(mZ,2) - Power(
mZZ,2),2))/2. - (a1*Power(mZstarFix,4)*(Power(mZ,2) + Power(
mZZ,2)))/2. + (Power(mZstarFix,5)*(a0 - a2*(1 + 4*Power(mZ,2) + 4*Power(
mZZ,2))))/5. + (2*Power(mZstarFix,3)*(-(a0*(Power(mZ,2) + Power(
mZZ,2))) + a2*(Power(mZ,4) + Power(
mZZ,2) + Power(
mZZ,4) + Power(mZ,2)*(1 - 2*Power(
mZZ,2)))))/3.))/Power(
mZZ,4);
2471 double integralT1Hi=((1 -
f)*f0*((a1*Power(mZstarFix,6))/6. + (2*a2*Power(mZstarFix,7))/7. + (a0 - a2)*mZstarFix*Power(Power(mZ,2) - Power(
mZZ,2),2) + (a1*Power(mZstarFix,2)*Power(Power(mZ,2) - Power(
mZZ,2),2))/2. - (a1*Power(mZstarFix,4)*(Power(mZ,2) + Power(
mZZ,2)))/2. + (Power(mZstarFix,5)*(a0 - a2*(1 + 4*Power(mZ,2) + 4*Power(
mZZ,2))))/5. + (2*Power(mZstarFix,3)*(-(a0*(Power(mZ,2) + Power(
mZZ,2))) + a2*(Power(mZ,4) + Power(
mZZ,2) + Power(
mZZ,4) + Power(mZ,2)*(1 - 2*Power(
mZZ,2)))))/3.))/Power(
mZZ,4);
2476 double t2loA = (3*Power(Gamma0,4) + Power(m0,4) + Power(mZ,4) - 2*Power(Gamma0,2)*Power(
mZZ,2) + Power(
mZZ,4) + Power(m0,2)*(6*Power(Gamma0,2) - 2*Power(mZ,2) - 2*Power(
mZZ,2)) - 2*Power(mZ,2)*(Power(Gamma0,2) + Power(
mZZ,2)));
2477 double integralT2Lo=((-1 +
f)*(-1 + f0)*(-1.*((Power(Gamma0,2)*(Power(m0,3) + Power(m0,2)*mZstarFix + mZstarFix*(3*Power(Gamma0,2) - 2*Power(mZ,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2)) + m0*(5*Power(Gamma0,2) - 2*Power(mZ,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2))))/Power(E,Power(m0 - mZstarFix,2)/(2.*Power(Gamma0,2)))) - Gamma0*t2loA*
sqrt(
TMath::Pi()/2.)*TMath::Erf((m0 - mZstarFix)/(
sqrt(2)*Gamma0))))/Power(
mZZ,4);
2480 double t2hiA = (3*Power(Gamma0,4) + Power(m0,4) + Power(mZ,4) - 2*Power(Gamma0,2)*Power(
mZZ,2) + Power(
mZZ,4) + Power(m0,2)*(6*Power(Gamma0,2) - 2*Power(mZ,2) - 2*Power(
mZZ,2)) - 2*Power(mZ,2)*(Power(Gamma0,2) + Power(
mZZ,2)));
2481 double integralT2Hi=((-1 +
f)*(-1 + f0)*(-1.*((Power(Gamma0,2)*(Power(m0,3) + Power(m0,2)*mZstarFix + mZstarFix*(3*Power(Gamma0,2) - 2*Power(mZ,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2)) + m0*(5*Power(Gamma0,2) - 2*Power(mZ,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2))))/Power(E,Power(m0 - mZstarFix,2)/(2.*Power(Gamma0,2)))) - Gamma0*t2hiA*
sqrt(
TMath::Pi()/2.)*TMath::Erf((m0 - mZstarFix)/(
sqrt(2)*Gamma0))))/Power(
mZZ,4);
2485 double t3loA = (3*Power(Gamma,4) + 4*Power(Gamma,2)*Power(mZ,2) - 2*(Power(Gamma,2) + 2*Power(mZ,2))*Power(
mZZ,2) + Power(
mZZ,4));
2486 double integralT3Lo=(
f*((Power(Gamma,2)*(Power(mZ,3) + Power(mZ,2)*mZstarFix - mZstarFix*(3*Power(Gamma,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2)) - mZ*(5*Power(Gamma,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2))))/Power(E,Power(mZ - mZstarFix,2)/(2.*Power(Gamma,2))) - Gamma*t3loA*
sqrt(
TMath::Pi()/2.)*TMath::Erf((mZ - mZstarFix)/(
sqrt(2)*Gamma))))/Power(
mZZ,4);
2489 double t3hiA = (3*Power(Gamma,4) + 4*Power(Gamma,2)*Power(mZ,2) - 2*(Power(Gamma,2) + 2*Power(mZ,2))*Power(
mZZ,2) + Power(
mZZ,4));
2490 double integralT3Hi=(
f*((Power(Gamma,2)*(Power(mZ,3) + Power(mZ,2)*mZstarFix - mZstarFix*(3*Power(Gamma,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2)) - mZ*(5*Power(Gamma,2) + Power(mZstarFix,2) - 2*Power(
mZZ,2))))/Power(E,Power(mZ - mZstarFix,2)/(2.*Power(Gamma,2))) - Gamma*t3hiA*
sqrt(
TMath::Pi()/2.)*TMath::Erf((mZ - mZstarFix)/(
sqrt(2)*Gamma))))/Power(
mZZ,4);
2493 integral = integralT1Hi + integralT2Hi + integralT3Hi - integralT1Lo - integralT2Lo - integralT3Lo;
2495 if (integral <= 0.) {
2496 std::cout <<
"integral is less than zero...." << std::endl;
2500 return (
final/integral)*ZZshape;
Integral< F, X >::type integral(const F &f)