evtgen is hosted by Hepforge, IPPP Durham
EvtGen  2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
EvtbTosllWilsCoeffNLO.cpp
Go to the documentation of this file.
1 
2 /***********************************************************************
3 * Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4 * *
5 * This file is part of EvtGen. *
6 * *
7 * EvtGen is free software: you can redistribute it and/or modify *
8 * it under the terms of the GNU General Public License as published by *
9 * the Free Software Foundation, either version 3 of the License, or *
10 * (at your option) any later version. *
11 * *
12 * EvtGen is distributed in the hope that it will be useful, *
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15 * GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU General Public License *
18 * along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19 ***********************************************************************/
20 
22 
23 #include "EvtGenBase/EvtDiLog.hh"
24 #include "EvtGenBase/EvtId.hh"
25 #include "EvtGenBase/EvtReport.hh"
28 
29 #include <cstdlib>
30 
31 // **************************************************************
32 // * *
33 // * The strong running coupling constant from PDG *
34 // * *
35 // * mu - the scale parameter ( in GeV ); *
36 // * Nf - number of "effective" flavours ( Nf=5 for b-quark); *
37 // * the colors number = 3; *
38 // * ias - the number for alpha_s(M_Z) choice: *
39 // * = 0 PDG 1sigma minimal alpha_s(M_Z); *
40 // * = 1 PDG average value alpha_s(M_Z); *
41 // * = 2 PDG 1sigma maximal alpha_s(M_Z). *
42 // * *
43 // **************************************************************
44 double EvtbTosllWilsCoeffNLO::As( double mu, int Nf, int ias )
45 {
46  double as, ll;
47  double b0, b1, b2; /* terms in the series of the beta-function */
48  double alpha_strong[] = {0.1156, 0.1176, 0.1196}; /* at M_Z scale */
49  double MZ = 91.19; /* in GeV */
50 
51  b0 = 11. - 2. * ( (double)Nf ) / 3.;
52  b1 = 51. - 19. * ( (double)Nf ) / 3.;
53  b2 = 2857. - 5033. * ( (double)Nf ) / 9. +
54  325. * pow( ( (double)Nf ), 2. ) / 27.;
55 
56  // RG Equation solution
57  alpha_strong[ias] = alpha_strong[ias] / ( 4.0 * EvtConst::pi );
58  ll = 0.0 - log( MZ / mu ) +
59  ( b0 * b2 - b1 * b1 ) * alpha_strong[ias] / ( 2.0 * pow( b0, 3.0 ) );
60  ll = ll + 1.0 / ( 2.0 * b0 * alpha_strong[ias] );
61  ll = ll + b1 * log( alpha_strong[ias] ) / ( 2.0 * b0 * b0 );
62 
63  // Running coupling constant from M_Z to mu
64  as = pow( ( log( log( 2.0 * ll ) ) - 0.5 ), 2.0 ) +
65  b2 * b0 / ( 8.0 * b1 * b1 ) - 5.0 / 4.0;
66  as = as * pow( ( b1 / ( b0 * b0 * ll ) ), 2.0 );
67  as = 1.0 - b1 * log( 2.0 * ll ) / ( b0 * b0 * ll ) - as;
68  as = 2.0 * EvtConst::pi * as / ( b0 * ll );
69 
70  if ( as <= 0.0 ) {
71  EvtGenReport( EVTGEN_ERROR, "EvtGen" )
72  << "The function EvtbTosllWilsCoeffNLO::As"
73  << "\n Unexpected value of the running coupling constant!"
74  << "\n alpha_s(" << mu << ") = " << as << ";"
75  << "\n Nf =" << Nf << ", ias = " << ias << ";"
76  << "\n ln(mu/lambda_QCD) = " << ll << ";" << std::endl;
77  ::abort();
78  }
79 
80  return as;
81 }
82 
83 // ************************************************************
84 // * *
85 // * Spencer function *
86 // * in serial representation *
87 // * ( w <= 1.0 ) *
88 // * *
89 // * *
90 // ************************************************************
91 double EvtbTosllWilsCoeffNLO::Li2( double w )
92 {
93  double Lii = 0.0;
94  double k = 1.0;
95 
96  while ( k <= 20.0 ) {
97  Lii = Lii + pow( w, k ) / pow( k, 2.0 );
98  k++;
99  };
100 
101  /* printf("\n Spencer function value: Lii(%f)=%f \n\n",w,Lii); */
102 
103  return Lii;
104 }
105 
106 /* Coefficient C1(mu) *
107  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
108 double EvtbTosllWilsCoeffNLO::C1( double mu, double Mw, int Nf, int ias )
109 {
110  double CC1;
111  double eta;
112  double asW; /* the strong coupling constant at the scale Mw */
113  double asmu; /* the strong coupling constant at the scale mu */
114  int i;
115 
116  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
117  0.4086, -0.4230, -0.8994, 0.1456};
118  double k1[] = {0.0, 0.0, 0.5, -0.5, 0.0, 0.0, 0.0, 0.0};
119 
120  asW = As( Mw, Nf, ias );
121  asmu = As( mu, Nf, ias );
122  eta = asW / asmu;
123 
124  CC1 = 0.0;
125  i = 0;
126  while ( i < 8 ) {
127  CC1 = CC1 + k1[i] * pow( eta, a[i] );
128  i++;
129  };
130 
131  return CC1;
132 }
133 
134 /* Coefficient C2(mu) *
135  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
136 double EvtbTosllWilsCoeffNLO::C2( double mu, double Mw, int Nf, int ias )
137 {
138  double CC2;
139  double eta;
140  double asW; /* the strong coupling constant at the scale Mw */
141  double asmu; /* the strong coupling constant at the scale mu */
142  int i;
143 
144  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
145  0.4086, -0.4230, -0.8994, 0.1456};
146  double k2[] = {0.0, 0.0, 0.5, 0.5, 0.0, 0.0, 0.0, 0.0};
147 
148  asW = As( Mw, Nf, ias );
149  asmu = As( mu, Nf, ias );
150  eta = asW / asmu;
151 
152  CC2 = 0.0;
153  i = 0;
154  while ( i < 8 ) {
155  CC2 = CC2 + k2[i] * pow( eta, a[i] );
156  i++;
157  };
158 
159  return CC2;
160 }
161 
162 /* Coefficient C3(mu) *
163  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
164 double EvtbTosllWilsCoeffNLO::C3( double mu, double Mw, int Nf, int ias )
165 {
166  double CC3;
167  double eta;
168  double asW; /* the strong coupling constant at the scale Mw */
169  double asmu; /* the strong coupling constant at the scale mu */
170  int i;
171 
172  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
173  0.4086, -0.4230, -0.8994, 0.1456};
174  double k3[] = {0.0, 0.0, -1.0 / 14.0, 1.0 / 6.0,
175  0.0510, -0.1403, -0.0113, 0.0054};
176 
177  asW = As( Mw, Nf, ias );
178  asmu = As( mu, Nf, ias );
179  eta = asW / asmu;
180 
181  CC3 = 0.0;
182  i = 0;
183  while ( i < 8 ) {
184  CC3 = CC3 + k3[i] * pow( eta, a[i] );
185  i++;
186  };
187 
188  return CC3;
189 }
190 
191 /* Coefficient C4(mu) *
192  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
193 double EvtbTosllWilsCoeffNLO::C4( double mu, double Mw, int Nf, int ias )
194 {
195  double CC4;
196  double eta;
197  double asW; /* the strong coupling constant at the scale Mw */
198  double asmu; /* the strong coupling constant at the scale mu */
199  int i;
200 
201  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
202  0.4086, -0.4230, -0.8994, 0.1456};
203  double k4[] = {0.0, 0.0, -1.0 / 14.0, -1.0 / 6.0,
204  0.0984, 0.1214, 0.0156, 0.0026};
205 
206  asW = As( Mw, Nf, ias );
207  asmu = As( mu, Nf, ias );
208  eta = asW / asmu;
209 
210  CC4 = 0.0;
211  i = 0;
212  while ( i < 8 ) {
213  CC4 = CC4 + k4[i] * pow( eta, a[i] );
214  i++;
215  };
216 
217  return CC4;
218 }
219 
220 /* Coefficient C5(mu) *
221  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
222 double EvtbTosllWilsCoeffNLO::C5( double mu, double Mw, int Nf, int ias )
223 {
224  double CC5;
225  double eta;
226  double asW; /* the strong coupling constant at the scale Mw */
227  double asmu; /* the strong coupling constant at the scale mu */
228  int i;
229 
230  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
231  0.4086, -0.4230, -0.8994, 0.1456};
232  double k5[] = {0.0, 0.0, 0.0, 0.0, -0.0397, 0.0117, -0.0025, 0.0304};
233 
234  asW = As( Mw, Nf, ias );
235  asmu = As( mu, Nf, ias );
236  eta = asW / asmu;
237 
238  CC5 = 0.0;
239  i = 0;
240  while ( i < 8 ) {
241  CC5 = CC5 + k5[i] * pow( eta, a[i] );
242  i++;
243  };
244 
245  return CC5;
246 }
247 
248 /* Coefficient C6(mu) *
249  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
250 double EvtbTosllWilsCoeffNLO::C6( double mu, double Mw, int Nf, int ias )
251 {
252  double CC6;
253  double eta;
254  double asW; /* the strong coupling constant at the scale Mw */
255  double asmu; /* the strong coupling constant at the scale mu */
256  int i;
257 
258  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
259  0.4086, -0.4230, -0.8994, 0.1456};
260  double k6[] = {0.0, 0.0, 0.0, 0.0, 0.0335, 0.0239, -0.0462, -0.0112};
261 
262  asW = As( Mw, Nf, ias );
263  asmu = As( mu, Nf, ias );
264  eta = asW / asmu;
265 
266  CC6 = 0.0;
267  i = 0;
268  while ( i < 8 ) {
269  CC6 = CC6 + k6[i] * pow( eta, a[i] );
270  i++;
271  };
272 
273  return CC6;
274 }
275 
276 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
277 double EvtbTosllWilsCoeffNLO::A( double z )
278 {
279  double AA;
280 
281  AA = z * ( 8.0 * pow( z, 2.0 ) + 5.0 * z - 7.0 ) /
282  ( 12.0 * pow( ( z - 1.0 ), 3.0 ) );
283  AA = AA + pow( z, 2.0 ) * ( 2.0 - 3.0 * z ) * log( z ) /
284  ( 2.0 * pow( ( z - 1.0 ), 4.0 ) );
285 
286  return AA;
287 }
288 
289 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
290 double EvtbTosllWilsCoeffNLO::B( double z )
291 {
292  double BB;
293 
294  BB = z / ( 4.0 * ( 1.0 - z ) ) +
295  z * log( z ) / ( 4.0 * pow( ( 1.0 - z ), 2.0 ) );
296 
297  return BB;
298 }
299 
300 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
302 {
303  double CC;
304 
305  CC = z * ( z - 6.0 ) / ( 8.0 * ( z - 1.0 ) );
306  CC = CC +
307  z * ( 3.0 * z + 2.0 ) * log( z ) / ( 8.0 * pow( ( z - 1.0 ), 2.0 ) );
308 
309  return CC;
310 }
311 
312 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
314 {
315  double DD;
316 
317  DD = ( 25.0 * pow( z, 2.0 ) - 19.0 * pow( z, 3.0 ) ) /
318  ( 36.0 * pow( ( z - 1.0 ), 3.0 ) );
319  DD = DD + pow( z, 2.0 ) * ( 5.0 * pow( z, 2.0 ) - 2.0 * z - 6.0 ) *
320  log( z ) / ( 18.0 * pow( ( z - 1.0 ), 4.0 ) );
321  DD = DD - ( 4.0 / 9.0 ) * log( z );
322 
323  return DD;
324 }
325 
326 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
327 double EvtbTosllWilsCoeffNLO::E( double z )
328 {
329  double EE;
330 
331  EE = z * ( 18.0 - 11.0 * z - z * z ) / ( 12.0 * pow( ( 1.0 - z ), 3.0 ) );
332  EE = EE + pow( z, 2.0 ) * ( 15.0 - 16.0 * z + 4.0 * z * z ) * log( z ) /
333  ( 6.0 * pow( ( 1.0 - z ), 4.0 ) );
334  EE = EE - ( 2.0 / 3.0 ) * log( z );
335 
336  return EE;
337 }
338 
339 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
341 {
342  double FF;
343 
344  FF = z * ( pow( z, 2.0 ) - 5.0 * z - 2.0 ) /
345  ( 4.0 * pow( ( z - 1.0 ), 3.0 ) );
346  FF = FF + 3.0 * pow( z, 2.0 ) * log( z ) / ( 2.0 * pow( ( z - 1.0 ), 4.0 ) );
347 
348  return FF;
349 }
350 
351 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
352 double EvtbTosllWilsCoeffNLO::Y( double z )
353 {
354  double YY;
355 
356  YY = C_Bur( z ) - B( z );
357 
358  return YY;
359 }
360 
361 /* by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
362 double EvtbTosllWilsCoeffNLO::Z( double z )
363 {
364  double ZZ;
365 
366  ZZ = C_Bur( z ) + 0.25 * D_Bur( z );
367 
368  return ZZ;
369 }
370 
371 /* Coefficient C7gamma(mu) in the SM *
372  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
373 double EvtbTosllWilsCoeffNLO::C7gamma( double mu, double Mw, double mt, int Nf,
374  int ias )
375 {
376  double C7, C70, C80, sum;
377  double AA, FF;
378  double x, eta;
379  double asW, asmu;
380  int i;
381 
382  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
383  0.4086, -0.4230, -0.8994, 0.1456};
384  double h[] = {2.2996, -1.0880, -3.0 / 7.0, -1.0 / 14.0,
385  -0.6494, -0.0380, -0.0186, -0.0057};
386 
387  x = pow( mt / Mw, 2.0 );
388  asW = As( Mw, Nf, ias );
389  asmu = As( mu, Nf, ias );
390  eta = asW / asmu;
391 
392  AA = A( x );
393  FF = F_Bur( x );
394 
395  C70 = -0.5 * AA;
396  C80 = -0.5 * FF;
397 
398  C7 = pow( eta, ( 16.0 / 23.0 ) ) * C70;
399  C7 = C7 + ( 8.0 / 3.0 ) *
400  ( pow( eta, ( 14.0 / 23.0 ) ) - pow( eta, ( 16.0 / 23.0 ) ) ) *
401  C80;
402 
403  sum = 0.0;
404  i = 0;
405  while ( i < 8 ) {
406  sum = sum + h[i] * pow( eta, a[i] );
407  i++;
408  };
409  C7 = C7 + sum;
410 
411  return C7;
412 }
413 
414 /* Coefficient P_E *
415  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186; *
416  * see formula (2.12). */
417 double EvtbTosllWilsCoeffNLO::Pe( double eta )
418 {
419  double sum;
420  double Pee;
421  int i;
422 
423  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
424  0.4086, -0.4230, -0.8994, 0.1456};
425  double q[] = {0.0, 0.0, 0.0, 0.0, 0.0318, 0.0918, -0.2700, 0.0059};
426 
427  sum = 0.0;
428  i = 0;
429  while ( i < 8 ) {
430  sum = sum + q[i] * pow( eta, ( a[i] + 1.0 ) );
431  i++;
432  };
433  Pee = 0.1405 + sum;
434 
435  return Pee;
436 }
437 
438 /* Coefficient P^{NDR}_0 *
439  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186; *
440  * see formula (2.11). */
441 double EvtbTosllWilsCoeffNLO::P0ndr( double asW, double eta )
442 {
443  double P00ndr;
444  double sum;
445  int i;
446 
447  double a[] = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0,
448  0.4086, -0.4230, -0.8994, 0.1456};
449  double p[] = {0.0, 0.0, -80.0 / 203.0, 8.0 / 33.0,
450  0.0433, 0.1384, 0.1648, -0.0073};
451  double r[] = {0.0, 0.0, 0.8966, -0.1960, -0.2011, 0.1328, -0.0292, -0.1858};
452  double s[] = {0.0, 0.0, -0.2009, -0.3579, 0.0490, -0.3616, -0.3554, 0.0072};
453 
454  sum = 0.0;
455  i = 0;
456  while ( i < 8 ) {
457  sum = sum + p[i] * pow( eta, ( a[i] + 1.0 ) );
458  i++;
459  };
460  P00ndr = EvtConst::pi * ( -0.1875 + sum ) / asW;
461  P00ndr = P00ndr + 1.2468;
462  sum = 0.0;
463  i = 0;
464  while ( i < 8 ) {
465  sum = sum + ( r[i] + s[i] * eta ) * pow( eta, a[i] );
466  i++;
467  };
468  P00ndr = P00ndr + sum;
469 
470  return P00ndr;
471 }
472 
473 /* Coefficient C_{9V} (in the NDR schime) *
474  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186 *
475  * accordint to the equation (2.10). */
476 double EvtbTosllWilsCoeffNLO::C9v( double mu, double Mw, double mt, int Nf,
477  int ias )
478 {
479  double C9;
480  double x, eta;
481  double asW, asmu;
482  double sin2W = 0.224; /* the square of the weak angle */
483 
484  x = pow( mt / Mw, 2.0 );
485  asW = As( Mw, Nf, ias );
486  asmu = As( mu, Nf, ias );
487  eta = asW / asmu;
488 
489  /* C9 */
490  C9 = P0ndr( asW, eta ) + ( Y( x ) / sin2W ) - 4.0 * Z( x ) +
491  Pe( eta ) * E( x );
492 
493  return C9;
494 }
495 
496 /* Coefficient C_{10A} *
497  * by A.J.Buras and M.Munz, Phys.Rev. D52, 186; *
498  * see formula (2.8). */
499 double EvtbTosllWilsCoeffNLO::C10a( double mt, double Mw )
500 {
501  double C10;
502  double x;
503  double sin2W = 0.224; /* the square of the Winberg angle */
504 
505  x = pow( mt / Mw, 2.0 );
506 
507  C10 = -Y( x ) / sin2W;
508 
509  return C10;
510 }
511 
512 /* The real part of the q\bar q loop contribution *
513  * Re(h(z,\hat s)) *
514  * A.J.Buras and M.Munz, Phys.Rev. D52, 186; *
515  * the equation (2.29). *
516  * *
517  * mu - the scale parameter (GeV); *
518  * mQ - the mass of the u- or c-quark (GeV); *
519  * q2 - the square of transition 4-momentum (GeV^2). */
520 double EvtbTosllWilsCoeffNLO::Reh( double mu, double mQ, double q2 )
521 {
522  double reh, swh;
523  double x; /* Buras variable "x" from (2.29) */
524 
525  x = 4.0 * pow( mQ, 2.0 ) / q2;
526 
527  reh = 8.0 / 27.0 - 8.0 * log( mQ / mu ) / 9.0 + 4.0 * x / 9.0;
528 
529  swh = 2.0 * ( 2.0 + x ) * sqrt( fabs( 1.0 - x ) ) / 9.0;
530 
531  if ( x <= 1.0 ) {
532  swh = swh * log( fabs( ( sqrt( 1.0 - x ) + 1.0 ) /
533  ( sqrt( 1.0 - x ) - 1.0 ) ) );
534  } else {
535  swh = swh * 2.0 * atan( 1.0 / sqrt( x - 1.0 ) );
536  };
537 
538  reh = reh - swh;
539 
540  return reh;
541 }
542 
543 /* Im(h(z,\hat s)) by Buras */
544 double EvtbTosllWilsCoeffNLO::Imh( double mQ, double q2 )
545 {
546  double x; /* Buras variable "x" from (2.29) */
547  double imh;
548 
549  x = 4.0 * pow( mQ, 2.0 ) / q2;
550 
551  if ( x <= 1.0 ) {
552  imh = 2.0 * EvtConst::pi * ( 2.0 + x ) * sqrt( fabs( 1.0 - x ) ) / 9.0;
553  } else {
554  imh = 0.0;
555  };
556  return imh;
557 }
558 
559 /* The real part of the one resonant contribution *
560  * q2 - the square of transition 4-momentum (GeV^2); *
561  * GV - the decay width of the resonance (GeV); *
562  * GllV - the decay width of the resonance into l^+ l^- - pair (GeV); *
563  * MV - the mass of the resonance. */
564 double EvtbTosllWilsCoeffNLO::ReResonant( double q2, double GV, double GllV,
565  double MV )
566 {
567  double reresonant;
568  double resa, resb;
569 
570  resa = q2 * ( MV * MV - q2 ) * GllV;
571  resb = MV * ( ( MV * MV - q2 ) * ( MV * MV - q2 ) + MV * MV * GV * GV );
572  reresonant = resa / resb;
573 
574  return reresonant;
575 }
576 
577 /* The imaginary part of the one resonant contribution *
578  * q2 - the square of transition 4-momentum (GeV^2); *
579  * GV - the decay width of the resonance (GeV); *
580  * GllV - the decay width of the resonance into l^+ l^- - pair (GeV); *
581  * MV - the mass of the resonance. */
582 double EvtbTosllWilsCoeffNLO::ImResonant( double q2, double GV, double GllV,
583  double MV )
584 {
585  double imresonant;
586  double resa, resb;
587 
588  resa = q2 * GV * GllV;
589  resb = ( MV * MV - q2 ) * ( MV * MV - q2 ) + MV * MV * GV * GV;
590  imresonant = resa / resb;
591 
592  return imresonant;
593 }
594 
595 /* The real part of the total q\barq-contribution *
596  * *
597  * qflavour = 0 corresponding the u-quark contribution *
598  * = 1 corresponding the c-quark contribution; *
599  * *
600  * res_swch = 0 the resonant contribution switch OFF *
601  * = 1 the resonant contribution switch ON; *
602  * *
603  * ias -- switching parameter for Lms[] in the As(..) function. *
604  * *
605  * Nf - number of "effective" flavours (for b-quark Nf=5); *
606  * mu - the scale parameter (GeV); *
607  * mQ - the mass of the u- or c-quark (GeV); *
608  * q2 - the square of transition 4-momentum (GeV^2); *
609  * ml - the mass of the final leptons (GeV); *
610  * Mw - the mass of the W--meson (GeV). *
611  * */
612 double EvtbTosllWilsCoeffNLO::ReHtot( int qflavour, int res_swch, int ias,
613  int Nf, double mu, double mQ, double q2,
614  double ml, double Mw )
615 {
616  double rehtot;
617  double rehres, c1, c2;
618  int i;
619 
620  /* Total decay widths of the resonances (GeV) */
621  double Gamma[6];
622  /* The decay width of the resonances into l^+ l^- - pair (GeV) */
623  double Gamma_ll[6];
624  /* The mass of the resonances */
625  double M[6];
626 
627  double alpha_qed = 1.0 / 137.0;
628 
629  switch ( qflavour ) {
630  /* u-quark contribution */
631  case 0:
632  switch ( res_swch ) {
633  /* The resonant contribution switch OFF */
634  case 0:
635  rehtot = EvtbTosllWilsCoeffNLO::Reh( mu, mQ, q2 );
636  rehres = 0.0;
637  break;
638  /* the resonant contribution switch ON */
639  case 1:
640  rehtot = EvtbTosllWilsCoeffNLO::Reh( mu, mQ, q2 );
641 
642  /* \pho */
643  M[0] = 0.7755; /* GeV */
644  Gamma[0] = 0.1494; /* GeV */
645  /* \omega' */
646  M[1] = 0.7827; /* GeV */
647  Gamma[1] = 0.0085; /* GeV */
648 
649  if ( ml < 1.0 ) {
650  /* in e^+e^- or mu^+mu^- */
651  Gamma_ll[0] = 0.000007; /* \rho */
652  Gamma_ll[1] = 0.0000006; /* \omega */
653  } else {
654  /* in \tau^+\tau^- */
655  Gamma_ll[0] = 0.0; /* \rho */
656  Gamma_ll[1] = 0.0; /* \omega */
657  };
658 
659  c1 = EvtbTosllWilsCoeffNLO::C1( mu, Mw, Nf, ias );
660  c2 = EvtbTosllWilsCoeffNLO::C2( mu, Mw, Nf, ias );
661 
662  i = 0;
663  rehres = 0.0;
664  while ( i < 2 ) {
665  rehres = rehres +
666  3.0 * EvtConst::pi *
668  q2, Gamma[i], Gamma_ll[i], M[i] ) /
669  ( sqrt( 2.0 ) * ( 3.0 * c1 + c2 ) *
670  alpha_qed * alpha_qed );
671  i++;
672  };
673 
674  /* The sign plus are corresponded to the relation:
675  \kappa*(3C_1+C_2)=1
676  with sign of Wilson coefficien C_2(M_W)=+1 as at work
677  A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
678  rehtot = rehtot + rehres;
679  break;
680  default:
681  rehtot = 0.0;
682  rehres = 0.0;
683  };
684  break;
685  /* c-quark contribution */
686  case 1:
687  switch ( res_swch ) {
688  /* The resonant contribution switch OFF */
689  case 0:
690  rehtot = EvtbTosllWilsCoeffNLO::Reh( mu, mQ, q2 );
691  rehres = 0.0;
692  break;
693  /* the resonant contribution switch ON */
694  case 1:
695  rehtot = EvtbTosllWilsCoeffNLO::Reh( mu, mQ, q2 );
696 
697  /* J/psi */
698  M[0] = 3.096916; /* GeV */
699  Gamma[0] = 0.000093; /* GeV */
700  /* psi' */
701  M[1] = 3.68609; /* GeV */
702  Gamma[1] = 0.000317; /* GeV */
703  /* psi(3770) */
704  M[2] = 3.77292; /* GeV */
705  Gamma[2] = 0.0273; /* GeV */
706  /* psi(4040) */
707  M[3] = 4.039; /* GeV */
708  Gamma[3] = 0.08; /* GeV */
709  /* psi(4160) */
710  M[4] = 4.153; /* GeV */
711  Gamma[4] = 0.103; /* GeV */
712  /* psi(4415) */
713  M[5] = 4.421; /* GeV */
714  Gamma[5] = 0.062; /* GeV */
715 
716  if ( ml < 1.0 ) {
717  /* in e^+e^- or mu^+mu^- */
718  Gamma_ll[0] = Gamma[0] * 0.059; /* J/psi */
719  Gamma_ll[1] = Gamma[1] * 0.0075; /* psi' */
720  Gamma_ll[2] = Gamma[2] * 0.0000097; /* psi(3770) */
721  Gamma_ll[3] = Gamma[3] * 0.00001; /* psi(4040) */
722  Gamma_ll[4] = Gamma[4] * 0.0000081; /* psi(4160) */
723  Gamma_ll[5] = Gamma[5] * 0.0000094; /* psi(4415) */
724  } else {
725  /* in \tau^+\tau^- */
726  Gamma_ll[0] = 0.0; /* J/psi */
727  Gamma_ll[1] = Gamma[1] * 0.003; /* psi' */
728  Gamma_ll[2] = Gamma[2] * 0.0; /* psi(3770) */
729  Gamma_ll[3] = Gamma[3] * 0.0; /* psi(4040) */
730  Gamma_ll[4] = Gamma[4] * 0.0; /* psi(4160) */
731  Gamma_ll[5] = Gamma[5] * 0.0; /* psi(4415) */
732  };
733 
734  c1 = EvtbTosllWilsCoeffNLO::C1( mu, Mw, Nf, ias );
735  c2 = EvtbTosllWilsCoeffNLO::C2( mu, Mw, Nf, ias );
736 
737  i = 0;
738  rehres = 0.0;
739  while ( i < 6 ) {
740  rehres = rehres +
741  3.0 * EvtConst::pi *
743  q2, Gamma[i], Gamma_ll[i], M[i] ) /
744  ( ( 3.0 * c1 + c2 ) * alpha_qed * alpha_qed );
745  i++;
746  };
747 
748  /* The sign plus are corresponded to the relation:
749  \kappa*(3C_1+C_2)=1
750  with sign of Wilson coefficien C_2(M_W)=+1 as at work
751  A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
752  rehtot = rehtot + rehres;
753  break;
754  default:
755  rehtot = 0.0;
756  rehres = 0.0;
757  };
758  break;
759  default:
760  rehtot = 0.0;
761  rehres = 0.0;
762  };
763 
764  return rehtot;
765 }
766 
767 /* The imaginary of the total q\barq-contribution *
768  * *
769  * qflavour = 0 corresponding the u-quark contribution *
770  * = 1 corresponding the c-quark contribution; *
771  * *
772  * res_swch = 0 the resonant contribution switch OFF *
773  * = 1 the resonant contribution switch ON; *
774  * *
775  * ias -- switching parameter for Lms[] in the As(..) function. *
776  * *
777  * Nf - number of "effective" flavours (for b-quark Nf=5); *
778  * mu - the scale parameter (GeV); *
779  * mQ - the mass of the u- or c-quark (GeV); *
780  * q2 - the square of transition 4-momentum (GeV^2); *
781  * ml - the mass of the final leptons (GeV); *
782  * Mw - the mass of the W--meson (GeV). *
783  * */
784 double EvtbTosllWilsCoeffNLO::ImHtot( int qflavour, int res_swch, int ias,
785  int Nf, double mu, double mQ, double q2,
786  double ml, double Mw )
787 {
788  double imhtot;
789  double imhres, c1, c2;
790  int i;
791 
792  /* Total decay widths of the resonances (GeV) */
793  double Gamma[6];
794  /* The decay width of the resonances into l^+ l^- - pair (GeV) */
795  double Gamma_ll[6];
796  /* The mass of the resonances */
797  double M[6];
798 
799  double alpha_qed = 1.0 / 137.0;
800 
801  switch ( qflavour ) {
802  /* u-quark contribution */
803  case 0:
804  switch ( res_swch ) {
805  /* The resonant contribution switch OFF */
806  case 0:
807  imhtot = EvtbTosllWilsCoeffNLO::Imh( mQ, q2 );
808  imhres = 0.0;
809  break;
810  /* the resonant contribution switch ON */
811  case 1:
812  imhtot = EvtbTosllWilsCoeffNLO::Imh( mQ, q2 );
813 
814  /* \pho */
815  M[0] = 0.7755; /* GeV */
816  Gamma[0] = 0.1494; /* GeV */
817  /* \omega' */
818  M[1] = 0.7827; /* GeV */
819  Gamma[1] = 0.0085; /* GeV */
820 
821  if ( ml < 1.0 ) {
822  /* in e^+e^- or mu^+mu^- */
823  Gamma_ll[0] = 0.000007; /* \rho */
824  Gamma_ll[1] = 0.0000006; /* \omega */
825  } else {
826  /* in \tau^+\tau^- */
827  Gamma_ll[0] = 0.0; /* \rho */
828  Gamma_ll[1] = 0.0; /* \omega */
829  };
830 
831  c1 = EvtbTosllWilsCoeffNLO::C1( mu, Mw, Nf, ias );
832  c2 = EvtbTosllWilsCoeffNLO::C2( mu, Mw, Nf, ias );
833 
834  i = 0;
835  imhres = 0.0;
836  while ( i < 2 ) {
837  imhres = imhres +
838  3.0 * EvtConst::pi *
840  q2, Gamma[i], Gamma_ll[i], M[i] ) /
841  ( sqrt( 2.0 ) * ( 3.0 * c1 + c2 ) *
842  alpha_qed * alpha_qed );
843  i++;
844  };
845 
846  /* The sign plus are corresponded to the relation:
847  \kappa*(3C_1+C_2)=1
848  with sign of Wilson coefficien C_2(M_W)=+1 as at work
849  A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
850  imhtot = imhtot + imhres;
851  break;
852  default:
853  imhtot = 0.0;
854  imhres = 0.0;
855  };
856  break;
857  /* c-quark contribution */
858  case 1:
859  switch ( res_swch ) {
860  /* The resonant contribution switch OFF */
861  case 0:
862  imhtot = EvtbTosllWilsCoeffNLO::Imh( mQ, q2 );
863  imhres = 0.0;
864  break;
865  /* the resonant contribution switch ON */
866  case 1:
867  imhtot = EvtbTosllWilsCoeffNLO::Imh( mQ, q2 );
868 
869  /* J/psi */
870  M[0] = 3.096916; /* GeV */
871  Gamma[0] = 0.000093; /* GeV */
872  /* psi' */
873  M[1] = 3.68609; /* GeV */
874  Gamma[1] = 0.000317; /* GeV */
875  /* psi(3770) */
876  M[2] = 3.77292; /* GeV */
877  Gamma[2] = 0.0273; /* GeV */
878  /* psi(4040) */
879  M[3] = 4.039; /* GeV */
880  Gamma[3] = 0.08; /* GeV */
881  /* psi(4160) */
882  M[4] = 4.153; /* GeV */
883  Gamma[4] = 0.103; /* GeV */
884  /* psi(4415) */
885  M[5] = 4.421; /* GeV */
886  Gamma[5] = 0.062; /* GeV */
887 
888  if ( ml < 1.0 ) {
889  /* in e^+e^- or mu^+mu^- */
890  Gamma_ll[0] = Gamma[0] * 0.059; /* J/psi */
891  Gamma_ll[1] = Gamma[1] * 0.0075; /* psi' */
892  Gamma_ll[2] = Gamma[2] * 0.0000097; /* psi(3770) */
893  Gamma_ll[3] = Gamma[3] * 0.00001; /* psi(4040) */
894  Gamma_ll[4] = Gamma[4] * 0.0000081; /* psi(4160) */
895  Gamma_ll[5] = Gamma[5] * 0.0000094; /* psi(4415) */
896  } else {
897  /* in \tau^+\tau^- */
898  Gamma_ll[0] = 0.0; /* J/psi */
899  Gamma_ll[1] = Gamma[1] * 0.003; /* psi' */
900  Gamma_ll[2] = Gamma[2] * 0.0; /* psi(3770) */
901  Gamma_ll[3] = Gamma[3] * 0.0; /* psi(4040) */
902  Gamma_ll[4] = Gamma[4] * 0.0; /* psi(4160) */
903  Gamma_ll[5] = Gamma[5] * 0.0; /* psi(4415) */
904  };
905 
906  c1 = EvtbTosllWilsCoeffNLO::C1( mu, Mw, Nf, ias );
907  c2 = EvtbTosllWilsCoeffNLO::C2( mu, Mw, Nf, ias );
908 
909  i = 0;
910  imhres = 0.0;
911  while ( i < 6 ) {
912  imhres = imhres +
913  3.0 * EvtConst::pi *
915  q2, Gamma[i], Gamma_ll[i], M[i] ) /
916  ( ( 3.0 * c1 + c2 ) * alpha_qed * alpha_qed );
917  i++;
918  };
919 
920  /* The sign plus are corresponded to the relation:
921  \kappa*(3C_1+C_2)=1
922  with sign of Wilson coefficien C_2(M_W)=+1 as at work
923  A.J.Buras and M.Munz, Phys.Rev. D52, 186. */
924  imhtot = imhtot + imhres;
925  break;
926  default:
927  imhtot = 0.0;
928  imhres = 0.0;
929  };
930  break;
931  default:
932  imhtot = 0.0;
933  imhres = 0.0;
934  };
935 
936  return imhtot;
937 }
938 
939 /* Function \omega(\hat s) *
940  * by A.J.Buras, M.Munz, Phys.Rev.D52 (1995), p189. *
941  * *
942  * q2 - the square of transition 4-momentum (GeV^2); *
943  * m2 - the mass of the b-quark (GeV). */
944 double EvtbTosllWilsCoeffNLO::omega( double q2, double m2 )
945 {
946  double oomega;
947  double s;
948 
949  s = q2 / ( m2 * m2 ); /* see definition in the equation (2.26) */
950 
951  if ( s > 1.0 ) {
952  s = 0.999999;
953  }
954  oomega = -2.0 * pow( EvtConst::pi, 2.0 ) / 9.0 - 4.0 * Li2( s ) / 3.0;
955  oomega = oomega - 2.0 * log( s ) * log( 1.0 - s ) / 3.0;
956  oomega = oomega -
957  ( 5.0 + 4.0 * s ) * log( 1.0 - s ) / ( 3.0 * ( 1.0 + 2.0 * s ) );
958  oomega = oomega - 2.0 * s * ( 1.0 + s ) * ( 1.0 - 2.0 * s ) * log( s ) /
959  ( 3.0 * pow( ( 1.0 - s ), 2.0 ) * ( 1.0 + 2.0 * s ) );
960  oomega = oomega + ( 5.0 + 9.0 * s - 6.0 * s * s ) /
961  ( 6.0 * ( 1.0 - s ) * ( 1.0 + 2.0 * s ) );
962 
963  return oomega;
964 }
965 
966 /* REAL PART of the effective coefficient C_9V^{eff}: *
967  * *
968  * by A.J.Buras, M.Munz, Phys.Rev.D52 (1995), p189; *
969  * F.Kruger, L.M.Sehgal, Phys.Rev.D55 (1997), p.2799. *
970  * *
971  * decay_id = 0 for b -> q l^+ i^- transitions *
972  * 1 for \bar b -> \bar q l^+ l^- transitions; *
973  * *
974  * res_swch = 0 the resonant contribution switch OFF *
975  * = 1 the resonant contribution switch ON; *
976  * *
977  * ias -- switching parameter for Lms[] in the As(..) function. *
978  * *
979  * Nf -- number of "effective" flavors (for b-quark Nf=5); *
980  * *
981  * q2 -- the square of transition 4-momentum; *
982  * m2 -- b-quark mass (in the heavy meson M1), GeV; *
983  * md -- mass of the u- and d-quarks, GeV; *
984  * mc -- c-quark mass, GeV; *
985  * mu -- scale parameter, GeV; *
986  * mt -- t-quark mass, GeV; *
987  * Mw -- mass of the W, GeV; *
988  * ml -- leptonic mass, GeV; *
989  * *
990  * Relambda_qu -- Re(V^*_{uq}*V_{ub}/V^*_{tq}*V_{tb}), q={d,s}; *
991  * Imlambda_qu -- Im(V^*_{uq}*V_{ub}/V^*_{tq}*V_{tb}), q={d,s}; *
992  * */
993 double EvtbTosllWilsCoeffNLO::ReC9eff( int decay_id, int res_swch, int ias,
994  int Nf, double q2, double m2, double md,
995  double mc, double mu, double mt,
996  double Mw, double ml, double Relambda_qu,
997  double Imlambda_qu )
998 {
999  double RReC9eff;
1000  double tilde_eta; /* Buras variable " \tilde\eta" in (2.33) */
1001  double c1, c2, c3, c4, c5, c6, c9;
1002  double RReh_d, RReh_b, RReHtot_u, IImHtot_u, RReHtot_c, IImHtot_c;
1003 
1004  tilde_eta = 1.0 + EvtbTosllWilsCoeffNLO::As( mu, Nf, ias ) *
1006 
1007  c1 = EvtbTosllWilsCoeffNLO::C1( mu, Mw, Nf, ias );
1008  c2 = EvtbTosllWilsCoeffNLO::C2( mu, Mw, Nf, ias );
1009  c3 = EvtbTosllWilsCoeffNLO::C3( mu, Mw, Nf, ias );
1010  c4 = EvtbTosllWilsCoeffNLO::C4( mu, Mw, Nf, ias );
1011  c5 = EvtbTosllWilsCoeffNLO::C5( mu, Mw, Nf, ias );
1012  c6 = EvtbTosllWilsCoeffNLO::C6( mu, Mw, Nf, ias );
1013  c9 = EvtbTosllWilsCoeffNLO::C9v( mu, Mw, mt, Nf, ias );
1014 
1015  RReh_d = EvtbTosllWilsCoeffNLO::Reh( mu, md, q2 );
1016  RReh_b = EvtbTosllWilsCoeffNLO::Reh( mu, m2, q2 );
1017  RReHtot_u = EvtbTosllWilsCoeffNLO::ReHtot( 0, res_swch, ias, Nf, mu, md, q2,
1018  ml, Mw );
1019  IImHtot_u = EvtbTosllWilsCoeffNLO::ImHtot( 0, res_swch, ias, Nf, mu, md, q2,
1020  ml, Mw );
1021  RReHtot_c = EvtbTosllWilsCoeffNLO::ReHtot( 1, res_swch, ias, Nf, mu, mc, q2,
1022  ml, Mw );
1023  IImHtot_c = EvtbTosllWilsCoeffNLO::ImHtot( 1, res_swch, ias, Nf, mu, mc, q2,
1024  ml, Mw );
1025 
1026  RReC9eff = c9 * tilde_eta + 2.0 * ( 3.0 * c3 + c4 + 3.0 * c5 + c6 ) / 9.0;
1027  RReC9eff = RReC9eff +
1028  ( 3.0 * c1 + c2 + 3.0 * c3 + c4 + 3.0 * c5 + c6 ) * RReHtot_c;
1029  RReC9eff = RReC9eff - 0.5 * ( 4.0 * c3 + 4.0 * c4 + 3.0 * c5 + c6 ) * RReh_b;
1030  RReC9eff = RReC9eff - 0.5 * ( c3 + 3.0 * c4 ) * RReh_d;
1031 
1032  switch ( decay_id ) {
1033  /* b -> q l^+ i^- transitions */
1034  case 0:
1035  RReC9eff = RReC9eff + ( 3.0 * c1 + c2 ) *
1036  ( Relambda_qu * ( RReHtot_c - RReHtot_u ) -
1037  Imlambda_qu * ( IImHtot_c - IImHtot_u ) );
1038  break;
1039  /* \bar b -> \bar q l^+ i^- transitions */
1040  case 1:
1041  RReC9eff = RReC9eff + ( 3.0 * c1 + c2 ) *
1042  ( Relambda_qu * ( RReHtot_c - RReHtot_u ) +
1043  Imlambda_qu * ( IImHtot_c - IImHtot_u ) );
1044  break;
1045  };
1046 
1047  // EvtGenReport(EVTGEN_NOTICE,"EvtGen")
1048  // << "\n =============================================================="
1049  // << "\n =============================================================="
1050  // << "\n\n The function EvtbTosllWilsCoeffNLO::ReC9eff(...) passed."
1051  // << "\n Particle masses:"
1052  // << "\n q2 = " << q2
1053  // << "\n s = " << q2/(m2*m2)
1054  // << "\n leptonic mass ml = " << ml
1055  // << "\n u or d - quarks mass md = " << md
1056  // << "\n c - quark mass mc = " << mc
1057  // << "\n b - quark mass mb = " << m2
1058  // << "\n t - quark mass mt = " << mt
1059  // << "\n W - boson mass Mw = " << Mw
1060  // << "\n ==============================================================="
1061  // << "\n Input parameters:"
1062  // << "\n scale parameter mu = " << mu
1063  // << "\n number of flavors Nf = " << Nf
1064  // << "\n resonant switching = " << res_swch
1065  // << "\n decay id = " << decay_id
1066  // << "\n parameter for alpha_s(M_Z) = " << ias
1067  // << "\n Relambda_qu = " << Relambda_qu
1068  // << "\n Imlambda_qu = " << Imlambda_qu
1069  // << "\n ================================================================"
1070  // << "\n Wilson Coefficients:"
1071  // << "\n c1 = " << c1
1072  // << "\n c2 = " << c2
1073  // << "\n c3 = " << c3
1074  // << "\n c4 = " << c4
1075  // << "\n c5 = " << c5
1076  // << "\n c6 = " << c6
1077  // << "\n c9 = " << c9
1078  // << "\n Reh_d = " << RReh_d
1079  // << "\n Reh_b = " << RReh_b
1080  // << "\n ReHtot_u = " << RReHtot_u
1081  // << "\n ReHtot_c = " << RReHtot_c
1082  // << "\n ImHtot_u = " << IImHtot_u
1083  // << "\n ImHtot_c = " << IImHtot_c
1084  // << "\n RReC9eff = " << RReC9eff
1085  // << "\n tilde_eta = " << tilde_eta
1086  // << "\n ================================================================="
1087  // << "\n ================================================================="
1088  // << std::endl;
1089 
1090  return RReC9eff;
1091 }
1092 
1093 /* IMAGINARY PART of the effective coefficient C_9V^{eff}: *
1094  * *
1095  * by A.J.Buras, M.Munz, Phys.Rev.D52 (1995), p189; *
1096  * F.Kruger, L.M.Sehgal, Phys.Rev.D55 (1997), p.2799. *
1097  * *
1098  * decay_id = 0 for b -> q l^+ i^- transitions *
1099  * 1 for \bar b -> \bar q l^+ l^- transitions; *
1100  * *
1101  * res_swch = 0 the resonant contribution switch OFF *
1102  * = 1 the resonant contribution switch ON; *
1103  * *
1104  * ias -- switching parameter for Lms[] in the As(..) function. *
1105  * *
1106  * Nf -- number of "effective" flavors (for b-quark Nf=5); *
1107  * *
1108  * q2 -- the square of transition 4-momentum; *
1109  * m2 -- b-quark mass (in the heavy meson M1), GeV; *
1110  * md -- mass of the u- and d-quarks, GeV; *
1111  * mc -- c-quark mass, GeV; *
1112  * mu -- scale parameter, GeV; *
1113  * Mw -- mass of the W, GeV; *
1114  * ml -- leptonic mass, GeV; *
1115  * *
1116  * Relambda_qu -- Re(V^*_{uq}*V_{ub}/V^*_{tq}*V_{tb}), q={d,s}; *
1117  * Imlambda_qu -- Im(V^*_{uq}*V_{ub}/V^*_{tq}*V_{tb}), q={d,s}; *
1118  * */
1119 double EvtbTosllWilsCoeffNLO::ImC9eff( int decay_id, int res_swch, int ias,
1120  int Nf, double q2, double m2, double md,
1121  double mc, double mu, double Mw, double ml,
1122  double Relambda_qu, double Imlambda_qu )
1123 {
1124  double IImC9eff;
1125  double c1, c2, c3, c4, c5, c6;
1126  double IImh_d, IImh_b, RReHtot_u, IImHtot_u, RReHtot_c, IImHtot_c;
1127 
1128  c1 = EvtbTosllWilsCoeffNLO::C1( mu, Mw, Nf, ias );
1129  c2 = EvtbTosllWilsCoeffNLO::C2( mu, Mw, Nf, ias );
1130  c3 = EvtbTosllWilsCoeffNLO::C3( mu, Mw, Nf, ias );
1131  c4 = EvtbTosllWilsCoeffNLO::C4( mu, Mw, Nf, ias );
1132  c5 = EvtbTosllWilsCoeffNLO::C5( mu, Mw, Nf, ias );
1133  c6 = EvtbTosllWilsCoeffNLO::C6( mu, Mw, Nf, ias );
1134 
1135  IImh_d = EvtbTosllWilsCoeffNLO::Imh( md, q2 );
1136  IImh_b = EvtbTosllWilsCoeffNLO::Imh( m2, q2 );
1137  RReHtot_u = EvtbTosllWilsCoeffNLO::ReHtot( 0, res_swch, ias, Nf, mu, md, q2,
1138  ml, Mw );
1139  IImHtot_u = EvtbTosllWilsCoeffNLO::ImHtot( 0, res_swch, ias, Nf, mu, md, q2,
1140  ml, Mw );
1141  RReHtot_c = EvtbTosllWilsCoeffNLO::ReHtot( 1, res_swch, ias, Nf, mu, mc, q2,
1142  ml, Mw );
1143  IImHtot_c = EvtbTosllWilsCoeffNLO::ImHtot( 1, res_swch, ias, Nf, mu, mc, q2,
1144  ml, Mw );
1145 
1146  IImC9eff = ( 3.0 * c1 + c2 + 3.0 * c3 + c4 + 3.0 * c5 + c6 ) * IImHtot_c;
1147  IImC9eff = IImC9eff - 0.5 * ( 4.0 * c3 + 4.0 * c4 + 3.0 * c5 + c6 ) * IImh_b;
1148  IImC9eff = IImC9eff - 0.5 * ( c3 + 3.0 * c4 ) * IImh_d;
1149 
1150  switch ( decay_id ) {
1151  /* b -> q l^+ i^- transitions */
1152  case 0:
1153  IImC9eff = IImC9eff + ( 3.0 * c1 + c2 ) *
1154  ( Relambda_qu * ( IImHtot_c - IImHtot_u ) +
1155  Imlambda_qu * ( RReHtot_c - RReHtot_u ) );
1156  break;
1157  /* \bar b -> \bar q l^+ i^- transitions */
1158  case 1:
1159  IImC9eff = IImC9eff + ( 3.0 * c1 + c2 ) *
1160  ( Relambda_qu * ( IImHtot_c - IImHtot_u ) -
1161  Imlambda_qu * ( RReHtot_c - RReHtot_u ) );
1162  break;
1163  };
1164 
1165  return IImC9eff;
1166 }
1167 
1168 /* Complex representation for the coefficient C_9V: *
1169  * *
1170  * by A.J.Buras, M.Munz, Phys.Rev.D52 (1995), p189; *
1171  * F.Kruger, L.M.Sehgal, Phys.Rev.D55 (1997), p.2799. *
1172  * *
1173  * decay_id = 0 for b -> q l^+ i^- transitions *
1174  * 1 for \bar b -> \bar q l^+ l^- transitions; *
1175  * *
1176  * res_swch = 0 the resonant contribution switch OFF *
1177  * = 1 the resonant contribution switch ON; *
1178  * *
1179  * ias -- switching parameter for Lms[] in the As(..) function. *
1180  * *
1181  * Nf -- number of "effective" flavors (for b-quark Nf=5); *
1182  * *
1183  * q2 -- the square of transition 4-momentum; *
1184  * m2 -- b-quark mass (in the heavy meson M1), GeV; *
1185  * md -- mass of the u- and d-quarks, GeV; *
1186  * mc -- c-quark mass, GeV; *
1187  * mu -- scale parameter, GeV; *
1188  * mt -- t-quark mass, GeV; *
1189  * Mw -- mass of the W, GeV; *
1190  * ml -- leptonic mass, GeV; *
1191  * *
1192  * Relambda_qu -- Re(V^*_{uq}*V_{ub}/V^*_{tq}*V_{tb}), q={d,s}; *
1193  * Imlambda_qu -- Im(V^*_{uq}*V_{ub}/V^*_{tq}*V_{tb}), q={d,s}; *
1194  * */
1195 EvtComplex EvtbTosllWilsCoeffNLO::GetC9Eff( int decay_id, int res_swch, int ias,
1196  int Nf, double q2, double m2,
1197  double md, double mc, double mu,
1198  double mt, double Mw, double ml,
1199  double Relambda_qu,
1200  double Imlambda_qu )
1201 {
1202  double RReC9eff, IImC9eff;
1203  EvtComplex unit1( 1.0, 0.0 );
1204  EvtComplex uniti( 0.0, 1.0 );
1205  EvtComplex c9eff;
1206 
1207  RReC9eff = EvtbTosllWilsCoeffNLO::ReC9eff( decay_id, res_swch, ias, Nf, q2,
1208  m2, md, mc, mu, mt, Mw, ml,
1209  Relambda_qu, Imlambda_qu );
1210  IImC9eff = EvtbTosllWilsCoeffNLO::ImC9eff( decay_id, res_swch, ias, Nf, q2,
1211  m2, md, mc, mu, Mw, ml,
1212  Relambda_qu, Imlambda_qu );
1213 
1214  c9eff = RReC9eff * unit1 + IImC9eff * uniti;
1215  return c9eff;
1216 }
1217 
1218 /* Complex representation for the coefficient C7gamma: *
1219  * C7gamma=ReC7gamma *
1220  * by A.J.Buras, M.Munz, Phys.Rev.D52 (1995), p189 *
1221  * *
1222  * mu -- scale parameter, GeV; *
1223  * mt -- t-quark mass, GeV; *
1224  * Mw -- mass of the W--meson, GeV; *
1225  * Nf -- number of "effective" flavors *
1226  * (for b-quark Nf=5); *
1227  * ias -- switching parameter for Lms[] *
1228  * in the As(..) function. *
1229  * */
1230 EvtComplex EvtbTosllWilsCoeffNLO::GetC7Eff( double mu, double Mw, double mt,
1231  int Nf, int ias )
1232 {
1233  double CC7gamma;
1234  EvtComplex c7eff;
1235  EvtComplex unit1( 1.0, 0.0 );
1236 
1237  CC7gamma = EvtbTosllWilsCoeffNLO::C7gamma( mu, Mw, mt, Nf, ias );
1238  c7eff = unit1 * CC7gamma;
1239 
1240  return c7eff;
1241 }
1242 
1243 /* Complex representation for the coefficient C_10A: *
1244  * C_10A=ReC_10 *
1245  * by A.J.Buras, M.Munz, Phys.Rev.D52 (1995), p189 *
1246  * *
1247  * mt -- t-quark mass, GeV; *
1248  * Mw -- mass of the W--meson, GeV; *
1249  * */
1251 {
1252  double ReC10;
1253  EvtComplex c10eff;
1254  EvtComplex unit1( 1.0, 0.0 );
1255 
1256  ReC10 = EvtbTosllWilsCoeffNLO::C10a( mt, Mw );
1257 
1258  c10eff = unit1 * ReC10;
1259 
1260  return c10eff;
1261 }
double omega(double q2, double m2)
double P0ndr(double asW, double eta)
EvtComplex GetC7Eff(double mu, double Mw, double mt, int Nf, int ias)
double Reh(double mu, double mQ, double q2)
double C6(double mu, double Mw, int Nf, int ias)
std::ostream & EvtGenReport(EvtGenSeverity severity, const char *facility=0)
Definition: EvtReport.cpp:33
double C5(double mu, double Mw, int Nf, int ias)
double ImHtot(int qflavour, int res_swch, int ias, int Nf, double mu, double mQ, double q2, double ml, double Mw)
double As(double mu, int Nf, int ias)
double Imh(double mQ, double q2)
double ReHtot(int qflavour, int res_swch, int ias, int Nf, double mu, double mQ, double q2, double ml, double Mw)
static const double pi
Definition: EvtConst.hh:26
double ReC9eff(int decay_id, int res_swch, int ias, int Nf, double q2, double m2, double md, double mc, double mu, double mt, double Mw, double ml, double Relambda_qu, double Imlambda_qu)
double ImResonant(double q2, double GV, double GllV, double MV)
double C2(double mu, double Mw, int Nf, int ias)
double C3(double mu, double Mw, int Nf, int ias)
EvtComplex GetC9Eff(int decay_id, int res_swch, int ias, int Nf, double q2, double m2, double md, double mc, double mu, double mt, double Mw, double ml, double Relambda_qu, double Imlambda_qu)
double ReResonant(double q2, double GV, double GllV, double MV)
double C10a(double mt, double Mw)
double C9v(double mu, double Mw, double mt, int Nf, int ias)
EvtComplex GetC10Eff(double mt, double Mw)
double ImC9eff(int decay_id, int res_swch, int ias, int Nf, double q2, double m2, double md, double mc, double mu, double Mw, double ml, double Relambda_qu, double Imlambda_qu)
double C4(double mu, double Mw, int Nf, int ias)
double C1(double mu, double Mw, int Nf, int ias)
double C7gamma(double mu, double Mw, double mt, int Nf, int ias)