13 #include "Pythia8/ParticleData.h"
32 std::cout <<
" ResonanceLQ constructor\n";
40 m_kCoup = settingsPtr->parm(
"LeptoQuark:kCoup");
43 #if PYTHIA_VERSION_INTEGER >= 8307
46 ParticleDataEntry* particleSPtr = particlePtr;
50 int id1Now = particleSPtr->channel(0).product(0);
51 int id2Now = particleSPtr->channel(0).product(1);
57 if (id1Now < 1 || id1Now > 6) {
58 std::cout <<
"ERROR in ResonanceLQ::init: unallowed input quark flavour reset to u" << std::endl;
60 particleSPtr->channel(0).product(0, id1Now);
62 if (std::abs(id2Now) < 11 || std::abs(id2Now) > 16) {
63 std::cout <<
"ERROR in ResonanceLQ::init:unallowed input lepton flavour reset to e-" << std::endl;
65 particleSPtr->channel(0).product(1, id2Now);
69 bool changed = particleSPtr->hasChanged();
71 int chargeLQ = particleDataPtr->chargeType(id1Now)
72 + particleDataPtr->chargeType(id2Now);
74 particleSPtr->setChargeType(chargeLQ);
76 std::string nameLQ =
"LQ_" + particleDataPtr->name(id1Now) +
","
77 + particleDataPtr->name(id2Now);
79 particleSPtr->setNames(nameLQ, nameLQ +
"bar");
80 if (!changed) particleSPtr->setHasChanged(
false);
91 #ifdef PYTHIA_VERSION_INTEGER
92 #if PYTHIA_VERSION_INTEGER > 8300
93 CoupSM* couplingsPtr = infoPtr->coupSMPtr;
96 alpEM = couplingsPtr->alphaEM(mHat * mHat);
97 preFac = 0.25 * alpEM *
m_kCoup * mHat;
109 if (ps == 0.)
return;
112 if (id1Abs > 10 && id1Abs < 17 && id2Abs < 7) widNow = preFac * pow3(ps);