a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
ee_WW.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #ifndef EEWW_H
9 #define EEWW_H
10 
11 #include <stdexcept>
12 #include <ThObservable.h>
13 #include "NPbase.h"
14 
15 
23 class xseeWW : public ThObservable {
24 public:
25 
31  xseeWW(const StandardModel& SM_i, const double sqrt_s_i)
32  : ThObservable(SM_i), sqrt_s(sqrt_s_i)
33  {
34  if ((myNPbase = dynamic_cast<const NPbase*> (&SM)) == NULL)
35  throw std::runtime_error("xseeWW called with a class whose parent is not NPbase");
36  }
37 
42  double computeThValue()
43  {
44  return myNPbase->xseeWW(sqrt_s);
45  }
46 
47 private:
48  const NPbase* myNPbase;
49  const double sqrt_s;
50 };
51 
52 
62 class dxseeWWdcosBin : public ThObservable {
63 public:
64 
70  dxseeWWdcosBin(const StandardModel& SM_i, const double sqrt_s_i, const double cos1_i, const double cos2_i)
71  : ThObservable(SM_i), sqrt_s(sqrt_s_i), cos1(cos1_i), cos2(cos2_i)
72  {
73  if ((myNPbase = dynamic_cast<const NPbase*> (&SM)) == NULL)
74  throw std::runtime_error("dxseeWWdcosBin called with a class whose parent is not NPbase");
75  }
76 
82  double computeThValue()
83  {
85  }
86 
87 private:
88  const NPbase* myNPbase;
89  const double sqrt_s;
90  const double cos1, cos2;
91 };
92 
93 #endif /* EEWW_H */
94 
dxseeWWdcosBin::cos2
const double cos2
Definition: ee_WW.h:90
dxseeWWdcosBin::myNPbase
const NPbase * myNPbase
Definition: ee_WW.h:88
NPbase::dxseeWWdcosBin
virtual double dxseeWWdcosBin(const double sqrt_s, const double cos1, const double cos2) const
The integral of differential distribution for , with in a given bin of the polar angle.
Definition: NPbase.h:1944
ThObservable.h
NPbase.h
xseeWW::sqrt_s
const double sqrt_s
Definition: ee_WW.h:49
NPbase::xseeWW
virtual double xseeWW(const double sqrt_s) const
Total cross section in pb, with .
Definition: NPbase.h:1954
dxseeWWdcosBin::sqrt_s
const double sqrt_s
Definition: ee_WW.h:89
StandardModel
A model class for the Standard Model.
Definition: StandardModel.h:474
dxseeWWdcosBin
A class for computing the integral of the differential cross section for in a given bin.
Definition: ee_WW.h:62
NPbase
The auxiliary base model class for other model classes.
Definition: NPbase.h:66
xseeWW::computeThValue
double computeThValue()
A method to compute the value of the cross section in the current model.
Definition: ee_WW.h:42
dxseeWWdcosBin::cos1
const double cos1
Definition: ee_WW.h:90
ThObservable::SM
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121
dxseeWWdcosBin::computeThValue
double computeThValue()
A method to compute the integral of the differential cross section for in a given bin in the curren...
Definition: ee_WW.h:82
xseeWW::xseeWW
xseeWW(const StandardModel &SM_i, const double sqrt_s_i)
Constructor.
Definition: ee_WW.h:31
ThObservable
A class for a model prediction of an observable.
Definition: ThObservable.h:25
xseeWW::myNPbase
const NPbase * myNPbase
Definition: ee_WW.h:48
xseeWW
A class for computing the cross section .
Definition: ee_WW.h:23
dxseeWWdcosBin::dxseeWWdcosBin
dxseeWWdcosBin(const StandardModel &SM_i, const double sqrt_s_i, const double cos1_i, const double cos2_i)
Constructor.
Definition: ee_WW.h:70