10#include <initializer_list>
51 uint nf, nnf, nu, nd, a, b, i, j, p, q;
52 double b0, b0e, b1, b2, b3, b4, term;
58 W01(
nops,
nops, 0.), W02(
nops,
nops, 0.), W11(
nops,
nops, 0.), W21(
nops,
nops, 0.);
59 gslpp::matrix<double> M1(
nops,
nops, 0.), M2(
nops,
nops, 0.), M3(
nops,
nops, 0.), M4(
nops,
nops, 0.),
63 blocks.find(
"Q") == std::string::npos &&
blocks.find(
"B") == std::string::npos)
75 nd = nf % 2 == 0 ? nf / 2 : nf / 2 + 1;
79 b2 =
model.
Beta_s(20, nf) / 4. / b0 / b0 / b0 - b1 * b1;
90 for (
size_t jj = 0; jj <
evalc.size(); jj++)
91 if (fabs(
evalc(jj).imag()) > EPS)
throw (
"check the imaginary part of eigenvalues of W10");
98 M2 =
evec_i * (W30 - b1 * W20 - b2 * W10) *
evec;
101 for (a = 0; a <
nops; a++)
103 ai[nnf].insert(std::pair<uint, double > (a,
eval(a)));
104 for (b = 0; b <
nops; b++)
105 for (i = 0; i <
nops; i++)
107 if (fabs(term =
evec(a, i) *
evec_i(i, b)) > EPS)
108 vM0vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i}, term));
109 for (j = 0; j <
nops; j++)
111 if (fabs(term =
evec(a, i) * M1(i, j) *
evec_i(j, b)) > EPS)
112 vM1vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j}, term));
113 if (fabs(term =
evec(a, i) * M2(i, j) *
evec_i(j, b)) > EPS)
114 vM2vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j}, term));
115 for (p = 0; p <
nops; p++)
116 if (fabs(term =
evec(a, i) * M1(i, p) * M1(p, j) *
evec_i(j, b)) > EPS)
117 vM11vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
126 b4 =
model.
Beta_s(11, nf) / 4. / b0 / b0 / b0e - 2. * b1*b3;
135 M4 =
evec_i * (W11 - b1 * W01 - b3 * W10) *
evec;
136 M5 =
evec_i * (W21 - b1 * W11 - b2 * W01 - b3 * W20 - b4 * W10) *
evec;
137 M6 =
evec_i * (W02 + W11 - (b1 + b3) * W01 - b3 * W10) *
evec;
138 for (a = 0; a <
nops; a++)
139 for (b = 0; b <
nops; b++)
140 for (i = 0; i <
nops; i++)
141 for (j = 0; j <
nops; j++)
143 if (fabs(term =
evec(a, i) * M3(i, j) *
evec_i(j, b)) > EPS)
144 vM3vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j}, term));
145 if (fabs(term =
evec(a, i) * M4(i, j) *
evec_i(j, b)) > EPS)
146 vM4vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j}, term));
147 if (fabs(term =
evec(a, i) * M5(i, j) *
evec_i(j, b)) > EPS)
148 vM5vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j}, term));
149 if (fabs(term =
evec(a, i) * M6(i, j) *
evec_i(j, b)) > EPS)
150 vM6vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j}, term));
151 for (p = 0; p <
nops; p++)
153 if (fabs(term =
evec(a, i) * M3(i, p) * M3(p, j) *
evec_i(j, b)) > EPS)
154 vM33vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
155 if (fabs(term =
evec(a, i) * M3(i, p) * M1(p, j) *
evec_i(j, b)) > EPS)
156 vM31vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
157 if (fabs(term =
evec(a, i) * M1(i, p) * M3(p, j) *
evec_i(j, b)) > EPS)
158 vM13vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
159 if (fabs(term =
evec(a, i) * M3(i, p) * M4(p, j) *
evec_i(j, b)) > EPS)
160 vM34vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
161 if (fabs(term =
evec(a, i) * M4(i, p) * M3(p, j) *
evec_i(j, b)) > EPS)
162 vM43vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
163 if (fabs(term =
evec(a, i) * M2(i, p) * M3(p, j) *
evec_i(j, b)) > EPS)
164 vM23vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
165 if (fabs(term =
evec(a, i) * M3(i, p) * M2(p, j) *
evec_i(j, b)) > EPS)
166 vM32vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
167 if (fabs(term =
evec(a, i) * M1(i, p) * M4(p, j) *
evec_i(j, b)) > EPS)
168 vM14vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
169 if (fabs(term =
evec(a, i) * M4(i, p) * M1(p, j) *
evec_i(j, b)) > EPS)
170 vM41vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p}, term));
171 for (q = 0; q <
nops; q++)
173 if (fabs(term =
evec(a, i) * M1(i, p) * M1(p, q) * M3(q, j) *
evec_i(j, b)) > EPS)
174 vM113vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p, q}, term));
175 if (fabs(term =
evec(a, i) * M1(i, p) * M3(p, q) * M1(q, j) *
evec_i(j, b)) > EPS)
176 vM131vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p, q}, term));
177 if (fabs(term =
evec(a, i) * M3(i, p) * M1(p, q) * M1(q, j) *
evec_i(j, b)) > EPS)
178 vM311vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p, q}, term));
179 if (fabs(term =
evec(a, i) * M3(i, p) * M3(p, q) * M1(q, j) *
evec_i(j, b)) > EPS)
180 vM331vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p, q}, term));
181 if (fabs(term =
evec(a, i) * M3(i, p) * M1(p, q) * M3(q, j) *
evec_i(j, b)) > EPS)
182 vM313vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p, q}, term));
183 if (fabs(term =
evec(a, i) * M1(i, p) * M3(p, q) * M3(q, j) *
evec_i(j, b)) > EPS)
184 vM133vi[nnf].insert(std::pair<std::vector<uint>,
double > ({a, b, i, j, p, q}, term));
208 for (
int il = 0; il < F_iCacheSize; il++)
209 if (
f_f_c[0][il] == (
int) nnf &&
f_f_c[1][il] == (
int) i &&
f_f_c[2][il] == (
int) j &&
213 double aii =
ai[nnf].at(i), aij =
ai[nnf].at(j);
214 double den = aij + k - aii, ret;
217 ret = pow(eta, aii) * log(eta);
219 ret = (pow(eta, aij + k) - pow(eta, aii)) / den;
223 f_f_c[0][0] = (int) nnf;
224 f_f_c[1][0] = (int) i;
225 f_f_c[2][0] = (int) j;
235 double ll = log(eta), den =
ai[nnf].at(j) + k -
ai[nnf].at(i);
238 return (0.5 * pow(eta,
ai[nnf].at(i)) * ll * ll);
240 return ((pow(eta,
ai[nnf].at(j) + k) * ll -
f_f(nnf, i, j, k, eta)) / den);
245 double den =
ai[nnf].at(j) + l -
ai[nnf].at(p);
248 return (
f_r(nnf, i, p, k, eta));
250 return ((
f_f(nnf, i, j, k + l, eta) -
f_f(nnf, i, p, k, eta)) / den);
255 double ll = log(eta), den1 =
ai[nnf].at(j) + m -
ai[nnf].at(q),
256 den2 =
ai[nnf].at(q) + l -
ai[nnf].at(p),
257 den3 =
ai[nnf].at(p) + k -
ai[nnf].at(i);
259 if (fabs(den1) < EPS && fabs(den2) < EPS && fabs(den3) < EPS)
260 return (pow(eta,
ai[nnf].at(i)) * ll * ll * ll / 6.);
261 else if (fabs(den1) < EPS && fabs(den2) < EPS)
262 return ((0.5 * pow(eta,
ai[nnf].at(p) + k) * ll * ll -
f_r(nnf, i, p, k, eta)) / den3);
263 else if (fabs(den1) < EPS)
264 return ((
f_r(nnf, i, q, k + l, eta) -
f_g(nnf, i, p, q, k, l, eta)) / den2);
266 return ((
f_g(nnf, i, p, j, k, l + m, eta) -
f_g(nnf, i, p, q, k, l, eta)) / den1);
273 if (!(nf == 3 || nf == 4 || nf == 5 || nf == 6))
274 throw std::runtime_error(
"EvolDF1::CheckNf(): Wrong number of flavours in anoumalous dimensions");
276 throw std::runtime_error(
"EvolDF1::CheckNf(): Wrong number of flavours in anoumalous dimensions");
284 gslpp::matrix<double> gammaDF1(2, 2, 0.);
292 gammaDF1(0, 0) = -4.;
293 gammaDF1(0, 1) = 8. / 3.;
294 gammaDF1(1, 0) = 12.;
297 gammaDF1(0, 0) = -145. / 3. + nf * 16. / 9.;
298 gammaDF1(0, 1) = -26. + nf * 40. / 27.;
299 gammaDF1(1, 0) = -45. + nf * 20. / 3.;
300 gammaDF1(1, 1) = -28. / 3.;
303 gammaDF1(0, 0) = -1927. / 2. + nf * 257. / 9. + nf * nf * 40. / 9. + z3 * (224. + nf * 160. / 3.);
304 gammaDF1(0, 1) = 475. / 9. + nf * 362. / 27. - nf * nf * 40. / 27. - z3 * (896. / 3. + nf * 320. / 9.);
305 gammaDF1(1, 0) = 307. / 2. + nf * 361. / 3. - nf * nf * 20. / 3. - z3 * (1344. + nf * 160.);
306 gammaDF1(1, 1) = 1298. / 3. - nf * 76. / 3. - z3 * 224.;
312 gammaDF1(0, 0) = -8. / 3.;
313 gammaDF1(1, 1) = -8. / 3.;
316 gammaDF1(0, 0) = 169. / 9.;
317 gammaDF1(0, 1) = 100. / 27.;
318 gammaDF1(1, 0) = 50. / 3.;
319 gammaDF1(1, 1) = -8. / 3.;
325 throw std::runtime_error(
"EvolDF1::GammaCC(): order not implemented");
335 gslpp::matrix<double> gammaDF1(2, 4, 0.);
343 gammaDF1(0, 1) = -2. / 9.;
344 gammaDF1(1, 1) = 4. / 3.;
347 gammaDF1(0, 0) = -1412. / 243.;
348 gammaDF1(0, 1) = -1369. / 243.;
349 gammaDF1(0, 2) = 134. / 243.;
350 gammaDF1(0, 3) = -35. / 162.;
351 gammaDF1(1, 0) = -416. / 81.;
352 gammaDF1(1, 1) = 1280. / 81.;
353 gammaDF1(1, 2) = 56. / 81.;
354 gammaDF1(1, 3) = 35. / 27.;
357 gammaDF1(0, 0) = 269107. / 13122. - nf * 2288. / 729. - z3 * 1360. / 81.;
358 gammaDF1(0, 1) = -2425817. / 13122. + nf * 30815. / 4374. - z3 * 776. / 81.;
359 gammaDF1(0, 2) = -343783. / 52488. + nf * 392. / 729. + z3 * 124. / 81.;
360 gammaDF1(0, 3) = -37573. / 69984. + nf * 35. / 972. + z3 * 100. / 27.;
361 gammaDF1(1, 0) = 69797. / 2187. + nf * 904. / 243. + z3 * 2720. / 27.;
362 gammaDF1(1, 1) = 1457549. / 8748. - nf * 22067. / 729. - z3 * 2768. / 27.;
363 gammaDF1(1, 2) = -37889. / 8748. - nf * 28. / 243. - z3 * 248. / 27.;
364 gammaDF1(1, 3) = 366919. / 11664. - nf * 35. / 162. - z3 * 110. / 9.;
372 gammaDF1(0, 1) = 254. / 729.;
373 gammaDF1(1, 1) = 1076. / 243.;
379 throw std::runtime_error(
"EvolDF1::GammaCP(): order not implemented");
389 gslpp::matrix<double> gammaDF1(2, 2, 0.);
391 double Qd = -1. / 3.;
392 double Qbar = n_u * Qu + n_d*Qd;
400 gammaDF1(0, 0) = 8. / 243. - Qu * 4. / 3.;
401 gammaDF1(0, 1) = 173. / 162.;
402 gammaDF1(1, 0) = -16. / 81. + Qu * 8.;
403 gammaDF1(1, 1) = 70. / 27.;
406 gammaDF1(0, 0) = 12614. / 2187. - nf * 64. / 2187. - Qu * 374. / 27. + nf * Qu * 2. / 27.;
407 gammaDF1(0, 1) = 65867. / 5832. + nf * 431. / 5832.;
408 gammaDF1(1, 0) = -2332. / 729. + nf * 128. / 729. + Qu * 136. / 9. - nf * Qu * 4. / 9.;
409 gammaDF1(1, 1) = 10577. / 486. - nf * 917. / 972.;
412 gammaDF1(0, 0) = 77506102. / 531441. - nf * 875374. / 177147. + nf * nf * 560. / 19683. - Qu * 9731. / 162. +
413 nf * Qu * 11045. / 729. + nf * nf * Qu * 316. / 729. + Qbar * 3695. / 486. + z3 * (-112216. / 6561. + nf * 728. / 729. +
414 Qu * 25508. / 81. - nf * Qu * 64. / 81. - Qbar * 100. / 27.);
415 gammaDF1(0, 1) = -421272953. / 1417176. - nf * 8210077. / 472392. - nf * nf * 1955. / 6561. + z3 * (-953042. / 2187. -
417 gammaDF1(1, 0) = -15463055. / 177147. + nf * 242204. / 59049. - nf * nf * 1120. / 6561. + Qu * 55748. / 27. -
418 nf * Qu * 33970. / 243. - nf * nf * Qu * 632. / 243. - Qbar * 3695. / 81. + z3 * (365696. / 2187. - nf * 1168. / 243. -
419 Qu * 51232. / 27. - nf * Qu * 1024. / 27. + Qbar * 200. / 9.);
420 gammaDF1(1, 1) = 98548513. / 472392. - nf * 5615165. / 78732. - nf * nf * 2489. / 2187. + z3 * (-607103. / 729. -
427 gammaDF1(0, 0) = -832. / 729.;
428 gammaDF1(0, 1) = 22. / 243.;
429 gammaDF1(1, 0) = -208. / 243.;
430 gammaDF1(1, 1) = -116. / 81.;
437 throw std::runtime_error(
"EvolDF1::GammaCM(): order not implemented");
446 throw std::runtime_error(
"EvolDF1::GammaCL(): Wrong number of flavours in anoumalous dimensions");
449 gslpp::matrix<double> gammaDF1(2, 2, 0.);
457 gammaDF1(0, 0) = -32. / 27.;
458 gammaDF1(1, 0) = -8. / 9.;
461 gammaDF1(0, 0) = -2272. / 729.;
462 gammaDF1(1, 0) = 1952. / 243.;
465 gammaDF1(0, 0) = -1359190. / 19683. + z3 * 6976. / 243.;
466 gammaDF1(1, 0) = -229696. / 6561. - z3 * 3584. / 81.;
469 gammaDF1(0, 0) = -11680. / 2187.;
470 gammaDF1(1, 0) = -2920. / 729.;
471 gammaDF1(0, 1) = -416. / 81.;
472 gammaDF1(1, 1) = -104. / 27.;
479 throw std::runtime_error(
"EvolDF1::GammaCL(): order not implemented");
488 throw std::runtime_error(
"EvolDF1::GammaCQ(): Wrong number of flavours in anoumalous dimensions");
491 gslpp::matrix<double> gammaDF1(2, 4, 0.);
498 gammaDF1(0, 0) = 32. / 27.;
499 gammaDF1(1, 0) = 8. / 9.;
502 gammaDF1(0, 0) = 2272. / 729.;
503 gammaDF1(0, 1) = 122. / 81.;
504 gammaDF1(0, 3) = 49. / 81.;
505 gammaDF1(1, 0) = -1952. / 243.;
506 gammaDF1(1, 1) = -748. / 27.;
507 gammaDF1(1, 3) = 82. / 27.;
516 throw std::runtime_error(
"EvolDF1::GammaCQ(): order not implemented");
526 gslpp::matrix<double> gammaDF1(4, 4, 0.);
534 gammaDF1(0, 1) = -52. / 3.;
536 gammaDF1(1, 0) = -40. / 9.;
537 gammaDF1(1, 1) = -160. / 9. + (double) nf * 4. / 3.;
538 gammaDF1(1, 2) = 4. / 9.;
539 gammaDF1(1, 3) = 5. / 6.;
540 gammaDF1(2, 1) = -256. / 3.;
541 gammaDF1(2, 3) = 20.;
542 gammaDF1(3, 0) = -256. / 9.;
543 gammaDF1(3, 1) = -544. / 9. + (double) nf * 40. / 3.;
544 gammaDF1(3, 2) = 40. / 9.;
545 gammaDF1(3, 3) = -2. / 3.;
548 gammaDF1(0, 0) = -4468. / 81.;
549 gammaDF1(0, 1) = -29129. / 81. - nf * 52. / 9.;
550 gammaDF1(0, 2) = 400. / 81.;
551 gammaDF1(0, 3) = 3493. / 108. - nf * 2. / 9.;
552 gammaDF1(1, 0) = -13678. / 243. + nf * 368. / 81.;
553 gammaDF1(1, 1) = -79409. / 243. + nf * 1334. / 81.;
554 gammaDF1(1, 2) = 509. / 486. - nf * 8. / 81.;
555 gammaDF1(1, 3) = 13499. / 648. - nf * 5. / 27.;
556 gammaDF1(2, 0) = -244480. / 81. - nf * 160. / 9.;
557 gammaDF1(2, 1) = -29648. / 81. - nf * 2200. / 9.;
558 gammaDF1(2, 2) = 23116. / 81. + nf * 16. / 9.;
559 gammaDF1(2, 3) = 3886. / 27. + nf * 148. / 9.;
560 gammaDF1(3, 0) = 77600. / 243. - nf * 1264. / 81.;
561 gammaDF1(3, 1) = -28808. / 243. + nf * 164. / 81.;
562 gammaDF1(3, 2) = -20324. / 243. + nf * 400. / 81.;
563 gammaDF1(3, 3) = -21211. / 162. + nf * 622. / 27.;
566 gammaDF1(0, 0) = -4203068. / 2187. + nf * 14012. / 243. - z3 * 608. / 27.;
567 gammaDF1(0, 1) = -18422762. / 2187. + nf * 888605. / 2916. + nf * nf * 272. / 27. + z3 * (39824. / 27. + nf * 160.);
568 gammaDF1(0, 2) = 674281. / 4374. - nf * 1352. / 243. - z3 * 496. / 27.;
569 gammaDF1(0, 3) = 9284531. / 11664. - nf * 2798. / 81. - nf * nf * 26. / 27. - z3 * (1921. / 9. + nf * 20.);
570 gammaDF1(1, 0) = -5875184. / 6561. + nf * 217892. / 2187. + nf * nf * 472. / 81. + z3 * (27520. / 81. + nf * 1360. / 9.);
571 gammaDF1(1, 1) = -70274587. / 13122. + nf * 8860733. / 17496. - nf * nf * 4010. / 729. + z3 * (16592. / 81. + nf * 2512. / 27.);
572 gammaDF1(1, 2) = 2951809. / 52488. - nf * 31175. / 8748. - nf * nf * 52. / 81. - z3 * (3154. / 81. + nf * 136. / 9.);
573 gammaDF1(1, 3) = 3227801. / 8748. - nf * 105293. / 11664. - nf * nf * 65. / 54. + z3 * (200. / 27. - nf * 220. / 9.);
574 gammaDF1(2, 0) = -194951552. / 2187. + nf * 358672. / 81. - nf * nf * 2144. / 81. + z3 * 87040. / 27.;
575 gammaDF1(2, 1) = -130500332. / 2187. - nf * 2949616. / 729. + nf * nf * 3088. / 27. + z3 * (238016. / 27. + nf * 640.);
576 gammaDF1(2, 2) = 14732222. / 2187. - nf * 27428. / 81. + nf * nf * 272. / 81. - z3 * 13984. / 27.;
577 gammaDF1(2, 3) = 16521659. / 2916. + nf * 8081. / 54. - nf * nf * 316. / 27. - z3 * (22420. / 9. + nf * 200.);
578 gammaDF1(3, 0) = 162733912. / 6561. - nf * 2535466. / 2187. + nf * nf * 17920. / 243. + z3 * (174208. / 81. + nf * 12160. / 9.);
579 gammaDF1(3, 1) = 13286236. / 6561. - nf * 1826023. / 4374. - nf * nf * 159548. / 729. - z3 * (24832. / 81. + nf * 9440. / 27.);
580 gammaDF1(3, 2) = -22191107. / 13122. + nf * 395783. / 4374. - nf * nf * 1720. / 243. - z3 * (33832. / 81. + nf * 1360. / 9.);
581 gammaDF1(3, 3) = -32043361. / 8748. + nf * 3353393. / 5832. - nf * nf * 533. / 81. + z3 * (9248. / 27. - nf * 1120. / 9.);
589 gammaDF1(0, 1) = 11116. / 243.;
590 gammaDF1(0, 3) = -14. / 3.;
591 gammaDF1(1, 0) = 280. / 27.;
592 gammaDF1(1, 1) = 18763. / 729.;
593 gammaDF1(1, 2) = -28. / 27.;
594 gammaDF1(1, 3) = -35. / 18.;
595 gammaDF1(2, 1) = 111136. / 243.;
596 gammaDF1(2, 3) = -140. / 3.;
597 gammaDF1(3, 0) = 2944. / 27.;
598 gammaDF1(3, 1) = 193312. / 729.;
599 gammaDF1(3, 2) = -280. / 27.;
600 gammaDF1(3, 3) = -175. / 9.;
606 throw std::runtime_error(
"EvolDF1::GammaPP(): order not implemented");
616 gslpp::matrix<double> gammaDF1(4, 2, 0.);
618 double Qd = -1. / 3.;
619 double Qbar = n_u * Qu + n_d*Qd;
627 gammaDF1(0, 0) = -176. / 81.;
628 gammaDF1(0, 1) = 14. / 27.;
629 gammaDF1(1, 0) = 88. / 243. - nf * 16. / 81.;
630 gammaDF1(1, 1) = 74. / 81. - nf * 49. / 54.;
631 gammaDF1(2, 0) = -6272. / 81.;
632 gammaDF1(2, 1) = 1736. / 27. + nf * 36.;
633 gammaDF1(3, 0) = 3136. / 243. - nf * 160. / 81. + Qbar * 48.;
634 gammaDF1(3, 1) = 2372. / 81. + nf * 160. / 27.;
637 gammaDF1(0, 0) = 97876. / 729. - nf * 4352. / 729. - Qbar * 112. / 3.;
638 gammaDF1(0, 1) = 42524. / 243. - nf * 2398. / 243.;
639 gammaDF1(1, 0) = -70376. / 2187. - nf * 15788. / 2187. + nf * nf * 32. / 729. - Qbar * 140. / 9.;
640 gammaDF1(1, 1) = -159718. / 729. - nf * 39719. / 5832. - nf * nf * 253. / 486.;
641 gammaDF1(2, 0) = 1764752. / 729. - nf * 65408. / 729. - Qbar * 3136. / 3.;
642 gammaDF1(2, 1) = 2281576. / 243. + nf * 140954. / 243. - nf * nf * 14.;
643 gammaDF1(3, 0) = 4193840. / 2187. - nf * 324128. / 2187. + nf * nf * 896. / 729. - Qbar * 1136. / 9. - nf * Qbar * 56. / 3.;
644 gammaDF1(3, 1) = -3031517. / 729. - nf * 15431. / 1458. - nf * nf * 6031. / 486.;
647 gammaDF1(0, 0) = 102439553. / 177147. - nf * 12273398 / 59049. + nf * nf * 5824. / 6561. + Qbar * 26639. / 81. - nf * Qbar * 8. / 27. +
648 z3 * (3508864. / 2187. - nf * 1904. / 243. - Qbar * 1984. / 9. - nf * Qbar * 64. / 9.);
649 gammaDF1(0, 1) = 3205172129. / 472392. - nf * 108963529. / 314928. + nf * nf * 58903. / 4374. + z3 * (-1597588. / 729. +
650 nf * 13028. / 81. - nf * nf * 20. / 9.);
651 gammaDF1(1, 0) = -2493414077. / 1062882. - nf * 9901031. / 354294. + nf * nf * 243872. / 59049. - nf * nf * nf * 1184. / 6561. -
652 Qbar * 49993. / 972. + nf * Qbar * 305. / 27. + z3 * (-1922264. / 6561. + nf * 308648. / 2187. - nf * nf * 1280. / 243. +
653 Qbar * 1010. / 9. - nf * Qbar * 200. / 27.);
654 gammaDF1(1, 1) = -6678822461. / 2834352. + nf * 127999025. / 1889568. + nf * nf * 1699073. / 157464. + nf * nf * nf * 505. / 4374. +
655 z3 * (2312684. / 2187. + nf * 128347. / 729. + nf * nf * 920. / 81.);
656 gammaDF1(2, 0) = 8808397748. / 177147. - nf * 174839456. / 59049. + nf * nf * 1600. / 729. - Qbar * 669694. / 81. + nf * Qbar * 10672. / 27. +
657 z3 * (123543040. / 2187. - nf * 207712. / 243. + nf * nf * 128. / 27. - Qbar * 24880. / 9. - nf * Qbar * 640. / 9.);
658 gammaDF1(2, 1) = 29013624461. / 118098. - nf * 64260772. / 19683. - nf * nf * 230962. / 243. - nf * nf * nf * 148. / 27. +
659 z3 * (-69359224. / 729. - nf * 885356. / 81. - nf * nf * 5080. / 9.);
660 gammaDF1(3, 0) = 7684242746. / 531441. - nf * 351775414. / 177147. - nf * nf * 479776. / 59049. - nf * nf * nf * 11456. / 6561. +
661 Qbar * 3950201. / 243. - nf * Qbar * 130538. / 81. - nf * nf * Qbar * 592. / 81. + z3 * (7699264. / 6561. + nf * 2854976. / 2187. -
662 nf * nf * 12320. / 243. - Qbar * 108584. / 9. - nf * Qbar * 1136. / 27.);
663 gammaDF1(3, 1) = -72810260309. / 708588. + nf * 2545824851. / 472392. - nf * nf * 33778271. / 78732. - nf * nf * nf * 3988. / 2187. +
664 z3 * (-61384768. / 2187. - nf * 685472. / 729. + nf * nf * 350. / 81.);
670 gammaDF1(0, 0) = -20. / 243.;
671 gammaDF1(0, 1) = 20. / 81.;
672 gammaDF1(1, 0) = -176. / 729.;
673 gammaDF1(1, 1) = 14. / 243.;
674 gammaDF1(2, 0) = -22712. / 243.;
675 gammaDF1(2, 1) = 1328. / 81.;
676 gammaDF1(3, 0) = -6272. / 729.;
677 gammaDF1(3, 1) = -1180. / 243.;
684 throw std::runtime_error(
"EvolDF1::GammaPM(): order not implemented");
693 throw std::runtime_error(
"EvolDF1::GammaPL(): Wrong number of flavours in anoumalous dimensions");
696 gslpp::matrix<double> gammaDF1(4, 2, 0.);
705 gammaDF1(0, 0) = -16. / 9.;
706 gammaDF1(1, 0) = 32. / 27.;
707 gammaDF1(2, 0) = -112. / 9.;
708 gammaDF1(3, 0) = 512. / 27.;
711 gammaDF1(0, 0) = -6752. / 243.;
712 gammaDF1(1, 0) = -2192. / 729.;
713 gammaDF1(2, 0) = -84032. / 243.;
714 gammaDF1(3, 0) = -37856. / 729.;
717 gammaDF1(0, 0) = -1290092. / 6561. + z3 * 3200. / 81.;
718 gammaDF1(1, 0) = -819971. / 19683. - z3 * 19936. / 243.;
719 gammaDF1(2, 0) = -16821944. / 6561. + z3 * 30464. / 81.;
720 gammaDF1(3, 0) = -17787368. / 19683. - z3 * 286720. / 243.;
723 gammaDF1(0, 0) = -39752. / 729.;
724 gammaDF1(1, 0) = 1024. / 2187.;
725 gammaDF1(2, 0) = -381344. / 729.;
726 gammaDF1(3, 0) = 24832. / 2187.;
727 gammaDF1(0, 1) = -136. / 27.;
728 gammaDF1(1, 1) = -448. / 81.;
729 gammaDF1(2, 1) = -15616. / 27.;
730 gammaDF1(3, 1) = -7936. / 81.;
737 throw std::runtime_error(
"EvolDF1::GammaPL(): order not implemented");
746 throw std::runtime_error(
"EvolDF1::GammaPQ(): Wrong number of flavours in anoumalous dimensions");
748 gslpp::matrix<double> gammaDF1(4, 4, 0.);
755 gammaDF1(0, 0) = 76. / 9.;
756 gammaDF1(0, 2) = -2. / 3.;
757 gammaDF1(1, 0) = -32. / 27.;
758 gammaDF1(1, 1) = 20. / 3.;
759 gammaDF1(1, 3) = -2. / 3.;
760 gammaDF1(2, 0) = 496. / 9.;
761 gammaDF1(2, 2) = -20. / 3.;
762 gammaDF1(3, 0) = -512. / 27.;
763 gammaDF1(3, 1) = 128. / 3.;
764 gammaDF1(3, 3) = -20. / 3.;
767 gammaDF1(0, 0) = -23488. / 243.;
768 gammaDF1(0, 1) = 6280. / 27.;
769 gammaDF1(0, 2) = 112. / 9.;
770 gammaDF1(0, 3) = -538. / 27.;
771 gammaDF1(1, 0) = 31568. / 729.;
772 gammaDF1(1, 1) = 9481. / 81.;
773 gammaDF1(1, 2) = -92. / 27.;
774 gammaDF1(1, 3) = -1012. / 81.;
775 gammaDF1(2, 0) = -233920. / 243.;
776 gammaDF1(2, 1) = 68848. / 27.;
777 gammaDF1(2, 2) = 1120. / 9.;
778 gammaDF1(2, 3) = -5056. / 27.;
779 gammaDF1(3, 0) = 352352. / 729.;
780 gammaDF1(3, 1) = 116680. / 81.;
781 gammaDF1(3, 2) = -752. / 27.;
782 gammaDF1(3, 3) = -10147. / 81.;
791 throw std::runtime_error(
"EvolDF1::GammaPQ(): order not implemented");
801 gslpp::matrix<double> gammaDF1(2, 2, 0.);
803 double Qd = -1. / 3.;
804 double Qbar = n_u * Qu + n_d*Qd;
812 gammaDF1(0, 0) = 32. / 3.;
813 gammaDF1(1, 0) = Qd * 32. / 3.;
814 gammaDF1(1, 1) = 28. / 3.;
817 gammaDF1(0, 0) = 1936. / 9. - nf * 224. / 27.;
818 gammaDF1(1, 0) = Qd * 368. / 3. - nf * Qd * 224. / 27.;
819 gammaDF1(1, 1) = 1456. / 9. - nf * 61. / 27.;
822 gammaDF1(0, 0) = 307448. / 81. - nf * 23776. / 81. - nf * nf * 352. / 81. + z3 * (-1856. / 27. - nf * 1280. / 9.);
823 gammaDF1(1, 0) = -Qbar * 1600. / 27. + Qd * 159872. / 81. - nf * Qd * 17108. / 81. - nf * nf * Qd * 352. / 81. + z3 * (Qbar * 640. / 9. -
824 Qd * 1856. / 27. - nf * Qd * 1280. / 9.);
825 gammaDF1(1, 1) = 268807. / 81. - nf * 4343. / 27. - nf * nf * 461. / 81. + z3 * (-28624. / 27. - nf * 1312. / 9.);
831 gammaDF1(0, 0) = 16. / 9.;
832 gammaDF1(0, 1) = -8. / 3.;
833 gammaDF1(1, 1) = 8. / 9.;
836 gammaDF1(0, 0) = -256. / 27.;
837 gammaDF1(0, 1) = -52. / 9.;
838 gammaDF1(1, 0) = 128. / 81.;
839 gammaDF1(1, 1) = -40. / 27.;
845 throw std::runtime_error(
"EvolDF1::GammaMM(): order not implemented");
854 throw std::runtime_error(
"EvolDF1::GammaLL(): Wrong number of flavours in anoumalous dimensions");
856 gslpp::matrix<double> gammaDF1(2, 2, 0.);
864 gammaDF1(0, 1) = -4.;
865 gammaDF1(1, 0) = -4.;
868 gammaDF1(0, 1) = 16.;
869 gammaDF1(1, 0) = 16.;
878 throw std::runtime_error(
"EvolDF1::GammaLL(): order not implemented");
887 throw std::runtime_error(
"EvolDF1::GammaQP(): Wrong number of flavours in anoumalous dimensions");
889 gslpp::matrix<double> gammaDF1(4, 4, 0.);
896 gammaDF1(0, 1) = -8. / 9.;
897 gammaDF1(1, 1) = 16. / 27.;
898 gammaDF1(2, 1) = -128. / 9.;
899 gammaDF1(3, 1) = 184. / 27.;
902 gammaDF1(0, 0) = 832. / 243.;
903 gammaDF1(0, 1) = -4000. / 243.;
904 gammaDF1(0, 2) = -112. / 243.;
905 gammaDF1(0, 3) = -70. / 81.;
906 gammaDF1(1, 0) = 3376. / 729.;
907 gammaDF1(1, 1) = 6344. / 729.;
908 gammaDF1(1, 2) = -280. / 729.;
909 gammaDF1(1, 3) = 55. / 486.;
910 gammaDF1(2, 0) = 2272. / 243.;
911 gammaDF1(2, 1) = -72088. / 243.;
912 gammaDF1(2, 2) = -688. / 243.;
913 gammaDF1(2, 3) = -1240. / 81.;
914 gammaDF1(3, 0) = 45424. / 729.;
915 gammaDF1(3, 1) = 84236. / 729.;
916 gammaDF1(3, 2) = -3880. / 729.;
917 gammaDF1(3, 3) = 1220. / 243.;
922 gammaDF1(0, 0) = 40. / 27.;
923 gammaDF1(0, 2) = -4. / 27.;
924 gammaDF1(1, 1) = 40. / 27.;
925 gammaDF1(1, 3) = -4. / 27.;
926 gammaDF1(2, 0) = 256. / 27.;
927 gammaDF1(2, 2) = -40. / 27.;
928 gammaDF1(3, 1) = 256. / 27.;
929 gammaDF1(3, 3) = -40. / 27.;
932 gammaDF1(0, 0) = -2240. / 81.;
933 gammaDF1(0, 1) = 39392. / 729.;
934 gammaDF1(0, 2) = 224. / 81.;
935 gammaDF1(0, 3) = -92. / 27.;
936 gammaDF1(1, 0) = 2176. / 243.;
937 gammaDF1(1, 1) = 84890. / 2187.;
938 gammaDF1(1, 2) = -184. / 243.;
939 gammaDF1(1, 3) = -224. / 81.;
940 gammaDF1(2, 0) = -23552. / 81.;
941 gammaDF1(2, 1) = 399776. / 729.;
942 gammaDF1(2, 2) = 2240. / 81.;
943 gammaDF1(2, 3) = -752. / 27.;
944 gammaDF1(3, 0) = 23296. / 243.;
945 gammaDF1(3, 1) = 933776. / 2187.;
946 gammaDF1(3, 2) = -1504. / 243.;
947 gammaDF1(3, 3) = -2030. / 81.;
954 throw std::runtime_error(
"EvolDF1::GammaQP(): order not implemented");
963 throw std::runtime_error(
"EvolDF1::GammaQM(): Wrong number of flavours in anoumalous dimensions");
965 gslpp::matrix<double> gammaDF1(4, 2, 0.);
972 gammaDF1(0, 0) = 176. / 243.;
973 gammaDF1(0, 1) = -14. / 81.;
974 gammaDF1(1, 0) = -136. / 729.;
975 gammaDF1(1, 1) = -295. / 486.;
976 gammaDF1(2, 0) = 6272. / 243.;
977 gammaDF1(2, 1) = -764. / 81.;
978 gammaDF1(3, 0) = 39152. / 729.;
979 gammaDF1(3, 1) = -1892. / 243.;
989 throw std::runtime_error(
"EvolDF1::GammaQM(): order not implemented");
998 throw std::runtime_error(
"EvolDF1::GammaQL(): Wrong number of flavours in anoumalous dimensions");
1000 gslpp::matrix<double> gammaDF1(4, 2, 0.);
1007 gammaDF1(0, 0) = -272. / 27.;
1008 gammaDF1(1, 0) = -32. / 81.;
1009 gammaDF1(2, 0) = -2768. / 27.;
1010 gammaDF1(3, 0) = -512. / 81.;
1013 gammaDF1(0, 0) = -24352. / 729.;
1014 gammaDF1(1, 0) = 54608. / 2187.;
1015 gammaDF1(2, 0) = -227008. / 729.;
1016 gammaDF1(3, 0) = 551648. / 2187.;
1025 throw std::runtime_error(
"EvolDF1::GammaQL(): order not implemented");
1032 uint nf = n_u + n_d;
1034 throw std::runtime_error(
"EvolDF1::GammaQQ(): Wrong number of flavours in anoumalous dimensions");
1036 gslpp::matrix<double> gammaDF1(4, 4, 0.);
1043 gammaDF1(0, 1) = -20.;
1044 gammaDF1(0, 3) = 2.;
1045 gammaDF1(1, 0) = -40. / 9.;
1046 gammaDF1(1, 1) = -52. / 3.;
1047 gammaDF1(1, 2) = 4. / 9.;
1048 gammaDF1(1, 3) = 5. / 6.;
1049 gammaDF1(2, 1) = -128.;
1050 gammaDF1(2, 3) = 20.;
1051 gammaDF1(3, 0) = -256. / 9.;
1052 gammaDF1(3, 1) = -160. / 3.;
1053 gammaDF1(3, 2) = 40. / 9.;
1054 gammaDF1(3, 3) = -2. / 3.;
1057 gammaDF1(0, 0) = -404. / 9.;
1058 gammaDF1(0, 1) = -3077. / 9.;
1059 gammaDF1(0, 2) = 32. / 9.;
1060 gammaDF1(0, 3) = 1031. / 36.;
1061 gammaDF1(1, 0) = -2698. / 81.;
1062 gammaDF1(1, 1) = -8035. / 27.;
1063 gammaDF1(1, 2) = -49. / 162.;
1064 gammaDF1(1, 3) = 4493. / 216.;
1065 gammaDF1(2, 0) = -19072. / 9.;
1066 gammaDF1(2, 1) = -14096. / 9.;
1067 gammaDF1(2, 2) = 1708. / 9.;
1068 gammaDF1(2, 3) = 1622. / 9.;
1069 gammaDF1(3, 0) = 32288. / 81.;
1070 gammaDF1(3, 1) = -15976. / 27.;
1071 gammaDF1(3, 2) = -6692. / 81.;
1072 gammaDF1(3, 3) = -2437. / 54.;
1077 gammaDF1(0, 0) = 332. / 27.;
1078 gammaDF1(0, 2) = -2. / 9.;
1079 gammaDF1(1, 0) = 32. / 81.;
1080 gammaDF1(1, 1) = 20. / 9.;
1081 gammaDF1(1, 3) = -2. / 9.;
1082 gammaDF1(2, 0) = 3152. / 27.;
1083 gammaDF1(2, 2) = -20. / 9.;
1084 gammaDF1(3, 0) = 512. / 81.;
1085 gammaDF1(3, 1) = 128. / 9.;
1086 gammaDF1(3, 3) = -20. / 9.;
1089 gammaDF1(0, 0) = -5888. / 729.;
1090 gammaDF1(0, 1) = 13916. / 81.;
1091 gammaDF1(0, 2) = 112. / 27.;
1092 gammaDF1(0, 3) = -812. / 81.;
1093 gammaDF1(1, 0) = -2552. / 2187.;
1094 gammaDF1(1, 1) = 15638. / 243.;
1095 gammaDF1(1, 2) = -176. / 81.;
1096 gammaDF1(1, 3) = -2881. / 486.;
1097 gammaDF1(2, 0) = -90944. / 729.;
1098 gammaDF1(2, 1) = 90128. / 81.;
1099 gammaDF1(2, 2) = 1120. / 27.;
1100 gammaDF1(2, 3) = -1748. / 81.;
1101 gammaDF1(3, 0) = 1312. / 2187.;
1102 gammaDF1(3, 1) = 102488. / 243.;
1103 gammaDF1(3, 2) = -1592. / 81.;
1104 gammaDF1(3, 3) = -6008. / 243.;
1111 throw std::runtime_error(
"EvolDF1::GammaQQ(): order not implemented");
1118 uint nf = n_u + n_d;
1120 throw std::runtime_error(
"EvolDF1::GammaBP(): Wrong number of flavours in anoumalous dimensions");
1122 gslpp::matrix<double> gammaDF1(1, 4, 0.);
1129 gammaDF1(0, 1) = 4. / 3.;
1132 gammaDF1(0, 0) = -1576. / 81.;
1133 gammaDF1(0, 1) = 446. / 27.;
1134 gammaDF1(0, 2) = 172. / 81.;
1135 gammaDF1(0, 3) = 40. / 27.;
1142 gammaDF1(0, 1) = -232. / 81.;
1149 throw std::runtime_error(
"EvolDF1::GammaBP(): order not implemented");
1156 uint nf = n_u + n_d;
1158 throw std::runtime_error(
"EvolDF1::GammaBL(): Wrong number of flavours in anoumalous dimensions");
1160 gslpp::matrix<double> gammaDF1(1, 2, 0.);
1167 gammaDF1(0, 0) = 16. / 9.;
1170 gammaDF1(0, 0) = -8. / 9.;
1179 throw std::runtime_error(
"EvolDF1::GammaBL(): order not implemented");
1186 uint nf = n_u + n_d;
1188 throw std::runtime_error(
"EvolDF1::GammaBQ(): Wrong number of flavours in anoumalous dimensions");
1190 gslpp::matrix<double> gammaDF1(1, 4, 0.);
1197 gammaDF1(0, 0) = -16. / 9.;
1200 gammaDF1(0, 1) = 580. / 27.;
1201 gammaDF1(0, 3) = -94. / 27.;
1210 throw std::runtime_error(
"EvolDF1::GammaBQ(): order not implemented");
1217 uint nf = n_u + n_d;
1219 throw std::runtime_error(
"EvolDF1::GammaBB(): Wrong number of flavours in anoumalous dimensions");
1221 gslpp::matrix<double> gammaDF1(1, 1, 0.);
1228 gammaDF1(0, 0) = 4.;
1231 gammaDF1(0, 0) = 325. / 9.;
1236 gammaDF1(0, 0) = 4. / 3.;
1239 gammaDF1(0, 0) = -388. / 9.;
1246 throw std::runtime_error(
"EvolDF1::GammaBB(): order not implemented");
1253 gslpp::matrix<double> gammaDF1(
nops,
nops, 0.);
1257 if (
blocks.compare(
"C") == 0)
1258 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1259 else if (
blocks.compare(
"CP") == 0)
1261 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1262 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1263 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1264 }
else if (
blocks.compare(
"CPM") == 0)
1266 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1267 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1268 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1269 gammaDF1.assign(0, 6,
GammaCM(nm, n_u, n_d));
1270 gammaDF1.assign(2, 6,
GammaPM(nm, n_u, n_d));
1271 gammaDF1.assign(6, 6,
GammaMM(nm, n_u, n_d));
1272 }
else if (
blocks.compare(
"CPQ") == 0)
1274 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1275 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1276 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1277 gammaDF1.assign(0, 6,
GammaCQ(nm, n_u, n_d));
1278 gammaDF1.assign(2, 6,
GammaPQ(nm, n_u, n_d));
1279 gammaDF1.assign(6, 2,
GammaQP(nm, n_u, n_d));
1280 gammaDF1.assign(6, 6,
GammaQQ(nm, n_u, n_d));
1281 }
else if (
blocks.compare(
"L") == 0)
1283 gammaDF1.assign(0, 0,
GammaLL(nm, n_u, n_d));
1284 }
else if (
blocks.compare(
"CPL") == 0)
1286 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1287 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1288 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1289 gammaDF1.assign(0, 6,
GammaCL(nm, n_u, n_d));
1290 gammaDF1.assign(2, 6,
GammaPL(nm, n_u, n_d));
1291 gammaDF1.assign(6, 6,
GammaLL(nm, n_u, n_d));
1292 }
else if (
blocks.compare(
"CPML") == 0)
1294 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1295 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1296 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1297 gammaDF1.assign(0, 6,
GammaCM(nm, n_u, n_d));
1298 gammaDF1.assign(2, 6,
GammaPM(nm, n_u, n_d));
1299 gammaDF1.assign(6, 6,
GammaMM(nm, n_u, n_d));
1300 gammaDF1.assign(0, 8,
GammaCL(nm, n_u, n_d));
1301 gammaDF1.assign(2, 8,
GammaPL(nm, n_u, n_d));
1302 gammaDF1.assign(8, 8,
GammaLL(nm, n_u, n_d));
1303 }
else if (
blocks.compare(
"CPQB") == 0)
1305 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1306 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1307 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1308 gammaDF1.assign(0, 6,
GammaCQ(nm, n_u, n_d));
1309 gammaDF1.assign(2, 6,
GammaPQ(nm, n_u, n_d));
1310 gammaDF1.assign(6, 2,
GammaQP(nm, n_u, n_d));
1311 gammaDF1.assign(6, 6,
GammaQQ(nm, n_u, n_d));
1312 gammaDF1.assign(10, 2,
GammaBP(nm, n_u, n_d));
1313 gammaDF1.assign(10, 6,
GammaBQ(nm, n_u, n_d));
1314 gammaDF1.assign(10, 10,
GammaBB(nm, n_u, n_d));
1315 }
else if (
blocks.compare(
"CPMQB") == 0)
1317 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1318 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1319 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1320 gammaDF1.assign(0, 6,
GammaCM(nm, n_u, n_d));
1321 gammaDF1.assign(2, 6,
GammaPM(nm, n_u, n_d));
1322 gammaDF1.assign(6, 6,
GammaMM(nm, n_u, n_d));
1323 gammaDF1.assign(0, 8,
GammaCQ(nm, n_u, n_d));
1324 gammaDF1.assign(2, 8,
GammaPQ(nm, n_u, n_d));
1325 gammaDF1.assign(8, 2,
GammaQP(nm, n_u, n_d));
1326 gammaDF1.assign(8, 6,
GammaQM(nm, n_u, n_d));
1327 gammaDF1.assign(8, 8,
GammaQQ(nm, n_u, n_d));
1328 gammaDF1.assign(12, 2,
GammaBP(nm, n_u, n_d));
1329 gammaDF1.assign(12, 8,
GammaBQ(nm, n_u, n_d));
1330 gammaDF1.assign(12, 12,
GammaBB(nm, n_u, n_d));
1331 }
else if (
blocks.compare(
"CPMLQB") == 0)
1333 gammaDF1.assign(0, 0,
GammaCC(nm, n_u, n_d));
1334 gammaDF1.assign(0, 2,
GammaCP(nm, n_u, n_d));
1335 gammaDF1.assign(2, 2,
GammaPP(nm, n_u, n_d));
1336 gammaDF1.assign(0, 6,
GammaCM(nm, n_u, n_d));
1337 gammaDF1.assign(2, 6,
GammaPM(nm, n_u, n_d));
1338 gammaDF1.assign(6, 6,
GammaMM(nm, n_u, n_d));
1339 gammaDF1.assign(0, 8,
GammaCL(nm, n_u, n_d));
1340 gammaDF1.assign(2, 8,
GammaPL(nm, n_u, n_d));
1341 gammaDF1.assign(8, 8,
GammaLL(nm, n_u, n_d));
1343 gammaDF1.assign(0, 10,
GammaCQ(nm, n_u, n_d));
1344 gammaDF1.assign(2, 10,
GammaPQ(nm, n_u, n_d));
1345 gammaDF1.assign(10, 2,
GammaQP(nm, n_u, n_d));
1346 gammaDF1.assign(10, 6,
GammaQM(nm, n_u, n_d));
1347 gammaDF1.assign(10, 8,
GammaQL(nm, n_u, n_d));
1348 gammaDF1.assign(10, 10,
GammaQQ(nm, n_u, n_d));
1349 gammaDF1.assign(14, 2,
GammaBP(nm, n_u, n_d));
1350 gammaDF1.assign(14, 8,
GammaBL(nm, n_u, n_d));
1351 gammaDF1.assign(14, 10,
GammaBQ(nm, n_u, n_d));
1352 gammaDF1.assign(14, 14,
GammaBB(nm, n_u, n_d));
1354 throw std::runtime_error(
"EvolDF1::AnomalousDimension(): block not implemented");
1362 throw std::runtime_error(
"EvolDF1::Df1Evol(): only nf = 5 available.");
1371 std::stringstream out;
1373 throw std::runtime_error(
"EvolDF1::Df1Evol(): scheme " + out.str() +
" not implemented ");
1380 if (
mu == this->mu &&
M == this->M &&
scheme == this->scheme)
1388 std::stringstream out;
1389 out <<
"M = " <<
M <<
" < mu = " <<
mu;
1390 throw std::runtime_error(
"EvolDF1::Df1Evol(): " + out.str() +
".");
1455 gslpp::matrix<double> mtmp(
nops, 0.);
1456 std::vector<std::vector<gslpp::matrix<double> > > vtmp2;
1457 std::vector<gslpp::matrix<double> > vtmp;
1459 vtmp.push_back(mtmp);
1461 vtmp2.push_back(vtmp);
1462 Expanded<gslpp::matrix<double> > res(vtmp2);
1468 double b0, b0e, b5, alsM, eta, omega, lambda;
1469 std::map< std::vector<uint>,
double >::iterator itr;
1479 omega = 2. * b0 * alsM / 4. / M_PI;
1481 for (itr =
vM0vi[nnf].begin(); itr !=
vM0vi[nnf].end(); ++itr)
1483 const std::vector<uint> &v = itr->first;
1484 const uint &a = v[0];
1485 const uint &b = v[1];
1486 const uint &i = v[2];
1488 res.setMatrixElement(
QCD0,
QED0, a, b, res.getOrd(
QCD0,
QED0)(a, b) + itr->second * pow(eta,
ai[nnf].at(i)));
1491 for (itr =
vM1vi[nnf].begin(); itr !=
vM1vi[nnf].end(); ++itr)
1493 const std::vector<uint> &v = itr->first;
1494 const uint &a = v[0];
1495 const uint &b = v[1];
1496 const uint &i = v[2];
1497 const uint &j = v[3];
1499 res.setMatrixElement(
QCD1,
QED0, a, b, res.getOrd(
QCD1,
QED0)(a, b) + omega * itr->second *
f_f(nnf, i, j, -1, eta));
1502 for (itr =
vM2vi[nnf].begin(); itr !=
vM2vi[nnf].end(); ++itr)
1504 const std::vector<uint> &v = itr->first;
1505 const uint &a = v[0];
1506 const uint &b = v[1];
1507 const uint &i = v[2];
1508 const uint &j = v[3];
1510 res.setMatrixElement(
QCD2,
QED0, a, b, res.getOrd(
QCD2,
QED0)(a, b) + omega * omega * itr->second *
f_f(nnf, i, j, -2, eta));
1513 for (itr =
vM11vi[nnf].begin(); itr !=
vM11vi[nnf].end(); ++itr)
1515 const std::vector<uint> &v = itr->first;
1516 const uint &a = v[0];
1517 const uint &b = v[1];
1518 const uint &i = v[2];
1519 const uint &j = v[3];
1520 const uint &p = v[4];
1522 res.setMatrixElement(
QCD2,
QED0, a, b, res.getOrd(
QCD2,
QED0)(a, b) + omega * omega * itr->second *
f_g(nnf, i, p, j, -1, -1, eta));
1531 for (itr =
vM3vi[nnf].begin(); itr !=
vM3vi[nnf].end(); ++itr)
1533 const std::vector<uint> &v = itr->first;
1534 const uint &a = v[0];
1535 const uint &b = v[1];
1536 const uint &i = v[2];
1537 const uint &j = v[3];
1538 const double &term = itr->second;
1540 res.setMatrixElement(
QCD0,
QED1, a, b, res.getOrd(
QCD0,
QED1)(a, b) + lambda * term *
f_f(nnf, i, j, 1, eta));
1541 res.setMatrixElement(
QCD0,
QED2, a, b, res.getOrd(
QCD0,
QED2)(a, b) + lambda * lambda * term * (
f_f(nnf, i, j, 2, eta) -
f_f(nnf, i, j, 1, eta)));
1542 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * b5 * term *
f_r(nnf, i, j, 1, eta));
1545 for (itr =
vM4vi[nnf].begin(); itr !=
vM4vi[nnf].end(); ++itr)
1547 const std::vector<uint> &v = itr->first;
1548 const uint &a = v[0];
1549 const uint &b = v[1];
1550 const uint &i = v[2];
1551 const uint &j = v[3];
1552 const double &term = itr->second;
1554 res.setMatrixElement(
QCD1,
QED1, a, b, res.getOrd(
QCD1,
QED1)(a, b) + omega * lambda * term *
f_f(nnf, i, j, 0, eta));
1555 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) - omega * lambda * lambda * term *
f_f(nnf, i, j, 0, eta));
1558 for (itr =
vM5vi[nnf].begin(); itr !=
vM5vi[nnf].end(); ++itr)
1560 const std::vector<uint> &v = itr->first;
1561 const uint &a = v[0];
1562 const uint &b = v[1];
1563 const uint &i = v[2];
1564 const uint &j = v[3];
1566 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_f(nnf, i, j, -1, eta));
1569 for (itr =
vM6vi[nnf].begin(); itr !=
vM6vi[nnf].end(); ++itr)
1571 const std::vector<uint> &v = itr->first;
1572 const uint &a = v[0];
1573 const uint &b = v[1];
1574 const uint &i = v[2];
1575 const uint &j = v[3];
1577 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * itr->second *
f_f(nnf, i, j, 1, eta));
1580 for (itr =
vM33vi[nnf].begin(); itr !=
vM33vi[nnf].end(); ++itr)
1582 const std::vector<uint> &v = itr->first;
1583 const uint &a = v[0];
1584 const uint &b = v[1];
1585 const uint &i = v[2];
1586 const uint &j = v[3];
1587 const uint &p = v[4];
1589 res.setMatrixElement(
QCD0,
QED2, a, b, res.getOrd(
QCD0,
QED2)(a, b) + lambda * lambda * itr->second *
f_g(nnf, i, p, j, 1, 1, eta));
1592 for (itr =
vM13vi[nnf].begin(); itr !=
vM13vi[nnf].end(); ++itr)
1594 const std::vector<uint> &v = itr->first;
1595 const uint &a = v[0];
1596 const uint &b = v[1];
1597 const uint &i = v[2];
1598 const uint &j = v[3];
1599 const uint &p = v[4];
1600 const double &term = itr->second;
1602 res.setMatrixElement(
QCD1,
QED1, a, b, res.getOrd(
QCD1,
QED1)(a, b) + omega * lambda * term *
f_g(nnf, i, p, j, -1, 1, eta));
1603 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * term * (
f_g(nnf, i, p, j, -1, 2, eta) -
f_g(nnf, i, p, j, -1, 1, eta)));
1606 for (itr =
vM31vi[nnf].begin(); itr !=
vM31vi[nnf].end(); ++itr)
1608 const std::vector<uint> &v = itr->first;
1609 const uint &a = v[0];
1610 const uint &b = v[1];
1611 const uint &i = v[2];
1612 const uint &j = v[3];
1613 const uint &p = v[4];
1614 const double &term = itr->second;
1616 res.setMatrixElement(
QCD1,
QED1, a, b, res.getOrd(
QCD1,
QED1)(a, b) + omega * lambda * term *
f_g(nnf, i, p, j, 1, -1, eta));
1617 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * term * (
f_g(nnf, i, p, j, 2, -1, eta) -
f_g(nnf, i, p, j, 1, -1, eta)));
1620 for (itr =
vM34vi[nnf].begin(); itr !=
vM34vi[nnf].end(); ++itr)
1622 const std::vector<uint> &v = itr->first;
1623 const uint &a = v[0];
1624 const uint &b = v[1];
1625 const uint &i = v[2];
1626 const uint &j = v[3];
1627 const uint &p = v[4];
1629 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * itr->second *
f_g(nnf, i, p, j, 1, 0, eta));
1632 for (itr =
vM43vi[nnf].begin(); itr !=
vM43vi[nnf].end(); ++itr)
1634 const std::vector<uint> &v = itr->first;
1635 const uint &a = v[0];
1636 const uint &b = v[1];
1637 const uint &i = v[2];
1638 const uint &j = v[3];
1639 const uint &p = v[4];
1641 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * itr->second *
f_g(nnf, i, p, j, 0, 1, eta));
1644 for (itr =
vM23vi[nnf].begin(); itr !=
vM23vi[nnf].end(); ++itr)
1646 const std::vector<uint> &v = itr->first;
1647 const uint &a = v[0];
1648 const uint &b = v[1];
1649 const uint &i = v[2];
1650 const uint &j = v[3];
1651 const uint &p = v[4];
1653 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_g(nnf, i, p, j, -2, 1, eta));
1656 for (itr =
vM32vi[nnf].begin(); itr !=
vM32vi[nnf].end(); ++itr)
1658 const std::vector<uint> &v = itr->first;
1659 const uint &a = v[0];
1660 const uint &b = v[1];
1661 const uint &i = v[2];
1662 const uint &j = v[3];
1663 const uint &p = v[4];
1665 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_g(nnf, i, p, j, 1, -2, eta));
1668 for (itr =
vM14vi[nnf].begin(); itr !=
vM14vi[nnf].end(); ++itr)
1670 const std::vector<uint> &v = itr->first;
1671 const uint &a = v[0];
1672 const uint &b = v[1];
1673 const uint &i = v[2];
1674 const uint &j = v[3];
1675 const uint &p = v[4];
1677 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_g(nnf, i, p, j, -1, 0, eta));
1680 for (itr =
vM41vi[nnf].begin(); itr !=
vM41vi[nnf].end(); ++itr)
1682 const std::vector<uint> &v = itr->first;
1683 const uint &a = v[0];
1684 const uint &b = v[1];
1685 const uint &i = v[2];
1686 const uint &j = v[3];
1687 const uint &p = v[4];
1689 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_g(nnf, i, p, j, 0, -1, eta));
1692 for (itr =
vM113vi[nnf].begin(); itr !=
vM113vi[nnf].end(); ++itr)
1694 const std::vector<uint> &v = itr->first;
1695 const uint &a = v[0];
1696 const uint &b = v[1];
1697 const uint &i = v[2];
1698 const uint &j = v[3];
1699 const uint &p = v[4];
1700 const uint &q = v[5];
1702 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_h(nnf, i, p, q, j, -1, -1, 1, eta));
1705 for (itr =
vM131vi[nnf].begin(); itr !=
vM131vi[nnf].end(); ++itr)
1707 const std::vector<uint> &v = itr->first;
1708 const uint &a = v[0];
1709 const uint &b = v[1];
1710 const uint &i = v[2];
1711 const uint &j = v[3];
1712 const uint &p = v[4];
1713 const uint &q = v[5];
1715 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_h(nnf, i, p, q, j, -1, 1, -1, eta));
1718 for (itr =
vM311vi[nnf].begin(); itr !=
vM311vi[nnf].end(); ++itr)
1720 const std::vector<uint> &v = itr->first;
1721 const uint &a = v[0];
1722 const uint &b = v[1];
1723 const uint &i = v[2];
1724 const uint &j = v[3];
1725 const uint &p = v[4];
1726 const uint &q = v[5];
1728 res.setMatrixElement(
QCD2,
QED1, a, b, res.getOrd(
QCD2,
QED1)(a, b) + omega * omega * lambda * itr->second *
f_h(nnf, i, p, q, j, 1, -1, -1, eta));
1731 for (itr =
vM133vi[nnf].begin(); itr !=
vM133vi[nnf].end(); ++itr)
1733 const std::vector<uint> &v = itr->first;
1734 const uint &a = v[0];
1735 const uint &b = v[1];
1736 const uint &i = v[2];
1737 const uint &j = v[3];
1738 const uint &p = v[4];
1739 const uint &q = v[5];
1741 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * itr->second *
f_h(nnf, i, p, q, j, -1, 1, 1, eta));
1744 for (itr =
vM313vi[nnf].begin(); itr !=
vM313vi[nnf].end(); ++itr)
1746 const std::vector<uint> &v = itr->first;
1747 const uint &a = v[0];
1748 const uint &b = v[1];
1749 const uint &i = v[2];
1750 const uint &j = v[3];
1751 const uint &p = v[4];
1752 const uint &q = v[5];
1754 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * itr->second *
f_h(nnf, i, p, q, j, 1, -1, 1, eta));
1757 for (itr =
vM331vi[nnf].begin(); itr !=
vM331vi[nnf].end(); ++itr)
1759 const std::vector<uint> &v = itr->first;
1760 const uint &a = v[0];
1761 const uint &b = v[1];
1762 const uint &i = v[2];
1763 const uint &j = v[3];
1764 const uint &p = v[4];
1765 const uint &q = v[5];
1767 res.setMatrixElement(
QCD1,
QED2, a, b, res.getOrd(
QCD1,
QED2)(a, b) + omega * lambda * lambda * itr->second *
f_h(nnf, i, p, q, j, 1, 1, -1, eta));
1811 if (fabs(res.getOrd(
QCD0,
QED0)(a, b)) < EPS) res.setMatrixElement(
QCD0,
QED0, a, b, 0.);
1812 if (fabs(res.getOrd(
QCD1,
QED0)(a, b)) < EPS) res.setMatrixElement(
QCD1,
QED0, a, b, 0.);
1813 if (fabs(res.getOrd(
QCD2,
QED0)(a, b)) < EPS) res.setMatrixElement(
QCD2,
QED0, a, b, 0.);
1814 if (fabs(res.getOrd(
QCD0,
QED1)(a, b)) < EPS) res.setMatrixElement(
QCD0,
QED1, a, b, 0.);
1815 if (fabs(res.getOrd(
QCD0,
QED2)(a, b)) < EPS) res.setMatrixElement(
QCD0,
QED2, a, b, 0.);
1816 if (fabs(res.getOrd(
QCD1,
QED1)(a, b)) < EPS) res.setMatrixElement(
QCD1,
QED1, a, b, 0.);
1817 if (fabs(res.getOrd(
QCD1,
QED2)(a, b)) < EPS) res.setMatrixElement(
QCD1,
QED2, a, b, 0.);
1818 if (fabs(res.getOrd(
QCD2,
QED1)(a, b)) < EPS) res.setMatrixElement(
QCD2,
QED1, a, b, 0.);
1824 if (fabs(res.getOrd(
QCD0,
QED0)(a, b)) < EPS) res.setMatrixElement(
QCD0,
QED0, a, b, 0.);
1825 if (fabs(res.getOrd(
QCD1,
QED0)(a, b)) < EPS) res.setMatrixElement(
QCD1,
QED0, a, b, 0.);
1826 if (fabs(res.getOrd(
QCD2,
QED0)(a, b)) < EPS) res.setMatrixElement(
QCD2,
QED0, a, b, 0.);
std::map< std::string, uint > blocks_nops
void DF1Ev(double mu, double M, int nf, schemes scheme)
a void type method storing properly the magic numbers for the implementation of the evolutor
std::map< std::vector< uint >, double > vM131vi[NF]
gslpp::matrix< double > GammaQQ(indices nm, uint n_u, uint n_d) const
QQ block of the QCD+QED anomalous dimension.
std::map< std::vector< uint >, double > vM14vi[NF]
gslpp::matrix< double > GammaCP(indices nm, uint n_u, uint n_d) const
CP block of the QCD+QED anomalous dimension.
std::map< std::vector< uint >, double > vM34vi[NF]
std::map< std::vector< uint >, double > vM2vi[NF]
std::map< std::vector< uint >, double > vM3vi[NF]
std::map< std::vector< uint >, double > vM5vi[NF]
gslpp::matrix< double > GammaBL(indices nm, uint n_u, uint n_d) const
BL block of the QED anomalous dimension.
gslpp::matrix< double > GammaBB(indices nm, uint n_u, uint n_d) const
BB block of the QCD+QED anomalous dimension.
std::map< std::vector< uint >, double > vM311vi[NF]
double f_h(uint nf, uint i, uint p, uint q, uint j, int k, int l, int m, double eta)
auxiliary function h - eq. (53) of Huber, Lunghi, Misiak, Wyler, hep-ph/0512066
gslpp::matrix< double > GammaBP(indices nm, uint n_u, uint n_d) const
BP block of the QCD+QED anomalous dimension.
gslpp::matrix< double > evec
gslpp::matrix< double > GammaMM(indices nm, uint n_u, uint n_d) const
MM block of the QCD+QED anomalous dimension.
gslpp::matrix< double > GammaQL(indices nm, uint n_u, uint n_d) const
QL block of the QED anomalous dimension.
std::map< std::vector< uint >, double > vM133vi[NF]
double f_f_d[2][F_iCacheSize]
gslpp::matrix< double > GammaCL(indices nm, uint n_u, uint n_d) const
CL block of the QED anomalous dimension.
std::map< std::vector< uint >, double > vM331vi[NF]
gslpp::matrix< gslpp::complex > evecc
gslpp::matrix< double > GammaBQ(indices nm, uint n_u, uint n_d) const
BQ block of the QED anomalous dimension.
gslpp::matrix< double > AnomalousDimension(indices nm, uint n_u, uint n_d) const
a method returning the anomalous dimension matrix given in the Misiak basis
double f_f(uint nf, uint i, uint j, int k, double eta)
auxiliary function f - eq. (50) of Huber, Lunghi, Misiak, Wyler, hep-ph/0512066
gslpp::matrix< double > GammaPL(indices nm, uint n_u, uint n_d) const
PL block of the QED anomalous dimension.
virtual ~EvolDF1()
EvolDF1 destructor.
std::map< std::vector< uint >, double > vM33vi[NF]
std::map< std::vector< uint >, double > vM43vi[NF]
gslpp::matrix< double > GammaPP(indices nm, uint n_u, uint n_d) const
PP block of the QCD+QED anomalous dimension.
gslpp::vector< gslpp::complex > evalc
std::map< std::vector< uint >, double > vM11vi[NF]
const StandardModel & model
void CheckNf(indices nm, uint nf) const
a method returning the anomalous dimension in the Chetyrkin, Misiak and Munz operator basis
double f_r(uint nf, uint i, uint j, int k, double eta)
auxiliary function r - eq. (51) of Huber, Lunghi, Misiak, Wyler, hep-ph/0512066
friend double gslpp_special_functions::zeta(int i)
std::map< std::vector< uint >, double > vM13vi[NF]
int f_f_c[4][F_iCacheSize]
std::map< std::vector< uint >, double > vM313vi[NF]
gslpp::matrix< double > GammaPM(indices nm, uint n_u, uint n_d) const
PM block of the QCD+QED anomalous dimension.
const Expanded< gslpp::matrix< double > > & DF1Evol(double mu, double M, schemes scheme=NDR)
a method returning the evolutor related to the high scale and the low scale
gslpp::matrix< double > GammaPQ(indices nm, uint n_u, uint n_d) const
PQ block of the QED anomalous dimension.
std::map< std::vector< uint >, double > vM1vi[NF]
std::map< std::vector< uint >, double > vM32vi[NF]
std::map< std::vector< uint >, double > vM41vi[NF]
std::map< std::vector< uint >, double > vM6vi[NF]
std::map< std::vector< uint >, double > vM0vi[NF]
gslpp::matrix< double > GammaCM(indices nm, uint n_u, uint n_d) const
CM block of the QCD+QED anomalous dimension.
EvolDF1(std::string reqblocks, schemes scheme, const StandardModel &model_i, qcd_orders order_qcd, qed_orders order_qed)
EvolDF1 constructor.
gslpp::matrix< double > GammaCQ(indices nm, uint n_u, uint n_d) const
CQ block of the QED anomalous dimension.
std::map< std::vector< uint >, double > vM23vi[NF]
gslpp::matrix< double > GammaCC(indices nm, uint n_u, uint n_d) const
CC block of the QCD+QED anomalous dimension.
std::map< std::vector< uint >, double > vM4vi[NF]
std::map< std::vector< uint >, double > vM113vi[NF]
gslpp::matrix< double > GammaQP(indices nm, uint n_u, uint n_d) const
QP block of the QCD+QED anomalous dimension.
gslpp::matrix< double > GammaLL(indices nm, uint n_u, uint n_d) const
LL block of the QED anomalous dimension.
double f_g(uint nf, uint i, uint p, uint j, int k, int l, double eta)
auxiliary function g - eq. (52) of Huber, Lunghi, Misiak, Wyler, hep-ph/0512066
gslpp::matrix< double > GammaQM(indices nm, uint n_u, uint n_d) const
QM block of the QCD anomalous dimension.
gslpp::matrix< double > evec_i
std::map< std::vector< uint >, double > vM31vi[NF]
std::map< uint, double > ai[NF]
gslpp::vector< double > eval
const double getAlsM() const
A get method to access the value of .
const double AboveTh(const double mu) const
The active flavour threshold above the scale as defined in QCD::Thresholds().
const double Nf(const double mu) const
The number of active flavour at scale .
const double getMAls() const
A get method to access the mass scale at which the strong coupling constant measurement is provided.
void CacheShift(double cache[][5], int n) const
A member used to manage the caching for this class.
const Expanded< gslpp::matrix< double > > & getEvol() const
void setScales(double mu, double M)
Sets the upper and lower scale for the running of the Wilson Coefficients.
A model class for the Standard Model.
const double Ale(double mu, orders order, bool Nf_thr=true) const
The running electromagnetic coupling in the scheme.
const double Beta_s(int nm, unsigned int nf) const
QCD beta function coefficients including QED corrections - eq. (36) hep-ph/0512066.
const double Als(const double mu, const orders order, const bool Nf_thr, const bool qed_flag) const
The running QCD coupling in the scheme including QED corrections.
const double Beta_e(int nm, unsigned int nf) const
QED beta function coefficients - eq. (36) hep-ph/0512066.
Expanded< gslpp::matrix< double > > wilson
schemes
An enum type for regularization schemes.
qed_orders
An enum type for qed_orders in electroweak.
qcd_orders
An enum type for qcd_orders in QCD.