File indexing completed on 2025-01-18 10:06:30
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef Pythia8_SigmaNewGaugeBosons_H
0010 #define Pythia8_SigmaNewGaugeBosons_H
0011
0012 #include "Pythia8/PythiaComplex.h"
0013 #include "Pythia8/SigmaProcess.h"
0014
0015 namespace Pythia8 {
0016
0017
0018
0019
0020
0021
0022 class Sigma1ffbarZprimeWprime: public Sigma1Process {
0023
0024 public:
0025
0026
0027 Sigma1ffbarZprimeWprime() {}
0028
0029 protected:
0030
0031
0032 Vec4 pRot[7];
0033 complex hA[7][7];
0034 complex hC[7][7];
0035
0036
0037 void setupProd( Event& process, int i1, int i2, int i3, int i4,
0038 int i5, int i6);
0039
0040
0041 complex fGK(int i1, int i2, int i3, int i4, int i5, int i6);
0042
0043
0044 double xiGK( double tHnow, double uHnow, double s3now, double s4now);
0045
0046
0047 double xjGK( double tHnow, double uHnow, double s3now, double s4now);
0048
0049 private:
0050
0051 };
0052
0053
0054
0055
0056
0057 class Sigma1ffbar2gmZZprime : public Sigma1ffbarZprimeWprime {
0058
0059 public:
0060
0061
0062 Sigma1ffbar2gmZZprime() : gmZmode(), maxZpGen(), mRes(), GammaRes(),
0063 m2Res(), GamMRat(), sin2tW(), cos2tW(), thetaWRat(), mZ(), GammaZ(), m2Z(),
0064 GamMRatZ(), afZp(), vfZp(), coupZpWW(), anglesZpWW(), gamSum(), gamZSum(),
0065 ZSum(), gamZpSum(), ZZpSum(), ZpSum(), gamNorm(), gamZNorm(), ZNorm(),
0066 gamZpNorm(), ZZpNorm(), ZpNorm(), particlePtr() {}
0067
0068
0069 virtual void initProc();
0070
0071
0072 virtual void sigmaKin();
0073
0074
0075 virtual double sigmaHat();
0076
0077
0078 virtual void setIdColAcol();
0079
0080
0081 virtual double weightDecay( Event& process, int iResBeg, int iResEnd);
0082
0083
0084 virtual string name() const {return "f fbar -> gamma*/Z0/Zprime0";}
0085 virtual int code() const {return 3001;}
0086 virtual string inFlux() const {return "ffbarSame";}
0087 virtual int resonanceA() const {return 23;}
0088 virtual int resonanceB() const {return 32;}
0089
0090 private:
0091
0092
0093 int gmZmode, maxZpGen;
0094 double mRes, GammaRes, m2Res, GamMRat, sin2tW, cos2tW, thetaWRat,
0095 mZ, GammaZ, m2Z, GamMRatZ, afZp[20], vfZp[20], coupZpWW,
0096 anglesZpWW, gamSum, gamZSum, ZSum, gamZpSum, ZZpSum, ZpSum,
0097 gamNorm, gamZNorm, ZNorm, gamZpNorm, ZZpNorm, ZpNorm;
0098
0099
0100 ParticleDataEntryPtr particlePtr;
0101
0102 };
0103
0104
0105
0106
0107
0108 class Sigma1ffbar2Wprime : public Sigma1ffbarZprimeWprime {
0109
0110 public:
0111
0112
0113 Sigma1ffbar2Wprime() : mRes(), GammaRes(), m2Res(), GamMRat(), thetaWRat(),
0114 sigma0Pos(), sigma0Neg(), aqWp(), vqWp(), alWp(), vlWp(), coupWpWZ(),
0115 anglesWpWZ(), particlePtr() {}
0116
0117
0118 virtual void initProc();
0119
0120
0121 virtual void sigmaKin();
0122
0123
0124 virtual double sigmaHat();
0125
0126
0127 virtual void setIdColAcol();
0128
0129
0130 virtual double weightDecay( Event& process, int iResBeg, int iResEnd);
0131
0132
0133 virtual string name() const {return "f fbar' -> W'+-";}
0134 virtual int code() const {return 3021;}
0135 virtual string inFlux() const {return "ffbarChg";}
0136 virtual int resonanceA() const {return 34;}
0137
0138 private:
0139
0140
0141 double mRes, GammaRes, m2Res, GamMRat, thetaWRat, sigma0Pos, sigma0Neg,
0142 aqWp, vqWp, alWp, vlWp, coupWpWZ, anglesWpWZ;
0143
0144
0145 ParticleDataEntryPtr particlePtr;
0146
0147 };
0148
0149
0150
0151
0152 class Sigma1ffbar2Rhorizontal : public Sigma1Process {
0153
0154 public:
0155
0156
0157 Sigma1ffbar2Rhorizontal() : mRes(), GammaRes(), m2Res(), GamMRat(),
0158 thetaWRat(), sigma0Pos(), sigma0Neg(), particlePtr() {}
0159
0160
0161 virtual void initProc();
0162
0163
0164 virtual void sigmaKin();
0165
0166
0167 virtual double sigmaHat();
0168
0169
0170 virtual void setIdColAcol();
0171
0172
0173 virtual string name() const {return "f fbar' -> R^0";}
0174 virtual int code() const {return 3041;}
0175 virtual string inFlux() const {return "ffbar";}
0176 virtual int resonanceA() const {return 41;}
0177
0178 private:
0179
0180
0181 double mRes, GammaRes, m2Res, GamMRat, thetaWRat, sigma0Pos, sigma0Neg;
0182
0183
0184 ParticleDataEntryPtr particlePtr;
0185
0186 };
0187
0188
0189
0190 }
0191
0192 #endif