a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
LEP2oblique Class Reference

A class for NP analyses of LEP-II observables with the extended oblique parameters. More...

#include <LEP2oblique.h>

Detailed Description

A class for NP analyses of LEP-II observables with the extended oblique parameters.

Author
HEPfit Collaboration

Definition at line 22 of file LEP2oblique.h.

Public Types

enum  Oblique { Shat =0, That, Uhat, V, W, X, Y }
 

Public Member Functions

double AFB_l_LEP2_NP (const QCD::lepton l, const double s, const double ml, const double ObParam_i[]) const
 
double AFB_q_LEP2_NP (const QCD::quark q, const double s, const double mq, const double ObParam_i[]) const
 
 LEP2oblique (const StandardModel &SM_i)
 LEP2oblique constructor. More...
 
double R_q_LEP2_NP (const QCD::quark q, const double s, const double mq, const double ObParam_i[]) const
 
double sigma_l_LEP2_NP (const QCD::lepton l, const double s, const double ml, const double ObParam_i[]) const
 
double sigma_q_LEP2_NP (const QCD::quark q, const double s, const double mq, const double ObParam_i[]) const
 

Private Member Functions

double al (const QCD::lepton l, const double alpha0) const
 
double alpha_at_s (const double s) const
 
double aq (const QCD::quark q, const double alpha0) const
 
double c02 (const double alpha0) const
 
double DeltaEpsilon_1 (const double alpha0, const double ObParam_i[]) const
 
double DeltaEpsilon_2 (const double alpha0, const double ObParam_i[]) const
 
double DeltaEpsilon_3 (const double alpha0, const double ObParam_i[]) const
 
double epsilonGammaGamma (const double alpha0, const double ObParam_i[]) const
 
double epsilonGammaZ (const double alpha0, const double ObParam_i[]) const
 
double epsilonZZ (const double alpha0, const double ObParam_i[]) const
 
double G1_l_NP (const QCD::lepton l, const double s, const double alpha0, const double ObParam_i[]) const
 
double G1_l_SM0 (const QCD::lepton l, const double s, const double alpha0) const
 
double G1_NP (const double s, const double alpha0, const double Qf, const double vf, const double af, const double ObParam_i[]) const
 
double G1_q_NP (const QCD::quark q, const double s, const double alpha0, const double ObParam_i[]) const
 
double G1_q_SM0 (const QCD::quark q, const double s, const double alpha0) const
 
double G1_SM0 (const double s, const double alpha0, const double Qf, const double vf, const double af) const
 
double G2_l_SM0 (const QCD::lepton l, const double s, const double alpha0) const
 
double G2_q_SM0 (const QCD::quark q, const double s, const double alpha0) const
 
double G2_SM0 (const double s, const double alpha0, const double Qf, const double vf, const double af) const
 
double G3_l_NP (const QCD::lepton l, const double s, const double alpha0, const double ObParam_i[]) const
 
double G3_l_SM0 (const QCD::lepton l, const double s, const double alpha0) const
 
double G3_NP (const double s, const double alpha0, const double Qf, const double vf, const double af, const double ObParam_i[]) const
 
double G3_q_NP (const QCD::quark q, const double s, const double alpha0, const double ObParam_i[]) const
 
double G3_q_SM0 (const QCD::quark q, const double s, const double alpha0) const
 
double G3_SM0 (const double s, const double alpha0, const double Qf, const double vf, const double af) const
 
double Mw0 (const double alpha0) const
 
double s02 (const double alpha0) const
 
double sigma_l_LEP2_SM0 (const QCD::lepton l, const double s, const double alpha0, const double ml) const
 
double sigma_q_LEP2_SM0 (const QCD::quark q, const double s, const double alpha0, const double mq) const
 
double vl (const QCD::lepton l, const double alpha0) const
 
double vq (const QCD::quark q, const double alpha0) const
 

Private Attributes

const StandardModelSM
 

Member Enumeration Documentation

◆ Oblique

Enumerator
Shat 
That 
Uhat 

Definition at line 25 of file LEP2oblique.h.

25 {Shat=0, That, Uhat, V, W, X, Y};

Constructor & Destructor Documentation

◆ LEP2oblique()

LEP2oblique::LEP2oblique ( const StandardModel SM_i)

LEP2oblique constructor.

