9 #ifndef Pythia8_SigmaCompositeness_H
10 #define Pythia8_SigmaCompositeness_H
12 #include "Pythia8/SigmaProcess.h"
20 class Sigma1qg2qStar :
public Sigma1Process {
25 Sigma1qg2qStar(
int idqIn) : idq(idqIn) {}
28 virtual void initProc();
31 virtual void sigmaKin();
34 virtual double sigmaHat();
37 virtual void setIdColAcol();
40 virtual double weightDecay(
Event& process,
int iResBeg,
int iResEnd);
43 virtual string name()
const {
return nameSave;}
44 virtual int code()
const {
return codeSave;}
45 virtual string inFlux()
const {
return "qg";}
46 virtual int resonanceA()
const {
return idRes;}
51 int idq, idRes, codeSave;
53 double mRes, GammaRes, m2Res, GamMRat, Lambda, coupFcol, widthIn, sigBW;
56 ParticleDataEntry* qStarPtr;
64 class Sigma1lgm2lStar :
public Sigma1Process {
69 Sigma1lgm2lStar(
int idlIn) : idl(idlIn) {}
72 virtual void initProc();
75 virtual void sigmaKin();
78 virtual double sigmaHat();
81 virtual void setIdColAcol();
84 virtual double weightDecay(
Event& process,
int iResBeg,
int iResEnd);
87 virtual string name()
const {
return nameSave;}
88 virtual int code()
const {
return codeSave;}
89 virtual string inFlux()
const {
return "fgm";}
90 virtual int resonanceA()
const {
return idRes;}
95 int idl, idRes, codeSave;
97 double mRes, GammaRes, m2Res, GamMRat, Lambda, coupChg, widthIn, sigBW;
100 ParticleDataEntry* qStarPtr;
108 class Sigma2qq2qStarq :
public Sigma2Process {
113 Sigma2qq2qStarq(
int idqIn) : idq(idqIn) {}
116 virtual void initProc();
119 virtual void sigmaKin();
122 virtual double sigmaHat();
125 virtual void setIdColAcol();
128 virtual double weightDecay(
Event& process,
int iResBeg,
int iResEnd);
131 virtual string name()
const {
return nameSave;}
132 virtual int code()
const {
return codeSave;}
133 virtual string inFlux()
const {
return "qq";}
134 virtual int id3Mass()
const {
return idRes;}
139 int idq, idRes, codeSave;
141 double Lambda, preFac, openFracPos, openFracNeg, sigmaA, sigmaB;
149 class Sigma2qqbar2lStarlbar :
public Sigma2Process {
154 Sigma2qqbar2lStarlbar(
int idlIn) : idl(idlIn) {}
157 virtual void initProc();
160 virtual void sigmaKin();
163 virtual double sigmaHat() {
return sigma;}
166 virtual void setIdColAcol();
169 virtual double weightDecay(
Event& process,
int iResBeg,
int iResEnd);
172 virtual string name()
const {
return nameSave;}
173 virtual int code()
const {
return codeSave;}
174 virtual string inFlux()
const {
return "qqbarSame";}
175 virtual int id3Mass()
const {
return idRes;}
180 int idl, idRes, codeSave;
182 double Lambda, preFac, openFracPos, openFracNeg, sigma;
205 virtual double sigmaHat() {
return sigma;}
211 virtual double weightDecay(
Event& process,
int iResBeg,
int iResEnd);
214 virtual string name()
const {
return nameSave;}
215 virtual int code()
const {
return codeSave;}
216 virtual string inFlux()
const {
return "qqbarSame";}
217 virtual int id3Mass()
const {
return idRes;}
218 virtual int id4Mass()
const {
return idRes;}
223 int idl, idRes, codeSave;
225 double Lambda, preFac, openFracPos, openFracNeg, sigma;
242 virtual void initProc();
245 virtual void sigmaKin();
248 virtual double sigmaHat();
251 virtual void setIdColAcol();
254 virtual string name()
const {
return "q q(bar)' -> (QC) -> q q(bar)'";}
255 virtual int code()
const {
return 4201;}
256 virtual string inFlux()
const {
return "qq";}
261 double sigT, sigU, sigTU, sigST, sigSum, sigQCSTU, sigQCUTS;
265 int qCetaLL, qCetaRR, qCetaLR;
275 class Sigma2QCqqbar2qqbar :
public Sigma2Process {
280 Sigma2QCqqbar2qqbar(){}
283 virtual void initProc();
286 virtual void sigmaKin();
289 virtual double sigmaHat() {
return sigma;}
292 virtual void setIdColAcol();
295 virtual string name()
const {
return "q qbar -> (QC) -> q' qbar' (uds)";}
296 virtual int code()
const {
return 4202;}
297 virtual string inFlux()
const {
return "qqbarSame";}
307 double mNew, m2New, sigS, sigma;
311 int qCetaLL, qCetaRR, qCetaLR;
321 class Sigma2QCffbar2llbar :
public Sigma2Process {
326 Sigma2QCffbar2llbar (
int idIn,
int codeIn) : idNew(idIn), codeNew(codeIn) {}
329 virtual void initProc();
333 virtual void sigmaKin();
336 virtual double sigmaHat();
339 virtual void setIdColAcol();
342 virtual string name()
const {
return nameNew;}
343 virtual int code()
const {
return codeNew;}
344 virtual string inFlux()
const {
return "ffbarSame";}
345 virtual bool isSChannel()
const {
return true;}
352 double qCmNew, qCmNew2, qCmZ, qCmZ2, qCGZ, qCGZ2, sigma0;
356 int qCetaLL, qCetaRR, qCetaLR, qCetaRL;
357 double qCPropGm, qCrePropZ, qCimPropZ;
365 #endif // Pythia8_SigmaCompositeness_H