10 #include "SigmaExtraDim.h"
19 complex ampLedS(
double x,
double n,
double L,
double M) {
22 if (n <= 0)
return cS;
27 double rC = sqrt(pow(M_PI,n)) * pow(L,exp1)
28 / (GammaReal(n/2.) * pow(M,exp2));
33 double sqrX = sqrt(-x);
34 if (
int(n) % 2 == 0) {
35 cS = -log(fabs(1 - 1/x));
37 cS = (2.*atan(sqrX) - M_PI)/sqrX;
39 }
else if ((x > 0) && (x < 1)) {
40 double sqrX = sqrt(x);
41 if (
int(n) % 2 == 0) {
42 cS = -log(fabs(1 - 1/x)) - M_PI*I;
44 double rat = (sqrX + 1)/(sqrX - 1);
45 cS = log(fabs(rat))/sqrX - M_PI*I/sqrX;
48 double sqrX = sqrt(x);
49 if (
int(n) % 2 == 0) {
50 cS = -log(fabs(1 - 1/x));
52 double rat = (sqrX + 1)/(sqrX - 1);
53 cS = log(fabs(rat))/sqrX;
60 if (
int(n) % 2 == 0) {
67 for (
int i=1; i<nL; ++i) {
79 double funLedG(
double x,
double y) {
80 double ret = pow(x,4) + 10. * pow(x,3) * y + 42. * pow2(x) * pow2(y)
81 + 64. * x * pow(y,3) + 32. * pow(y,4);
94 void Sigma1gg2GravitonStar::initProc() {
98 mRes = particleDataPtr->m0(idGstar);
99 GammaRes = particleDataPtr->mWidth(idGstar);
101 GamMRat = GammaRes / mRes;
105 eDsmbulk = settingsPtr->flag(
"ExtraDimensionsG*:SMinBulk");
107 if (eDsmbulk) eDvlvl = settingsPtr->flag(
"ExtraDimensionsG*:VLVL");
108 kappaMG = settingsPtr->parm(
"ExtraDimensionsG*:kappaMG");
109 for (
int i = 0; i < 27; ++i) eDcoupling[i] = 0.;
110 double tmPcoup = settingsPtr->parm(
"ExtraDimensionsG*:Gqq");
111 for (
int i = 1; i <= 4; ++i) eDcoupling[i] = tmPcoup;
112 eDcoupling[5] = settingsPtr->parm(
"ExtraDimensionsG*:Gbb");
113 eDcoupling[6] = settingsPtr->parm(
"ExtraDimensionsG*:Gtt");
114 tmPcoup = settingsPtr->parm(
"ExtraDimensionsG*:Gll");
115 for (
int i = 11; i <= 16; ++i) eDcoupling[i] = tmPcoup;
116 eDcoupling[21] = settingsPtr->parm(
"ExtraDimensionsG*:Ggg");
117 eDcoupling[22] = settingsPtr->parm(
"ExtraDimensionsG*:Ggmgm");
118 eDcoupling[23] = settingsPtr->parm(
"ExtraDimensionsG*:GZZ");
119 eDcoupling[24] = settingsPtr->parm(
"ExtraDimensionsG*:GWW");
120 eDcoupling[25] = settingsPtr->parm(
"ExtraDimensionsG*:Ghh");
123 gStarPtr = particleDataPtr->particleDataEntryPtr(idGstar);
131 void Sigma1gg2GravitonStar::sigmaKin() {
134 double widthIn = mH / (160. * M_PI);
137 if (eDsmbulk) widthIn *= 2. * pow2(eDcoupling[21] * mH);
138 else widthIn *= pow2(kappaMG);
141 double sigBW = 5. * M_PI/ ( pow2(sH - m2Res) + pow2(sH * GamMRat) );
142 double widthOut = gStarPtr->resWidthOpen(idGstar, mH);
145 sigma = widthIn * sigBW * widthOut * pow2(sH / m2Res);
153 void Sigma1gg2GravitonStar::setIdColAcol() {
156 setId( 21, 21, idGstar);
159 setColAcol( 1, 2, 2, 1, 0, 0);
169 double Sigma1gg2GravitonStar::weightDecay(
Event& process,
int iResBeg,
173 int idMother = process[process[iResBeg].mother1()].idAbs();
177 return weightTopDecay( process, iResBeg, iResEnd);
180 if (iResBeg != 5 || iResEnd != 5)
return 1.;
183 double mr1 = pow2(process[6].m()) / sH;
184 double mr2 = pow2(process[7].m()) / sH;
185 double betaf = sqrtpos( pow2(1. - mr1 - mr2) - 4. * mr1 * mr2);
186 double cosThe = (process[3].p() - process[4].p())
187 * (process[7].p() - process[6].p()) / (sH * betaf);
193 if (process[6].idAbs() < 19) {
194 wt = 1. - pow4(cosThe);
197 }
else if (process[6].
id() == 21 || process[6].
id() == 22) {
198 wt = (1. + 6. * pow2(cosThe) + pow4(cosThe)) / 8.;
201 }
else if (process[6].
id() == 23 || process[6].id() == 24) {
202 double beta2 = pow2(betaf);
203 double cost2 = pow2(cosThe);
204 double cost4 = pow2(cost2);
205 wt = pow2(beta2 - 2.)*(1. - 2.*cost2 + cost4);
211 double beta4 = pow2(beta2);
212 double beta8 = pow2(beta4);
213 wt += 2.*pow2(beta4 - 1.)*beta4*cost4;
214 wt += 2.*pow2(beta2 - 1.)*(1. - 2.*beta4*cost2 + beta8*cost4);
215 wt += 2.*(1. + 6.*beta4*cost2 + beta8*cost4);
216 wt += 8.*(1. - beta2)*(1. - cost4);
221 }
else if (process[6].
id() == 25) {
222 double beta2 = pow2(betaf);
223 double cost2 = pow2(cosThe);
224 double cost4 = pow2(cost2);
225 wt = pow2(beta2 - 2.)*(1. - 2.*cost2 + cost4);
243 void Sigma1ffbar2GravitonStar::initProc() {
247 mRes = particleDataPtr->m0(idGstar);
248 GammaRes = particleDataPtr->mWidth(idGstar);
250 GamMRat = GammaRes / mRes;
254 eDsmbulk = settingsPtr->flag(
"ExtraDimensionsG*:SMinBulk");
256 if (eDsmbulk) eDvlvl = settingsPtr->flag(
"ExtraDimensionsG*:VLVL");
257 kappaMG = settingsPtr->parm(
"ExtraDimensionsG*:kappaMG");
258 for (
int i = 0; i < 27; ++i) eDcoupling[i] = 0.;
259 double tmPcoup = settingsPtr->parm(
"ExtraDimensionsG*:Gqq");
260 for (
int i = 1; i <= 4; ++i) eDcoupling[i] = tmPcoup;
261 eDcoupling[5] = settingsPtr->parm(
"ExtraDimensionsG*:Gbb");
262 eDcoupling[6] = settingsPtr->parm(
"ExtraDimensionsG*:Gtt");
263 tmPcoup = settingsPtr->parm(
"ExtraDimensionsG*:Gll");
264 for (
int i = 11; i <= 16; ++i) eDcoupling[i] = tmPcoup;
265 eDcoupling[21] = settingsPtr->parm(
"ExtraDimensionsG*:Ggg");
266 eDcoupling[22] = settingsPtr->parm(
"ExtraDimensionsG*:Ggmgm");
267 eDcoupling[23] = settingsPtr->parm(
"ExtraDimensionsG*:GZZ");
268 eDcoupling[24] = settingsPtr->parm(
"ExtraDimensionsG*:GWW");
269 eDcoupling[25] = settingsPtr->parm(
"ExtraDimensionsG*:Ghh");
272 gStarPtr = particleDataPtr->particleDataEntryPtr(idGstar);
280 void Sigma1ffbar2GravitonStar::sigmaKin() {
283 double widthIn = mH / (80. * M_PI);
286 double sigBW = 5. * M_PI/ ( pow2(sH - m2Res) + pow2(sH * GamMRat) );
287 double widthOut = gStarPtr->resWidthOpen(idGstar, mH);
290 sigma0 = widthIn * sigBW * widthOut * pow2(sH / m2Res);
298 double Sigma1ffbar2GravitonStar::sigmaHat() {
300 double sigma = sigma0;
303 if (eDsmbulk) sigma *= 2. * pow2(eDcoupling[min( abs(id1), 26)] * mH);
304 else sigma *= pow2(kappaMG);
307 if (abs(id1) < 9) sigma /= 3.;
316 void Sigma1ffbar2GravitonStar::setIdColAcol() {
319 setId( id1, id2, idGstar);
322 if (abs(id1) < 9) setColAcol( 1, 0, 0, 1, 0, 0);
323 else setColAcol( 0, 0, 0, 0, 0, 0);
324 if (id1 < 0) swapColAcol();
334 double Sigma1ffbar2GravitonStar::weightDecay(
Event& process,
int iResBeg,
338 int idMother = process[process[iResBeg].mother1()].idAbs();
342 return weightTopDecay( process, iResBeg, iResEnd);
345 if (iResBeg != 5 || iResEnd != 5)
return 1.;
348 double mr1 = pow2(process[6].m()) / sH;
349 double mr2 = pow2(process[7].m()) / sH;
350 double betaf = sqrtpos( pow2(1. - mr1 - mr2) - 4. * mr1 * mr2);
351 double cosThe = (process[3].p() - process[4].p())
352 * (process[7].p() - process[6].p()) / (sH * betaf);
358 if (process[6].idAbs() < 19) {
359 wt = (1. - 3. * pow2(cosThe) + 4. * pow4(cosThe)) / 2.;
362 }
else if (process[6].
id() == 21 || process[6].id() == 22) {
363 wt = 1. - pow4(cosThe);
366 }
else if (process[6].
id() == 23 || process[6].
id() == 24) {
367 double beta2 = pow2(betaf);
368 double cost2 = pow2(cosThe);
369 double cost4 = pow2(cost2);
370 wt = pow2(beta2 - 2.)*cost2*(1. - cost2);
376 wt += pow2(beta2 - 1.)*cost2*(1. - cost2);
377 wt += 2.*(1. - cost4);
378 wt += (1. - beta2)*(1. - 3.*cost2 + 4.*cost4);
383 }
else if (process[6].
id() == 25) {
384 double beta2 = pow2(betaf);
385 double cost2 = pow2(cosThe);
386 wt = pow2(beta2 - 2.)*cost2*(1. - cost2);
404 void Sigma1qqbar2KKgluonStar::initProc() {
408 mRes = particleDataPtr->m0(idKKgluon);
409 GammaRes = particleDataPtr->mWidth(idKKgluon);
411 GamMRat = GammaRes / mRes;
414 for (
int i = 0; i < 10; ++i) { eDgv[i] = 0.; eDga[i] = 0.; }
415 double tmPgL = settingsPtr->parm(
"ExtraDimensionsG*:KKgqL");
416 double tmPgR = settingsPtr->parm(
"ExtraDimensionsG*:KKgqR");
417 for (
int i = 1; i <= 4; ++i) {
418 eDgv[i] = 0.5 * (tmPgL + tmPgR);
419 eDga[i] = 0.5 * (tmPgL - tmPgR);
421 tmPgL = settingsPtr->parm(
"ExtraDimensionsG*:KKgbL");
422 tmPgR = settingsPtr->parm(
"ExtraDimensionsG*:KKgbR");
423 eDgv[5] = 0.5 * (tmPgL + tmPgR); eDga[5] = 0.5 * (tmPgL - tmPgR);
424 tmPgL = settingsPtr->parm(
"ExtraDimensionsG*:KKgtL");
425 tmPgR = settingsPtr->parm(
"ExtraDimensionsG*:KKgtR");
426 eDgv[6] = 0.5 * (tmPgL + tmPgR); eDga[6] = 0.5 * (tmPgL - tmPgR);
427 interfMode = settingsPtr->mode(
"ExtraDimensionsG*:KKintMode");
430 gStarPtr = particleDataPtr->particleDataEntryPtr(idKKgluon);
438 void Sigma1qqbar2KKgluonStar::sigmaKin() {
441 double widthIn = alpS * mH * 4 / 27;
442 double widthOut = alpS * mH / 6;
449 for (
int i = 0; i < gStarPtr->sizeChannels(); ++i) {
450 int idAbs = abs( gStarPtr->channel(i).product(0) );
453 if ( idAbs > 0 && idAbs <= 6 ) {
454 double mf = particleDataPtr->m0(idAbs);
457 if (mH > 2. * mf + MASSMARGIN) {
458 double mr = pow2(mf / mH);
459 double beta = sqrtpos(1. - 4. * mr);
462 int onMode = gStarPtr->channel(i).onMode();
463 if (onMode == 1 || onMode == 2) {
464 sumSM += beta * (1. + 2. * mr);
465 sumInt += beta * eDgv[min(idAbs, 9)] * (1. + 2. * mr);
466 sumKK += beta * (pow2(eDgv[min(idAbs, 9)]) * (1. + 2.*mr)
467 + pow2(eDga[min(idAbs, 9)]) * (1. - 4.*mr));
474 sigSM = widthIn * 12. * M_PI * widthOut / sH2;
475 sigInt = 2. * sigSM * sH * (sH - m2Res)
476 / ( pow2(sH - m2Res) + pow2(sH * GamMRat) );
477 sigKK = sigSM * sH2 / ( pow2(sH - m2Res) + pow2(sH * GamMRat) );
480 if (interfMode == 1) {sigInt = 0.; sigKK = 0.;}
481 if (interfMode == 2) {sigSM = 0.; sigInt = 0.;}
489 double Sigma1qqbar2KKgluonStar::sigmaHat() {
492 double sigma = sigSM * sumSM
493 + eDgv[min(abs(id1), 9)] * sigInt * sumInt
494 + ( pow2(eDgv[min(abs(id1), 9)])
495 + pow2(eDga[min(abs(id1), 9)]) ) * sigKK * sumKK;
504 void Sigma1qqbar2KKgluonStar::setIdColAcol() {
507 setId( id1, id2, idKKgluon);
510 setColAcol( 1, 0, 0, 2, 1, 2);
511 if (id1 < 0) swapColAcol();
519 double Sigma1qqbar2KKgluonStar::weightDecay(
Event& process,
int iResBeg,
523 int idMother = process[process[iResBeg].mother1()].idAbs();
527 return weightTopDecay( process, iResBeg, iResEnd);
530 if (iResBeg != 5 || iResEnd != 5)
return 1.;
533 int idInAbs = process[3].idAbs();
534 double vi = eDgv[min(idInAbs, 9)];
535 double ai = eDga[min(idInAbs, 9)];
536 int idOutAbs = process[6].idAbs();
537 double vf = eDgv[min(idOutAbs, 9)];
538 double af = eDga[min(idOutAbs, 9)];
541 double mf = process[6].m();
542 double mr = mf*mf / sH;
543 double betaf = sqrtpos(1. - 4. * mr);
546 double coefTran = sigSM + vi * sigInt * vf
547 + (vi*vi + ai*ai) * sigKK * (vf*vf + pow2(betaf) * af*af);
548 double coefLong = 4. * mr * ( sigSM + vi * sigInt * vf
549 + (vi*vi + ai*ai) * sigKK * vf*vf );
550 double coefAsym = betaf * ( ai * sigInt * af
551 + 4. * vi * ai * sigKK * vf * af );
554 if (process[3].
id() * process[6].id() < 0) coefAsym = -coefAsym;
557 double cosThe = (process[3].p() - process[4].p())
558 * (process[7].p() - process[6].p()) / (sH * betaf);
559 double wtMax = 2. * (coefTran + abs(coefAsym));
560 double wt = coefTran * (1. + pow2(cosThe))
561 + coefLong * (1. - pow2(cosThe)) + 2. * coefAsym * cosThe;
576 void Sigma2gg2GravitonStarg::initProc() {
580 mRes = particleDataPtr->m0(idGstar);
581 GammaRes = particleDataPtr->mWidth(idGstar);
583 GamMRat = GammaRes / mRes;
586 kappaMG = settingsPtr->parm(
"ExtraDimensionsG*:kappaMG");
589 openFrac = particleDataPtr->resOpenFrac(idGstar);
597 void Sigma2gg2GravitonStarg::sigmaKin() {
600 sigma = (3. * pow2(kappaMG) * alpS) / (32. * sH * s3)
601 * ( pow2(tH2 + tH * uH + uH2) / (sH2 * tH * uH)
602 + 2. * (tH2 / uH + uH2 / tH) / sH + 3. * (tH / uH + uH / tH)
603 + 2. * (sH / uH + sH/tH) + sH2 / (tH * uH) );
612 void Sigma2gg2GravitonStarg::setIdColAcol() {
615 setId( 21, 21, idGstar, 21);
618 if (rndmPtr->flat() < 0.5) setColAcol( 1, 2, 2, 3, 0, 0, 1, 3);
619 else setColAcol( 1, 2, 3, 1, 0, 0, 3, 2);
627 double Sigma2gg2GravitonStarg::weightDecay(
Event& process,
int iResBeg,
631 int idMother = process[process[iResBeg].mother1()].idAbs();
635 return weightTopDecay( process, iResBeg, iResEnd);
651 void Sigma2qg2GravitonStarq::initProc() {
655 mRes = particleDataPtr->m0(idGstar);
656 GammaRes = particleDataPtr->mWidth(idGstar);
658 GamMRat = GammaRes / mRes;
661 kappaMG = settingsPtr->parm(
"ExtraDimensionsG*:kappaMG");
664 openFrac = particleDataPtr->resOpenFrac(idGstar);
672 void Sigma2qg2GravitonStarq::sigmaKin() {
675 sigma = -(pow2(kappaMG) * alpS) / (192. * sH * s3)
676 * ( 4. * (sH2 + uH2) / (tH * sH) + 9. * (sH + uH) / sH + sH / uH
677 + uH2 / sH2 + 3. * tH * (4. + sH / uH + uH / sH) / sH
678 + 4. * tH2 * (1. / uH + 1. / sH) / sH + 2. * tH2 * tH / (uH * sH2) );
687 void Sigma2qg2GravitonStarq::setIdColAcol() {
690 int idq = (id2 == 21) ? id1 : id2;
691 setId( id1, id2, idGstar, idq);
694 swapTU = (id2 == 21);
697 if (id2 == 21) setColAcol( 1, 0, 2, 1, 0, 0, 2, 0);
698 else setColAcol( 2, 1, 1, 0, 0, 0, 2, 0);
699 if (idq < 0) swapColAcol();
707 double Sigma2qg2GravitonStarq::weightDecay(
Event& process,
int iResBeg,
711 int idMother = process[process[iResBeg].mother1()].idAbs();
715 return weightTopDecay( process, iResBeg, iResEnd);
731 void Sigma2qqbar2GravitonStarg::initProc() {
735 mRes = particleDataPtr->m0(idGstar);
736 GammaRes = particleDataPtr->mWidth(idGstar);
738 GamMRat = GammaRes / mRes;
741 kappaMG = settingsPtr->parm(
"ExtraDimensionsG*:kappaMG");
744 openFrac = particleDataPtr->resOpenFrac(idGstar);
752 void Sigma2qqbar2GravitonStarg::sigmaKin() {
755 sigma = (pow2(kappaMG) * alpS) / (72. * sH * s3)
756 * ( 4. * (tH2 + uH2) / sH2 + 9. * (tH + uH) / sH
757 + (tH2 / uH + uH2 / tH) / sH + 3. * (4. + tH / uH + uH/ tH)
758 + 4. * (sH / uH + sH / tH) + 2. * sH2 / (tH * uH) );
767 void Sigma2qqbar2GravitonStarg::setIdColAcol() {
770 setId( id1, id2, idGstar, 21);
773 setColAcol( 1, 0, 0, 2, 0, 0, 1, 2);
774 if (id1 < 0) swapColAcol();
782 double Sigma2qqbar2GravitonStarg::weightDecay(
Event& process,
int iResBeg,
786 int idMother = process[process[iResBeg].mother1()].idAbs();
790 return weightTopDecay( process, iResBeg, iResEnd);
807 void Sigma2ffbar2TEVffbar::initProc() {
810 if (idNew == 1) nameSave =
"f fbar -> d dbar (s-channel gamma_KK/Z_KK)";
811 if (idNew == 2) nameSave =
"f fbar -> u ubar (s-channel gamma_KK/Z_KK)";
812 if (idNew == 3) nameSave =
"f fbar -> s sbar (s-channel gamma_KK/Z_KK)";
813 if (idNew == 4) nameSave =
"f fbar -> c cbar (s-channel gamma_KK/Z_KK)";
814 if (idNew == 5) nameSave =
"f fbar -> b bbar (s-channel gamma_KK/Z_KK)";
815 if (idNew == 6) nameSave =
"f fbar -> t tbar (s-channel gamma_KK/Z_KK)";
816 if (idNew == 11) nameSave =
"f fbar -> e+ e- (s-channel gamma_KK/Z_KK)";
817 if (idNew == 12) nameSave =
"f fbar -> nue nuebar (s-channel gamma_KK/Z_KK)";
818 if (idNew == 13) nameSave =
"f fbar -> mu+ mu- (s-channel gamma_KK/Z_KK)";
819 if (idNew == 14) nameSave
820 =
"f fbar -> numu numubar (s-channel gamma_KK/Z_KK)";
821 if (idNew == 15) nameSave =
"f fbar -> tau+ tau- (s-channel gamma_KK/Z_KK)";
822 if (idNew == 16) nameSave
823 =
"f fbar -> nutau nutaubar (s-channel gamma_KK/Z_KK)";
826 gmZmode = settingsPtr->mode(
"ExtraDimensionsTEV:gmZmode");
829 nexcitationmax = (int)settingsPtr->parm(
"ExtraDimensionsTEV:nMax");
840 wZ0 = particleDataPtr->mWidth(23);
841 mRes = particleDataPtr->m0(23);
845 mTop = particleDataPtr->m0(6);
850 mStar = (double)settingsPtr->parm(
"ExtraDimensionsTEV:mStar");
853 alphaemfixed = settingsPtr->parm(
"StandardModel:alphaEM0");
860 if (gmZmode>=0 && gmZmode<=5) {
861 for (
int i=1 ; i<17 ; i++) {
864 if (i==6) {
continue; }
866 wgmKKFactor += ( (alphaemfixed / 6.) * 4.
867 * couplingsPtr->ef(i) * couplingsPtr->ef(i) * 3. );
870 wgmKKFactor += (alphaemfixed / 6.) * 4.
871 * couplingsPtr->ef(i) * couplingsPtr->ef(i);
877 gMinusF = ( couplingsPtr->t3f(idNew) - couplingsPtr->ef(idNew)
878 * couplingsPtr->sin2thetaW() )
879 / sqrt( couplingsPtr->sin2thetaW()*couplingsPtr->cos2thetaW() );
880 gPlusF = -1. * couplingsPtr->ef(idNew) * couplingsPtr->sin2thetaW()
881 / sqrt( couplingsPtr->sin2thetaW() * couplingsPtr->cos2thetaW() );
883 gMinusTop = ( couplingsPtr->t3f(6) - couplingsPtr->ef(6)
884 * couplingsPtr->sin2thetaW() )
885 / sqrt( couplingsPtr->sin2thetaW()*couplingsPtr->cos2thetaW() );
887 gPlusTop = -1. * couplingsPtr->ef(6) * couplingsPtr->sin2thetaW()
888 / sqrt( couplingsPtr->sin2thetaW() * couplingsPtr->cos2thetaW() );
890 ttbarwFactorA = pow2(gMinusTop) + pow2(gPlusTop);
891 ttbarwFactorB = 6.*gMinusTop*gPlusTop - pow2(gMinusTop) - pow2(gPlusTop);
895 if ((idNew >=6 && idNew <=8) || idNew == 17 || idNew == 18)
896 openFracPair = particleDataPtr->resOpenFrac(idNew, -idNew);
904 int Sigma2ffbar2TEVffbar::resonanceB() {
914 int Sigma2ffbar2TEVffbar::resonanceA() {
917 phaseSpacemHatMin = settingsPtr->parm(
"PhaseSpace:mHatMin");
918 phaseSpacemHatMax = settingsPtr->parm(
"PhaseSpace:mHatMax");
919 double mResFirstKKMode = sqrt(pow2(particleDataPtr->m0(23)) + pow2(mStar));
920 if (mResFirstKKMode/2. <= phaseSpacemHatMax
921 || 3*mResFirstKKMode/2. >= phaseSpacemHatMin) {
return 5000023; }
924 }
else {
return 23; }
932 void Sigma2ffbar2TEVffbar::sigmaKin() {
936 if (mH < m3 + m4 + MASSMARGIN) {
942 double s34Avg = 0.5 * (s3 + s4) - 0.25 * pow2(s3 - s4) / sH;
944 betaf = sqrtpos(1. - 4. * mr);
947 cosThe = (tH - uH) / (betaf * sH);
955 double Sigma2ffbar2TEVffbar::sigmaHat() {
958 if (!isPhysical)
return 0.;
961 int idAbs = abs(id1);
964 gMinusf = ( couplingsPtr->t3f(idAbs) - couplingsPtr->ef(idAbs)
965 * couplingsPtr->sin2thetaW() )
966 / sqrt( couplingsPtr->sin2thetaW()*couplingsPtr->cos2thetaW() );
967 gPlusf = -1. * couplingsPtr->ef(idAbs)*couplingsPtr->sin2thetaW()
968 / sqrt( couplingsPtr->sin2thetaW()*couplingsPtr->cos2thetaW() );
975 gammaProp = complex(0.,0.);
976 resProp = complex(0.,0.);
977 gmPropKK = complex(0.,0.);
978 ZPropKK = complex(0.,0.);
979 totalProp = complex(0.,0.);
983 for (
double helicityf=-0.5 ; helicityf<=0.5 ; helicityf++) {
984 for (
double helicityF=-0.5 ; helicityF<=0.5 ; helicityF++) {
986 gF = (helicityF == +0.5) ? gMinusF : gPlusF;
987 gf = (helicityf == +0.5) ? gMinusf : gPlusf;
992 gammaProp = couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew)/sH;
993 resProp = gf*gF/( sH - m2Res + mI*sH*(wZ0/mRes) );
997 gammaProp = couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew)/sH;
1001 resProp = gf*gF/( sH - m2Res + mI*sH*(wZ0/mRes) );
1005 gammaProp = couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew)/sH;
1006 resProp = gf*gF/( sH - m2Res + mI*sH*(wZ0/mRes) );
1007 ZPropKK = complex(0.,0.);
1008 gmPropKK = complex(0.,0.);
1010 for(
int nexcitation = 1; nexcitation <= nexcitationmax;
1012 mZKKn = sqrt(m2Res + pow2(mStar * nexcitation));
1013 m2ZKKn = m2Res + pow2(mStar * nexcitation);
1014 mgmKKn = mStar * nexcitation;
1015 m2gmKKn = (mStar*nexcitation)*(mStar*nexcitation);
1018 ttbarwZKKn = 2.*(alphaemfixed*3./6.)*mZKKn
1019 * sqrt(1.-4.*m2Top/m2ZKKn)
1020 * (ttbarwFactorA+(m2Top/m2ZKKn)*ttbarwFactorB);
1021 wZKKn = 2.*wZ0*mZKKn/mRes+ttbarwZKKn;
1024 ttbarwgmKKn = 2.*(alphaemfixed*3./6.)*mgmKKn
1025 * sqrt(1.-4.*m2Top/m2gmKKn)
1026 * 2.*pow2(couplingsPtr->ef(6))*(1.+2.*(m2Top/m2gmKKn));
1027 wgmKKn = wgmKKFactor*mgmKKn+ttbarwgmKKn;
1029 gmPropKK += (2.*couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew))
1030 / (sH-m2gmKKn+mI*sH*wgmKKn/mgmKKn);
1031 ZPropKK += (2.*gf*gF)/(sH-m2ZKKn+mI*sH*wZKKn/mZKKn );
1036 gammaProp = couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew)/sH;
1037 resProp = gf*gF/( sH - m2Res + mI*sH*(wZ0/mRes) );
1038 gmPropKK = complex(0.,0.);
1039 for (
int nexcitation = 1; nexcitation <= nexcitationmax;
1041 mgmKKn = mStar * nexcitation;
1042 m2gmKKn = (mStar*nexcitation)*(mStar*nexcitation);
1044 ttbarwgmKKn = 2.*(alphaemfixed*3./6.)*mgmKKn
1045 * sqrt(1.-4.*m2Top/m2gmKKn)
1046 * 2.*pow2(couplingsPtr->ef(6))
1047 * (1.+2.*(m2Top/m2gmKKn));
1048 wgmKKn = wgmKKFactor*mgmKKn+ttbarwgmKKn;
1049 gmPropKK += (2.*couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew))
1050 / (sH-m2gmKKn+mI*sH*wgmKKn/mgmKKn);
1055 gammaProp = couplingsPtr->ef(idAbs)*couplingsPtr->ef(idNew)/sH;
1056 resProp = gf*gF/( sH - m2Res + mI*sH*(wZ0/mRes) );
1057 ZPropKK = complex(0.,0.);
1058 for (
int nexcitation = 1; nexcitation <= nexcitationmax;
1060 mZKKn = sqrt(m2Res + pow2(mStar * nexcitation));
1061 m2ZKKn = m2Res + pow2(mStar * nexcitation);
1063 ttbarwZKKn = 2.*(alphaemfixed*3./6.)*mZKKn
1064 * sqrt(1.-4.*m2Top/m2ZKKn)
1065 * (ttbarwFactorA+(m2Top/m2ZKKn)*ttbarwFactorB);
1066 wZKKn = 2.*wZ0*mZKKn/mRes+ttbarwZKKn;
1067 ZPropKK += (2.*gf*gF)/(sH-m2ZKKn+mI*sH*wZKKn/mZKKn );
1075 totalProp = gammaProp + resProp + ZPropKK + gmPropKK;
1078 coefAngular = 1. + 4. * helicityF * helicityf * cosThe;
1081 helicityME2 += real(totalProp*conj(totalProp))*pow2(coefAngular);
1086 coefTot = (2./sH) * 2*M_PI * pow2(alpEM)/(4.*sH) * pow2(sH)/4.;
1089 double sigma = helicityME2 * coefTot;
1092 sigma *= openFracPair;
1095 if (idAbs < 9) sigma /= 3.;
1098 if (idNew < 9) sigma *= 3.*(1.+alpS/M_PI);
1107 void Sigma2ffbar2TEVffbar::setIdColAcol() {
1110 id3 = (id1 > 0) ? idNew : -idNew;
1111 setId( id1, id2, id3, -id3);
1114 if (abs(id1) < 9 && idNew < 9) setColAcol( 1, 0, 0, 1, 2, 0, 0, 2);
1115 else if (abs(id1) < 9) setColAcol( 1, 0, 0, 1, 0, 0, 0, 0);
1116 else if (idNew < 9) setColAcol( 0, 0, 0, 0, 1, 0, 0, 1);
1117 else setColAcol( 0, 0, 0, 0, 0, 0, 0, 0);
1118 if (id1 < 0) swapColAcol();
1126 double Sigma2ffbar2TEVffbar::weightDecay(
Event& process,
int iResBeg,
1130 if (idNew == 6 && process[process[iResBeg].mother1()].idAbs() == 6)
1131 return weightTopDecay( process, iResBeg, iResEnd);
1144 void Sigma2gg2LEDUnparticleg::initProc() {
1149 eDspin = (settingsPtr->flag(
"ExtraDimensionsLED:GravScalar")) ? 0 : 2;
1150 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
1151 eDdU = 0.5 * eDnGrav + 1;
1152 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:MD");
1154 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
1155 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
1156 eDcf = settingsPtr->parm(
"ExtraDimensionsLED:c");
1158 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
1159 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
1160 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
1161 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
1162 eDcutoff = settingsPtr->mode(
"ExtraDimensionsUnpart:CutOffMode");
1168 tmpAdU = 2 * M_PI * sqrt( pow(M_PI,
double(eDnGrav)) )
1169 / GammaReal(0.5 * eDnGrav);
1171 tmpAdU *= sqrt( pow(2.,
double(eDnGrav)) );
1175 tmpAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
1176 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
1181 double tmpExp = eDdU - 2;
1182 double tmpLS = pow2(eDLambdaU);
1183 eDconstantTerm = tmpAdU / (2 * 16 * pow2(M_PI) * tmpLS * pow(tmpLS,tmpExp));
1185 eDconstantTerm /= tmpLS;
1186 }
else if (eDspin == 0) {
1187 eDconstantTerm *= pow2(eDlambda) / tmpLS;
1190 infoPtr->errorMsg(
"Error in Sigma2gg2LEDUnparticleg::initProc: "
1191 "Incorrect spin value (turn process off)!");
1198 void Sigma2gg2LEDUnparticleg::sigmaKin() {
1209 double tmpTerm1 = uH + tH;
1210 double tmpTerm2 = uH + sH;
1211 double tmpTerm3 = tH + sH;
1212 double T0 = pow(tmpTerm1,4) + pow(tmpTerm2,4) + pow(tmpTerm3,4)
1213 + 12. * sH * tH * uH * mGS;
1214 eDsigma0 = eDcf * A0 * T0 / (sH2 * tH * uH);
1218 double xHS = pow2(xH);
1219 double yHS = pow2(yH);
1220 double xHC = pow(xH,3);
1221 double yHC = pow(yH,3);
1222 double xHQ = pow(xH,4);
1223 double yHQ = pow(yH,4);
1225 double T0 = 1/(xH*(yH-1-xH));
1226 double T1 = 1 + 2*xH + 3*xHS + 2*xHC + xHQ;
1227 double T2 = -2*yH*(1 + xHC);
1228 double T3 = 3*yHS*(1 + xHS);
1229 double T4 = -2*yHC*(1 + xH);
1232 eDsigma0 = A0 * T0 *( T1 + T2 + T3 + T4 + T5 );
1235 }
else if (eDspin == 0) {
1237 double A0 = 1/pow2(sH);
1238 double sHQ = pow(sH,4);
1239 double tHQ = pow(tH,4);
1240 double uHQ = pow(uH,4);
1242 eDsigma0 = A0 * (pow(mGS,4) + sHQ + tHQ + uHQ) / (sH * tH * uH);
1247 double tmpExp = eDdU - 2;
1248 eDsigma0 *= pow(mGS, tmpExp);
1251 eDsigma0 *= eDconstantTerm;
1257 double Sigma2gg2LEDUnparticleg::sigmaHat() {
1260 double sigma = eDsigma0 / runBW3;
1264 sigma *= 16 * M_PI * alpS * 3 / 16;
1265 }
else if (eDspin == 0) {
1266 sigma *= 6 * M_PI * alpS;
1272 if (eDcutoff == 1) {
1273 if (sH > pow2(eDLambdaU) ) { sigma *= pow(eDLambdaU,4)/pow2(sH); }
1274 }
else if ( (eDgraviton && (eDspin == 2))
1275 && ((eDcutoff == 2) || (eDcutoff == 3)) ) {
1276 double tmPmu = sqrt(Q2RenSave);
1277 if (eDcutoff == 3) tmPmu = (sH + s4 - s3) / (2 * mH);
1278 double tmPformfact = tmPmu / (eDtff * eDLambdaU);
1279 double tmPexp = double(eDnGrav) + 2;
1280 sigma *= 1 / (1 + pow(tmPformfact, tmPexp));
1288 void Sigma2gg2LEDUnparticleg::setIdColAcol() {
1291 setId( 21, 21, eDidG, 21);
1294 if (rndmPtr->flat() < 0.5) setColAcol( 1, 2, 2, 3, 0, 0, 1, 3);
1295 else setColAcol( 1, 2, 3, 1, 0, 0, 3, 2);
1307 void Sigma2qg2LEDUnparticleq::initProc() {
1312 eDspin = (settingsPtr->flag(
"ExtraDimensionsLED:GravScalar")) ? 0 : 2;
1313 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
1314 eDdU = 0.5 * eDnGrav + 1;
1315 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:MD");
1317 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
1318 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
1319 eDgf = settingsPtr->parm(
"ExtraDimensionsLED:g");
1320 eDcf = settingsPtr->parm(
"ExtraDimensionsLED:c");
1322 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
1323 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
1324 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
1325 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
1326 eDcutoff = settingsPtr->mode(
"ExtraDimensionsUnpart:CutOffMode");
1332 tmpAdU = 2 * M_PI * sqrt( pow(M_PI,
double(eDnGrav)) )
1333 / GammaReal(0.5 * eDnGrav);
1336 tmpAdU *= 2. * sqrt( pow(2.,
double(eDnGrav)) );
1337 eDcf *= 4. * eDcf / pow2(eDLambdaU);
1338 double tmpExp = 2. * double(eDnGrav) / (double(eDnGrav) + 2.);
1339 eDgf *= eDgf / pow(2. * M_PI, tmpExp);
1342 tmpAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
1343 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
1348 double tmpExp = eDdU - 2;
1349 double tmpLS = pow2(eDLambdaU);
1350 eDconstantTerm = tmpAdU / (2 * 16 * pow2(M_PI) * tmpLS * pow(tmpLS,tmpExp));
1351 if (eDgraviton && (eDspin == 2)) {
1352 eDconstantTerm /= tmpLS;
1353 }
else if (eDspin == 1) {
1354 eDconstantTerm *= pow2(eDlambda);
1355 }
else if (eDspin == 0) {
1356 eDconstantTerm *= pow2(eDlambda);
1359 infoPtr->errorMsg(
"Error in Sigma2qg2LEDUnparticleq::initProc: "
1360 "Incorrect spin value (turn process off)!");
1368 void Sigma2qg2LEDUnparticleq::sigmaKin() {
1381 double T0 = -(uH2 + pow2(mGS)) / (sH * tH);
1382 double T1 = -(tH2 + sH2)/ uH;
1383 eDsigma0 = A0 * (eDgf * T0 + eDcf * T1);
1387 double x2H = xH/(yH - 1 - xH);
1388 double y2H = yH/(yH - 1 - xH);
1389 double x2HS = pow2(x2H);
1390 double y2HS = pow2(y2H);
1391 double x2HC = pow(x2H,3);
1392 double y2HC = pow(y2H,3);
1394 double T0 = -(yH - 1 - xH);
1395 double T20 = 1/(x2H*(y2H-1-x2H));
1396 double T21 = -4*x2H*(1 + x2H)*(1 + 2*x2H + 2*x2HS);
1397 double T22 = y2H*(1 + 6*x2H + 18*x2HS + 16*x2HC);
1398 double T23 = -6*y2HS*x2H*(1+2*x2H);
1399 double T24 = y2HC*(1 + 4*x2H);
1401 eDsigma0 = A0 * T0 * T20 * ( T21 + T22 + T23 + T24 );
1404 }
else if (eDspin == 1) {
1406 double A0 = 1/pow2(sH);
1407 double tmpTerm1 = tH - mGS;
1408 double tmpTerm2 = sH - mGS;
1410 eDsigma0 = A0 * (pow2(tmpTerm1) + pow2(tmpTerm2)) / (sH*tH);
1412 }
else if (eDspin == 0) {
1414 double A0 = 1/pow2(sH);
1416 eDsigma0 = A0 * (pow2(tH) + pow2(mGS)) / (sH*uH);
1421 double tmpExp = eDdU - 2;
1422 eDsigma0 *= pow(mGS, tmpExp);
1425 eDsigma0 *= eDconstantTerm;
1431 double Sigma2qg2LEDUnparticleq::sigmaHat() {
1434 double sigma = eDsigma0 /runBW3;
1438 sigma *= 16 * M_PI * alpS / 96;
1439 }
else if (eDspin == 1) {
1440 sigma *= - 4 * M_PI * alpS / 3;
1441 }
else if (eDspin == 0) {
1442 sigma *= - 2 * M_PI * alpS / 3;
1448 if (eDcutoff == 1) {
1449 if (sH > pow2(eDLambdaU) ) { sigma *= pow(eDLambdaU,4)/pow2(sH); }
1450 }
else if ( (eDgraviton && (eDspin == 2))
1451 && ((eDcutoff == 2) || (eDcutoff == 3)) ) {
1452 double tmPmu = sqrt(Q2RenSave);
1453 if (eDcutoff == 3) tmPmu = (sH + s4 - s3) / (2 * mH);
1454 double tmPformfact = tmPmu / (eDtff * eDLambdaU);
1455 double tmPexp = double(eDnGrav) + 2;
1456 sigma *= 1 / (1 + pow(tmPformfact, tmPexp));
1464 void Sigma2qg2LEDUnparticleq::setIdColAcol() {
1467 int idq = (id2 == 21) ? id1 : id2;
1468 setId( id1, id2, eDidG, idq);
1471 swapTU = (id2 == 21);
1474 if (id2 == 21) setColAcol( 1, 0, 2, 1, 0, 0, 2, 0);
1475 else setColAcol( 2, 1, 1, 0, 0, 0, 2, 0);
1476 if (idq < 0) swapColAcol();
1488 void Sigma2qqbar2LEDUnparticleg::initProc() {
1493 eDspin = (settingsPtr->flag(
"ExtraDimensionsLED:GravScalar")) ? 0 : 2;
1494 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
1495 eDdU = 0.5 * eDnGrav + 1;
1496 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:MD");
1498 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
1499 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
1500 eDgf = settingsPtr->parm(
"ExtraDimensionsLED:g");
1501 eDcf = settingsPtr->parm(
"ExtraDimensionsLED:c");
1503 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
1504 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
1505 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
1506 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
1507 eDcutoff = settingsPtr->mode(
"ExtraDimensionsUnpart:CutOffMode");
1513 tmpAdU = 2 * M_PI * sqrt( pow(M_PI,
double(eDnGrav)) )
1514 / GammaReal(0.5 * eDnGrav);
1517 tmpAdU *= 2. * sqrt( pow(2.,
double(eDnGrav)) );
1518 eDcf *= 4. * eDcf / pow2(eDLambdaU);
1519 double tmpExp = 2. * double(eDnGrav) / (double(eDnGrav) + 2.);
1520 eDgf *= eDgf / pow(2. * M_PI, tmpExp);
1523 tmpAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
1524 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
1529 double tmpExp = eDdU - 2;
1530 double tmpLS = pow2(eDLambdaU);
1531 eDconstantTerm = tmpAdU / (2 * 16 * pow2(M_PI) * tmpLS * pow(tmpLS,tmpExp));
1532 if (eDgraviton && (eDspin == 2)) {
1533 eDconstantTerm /= tmpLS;
1534 }
else if (eDspin == 1) {
1535 eDconstantTerm *= pow2(eDlambda);
1536 }
else if (eDspin == 0) {
1537 eDconstantTerm *= pow2(eDlambda);
1540 infoPtr->errorMsg(
"Error in Sigma2qqbar2LEDUnparticleg::initProc: "
1541 "Incorrect spin value (turn process off)!");
1548 void Sigma2qqbar2LEDUnparticleg::sigmaKin() {
1561 double tmpTerm1 = uH + tH;
1562 double T0 = (2. * mGS * sH + pow2(tmpTerm1)) / (uH * tH);
1563 double T1 = (tH2 + uH2) / sH;
1564 eDsigma0 = A0 * (eDgf * T0 + eDcf * T1);
1568 double xHS = pow2(xH);
1569 double yHS = pow2(yH);
1570 double xHC = pow(xH,3);
1571 double yHC = pow(yH,3);
1573 double T0 = 1/(xH*(yH-1-xH));
1574 double T1 = -4*xH*(1 + xH)*(1 + 2*xH + 2*xHS);
1575 double T2 = yH*(1 + 6*xH + 18*xHS + 16*xHC);
1576 double T3 = -6*yHS*xH*(1+2*xH);
1577 double T4 = yHC*(1 + 4*xH);
1579 eDsigma0 = A0 * T0 *( T1 + T2 + T3 + T4 );
1582 }
else if (eDspin == 1) {
1584 double A0 = 1/pow2(sH);
1585 double tmpTerm1 = tH - mGS;
1586 double tmpTerm2 = uH - mGS;
1588 eDsigma0 = A0 * (pow2(tmpTerm1) + pow2(tmpTerm2)) / (tH * uH);
1590 }
else if (eDspin == 0) {
1592 double A0 = 1/pow2(sH);
1594 eDsigma0 = A0 * (pow2(sH) - pow2(mGS)) / (tH * uH);
1599 double tmpExp = eDdU - 2;
1600 eDsigma0 *= pow(mGS, tmpExp);
1603 eDsigma0 *= eDconstantTerm;
1609 double Sigma2qqbar2LEDUnparticleg::sigmaHat() {
1612 double sigma = eDsigma0 /runBW3;
1616 sigma *= 16 * M_PI * alpS / 36;
1617 }
else if (eDspin == 1) {
1618 sigma *= 4 * M_PI * 8 * alpS / 9;
1619 }
else if (eDspin == 0) {
1620 sigma *= 4 * M_PI * 4 * alpS / 9;
1626 if (eDcutoff == 1) {
1627 if (sH > pow2(eDLambdaU) ) { sigma *= pow(eDLambdaU,4)/pow2(sH); }
1628 }
else if ( (eDgraviton && (eDspin == 2))
1629 && ((eDcutoff == 2) || (eDcutoff == 3)) ) {
1630 double tmPmu = sqrt(Q2RenSave);
1631 if (eDcutoff == 3) tmPmu = (sH + s4 - s3) / (2 * mH);
1632 double tmPformfact = tmPmu / (eDtff * eDLambdaU);
1633 double tmPexp = double(eDnGrav) + 2;
1634 sigma *= 1 / (1 + pow(tmPformfact, tmPexp));
1642 void Sigma2qqbar2LEDUnparticleg::setIdColAcol() {
1645 setId( id1, id2, eDidG, 21);
1648 if (abs(id1) < 9) setColAcol( 1, 0, 0, 2, 0, 0, 1, 2);
1649 if (id1 < 0) swapColAcol();
1669 const double Sigma2ffbar2LEDUnparticleZ::FIXRATIO = 1.;
1673 void Sigma2ffbar2LEDUnparticleZ::initProc() {
1679 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
1680 eDdU = 0.5 * eDnGrav + 1;
1681 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:MD");
1683 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
1684 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
1686 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
1687 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
1688 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
1689 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
1692 eDcutoff = settingsPtr->mode(
"ExtraDimensionsUnpart:CutOffMode");
1696 mZ = particleDataPtr->m0(23);
1697 widZ = particleDataPtr->mWidth(23);
1699 mwZS = pow2(mZ * widZ);
1705 }
else if (eDgraviton) {
1708 eDlambdaPrime = eDlambda;
1710 eDlambdaPrime = eDratio * eDlambda;
1714 double tmpAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
1715 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
1718 tmpAdU = 2 * M_PI * sqrt( pow(M_PI,
double(eDnGrav)) )
1719 / GammaReal(0.5 * eDnGrav);
1723 double tmpTerm1 = 1/(2 * 16 * pow2(M_PI));
1724 double tmpLS = pow2(eDLambdaU);
1727 double tmpTerm2 = 0;
1728 if ( eDspin == 0 ) {
1729 tmpTerm2 = 2 * pow2(eDlambda);
1730 }
else if (eDspin == 1) {
1731 tmpTerm2 = 4 * pow2(eDlambda);
1732 }
else if (eDspin == 2) {
1733 tmpTerm2 = pow2(eDlambda)/(4 * 3 * tmpLS);
1737 double tmpExp2 = eDdU - 2;
1738 double tmpTerm3 = tmpAdU / (tmpLS * pow(tmpLS, tmpExp2));
1741 eDconstantTerm = tmpTerm1 * tmpTerm2 * tmpTerm3;
1747 void Sigma2ffbar2LEDUnparticleZ::sigmaKin() {
1766 if ( eDspin == 0 ) {
1769 double T1 = - sH/tH - sH/uH;
1770 double T2 = - (1 - mZS/tH)*(1 - mUS/tH);
1771 double T3 = - (1 - mZS/uH)*(1 - mUS/uH);
1772 double T4 = 2*(1 - mUS/tH)*(1 - mUS/uH);
1774 eDsigma0 = A0 * ( T1 + T2 + T3 + T4);
1776 }
else if ( eDspin == 1 ) {
1779 double T1 = 0.5 * (tH/uH + uH/tH);
1780 double T2 = pow2(mZS + mUS)/(tH * uH);
1781 double T3 = - 0.5 * mUS * (mZS/tHS + mZS/uHS) ;
1782 double T4 = - (mZS+mUS)*(1/tH + 1/uH);
1784 eDsigma0 = A0 * ( T1 + T2 + T3 + T4 );
1786 }
else if ( eDspin == 2 ) {
1788 double A0 = 1 / ( sHS * uHS * tHS * pow2(sH-mZS) );
1789 double F0 = 2*tHS*uHS*( 16*pow(mZS,3) + mUS*(7*tHS + 12*tH*uH + 7*uHS)
1790 - 3*(3*tHC + 11*tHS*uH + 11*tH*uHS + 3*uHC)
1791 + 6*pow(mZS,2)*(7*mUS - 2*tHuH) + mZS*(14*pow(mUS,2)
1792 - 15*tHS - 44*tH*uH - 15*uHS + 2*mUS*tHuH) );
1793 double F2 = 2*tHS*uHS*tHuH*( -8*pow(mZS,2)*tHuH
1794 + 4*mZS*(tHS + 3*tH*uH + uHS)
1795 + 3*(tHC + 5*tHS*uH + 5*tH*uHS + uHC) );
1796 double F4 = -2*tHS*uHS*pow(tHuH,3)*(tHS + uHS - mZS*tHuH);
1798 double G0 = 4*tH*uH*( 6*pow(mZS,3)*(mUS - tH - uH)*tHuH
1799 + pow(mZS,2)*( 9*tHC + 7*tHS*uH + 7*tH*uHS + 9*uHC
1800 + 15*pow2(mUS)*tHuH - 2*mUS*(12*tHS + 19*tH*uH + 12*uHS) )
1801 + tH*uH*( 6*pow(mUS,3) - 9*pow(mUS,2)*tHuH - mUS*(tHS
1802 + 12*tH*uH + uHS) + 6*(tHC + 6*tHS*uH + 6*tH*uHS + uHC) )
1803 + mZS*(-3*tHQ + 25*tHC*uH + 58*tHS*uHS + 25*tH*uHC
1804 - 3*uHQ + 6*pow(mUS,3)*tHuH
1805 - pow(mUS,2)*(15*tHS + 2*tH*uH + 15*uHS) + 2*mUS*(6*tHC
1806 - 11*tHS*uH - 11*tH*uHS + 6*uHC)) );
1807 double G2 = -4*tHS*uHS*tHuH*( -10*pow2(mZS)*tHuH + 2*mZS*(3*tHS
1808 + 7*tH*uH + 3*uHS) + 3*(tHC + 5*tHS*uH + 5*tH*uHS + uHC) );
1811 double H0 = 24*pow(mZS,3)*tH*uH*pow2(-mUS + tHuH)
1812 - 6*pow(mZS,2)*tH*uH*( -9*pow(mUS,3) + 24*pow(mUS,2)*tHuH
1813 - mUS*(21*tHS + 38*tH*uH + 21*uHS)
1814 + 2*(3*tHC + 5*tHS*uH + 5*tH*uHS + 3*uHC) )
1815 - mZS*( 3*pow(mUS,4)*(tHS - 12*tH*uH + uHS)
1816 - 2*tH*uH*pow2(tHuH)*(6*tHS - 29*tH*uH + 6*uHS)
1817 - 6*pow(mUS,3)*(tHC - 16*tHS*uH - 16*tH*uHS + uHC)
1818 + 54*mUS*tH*uH*(tHC + tHS*uH + tH*uHS + uHC)
1819 + pow2(mUS)*(3*tHQ - 102*tHC*uH - 166*tHS*uHS
1820 - 102*tH*uHC + 3*uHQ) )
1821 + tH*uH*( 6*pow(mUS,5) - 18*pow(mUS,4)*tHuH
1822 - 12*pow(mUS,2)*pow(tHuH,3)
1823 + 3*pow(mUS,3)*(7*tHS + 12*tH*uH + 7*uHS)
1824 - 18*tH*uH*(tHC + 5*tHS*uH + 5*tH*uHS + uHC)
1825 + mUS*(3*tHQ + 32*tHC*uH + 78*tHS*uHS + 32*tH*uHC + 3*uHQ) );
1826 double H2 = 2*tHS*uHS*pow2(tHuH)*( -12*pow2(mZS) + 8*mZS*tHuH
1827 + 3*(tHS + 4*tH*uH + uHS) );
1830 eDsigma0 = A0*( F0 + 1/mUS*F2 + 1/pow2(mUS)*F4
1831 + eDratio*(G0 + 1/mUS*G2 + 1/pow2(mUS)*G4)
1832 + pow2(eDratio)*(H0 + 1/mUS*H2 + 1/pow2(mUS)*H4) );
1844 double Sigma2ffbar2LEDUnparticleZ::sigmaHat() {
1847 int idAbs = abs(id1);
1849 double facEWS = 4 * M_PI * alpEM
1850 / (couplingsPtr->sin2thetaW() * couplingsPtr->cos2thetaW())
1851 * ( 0.25 * 0.25 * couplingsPtr->vf2af2(idAbs) );
1854 double tmpExp = eDdU - 2;
1855 double facSpect = pow(mUS, tmpExp);
1858 double sigma = eDconstantTerm * facEWS * facSpect * eDsigma0;
1861 if (idAbs < 9) sigma /= 3.;
1869 if (eDcutoff == 1) {
1870 if (sH > pow2(eDLambdaU) ) { sigma *= pow(eDLambdaU,4)/pow2(sH); }
1871 }
else if (eDgraviton && ((eDcutoff == 2) || (eDcutoff == 3))) {
1872 double tmPmu = sqrt(Q2RenSave);
1873 if (eDcutoff == 3) tmPmu = (sH + s4 - s3) / (2 * mH);
1874 double tmPformfact = tmPmu / (eDtff * eDLambdaU);
1875 double tmPexp = double(eDnGrav) + 2;
1876 sigma *= 1 / (1 + pow(tmPformfact, tmPexp));
1885 void Sigma2ffbar2LEDUnparticleZ::setIdColAcol() {
1888 setId( id1, id2, eDidG, 23);
1891 if (abs(id1) < 9) setColAcol( 1, 0, 0, 1, 0, 0);
1892 else setColAcol( 0, 0, 0, 0, 0, 0);
1893 if (id1 < 0) swapColAcol();
1913 const double Sigma2ffbar2LEDUnparticlegamma::FIXRATIO = 1.;
1917 void Sigma2ffbar2LEDUnparticlegamma::initProc() {
1927 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
1928 eDdU = 0.5 * eDnGrav + 1;
1929 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:MD");
1931 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
1932 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
1934 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
1935 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
1936 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
1937 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
1940 eDcutoff = settingsPtr->mode(
"ExtraDimensionsUnpart:CutOffMode");
1944 mZ = particleDataPtr->m0(22);
1951 }
else if (eDgraviton) {
1954 eDlambdaPrime = eDlambda;
1956 eDlambdaPrime = eDratio * eDlambda;
1960 double tmpAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
1961 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
1964 tmpAdU = 2 * M_PI * sqrt( pow(M_PI,
double(eDnGrav)) )
1965 / GammaReal(0.5 * eDnGrav);
1969 double tmpTerm1 = 1/(2 * 16 * pow2(M_PI));
1970 double tmpLS = pow2(eDLambdaU);
1973 double tmpTerm2 = 0;
1974 if ( eDspin == 0 ) {
1975 tmpTerm2 = 2 * pow2(eDlambda);
1976 }
else if (eDspin == 1) {
1977 tmpTerm2 = 4 * pow2(eDlambda);
1978 }
else if (eDspin == 2) {
1979 tmpTerm2 = pow2(eDlambda)/(4 * 3 * tmpLS);
1983 double tmpExp2 = eDdU - 2;
1984 double tmpTerm3 = tmpAdU / (tmpLS * pow(tmpLS, tmpExp2));
1987 eDconstantTerm = tmpTerm1 * tmpTerm2 * tmpTerm3;
1993 void Sigma2ffbar2LEDUnparticlegamma::sigmaKin() {
2012 if ( eDspin == 0 ) {
2015 double T1 = - sH/tH - sH/uH;
2016 double T2 = - (1 - mZS/tH)*(1 - mUS/tH);
2017 double T3 = - (1 - mZS/uH)*(1 - mUS/uH);
2018 double T4 = 2*(1 - mUS/tH)*(1 - mUS/uH);
2020 eDsigma0 = A0 * ( T1 + T2 + T3 + T4);
2022 }
else if ( eDspin == 1 ) {
2025 double T1 = 0.5 * (tH/uH + uH/tH);
2026 double T2 = pow2(mZS + mUS)/(tH * uH);
2027 double T3 = - 0.5 * mUS * (mZS/tHS + mZS/uHS) ;
2028 double T4 = - (mZS+mUS)*(1/tH + 1/uH);
2030 eDsigma0 = A0 * ( T1 + T2 + T3 + T4 );
2032 }
else if ( eDspin == 2 ) {
2034 double A0 = 1 / ( sHS * uHS * tHS * pow2(sH-mZS) );
2035 double F0 = 2*tHS*uHS*( 16*pow(mZS,3) + mUS*(7*tHS + 12*tH*uH + 7*uHS)
2036 - 3*(3*tHC + 11*tHS*uH + 11*tH*uHS + 3*uHC)
2037 + 6*pow(mZS,2)*(7*mUS - 2*tHuH) + mZS*(14*pow(mUS,2)
2038 - 15*tHS - 44*tH*uH - 15*uHS + 2*mUS*tHuH) );
2039 double F2 = 2*tHS*uHS*tHuH*( -8*pow(mZS,2)*tHuH
2040 + 4*mZS*(tHS + 3*tH*uH + uHS)
2041 + 3*(tHC + 5*tHS*uH + 5*tH*uHS + uHC) );
2042 double F4 = -2*tHS*uHS*pow(tHuH,3)*(tHS + uHS - mZS*tHuH);
2044 double G0 = 4*tH*uH*( 6*pow(mZS,3)*(mUS - tH - uH)*tHuH
2045 + pow(mZS,2)*( 9*tHC + 7*tHS*uH + 7*tH*uHS + 9*uHC
2046 + 15*pow2(mUS)*tHuH - 2*mUS*(12*tHS + 19*tH*uH + 12*uHS) )
2047 + tH*uH*( 6*pow(mUS,3) - 9*pow(mUS,2)*tHuH
2048 - mUS*(tHS + 12*tH*uH + uHS)
2049 + 6*(tHC + 6*tHS*uH + 6*tH*uHS + uHC) )
2050 + mZS*(-3*tHQ + 25*tHC*uH + 58*tHS*uHS + 25*tH*uHC
2051 - 3*uHQ + 6*pow(mUS,3)*tHuH
2052 - pow(mUS,2)*(15*tHS + 2*tH*uH + 15*uHS)
2053 + 2*mUS*(6*tHC - 11*tHS*uH - 11*tH*uHS + 6*uHC)) );
2054 double G2 = -4*tHS*uHS*tHuH*( -10*pow2(mZS)*tHuH
2055 + 2*mZS*(3*tHS + 7*tH*uH + 3*uHS)
2056 + 3*(tHC + 5*tHS*uH + 5*tH*uHS + uHC) );
2059 double H0 = 24*pow(mZS,3)*tH*uH*pow2(-mUS + tHuH)
2060 - 6*pow(mZS,2)*tH*uH*( -9*pow(mUS,3) + 24*pow(mUS,2)*tHuH
2061 - mUS*(21*tHS + 38*tH*uH + 21*uHS)
2062 + 2*(3*tHC + 5*tHS*uH + 5*tH*uHS + 3*uHC) )
2063 - mZS*( 3*pow(mUS,4)*(tHS - 12*tH*uH + uHS)
2064 - 2*tH*uH*pow2(tHuH)*(6*tHS - 29*tH*uH + 6*uHS)
2065 - 6*pow(mUS,3)*(tHC - 16*tHS*uH - 16*tH*uHS + uHC)
2066 + 54*mUS*tH*uH*(tHC + tHS*uH + tH*uHS + uHC)
2067 + pow2(mUS)*(3*tHQ - 102*tHC*uH - 166*tHS*uHS
2068 - 102*tH*uHC + 3*uHQ) )
2069 + tH*uH*( 6*pow(mUS,5) - 18*pow(mUS,4)*tHuH
2070 - 12*pow(mUS,2)*pow(tHuH,3)
2071 + 3*pow(mUS,3)*(7*tHS + 12*tH*uH + 7*uHS)
2072 - 18*tH*uH*(tHC + 5*tHS*uH + 5*tH*uHS + uHC)
2073 + mUS*(3*tHQ + 32*tHC*uH + 78*tHS*uHS + 32*tH*uHC + 3*uHQ) );
2074 double H2 = 2*tHS*uHS*pow2(tHuH)*( -12*pow2(mZS) + 8*mZS*tHuH
2075 + 3*(tHS + 4*tH*uH + uHS) );
2078 eDsigma0 = A0*( F0 + 1/mUS*F2 + 1/pow2(mUS)*F4
2079 + eDratio*(G0 + 1/mUS*G2 + 1/pow2(mUS)*G4)
2080 + pow2(eDratio)*(H0 + 1/mUS*H2 + 1/pow2(mUS)*H4) );
2092 double Sigma2ffbar2LEDUnparticlegamma::sigmaHat() {
2095 int idAbs = abs(id1);
2096 double facEWS = 4 * M_PI * alpEM * couplingsPtr->ef2(idAbs);
2099 double tmpExp = eDdU - 2;
2100 double facSpect = pow(mUS, tmpExp);
2103 double sigma = eDconstantTerm * facEWS * facSpect * eDsigma0;
2106 if (idAbs < 9) sigma /= 3.;
2114 if (eDcutoff == 1) {
2115 if (sH > pow2(eDLambdaU) ) { sigma *= pow(eDLambdaU,4)/pow2(sH); }
2116 }
else if (eDgraviton && ((eDcutoff == 2) || (eDcutoff == 3))) {
2117 double tmPmu = sqrt(Q2RenSave);
2118 if (eDcutoff == 3) tmPmu = (sH + s4 - s3) / (2 * mH);
2119 double tmPformfact = tmPmu / (eDtff * eDLambdaU);
2120 double tmPexp = double(eDnGrav) + 2;
2121 sigma *= 1 / (1 + pow(tmPformfact, tmPexp));
2130 void Sigma2ffbar2LEDUnparticlegamma::setIdColAcol() {
2133 setId( id1, id2, eDidG, 22);
2136 if (abs(id1) < 9) setColAcol( 1, 0, 0, 1, 0, 0);
2137 else setColAcol( 0, 0, 0, 0, 0, 0);
2138 if (id1 < 0) swapColAcol();
2150 void Sigma2ffbar2LEDgammagamma::initProc() {
2155 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2157 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2159 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
2160 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2161 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2163 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
2164 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
2165 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
2166 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
2172 eDlambda2chi = 4*M_PI;
2173 if (eDnegInt == 1) eDlambda2chi *= -1.;
2175 double tmPAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
2176 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
2177 double tmPdUpi = eDdU * M_PI;
2178 eDlambda2chi = pow2(eDlambda) * tmPAdU / (2 * sin(tmPdUpi));
2183 if ( !(eDspin==0 || eDspin==2) ) {
2185 infoPtr->errorMsg(
"Error in Sigma2ffbar2LEDgammagamma::initProc: "
2186 "Incorrect spin value (turn process off)!");
2187 }
else if ( !eDgraviton && (eDdU >= 2)) {
2189 infoPtr->errorMsg(
"Error in Sigma2ffbar2LEDgammagamma::initProc: "
2190 "This process requires dU < 2 (turn process off)!");
2197 void Sigma2ffbar2LEDgammagamma::sigmaKin() {
2200 double sHS = pow2(sH);
2201 double sHQ = pow(sH, 4);
2202 double tHS = pow2(tH);
2203 double uHS = pow2(uH);
2206 double tmPeffLambdaU = eDLambdaU;
2207 if (eDgraviton && ((eDcutoff == 2) || (eDcutoff == 3))) {
2208 double tmPffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaU);
2209 double tmPexp = double(eDnGrav) + 2;
2210 double tmPformfact = 1 + pow(tmPffterm, tmPexp);
2211 tmPeffLambdaU *= pow(tmPformfact,0.25);
2217 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2218 double tmPexp = 2 * eDdU - 1;
2219 eDterm1 = pow(tmPsLambda2,tmPexp);
2222 eDterm1 = (uH / tH + tH / uH);
2224 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2225 double tmPexp = eDdU;
2226 eDterm2 = pow(tmPsLambda2,tmPexp) * (uHS + tHS) / sHS;
2229 eDterm3 = pow(tmPsLambda2,tmPexp) * tH * uH * (uHS + tHS) / sHQ;
2237 double Sigma2ffbar2LEDgammagamma::sigmaHat() {
2240 int idAbs = abs(id1);
2247 sigma = pow2(eDlambda2chi) * eDterm1 / 8;
2249 double tmPe2Q2 = 4 * M_PI * alpEM * couplingsPtr->ef2(idAbs);
2250 double tmPdUpi = eDdU * M_PI;
2251 sigma = pow2(tmPe2Q2) * eDterm1
2252 - tmPe2Q2 * eDlambda2chi * cos(tmPdUpi) * eDterm2
2253 + pow2(eDlambda2chi) * eDterm3 / 4;
2260 if (idAbs < 9) sigma /= 3.;
2267 void Sigma2ffbar2LEDgammagamma::setIdColAcol() {
2270 setId( id1, id2, 22, 22);
2273 if (abs(id1) < 9) setColAcol( 1, 0, 0, 1, 0, 0, 0, 0);
2274 else setColAcol( 0, 0, 0, 0, 0, 0, 0, 0);
2275 if (id1 < 0) swapColAcol();
2287 void Sigma2gg2LEDgammagamma::initProc() {
2292 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2294 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2296 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2297 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2299 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
2300 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
2301 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
2302 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
2307 eDlambda2chi = 4 * M_PI;
2310 double tmPAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
2311 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
2312 double tmPdUpi = eDdU * M_PI;
2313 eDlambda2chi = pow2(eDlambda) * tmPAdU / (2 * sin(tmPdUpi));
2317 if ( !(eDspin==0 || eDspin==2) ) {
2319 infoPtr->errorMsg(
"Error in Sigma2gg2LEDgammagamma::initProc: "
2320 "Incorrect spin value (turn process off)!");
2321 }
else if ( !eDgraviton && (eDdU >= 2)) {
2323 infoPtr->errorMsg(
"Error in Sigma2gg2LEDgammagamma::initProc: "
2324 "This process requires dU < 2 (turn process off)!");
2331 void Sigma2gg2LEDgammagamma::sigmaKin() {
2334 double sHS = pow2(sH);
2335 double sHQ = pow(sH, 4);
2336 double tHQ = pow(tH, 4);
2337 double uHQ = pow(uH, 4);
2340 double tmPeffLambdaU = eDLambdaU;
2341 if (eDgraviton && ((eDcutoff == 2) || (eDcutoff == 3))) {
2342 double tmPffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaU);
2343 double tmPexp = double(eDnGrav) + 2;
2344 double tmPformfact = 1 + pow(tmPffterm, tmPexp);
2345 tmPeffLambdaU *= pow(tmPformfact,0.25);
2350 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2351 double tmPexp = 2 * eDdU;
2352 eDsigma0 = pow(tmPsLambda2,tmPexp);
2354 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2355 double tmPexp = 2 * eDdU;
2356 eDsigma0 = pow(tmPsLambda2,tmPexp) * (uHQ + tHQ) / sHQ;
2366 double Sigma2gg2LEDgammagamma::sigmaHat() {
2371 double sigma = eDsigma0;
2373 sigma *= pow2(eDlambda2chi) / 256;
2375 sigma *= pow2(eDlambda2chi) / 32;
2386 void Sigma2gg2LEDgammagamma::setIdColAcol() {
2389 setId( 21, 21, 22, 22);
2392 setColAcol( 1, 2, 2, 1, 0, 0, 0, 0);
2405 void Sigma2ffbar2LEDllbar::initProc() {
2410 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2412 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2414 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
2415 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2416 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2418 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
2419 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
2420 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
2421 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
2422 eDnxx = settingsPtr->mode(
"ExtraDimensionsUnpart:gXX");
2423 eDnxy = settingsPtr->mode(
"ExtraDimensionsUnpart:gXY");
2427 eDmZ = particleDataPtr->m0(23);
2428 eDmZS = eDmZ * eDmZ;
2429 eDGZ = particleDataPtr->mWidth(23);
2430 eDGZS = eDGZ * eDGZ;
2434 eDlambda2chi = 4*M_PI;
2435 if (eDnegInt == 1) eDlambda2chi *= -1.;
2437 double tmPAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
2438 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
2439 double tmPdUpi = eDdU * M_PI;
2440 eDlambda2chi = pow2(eDlambda) * tmPAdU / (2 * sin(tmPdUpi));
2445 if ( !(eDspin==1 || eDspin==2) ) {
2447 infoPtr->errorMsg(
"Error in Sigma2ffbar2LEDllbar::initProc: "
2448 "Incorrect spin value (turn process off)!");
2449 }
else if ( !eDgraviton && (eDdU >= 2)) {
2451 infoPtr->errorMsg(
"Error in Sigma2ffbar2LEDllbar::initProc: "
2452 "This process requires dU < 2 (turn process off)!");
2459 void Sigma2ffbar2LEDllbar::sigmaKin() {
2462 double tHS = pow2(tH);
2463 double uHS = pow2(uH);
2464 double tHC = pow(tH,3);
2465 double uHC = pow(uH,3);
2466 double tHQ = pow(tH,4);
2467 double uHQ = pow(uH,4);
2470 double tmPeffLambdaU = eDLambdaU;
2471 if (eDgraviton && ((eDcutoff == 2) || (eDcutoff == 3))) {
2472 double tmPffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaU);
2473 double tmPexp = double(eDnGrav) + 2;
2474 double tmPformfact = 1 + pow(tmPffterm, tmPexp);
2475 tmPeffLambdaU *= pow(tmPformfact,0.25);
2479 eDdenomPropZ = pow2(sH - eDmZS) + eDmZS * eDGZS;
2480 eDrePropZ = (sH - eDmZS) / eDdenomPropZ;
2481 eDimPropZ = -eDmZ * eDGZ / eDdenomPropZ;
2482 eDrePropGamma = 1 / sH;
2484 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2485 double tmPexp = eDdU - 2;
2486 eDabsMeU = eDlambda2chi * pow(tmPsLambda2,tmPexp)
2487 / pow2(tmPeffLambdaU);
2489 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2490 double tmPexp = eDdU - 2;
2491 double tmPA = -eDlambda2chi * pow(tmPsLambda2,tmPexp)
2492 / (8 * pow(tmPeffLambdaU,4));
2493 eDabsAS = pow2(tmPA);
2494 eDreA = tmPA * cos(M_PI * eDdU);
2495 eDreABW = tmPA * ((sH - eDmZS) * cos(M_PI * eDdU) + eDmZ * eDGZ
2496 * sin(M_PI * eDdU)) / eDdenomPropZ;
2497 eDpoly1 = tHQ + uHQ - 6*tHC*uH - 6*tH*uHC + 18*tHS*uHS;
2498 double tmPdiffUT = uH - tH;
2499 eDpoly2 = pow(tmPdiffUT,3);
2500 eDpoly3 = tHC - 3*tHS*uH - 3*tH*uHS + uHC;
2507 double Sigma2ffbar2LEDllbar::sigmaHat() {
2510 int idAbs = abs(id1);
2515 double tmPe2QfQl = 4 * M_PI * alpEM * couplingsPtr->ef(idAbs)
2516 * couplingsPtr->ef(11);
2517 double tmPgvq = 0.25 * couplingsPtr->vf(idAbs);
2518 double tmPgaq = 0.25 * couplingsPtr->af(idAbs);
2519 double tmPgLq = tmPgvq + tmPgaq;
2520 double tmPgRq = tmPgvq - tmPgaq;
2521 double tmPgvl = 0.25 * couplingsPtr->vf(11);
2522 double tmPgal = 0.25 * couplingsPtr->af(11);
2523 double tmPgLl = tmPgvl + tmPgal;
2524 double tmPgRl = tmPgvl - tmPgal;
2525 double tmPe2s2c2 = 4 * M_PI * alpEM
2526 / (couplingsPtr->sin2thetaW() * couplingsPtr->cos2thetaW());
2529 vector<double> tmPcoupZ;
2530 tmPcoupZ.push_back(tmPe2s2c2 * tmPgLq * tmPgLl);
2531 tmPcoupZ.push_back(tmPe2s2c2 * tmPgRq * tmPgRl);
2532 tmPcoupZ.push_back(tmPe2s2c2 * tmPgRq * tmPgLl);
2533 tmPcoupZ.push_back(tmPe2s2c2 * tmPgLq * tmPgRl);
2534 vector<double> tmPcoupU;
2537 tmPcoupU.push_back(-1);
2539 tmPcoupU.push_back(-1);
2540 }
else if (eDnxx == 2) {
2542 tmPcoupU.push_back(0);
2544 tmPcoupU.push_back(0);
2547 tmPcoupU.push_back(1);
2549 tmPcoupU.push_back(1);
2553 tmPcoupU.push_back(-1);
2555 tmPcoupU.push_back(-1);
2556 }
else if (eDnxy == 2) {
2558 tmPcoupU.push_back(0);
2560 tmPcoupU.push_back(0);
2563 tmPcoupU.push_back(1);
2565 tmPcoupU.push_back(1);
2572 for (
unsigned int i = 0; i<tmPcoupZ.size(); ++i) {
2573 double tmPMS = pow2(tmPcoupU[i] * eDabsMeU)
2574 + pow2(tmPe2QfQl * eDrePropGamma)
2575 + pow2(tmPcoupZ[i]) / eDdenomPropZ
2576 + 2 * cos(M_PI * eDdU) * tmPcoupU[i] * eDabsMeU
2577 * tmPe2QfQl * eDrePropGamma
2578 + 2 * cos(M_PI * eDdU) * tmPcoupU[i] * eDabsMeU
2579 * tmPcoupZ[i] * eDrePropZ
2580 + 2 * tmPe2QfQl * eDrePropGamma
2581 * tmPcoupZ[i] * eDrePropZ
2582 - 2 * sin(M_PI * eDdU) * tmPcoupU[i] * eDabsMeU
2583 * tmPcoupZ[i] * eDimPropZ;
2585 if (i<2) { tmPMES += 4 * pow2(uH) * tmPMS; }
2586 else if (i<4) { tmPMES += 4 * pow2(tH) * tmPMS; }
2591 for (
unsigned int i = 0; i<tmPcoupZ.size(); ++i) {
2592 double tmPMS = pow2(tmPe2QfQl * eDrePropGamma)
2593 + pow2(tmPcoupZ[i]) / eDdenomPropZ
2594 + 2 * tmPe2QfQl * eDrePropGamma * tmPcoupZ[i] * eDrePropZ;
2596 if (i<2) { tmPMES += 4 * pow2(uH) * tmPMS; }
2597 else if (i<4) { tmPMES += 4 * pow2(tH) * tmPMS; }
2599 tmPMES += 8 * eDabsAS * eDpoly1;
2600 tmPMES += 16 * tmPe2QfQl * eDrePropGamma * eDreA * eDpoly2;
2601 tmPMES += 16 * tmPe2s2c2 * eDreABW * (tmPgaq * tmPgal * eDpoly3
2602 + tmPgvq * tmPgvl * eDpoly2);
2607 double sigma = 0.25 * tmPMES;
2608 sigma /= 16 * M_PI * pow2(sH);
2611 if (idAbs < 9) sigma /= 3.;
2621 void Sigma2ffbar2LEDllbar::setIdColAcol() {
2623 double tmPrand = rndmPtr->flat();
2625 if (tmPrand < 0.33333333) { setId( id1, id2, 11, -11); }
2626 else if (tmPrand < 0.66666667) { setId( id1, id2, 13, -13); }
2627 else { setId( id1, id2, 15, -15); }
2633 if (abs(id1) < 9) setColAcol( 1, 0, 0, 1, 0, 0, 0, 0);
2634 else setColAcol( 0, 0, 0, 0, 0, 0, 0, 0);
2635 if (id1 < 0) swapColAcol();
2647 void Sigma2gg2LEDllbar::initProc() {
2652 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2654 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2656 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2657 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2659 eDspin = settingsPtr->mode(
"ExtraDimensionsUnpart:spinU");
2660 eDdU = settingsPtr->parm(
"ExtraDimensionsUnpart:dU");
2661 eDLambdaU = settingsPtr->parm(
"ExtraDimensionsUnpart:LambdaU");
2662 eDlambda = settingsPtr->parm(
"ExtraDimensionsUnpart:lambda");
2667 eDlambda2chi = 4 * M_PI;
2670 double tmPAdU = 16 * pow2(M_PI) * sqrt(M_PI) / pow(2. * M_PI, 2. * eDdU)
2671 * GammaReal(eDdU + 0.5) / (GammaReal(eDdU - 1.) * GammaReal(2. * eDdU));
2672 double tmPdUpi = eDdU * M_PI;
2673 eDlambda2chi = pow2(eDlambda) * tmPAdU / (2 * sin(tmPdUpi));
2677 if ( !(eDspin==2) ) {
2679 infoPtr->errorMsg(
"Error in Sigma2gg2LEDllbar::initProc: "
2680 "Incorrect spin value (turn process off)!");
2681 }
else if ( !eDgraviton && (eDdU >= 2)) {
2683 infoPtr->errorMsg(
"Error in Sigma2gg2LEDllbar::initProc: "
2684 "This process requires dU < 2 (turn process off)!");
2691 void Sigma2gg2LEDllbar::sigmaKin() {
2694 double tmPeffLambdaU = eDLambdaU;
2695 if (eDgraviton && ((eDcutoff == 2) || (eDcutoff == 3))) {
2696 double tmPffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaU);
2697 double tmPexp = double(eDnGrav) + 2;
2698 double tmPformfact = 1 + pow(tmPffterm, tmPexp);
2699 tmPeffLambdaU *= pow(tmPformfact,0.25);
2703 double tmPsLambda2 = sH / pow2(tmPeffLambdaU);
2704 double tmPexp = eDdU - 2;
2705 double tmPA = -eDlambda2chi * pow(tmPsLambda2,tmPexp)
2706 / (8 * pow(tmPeffLambdaU,4));
2707 eDsigma0 = 4 * pow2(tmPA) * uH * tH * (pow2(uH) + pow2(tH));
2710 eDsigma0 /= 16 * M_PI * pow2(sH);
2719 void Sigma2gg2LEDllbar::setIdColAcol() {
2721 double tmPrand = rndmPtr->flat();
2723 if (tmPrand < 0.33333333) { setId( 21, 21, 11, -11); }
2724 else if (tmPrand < 0.66666667) { setId( 21, 21, 13, -13); }
2725 else { setId( 21, 21, 15, -15); }
2728 setColAcol( 1, 2, 2, 1, 0, 0, 0, 0);
2741 void Sigma2gg2LEDgg::initProc() {
2744 eDopMode = settingsPtr->mode(
"ExtraDimensionsLED:opMode");
2745 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2746 eDMD = settingsPtr->parm(
"ExtraDimensionsLED:MD");
2747 eDLambdaT = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2748 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
2749 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2750 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2758 void Sigma2gg2LEDgg::sigmaKin() {
2764 if (eDopMode == 0) {
2765 sS = ampLedS( sH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2766 sT = ampLedS( tH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2767 sU = ampLedS( uH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2770 double effLambda = eDLambdaT;
2771 if ((eDcutoff == 2) || (eDcutoff == 3)) {
2772 double ffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaT);
2773 double exp = double(eDnGrav) + 2.;
2774 double formfa = 1. + pow(ffterm, exp);
2775 effLambda *= pow(formfa,0.25);
2777 sS = 4.*M_PI/pow(effLambda,4);
2778 sT = 4.*M_PI/pow(effLambda,4);
2779 sU = 4.*M_PI/pow(effLambda,4);
2780 if (eDnegInt == 1) {
2788 double sH3 = sH*sH2;
2789 double tH3 = tH*tH2;
2790 double uH3 = uH*uH2;
2792 sigTS = (128. * pow2(M_PI) * pow2(alpS)) * (9./4.)
2793 * (tH2 / sH2 + 2. * tH / sH + 3. + 2. * sH / tH + sH2 / tH2)
2794 + 24.*M_PI*alpS*( (sH3/tH + tH2 + 3.*(sH*tH + sH2))*sS.real()
2795 + (tH3/sH + sH2 + 3.*(tH*sH + tH2))*sT.real())
2796 + pow2(uH2)*( 4.*real(sS*conj(sS)) + sS.real()*sT.real()
2797 + sS.imag()*sT.imag() + 4.*real(sT*conj(sT)));
2800 sigUS = (128. * pow2(M_PI) * pow2(alpS)) * (9./4.)
2801 * (uH2 / sH2 + 2. * uH / sH + 3. + 2. * sH / uH + sH2 / uH2)
2802 + 24.*M_PI*alpS*( (sH3/uH + uH2 + 3.*(sH*uH + sH2))*sS.real()
2803 + (uH3/sH + sH2 + 3.*(uH*sH + uH2))*sU.real())
2804 + pow2(tH2)*( 4.*real(sS*conj(sS)) + sS.real()*sU.real()
2805 + sS.imag()*sU.imag() + 4.*real(sU*conj(sU)));
2807 sigTU = (128. * pow2(M_PI) * pow2(alpS)) * (9./4.)
2808 * (tH2 / uH2 + 2. * tH / uH + 3. + 2. * uH / tH + uH2 / tH2)
2809 + 24.*M_PI*alpS*( (tH3/uH + uH2 + 3.*(tH*uH + tH2))*sT.real()
2810 + (uH3/tH + tH2 + 3.*(uH*tH + uH2))*sU.real())
2811 + pow2(sH2)*( 4.*real(sT*conj(sT)) + sT.real()*sU.real()
2812 + sT.imag()*sU.imag() + 4.*real(sU*conj(sU)));
2814 sigSum = sigTS + sigUS + sigTU;
2817 sigma = 0.5 * sigSum / (128. * M_PI * sH2);
2825 void Sigma2gg2LEDgg::setIdColAcol() {
2828 setId( id1, id2, 21, 21);
2831 double sigRand = sigSum * rndmPtr->flat();
2832 if (sigRand < sigTS) setColAcol( 1, 2, 2, 3, 1, 4, 4, 3);
2833 else if (sigRand < sigTS + sigUS)
2834 setColAcol( 1, 2, 3, 1, 3, 4, 4, 2);
2835 else setColAcol( 1, 2, 3, 4, 1, 4, 3, 2);
2836 if (rndmPtr->flat() > 0.5) swapColAcol();
2849 void Sigma2gg2LEDqqbar::initProc() {
2853 nQuarkNew = settingsPtr->mode(
"ExtraDimensionsLED:nQuarkNew");
2854 eDopMode = settingsPtr->mode(
"ExtraDimensionsLED:opMode");
2855 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2856 eDMD = settingsPtr->parm(
"ExtraDimensionsLED:MD");
2857 eDLambdaT = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2858 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
2859 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2860 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2868 void Sigma2gg2LEDqqbar::sigmaKin() {
2874 if (eDopMode == 0) {
2875 sS = ampLedS( sH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2876 sT = ampLedS( tH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2877 sU = ampLedS( uH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2880 double effLambda = eDLambdaT;
2881 if ((eDcutoff == 2) || (eDcutoff == 3)) {
2882 double ffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaT);
2883 double exp = double(eDnGrav) + 2.;
2884 double formfa = 1. + pow(ffterm, exp);
2885 effLambda *= pow(formfa,0.25);
2887 sS = 4.*M_PI/pow(effLambda,4);
2888 sT = 4.*M_PI/pow(effLambda,4);
2889 sU = 4.*M_PI/pow(effLambda,4);
2890 if (eDnegInt == 1) {
2898 idNew = 1 + int( nQuarkNew * rndmPtr->flat() );
2899 mNew = particleDataPtr->m0(idNew);
2905 if (sH > 4. * m2New) {
2906 double tH3 = tH*tH2;
2907 double uH3 = uH*uH2;
2908 sigTS = (16. * pow2(M_PI) * pow2(alpS))
2909 * ((1./6.) * uH / tH - (3./8.) * uH2 / sH2)
2910 - 0.5 * M_PI * alpS * uH2 * sS.real()
2911 + (3./16.) * uH3 * tH * real(sS*conj(sS));
2912 sigUS = (16. * pow2(M_PI) * pow2(alpS))
2913 * ((1./6.) * tH / uH - (3./8.) * tH2 / sH2)
2914 - 0.5 * M_PI * alpS * tH2 * sS.real()
2915 + (3./16.) * tH3 * uH * real(sS*conj(sS));
2917 sigSum = sigTS + sigUS;
2920 sigma = nQuarkNew * sigSum / (16. * M_PI * sH2);
2928 void Sigma2gg2LEDqqbar::setIdColAcol() {
2931 setId( id1, id2, idNew, -idNew);
2934 double sigRand = sigSum * rndmPtr->flat();
2935 if (sigRand < sigTS) setColAcol( 1, 2, 2, 3, 1, 0, 0, 3);
2936 else setColAcol( 1, 2, 3, 1, 3, 0, 0, 2);
2949 void Sigma2qg2LEDqg::initProc() {
2952 eDopMode = settingsPtr->mode(
"ExtraDimensionsLED:opMode");
2953 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
2954 eDMD = settingsPtr->parm(
"ExtraDimensionsLED:MD");
2955 eDLambdaT = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
2956 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
2957 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
2958 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
2966 void Sigma2qg2LEDqg::sigmaKin() {
2972 if (eDopMode == 0) {
2973 sS = ampLedS( sH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2974 sT = ampLedS( tH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2975 sU = ampLedS( uH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
2978 double effLambda = eDLambdaT;
2979 if ((eDcutoff == 2) || (eDcutoff == 3)) {
2980 double ffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaT);
2981 double exp = double(eDnGrav) + 2.;
2982 double formfa = 1. + pow(ffterm, exp);
2983 effLambda *= pow(formfa,0.25);
2985 sS = 4.*M_PI/pow(effLambda,4);
2986 sT = 4.*M_PI/pow(effLambda,4);
2987 sU = 4.*M_PI/pow(effLambda,4);
2988 if (eDnegInt == 1) {
2996 double sH3 = sH*sH2;
2997 double uH3 = uH*uH2;
2998 sigTS = (16. * pow2(M_PI) * pow2(alpS))
2999 * (uH2 / tH2 - (4./9.) * uH / sH)
3000 + (4./3.) * M_PI * alpS * uH2 * sT.real()
3001 - 0.5 * uH3 * sH * real(sT*conj(sT));
3002 sigTU = (16. * pow2(M_PI) * pow2(alpS))
3003 * (sH2 / tH2 - (4./9.) * sH / uH)
3004 + (4./3.) * M_PI * alpS * sH2 * sT.real()
3005 - 0.5 * sH3 * uH * real(sT*conj(sT));
3006 sigSum = sigTS + sigTU;
3009 sigma = sigSum / (16. * M_PI * sH2);
3017 void Sigma2qg2LEDqg::setIdColAcol() {
3020 setId( id1, id2, id1, id2);
3023 double sigRand = sigSum * rndmPtr->flat();
3024 if (sigRand < sigTS) setColAcol( 1, 0, 2, 1, 3, 0, 2, 3);
3025 else setColAcol( 1, 0, 2, 3, 2, 0, 1, 3);
3026 if (id1 == 21) swapCol1234();
3027 if (id1 < 0 || id2 < 0) swapColAcol();
3040 void Sigma2qq2LEDqq::initProc() {
3043 eDopMode = settingsPtr->mode(
"ExtraDimensionsLED:opMode");
3044 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
3045 eDMD = settingsPtr->parm(
"ExtraDimensionsLED:MD");
3046 eDLambdaT = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
3047 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
3048 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
3049 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
3057 void Sigma2qq2LEDqq::sigmaKin() {
3063 if (eDopMode == 0) {
3064 sS = ampLedS( sH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3065 sT = ampLedS( tH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3066 sU = ampLedS( uH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3069 double effLambda = eDLambdaT;
3070 if ((eDcutoff == 2) || (eDcutoff == 3)) {
3071 double ffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaT);
3072 double exp = double(eDnGrav) + 2.;
3073 double formfa = 1. + pow(ffterm, exp);
3074 effLambda *= pow(formfa,0.25);
3076 sS = 4.*M_PI/pow(effLambda,4);
3077 sT = 4.*M_PI/pow(effLambda,4);
3078 sU = 4.*M_PI/pow(effLambda,4);
3079 if (eDnegInt == 1) {
3087 sigT = (4./9.) * (sH2 + uH2) / tH2;
3088 sigU = (4./9.) * (sH2 + tH2) / uH2;
3089 sigTU = - (8./27.) * sH2 / (tH * uH);
3090 sigST = - (8./27.) * uH2 / (sH * tH);
3092 sigGrT1 = funLedG(tH, uH) * real(sT*conj(sT)) / 8.;
3093 sigGrT2 = funLedG(tH, sH) * real(sT*conj(sT)) / 8.;
3094 sigGrU = funLedG(uH, tH) * real(sU*conj(sU)) / 8.;
3095 sigGrTU = (8./9.) * M_PI * alpS * sH2
3096 * ((4.*uH + tH)*sT.real()/uH + (4.*tH + uH)*sU.real()/tH)
3097 + (sT.real()*sU.real() + sT.imag()*sU.imag())
3098 * (4.*tH + uH)*(4.*uH + tH) * sH2 / 48.;
3099 sigGrST = (8./9.) * M_PI * alpS * uH2
3100 * ((4.*tH + sH)*sS.real()/tH + (4.*sH + tH)*sT.real()/sH)
3101 + (sS.real()*sT.real() + sS.imag()*sT.imag())
3102 * (4.*sH + tH)*(4.*tH + sH) * uH2 / 48.;
3110 double Sigma2qq2LEDqq::sigmaHat() {
3114 sigSum = (16. * pow2(M_PI) * pow2(alpS)) * (sigT + sigU + sigTU)
3115 + sigGrT1 + sigGrU + sigGrTU;
3117 }
else if (id2 == -id1) {
3118 sigSum = (16. * pow2(M_PI) * pow2(alpS)) * (sigT + sigST)
3119 + sigGrT2 + sigGrST;
3121 sigSum = 16. * pow2(M_PI) * pow2(alpS) * sigT + sigGrT1;
3125 return sigSum / (16. * M_PI * sH2);
3133 void Sigma2qq2LEDqq::setIdColAcol() {
3136 setId( id1, id2, id1, id2);
3139 double sigTtot = sigT + sigGrT2;
3140 double sigUtot = sigU + sigGrU;
3141 if (id1 * id2 > 0) setColAcol( 1, 0, 2, 0, 2, 0, 1, 0);
3142 else setColAcol( 1, 0, 0, 1, 2, 0, 0, 2);
3143 if (id2 == id1 && (sigTtot + sigUtot) * rndmPtr->flat() > sigTtot)
3144 setColAcol( 1, 0, 2, 0, 1, 0, 2, 0);
3145 if (id1 < 0) swapColAcol();
3158 void Sigma2qqbar2LEDgg::initProc() {
3161 eDopMode = settingsPtr->mode(
"ExtraDimensionsLED:opMode");
3162 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
3163 eDMD = settingsPtr->parm(
"ExtraDimensionsLED:MD");
3164 eDLambdaT = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
3165 eDnegInt = settingsPtr->mode(
"ExtraDimensionsLED:NegInt");
3166 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
3167 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
3175 void Sigma2qqbar2LEDgg::sigmaKin() {
3181 if (eDopMode == 0) {
3182 sS = ampLedS( sH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3183 sT = ampLedS( tH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3184 sU = ampLedS( uH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3187 double effLambda = eDLambdaT;
3188 if ((eDcutoff == 2) || (eDcutoff == 3)) {
3189 double ffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaT);
3190 double exp = double(eDnGrav) + 2.;
3191 double formfa = 1. + pow(ffterm, exp);
3192 effLambda *= pow(formfa,0.25);
3194 sS = 4.*M_PI/pow(effLambda,4);
3195 sT = 4.*M_PI/pow(effLambda,4);
3196 sU = 4.*M_PI/pow(effLambda,4);
3197 if (eDnegInt == 1) {
3205 double tH3 = tH*tH2;
3206 double uH3 = uH*uH2;
3207 sigTS = (16. * pow2(M_PI) * pow2(alpS))
3208 * ((1./6.) * uH / tH - (3./8.) * uH2 / sH2)
3209 - 0.5 * M_PI * alpS * uH2 * sS.real()
3210 + (3./16.) * uH3 * tH * real(sS*conj(sS));
3211 sigUS = (16. * pow2(M_PI) * pow2(alpS))
3212 * ((1./6.) * tH / uH - (3./8.) * tH2 / sH2)
3213 - 0.5 * M_PI * alpS * tH2 * sS.real()
3214 + (3./16.) * tH3 * uH * real(sS*conj(sS));
3216 sigSum = sigTS + sigUS;
3219 sigma = (64./9.) * 0.5 * sigSum / (16. * M_PI * sH2);
3227 void Sigma2qqbar2LEDgg::setIdColAcol() {
3230 setId( id1, id2, 21, 21);
3233 double sigRand = sigSum * rndmPtr->flat();
3234 if (sigRand < sigTS) setColAcol( 1, 0, 0, 2, 1, 3, 3, 2);
3235 else setColAcol( 1, 0, 0, 2, 3, 2, 1, 3);
3236 if (id1 < 0) swapColAcol();
3249 void Sigma2qqbar2LEDqqbarNew::initProc() {
3253 nQuarkNew = settingsPtr->mode(
"ExtraDimensionsLED:nQuarkNew");
3254 eDopMode = settingsPtr->mode(
"ExtraDimensionsLED:opMode");
3255 eDnGrav = settingsPtr->mode(
"ExtraDimensionsLED:n");
3256 eDMD = settingsPtr->parm(
"ExtraDimensionsLED:MD");
3257 eDLambdaT = settingsPtr->parm(
"ExtraDimensionsLED:LambdaT");
3258 eDcutoff = settingsPtr->mode(
"ExtraDimensionsLED:CutOffMode");
3259 eDtff = settingsPtr->parm(
"ExtraDimensionsLED:t");
3267 void Sigma2qqbar2LEDqqbarNew::sigmaKin() {
3273 if (eDopMode == 0) {
3274 sS = ampLedS( sH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3275 sT = ampLedS( tH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3276 sU = ampLedS( uH/pow2(eDLambdaT), eDnGrav, eDLambdaT, eDMD);
3279 double effLambda = eDLambdaT;
3280 if ((eDcutoff == 2) || (eDcutoff == 3)) {
3281 double ffterm = sqrt(Q2RenSave) / (eDtff * eDLambdaT);
3282 double exp = double(eDnGrav) + 2.;
3283 double formfa = 1. + pow(ffterm, exp);
3284 effLambda *= pow(formfa,0.25);
3286 sS = 4.*M_PI/pow(effLambda,4);
3287 sT = 4.*M_PI/pow(effLambda,4);
3288 sU = 4.*M_PI/pow(effLambda,4);
3292 idNew = 1 + int( nQuarkNew * rndmPtr->flat() );
3293 mNew = particleDataPtr->m0(idNew);
3298 if (sH > 4. * m2New) {
3299 sigS = (16. * pow2(M_PI) * pow2(alpS))
3300 * (4./9.) * (tH2 + uH2) / sH2
3301 + funLedG(sH, tH) * real(sS*conj(sS)) / 8.;
3304 sigma = nQuarkNew * sigS / (16. * M_PI * sH2);
3312 void Sigma2qqbar2LEDqqbarNew::setIdColAcol() {
3315 id3 = (id1 > 0) ? idNew : -idNew;
3316 setId( id1, id2, id3, -id3);
3319 setColAcol( 1, 0, 0, 2, 1, 0, 0, 2);
3320 if (id1 < 0) swapColAcol();