a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
BR_Bsnunu.cpp
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 #include "BR_Bsnunu.h"
9 #include "StandardModel.h"
10 #include "std_make_vector.h"
11 #include "HeffDB1.h"
12 
14 : ThObservable(SM_i), mySM(SM_i)
15 {
17 }
18 
20 {
21  double theta= asin(sqrt( (M_PI * mySM.getAle() )/( sqrt(2) *
22  mySM.getGF() * mySM.Mw_tree() *
23  mySM.Mw_tree()) ));
24 
25  double z = mySM.getQuarks(QCD::CHARM).getMass()/
27 
28 
29  return(3.*mySM.getAle()*mySM.getAle()/(4.*M_PI*M_PI*pow(sin(theta),4.)) *
30  mySM.getOptionalParameter("Br_B_Xcenu") *
31  BRBsnunu(NLO).real() * (1.+2.*mySM.Als(mySM.getMub())/3./M_PI)*(25./4.-M_PI*M_PI)
32  /(1. - 8.*z*z + 8.*z*z*z*z*z*z - z*z*z*z*z*z*z*z - 24.*z*z*z*z*log(z))
33  /(1. - 2.*mySM.Als(mySM.getMub())/3./M_PI*((M_PI*M_PI-31./4.)*(1.-z*z)+1.5)));
34 }
35 
37 {
38  if (mySM.getFlavour().getHDB1().getCoeffsnunu().getOrder() < order){
39  std::stringstream out;
40  out << order;
41  throw std::runtime_error("BRBsnunu::computeThValue(): requires cofficient of "
42  "order" + out.str() + "not computed");
43  }
44 
46 
47  switch(order) {
48  case NLO:
49  return((*(allcoeff[LO]) + *(allcoeff[NLO])) *
50  (*(allcoeff[LO]) + *(allcoeff[NLO])));
51  case LO:
52  return((*(allcoeff[LO])) *
53  (*(allcoeff[LO])));
54  default:
55  std::stringstream out;
56  out << order;
57  throw std::runtime_error("BRBsnunu::BRBsnunu(): order " + out.str() + "not implemented");;
58  }
59 }
60 
std_make_vector.h
QCD::BOTTOM
Definition: QCD.h:329
ThObservable::setParametersForObservable
void setParametersForObservable(std::vector< std::string > parametersForObservable_i)
A set method to get the parameters for the specific observable.
Definition: ThObservable.h:109
gslpp::sin
complex sin(const complex &z)
Definition: gslpp_complex.cpp:420
make_vector
Definition: std_make_vector.h:15
LO
Definition: OrderScheme.h:33
StandardModel.h
QCD::CHARM
Definition: QCD.h:326
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
gslpp::log
complex log(const complex &z)
Definition: gslpp_complex.cpp:342
StandardModel
A model class for the Standard Model.
Definition: StandardModel.h:474
WilsonTemplate::getOrder
orders getOrder() const
Definition: WilsonTemplate.h:65
Particle::getMass
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
BR_Bsnunu::computeThValue
double computeThValue()
hep-ph/9512380v2
Definition: BR_Bsnunu.cpp:19
gslpp::pow
complex pow(const complex &z1, const complex &z2)
Definition: gslpp_complex.cpp:395
StandardModel::getGF
double getGF() const
A get method to retrieve the Fermi constant .
Definition: StandardModel.h:736
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
HeffDB1.h
StandardModel::Als
double Als(double mu, orders order=FULLNLO, bool qed_flag=false, bool Nf_thr=true) const
The running QCD coupling in the scheme including QED corrections.
Definition: StandardModel.cpp:576
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
StandardModel::getFlavour
const Flavour & getFlavour() const
Definition: StandardModel.h:1006
orders
orders
An enum type for orders in QCD.
Definition: OrderScheme.h:31
Flavour::ComputeCoeffsnunu
gslpp::vector< gslpp::complex > ** ComputeCoeffsnunu() const
Definition: Flavour.cpp:93
BR_Bsnunu::mySM
StandardModel & mySM
Definition: BR_Bsnunu.h:72
HeffDB1::getCoeffsnunu
WilsonCoefficient getCoeffsnunu() const
Definition: HeffDB1.h:169
StandardModel::Mw_tree
virtual double Mw_tree() const
The tree-level mass of the boson, .
Definition: StandardModel.cpp:925
ThObservable
A class for a model prediction of an observable.
Definition: ThObservable.h:25
QCD::getMub
double getMub() const
A get method to access the threshold between five- and four-flavour theory in GeV.
Definition: QCD.h:570
gslpp::complex::real
const double & real() const
Definition: gslpp_complex.cpp:53
QCD::getOptionalParameter
double getOptionalParameter(std::string name) const
A method to get parameters that are specific to only one set of observables.
Definition: QCD.h:448
BR_Bsnunu.h
NLO
Definition: OrderScheme.h:34
BR_Bsnunu::BRBsnunu
gslpp::complex BRBsnunu(orders order)
the short distance contribution to the | |
Definition: BR_Bsnunu.cpp:36
StandardModel::getAle
double getAle() const
A get method to retrieve the fine-structure constant .
Definition: StandardModel.h:745
gslpp::vector< gslpp::complex >
BR_Bsnunu::BR_Bsnunu
BR_Bsnunu(StandardModel &SM_i)
Constructor.
Definition: BR_Bsnunu.cpp:13
Flavour::getHDB1
HeffDB1 & getHDB1() const
The member that returns an object of the class HeffDB1.
Definition: Flavour.cpp:48