a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
HeffDB1.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 HEFFDB1_H
9#define HEFFDB1_H
10
11class StandardModel;
13class EvolDF1nlep;
14class EvolDB1Mll;
15class EvolDB1bsg;
16class EvolBsmm;
17#include "QCD.h"
18#include "WilsonCoefficient.h"
19#include <memory>
20#include "gslpp_matrix_double.h"
21#include "gslpp_complex.h"
22
23class HeffDB1 {
24public:
30 HeffDB1(const StandardModel & SM);
31
36 virtual ~HeffDB1();
37
44 gslpp::vector<gslpp::complex>** ComputeCoeffBnlep00(double mu, schemes scheme = NDR);
45
52 gslpp::vector<gslpp::complex>** ComputeCoeffBnlep10(double mu, schemes scheme = NDR);
53
60 gslpp::vector<gslpp::complex>** ComputeCoeffBnlep01(double mu, schemes scheme = NDR);
61
68 gslpp::vector<gslpp::complex>** ComputeCoeffBnlep11(double mu, schemes scheme = NDR);
69
75 gslpp::vector<gslpp::complex>** ComputeCoeffsmumu(double mu, schemes scheme = NDR);
76
82 gslpp::vector<gslpp::complex>** ComputeCoeffsmumuStandardNorm(double mu, schemes scheme = NDR);
83
89 gslpp::vector<gslpp::complex>** ComputeCoeffdmumu(double mu, schemes scheme = NDR);
90
96 gslpp::vector<gslpp::complex>** ComputeCoeffbtaunu();
97
103 gslpp::vector<gslpp::complex>** ComputeCoeffsnunu(QCD::lepton lepton, bool noSM = false);
104
110 gslpp::vector<gslpp::complex>** ComputeCoeffdnunu();
111
118 gslpp::vector<gslpp::complex>** ComputeCoeffsgamma(double mu, bool noSM = false, schemes scheme = NDR);
119
126 gslpp::vector<gslpp::complex>** ComputeCoeffprimesgamma(double mu, schemes scheme = NDR);
127
134 gslpp::vector<gslpp::complex>** ComputeCoeffsgamma_Buras(double mu, bool noSM = false, schemes scheme = NDR);
135
142 gslpp::vector<gslpp::complex>** ComputeCoeffBMll(double mu, QCD::lepton lepton, bool noSM = false, schemes scheme = NDR);
143
150 gslpp::vector<gslpp::complex>** ComputeCoeffprimeBMll(double mu, QCD::lepton lepton, schemes scheme = NDR);
151
158 gslpp::vector<gslpp::complex>** ComputeCoeffBMll_Buras(double mu, QCD::lepton lepton, bool noSM = false, schemes scheme = NDR);
159
161 return coeffnlep00;
162 }
163
165 return coeffnlep01;
166 }
167
169 return coeffnlep10;
170 }
171
173 return coeffnlep11;
174 }
175
177 return coeffsmumu;
178 }
179
181 return coeffdmumu;
182 }
183
185 return coeffbtaunu;
186 }
187
189 return coeffsnunu;
190 }
191
193 return coeffdnunu;
194 }
195
197 return coeffsgamma;
198 }
199
201 return coeffprimesgamma;
202 }
203
205 return *evolbs;
206 }
207
209 return *evolbd;
210 }
211
213 return *u;
214 }
215
217 return *evolDF1BMll;
218 }
219
221 return *evolDB1bsg;
222 }
223
224 const StandardModel& GetModel() const {
225 return model;
226 }
227
228private :
230
242 std::unique_ptr<EvolDB1Mll> evolDF1BMll;
243 std::unique_ptr<EvolDB1bsg> evolDB1bsg;
244 std::unique_ptr<EvolDF1nlep> u;
245 std::unique_ptr<EvolBsmm> evolbs;
246 std::unique_ptr<EvolBsmm> evolbd;
247
248 //StandardModelMatching& standardmodelmatching;
249
253 std::vector<double> Bsgamma_Mu_cache;
254 std::vector<double> Bpsgamma_Mu_cache;
255 std::vector<WilsonCoefficient> Bsgamma_WC_cache;
256 std::vector<WilsonCoefficient> Bpsgamma_WC_cache;
257
261 std::vector<double> BMll_Mu_cache;
262 std::vector<WilsonCoefficient> BMll_WC_cache;
263
266 std::vector<double> BMllprime_Mu_cache;
267 std::vector<WilsonCoefficient> BMllprime_WC_cache;
268
271 std::vector<double> Bsmumu_Mu_cache;
272 std::vector<WilsonCoefficient> Bsmumu_WC_cache;
273
276 std::vector<double> Bdmumu_Mu_cache;
277 std::vector<WilsonCoefficient> Bdmumu_WC_cache;
278
279 gslpp::vector<gslpp::complex> nlep, nlep2, nlepCC;
280
281 //for transformation matrix from Misiak basis to Buras basis
282 void setMisiaktoBuras();
283 gslpp::matrix<double> R_inv_t = gslpp::matrix< double >(6, 6, 0.);
284 gslpp::matrix<double> dR_t = gslpp::matrix< double >(6, 6, 0.);
285 gslpp::matrix<double> MisiaktoBurasNLO = gslpp::matrix< double >(6, 6, 0.);
286
287 gslpp::vector<gslpp::complex> tmp_coeffsgamma = gslpp::vector<gslpp::complex>(6, 0.);
288 gslpp::vector<gslpp::complex> tmp_coeffsgammaLO = gslpp::vector<gslpp::complex>(6, 0.);
289 gslpp::vector<gslpp::complex> tmp_coeffsgammaNLO = gslpp::vector<gslpp::complex>(6, 0.);
290 gslpp::vector<gslpp::complex> tmp_coeffsgammaNNLO = gslpp::vector<gslpp::complex>(6, 0.);
291 gslpp::vector<gslpp::complex> tmp_coeffBMll = gslpp::vector<gslpp::complex>(6, 0.);
292 gslpp::vector<gslpp::complex> tmp_coeffBMllLO = gslpp::vector<gslpp::complex>(6, 0.);
293 gslpp::vector<gslpp::complex> tmp_coeffBMllNLO = gslpp::vector<gslpp::complex>(6, 0.);
294};
295
296#endif /* HEFFDB1_H */
@ NDR
Definition: OrderScheme.h:21
Evolutor Class
Definition: EvolDF1nlep.h:16
gslpp::vector< gslpp::complex > ** ComputeCoeffsgamma_Buras(double mu, bool noSM=false, schemes scheme=NDR)
Definition: HeffDB1.cpp:958
void setMisiaktoBuras()
Definition: HeffDB1.cpp:1101
WilsonCoefficient coeffbtaunu
Definition: HeffDB1.h:236
HeffDB1(const StandardModel &SM)
constructor
Definition: HeffDB1.cpp:15
unsigned int Bsgamma_order_ini_cache
Definition: HeffDB1.h:251
gslpp::vector< gslpp::complex > ** ComputeCoeffsmumu(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:331
std::vector< WilsonCoefficient > Bsgamma_WC_cache
Definition: HeffDB1.h:255
gslpp::matrix< double > dR_t
Definition: HeffDB1.h:284
WilsonCoefficient coeffnlep11B
Definition: HeffDB1.h:234
gslpp::vector< gslpp::complex > tmp_coeffsgammaNNLO
Definition: HeffDB1.h:290
double BMllprime_mu_cache
Definition: HeffDB1.h:264
double BMll_mu_cache
Definition: HeffDB1.h:258
std::vector< double > Bdmumu_Mu_cache
Definition: HeffDB1.h:276
EvolDB1Mll & getUDF1BMll() const
Definition: HeffDB1.h:216
std::vector< double > BMllprime_Mu_cache
Definition: HeffDB1.h:266
schemes Bsmumu_scheme_cache
Definition: HeffDB1.h:270
gslpp::vector< gslpp::complex > tmp_coeffBMllNLO
Definition: HeffDB1.h:293
WilsonCoefficient coeffprimesgamma
Definition: HeffDB1.h:238
schemes Bsgamma_scheme_cache
Definition: HeffDB1.h:252
schemes Bdmumu_scheme_cache
Definition: HeffDB1.h:275
EvolDB1bsg & getUDB1bsg() const
Definition: HeffDB1.h:220
std::unique_ptr< EvolDB1bsg > evolDB1bsg
Definition: HeffDB1.h:243
WilsonCoefficient coeffsmumu
Definition: HeffDB1.h:235
EvolDF1nlep & getUDF1() const
Definition: HeffDB1.h:212
WilsonCoefficient getCoeffsmumu() const
Definition: HeffDB1.h:176
std::vector< WilsonCoefficient > Bsmumu_WC_cache
Definition: HeffDB1.h:272
WilsonCoefficient coeffBMll
Definition: HeffDB1.h:240
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep10(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:162
std::vector< double > Bpsgamma_Mu_cache
Definition: HeffDB1.h:254
std::unique_ptr< EvolBsmm > evolbs
Definition: HeffDB1.h:245
gslpp::vector< gslpp::complex > ** ComputeCoeffsmumuStandardNorm(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:522
std::unique_ptr< EvolDB1Mll > evolDF1BMll
Definition: HeffDB1.h:242
WilsonCoefficient coeffnlep10qcd
Definition: HeffDB1.h:232
std::unique_ptr< EvolBsmm > evolbd
Definition: HeffDB1.h:246
WilsonCoefficient getCoeffdmumu() const
Definition: HeffDB1.h:180
WilsonCoefficient coeffsgamma
Definition: HeffDB1.h:238
gslpp::vector< gslpp::complex > tmp_coeffsgamma
Definition: HeffDB1.h:287
std::vector< WilsonCoefficient > Bdmumu_WC_cache
Definition: HeffDB1.h:277
gslpp::vector< gslpp::complex > nlep
Definition: HeffDB1.h:279
gslpp::vector< gslpp::complex > ** ComputeCoeffBMll(double mu, QCD::lepton lepton, bool noSM=false, schemes scheme=NDR)
Definition: HeffDB1.cpp:1050
gslpp::vector< gslpp::complex > ** ComputeCoeffprimeBMll(double mu, QCD::lepton lepton, schemes scheme=NDR)
Definition: HeffDB1.cpp:1167
WilsonCoefficient coeffnlep01A
Definition: HeffDB1.h:233
gslpp::vector< gslpp::complex > ** ComputeCoeffbtaunu()
EvolBsmm & getUBdmm() const
Definition: HeffDB1.h:208
WilsonCoefficient coeffsgamma_Buras
Definition: HeffDB1.h:239
WilsonCoefficient getCoeffnlep10() const
Definition: HeffDB1.h:164
std::vector< double > Bsmumu_Mu_cache
Definition: HeffDB1.h:271
std::unique_ptr< EvolDF1nlep > u
Definition: HeffDB1.h:244
const StandardModel & GetModel() const
Definition: HeffDB1.h:224
virtual ~HeffDB1()
destructor
Definition: HeffDB1.cpp:78
WilsonCoefficient getCoeffsgamma() const
Definition: HeffDB1.h:196
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep00(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:86
WilsonCoefficient getCoeffsnunu() const
Definition: HeffDB1.h:188
WilsonCoefficient coeffnlep10CC
Definition: HeffDB1.h:234
WilsonCoefficient coeffnlep01
Definition: HeffDB1.h:233
std::vector< double > Bsgamma_Mu_cache
Definition: HeffDB1.h:253
gslpp::vector< gslpp::complex > tmp_coeffsgammaNLO
Definition: HeffDB1.h:289
gslpp::vector< gslpp::complex > tmp_coeffsgammaLO
Definition: HeffDB1.h:288
gslpp::matrix< double > R_inv_t
Definition: HeffDB1.h:283
WilsonCoefficient coeffnlep00
Definition: HeffDB1.h:231
gslpp::vector< gslpp::complex > ** ComputeCoeffdnunu()
Definition: HeffDB1.cpp:889
WilsonCoefficient coeffBMll_Buras
Definition: HeffDB1.h:241
double Bdmumu_mu_cache
Definition: HeffDB1.h:274
gslpp::vector< gslpp::complex > tmp_coeffBMll
Definition: HeffDB1.h:291
WilsonCoefficient coeffnlep11
Definition: HeffDB1.h:234
WilsonCoefficient getCoeffdnunu() const
Definition: HeffDB1.h:192
gslpp::vector< gslpp::complex > tmp_coeffBMllLO
Definition: HeffDB1.h:292
gslpp::vector< gslpp::complex > nlepCC
Definition: HeffDB1.h:279
WilsonCoefficient coeffnlep00qcd
Definition: HeffDB1.h:231
WilsonCoefficient getCoeffprimesgamma() const
Definition: HeffDB1.h:200
WilsonCoefficient getCoeffbtaunu() const
Definition: HeffDB1.h:184
WilsonCoefficient coeffnlep01B
Definition: HeffDB1.h:233
gslpp::vector< gslpp::complex > ** ComputeCoeffBMll_Buras(double mu, QCD::lepton lepton, bool noSM=false, schemes scheme=NDR)
Definition: HeffDB1.cpp:1132
double Bsgamma_mu_cache
Definition: HeffDB1.h:250
schemes BMllprime_scheme_cache
Definition: HeffDB1.h:265
const StandardModel & model
Definition: HeffDB1.h:229
schemes BMll_scheme_cache
Definition: HeffDB1.h:260
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep01(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:236
gslpp::vector< gslpp::complex > nlep2
Definition: HeffDB1.h:279
double Bsmumu_mu_cache
Definition: HeffDB1.h:269
WilsonCoefficient getCoeffnlep00() const
Definition: HeffDB1.h:160
WilsonCoefficient coeffnlep00CC
Definition: HeffDB1.h:233
WilsonCoefficient coeffnlep10
Definition: HeffDB1.h:232
EvolBsmm & getUBsmm() const
Definition: HeffDB1.h:204
WilsonCoefficient coeffdmumu
Definition: HeffDB1.h:235
gslpp::vector< gslpp::complex > ** ComputeCoeffsnunu(QCD::lepton lepton, bool noSM=false)
Definition: HeffDB1.cpp:864
WilsonCoefficient getCoeffnlep11() const
Definition: HeffDB1.h:172
gslpp::vector< gslpp::complex > ** ComputeCoeffsgamma(double mu, bool noSM=false, schemes scheme=NDR)
Definition: HeffDB1.cpp:909
gslpp::vector< gslpp::complex > ** ComputeCoeffdmumu(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:675
WilsonCoefficient coeffsnunu
Definition: HeffDB1.h:237
std::vector< WilsonCoefficient > Bpsgamma_WC_cache
Definition: HeffDB1.h:256
std::vector< WilsonCoefficient > BMllprime_WC_cache
Definition: HeffDB1.h:267
gslpp::matrix< double > MisiaktoBurasNLO
Definition: HeffDB1.h:285
gslpp::vector< gslpp::complex > ** ComputeCoeffprimesgamma(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:1005
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep11(double mu, schemes scheme=NDR)
Definition: HeffDB1.cpp:287
WilsonCoefficient getCoeffnlep01() const
Definition: HeffDB1.h:168
unsigned int BMll_order_ini_cache
Definition: HeffDB1.h:259
std::vector< WilsonCoefficient > BMll_WC_cache
Definition: HeffDB1.h:262
WilsonCoefficient coeffdnunu
Definition: HeffDB1.h:237
std::vector< double > BMll_Mu_cache
Definition: HeffDB1.h:261
WilsonCoefficient coeffnlep11A
Definition: HeffDB1.h:234
WilsonCoefficient coeffprimeBMll
Definition: HeffDB1.h:240
lepton
An enum type for leptons.
Definition: QCD.h:310
A model class for the Standard Model.
A class for the matching in the Standard Model.
A class for the Wilson coefficients.
schemes
An enum type for regularization schemes.
Definition: OrderScheme.h:20