a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
NPbase.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2013 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "NPbase.h"
9 
11 : StandardModel(), trueSM()
12 {
14  trueSM.setSliced(true);
15 }
16 
17 bool NPbase::Update(const std::map<std::string, double>& DPars)
18 {
19  if (!trueSM.Update(DPars)) return (false);
20  return StandardModel::Update(DPars);
21 }
22 
24 {
26 }
27 
28 double NPbase::Mw() const
29 {
30  double myMw = trueSM.Mw();
31 
32  double alpha = trueSM.alphaMz();
33  double c2 = trueSM.cW2();
34  double s2 = trueSM.sW2();
35 
36  myMw *= 1.0 - alpha / 4.0 / (c2 - s2)
37  *(obliqueS() - 2.0 * c2 * obliqueT() - (c2 - s2) * obliqueU() / 2.0 / s2)
38  - s2 / 2.0 / (c2 - s2) * DeltaGF();
39 
40  //std::cout << "Mw: c_S=" << - alpha/4.0/(c2-s2) << std::endl;
41  //std::cout << "Mw: c_T=" << - alpha/4.0/(c2-s2)*(- 2.0*c2) << std::endl;
42  //std::cout << "Mw: c_U=" << - alpha/4.0/(c2-s2)*(- (c2-s2)/2.0/s2) << std::endl;
43 
44  return myMw;
45 }
46 
47 double NPbase::GammaW(const Particle fi, const Particle fj) const
48 {
49  double Gamma_Wij = trueSM.GammaW(fi, fj);
50 
51  double alpha = trueSM.alphaMz();
52  double c2 = trueSM.cW2();
53  double s2 = trueSM.sW2();
54 
55  Gamma_Wij *= 1.0 - 3.0 * alpha / 4.0 / (c2 - s2)
56  *(obliqueS() - 2.0 * c2 * obliqueT() - (c2 - s2) * obliqueU() / 2.0 / s2)
57  - (1.0 + c2) / 2.0 / (c2 - s2) * DeltaGF();
58 
59  //std::cout << "Gw: c_S=" << - 3.0*alpha/4.0/(c2-s2) << std::endl;
60  //std::cout << "Gw: c_T=" << - 3.0*alpha/4.0/(c2-s2)*(- 2.0*c2) << std::endl;
61  //std::cout << "Gw: c_U=" << - 3.0*alpha/4.0/(c2-s2)*(- (c2-s2)/2.0/s2) << std::endl;
62 
63  return Gamma_Wij;
64 }
65 
66 double NPbase::GammaW() const
67 {
68  double Gamma_W = trueSM.GammaW();
69 
70  double alpha = trueSM.alphaMz();
71  double c2 = trueSM.cW2();
72  double s2 = trueSM.sW2();
73 
74  Gamma_W *= 1.0 - 3.0 * alpha / 4.0 / (c2 - s2)
75  *(obliqueS() - 2.0 * c2 * obliqueT() - (c2 - s2) * obliqueU() / 2.0 / s2)
76  - (1.0 + c2) / 2.0 / (c2 - s2) * DeltaGF();
77 
78  //std::cout << "Gw: c_S=" << - 3.0*alpha/4.0/(c2-s2) << std::endl;
79  //std::cout << "Gw: c_T=" << - 3.0*alpha/4.0/(c2-s2)*(- 2.0*c2) << std::endl;
80  //std::cout << "Gw: c_U=" << - 3.0*alpha/4.0/(c2-s2)*(- (c2-s2)/2.0/s2) << std::endl;
81 
82  return Gamma_W;
83 }
84 
85 double NPbase::deltaGV_f(const Particle f) const
86 {
87  if (f.is("TOP")) return 0.;
88 
89  /* SM values */
90  double alpha = trueSM.alphaMz();
91  double sW2SM = trueSM.sW2();
92  double cW2SM = trueSM.cW2();
93  double gVSM = trueSM.gV_f(f).real();
94  double gASM = trueSM.gA_f(f).real();
95 
96  return ( gVSM * (alpha * obliqueT() - DeltaGF()) / 2.0
97  + (gVSM - gASM) / 4.0 / sW2SM / (cW2SM - sW2SM)
98  *(alpha * (obliqueS() - 4.0 * cW2SM * sW2SM * obliqueT())
99  + 4.0 * cW2SM * sW2SM * DeltaGF()));
100 }
101 
103 {
104  return ( trueSM.gV_f(f) + deltaGV_f(f));
105 }
106 
107 double NPbase::deltaGA_f(const Particle f) const
108 {
109  if (f.is("TOP")) return 0.;
110  /* SM values */
111  double alpha = trueSM.alphaMz();
112  double gASM = trueSM.gA_f(f).real();
113 
114  return ( gASM * (alpha * obliqueT() - DeltaGF()) / 2.0);
115 }
116 
118 {
119  return ( trueSM.gA_f(f) + deltaGA_f(f));
120 }
121 
123 {
124  return ( gA_f(f) * gA_f(f) / f.getIsospin() / f.getIsospin());
125 
126 }
127 
129 {
130  return ( (1.0 - gV_f(f) / gA_f(f)) / (4.0 * fabs(f.getCharge()) * sW2()));
131 }
132 
134 
135 double NPbase::deltaGamma_Zf(const Particle f) const
136 {
137  double deltaGamma_Zf = 0.;
138  bool nonZeroNP = false;
139 
140  double delGVf = deltaGV_f(f);
141  double delGAf = deltaGA_f(f);
142 
143  double gVf = trueSM.gV_f(f).real();
144  double gAf = trueSM.gA_f(f).real();
145 
146  double Nf;
147 
148  if (f.is("LEPTON")) {
149  Nf = 1.0;
150  } else {
151  Nf = 3.0;
152  }
153 
154  double sW2_SM = trueSM.sW2();
155  double cW2_SM = trueSM.cW2();
156 
157  if (delGVf != 0.0 || delGAf != 0.0)
158  nonZeroNP = true;
159 
160  if (nonZeroNP) {
161  double delGammaZf = 0.0;
162  delGammaZf = 2.0 * Nf * (gVf * delGVf + gAf * delGAf);
163 
164  deltaGamma_Zf = alphaMz() * Mz / 12.0 / sW2_SM / cW2_SM * delGammaZf;
165  }
166 
167  return deltaGamma_Zf;
168 }
169 
170 double NPbase::Gamma_Zf(const Particle f) const
171 {
172  return (trueSM.GammaZ(f) + deltaGamma_Zf(f));
173 }
174 
175 
176 double NPbase::deltaGamma_Z() const
177 {
178  double deltaGamma_Z = 0.;
179  bool nonZeroNP = false;
180 
181  double delGVl[6], delGAl[6], delGVq[6], delGAq[6];
182  for (int p = 0; p < 6; ++p) {
183  delGVl[p] = deltaGV_f(leptons[p]);
184  delGAl[p] = deltaGA_f(leptons[p]);
185  delGVq[p] = deltaGV_f(quarks[p]);
186  delGAq[p] = deltaGA_f(quarks[p]);
187  if (delGVl[p] != 0.0 || delGAl[p] != 0.0
188  || delGVq[p] != 0.0 || delGAq[p] != 0.0)
189  nonZeroNP = true;
190  }
191 
192  if (nonZeroNP) {
193  double gVf, gAf;
194  double deltaGl[6], deltaGq[6];
195  double delGammaZ = 0.0;
196  for (int p = 0; p < 6; ++p) {
197  gVf = trueSM.gV_f(leptons[p]).real();
198  gAf = trueSM.gA_f(leptons[p]).real();
199  deltaGl[p] = 2.0 * (gVf * delGVl[p] + gAf * delGAl[p]);
200 
201  gVf = trueSM.gV_f(quarks[p]).real();
202  gAf = trueSM.gA_f(quarks[p]).real();
203  deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
204 
205  delGammaZ += deltaGl[p] + 3.0 * deltaGq[p];
206  }
207 
208  double sW2_SM = trueSM.sW2();
209  double cW2_SM = trueSM.cW2();
210  deltaGamma_Z = alphaMz() * Mz / 12.0 / sW2_SM / cW2_SM
211  * delGammaZ;
212  }
213 
214  return deltaGamma_Z;
215 }
216 
217 double NPbase::Gamma_Z() const
218 {
219  return (trueSM.Gamma_Z() + deltaGamma_Z());
220 }
221 
223 {
224  double deltaGamma_Zhad = 0.;
225  bool nonZeroNP = false;
226 
227  double delGVq[6], delGAq[6];
228  for (int p = 0; p < 6; ++p) {
229  delGVq[p] = deltaGV_f(quarks[p]);
230  delGAq[p] = deltaGA_f(quarks[p]);
231  if (delGVq[p] != 0.0 || delGAq[p] != 0.0)
232  nonZeroNP = true;
233  }
234 
235  if (nonZeroNP) {
236  double gVf, gAf;
237  double deltaGq[6];
238  double delGammaZhad = 0.0;
239  for (int p = 0; p < 6; ++p) {
240 
241  gVf = trueSM.gV_f(quarks[p]).real();
242  gAf = trueSM.gA_f(quarks[p]).real();
243  deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
244 
245  delGammaZhad += 3.0 * deltaGq[p];
246  }
247 
248  double sW2_SM = trueSM.sW2();
249  double cW2_SM = trueSM.cW2();
250  deltaGamma_Zhad = alphaMz() * Mz / 12.0 / sW2_SM / cW2_SM
251  * delGammaZhad;
252  }
253 
254  return deltaGamma_Zhad;
255 }
256 
257 double NPbase::Gamma_had() const
258 {
259  return (trueSM.Gamma_had() + deltaGamma_Zhad());
260 }
261 
262 double NPbase::BR_Zf(const Particle f) const
263 {
264  double delGammaZTot = deltaGamma_Z();
265  double delGammaZf = deltaGamma_Zf(f);
266 
267  double GammaZTotSM = trueSM.Gamma_Z();
268  double GammaZfSM = trueSM.GammaZ(f);
269 
270  return (GammaZfSM/GammaZTotSM + delGammaZf/GammaZTotSM - GammaZfSM * delGammaZTot /GammaZTotSM/GammaZTotSM);
271 }
272 
274 {
275  double sigma_had = 0.;
276  bool nonZeroNP = false;
277 
278  double delGVl[6], delGAl[6], delGVq[6], delGAq[6];
279  for (int p = 0; p < 6; ++p) {
280  delGVl[p] = deltaGV_f(leptons[p]);
281  delGAl[p] = deltaGA_f(leptons[p]);
282  delGVq[p] = deltaGV_f(quarks[p]);
283  delGAq[p] = deltaGA_f(quarks[p]);
284  if (delGVl[p] != 0.0 || delGAl[p] != 0.0
285  || delGVq[p] != 0.0 || delGAq[p] != 0.0)
286  nonZeroNP = true;
287  }
288 
289  if (nonZeroNP) {
290  double gVf, gAf;
291  double Gl[6], deltaGl[6], Gq[6], deltaGq[6];
292  double Gq_sum = 0.0, delGq_sum = 0.0;
293  double Gf_sum = 0.0, delGf_sum = 0.0;
294  for (int p = 0; p < 6; ++p) {
295  gVf = trueSM.gV_f(leptons[p]).real();
296  gAf = trueSM.gA_f(leptons[p]).real();
297  Gl[p] = gVf * gVf + gAf*gAf;
298  deltaGl[p] = 2.0 * (gVf * delGVl[p] + gAf * delGAl[p]);
299 
300  gVf = trueSM.gV_f(quarks[p]).real();
301  gAf = trueSM.gA_f(quarks[p]).real();
302  Gq[p] = gVf * gVf + gAf*gAf;
303  deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
304 
305  Gq_sum += 3.0 * Gq[p];
306  Gf_sum += Gl[p] + 3.0 * Gq[p];
307  delGq_sum += 3.0 * deltaGq[p];
308  delGf_sum += deltaGl[p] + 3.0 * deltaGq[p];
309  }
310 
311  sigma_had = 12.0 * M_PI / Mz / Mz
312  * Gl[ELECTRON] * Gq_sum / Gf_sum / Gf_sum
313  * (deltaGl[ELECTRON] / Gl[ELECTRON]
314  + delGq_sum / Gq_sum - 2.0 * delGf_sum / Gf_sum);
315  }
316 
317  return sigma_had;
318 }
319 
320 double NPbase::sigma0_had() const
321 {
322  return (trueSM.sigma0_had() + deltaSigmaHadron());
323 }
324 
326 {
327  double sin2_theta_eff = 0.;
328  double delGVf = deltaGV_f(leptons[ELECTRON]);
329  double delGAf = deltaGA_f(leptons[ELECTRON]);
330  if (delGVf != 0.0 || delGAf != 0.0) {
331  double gVf = trueSM.gV_f(leptons[ELECTRON]).real();
332  double gAf = trueSM.gA_f(leptons[ELECTRON]).real();
333  double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
334 
335  sin2_theta_eff = -delGVfOverGAf / 4.0;
336  }
337  return sin2_theta_eff;
338 }
339 
341 {
342  double sin2_theta_eff = 0.;
343  double delGVf = deltaGV_f(leptons[MU]);
344  double delGAf = deltaGA_f(leptons[MU]);
345  if (delGVf != 0.0 || delGAf != 0.0) {
346  double gVf = trueSM.gV_f(leptons[MU]).real();
347  double gAf = trueSM.gA_f(leptons[MU]).real();
348  double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
349 
350  sin2_theta_eff = -delGVfOverGAf / 4.0;
351  }
352  return sin2_theta_eff;
353 }
354 
355 double NPbase::sin2thetaEff(const Particle f) const
356 {
357  if (f.is("ELECTRON"))
358  return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e());
359  else if (f.is("MU"))
360  return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu());
361  else
362  return (trueSM.sin2thetaEff(f));
363 }
364 
365 double NPbase::deltaA_f(const Particle f) const
366 {
367  double dAf = 0.;
368  double delGVf = deltaGV_f(f);
369  double delGAf = deltaGA_f(f);
370  if (delGVf != 0.0 || delGAf != 0.0) {
371  double gVf = trueSM.gV_f(f).real();
372  double gAf = trueSM.gA_f(f).real();
373  double Gf = gVf * gVf + gAf*gAf;
374  double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
375 
376  dAf = -2.0 * (gVf * gVf - gAf * gAf) * gAf * gAf / Gf / Gf*delGVfOverGAf;
377  }
378 
379  return dAf;
380 }
381 
382 double NPbase::A_f(const Particle f) const
383 {
384  return (trueSM.A_f(f) + deltaA_f(f));
385 }
386 
387 double NPbase::deltaAFB(const Particle f) const
388 {
389  double dAFB = 0.;
390  double delGVf = deltaGV_f(f);
391  double delGAf = deltaGA_f(f);
392  if (f.is("ELECTRON")) {
393  if (delGVf != 0.0 || delGAf != 0.0) {
394  double gVe = trueSM.gV_f(f).real();
395  double gAe = trueSM.gA_f(f).real();
396  double Ge = gVe * gVe + gAe*gAe;
397  double delGVeOverGAe = (gAe * delGVf - gVe * delGAf) / gAe / gAe;
398  dAFB = -6.0 * gVe * gAe * (gVe * gVe - gAe * gAe) * gAe * gAe / Ge / Ge / Ge*delGVeOverGAe;
399  }
400  } else {
401  double delGVe = deltaGV_f(leptons[ELECTRON]);
402  double delGAe = deltaGA_f(leptons[ELECTRON]);
403  if (delGVe != 0.0 || delGAe != 0.0 || delGVf != 0.0 || delGAf != 0.0) {
404  double gVe = trueSM.gV_f(leptons[ELECTRON]).real();
405  double gAe = trueSM.gA_f(leptons[ELECTRON]).real();
406  double Ge = gVe * gVe + gAe*gAe;
407  double delGVeOverGAe = (gAe * delGVe - gVe * delGAe) / gAe / gAe;
408  //
409  double gVf = trueSM.gV_f(f).real();
410  double gAf = trueSM.gA_f(f).real();
411  double Gf = gVf * gVf + gAf*gAf;
412  double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
413 
414  dAFB = -(3.0 * gVf * gAf * (gVe * gVe - gAe * gAe) * gAe * gAe / Gf / Ge / Ge * delGVeOverGAe
415  + 3.0 * gVe * gAe * (gVf * gVf - gAf * gAf) * gAf * gAf / Ge / Gf / Gf * delGVfOverGAf);
416  }
417  }
418 
419  return dAFB;
420 }
421 
422 double NPbase::AFB(const Particle f) const
423 {
424  return (trueSM.AFB(f) + deltaAFB(f));
425 }
426 
427 double NPbase::deltaR0_f(const Particle f) const
428 {
429  double dR0_f = 0., delGVl = 0., delGAl = 0., deltaGl = 0., Gl = 0.;
430  bool nonZeroNP = false;
431  if (f.is("LEPTON")) {
432  delGVl = deltaGV_f(f);
433  delGAl = deltaGA_f(f);
434  if (delGVl != 0.0 || delGAl != 0.0) nonZeroNP = true;
435  }
436 
437  double delGVq[6], delGAq[6];
438  for (int q = 0; q < 6; ++q) {
439  delGVq[q] = deltaGV_f(quarks[q]);
440  delGAq[q] = deltaGA_f(quarks[q]);
441  if (delGVq[q] != 0.0 || delGAq[q] != 0.0) nonZeroNP = true;
442  }
443 
444  if (nonZeroNP) {
445  double CF = 1.;
446  if (f.is("LEPTON")) {
447  double gVl = trueSM.gV_f(f).real();
448  double gAl = trueSM.gA_f(f).real();
449  Gl = gVl * gVl + gAl*gAl;
450  deltaGl = 2.0 * (gVl * delGVl + gAl * delGAl);
451  CF = 3.;
452  }
453  double Gq[6], deltaGq[6];
454  double gVq, gAq;
455  double Gq_sum = 0.0, delGq_sum = 0.0;
456  for (int q = 0; q < 6; ++q) {
457  gVq = trueSM.gV_f(quarks[q]).real();
458  gAq = trueSM.gA_f(quarks[q]).real();
459  Gq[q] = gVq * gVq + gAq*gAq;
460  deltaGq[q] = 2.0 * (gVq * delGVq[q] + gAq * delGAq[q]);
461 
462  Gq_sum += CF * Gq[q];
463  delGq_sum += CF * deltaGq[q];
464  }
465  if (f.is("LEPTON"))
466  if ( f.is("NEUTRINO_1") || f.is("NEUTRINO_2") || f.is("NEUTRINO_3") ) {
467  dR0_f = deltaGl / Gq_sum - Gl * delGq_sum / Gq_sum / Gq_sum;
468  } else {
469  dR0_f = delGq_sum / Gl - Gq_sum * deltaGl / Gl / Gl;
470  }
471  else
472  dR0_f = deltaGq[f.getIndex() - 6] / Gq_sum
473  - Gq[f.getIndex() - 6] * delGq_sum / Gq_sum / Gq_sum;
474  }
475  return dR0_f;
476 }
477 
478 double NPbase::R0_f(const Particle f) const
479 {
480  return (trueSM.R0_f(f) + deltaR0_f(f));
481 }
482 
483 double NPbase::deltaR_inv() const
484 {
485  double dR_inv = 0., delGVe = 0., delGAe = 0., deltaGe = 0., Ge = 0.;
486  bool nonZeroNP = false;
487 
488  delGVe = deltaGV_f(leptons[ELECTRON]);
489  delGAe = deltaGA_f(leptons[ELECTRON]);
490  if (delGVe != 0.0 || delGAe != 0.0) nonZeroNP = true;
491 
492  double delGVnu[3], delGAnu[3];
493  for (int p = 0; p < 3; ++p) {
494  delGVnu[p] = deltaGV_f(leptons[2*p]);
495  delGAnu[p] = deltaGA_f(leptons[2*p]);
496  if (delGVnu[p] != 0.0 || delGAnu[p] != 0.0 ) nonZeroNP = true;
497  }
498 
499  if (nonZeroNP) {
500 
501  double gVe = trueSM.gV_f(leptons[ELECTRON]).real();
502  double gAe = trueSM.gA_f(leptons[ELECTRON]).real();
503  Ge = gVe * gVe + gAe * gAe;
504  deltaGe = 2.0 * (gVe * delGVe + gAe * delGAe);
505 
506  double Gnu[3], deltaGnu[3];
507  double gVnu, gAnu;
508  double Gnu_sum = 0.0, delGnu_sum = 0.0;
509  for (int p = 0; p < 3; ++p) {
510  gVnu = trueSM.gV_f(leptons[2*p]).real();
511  gAnu = trueSM.gA_f(leptons[2*p]).real();
512 
513 
514  Gnu[p] = gVnu * gVnu + gAnu * gAnu;
515 
516  deltaGnu[p] = 2.0 * (gVnu * delGVnu[p] + gAnu * delGAnu[p]);
517 
518  Gnu_sum += Gnu[p];
519  delGnu_sum += deltaGnu[p];
520  }
521 
522  dR_inv = delGnu_sum / Ge - Gnu_sum * deltaGe / Ge / Ge;
523  }
524  return dR_inv;
525 }
526 
527 double NPbase::R_inv() const
528 {
529  return ( trueSM.R_inv() + deltaR_inv() );
530 }
531 
532 
533 double NPbase::deltaN_nu() const
534 {
535  double dNnu = 0.0;
536  double dGl1, dGl2, dGl3, dGl, dGinv;
537  double Gl1, Gl2, Gl3, Gl, Ginv;
538  double dRl1, dRl2, dRl3, dRl;
539  double Rl1, Rl2, Rl3, Rl;
540  double shad0;
541 
542  dGl1 = deltaGamma_Zf(leptons[ELECTRON]);
543  dGl2 = deltaGamma_Zf(leptons[MU]);
544  dGl3 = deltaGamma_Zf(leptons[TAU]);
545 
546  dGl = (1.0/3.0) * (dGl1 + dGl2 + dGl3);
547 
548  Gl1 = trueSM.GammaZ(leptons[ELECTRON]);
549  Gl2 = trueSM.GammaZ(leptons[MU]);
550  Gl3 = trueSM.GammaZ(leptons[TAU]);
551 
552  Gl = (1.0/3.0) * (Gl1 + Gl2 + Gl3);
553 
554  dGinv = deltaGamma_Zf(leptons[NEUTRINO_1]) +
557 
558  Ginv = trueSM.GammaZ(leptons[NEUTRINO_1]) +
561 
562  dRl1 = deltaR0_f(leptons[ELECTRON]);
563  dRl2 = deltaR0_f(leptons[MU]);
564  dRl3 = deltaR0_f(leptons[TAU]);
565 
566  dRl = (1.0/3.0) * (dRl1 + dRl2 + dRl3);
567 
568  Rl1 = trueSM.R0_f(leptons[ELECTRON]);
569  Rl2 = trueSM.R0_f(leptons[MU]);
570  Rl3 = trueSM.R0_f(leptons[TAU]);
571 
572  Rl = (1.0/3.0) * (Rl1 + Rl2 + Rl3);
573 
574  shad0 = trueSM.sigma0_had();
575 
576  dNnu = (trueSM.N_nu())*( dGl/Gl - dGinv/Ginv ) -
577  3.0*(Gl/Ginv)*dRl +
578  (Gl/Ginv)*sqrt(3.0*M_PI*Rl/Mz/Mz/shad0)*(-3.0*deltaSigmaHadron()/shad0 + 3.0* dRl/Rl);
579 
580  return dNnu;
581 }
582 
583 double NPbase::N_nu() const
584 {
585  return ( trueSM.N_nu() + deltaN_nu() );
586 }
QCD::TAU
Definition: QCD.h:316
NPbase::AFB
virtual double AFB(const Particle f) const
The forward-backward asymmetry in at the -pole, .
Definition: NPbase.cpp:422
NPbase::obliqueS
virtual double obliqueS() const
The oblique parameter .
Definition: NPbase.h:120
QCD::NEUTRINO_3
Definition: QCD.h:315
StandardModel::cW2
virtual double cW2(const double Mw_i) const
The square of the cosine of the weak mixing angle in the on-shell scheme, denoted as .
Definition: StandardModel.cpp:989
Particle::is
bool is(std::string name_i) const
Definition: Particle.cpp:23
Particle
A class for particles.
Definition: Particle.h:26
NPbase::Gamma_Zf
virtual double Gamma_Zf(const Particle f) const
The decay width of the boson into a given fermion pair, .
Definition: NPbase.cpp:170
NPbase::Gamma_Z
virtual double Gamma_Z() const
The total decay width of the boson, .
Definition: NPbase.cpp:217
NPbase::NPbase
NPbase()
The default constructor.
Definition: NPbase.cpp:10
QCD::Nf
double Nf(const double mu) const
The number of active flavour at scale .
Definition: QCD.cpp:438
NPbase.h
NPbase::BR_Zf
virtual double BR_Zf(const Particle f) const
The Branching ratio of the boson into a given fermion pair, .
Definition: NPbase.cpp:262
NPbase::kappaZ_f
virtual gslpp::complex kappaZ_f(const Particle f) const
The effective neutral-current coupling including SM plus NP contributions.
Definition: NPbase.cpp:128
StandardModel::A_f
virtual double A_f(const Particle f) const
The left-right asymmetry in at the -pole, .
Definition: StandardModel.cpp:1183
StandardModel::sigma0_had
virtual double sigma0_had() const
The hadronic cross section for at the -pole, .
Definition: StandardModel.cpp:1344
StandardModel::alphaMz
double alphaMz() const
The electromagnetic coupling at the -mass scale, .
Definition: StandardModel.cpp:867
NPbase::DeltaGF
virtual double DeltaGF() const
New physics contribution to the Fermi constant.
Definition: NPbase.h:109
NPbase::N_nu
virtual double N_nu() const
The number of neutrinos dervied from the pole measurements, .
Definition: NPbase.cpp:583
NPbase::deltaGamma_Z
virtual double deltaGamma_Z() const
The new physics contribution to the total decay width of the boson, .
Definition: NPbase.cpp:176
NPbase::deltaGA_f
virtual double deltaGA_f(const Particle f) const
New physics contribution to the neutral-current axial-vector coupling .
Definition: NPbase.cpp:107
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
NPbase::deltaSin2thetaEff_mu
virtual double deltaSin2thetaEff_mu() const
The new physics contribution to the effective muonic weak angle at the pole.
Definition: NPbase.cpp:340
QCD::NEUTRINO_2
Definition: QCD.h:313
NPbase::sigma0_had
virtual double sigma0_had() const
The cross section for the process at the pole, .
Definition: NPbase.cpp:320
QCD::ELECTRON
Definition: QCD.h:312
Particle::getIsospin
double getIsospin() const
A get method to access the particle isospin.
Definition: Particle.h:115
StandardModel
A model class for the Standard Model.
Definition: StandardModel.h:474
NPbase::Update
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for NPbase.
Definition: NPbase.cpp:17
NPbase::deltaN_nu
virtual double deltaN_nu() const
The new physics contribution to the number of neutrinos dervied from the pole measurements.
Definition: NPbase.cpp:533
StandardModel::sW2
virtual double sW2(const double Mw_i) const
The square of the sine of the weak mixing angle in the on-shell scheme, denoted as .
Definition: StandardModel.cpp:1000
NPbase::deltaAFB
virtual double deltaAFB(const Particle f) const
The new physics contribution to the forward-backward asymmetry in at the -pole, .
Definition: NPbase.cpp:387
NPbase::deltaR_inv
virtual double deltaR_inv() const
The new physics contribution to the ratio of invisible and leptonic (electron) decay widths of the b...
Definition: NPbase.cpp:483
NPbase::obliqueU
virtual double obliqueU() const
The oblique parameter .
Definition: NPbase.h:138
NPbase::trueSM
StandardModel trueSM
Definition: NPbase.h:2787
StandardModel::delGammaZ
double delGammaZ
The theoretical uncertainty in , denoted as , in GeV.
Definition: StandardModel.h:2519
NPbase::rhoZ_f
virtual gslpp::complex rhoZ_f(const Particle f) const
The effective neutral-current coupling including SM plus NP contributions.
Definition: NPbase.cpp:122
NPbase::GammaW
virtual double GammaW() const
The total width of the boson, .
Definition: NPbase.cpp:66
NPbase::deltaR0_f
virtual double deltaR0_f(const Particle f) const
The new physics contribution to the ratio , and , for charged leptons, quarks and neutrinos,...
Definition: NPbase.cpp:427
NPbase::deltaGamma_Zhad
virtual double deltaGamma_Zhad() const
The new physics contribution to the hadronic decay width of the boson, .
Definition: NPbase.cpp:222
StandardModel::sW2
double sW2() const
Definition: StandardModel.cpp:1005
NPbase::deltaA_f
virtual double deltaA_f(const Particle f) const
The new physics contribution to the left-right asymmetry in at the -pole, .
Definition: NPbase.cpp:365
StandardModel::Gamma_had
virtual double Gamma_had() const
The hadronic decay width of the boson, .
Definition: StandardModel.cpp:1283
NPbase::obliqueT
virtual double obliqueT() const
The oblique parameter .
Definition: NPbase.h:129
NPbase::R_inv
virtual double R_inv() const
The ratio of the invisible and leptonic (electron) decay widths of the boson, .
Definition: NPbase.cpp:527
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
NPbase::Gamma_had
virtual double Gamma_had() const
The hadronic decay width of the boson, .
Definition: NPbase.cpp:257
Particle::getCharge
double getCharge() const
A get method to access the particle charge.
Definition: Particle.h:97
StandardModel::PostUpdate
virtual bool PostUpdate()
The post-update method for StandardModel.
Definition: StandardModel.cpp:199
NPbase::deltaSin2thetaEff_e
virtual double deltaSin2thetaEff_e() const
The new physics contribution to the effective electron/leptonic weak angle at the pole.
Definition: NPbase.cpp:325
StandardModel::GammaW
virtual double GammaW(const Particle fi, const Particle fj) const
A partial decay width of the boson decay into a SM fermion pair.
Definition: StandardModel.cpp:1140
NPbase::deltaGV_f
virtual double deltaGV_f(const Particle f) const
New physics contribution to the neutral-current vector coupling .
Definition: NPbase.cpp:85
StandardModel::R0_f
virtual double R0_f(const Particle f) const
The ratio .
Definition: StandardModel.cpp:1369
StandardModel::InitializeModel
virtual bool InitializeModel()
A method to initialize the model.
Definition: StandardModel.cpp:140
StandardModel::AFB
virtual double AFB(const Particle f) const
Definition: StandardModel.cpp:1190
NPbase::A_f
virtual double A_f(const Particle f) const
The left-right asymmetry in at the -pole, .
Definition: NPbase.cpp:382
StandardModel::Update
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for StandardModel.
Definition: StandardModel.cpp:183
StandardModel::gV_f
virtual gslpp::complex gV_f(const Particle f) const
The effective leptonic neutral-current vector coupling in the SM.
Definition: StandardModel.cpp:1542
NPbase::Mw
virtual double Mw() const
The mass of the boson, .
Definition: NPbase.cpp:28
NPbase::deltaSigmaHadron
virtual double deltaSigmaHadron() const
The new physics contribution to the cross section for the process at the pole, .
Definition: NPbase.cpp:273
StandardModel::R_inv
virtual double R_inv() const
The ratio of the invisible and leptonic (electron) decay widths of the boson, .
Definition: StandardModel.cpp:1515
StandardModel::sin2thetaEff
virtual double sin2thetaEff(const Particle f) const
The effective weak mixing angle for at the the -mass scale.
Definition: StandardModel.cpp:1195
gslpp::complex::real
const double & real() const
Definition: gslpp_complex.cpp:53
StandardModel::leptons
Particle leptons[6]
An array of Particle objects for the leptons.
Definition: StandardModel.h:2496
StandardModel::GammaZ
virtual double GammaZ(const Particle f) const
The partial decay width, .
Definition: StandardModel.cpp:1201
Particle::getIndex
int getIndex() const
Definition: Particle.h:160
NPbase::PostUpdate
virtual bool PostUpdate()
The postupdate method for NPbase.
Definition: NPbase.cpp:23
StandardModel::Mz
double Mz
The mass of the boson in GeV.
Definition: StandardModel.h:2510
StandardModel::N_nu
virtual double N_nu() const
The number of neutrinos obtained indirectly from the measurements at the Z pole, .
Definition: StandardModel.cpp:1521
NPbase::R0_f
virtual double R0_f(const Particle f) const
The ratio , and , for charged leptons, quarks and neutrinos, respectively.
Definition: NPbase.cpp:478
StandardModel::Mw
virtual double Mw() const
The SM prediction for the -boson mass in the on-shell scheme, .
Definition: StandardModel.cpp:944
NPbase::sin2thetaEff
virtual double sin2thetaEff(const Particle f) const
The leptonic effective weak mixing angle at the the pole.
Definition: NPbase.cpp:355
StandardModel::gA_f
virtual gslpp::complex gA_f(const Particle f) const
The effective leptonic neutral-current axial-vector coupling in the SM.
Definition: StandardModel.cpp:1548
Model::setSliced
void setSliced(bool Sliced)
Definition: Model.h:227
QCD::CF
double CF
Definition: QCD.h:933
StandardModel::Gamma_Z
virtual double Gamma_Z() const
The total decay width of the boson, .
Definition: StandardModel.cpp:1318
NPbase::gA_f
virtual gslpp::complex gA_f(const Particle f) const
The total (SM+NP) contribution to the neutral-current axial-vector coupling .
Definition: NPbase.cpp:117
QCD::NEUTRINO_1
Definition: QCD.h:311
QCD::quarks
Particle quarks[6]
The vector of all SM quarks.
Definition: QCD.h:934
QCD::MU
Definition: QCD.h:314
NPbase::deltaGamma_Zf
virtual double deltaGamma_Zf(const Particle f) const
The new physics contribution to the decay width of the boson into a given fermion pair,...
Definition: NPbase.cpp:135
NPbase::gV_f
virtual gslpp::complex gV_f(const Particle f) const
The total (SM+NP) contribution to the neutral-current vector coupling .
Definition: NPbase.cpp:102