Parameters
[in]SM_ia reference to an object of type StandardModel

Definition at line 11 of file LEP2oblique.cpp.

12 : SM(SM_i)
13 {
14 }

Member Function Documentation

◆ AFB_l_LEP2_NP()

double LEP2oblique::AFB_l_LEP2_NP ( const QCD::lepton  l,
const double  s,
const double  ml,
const double  ObParam_i[] 
) const

Definition at line 45 of file LEP2oblique.cpp.

48 {
49  double alpha0 = alpha_at_s(s);
50  double mf2 = ml*ml;
51  double betaf = sqrt(1.0 - 4.0*mf2/s);
52  double G1SM0 = G1_l_SM0(l, s, alpha0);
53  double G2SM0 = G2_l_SM0(l, s, alpha0);
54  double G3SM0 = G3_l_SM0(l, s, alpha0);
55  double AFB_Born0 = 3.0/4.0*betaf*G3SM0/(G1SM0 + 2.0*mf2/s*G2SM0);
56  double G1NP = G1_l_NP(l, s, alpha0, ObParam_i);
57  double G3NP = G3_l_NP(l, s, alpha0, ObParam_i);
58 
59  return ( - AFB_Born0*G1NP/(G1SM0 + 2.0*mf2/s*G2SM0)
60  + AFB_Born0*G3NP/G3SM0 );
61 }

◆ AFB_q_LEP2_NP()

double LEP2oblique::AFB_q_LEP2_NP ( const QCD::quark  q,
const double  s,
const double  mq,
const double  ObParam_i[] 
) const

Definition at line 64 of file LEP2oblique.cpp.

67 {
68  double alpha0 = alpha_at_s(s);
69  double mf2 = mq*mq;
70  double betaf = sqrt(1.0 - 4.0*mf2/s);
71  double G1SM0 = G1_q_SM0(q, s, alpha0);
72  double G2SM0 = G2_q_SM0(q, s, alpha0);
73  double G3SM0 = G3_q_SM0(q, s, alpha0);
74  double AFB_Born0 = 3.0/4.0*betaf*G3SM0/(G1SM0 + 2.0*mf2/s*G2SM0);
75  double G1NP = G1_q_NP(q, s, alpha0, ObParam_i);
76  double G3NP = G3_q_NP(q, s, alpha0, ObParam_i);
77 
78  return ( - AFB_Born0*G1NP/(G1SM0 + 2.0*mf2/s*G2SM0)
79  + AFB_Born0*G3NP/G3SM0 );
80 }

◆ al()

double LEP2oblique::al ( const QCD::lepton  l,
const double  alpha0 
) const
private

Definition at line 180 of file LEP2oblique.cpp.

181 {
182  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
183  return ( - SM.getLeptons(l).getIsospin()/(2.0*s0*c0) );
184 }

◆ alpha_at_s()

double LEP2oblique::alpha_at_s ( const double  s) const
inlineprivate

Definition at line 62 of file LEP2oblique.h.

63  {
64  //return ( SM.alphaMz() ); // TEST
65  return ( SM.ale_OS(sqrt(s), FULLNLO) );
66  }

◆ aq()

double LEP2oblique::aq ( const QCD::quark  q,
const double  alpha0 
) const
private

Definition at line 187 of file LEP2oblique.cpp.

188 {
189  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
190  return ( - SM.getQuarks(q).getIsospin()/(2.0*s0*c0) );
191 }

◆ c02()

double LEP2oblique::c02 ( const double  alpha0) const
inlineprivate

Definition at line 84 of file LEP2oblique.h.

85  {
86  return ( 1.0 - s02(alpha0) );
87  }

◆ DeltaEpsilon_1()

