FlavourWilsonCoefficientMatching.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 HEPfit Collaboration
3  * All rights reserved.
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
10 #include <stdexcept>
11 
13 
14  StandardModelMatching(FlavourWilsonCoefficient_i),
15  myFlavourWilsonCoefficient(FlavourWilsonCoefficient_i),
16  myCKM(3, 3, 0.),
17  mcbsg(8, NDR, NLO),
18  mcprimebsg(8, NDR, NLO),
19  mcBMll(13, NDR, NLO),
20  mcprimeBMll(13, NDR, NLO)
21 {}
22 
24 {
26 
37  DC7g = myFlavourWilsonCoefficient.getDC7g();
39 
40  DC7p = myFlavourWilsonCoefficient.getDC7p();
42  DC9p = myFlavourWilsonCoefficient.getDC9p();
44  DC7gp = myFlavourWilsonCoefficient.getDC7gp();
46 
48 }
49 
50 std::vector<WilsonCoefficient>& FlavourWilsonCoefficientMatching::CMbsg()
51 {
52 
54 
55  switch (mcbsg.getScheme()) {
56  case NDR:
57 
58  break;
59  default:
60  std::stringstream out;
61  out << mcbsg.getScheme();
62  throw std::runtime_error("StandardModel::CMbsg(): scheme " + out.str() + "not implemented");
63  }
64 
66 
67  switch (mcbsg.getOrder()) {
68  case NNLO:
69  case NLO:
70  mcbsg.setCoeff(6, 0., NLO);
71  case LO:
72  mcbsg.setCoeff(6, DC7g, LO);
73  break;
74  default:
75  std::stringstream out;
76  out << mcbsg.getOrder();
77  throw std::runtime_error("StandardModelMatching::CMbsg(): order " + out.str() + "not implemented");
78  }
79 
80  vmcbsg.push_back(mcbsg);
81  return (vmcbsg);
82 }
83 
84 std::vector<WilsonCoefficient>& FlavourWilsonCoefficientMatching::CMprimebsg()
85 {
86 
88 
89  switch (mcprimebsg.getScheme()) {
90  case NDR:
91 
92  break;
93  default:
94  std::stringstream out;
95  out << mcprimebsg.getScheme();
96  throw std::runtime_error("StandardModel::CMprimebsg(): scheme " + out.str() + "not implemented");
97  }
98 
100 
101  switch (mcprimebsg.getOrder()) {
102  case NNLO:
103  case NLO:
104  mcprimebsg.setCoeff(6, 0., NLO);
105  case LO:
107  break;
108  default:
109  std::stringstream out;
110  out << mcprimebsg.getOrder();
111  throw std::runtime_error("StandardModelMatching::CMprimebsg(): order " + out.str() + "not implemented");
112  }
113 
114  vmcprimebsg.push_back(mcprimebsg);
115  return (vmcprimebsg);
116 }
117 
118 std::vector<WilsonCoefficient>& FlavourWilsonCoefficientMatching::CMBMll()
119 {
120 
122 
123  switch (mcbsg.getScheme()) {
124  case NDR:
125 
126  break;
127  default:
128  std::stringstream out;
129  out << mcBMll.getScheme();
130  throw std::runtime_error("StandardModel::CMBMll(): scheme " + out.str() + "not implemented");
131  }
132 
134 
135  switch (mcBMll.getOrder()) {
136  case NNLO:
137  case NLO:
138  //mcBMll.setCoeff(6, 0., NLO);
139  case LO:
140  mcBMll.setCoeff(6, DC7g, LO);
141  mcBMll.setCoeff(8, DC9, LO);
142  mcBMll.setCoeff(9, DC10, LO);
143  break;
144  default:
145  std::stringstream out;
146  out << mcBMll.getOrder();
147  throw std::runtime_error("StandardModelMatching::CMBMll(): order " + out.str() + "not implemented");
148  }
149 
150  vmcBMll.push_back(mcBMll);
151  return (vmcBMll);
152 }
153 
154 std::vector<WilsonCoefficient>& FlavourWilsonCoefficientMatching::CMprimeBMll()
155 {
156 
158 
159  switch (mcprimebsg.getScheme()) {
160  case NDR:
161 
162  break;
163  default:
164  std::stringstream out;
165  out << mcprimeBMll.getScheme();
166  throw std::runtime_error("StandardModel::CMprimeBMll(): scheme " + out.str() + "not implemented");
167  }
168 
170 
171  switch (mcprimeBMll.getOrder()) {
172  case NNLO:
173  case NLO:
174  //mcprimeBMll.setCoeff(6, 0., NLO);
175  case LO:
179  break;
180  default:
181  std::stringstream out;
182  out << mcprimeBMll.getOrder();
183  throw std::runtime_error("StandardModelMatching::CMprimeBMll(): order " + out.str() + "not implemented");
184  }
185 
186  vmcprimeBMll.push_back(mcprimeBMll);
187  return (vmcprimeBMll);
188 }
Model for NP contributions to flavour.
virtual void setMu(double mu)
gslpp::complex getDC6() const
const FlavourWilsonCoefficient & myFlavourWilsonCoefficient
gslpp::complex getDC8p() const
std::vector< WilsonCoefficient > & CMprimeBMll()
gslpp::complex getDC8gp() const
gslpp::complex getDC10() const
schemes getScheme() const
void setCoeff(const gslpp::vector< gslpp::complex > &z, orders order_i)
gslpp::matrix< gslpp::complex > getVCKM() const
A get method to retrieve the CKM matrix.
A class for the matching in the Standard Model.
double getMuw() const
A get method to retrieve the matching scale around the weak scale.
virtual std::vector< WilsonCoefficient > & CMprimebsg()
operator basis: current current; qcd penguins; magnetic and chromomagnetic penguins; semileptonic ...
std::vector< WilsonCoefficient > vmcBMll
gslpp::complex getDC10p() const
void updateSMParameters()
Updates to new Standard Model parameter sets.
std::vector< WilsonCoefficient > vmcprimebsg
virtual std::vector< WilsonCoefficient > & CMBMll()
operator basis: current current; qcd penguins; magnetic and chromomagnetic penguins; semileptonic ...
Definition: OrderScheme.h:33
gslpp::complex getDC8g() const
gslpp::complex getDC2() const
virtual std::vector< WilsonCoefficient > & CMbsg()
operator basis: current current; qcd penguins; magnetic and chromomagnetic penguins; semileptonic ...
gslpp::complex getDC4() const
void updateFlavourWilsonCoefficientParameters()
Updates to new FlavourWilsonCoefficient parameter sets.
gslpp::complex getDC8() const
FlavourWilsonCoefficientMatching(const FlavourWilsonCoefficient &FlavourWilsonCoefficient_i)
orders getOrder() const
std::vector< WilsonCoefficient > vmcprimeBMll
std::vector< WilsonCoefficient > & CMbsg()
std::vector< WilsonCoefficient > & CMprimebsg()
std::vector< WilsonCoefficient > & CMBMll()
virtual std::vector< WilsonCoefficient > & CMprimeBMll()
operator basis: current current; qcd penguins; magnetic and chromomagnetic penguins; semileptonic ...