a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
MVllObservables.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 */
7
8#include "MVllObservables.h"
9#include "MVll.h"
10#include "StandardModel.h"
11//#include "gslpp.h"
12
13/*******************************************************************************
14 * Observables *
15 * ****************************************************************************/
16
17
18
19P_1::P_1(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
20: ThObservable(SM_i)
21{
22 lep = lep_i;
23 meson = meson_i;
24 vectorM = vector_i;
25
27}
28
30{
31 double q_min = getBinMin();
32 double q_max = getBinMax();
33
34 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(4,q_min,q_max)/(2.* SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max));
35}
36
37/*Returns experimental value, defined according to 1510.04239.*/
38P_2::P_2(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
39: ThObservable(SM_i)
40{
41 lep = lep_i;
42 meson = meson_i;
43 vectorM = vector_i;
44
46}
47
49{
50 double q_min = getBinMin();
51 double q_max = getBinMax();
52
53 double P_2_theory = SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(7,q_min,q_max)/(8.*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max));
54
55 return -P_2_theory;
56}
57
58
59P_3::P_3(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
60: ThObservable(SM_i)
61{
62 lep = lep_i;
63 meson = meson_i;
64 vectorM = vector_i;
65
67}
68
69/*Returns experimental value, defined according to 1510.04239.*/
71{
72 double q_min = getBinMin();
73 double q_max = getBinMax();
74
75 double P_3_theory = -SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(11,q_min,q_max)/(4.*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max));
76
77 return -P_3_theory;
78}
79
80
82: ThObservable(SM_i)
83{
84 lep = lep_i;
85 meson = meson_i;
86 vectorM = vector_i;
87
89}
90
91/*Returns experimental value, defined according to 1510.04239.*/
93{
94 double q_min = getBinMin();
95 double q_max = getBinMax();
96
97 double P_4p_theory = SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(5,q_min,q_max)/sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(2,q_min,q_max)*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max));
98
99 return -1./2.*P_4p_theory;
100}
101
102
104: ThObservable(SM_i)
105{
106 lep = lep_i;
107 meson = meson_i;
108 vectorM = vector_i;
109
111}
112
114{
115 double q_min = getBinMin();
116 double q_max = getBinMax();
117
118 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(6,q_min,q_max)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(2,q_min,q_max)*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max)));
119}
120
121
123: ThObservable(SM_i)
124{
125 lep = lep_i;
126 meson = meson_i;
127 vectorM = vector_i;
128
130}
131
133{
134 double q_min = getBinMin();
135 double q_max = getBinMax();
136
137 return -SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(9,q_min,q_max)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(2,q_min,q_max)*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max)));
138}
139
140
142: ThObservable(SM_i)
143{
144 lep = lep_i;
145 meson = meson_i;
146 vectorM = vector_i;
147
149}
150
151/*Returns experimental value, defined according to 1510.04239.*/
153{
154 double q_min = getBinMin();
155 double q_max = getBinMax();
156
157 double P_8p_theory = -SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(10,q_min,q_max)/(sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(2,q_min,q_max)*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max)));
158
159 return -1./2.*P_8p_theory;
160}
161
162
164: ThObservable(SM_i)
165{
166 lep = lep_i;
167 meson = meson_i;
168 vectorM = vector_i;
169
171}
172
173double GammaPrime::computeGammaPrime(double qmin, double qmax, QCD::lepton lep)
174{
175 double q_min = qmin;
176 double q_max = qmax;
177 QCD::lepton lep_i = lep;
178
179 return ((3.*SM.getFlavour().getMVll(meson, vectorM, lep_i).integrateSigma(0,q_min,q_max) - SM.getFlavour().getMVll(meson, vectorM, lep_i).integrateSigma(2,q_min,q_max)) + 2.*(3.*SM.getFlavour().getMVll(meson, vectorM, lep_i).integrateSigma(1,q_min,q_max) - SM.getFlavour().getMVll(meson, vectorM, lep_i).integrateSigma(3,q_min,q_max)))/4.;
180}
181
183{
184 double q_min = getBinMin();
185 double q_max = getBinMax();
186
187 return computeGammaPrime(q_min, q_max, lep);
188}
189
190
191A_FB::A_FB(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
192: GammaPrime(SM_i, meson_i, vector_i, lep_i)
193{
194 lep = lep_i;
195 meson = meson_i;
196 vectorM = vector_i;
197
199}
200
202{
203 double q_min = getBinMin();
204 double q_max = getBinMax();
205
206 return -3. * SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(7,q_min,q_max) / 4. / computeGammaPrime(q_min, q_max, lep);
207}
208
209
210BR_MVll::BR_MVll(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
211: GammaPrime(SM_i, meson_i, vector_i, lep_i)
212{
213 lep = lep_i;
214 meson = meson_i;
215 vectorM = vector_i;
216
218}
219
221{
222 double q_min = getBinMin();
223 double q_max = getBinMax();
224
225 double ys = SM.getMesons(QCD::B_S).getDgamma_gamma()/2.;
226
227 switch(vectorM){
230 return (computeGammaPrime(q_min, q_max, lep)/SM.getFlavour().getMVll(meson, vectorM, lep).getwidth() + SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigmaTree(q_min, q_max)) / ( q_max - q_min );
231 break;
233 return computeGammaPrime(q_min, q_max, lep)/SM.getFlavour().getMVll(meson, vectorM, lep).getwidth()/(1. - ys*ys) / ( q_max - q_min );
234 break;
235 default:
236 std::stringstream out;
237 out << vectorM;
238 throw std::runtime_error("BR_MVll: vector " + out.str() + " not implemented");
239 }
240}
241
242
243R_MVll::R_MVll(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
244: GammaPrime(SM_i, meson_i, vector_i, lep_1)
245{
246 lep1 = lep_1;
247 lep2 = lep_2;
248 meson = meson_i;
249 vectorM = vector_i;
250
253}
254
256{
257 double q_min = getBinMin();
258 double q_max = getBinMax();
259
261 return computeGammaPrime(q_min, q_max, lep2) / computeGammaPrime(q_min, q_max, lep1);
262 else
263 return computeGammaPrime(q_min, q_max, lep1) / computeGammaPrime(q_min, q_max, lep2);
264}
265
266
267RL_MVll::RL_MVll(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
268: F_L(SM_i, meson_i, vector_i, lep_1)
269{
270 lep1 = lep_1;
271 lep2 = lep_2;
272 meson = meson_i;
273 vectorM = vector_i;
274
277}
278
280{
281 double q_min = getBinMin();
282 double q_max = getBinMax();
283
284 return (computeGammaPrime(q_min, q_max, lep1) * computeFL(q_min, q_max, lep1)) / (computeGammaPrime(q_min, q_max, lep2) * computeFL(q_min, q_max, lep2));
285}
286
287
288RT_MVll::RT_MVll(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
289: F_L(SM_i, meson_i, vector_i, lep_1)
290{
291 lep1 = lep_1;
292 lep2 = lep_2;
293 meson = meson_i;
294 vectorM = vector_i;
295
298}
299
301{
302 double q_min = getBinMin();
303 double q_max = getBinMax();
304
305 return (computeGammaPrime(q_min, q_max, lep1) * (1 - computeFL(q_min, q_max, lep1))) / (computeGammaPrime(q_min, q_max, lep2) * ( 1 - computeFL(q_min, q_max, lep2)));
306}
307
308
309R_6::R_6(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
310: ThObservable(SM_i)
311{
312 lep1 = lep_1;
313 lep2 = lep_2;
314 meson = meson_i;
315 vectorM = vector_i;
316
319}
320
322{
323 double q_min = getBinMin();
324 double q_max = getBinMax();
325
326 return SM.getFlavour().getMVll(meson, vectorM, lep1).integrateSigma(7,q_min,q_max) / SM.getFlavour().getMVll(meson, vectorM, lep2).integrateSigma(7,q_min,q_max);
327}
328
329
331: GammaPrime(SM_i, meson_i, vector_i, lep_i)
332{
333 lep = lep_i;
334 meson = meson_i;
335 vectorM = vector_i;
336
338}
339
341{
342 double q_min = getBinMin();
343 double q_max = getBinMax();
344
345 return (3.*SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(0,q_min,q_max) - SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(2,q_min,q_max) + 2. * ( 3.*SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(1,q_min,q_max) - SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(3,q_min,q_max) ) )/(4.*computeGammaPrime(q_min, q_max, lep));
346}
347
348
349P3CP::P3CP(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
350: ThObservable(SM_i)
351{
352 lep = lep_i;
353 meson = meson_i;
354 vectorM = vector_i;
355
357}
358
360{
361 double q_min = getBinMin();
362 double q_max = getBinMax();
363
364 return - SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(11,q_min,q_max)/(4.*SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(3,q_min,q_max));
365}
366
367
368F_L::F_L(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
369: GammaPrime(SM_i, meson_i, vector_i, lep_i)
370{
371 lep = lep_i;
372 meson = meson_i;
373 vectorM = vector_i;
374
376}
377
378double F_L::computeFL(double qmin, double qmax, QCD::lepton lep)
379{
380 double q_min = qmin;
381 double q_max = qmax;
382 QCD::lepton lep_i = lep;
383
384 double sigma0 = SM.getFlavour().getMVll(meson, vectorM, lep_i).integrateSigma(0,q_min,q_max);
385 double sigma2 = SM.getFlavour().getMVll(meson, vectorM, lep_i).integrateSigma(2,q_min,q_max);
386
387 return (3.*sigma0 - sigma2) / (4. * computeGammaPrime(q_min, q_max, lep_i)) ;
388}
389
391{
392 double q_min = getBinMin();
393 double q_max = getBinMax();
394
395 return computeFL(q_min, q_max, lep);
396}
397
398
400: ThObservable(SM_i)
401{
402 lep = lep_i;
403 meson = meson_i;
404 vectorM = vector_i;
405
407}
408
410{
411 double q_min = getBinMin();
412
413 return ( SM.getFlavour().getMVll(meson, vectorM, lep).H_V_p(q_min, 0).abs2() + SM.getFlavour().getMVll(meson, vectorM, lep).H_V_m(q_min, 0).abs2() - SM.getFlavour().getMVll(meson, vectorM, lep).H_A_p(q_min, 0).abs2() - SM.getFlavour().getMVll(meson, vectorM, lep).H_A_m(q_min, 0).abs2() )/
414 ( 2.*( SM.getFlavour().getMVll(meson, vectorM, lep).H_V_p(q_min, 0).abs2() + SM.getFlavour().getMVll(meson, vectorM, lep).H_V_m(q_min, 0).abs2() + SM.getFlavour().getMVll(meson, vectorM, lep).H_A_p(q_min, 0).abs2() + SM.getFlavour().getMVll(meson, vectorM, lep).H_A_m(q_min, 0).abs2() ) );
415}
416
417
419: ThObservable(SM_i)
420{
421 lep = lep_i;
422 meson = meson_i;
423 vectorM = vector_i;
424
426}
427
429{
430 double q_min = getBinMin();
431
432 return ( q_min/(2.*SM.getFlavour().getMVll(meson, vectorM, lep).getMlep()*SM.getFlavour().getMVll(meson, vectorM, lep).getMlep())*( SM.getFlavour().getMVll(meson, vectorM, lep).H_P(q_min, 0).abs2() + SM.getFlavour().getMVll(meson, vectorM, lep).beta(q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).beta(q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).H_S(q_min, 0).abs2() ) + SM.getFlavour().getMVll(meson, vectorM, lep).H_V_0(q_min, 0).abs2() - SM.getFlavour().getMVll(meson, vectorM, lep).H_A_0(q_min, 0).abs2() )/
433 ( SM.getFlavour().getMVll(meson, vectorM, lep).H_V_0(q_min, 0).abs2() + SM.getFlavour().getMVll(meson, vectorM, lep).H_A_0(q_min, 0).abs2() );
434}
435
436
437S_3::S_3(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
438: GammaPrime(SM_i, meson_i, vector_i, lep_i)
439{
440 lep = lep_i;
441 meson = meson_i;
442 vectorM = vector_i;
443
445}
446
447
449{
450 double q_min = getBinMin();
451 double q_max = getBinMax();
452
453 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(4,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
454}
455
456
457S_4::S_4(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
458: GammaPrime(SM_i, meson_i, vector_i, lep_i)
459{
460 lep = lep_i;
461 meson = meson_i;
462 vectorM = vector_i;
463
465}
466
467/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
469{
470 double q_min = getBinMin();
471 double q_max = getBinMax();
472
473 return -SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(5,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
474}
475
476
477S_5::S_5(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
478: GammaPrime(SM_i, meson_i, vector_i, lep_i)
479{
480 lep = lep_i;
481 meson = meson_i;
482 vectorM = vector_i;
483
485}
486
487
489{
490 double q_min = getBinMin();
491 double q_max = getBinMax();
492
493 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(6,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
494}
495
496
497S_7::S_7(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
498: GammaPrime(SM_i, meson_i, vector_i, lep_i)
499{
500 lep = lep_i;
501 meson = meson_i;
502 vectorM = vector_i;
503
505}
506
507/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
509{
510 double q_min = getBinMin();
511 double q_max = getBinMax();
512
513 return -SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(9,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
514}
515
516
517S_8::S_8(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
518: GammaPrime(SM_i, meson_i, vector_i, lep_i)
519{
520 lep = lep_i;
521 meson = meson_i;
522 vectorM = vector_i;
523
525}
526
527
529{
530 double q_min = getBinMin();
531 double q_max = getBinMax();
532
533 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(10,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
534}
535
536
537S_9::S_9(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
538: GammaPrime(SM_i, meson_i, vector_i, lep_i)
539{
540 lep = lep_i;
541 meson = meson_i;
542 vectorM = vector_i;
543
545}
546
547/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
549{
550 double q_min = getBinMin();
551 double q_max = getBinMax();
552
553 return -SM.getFlavour().getMVll(meson, vectorM, lep).integrateSigma(11,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
554}
555
556
557A_5::A_5(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
558: GammaPrime(SM_i, meson_i, vector_i, lep_i)
559{
560 lep = lep_i;
561 meson = meson_i;
562 vectorM = vector_i;
563
565}
566
567
569{
570 double q_min = getBinMin();
571 double q_max = getBinMax();
572
573 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(6,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
574}
575
576
577A_6::A_6(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
578: GammaPrime(SM_i, meson_i, vector_i, lep_i)
579{
580 lep = lep_i;
581 meson = meson_i;
582 vectorM = vector_i;
583
585}
586
587/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
589{
590 double q_min = getBinMin();
591 double q_max = getBinMax();
592
593 return -SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(7,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
594}
595
596
597A_6c::A_6c(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
598: GammaPrime(SM_i, meson_i, vector_i, lep_i)
599{
600 lep = lep_i;
601 meson = meson_i;
602 vectorM = vector_i;
603
605}
606
607
609{
610 double q_min = getBinMin();
611 double q_max = getBinMax();
612
613 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(8,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
614}
615
616
617A_8::A_8(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
618: GammaPrime(SM_i, meson_i, vector_i, lep_i)
619{
620 lep = lep_i;
621 meson = meson_i;
622 vectorM = vector_i;
623
625}
626
627
629{
630 double q_min = getBinMin();
631 double q_max = getBinMax();
632
633 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(10,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
634}
635
636
637A_9::A_9(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
638: GammaPrime(SM_i, meson_i, vector_i, lep_i)
639{
640 lep = lep_i;
641 meson = meson_i;
642 vectorM = vector_i;
643
645}
646
647
649{
650 double q_min = getBinMin();
651 double q_max = getBinMax();
652
653 return SM.getFlavour().getMVll(meson, vectorM, lep).integrateDelta(11,q_min,q_max) / computeGammaPrime(q_min, q_max, lep);
654}
655
656V0::V0(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
657: ThObservable(SM_i)
658{
659 lep = lep_i;
660 meson = meson_i;
661 vectorM = vector_i;
662
664}
665
667{
669}
670
671Vp::Vp(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
672: ThObservable(SM_i)
673{
674 lep = lep_i;
675 meson = meson_i;
676 vectorM = vector_i;
677
679}
680
682{
684}
685
686Vm::Vm(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
687: ThObservable(SM_i)
688{
689 lep = lep_i;
690 meson = meson_i;
691 vectorM = vector_i;
692
694}
695
697{
699}
700
701T0::T0(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
702: ThObservable(SM_i)
703{
704 lep = lep_i;
705 meson = meson_i;
706 vectorM = vector_i;
707
709}
710
712{
714}
715
716Tp::Tp(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
717: ThObservable(SM_i)
718{
719 lep = lep_i;
720 meson = meson_i;
721 vectorM = vector_i;
722
724}
725
727{
729}
730
731Tm::Tm(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
732: ThObservable(SM_i)
733{
734 lep = lep_i;
735 meson = meson_i;
736 vectorM = vector_i;
737
739}
740
742{
744}
745
746S::S(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
747: ThObservable(SM_i)
748{
749 lep = lep_i;
750 meson = meson_i;
751 vectorM = vector_i;
752
754}
755
757{
759}
760
761
762gtilde_1::gtilde_1(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
763: ThObservable(SM_i)
764{
765 lep = lep_i;
766 meson = meson_i;
767 vectorM = vector_i;
768 typ = typ_i;
769
771}
772
774{
775 double q_min = getBinMin();
776
777 if (typ == 1) return (SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_1_re(q_min));
778 else if (typ == 2) return (SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_1_im(q_min));
779 else if (typ == 3) return ((SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_1_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_1_im(q_min)).abs());
780 else if (typ == 4) return ((SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_1_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_1_im(q_min)).arg());
781 else throw std::runtime_error("MVllObservables::gtilde_1: incorrect type");
782}
783
784
785gtilde_2::gtilde_2(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
786: ThObservable(SM_i)
787{
788 lep = lep_i;
789 meson = meson_i;
790 vectorM = vector_i;
791 typ = typ_i;
792
794}
795
797{
798 double q_min = getBinMin();
799
800 if (typ == 1) return (SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_2_re(q_min));
801 else if (typ == 2) return (SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_2_im(q_min));
802 else if (typ == 3) return ((SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_2_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_2_im(q_min)).abs());
803 else if (typ == 4) return ((SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_2_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_2_im(q_min)).arg());
804 else throw std::runtime_error("MVllObservables::gtilde_2: incorrect type");
805}
806
807
808gtilde_3::gtilde_3(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
809: ThObservable(SM_i)
810{
811 lep = lep_i;
812 meson = meson_i;
813 vectorM = vector_i;
814 typ = typ_i;
815
817}
818
820{
821 double q_min = getBinMin();
822
823 if (typ == 1) return (SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_3_re(q_min));
824 else if (typ == 2) return (SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_3_im(q_min));
825 else if (typ == 3) return ((SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_3_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_3_im(q_min)).abs());
826 else if (typ == 4) return ((SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_3_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).getgtilde_3_im(q_min)).arg());
827 else throw std::runtime_error("MVllObservables::gtilde_3: incorrect type");
828}
829
830h_0::h_0(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
831: ThObservable(SM_i)
832{
833 lep = lep_i;
834 meson = meson_i;
835 vectorM = vector_i;
836 typ = typ_i;
837
839}
840
842{
843 double q_min = getBinMin();
844
845 if (typ == 1) return (SM.getFlavour().getMVll(meson, vectorM, lep).geth_0_re(q_min));
846 else if (typ == 2) return (SM.getFlavour().getMVll(meson, vectorM, lep).geth_0_im(q_min));
847 else if (typ == 3) return ((SM.getFlavour().getMVll(meson, vectorM, lep).geth_0_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).geth_0_im(q_min)).abs());
848 else if (typ == 4) return ((SM.getFlavour().getMVll(meson, vectorM, lep).geth_0_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).geth_0_im(q_min)).arg());
849 else throw std::runtime_error("MVllObservables::h_0: type can only be 1:real, 2:imaginary, 3:absolute and 4:argument");
850}
851
852
853h_p::h_p(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
854: ThObservable(SM_i)
855{
856 lep = lep_i;
857 meson = meson_i;
858 vectorM = vector_i;
859 typ = typ_i;
860
862}
863
865{
866 double q_min = getBinMin();
867
868 if (typ == 1) return (SM.getFlavour().getMVll(meson, vectorM, lep).geth_p_re(q_min));
869 else if (typ == 2) return (SM.getFlavour().getMVll(meson, vectorM, lep).geth_p_im(q_min));
870 else if (typ == 3) return ((SM.getFlavour().getMVll(meson, vectorM, lep).geth_p_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).geth_p_im(q_min)).abs());
871 else if (typ == 4) return ((SM.getFlavour().getMVll(meson, vectorM, lep).geth_p_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).geth_p_im(q_min)).arg());
872 else throw std::runtime_error("MVllObservables::h_p: type can only be 1:real, 2:imaginary, 3:absolute and 4:argument");
873}
874
875
876h_m::h_m(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
877: ThObservable(SM_i)
878{
879 lep = lep_i;
880 meson = meson_i;
881 vectorM = vector_i;
882 typ = typ_i;
883
885}
886
888{
889 double q_min = getBinMin();
890
891 if (typ == 1) return (SM.getFlavour().getMVll(meson, vectorM, lep).geth_m_re(q_min));
892 else if (typ == 2) return (SM.getFlavour().getMVll(meson, vectorM, lep).geth_m_im(q_min));
893 else if (typ == 3) return ((SM.getFlavour().getMVll(meson, vectorM, lep).geth_m_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).geth_m_im(q_min)).abs());
894 else if (typ == 4) return ((SM.getFlavour().getMVll(meson, vectorM, lep).geth_m_re(q_min) + gslpp::complex::i() * SM.getFlavour().getMVll(meson, vectorM, lep).geth_m_im(q_min)).arg());
895 else throw std::runtime_error("MVllObservables::h_m: type can only be 1:real, 2:imaginary, 3:absolute and 4:argument");
896}
897
898/***********************************************************************************************************************************
899FUNCTIONAL
900***********************************************************************************************************************************/
901
902P_1f::P_1f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
903: ThObservable(SM_i)
904{
905 lep = lep_i;
906 meson = meson_i;
907 vectorM = vector_i;
908
910}
911
913{
914 double q_min = getBinMin();
915
916 return SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(4,q_min)/(2.* SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
917}
918
919
920P_2f::P_2f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
921: ThObservable(SM_i)
922{
923 lep = lep_i;
924 meson = meson_i;
925 vectorM = vector_i;
926
928}
929
930/*Returns experimental value, defined according to 1510.04239.*/
932{
933 double q_min = getBinMin();
934
935 double P_2f_theory = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(7,q_min)/(8.*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
936
937 return -P_2f_theory;
938}
939
940
941P_3f::P_3f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
942: ThObservable(SM_i)
943{
944 lep = lep_i;
945 meson = meson_i;
946 vectorM = vector_i;
947
949}
950
951/*Returns experimental value, defined according to 1510.04239.*/
953{
954 double q_min = getBinMin();
955
956 double P_3f_theory = -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(11,q_min)/(4.*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
957
958 return -P_3f_theory;
959}
960
961
963: ThObservable(SM_i)
964{
965 lep = lep_i;
966 meson = meson_i;
967 vectorM = vector_i;
968
970}
971
972/*Returns experimental value, defined according to 1510.04239.*/
974{
975 double q_min = getBinMin();
976
977 double P_4pf_theory = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(5,q_min)/sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
978
979 return -1./2.*P_4pf_theory;
980}
981
982
984: ThObservable(SM_i)
985{
986 lep = lep_i;
987 meson = meson_i;
988 vectorM = vector_i;
989
991}
992
994{
995 double q_min = getBinMin();
996
997 return SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(6,q_min)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
998}
999
1000
1002: ThObservable(SM_i)
1003{
1004 lep = lep_i;
1005 meson = meson_i;
1006 vectorM = vector_i;
1007
1009}
1010
1012{
1013 double q_min = getBinMin();
1014
1015 return -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(9,q_min)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
1016}
1017
1018/*Returns experimental value, defined according to 1510.04239.*/
1020: ThObservable(SM_i)
1021{
1022 lep = lep_i;
1023 meson = meson_i;
1024 vectorM = vector_i;
1025
1027}
1028
1030{
1031 double q_min = getBinMin();
1032
1033 double P_8pf_theory = -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(10,q_min)/(sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
1034
1035 return -1./2.*P_8pf_theory;
1036}
1037
1038
1040: ThObservable(SM_i)
1041{
1042 lep = lep_i;
1043 meson = meson_i;
1044 vectorM = vector_i;
1045
1047}
1048
1050{
1051 double q_min = qmin;
1052 QCD::lepton lep_i = lep;
1053
1054 return ((3.*SM.getFlavour().getMVll(meson, vectorM, lep_i).getSigma(0,q_min) - SM.getFlavour().getMVll(meson, vectorM, lep_i).getSigma(2,q_min)) + 2.*(3.*SM.getFlavour().getMVll(meson, vectorM, lep_i).getSigma(1,q_min) - SM.getFlavour().getMVll(meson, vectorM, lep_i).getSigma(3,q_min)))/4.;
1055}
1056
1058{
1059 double q_min = getBinMin();
1060
1061 return computeGammaPrimef(q_min, lep);
1062}
1063
1064
1065A_FBf::A_FBf(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1066: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1067{
1068 lep = lep_i;
1069 meson = meson_i;
1070 vectorM = vector_i;
1071
1073}
1074
1076{
1077 double q_min = getBinMin();
1078
1079 return -3. * SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(7,q_min) / 4. / computeGammaPrimef(q_min, lep);
1080}
1081
1082F_Lf::F_Lf(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1083: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1084{
1085 lep = lep_i;
1086 meson = meson_i;
1087 vectorM = vector_i;
1088
1090}
1091
1092double F_Lf::computeFLf(double qmin, QCD::lepton lep)
1093{
1094 double q_min = qmin;
1095 QCD::lepton lep_i = lep;
1096
1097 double sigma0 = SM.getFlavour().getMVll(meson, vectorM, lep_i).getSigma(0,q_min);
1098 double sigma2 = SM.getFlavour().getMVll(meson, vectorM, lep_i).getSigma(2,q_min);
1099
1100 return (3.*sigma0 - sigma2) / (4. * computeGammaPrimef(q_min, lep_i)) ;
1101}
1102
1103
1105{
1106 double q_min = getBinMin();
1107
1108 return computeFLf(q_min, lep);
1109}
1110
1111S_3f::S_3f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1112: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1113{
1114 lep = lep_i;
1115 meson = meson_i;
1116 vectorM = vector_i;
1117
1119}
1120
1121
1123{
1124 double q_min = getBinMin();
1125
1126 return SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(4,q_min) / computeGammaPrimef(q_min, lep);
1127}
1128
1129
1130S_4f::S_4f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1131: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1132{
1133 lep = lep_i;
1134 meson = meson_i;
1135 vectorM = vector_i;
1136
1138}
1139
1140/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
1142{
1143 double q_min = getBinMin();
1144
1145 return -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(5,q_min) / computeGammaPrimef(q_min, lep);
1146}
1147
1148
1149S_5f::S_5f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1150: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1151{
1152 lep = lep_i;
1153 meson = meson_i;
1154 vectorM = vector_i;
1155
1157}
1158
1159
1161{
1162 double q_min = getBinMin();
1163
1164 return SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(6,q_min) / computeGammaPrimef(q_min, lep);
1165}
1166
1167
1168S_7f::S_7f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1169: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1170{
1171 lep = lep_i;
1172 meson = meson_i;
1173 vectorM = vector_i;
1174
1176}
1177
1178/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
1180{
1181 double q_min = getBinMin();
1182
1183 return -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(9,q_min) / computeGammaPrimef(q_min, lep);
1184}
1185
1186
1187S_8f::S_8f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1188: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1189{
1190 lep = lep_i;
1191 meson = meson_i;
1192 vectorM = vector_i;
1193
1195}
1196
1198{
1199 double q_min = getBinMin();
1200
1201 return SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(10,q_min) / computeGammaPrimef(q_min, lep);
1202}
1203
1204
1205S_9f::S_9f(const StandardModel& SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
1206: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1207{
1208 lep = lep_i;
1209 meson = meson_i;
1210 vectorM = vector_i;
1211
1213}
1214
1215/*Returns experimental value, due to difference in \theta_l and \phi definitions*/
1217{
1218 double q_min = getBinMin();
1219
1220 return -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(11,q_min) / computeGammaPrimef(q_min, lep);
1221}
1222
1224: GammaPrimef(SM_i, meson_i, vector_i, lep_i)
1225{
1226 lep = lep_i;
1227 meson = meson_i;
1228 vectorM = vector_i;
1229
1231}
1232
1234{
1235 double q_min = getBinMin();
1236
1238}
1239
1241: ThObservable(SM_i)
1242{
1243 lep = lep_i;
1244 meson = meson_i;
1245 vectorM = vector_i;
1246
1248}
1249
1251{
1252 double q_min = getBinMin();
1253 double P1 = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(4,q_min)/(2.* SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1254 double P2 = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(7,q_min)/(8.*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1255 double P4p = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(5,q_min)/sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1256 double P5p = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(6,q_min)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
1257 double beta = sqrt(1. - 4.*SM.getLeptons(lep).getMass()*SM.getLeptons(lep).getMass()/q_min/q_min);
1258
1259 return 1./2.*(P4p*P5p + 1./beta *sqrt(std::abs((-1. + P1 + P4p*P4p)*(-1. - P1 + beta*beta*P5p*P5p)))) - P2;
1260}
1261
1263: ThObservable(SM_i)
1264{
1265 lep = lep_i;
1266 meson = meson_i;
1267 vectorM = vector_i;
1268
1270}
1271
1273{
1274 double q_min = getBinMin();
1275 double P1 = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(4,q_min)/(2.* SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1276 double P2 = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(7,q_min)/(8.*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1277 double P3 = -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(11,q_min)/(4.*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1278 double P4p = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(5,q_min)/sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min));
1279 double P5p = SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(6,q_min)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
1280 double P6p = -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(9,q_min)/(2.*sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
1281 double P8p = -SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(10,q_min)/(sqrt(-SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(2,q_min)*SM.getFlavour().getMVll(meson, vectorM, lep).getSigma(3,q_min)));
1282
1283 double beta = sqrt(1. - 4.*SM.getLeptons(lep).getMass()*SM.getLeptons(lep).getMass()/q_min/q_min);
1284
1285 /* k1 and k2 not fully implemented. arXiv:1402.6855*/
1286 double k1 = 1.;
1287 double k2 = 1.;
1288
1289 double delta_1 = P6p*P8p;
1290 double delta_2 = -1. + k1*k1*k2*k2 + (1. - k1*k2)*(P4p*P4p + beta*beta*P5p*P5p) - 4.*k1*k1*P3*P3 + beta*beta*P6p*P8p*(2.*P4p*P5p + P6p*P8p) + k1*(beta*beta*P6p*(4.*P3*P5p - k2*P6p) - P8p*(4.*P3*P4p + k2*P8p));
1291 double delta_3 = (1. - k1)*P4p*P4p + beta*beta*((-1. + k1)*P5p*P5p - k1*P6p*P6p) + k1*P8p*P8p;
1292 double delta_4 = 1. - k1*k1;
1293
1294 return 1./2./k1*((P4p*P5p + delta_1) + 1./beta *sqrt(std::abs((-1. + P1 + P4p*P4p)*(-1. - P1 + beta*beta*P5p*P5p) + delta_2 + delta_3*P1 + delta_4*P1*P1))) - P2;
1295}
1296
1298: ThObservable(SM_i)
1299{
1300 lep = lep_i;
1301 meson = meson_i;
1302 vectorM = vector_i;
1303
1305}
1306
1308{
1309 double q2 = getBinMin();
1310 double cutoff = getBinMax();
1311
1312 return SM.getFlavour().getMVll(meson, vectorM, lep).getQCDfC9_1(q2, cutoff);
1313}
1314
1316: ThObservable(SM_i)
1317{
1318 lep = lep_i;
1319 meson = meson_i;
1320 vectorM = vector_i;
1321
1323}
1324
1326{
1327 double q2 = getBinMin();
1328 double cutoff = getBinMax();
1329
1330 return SM.getFlavour().getMVll(meson, vectorM, lep).getQCDfC9_2(q2, cutoff);
1331}
1332
1334: ThObservable(SM_i)
1335{
1336 lep = lep_i;
1337 meson = meson_i;
1338 vectorM = vector_i;
1339
1341}
1342
1344{
1345 double q2 = getBinMin();
1346 double cutoff = getBinMax();
1347
1348 return SM.getFlavour().getMVll(meson, vectorM, lep).getQCDfC9_3(q2, cutoff);
1349}
1350
1352: ThObservable(SM_i)
1353{
1354 lep = lep_i;
1355 meson = meson_i;
1356 vectorM = vector_i;
1357
1359}
1360
1362{
1363 double cutoff = getBinMin();
1364
1365 return SM.getFlavour().getMVll(meson, vectorM, lep).getQCDfC9p_1(cutoff);
1366}
1367
1369: ThObservable(SM_i)
1370{
1371 lep = lep_i;
1372 meson = meson_i;
1373 vectorM = vector_i;
1374
1376}
1377
1379{
1380 double cutoff = getBinMin();
1381
1382 return SM.getFlavour().getMVll(meson, vectorM, lep).getQCDfC9p_2(cutoff);
1383}
1384
1386: ThObservable(SM_i)
1387{
1388 lep = lep_i;
1389 meson = meson_i;
1390 vectorM = vector_i;
1391
1393}
1394
1396{
1397 double cutoff = getBinMin();
1398
1399 return SM.getFlavour().getMVll(meson, vectorM, lep).getQCDfC9p_3(cutoff);
1400}
1401
1403: ThObservable(SM_i)
1404{
1405 lep = lep_i;
1406 meson = meson_i;
1407 vectorM = vector_i;
1408
1410}
1411
1413{
1414 double q2 = getBinMin();
1415 double A2_0 = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,0).abs2();
1416 double A2_par = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,1).abs2();
1417 double A2_perp = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,2).abs2();
1418 return 2.*(A2_0+A2_par+A2_perp)/SM.getFlavour().getMVll(meson, vectorM, lep).getwidth();
1419}
1420
1422: ThObservable(SM_i)
1423{
1424 lep = lep_i;
1425 meson = meson_i;
1426 vectorM = vector_i;
1427
1429}
1430
1432{
1433 double A2_0_JPSI = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(3.0969,0).abs2();
1434 double A2_par_JPSI = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(3.0969,1).abs2();
1435 double A2_perp_JPSI = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(3.0969,2).abs2();
1436
1437 double A2_0_PSI2S = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(3.6861,0).abs2();
1438 double A2_par_PSI2S = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(3.6861,1).abs2();
1439 double A2_perp_PSI2S = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(3.6861,2).abs2();
1440
1441 return (A2_0_PSI2S+A2_par_PSI2S+A2_perp_PSI2S)/(A2_0_JPSI+A2_par_JPSI+A2_perp_JPSI);
1442}
1443
1445: ThObservable(SM_i)
1446{
1447 lep = lep_i;
1448 meson = meson_i;
1449 vectorM = vector_i;
1450
1452}
1453
1455{
1456 double q2 = getBinMin();
1457 double A2_0 = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,0).abs2();
1458 double A2_par = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,1).abs2();
1459 double A2_perp = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,2).abs2();
1460 return A2_par/(A2_0+A2_par+A2_perp);
1461}
1462
1464: ThObservable(SM_i)
1465{
1466 lep = lep_i;
1467 meson = meson_i;
1468 vectorM = vector_i;
1469
1471}
1472
1474{
1475 double q2 = getBinMin();
1477}
1478
1480: ThObservable(SM_i)
1481{
1482 lep = lep_i;
1483 meson = meson_i;
1484 vectorM = vector_i;
1485
1487}
1488
1490{
1491 double q2 = getBinMin();
1492 double A2_0 = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,0).abs2();
1493 double A2_par = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,1).abs2();
1494 double A2_perp = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,2).abs2();
1495 return A2_perp/(A2_0+A2_par+A2_perp);
1496}
1497
1499: ThObservable(SM_i)
1500{
1501 lep = lep_i;
1502 meson = meson_i;
1503 vectorM = vector_i;
1504
1506}
1507
1509{
1510 double q2 = getBinMin();
1512}
1513
1515: ThObservable(SM_i)
1516{
1517 lep = lep_i;
1518 meson = meson_i;
1519 vectorM = vector_i;
1520
1522}
1523
1525{
1526 double q2 = getBinMin();
1527 double A2_0 = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,0).abs2();
1528 double A2_par = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,1).abs2();
1529 double A2_perp = SM.getFlavour().getMVll(meson, vectorM, lep).AmpMVpsi_zExpansion(q2,2).abs2();
1530 return A2_0/(A2_0+A2_par+A2_perp);
1531}
1532
1534: ThObservable(SM_i)
1535{
1536 lep = lep_i;
1537 meson = meson_i;
1538 vectorM = vector_i;
1539
1541}
1542
1544{
1546}
1547
1549: ThObservable(SM_i)
1550{
1551 lep = lep_i;
1552 meson = meson_i;
1553 vectorM = vector_i;
1554
1556}
1557
1559{
1561}
1562
1564: ThObservable(SM_i)
1565{
1566 lep = lep_i;
1567 meson = meson_i;
1568 vectorM = vector_i;
1569
1571}
1572
1574{
1576}
QCD::meson meson
QCD::meson vectorM
QCD::lepton lep
A_5(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
double computeThValue()
The observable in .
QCD::meson vectorM
A_6(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson meson
QCD::lepton lep
QCD::meson vectorM
A_6c(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
double computeThValue()
The observable in .
A_8(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::meson vectorM
QCD::lepton lep
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::meson meson
QCD::lepton lep
A_9(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::meson vectorM
A_FB(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
double computeThValue()
The binned observable in .
QCD::meson meson
QCD::meson meson
double computeThValue()
The observable in .
A_FBf(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson vectorM
QCD::meson vectorM
double computeThValue()
The binned observable in .
ACP_MVll(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::lepton lep
double computeThValue()
The observable Abs(A//) of .
Abs2Ampar_MVpsi(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
Abs2Amperp_MVpsi(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable Abs(A_|_) of .
double computeThValue()
The observable Abs(A0) of .
Abs2Ampzero_MVpsi(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
double computeThValue()
The observable Arg(A//) of .
ArgAmpar_MVpsi(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
ArgAmperp_MVpsi(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable Arg(A_|_) of .
QCD::meson vectorM
QCD::meson meson
double computeThValue()
The binned observable in .
QCD::lepton lep
BR_MVll(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
BR_MVpsi_ratio(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
double computeThValue()
The observable BR of .
QCD::meson meson
QCD::meson vectorM
BR_MVpsi(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable BR of .
QCD::lepton lep
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
BRf_MVll(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
double computeThValue()
The observable Abs(A0) of .
Delta_C9_zExp_0(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable Abs(A0) of .
Delta_C9_zExp_m(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
Delta_C9_zExp_p(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable Abs(A0) of .
A class for the binned observable in .
QCD::lepton lep
double computeFL(double qmin, double qmax, QCD::lepton lep)
A method to compute the binned observable in in a generic bin.
F_L(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The binned observable in .
QCD::meson meson
QCD::meson vectorM
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
F_Lf(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
double computeFLf(double qmin, QCD::lepton lep)
A method to compute the observable in at a generic .
MVll & getMVll(QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i) const
Returns the initial and final state dependent object for .
Definition: Flavour.cpp:209
A class for the binned observable in .
QCD::meson vectorM
GammaPrime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::lepton lep
double computeGammaPrime(double qmin, double qmax, QCD::lepton lep)
A method to compute the binned observable in in a generic bin.
double computeThValue()
The binned observable in .
A class for the observable in .
QCD::meson meson
double computeGammaPrimef(double qmin, QCD::lepton lep)
A method to compute the observable in at a generic .
QCD::lepton lep
GammaPrimef(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::meson meson
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::lepton lep
M_1Prime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::lepton lep
M_2Prime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
double computeThValue()
The observable in .
double getDelta_C9_zExp_p()
The non-pertubative ccbar contributions to the helicity amplitudes.
Definition: MVll.h:489
double getgtilde_2_re(double q2)
The real part of .
Definition: MVll.h:653
double getS(double q2)
The form factor .
Definition: MVll.h:454
double getQCDfC9_2(double q2, double cutoff)
Definition: MVll.h:596
double getQCDfC9p_1(double cutoff)
Definition: MVll.h:608
double getDelta_C9_zExp_m()
The non-pertubative ccbar contributions to the helicity amplitudes.
Definition: MVll.h:499
double geth_0_re(double q2)
The real part of .
Definition: MVll.h:699
double geth_p_im(double q2)
The imaginary part of .
Definition: MVll.h:738
gslpp::complex H_A_p(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2502
double getMlep()
The mass of the lepton l.
Definition: MVll.h:372
double getgtilde_2_im(double q2)
The immaginary part of .
Definition: MVll.h:664
double geth_m_im(double q2)
The imaginary part of .
Definition: MVll.h:767
double getVm(double q2)
The form factor .
Definition: MVll.h:411
double getVp(double q2)
The form factor .
Definition: MVll.h:400
gslpp::complex H_S(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2522
std::vector< std::string > initializeMVllParameters()
A method for initializing the parameters necessary for MVll.
Definition: MVll.cpp:160
double integrateDelta(int i, double q_min, double q_max)
The integral of from to .
Definition: MVll.cpp:2890
double getgtilde_3_im(double q2)
The imaginary part of .
Definition: MVll.h:687
double getTm(double q2)
The form factor .
Definition: MVll.h:443
gslpp::complex H_V_0(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2461
double getT0(double q2)
The form factor .
Definition: MVll.h:421
double getSigma(int i, double q_2)
The value of from to .
Definition: MVll.cpp:2845
gslpp::complex H_V_p(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2472
double getgtilde_3_re(double q2)
The real part of .
Definition: MVll.h:675
double getwidth()
The width of the meson M.
Definition: MVll.h:363
double getV0(double q2)
The form factor .
Definition: MVll.h:389
double getDelta_C9_zExp_0()
The non-pertubative ccbar contributions to the helicity amplitudes.
Definition: MVll.h:479
double geth_p_re(double q2)
The real part of .
Definition: MVll.h:728
double integrateSigmaTree(double q_min, double q_max)
The integral of from to (arxiv/2301.06990)
Definition: MVll.cpp:2989
double geth_0_im(double q2)
The imaginary part of .
Definition: MVll.h:709
double getTp(double q2)
The form factor .
Definition: MVll.h:432
gslpp::complex H_V_m(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2482
gslpp::complex AmpMVpsi_zExpansion(double mpsi, int tran)
Polarization amplitudes for M to V psi, Eq. B.16 of arXiv:2206.03797.
Definition: MVll.cpp:2538
double geth_m_re(double q2)
The real part of .
Definition: MVll.h:757
gslpp::complex H_A_0(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2492
double getQCDfC9p_2(double cutoff)
Definition: MVll.h:614
double getQCDfC9p_3(double cutoff)
Definition: MVll.h:620
double getgtilde_1_im(double q2)
The immaginary part of .
Definition: MVll.h:642
double getQCDfC9_1(double q2, double cutoff)
Definition: MVll.h:590
gslpp::complex H_A_m(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2512
gslpp::complex H_P(double q2, bool bar)
The helicity amplitude .
Definition: MVll.cpp:2530
double integrateSigma(int i, double q_min, double q_max)
The integral of from to .
Definition: MVll.cpp:2727
double getQCDfC9_3(double q2, double cutoff)
Definition: MVll.h:602
double beta(double q2)
The factor used in the angular coefficients .
Definition: MVll.cpp:2570
double getgtilde_1_re(double q2)
The real part of .
Definition: MVll.h:631
const double & getDgamma_gamma() const
Definition: Meson.h:411
QCD::lepton lep
P3CP(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The binned observable in .
QCD::meson vectorM
QCD::meson meson
QCD::meson meson
double computeThValue()
The binned observable in .
P_1(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::lepton lep
QCD::meson vectorM
QCD::lepton lep
P_1f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
double computeThValue()
The observable in .
P_2(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The binned observable in .
P_2f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The observable in .
QCD::lepton lep
QCD::meson vectorM
QCD::meson meson
P_3(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
double computeThValue()
The binned observable in .
QCD::meson meson
P_3f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::lepton lep
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::meson meson
double computeThValue()
The binned observable in .
QCD::lepton lep
P_4Prime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
P_4Primef(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson vectorM
QCD::meson meson
QCD::meson meson
QCD::meson vectorM
QCD::lepton lep
double computeThValue()
The binned observable in .
P_5Prime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
P_5Primef(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::lepton lep
QCD::lepton lep
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The binned observable in .
P_6Prime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson vectorM
P_6Primef(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
double computeThValue()
The observable in .
double computeThValue()
The binned observable in .
QCD::lepton lep
QCD::meson meson
P_8Prime(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
P_8Primef(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::meson meson
QCD::lepton lep
QCD::meson vectorM
double computeThValue()
The observable in .
P_relation_exactf(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
P_relationf(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::meson meson
QCD::lepton lep
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
meson
An enum type for mesons.
Definition: QCD.h:336
@ PHI
Definition: QCD.h:348
@ K_star
Definition: QCD.h:349
@ K_star_P
Definition: QCD.h:350
@ B_S
Definition: QCD.h:346
const Meson & getMesons(const QCD::meson m) const
A get method to access a meson as an object of the type Meson.
Definition: QCD.h:526
lepton
An enum type for leptons.
Definition: QCD.h:310
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
QCDfC9_1f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::lepton lep
QCD::meson vectorM
double computeThValue()
The observable in .
QCDfC9_2f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
double computeThValue()
The observable in .
QCDfC9_3f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson vectorM
QCD::meson meson
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
double computeThValue()
The observable in .
QCDfC9p_1f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCDfC9p_2f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::lepton lep
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::lepton lep
QCDfC9p_3f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The observable in .
R_6(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
Constructor.
QCD::meson meson
QCD::meson vectorM
QCD::lepton lep1
QCD::lepton lep2
double computeThValue()
The binned observable ratio in .
QCD::lepton lep1
QCD::meson meson
double computeThValue()
The binned observable ratio in .
QCD::meson vectorM
R_MVll(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
Constructor.
QCD::lepton lep2
QCD::lepton lep2
QCD::lepton lep1
double computeThValue()
The binned observable ratio in .
QCD::meson vectorM
RL_MVll(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
Constructor.
QCD::meson meson
QCD::lepton lep1
QCD::lepton lep2
double computeThValue()
The binned observable ratio in .
RT_MVll(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_1, QCD::lepton lep_2)
Constructor.
QCD::meson vectorM
QCD::meson meson
S_3(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
double computeThValue()
The observable in .
QCD::meson meson
QCD::lepton lep
QCD::meson meson
double computeThValue()
The observable in .
QCD::meson vectorM
QCD::lepton lep
S_3f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson meson
QCD::meson vectorM
S_4(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::lepton lep
QCD::meson meson
QCD::meson vectorM
S_4f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
double computeThValue()
The observable in .
S_5(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
QCD::lepton lep
S_5f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The observable in .
QCD::meson meson
QCD::meson vectorM
S_7(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The observable in .
QCD::meson vectorM
double computeThValue()
The observable in .
S_7f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::lepton lep
QCD::meson vectorM
S_8(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
double computeThValue()
The observable in .
QCD::lepton lep
QCD::meson meson
S_8f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::lepton lep
double computeThValue()
The observable in .
QCD::lepton lep
S_9(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The observable in .
double computeThValue()
The observable in .
S_9f(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson vectorM
QCD::meson meson
QCD::meson vectorM
double computeThValue()
The averaged form factor in .
S(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
QCD::lepton lep
A model class for the Standard Model.
const Particle & getLeptons(const QCD::lepton p) const
A get method to retrieve the member object of a lepton.
const Flavour & getFlavour() const
QCD::lepton lep
QCD::meson vectorM
T0(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
double computeThValue()
The averaged form factor in .
QCD::meson meson
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
double getBinMax()
A get method to get the maximum value of the bin.
Definition: ThObservable.h:91
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121
QCD::lepton lep
QCD::meson meson
double computeThValue()
The averaged form factor in .
Tm(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::meson meson
Tp(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::lepton lep
QCD::meson vectorM
double computeThValue()
The averaged form factor in .
V0(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
double computeThValue()
The averaged form factor in .
Vm(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson vectorM
QCD::meson meson
QCD::lepton lep
double computeThValue()
The averaged form factor in .
QCD::meson vectorM
Vp(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i)
Constructor.
QCD::meson meson
double computeThValue()
The averaged form factor in .
QCD::lepton lep
unsigned int typ
QCD::meson vectorM
double computeThValue()
The averaged correction in .
gtilde_1(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
Constructor.
QCD::meson meson
QCD::lepton lep
QCD::meson vectorM
QCD::lepton lep
unsigned int typ
QCD::meson meson
double computeThValue()
The averaged correction in .
gtilde_2(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
Constructor.
double computeThValue()
The averaged correction in .
QCD::meson meson
QCD::meson vectorM
gtilde_3(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
Constructor.
unsigned int typ
QCD::lepton lep
h_0(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
Constructor.
QCD::meson meson
unsigned int typ
QCD::lepton lep
QCD::meson vectorM
double computeThValue()
The correction in .
h_m(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
Constructor.
unsigned int typ
double computeThValue()
The correction in .
QCD::meson vectorM
QCD::lepton lep
QCD::meson meson
QCD::meson vectorM
unsigned int typ
QCD::meson meson
QCD::lepton lep
h_p(const StandardModel &SM_i, QCD::meson meson_i, QCD::meson vector_i, QCD::lepton lep_i, unsigned int typ_i)
Constructor.
double computeThValue()
The correction in .