double LEP2oblique::DeltaEpsilon_1 ( const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 108 of file LEP2oblique.cpp.

110 {
111  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
112  return ( ObParam_i[That] - ObParam_i[W] + 2.0*s0/c0*ObParam_i[X]
113  - s0*s0/c0/c0*ObParam_i[Y] );
114 }

◆ DeltaEpsilon_2()

double LEP2oblique::DeltaEpsilon_2 ( const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 117 of file LEP2oblique.cpp.

119 {
120  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
121  return ( ObParam_i[Uhat] - ObParam_i[V] - ObParam_i[W]
122  + 2.0*s0/c0*ObParam_i[X] );
123 }

◆ DeltaEpsilon_3()

double LEP2oblique::DeltaEpsilon_3 ( const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 126 of file LEP2oblique.cpp.

128 {
129  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
130  return ( ObParam_i[Shat] - ObParam_i[W] + ObParam_i[X]/s0/c0
131  - ObParam_i[Y] );
132 }

◆ epsilonGammaGamma()

double LEP2oblique::epsilonGammaGamma ( const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 144 of file LEP2oblique.cpp.

146 {
147  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
148  return ( s02(alpha0)*ObParam_i[W] + 2.0*s0*c0*ObParam_i[X]
149  + c02(alpha0)*ObParam_i[Y] );
150 }

◆ epsilonGammaZ()

double LEP2oblique::epsilonGammaZ ( const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 153 of file LEP2oblique.cpp.

155 {
156  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
157  return ( (c02(alpha0) - s02(alpha0))*ObParam_i[X] + s0*c0*(ObParam_i[W]
158  - ObParam_i[Y]) );
159 }

◆ epsilonZZ()

double LEP2oblique::epsilonZZ ( const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 135 of file LEP2oblique.cpp.

137 {
138  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
139  return ( c02(alpha0)*ObParam_i[W] - 2.0*s0*c0*ObParam_i[X]
140  + s02(alpha0)*ObParam_i[Y] );
141 }

◆ G1_l_NP()

double LEP2oblique::G1_l_NP ( const QCD::lepton  l,
const double  s,
const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 228 of file LEP2oblique.cpp.

231 {
232  double Qf = SM.getLeptons(l).getCharge();
233  double vf = vl(l, alpha0), af = al(l, alpha0);
234  return ( G1_NP(s, alpha0, Qf, vf, af, ObParam_i) );
235 }

◆ G1_l_SM0()

double LEP2oblique::G1_l_SM0 ( const QCD::lepton  l,
const double  s,
const double  alpha0 
) const
private

Definition at line 315 of file LEP2oblique.cpp.

317 {
318  double Qf = SM.getLeptons(l).getCharge();
319  double vf = vl(l, alpha0), af = al(l, alpha0);
320  return ( G1_SM0(s, alpha0, Qf, vf, af) );
321 }

◆ G1_NP()

double LEP2oblique::G1_NP ( const double  s,
const double  alpha0,
const double  Qf,
const double  vf,
const double  af,
const double  ObParam_i[] 
) const
private

Definition at line 194 of file LEP2oblique.cpp.

197 {
198  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
200  double ve = vl(StandardModel::ELECTRON, alpha0);
201  double ae = al(StandardModel::ELECTRON, alpha0);
202  double Qe2 = Qe*Qe, Qf2 = Qf*Qf;
203  double ve2 = ve*ve, vf2 = vf*vf, ae2 = ae*ae, af2 = af*af;
204  double Mz = SM.getMz();
205  double GammaZ0 = 7.0*alpha0*Mz/(16.0*s02(alpha0)*c02(alpha0));
206  gslpp::complex denom = gslpp::complex(s - Mz*Mz, Mz*GammaZ0, false);
207  double Zprop = (1.0/denom).real();
208 
209  double epsilonbarGamma = - s/(Mw0(alpha0)*Mw0(alpha0))
210  *epsilonGammaGamma(alpha0, ObParam_i);
211  double epsilonbarZ = s*Zprop*DeltaEpsilon_1(alpha0, ObParam_i)
212  - s/(Mw0(alpha0)*Mw0(alpha0))*epsilonZZ(alpha0, ObParam_i);
213  double epsilonbarGammaZ = c0/s0*s*Zprop
214  *( DeltaEpsilon_1(alpha0, ObParam_i)
215  - DeltaEpsilon_2(alpha0, ObParam_i) )
216  - s0/c0*s*Zprop*DeltaEpsilon_3(alpha0, ObParam_i)
217  + s/(Mw0(alpha0)*Mw0(alpha0))
218  *epsilonGammaZ(alpha0, ObParam_i);
219 
220  return ( 2.0*Qe2*Qf2*epsilonbarGamma
221  + 2.0*ve*vf*Qe*Qf*(epsilonbarZ + s*epsilonbarGamma*Zprop)
222  + 2.0*(ve2 + ae2)*(vf2 + af2)*s*epsilonbarZ*Zprop
223  + 2.0*(vf*Qe2*Qf + ve*Qe*Qf2)*epsilonbarGammaZ
224  + 2.0*(ve*(vf2 + af2)*Qe + (ve2 + ae2)*vf*Qf)*s*epsilonbarGammaZ*Zprop );
225 }

◆ G1_q_NP()

double LEP2oblique::G1_q_NP ( const QCD::quark  q,
const double  s,
const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 238 of file LEP2oblique.cpp.

241 {
242  double Qf = SM.getQuarks(q).getCharge();
243  double vf = vq(q, alpha0), af = aq(q, alpha0);
244  return ( G1_NP(s, alpha0, Qf, vf, af, ObParam_i) );
245 }

◆ G1_q_SM0()

double LEP2oblique::G1_q_SM0 ( const QCD::quark  q,
const double  s,
const double  alpha0 
) const
private

Definition at line 324 of file LEP2oblique.cpp.

326 {
327  double Qf = SM.getQuarks(q).getCharge();
328  double vf = vq(q, alpha0), af = aq(q, alpha0);
329  return ( G1_SM0(s, alpha0, Qf, vf, af) );
330 }

◆ G1_SM0()

double LEP2oblique::G1_SM0 ( const double  s,
const double  alpha0,
const double  Qf,
const double  vf,
const double  af 
) const
private

Definition at line 297 of file LEP2oblique.cpp.

299 {
301  double ve = vl(StandardModel::ELECTRON, alpha0);
302  double ae = al(StandardModel::ELECTRON, alpha0);
303  double Qe2 = Qe*Qe, Qf2 = Qf*Qf;
304  double ve2 = ve*ve, vf2 = vf*vf, ae2 = ae*ae, af2 = af*af;
305  double Mz = SM.getMz();
306  double GammaZ0 = 7.0*alpha0*Mz/(16.0*s02(alpha0)*c02(alpha0));
307  gslpp::complex denom = gslpp::complex(s - Mz*Mz, Mz*GammaZ0, false);
308  gslpp::complex chiZ = s/denom;
309 
310  return ( Qe2*Qf2 + 2.0*ve*vf*Qe*Qf*chiZ.real()
311  + (ve2 + ae2)*(vf2 + af2)*chiZ.abs2() );
312 }

◆ G2_l_SM0()

double LEP2oblique::G2_l_SM0 ( const QCD::lepton  l,
const double  s,
const double  alpha0 
) const
private

Definition at line 351 of file LEP2oblique.cpp.

353 {
354  double Qf = SM.getLeptons(l).getCharge();
355  double vf = vl(l, alpha0), af = al(l, alpha0);
356  return ( G2_SM0(s, alpha0, Qf, vf, af) );
357 }

◆ G2_q_SM0()

double LEP2oblique::G2_q_SM0 ( const QCD::quark  q,
const double  s,
const double  alpha0 
) const
private

Definition at line 360 of file LEP2oblique.cpp.

362 {
363  double Qf = SM.getQuarks(q).getCharge();
364  double vf = vq(q, alpha0), af = aq(q, alpha0);
365  return ( G2_SM0(s, alpha0, Qf, vf, af) );
366 
367 }

◆ G2_SM0()

double LEP2oblique::G2_SM0 ( const double  s,
const double  alpha0,
const double  Qf,
const double  vf,
const double  af 
) const
private

Definition at line 333 of file LEP2oblique.cpp.

335 {
337  double ve = vl(StandardModel::ELECTRON, alpha0);
338  double ae = al(StandardModel::ELECTRON, alpha0);
339  double Qe2 = Qe*Qe, Qf2 = Qf*Qf;
340  double ve2 = ve*ve, vf2 = vf*vf, ae2 = ae*ae;
341  double Mz = SM.getMz();
342  double GammaZ0 = 7.0*alpha0*Mz/(16.0*s02(alpha0)*c02(alpha0));
343  gslpp::complex denom = gslpp::complex(s - Mz*Mz, Mz*GammaZ0, false);
344  gslpp::complex chiZ = s/denom;
345 
346  return ( Qe2*Qf2 + 2.0*ve*vf*Qe*Qf*chiZ.real()
347  + (ve2 + ae2)*vf2*chiZ.abs2() );
348 }

◆ G3_l_NP()

double LEP2oblique::G3_l_NP ( const QCD::lepton  l,
const double  s,
const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 277 of file LEP2oblique.cpp.

280 {
281  double Qf = SM.getLeptons(l).getCharge();
282  double vf = vl(l, alpha0), af = al(l, alpha0);
283  return ( G3_NP(s, alpha0, Qf, vf, af, ObParam_i) );
284 }

◆ G3_l_SM0()

double LEP2oblique::G3_l_SM0 ( const QCD::lepton  l,
const double  s,
const double  alpha0 
) const
private

Definition at line 385 of file LEP2oblique.cpp.

387 {
388  double Qf = SM.getLeptons(l).getCharge();
389  double vf = vl(l, alpha0), af = al(l, alpha0);
390  return ( G3_SM0(s, alpha0, Qf, vf, af) );
391 }

◆ G3_NP()

double LEP2oblique::G3_NP ( const double  s,
const double  alpha0,
const double  Qf,
const double  vf,
const double  af,
const double  ObParam_i[] 
) const
private

Definition at line 248 of file LEP2oblique.cpp.

251 {
252  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
254  double ve = vl(StandardModel::ELECTRON, alpha0);
255  double ae = al(StandardModel::ELECTRON, alpha0);
256  double Mz = SM.getMz();
257  double GammaZ0 = 7.0*alpha0*Mz/(16.0*s02(alpha0)*c02(alpha0));
258  gslpp::complex denom = gslpp::complex(s - Mz*Mz, Mz*GammaZ0, false);
259  double Zprop = (1.0/denom).real();
260 
261  double epsilonbarGamma = - s/(Mw0(alpha0)*Mw0(alpha0))
262  *epsilonGammaGamma(alpha0, ObParam_i);
263  double epsilonbarZ = s*Zprop*DeltaEpsilon_1(alpha0, ObParam_i)
264  - s/(Mw0(alpha0)*Mw0(alpha0))*epsilonZZ(alpha0, ObParam_i);
265  double epsilonbarGammaZ = c0/s0*s*Zprop*( DeltaEpsilon_1(alpha0, ObParam_i)
266  - DeltaEpsilon_2(alpha0, ObParam_i) )
267  - s0/c0*s*Zprop*DeltaEpsilon_3(alpha0, ObParam_i)
268  + s/(Mw0(alpha0)*Mw0(alpha0))
269  *epsilonGammaZ(alpha0, ObParam_i);
270 
271  return ( 2.0*ae*af*Qe*Qf*(epsilonbarZ + s*epsilonbarGamma*Zprop)
272  + 8.0*ve*ae*vf*af*s*epsilonbarZ*Zprop
273  + 4.0*(ae*vf*af*Qe + ve*ae*af*Qf)*s*epsilonbarGammaZ*Zprop );
274 }

◆ G3_q_NP()

double LEP2oblique::G3_q_NP ( const QCD::quark  q,
const double  s,
const double  alpha0,
const double  ObParam_i[] 
) const
private

Definition at line 287 of file LEP2oblique.cpp.

290 {
291  double Qf = SM.getQuarks(q).getCharge();
292  double vf = vq(q, alpha0), af = aq(q, alpha0);
293  return ( G3_NP(s, alpha0, Qf, vf, af, ObParam_i) );
294 }

◆ G3_q_SM0()

double LEP2oblique::G3_q_SM0 ( const QCD::quark  q,
const double  s,
const double  alpha0 
) const
private

Definition at line 394 of file LEP2oblique.cpp.

396 {
397  double Qf = SM.getQuarks(q).getCharge();
398  double vf = vq(q, alpha0), af = aq(q, alpha0);
399  return ( G3_SM0(s, alpha0, Qf, vf, af) );
400 }

◆ G3_SM0()

double LEP2oblique::G3_SM0 ( const double  s,
const double  alpha0,
const double  Qf,
const double  vf,
const double  af 
) const
private

Definition at line 370 of file LEP2oblique.cpp.

372 {
374  double ve = vl(StandardModel::ELECTRON, alpha0);
375  double ae = al(StandardModel::ELECTRON, alpha0);
376  double Mz = SM.getMz();
377  double GammaZ0 = 7.0*alpha0*Mz/(16.0*s02(alpha0)*c02(alpha0));
378  gslpp::complex denom = gslpp::complex(s - Mz*Mz, Mz*GammaZ0, false);
379  gslpp::complex chiZ = s/denom;
380 
381  return ( 2.0*ae*af*Qe*Qf*chiZ.real() + 4.0*ve*ae*vf*af*chiZ.abs2() );
382 }

◆ Mw0()

double LEP2oblique::Mw0 ( const double  alpha0) const
inlineprivate

Definition at line 68 of file LEP2oblique.h.

69  {
70  double Mz = SM.getMz();
71  return ( sqrt(c02(alpha0))*Mz );
72  }

◆ R_q_LEP2_NP()

double LEP2oblique::R_q_LEP2_NP ( const QCD::quark  q,
const double  s,
const double  mq,
const double  ObParam_i[] 
) const

Definition at line 83 of file LEP2oblique.cpp.

86 {
87  double alpha0 = alpha_at_s(s);
88  double sigma_q_SM0 = sigma_q_LEP2_SM0(q, s, alpha0, mq);
89  double sigma_had_SM0 = sigma_q_LEP2_SM0(QCD::UP, s, alpha0, mq)
90  + sigma_q_LEP2_SM0(QCD::DOWN, s, alpha0, mq)
91  + sigma_q_LEP2_SM0(QCD::CHARM, s, alpha0, mq)
92  + sigma_q_LEP2_SM0(QCD::STRANGE, s, alpha0, mq)
93  + sigma_q_LEP2_SM0(QCD::BOTTOM, s, alpha0, mq);
94  double sigma_q_NP = sigma_q_LEP2_NP(q, s, mq, ObParam_i);
95  double sigma_had_NP = sigma_q_LEP2_NP(QCD::UP, s, mq, ObParam_i)
96  + sigma_q_LEP2_NP(QCD::DOWN, s, mq, ObParam_i)
97  + sigma_q_LEP2_NP(QCD::CHARM, s, mq, ObParam_i)
98  + sigma_q_LEP2_NP(QCD::STRANGE, s, mq, ObParam_i)
99  + sigma_q_LEP2_NP(QCD::BOTTOM, s, mq, ObParam_i);
100 
101  return ( - sigma_q_SM0/(sigma_had_SM0*sigma_had_SM0)*sigma_had_NP
102  + sigma_q_NP/sigma_had_SM0 );
103 }

◆ s02()

double LEP2oblique::s02 ( const double  alpha0) const
inlineprivate

Definition at line 74 of file LEP2oblique.h.

75  {
76 
77  throw std::runtime_error("Error in LEP2oblique::s02() needs to be modified with sW2 in the SM!");
78 
79  double GF = SM.getGF();
80  double Mz = SM.getMz();
81  return ( ( 1.0 - sqrt(1.0 - 4.0*M_PI*alpha0/sqrt(2.0)/GF/Mz/Mz) )/2.0 );
82  }

◆ sigma_l_LEP2_NP()

double LEP2oblique::sigma_l_LEP2_NP ( const QCD::lepton  l,
const double  s,
const double  ml,
const double  ObParam_i[] 
) const

Definition at line 19 of file LEP2oblique.cpp.

22 {
23  double alpha0 = alpha_at_s(s);
24  double Ncf = 1.0;
25  double betaf = sqrt(1.0 - 4.0*ml*ml/s);
26  double G1NP = G1_l_NP(l, s, alpha0, ObParam_i);
27 
28  return ( 4.0*M_PI*alpha0*alpha0/(3.0*s)*Ncf*betaf*G1NP );
29 }

◆ sigma_l_LEP2_SM0()

double LEP2oblique::sigma_l_LEP2_SM0 ( const QCD::lepton  l,
const double  s,
const double  alpha0,
const double  ml 
) const
private

Definition at line 403 of file LEP2oblique.cpp.

406 {
407  double Ncf = 1.0;
408  double mf2 = ml*ml;
409  double betaf = sqrt(1.0 - 4.0*mf2/s);
410  double G1SM0 = G1_l_SM0(l, s, alpha0), G2SM0 = G2_l_SM0(l, s, alpha0);
411 
412  return ( 4.0*M_PI*alpha0*alpha0/(3.0*s)*Ncf*betaf
413  *(G1SM0 + 2.0*mf2/s*G2SM0) );
414 }

◆ sigma_q_LEP2_NP()

double LEP2oblique::sigma_q_LEP2_NP ( const QCD::quark  q,
const double  s,
const double  mq,
const double  ObParam_i[] 
) const

Definition at line 32 of file LEP2oblique.cpp.

35 {
36  double alpha0 = alpha_at_s(s);
37  double Ncf = 3.0;
38  double betaf = sqrt(1.0 - 4.0*mq*mq/s);
39  double G1NP = G1_q_NP(q, s, alpha0, ObParam_i);
40 
41  return ( 4.0*M_PI*alpha0*alpha0/(3.0*s)*Ncf*betaf*G1NP );
42 }

◆ sigma_q_LEP2_SM0()

double LEP2oblique::sigma_q_LEP2_SM0 ( const QCD::quark  q,
const double  s,
const double  alpha0,
const double  mq 
) const
private

Definition at line 417 of file LEP2oblique.cpp.

420 {
421  double Ncf = 3.0;
422  double mf2 = mq*mq;
423  double betaf = sqrt(1.0 - 4.0*mf2/s);
424  double G1SM0 = G1_q_SM0(q, s, alpha0), G2SM0 = G2_q_SM0(q, s, alpha0);
425 
426  return ( 4.0*M_PI*alpha0*alpha0/(3.0*s)*Ncf*betaf
427  *(G1SM0 + 2.0*mf2/s*G2SM0) );
428 }

◆ vl()

double LEP2oblique::vl ( const QCD::lepton  l,
const double  alpha0 
) const
private

Definition at line 162 of file LEP2oblique.cpp.

163 {
164  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
165  double Q = SM.getLeptons(l).getCharge();
166  return ( - (SM.getLeptons(l).getIsospin()
167  - 2.0*Q*s02(alpha0))/(2.0*s0*c0) );
168 }

◆ vq()

double LEP2oblique::vq ( const QCD::quark  q,
const double  alpha0 
) const
private

Definition at line 171 of file LEP2oblique.cpp.

172 {
173  double c0 = sqrt(c02(alpha0)), s0 = sqrt(s02(alpha0));
174  double Q = SM.getQuarks(q).getCharge();
175  return ( - (SM.getQuarks(q).getIsospin()
176  - 2.0*Q*s02(alpha0))/(2.0*s0*c0) );
177 }

Member Data Documentation

◆ SM

const StandardModel& LEP2oblique::SM
private

Definition at line 52 of file LEP2oblique.h.


The documentation for this class was generated from the following files:
LEP2oblique::Shat
Definition: LEP2oblique.h:25
LEP2oblique::G3_NP
double G3_NP(const double s, const double alpha0, const double Qf, const double vf, const double af, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:248
LEP2oblique::vl
double vl(const QCD::lepton l, const double alpha0) const
Definition: LEP2oblique.cpp:162
QCD::BOTTOM
Definition: QCD.h:329
LEP2oblique::DeltaEpsilon_1
double DeltaEpsilon_1(const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:108
LEP2oblique::G3_q_SM0
double G3_q_SM0(const QCD::quark q, const double s, const double alpha0) const
Definition: LEP2oblique.cpp:394
LEP2oblique::epsilonGammaZ
double epsilonGammaZ(const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:153
LEP2oblique::G1_l_SM0
double G1_l_SM0(const QCD::lepton l, const double s, const double alpha0) const
Definition: LEP2oblique.cpp:315
LEP2oblique::G3_l_NP
double G3_l_NP(const QCD::lepton l, const double s, const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:277
LEP2oblique::G2_q_SM0
double G2_q_SM0(const QCD::quark q, const double s, const double alpha0) const
Definition: LEP2oblique.cpp:360
QCD::UP
Definition: QCD.h:324
LEP2oblique::sigma_q_LEP2_SM0
double sigma_q_LEP2_SM0(const QCD::quark q, const double s, const double alpha0, const double mq) const
Definition: LEP2oblique.cpp:417
LEP2oblique::epsilonZZ
double epsilonZZ(const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:135
LEP2oblique::Uhat
Definition: LEP2oblique.h:25
QCD::CHARM
Definition: QCD.h:326
LEP2oblique::sigma_q_LEP2_NP
double sigma_q_LEP2_NP(const QCD::quark q, const double s, const double mq, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:32
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
LEP2oblique::al
double al(const QCD::lepton l, const double alpha0) const
Definition: LEP2oblique.cpp:180
LEP2oblique::That
Definition: LEP2oblique.h:25
QCD::ELECTRON
Definition: QCD.h:312
LEP2oblique::G1_SM0
double G1_SM0(const double s, const double alpha0, const double Qf, const double vf, const double af) const
Definition: LEP2oblique.cpp:297
Particle::getIsospin
double getIsospin() const
A get method to access the particle isospin.
Definition: Particle.h:115
gslpp::complex::abs2
double abs2() const
Definition: gslpp_complex.cpp:86
LEP2oblique::s02
double s02(const double alpha0) const
Definition: LEP2oblique.h:74
LEP2oblique::G1_q_NP
double G1_q_NP(const QCD::quark q, const double s, const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:238
LEP2oblique::SM
const StandardModel & SM
Definition: LEP2oblique.h:52
LEP2oblique::aq
double aq(const QCD::quark q, const double alpha0) const
Definition: LEP2oblique.cpp:187
LEP2oblique::G1_l_NP
double G1_l_NP(const QCD::lepton l, const double s, const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:228
LEP2oblique::Y
Definition: LEP2oblique.h:25
StandardModel::ale_OS
double ale_OS(const double mu, orders order=FULLNLO) const
The running electromagnetic coupling in the on-shell scheme.
Definition: StandardModel.cpp:533
LEP2oblique::X
Definition: LEP2oblique.h:25
LEP2oblique::G2_SM0
double G2_SM0(const double s, const double alpha0, const double Qf, const double vf, const double af) const
Definition: LEP2oblique.cpp:333
LEP2oblique::V
Definition: LEP2oblique.h:25
LEP2oblique::c02
double c02(const double alpha0) const
Definition: LEP2oblique.h:84
StandardModel::getGF
double getGF() const
A get method to retrieve the Fermi constant .
Definition: StandardModel.h:739
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
Particle::getCharge
double getCharge() const
A get method to access the particle charge.
Definition: Particle.h:97
LEP2oblique::DeltaEpsilon_2
double DeltaEpsilon_2(const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:117
QCD::getQuarks
Particle getQuarks(const QCD::quark q) const
A get method to access a quark as an object of the type Particle.
Definition: QCD.h:534
LEP2oblique::epsilonGammaGamma
double epsilonGammaGamma(const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:144
LEP2oblique::alpha_at_s
double alpha_at_s(const double s) const
Definition: LEP2oblique.h:62
LEP2oblique::G3_l_SM0
double G3_l_SM0(const QCD::lepton l, const double s, const double alpha0) const
Definition: LEP2oblique.cpp:385
StandardModel::getMz
double getMz() const
A get method to access the mass of the boson .
Definition: StandardModel.h:721
QCD::STRANGE
Definition: QCD.h:327
gslpp::complex::real
const double & real() const
Definition: gslpp_complex.cpp:53
LEP2oblique::G1_NP
double G1_NP(const double s, const double alpha0, const double Qf, const double vf, const double af, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:194
LEP2oblique::G1_q_SM0
double G1_q_SM0(const QCD::quark q, const double s, const double alpha0) const
Definition: LEP2oblique.cpp:324
LEP2oblique::DeltaEpsilon_3
double DeltaEpsilon_3(const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:126
LEP2oblique::W
Definition: LEP2oblique.h:25
LEP2oblique::G3_q_NP
double G3_q_NP(const QCD::quark q, const double s, const double alpha0, const double ObParam_i[]) const
Definition: LEP2oblique.cpp:287
LEP2oblique::vq
double vq(const QCD::quark q, const double alpha0) const
Definition: LEP2oblique.cpp:171
QCD::DOWN
Definition: QCD.h:325
LEP2oblique::G3_SM0
double G3_SM0(const double s, const double alpha0, const double Qf, const double vf, const double af) const
Definition: LEP2oblique.cpp:370
FULLNLO
Definition: OrderScheme.h:37
LEP2oblique::G2_l_SM0
double G2_l_SM0(const QCD::lepton l, const double s, const double alpha0) const
Definition: LEP2oblique.cpp:351
LEP2oblique::Mw0
double Mw0(const double alpha0) const
Definition: LEP2oblique.h:68
StandardModel::getLeptons
Particle getLeptons(const QCD::lepton p) const
A get method to retrieve the member object of a lepton.
Definition: StandardModel.h:712