ATLAS Offline Software
Loading...
Searching...
No Matches
Pythia8::ResonanceExcitedCI Class Reference
Inheritance diagram for Pythia8::ResonanceExcitedCI:
Collaboration diagram for Pythia8::ResonanceExcitedCI:

Public Member Functions

 ResonanceExcitedCI (int idResIn)

Private Member Functions

void initConstants ()
void calcPreFac (bool)
void calcWidth (bool)

Private Attributes

double m_lambda
double m_coupF
double m_coupFprime
double m_coupFcol
double m_sin2tW
double m_cos2tW

Detailed Description

Definition at line 21 of file ResonanceExcitedCI.cxx.

Constructor & Destructor Documentation

◆ ResonanceExcitedCI()

Pythia8::ResonanceExcitedCI::ResonanceExcitedCI ( int idResIn)
inline

Definition at line 26 of file ResonanceExcitedCI.cxx.

26 :
27 m_lambda(0.), m_coupF(0.), m_coupFprime(0.), m_coupFcol(0.),
28 m_sin2tW(0.), m_cos2tW(0.){
29 initBasic(idResIn); std::cout << " ResonanceExcitedCI constructor\n";
30 }

Member Function Documentation

◆ calcPreFac()

void Pythia8::ResonanceExcitedCI::calcPreFac ( bool )
inlineprivate

Definition at line 56 of file ResonanceExcitedCI.cxx.

56 {
57 // Common coupling factors.
58#ifdef PYTHIA_VERSION_INTEGER
59 #if PYTHIA_VERSION_INTEGER > 8300
60 CoupSM* couplingsPtr = infoPtr->coupSMPtr;
61 #endif
62#endif
63 alpEM = couplingsPtr->alphaEM(mHat * mHat);
64 alpS = couplingsPtr->alphaS(mHat * mHat);
65 preFac = pow3(mHat) / pow2(m_lambda);
66
67 return;
68 }
static const std::map< unsigned int, unsigned int > pow2

◆ calcWidth()

void Pythia8::ResonanceExcitedCI::calcWidth ( bool )
inlineprivate

Definition at line 74 of file ResonanceExcitedCI.cxx.

74 {
75
76 // Check that above threshold.
77 if (ps == 0.) return;
78
79 // f^* -> f g.
80 if (id1Abs == 21) widNow = preFac * alpS * pow2(m_coupFcol) / 3.;
81
82 // f^* -> f gamma.
83 else if (id1Abs == 22) {
84 double chgI3 = (id2Abs%2 == 0) ? 0.5 : -0.5;
85 double chgY = (id2Abs < 9) ? 1. / 6. : -0.5;
86 double chg = chgI3 * m_coupF + chgY * m_coupFprime;
87 widNow = preFac * alpEM * pow2(chg) / 4.;
88 }
89 // f^* -> f Z^0.
90 else if (id1Abs == 23) {
91 double chgI3 = (id2Abs%2 == 0) ? 0.5 : -0.5;
92 double chgY = (id2Abs < 9) ? 1. / 6. : -0.5;
93 double chg = chgI3 * m_cos2tW * m_coupF - chgY * m_sin2tW * m_coupFprime;
94 widNow = preFac * (alpEM * pow2(chg) / (8. * m_sin2tW * m_cos2tW))
95 * ps*ps * (2. + mr1);
96 }
97
98 // f^* -> f' W^+-.
99 else if (id1Abs == 24) widNow = preFac * (alpEM * pow2(m_coupF)
100 / (16. * m_sin2tW)) * ps*ps * (2. + mr1);
101 // idxAbs are sorted according to their abs value ; use idRes
102
103 // f^* -> f f' \bar{f'}
104 else {
105 //std::cout << " hei! in ResonanceExcitedCI processing F* -> f f'f'bar decays "<< id1Abs <<" "<<id2Abs<<" "<<id3Abs<< "\n";
106
107 if( id1Abs < 17 && id2Abs < 17 && id3Abs>0 && id3Abs < 17 ){ // f* -> f f'\bar(f'} decay
108 widNow = preFac * pow2(mHat) / pow2(m_lambda) / 96. / M_PI ;
109 if( id3Abs < 10 ) widNow *= 3.; // quarks in final state. id1 is highest pdgId of f, f'
110 if( id1Abs == id2Abs && id1Abs == id3Abs ){
111 if( std::abs(idRes)-4000000 < 10 ) widNow *= 4./3.;
112 else widNow *= 2.;
113 }
114 }
115 }
116
117 return;
118 }
#define M_PI

◆ initConstants()

void Pythia8::ResonanceExcitedCI::initConstants ( )
inlineprivate

Definition at line 34 of file ResonanceExcitedCI.cxx.

34 {
35
36 // Locally stored properties and couplings.
37 m_lambda = settingsPtr->parm("ExcitedFermion:Lambda");
38 m_coupF = settingsPtr->parm("ExcitedFermion:coupF");
39 m_coupFprime = settingsPtr->parm("ExcitedFermion:coupFprime");
40 m_coupFcol = settingsPtr->parm("ExcitedFermion:coupFcol");
41#ifdef PYTHIA_VERSION_INTEGER
42 #if PYTHIA_VERSION_INTEGER > 8300
43 CoupSM* couplingsPtr = infoPtr->coupSMPtr;
44 #endif
45#endif
46 m_sin2tW = couplingsPtr->sin2thetaW();
47 m_cos2tW = 1. - m_sin2tW;
48
49 return;
50 }

Member Data Documentation

◆ m_cos2tW

double Pythia8::ResonanceExcitedCI::m_cos2tW
private

Definition at line 121 of file ResonanceExcitedCI.cxx.

◆ m_coupF

double Pythia8::ResonanceExcitedCI::m_coupF
private

Definition at line 121 of file ResonanceExcitedCI.cxx.

◆ m_coupFcol

double Pythia8::ResonanceExcitedCI::m_coupFcol
private

Definition at line 121 of file ResonanceExcitedCI.cxx.

◆ m_coupFprime

double Pythia8::ResonanceExcitedCI::m_coupFprime
private

Definition at line 121 of file ResonanceExcitedCI.cxx.

◆ m_lambda

double Pythia8::ResonanceExcitedCI::m_lambda
private

Definition at line 121 of file ResonanceExcitedCI.cxx.

◆ m_sin2tW

double Pythia8::ResonanceExcitedCI::m_sin2tW
private

Definition at line 121 of file ResonanceExcitedCI.cxx.


The documentation for this class was generated from the following file: