a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
BClnuObservables.cpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2014 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 * (Made by Danilo Ricciardella)
7 */
8
9#include "BClnuObservables.h"
10#include "BClnu.h"
11#include "StandardModel.h"
12
13Q2moments_BClnu::Q2moments_BClnu(const StandardModel& SM_i, QCD::meson meson_i, unsigned int typ_i)
14: ThObservable(SM_i)
15{
16 meson1 = meson_i;
17 typ = typ_i;
18
20}
21
23{
24 double q2cut = getBinMin();
25
26 if (typ == 1) return (SM.getFlavour().getBClnu(meson1).Q2moment_1(q2cut));
27 else if (typ == 2) return (SM.getFlavour().getBClnu(meson1).Q2moment_2(q2cut));
28 else if (typ == 3) return (SM.getFlavour().getBClnu(meson1).Q2moment_3(q2cut));
29 else throw std::runtime_error("BClnuObservables::Q2moments_BClnu: incorrect type");
30}
31
32Elmoments_BClnu::Elmoments_BClnu(const StandardModel& SM_i, QCD::meson meson_i, unsigned int typ_i)
33: ThObservable(SM_i)
34{
35 meson1 = meson_i;
36 typ = typ_i;
37
39}
40
42{
43 double elcut = getBinMin();
44
45 if (typ == 1) return (SM.getFlavour().getBClnu(meson1).Elmoment_1(elcut));
46 else if (typ == 2) return (SM.getFlavour().getBClnu(meson1).Elmoment_2(elcut));
47 else if (typ == 3) return (SM.getFlavour().getBClnu(meson1).Elmoment_3(elcut));
48 else throw std::runtime_error("BClnuObservables::Elmoments_BClnu: incorrect type");
49}
50
51MXmoments_BClnu::MXmoments_BClnu(const StandardModel& SM_i, QCD::meson meson_i, unsigned int typ_i)
52: ThObservable(SM_i)
53{
54 meson1 = meson_i;
55 typ = typ_i;
56
58}
59
61{
62 double elcut = getBinMin();
63
64 if (typ == 1) return (SM.getFlavour().getBClnu(meson1).Mxmoment_1(elcut));
65 else if (typ == 2) return (SM.getFlavour().getBClnu(meson1).Mxmoment_2(elcut));
66 else if (typ == 3) return (SM.getFlavour().getBClnu(meson1).Mxmoment_3(elcut));
67 else throw std::runtime_error("BClnuObservables::Mxmoments_BClnu: incorrect type");
68}
69
71: ThObservable(SM_i)
72{
73 meson1 = meson_i;
74
76}
77
79{
80 double elcut = getBinMin();
81
83}
84
86: ThObservable(SM_i)
87{
88 meson1 = meson_i;
89
91}
92
94{
95 double hbar = 6.582119569e-25; // Gev s
96 double tauBzero = 1519e-15; // s
97 double tauBplus = 1638e-15 ; // s
98
99 return (sqrt(SM.getFlavour().getBClnu(meson1).getBR() / (SM.getFlavour().getBClnu(meson1).XGamma() * SM.getFlavour().getBClnu(meson1).getAmplsqfactor() * (tauBzero + tauBplus) / 2) * hbar));
100}
double Elmoment_1(double elcut)
Definition: BClnu.cpp:10882
double Mxmoment_3(double elcut)
Definition: BClnu.cpp:15970
double Q2moment_2(double q2cut)
Definition: BClnu.cpp:9618
double Mxmoment_1(double elcut)
Definition: BClnu.cpp:13071
double Elmoment_2(double elcut)
Definition: BClnu.cpp:11255
double XGamma()
Definition: BClnu.cpp:21296
double XDeltaBR(double elcut)
Definition: BClnu.cpp:21468
std::vector< std::string > initializeBClnuParameters()
Initialization of the parameters (later on we'll have the update)
Definition: BClnu.cpp:103
double Mxmoment_2(double elcut)
Definition: BClnu.cpp:13732
double Q2moment_1(double q2cut)
Functions for the moments computation.
Definition: BClnu.cpp:9378
double getAmplsqfactor()
Getter, will be useful later in moments computation.
Definition: BClnu.cpp:2903
double Elmoment_3(double elcut)
Definition: BClnu.cpp:11904
double getBR()
Definition: BClnu.cpp:2910
double Q2moment_3(double q2cut)
Definition: BClnu.cpp:10079
Elmoments_BClnu(const StandardModel &SM_i, QCD::meson meson_i, unsigned int typ_i)
Constructor.
unsigned int typ
double computeThValue()
The computation of the moments, varying the number and elcut.
BClnu & getBClnu(QCD::meson meson_i) const
Returns the initial and final state dependent object for .
Definition: Flavour.cpp:300
MXmoments_BClnu(const StandardModel &SM_i, QCD::meson meson_i, unsigned int typ_i)
Constructor.
double computeThValue()
The computation of the moments, varying the number and elcut.
unsigned int typ
double computeThValue()
The computation of the moments, varying the number and elcut.
PartialAverageBR_BClnu(const StandardModel &SM_i, QCD::meson meson_i)
Constructor.
Q2moments_BClnu(const StandardModel &SM_i, QCD::meson meson_i, unsigned int typ_i)
Constructor.
unsigned int typ
double computeThValue()
The computation of the moments, varying the number and q2cut.
meson
An enum type for mesons.
Definition: QCD.h:336
A model class for the Standard Model.
const Flavour & getFlavour() const
A class for a model prediction of an observable.
Definition: ThObservable.h:25
void setParametersForObservable(std::vector< std::string > parametersForObservable_i)
A set method to get the parameters for the specific observable.
Definition: ThObservable.h:109
double getBinMin()
A get method to get the minimum value of the bin.
Definition: ThObservable.h:82
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121
QCD::meson meson1
Vcb_BClnu(const StandardModel &SM_i, QCD::meson meson_i)
Constructor.
double computeThValue()
The computation of the moments, varying the number and elcut.