diff --git a/inc/adani/SpecialFunctions.h b/inc/adani/SpecialFunctions.h index 073680e..1908b3a 100644 --- a/inc/adani/SpecialFunctions.h +++ b/inc/adani/SpecialFunctions.h @@ -45,47 +45,47 @@ double S12(double x); // Harmonic polylogarithms up to weight 3. //------------------------------------------------------------------------------------------// -double H0(double x); -double Hm1(double x); -double H1(double x); - -double Hm1m1(double x); -double Hm10(double x); -double Hm11(double x); -double H0m1(double x); -double H00(double x); -double H01(double x); -double H1m1(double x); -double H10(double x); -double H11(double x); - -double Hm1m1m1(double x); -double Hm1m10(double x); -double Hm1m11(double x); -double Hm10m1(double x); -double Hm100(double x); -double Hm101(double x); -double Hm11m1(double x); -double Hm110(double x); -double Hm111(double x); -double H0m1m1(double x); -double H0m10(double x); -double H0m11(double x); -double H00m1(double x); -double H000(double x); -double H001(double x); -double H01m1(double x); -double H010(double x); -double H011(double x); -double H1m1m1(double x); -double H1m10(double x); -double H1m11(double x); -double H10m1(double x); -double H100(double x); -double H101(double x); -double H11m1(double x); -double H110(double x); -double H111(double x); +double H_0(double x); +double H_m1(double x); +double H_1(double x); + +double H_m1m1(double x); +double H_m10(double x); +double H_m11(double x); +double H_0m1(double x); +double H_00(double x); +double H_01(double x); +double H_1m1(double x); +double H_10(double x); +double H_11(double x); + +double H_m1m1m1(double x); +double H_m1m10(double x); +double H_m1m11(double x); +double H_m10m1(double x); +double H_m100(double x); +double H_m101(double x); +double H_m11m1(double x); +double H_m110(double x); +double H_m111(double x); +double H_0m1m1(double x); +double H_0m10(double x); +double H_0m11(double x); +double H_00m1(double x); +double H_000(double x); +double H_001(double x); +double H_01m1(double x); +double H_010(double x); +double H_011(double x); +double H_1m1m1(double x); +double H_1m10(double x); +double H_1m11(double x); +double H_10m1(double x); +double H_100(double x); +double H_101(double x); +double H_11m1(double x); +double H_110(double x); +double H_111(double x); //==========================================================================================// // Harmonic polylogarithms up to weight 5. diff --git a/src/HighEnergyCoefficientFunction.cc b/src/HighEnergyCoefficientFunction.cc index 0534548..29c54bc 100644 --- a/src/HighEnergyCoefficientFunction.cc +++ b/src/HighEnergyCoefficientFunction.cc @@ -237,7 +237,7 @@ double HighEnergyCoefficientFunction::C2_g2_highenergy( double L = log((1. + z) / (1. - z)); - double Hmp = H11(z) + H1m1(z) - Hm11(z) - Hm1m1(z); + double Hmp = H_11(z) + H_1m1(z) - H_m11(z) - H_m1m1(z); double I = 4. * z * Hmp; double J = 4. * z * L; @@ -277,7 +277,7 @@ double HighEnergyCoefficientFunction::CL_g2_highenergy( double L = log((1. + z) / (1. - z)); - double Hmp = H11(z) + H1m1(z) - Hm11(z) - Hm1m1(z); + double Hmp = H_11(z) + H_1m1(z) - H_m11(z) - H_m1m1(z); double I = 4. * z * Hmp; double J = 4. * z * L; @@ -440,11 +440,11 @@ double HighEnergyCoefficientFunction::C2_g3_highenergyLL( double L = log((1. + z) / (1. - z)); - double Hmp = H11(z) + H1m1(z) - Hm11(z) - Hm1m1(z); + double Hmp = H_11(z) + H_1m1(z) - H_m11(z) - H_m1m1(z); - double Hmpm = H111(z) - H11m1(z) + H1m11(z) - - H1m1m1(z) - Hm111(z) + Hm11m1(z) - - Hm1m11(z) + Hm1m1m1(z); + double Hmpm = H_111(z) - H_11m1(z) + H_1m11(z) + - H_1m1m1(z) - H_m111(z) + H_m11m1(z) + - H_m1m11(z) + H_m1m1m1(z); double I = 4 * z * Hmp; double J = 4 * z * L; @@ -483,11 +483,11 @@ Value HighEnergyCoefficientFunction::C2_g3_highenergyNLL( double L = log((1. + z) / (1. - z)); - double Hmp = H11(z) + H1m1(z) - Hm11(z) - Hm1m1(z); + double Hmp = H_11(z) + H_1m1(z) - H_m11(z) - H_m1m1(z); - double Hmpm = H111(z) - H11m1(z) + H1m11(z) - - H1m1m1(z) - Hm111(z) + Hm11m1(z) - - Hm1m11(z) + Hm1m1m1(z); + double Hmpm = H_111(z) - H_11m1(z) + H_1m11(z) + - H_1m1m1(z) - H_m111(z) + H_m11m1(z) + - H_m1m11(z) + H_m1m1m1(z); double II = 4 * z * Hmp; double J = 4 * z * L; @@ -634,11 +634,11 @@ double HighEnergyCoefficientFunction::CL_g3_highenergyLL( double L = log((1. + z) / (1. - z)); - double Hmp = H11(z) + H1m1(z) - Hm11(z) - Hm1m1(z); + double Hmp = H_11(z) + H_1m1(z) - H_m11(z) - H_m1m1(z); - double Hmpm = H111(z) - H11m1(z) + H1m11(z) - - H1m1m1(z) - Hm111(z) + Hm11m1(z) - - Hm1m11(z) + Hm1m1m1(z); + double Hmpm = H_111(z) - H_11m1(z) + H_1m11(z) + - H_1m1m1(z) - H_m111(z) + H_m11m1(z) + - H_m1m11(z) + H_m1m1m1(z); double II = 4 * z * Hmp; double J = 4 * z * L; @@ -683,11 +683,11 @@ Value HighEnergyCoefficientFunction::CL_g3_highenergyNLL( double L = log((1. + z) / (1. - z)); - double Hmp = H11(z) + H1m1(z) - Hm11(z) - Hm1m1(z); + double Hmp = H_11(z) + H_1m1(z) - H_m11(z) - H_m1m1(z); - double Hmpm = H111(z) - H11m1(z) + H1m11(z) - - H1m1m1(z) - Hm111(z) + Hm11m1(z) - - Hm1m11(z) + Hm1m1m1(z); + double Hmpm = H_111(z) - H_11m1(z) + H_1m11(z) + - H_1m1m1(z) - H_m111(z) + H_m11m1(z) + - H_m1m11(z) + H_m1m1m1(z); double II = 4 * z * Hmp; double J = 4 * z * L; diff --git a/src/HighScaleCoefficientFunction.cc b/src/HighScaleCoefficientFunction.cc index ed47b2c..679125d 100644 --- a/src/HighScaleCoefficientFunction.cc +++ b/src/HighScaleCoefficientFunction.cc @@ -220,13 +220,13 @@ double HighScaleCoefficientFunction::D2_ps2_highscale( double L_Q = log(1. / m2Q2) + L_M; double L_Q2 = L_Q * L_Q; - double H0 = H0(z); - double H1 = H1(z); - double Hm1 = H(z, -1); - double H01 = H(z, 0, 1); - double H0m1 = H(z, 0, -1); - double H001 = H(z, 0, 0, 1); - double H011 = H(z, 0, 1, 1); + double H0 = H_0(z); + double H1 = H_1(z); + double Hm1 = H_m1(z); + double H01 = H_01(z); + double H0m1 = H_0m1(z); + double H001 = H_001(z); + double H011 = H_011(z); return CF * TR * ((32. / 3 * H0m1 - 32. / 3 * Hm1 * H0) * (z + 1) * (z + 1) @@ -297,23 +297,23 @@ double HighScaleCoefficientFunction::D2_g2_highscale( double x2 = x * x; - double H0 = H(x, 0); - double H1 = H(x, 1); - double Hm1 = H(x, -1); - double H00 = H(x, 0, 0); - double H01 = H(x, 0, 1); - double H11 = H(x, 1, 1); - double H10 = H(x, 1, 0); - double H011 = H(x, 0, 1, 1); - double H111 = H(x, 1, 1, 1); - double H100 = H(x, 1, 0, 0); - double H000 = H(x, 0, 0, 0); - double H010 = H(x, 0, 1, 0); - double H101 = H(x, 1, 0, 1); - double Hm1m10 = H(x, -1, -1, 0); - double Hm10 = H(x, -1, 0); - double Hm100 = H(x, -1, 0, 0); - double H110 = H(x, 1, 1, 0); + double H0 = H_0(x); + double H1 = H_1(x); + double Hm1 = H_m1(x); + double H00 = H_00(x); + double H01 = H_01(x); + double H11 = H_11(x); + double H10 = H_10(x); + double H011 = H_011(x); + double H111 = H_111(x); + double H100 = H_100(x); + double H000 = H_000(x); + double H010 = H_010(x); + double H101 = H_101(x); + double Hm1m10 = H_m1m10(x); + double Hm10 = H_m10(x); + double Hm100 = H_m100(x); + double H110 = H_110(x); double LQm = log(1. / m2Q2); double LQm2 = LQm * LQm; @@ -416,11 +416,11 @@ double HighScaleCoefficientFunction::DL_g2_highscale( double L_M = log(m2mu2); double L_Q = log(1. / m2Q2) + L_M; - double H0 = H0(z); - double H1 = H1(z); - double Hm1 = H(z, -1); - double H01 = H(z, 0, 1); - double H0m1 = H(z, 0, -1); + double H0 = H_0(z); + double H1 = H_1(z); + double Hm1 = H_m1(z); + double H01 = H_01(z); + double H0m1 = H_0m1(z); return TR * TR * (-64. / 3 * (z - 1.) * z * L_M) + CA * TR @@ -461,9 +461,9 @@ double HighScaleCoefficientFunction::DL_ps2_highscale( double L_M = log(m2mu2); double L_Q = log(1. / m2Q2) + L_M; - double H0 = H0(z); - double H1 = H1(z); - double H01 = H(z, 0, 1); + double H0 = H_0(z); + double H1 = H_1(z); + double H01 = H_01(z); return CF * TR * (32. / 9. / z * (z - 1.) * (10. * z2 - 2. * z + 1.) diff --git a/src/HighScaleSplitLogs.cc b/src/HighScaleSplitLogs.cc index b5f28a6..ffa34b3 100644 --- a/src/HighScaleSplitLogs.cc +++ b/src/HighScaleSplitLogs.cc @@ -144,14 +144,14 @@ double HighScaleSplitLogs::C2_g3_highscale_LL(double x, int nf) const { double x2 = x * x; // weight 1 - const double H0 = H(x, 0); - const double H1 = H(x, 1); + const double H0 = H_0(x); + const double H1 = H_1(x); // weight 2 - const double H00 = H(x, 0, 0); - const double H10 = H(x, 1, 0); - const double H01 = H(x, 0, 1); - const double H11 = H(x, 1, 1); + const double H00 = H_00(x); + const double H10 = H_10(x); + const double H01 = H_01(x); + const double H11 = H_11(x); return -0.8888888888888888 + 1.7777777777777777 * x - 1.7777777777777777 * x2 @@ -290,30 +290,30 @@ double HighScaleSplitLogs::C2_g3_highscale_NLL(double x, int nf) const { double x2 = x * x; // weight 1 - const double Hm1 = H(x, -1); - const double H0 = H(x, 0); - const double H1 = H(x, 1); + const double Hm1 = H_m1(x); + const double H0 = H_0(x); + const double H1 = H_1(x); // weight 2 - const double Hm10 = H(x, -1, 0); - const double H00 = H(x, 0, 0); - const double H10 = H(x, 1, 0); - const double H01 = H(x, 0, 1); - const double H11 = H(x, 1, 1); + const double Hm10 = H_m10(x); + const double H00 = H_00(x); + const double H10 = H_10(x); + const double H01 = H_01(x); + const double H11 = H_11(x); // weight 3 - const double Hm1m10 = H(x, -1, -1, 0); - const double H0m10 = H(x, 0, -1, 0); - const double Hm100 = H(x, -1, 0, 0); - const double H000 = H(x, 0, 0, 0); - const double H100 = H(x, 1, 0, 0); - const double H010 = H(x, 0, 1, 0); - const double H110 = H(x, 1, 1, 0); - const double Hm101 = H(x, -1, 0, 1); - const double H001 = H(x, 0, 0, 1); - const double H101 = H(x, 1, 0, 1); - const double H011 = H(x, 0, 1, 1); - const double H111 = H(x, 1, 1, 1); + const double Hm1m10 = H_m1m10(x); + const double H0m10 = H_0m10(x); + const double Hm100 = H_m100(x); + const double H000 = H_000(x); + const double H100 = H_100(x); + const double H010 = H_010(x); + const double H110 = H_110(x); + const double Hm101 = H_m101(x); + const double H001 = H_001(x); + const double H101 = H_101(x); + const double H011 = H_011(x); + const double H111 = H_111(x); return -0.8888888888888888 - 0.8888888888888888 * H0 - 0.8888888888888888 * H1 + 7.111111111111111 * x @@ -2457,12 +2457,12 @@ double HighScaleSplitLogs::C2_ps3_highscale_LL(double x, int nf) const { double x2 = x * x; // weight 1 - const double H0 = H(x, 0); - const double H1 = H(x, 1); + const double H0 = H_0(x); + const double H1 = H_1(x); // weight 2 - const double H00 = H(x, 0, 0); - const double H01 = H(x, 0, 1); + const double H00 = H_00(x); + const double H01 = H_01(x); return -1.3333333333333333 * (5.333333333333333 + 10.666666666666666 * H0 @@ -2526,22 +2526,22 @@ double HighScaleSplitLogs::C2_ps3_highscale_NLL(double x, int nf) const { double x2 = x * x; // weight 1 - const double H0 = H(x, 0); - const double H1 = H(x, 1); + const double H0 = H_0(x); + const double H1 = H_1(x); // weight 2 - const double Hm10 = H(x, -1, 0); - const double H00 = H(x, 0, 0); - const double H10 = H(x, 1, 0); - const double H01 = H(x, 0, 1); - const double H11 = H(x, 1, 1); + const double Hm10 = H_m10(x); + const double H00 = H_00(x); + const double H10 = H_10(x); + const double H01 = H_01(x); + const double H11 = H_11(x); // weight 3 - const double H0m10 = H(x, 0, -1, 0); - const double H000 = H(x, 0, 0, 0); - const double H010 = H(x, 0, 1, 0); - const double H001 = H(x, 0, 0, 1); - const double H011 = H(x, 0, 1, 1); + const double H0m10 = H_0m10(x); + const double H000 = H_000(x); + const double H010 = H_010(x); + const double H001 = H_001(x); + const double H011 = H_011(x); return 1.3333333333333333 * (-31.11111111111111 - 14.222222222222221 * H0 @@ -3494,11 +3494,11 @@ double HighScaleSplitLogs::CL_g3_highscale_NLL(double x, int /*v*/) const { double x2 = x * x; // weight 1 - const double H0 = H(x, 0); - const double H1 = H(x, 1); + const double H0 = H_0(x); + const double H1 = H_1(x); // weight 2 - const double H01 = H(x, 0, 1); + const double H01 = H_01(x); return -83.55555555555556 - 56.88888888888889 * H0 + 35.55555555555556 * H1 - 11.25925925925926 / x + 275.91579969079277 * x @@ -3728,7 +3728,7 @@ double HighScaleSplitLogs::CL_ps3_highscale_NLL(double x, int /*nf*/) const { double x2 = x * x; - const double H0 = H(x, 0); + const double H0 = H_0(x); return -56.888888888888886 - 28.444444444444443 * H0 - 4.7407407407407405 / x + 71.11111111111111 * x @@ -3747,7 +3747,7 @@ double HighScaleSplitLogs::CL_ps3_highscale_N2LL(double x, int /*nf*/) const { double x2 = x * x; - const double H0 = H(x, 0); + const double H0 = H_0(x); return 9.481481481481495 + 28.444444444444443 * H0 * H0 - 12.641975308641975 / x + 227.55555555555551 * x diff --git a/src/MasslessCoefficientFunction.cc b/src/MasslessCoefficientFunction.cc index 6b24458..102f20c 100644 --- a/src/MasslessCoefficientFunction.cc +++ b/src/MasslessCoefficientFunction.cc @@ -150,28 +150,28 @@ double MasslessCoefficientFunction::C2_g2_massless(double x, int nf) const { double x2 = x * x; double x3 = x2 * x; - double Hm1 = H(x, -1); - double H0 = H(x, 0); - double H1 = H(x, 1); - - double H00 = H(x, 0, 0); - double H10 = H(x, 1, 0); - double Hm10 = H(x, -1, 0); - double H01 = H(x, 0, 1); - double H11 = H(x, 1, 1); - - double Hm1m10 = H(x, -1, -1, 0); - double H0m10 = H(x, 0, -1, 0); - double Hm100 = H(x, -1, 0, 0); - double H000 = H(x, 0, 0, 0); - double H100 = H(x, 1, 0, 0); - double H010 = H(x, 0, 1, 0); - double H110 = H(x, 1, 1, 0); - double Hm101 = H(x, -1, 0, 1); - double H001 = H(x, 0, 0, 1); - double H101 = H(x, 1, 0, 1); - double H011 = H(x, 0, 1, 1); - double H111 = H(x, 1, 1, 1); + double Hm1 = H_m1(x); + double H0 = H_0(x); + double H1 = H_1(x); + + double H00 = H_00(x); + double H10 = H_10(x); + double Hm10 = H_m10(x); + double H01 = H_01(x); + double H11 = H_11(x); + + double Hm1m10 = H_m1m10(x); + double H0m10 = H_0m10(x); + double Hm100 = H_m100(x); + double H000 = H_000(x); + double H100 = H_100(x); + double H010 = H_010(x); + double H110 = H_110(x); + double Hm101 = H_m101(x); + double H001 = H_001(x); + double H101 = H_101(x); + double H011 = H_011(x); + double H111 = H_111(x); return nf * CF * (-647. / 15 - 104. / 3 * zeta2 * x + 72 * zeta2 * x2 @@ -234,19 +234,19 @@ double MasslessCoefficientFunction::C2_ps2_massless(double x, int nf) const { double x2 = x * x; - double H0 = H(x, 0); - double H1 = H(x, 1); + double H0 = H_0(x); + double H1 = H_1(x); - double H00 = H(x, 0, 0); - double H10 = H(x, 1, 0); - double Hm10 = H(x, -1, 0); - double H01 = H(x, 0, 1); - double H11 = H(x, 1, 1); + double H00 = H_00(x); + double H10 = H_10(x); + double Hm10 = H_m10(x); + double H01 = H_01(x); + double H11 = H_11(x); - double H000 = H(x, 0, 0, 0); - double H010 = H(x, 0, 1, 0); - double H001 = H(x, 0, 0, 1); - double H011 = H(x, 0, 1, 1); + double H000 = H_000(x); + double H010 = H_010(x); + double H001 = H_001(x); + double H011 = H_011(x); return nf * CF * (+158. / 9 - 16. / 3 * zeta2 / x - 16 * zeta2 * x + 16 * zeta2 * x2 @@ -275,14 +275,14 @@ double MasslessCoefficientFunction::CL_g2_massless(double x, int nf) const { double x2 = x * x; double x3 = x2 * x; - double H0 = H(x, 0); - double H1 = H(x, 1); + double H0 = H_0(x); + double H1 = H_1(x); - double H00 = H(x, 0, 0); - double H10 = H(x, 1, 0); - double Hm10 = H(x, -1, 0); - double H01 = H(x, 0, 1); - double H11 = H(x, 1, 1); + double H00 = H_00(x); + double H10 = H_10(x); + double Hm10 = H_m10(x); + double H01 = H_01(x); + double H11 = H_11(x); return nf * CF * (-128. / 15 + 16. / 3 * zeta2 * x + 64. / 5 * zeta2 * x3 @@ -313,11 +313,11 @@ double MasslessCoefficientFunction::CL_ps2_massless(double x, int nf) const { double x2 = x * x; - double H0 = H(x, 0); - double H1 = H(x, 1); + double H0 = H_0(x); + double H1 = H_1(x); - double H00 = H(x, 0, 0); - double H01 = H(x, 0, 1); + double H00 = H_00(x); + double H01 = H_01(x); return nf * CF * (+16. / 3 - 16 * zeta2 * x - 16. / 9 / x - 64. / 3 * x diff --git a/src/SpecialFunctions.cc b/src/SpecialFunctions.cc index 18db803..6a075b4 100644 --- a/src/SpecialFunctions.cc +++ b/src/SpecialFunctions.cc @@ -190,21 +190,21 @@ double S12(double x) { // Eq. (1) of Ref. [arXiv:hep-ph/9905237v1] //------------------------------------------------------------------------------------------// -double H0(double x) { +double H_0(double x) { return log(x); } //------------------------------------------------------------------------------------------// -double H1(double x) { +double H_1(double x) { return -log(1. - x); } //------------------------------------------------------------------------------------------// -double Hm1(double x) { +double H_m1(double x) { return log(1. + x); } @@ -215,7 +215,7 @@ double Hm1(double x) { // Eq. (9,11) of Ref. [arXiv:hep-ph/9905237v1] //------------------------------------------------------------------------------------------// -double Hm1m1(double x) { +double H_m1m1(double x) { double Lp = log(1. + x); return 0.5 * Lp * Lp; @@ -223,14 +223,14 @@ double Hm1m1(double x) { //------------------------------------------------------------------------------------------// -double Hm10(double x) { +double H_m10(double x) { return log(x) * log(1. + x) + Li2(-x); } //------------------------------------------------------------------------------------------// -double Hm11(double x) { +double H_m11(double x) { double xp = 1. + x; return Li2(xp / 2) - ln2 * log(xp) - Li2_1_2; @@ -238,14 +238,14 @@ double Hm11(double x) { //------------------------------------------------------------------------------------------// -double H0m1(double x) { +double H_0m1(double x) { return -Li2(-x); } //------------------------------------------------------------------------------------------// -double H00(double x) { +double H_00(double x) { double L = log(x); return 0.5 * L * L; @@ -253,27 +253,27 @@ double H00(double x) { //------------------------------------------------------------------------------------------// -double H01(double x) { +double H_01(double x) { return Li2(x); } //------------------------------------------------------------------------------------------// -double H1m1(double x) { +double H_1m1(double x) { double xm = 1. - x; return Li2(xm / 2.) - ln2 * log(xm) - Li2_1_2; } -double H10(double x) { +double H_10(double x) { return -log(x) * log(1. - x) - Li2(x); } //------------------------------------------------------------------------------------------// -double H11(double x) { +double H_11(double x) { double Lm = log(1. - x); return 0.5 * Lm * Lm; @@ -285,7 +285,7 @@ double H11(double x) { // Eq. (78-89) of Ref. [arXiv:hep-ph/0507152v2] //------------------------------------------------------------------------------------------// -double Hm1m1m1(double x) { +double H_m1m1m1(double x) { double Lp = log(1. + x); return 1. / 6. * Lp * Lp * Lp; @@ -293,28 +293,28 @@ double Hm1m1m1(double x) { //------------------------------------------------------------------------------------------// -double Hm1m10(double x) { +double H_m1m10(double x) { - return H0(x) * Hm1m1(x) - H0m1m1(x) - Hm10m1(x); + return H_0(x) * H_m1m1(x) - H_0m1m1(x) - H_m10m1(x); } //------------------------------------------------------------------------------------------// -double Hm1m11(double x) { +double H_m1m11(double x) { - return 0.5 * Hm1(x) * Hm11(x) - 0.5 * Hm11m1(x); + return 0.5 * H_m1(x) * H_m11(x) - 0.5 * H_m11m1(x); } //------------------------------------------------------------------------------------------// -double Hm10m1(double x) { +double H_m10m1(double x) { - return H0m1(x) * Hm1(x) - 2. * H0m1m1(x); + return H_0m1(x) * H_m1(x) - 2. * H_0m1m1(x); } //------------------------------------------------------------------------------------------// -double Hm100(double x) { +double H_m100(double x) { double L = log(x); return 0.5 * L * L * log(1. + x) + L * Li2(-x) - Li3(-x); @@ -322,28 +322,28 @@ double Hm100(double x) { //------------------------------------------------------------------------------------------// -double Hm101(double x) { +double H_m101(double x) { - return Hm1(x) * H01(x) - H0m11(x) - H01m1(x); + return H_m1(x) * H_01(x) - H_0m11(x) - H_01m1(x); } //------------------------------------------------------------------------------------------// -double Hm11m1(double x) { +double H_m11m1(double x) { - return Hm1(x) * H1m1(x) - 2. * H1m1m1(x); + return H_m1(x) * H_1m1(x) - 2. * H_1m1m1(x); } //------------------------------------------------------------------------------------------// -double Hm110(double x) { +double H_m110(double x) { - return H0(x) * Hm11(x) - H0m11(x) - Hm101(x); + return H_0(x) * H_m11(x) - H_0m11(x) - H_m101(x); } //------------------------------------------------------------------------------------------// -double Hm111(double x) { +double H_m111(double x) { double xm = 1. - x; double Lm = log(xm); @@ -353,21 +353,21 @@ double Hm111(double x) { //------------------------------------------------------------------------------------------// -double H0m1m1(double x) { +double H_0m1m1(double x) { return S12(-x); } //------------------------------------------------------------------------------------------// -double H0m10(double x) { +double H_0m10(double x) { return -log(x) * Li2(-x) + 2. * Li3(-x); } //------------------------------------------------------------------------------------------// -double H0m11(double x) { +double H_0m11(double x) { double xm = 1. - x; double Lm = log(xm); @@ -381,14 +381,14 @@ double H0m11(double x) { //------------------------------------------------------------------------------------------// -double H00m1(double x) { +double H_00m1(double x) { return -Li3(-x); } //------------------------------------------------------------------------------------------// -double H000(double x) { +double H_000(double x) { double L = log(x); return 1. / 6. * L * L * L; @@ -396,14 +396,14 @@ double H000(double x) { //------------------------------------------------------------------------------------------// -double H001(double x) { +double H_001(double x) { return Li3(x); } //------------------------------------------------------------------------------------------// -double H01m1(double x) { +double H_01m1(double x) { double xp = 1. + x; double Lp = log(xp); @@ -413,21 +413,21 @@ double H01m1(double x) { //------------------------------------------------------------------------------------------// -double H010(double x) { +double H_010(double x) { return log(x) * Li2(x) - 2. * Li3(x); } //------------------------------------------------------------------------------------------// -double H011(double x) { +double H_011(double x) { return S12(x); } //------------------------------------------------------------------------------------------// -double H1m1m1(double x) { +double H_1m1m1(double x) { double xp = 1. + x; double Lp = log(xp); @@ -437,28 +437,28 @@ double H1m1m1(double x) { //------------------------------------------------------------------------------------------// -double H1m10(double x) { +double H_1m10(double x) { - return H0(x) * H1m1(x) - H01m1(x) - H10m1(x); + return H_0(x) * H_1m1(x) - H_01m1(x) - H_10m1(x); } //------------------------------------------------------------------------------------------// -double H1m11(double x) { +double H_1m11(double x) { - return H1(x) * Hm11(x) - 2. * Hm111(x); + return H_1(x) * H_m11(x) - 2. * H_m111(x); } //------------------------------------------------------------------------------------------// -double H10m1(double x) { +double H_10m1(double x) { - return H1(x) * H0m1(x) - H01m1(x) - H0m11(x); + return H_1(x) * H_0m1(x) - H_01m1(x) - H_0m11(x); } //------------------------------------------------------------------------------------------// -double H100(double x) { +double H_100(double x) { double L = log(x); return -1. / 2 * L * L * log(1. - x) - L * Li2(x) + Li3(x); @@ -466,21 +466,21 @@ double H100(double x) { //------------------------------------------------------------------------------------------// -double H101(double x) { +double H_101(double x) { return -2. * S12(x) - log(1. - x) * Li2(x); } //------------------------------------------------------------------------------------------// -double H11m1(double x) { +double H_11m1(double x) { - return 0.5 * H1(x) * H1m1(x) - 0.5 * H1m11(x); + return 0.5 * H_1(x) * H_1m1(x) - 0.5 * H_1m11(x); } //------------------------------------------------------------------------------------------// -double H110(double x) { +double H_110(double x) { double xm = 1. - x; return zeta2 * log(xm) - Li3(xm) + zeta3; @@ -488,7 +488,7 @@ double H110(double x) { //------------------------------------------------------------------------------------------// -double H111(double x) { +double H_111(double x) { double Lm = log(1. - x); return -1. / 6. * Lm * Lm * Lm; diff --git a/src/SplittingFunction.cc b/src/SplittingFunction.cc index 4efc6ce..a6c7721 100644 --- a/src/SplittingFunction.cc +++ b/src/SplittingFunction.cc @@ -480,14 +480,14 @@ double SplittingFunction::Pqq0sing_integrated(double x, int /*nf*/) const { double SplittingFunction::Pgq1(double x, int nf) const { - double H0 = H(x, 0); - double H1 = H(x, 1); + double H0 = H_0(x); + double H1 = H_1(x); - double H00 = H(x, 0, 0); - double H10 = H(x, 1, 0); - double Hm10 = H(x, -1, 0); - double H01 = H(x, 0, 1); - double H11 = H(x, 1, 1); + double H00 = H_00(x); + double H10 = H_10(x); + double Hm10 = H_m10(x); + double H01 = H_01(x); + double H11 = H_11(x); double tmp_CACF = zeta2 * 16. + 76. / 9 + 4. / x + 148. / 9 * x + 176. / 9 * x * x @@ -517,12 +517,12 @@ double SplittingFunction::Pgg1reg(double x, int nf) const { double x2 = x * x; - double H0 = H(x, 0); + double H0 = H_0(x); - double H00 = H(x, 0, 0); - double H10 = H(x, 1, 0); - double Hm10 = H(x, -1, 0); - double H01 = H(x, 0, 1); + double H00 = H_00(x); + double H10 = H_10(x); + double Hm10 = H_m10(x); + double H01 = H_01(x); double gx = (67. / 18 - zeta2 + H00 + 2. * H10 + 2 * H01); double g1 = 67. / 18 - zeta2; diff --git a/tests/test_exact_coeff_func.py b/tests/test_exact_coeff_func.py index ec05489..85083e3 100644 --- a/tests/test_exact_coeff_func.py +++ b/tests/test_exact_coeff_func.py @@ -1,33 +1,8 @@ import adani as ad +import oldadani as old import numpy as np -TR = 0.5 - -def C2_g1(x, m2Q2): - beta = np.sqrt(1. - 4. * m2Q2 * x / (1 - x)) - x2 = x * x - m4Q4 = m2Q2 * m2Q2 - L = np.log((1. + beta) / (1. - beta)) - - return (4. * TR - * (L - * (-8. * x2 * m4Q4 - 4. * x * m2Q2 * (3. * x - 1) + 2. * x2 - - 2. * x + 1.) - + beta * (4. * m2Q2 * x * (x - 1.) - (8. * x2 - 8. * x + 1.))) - ) - -def CL_g1(x, m2Q2): - beta = np.sqrt(1. - 4. * m2Q2 * x / (1 - x)) - x2 = x * x - L = np.log((1. + beta) / (1. - beta)) - - return 16. * TR * (x * (1. - x) * beta - 2. * x2 * m2Q2 * L) - -def test_ciao(): - np.testing.assert_allclose(0., 0.) - - -def test_leading_order(): +def test_as1(): nf = 1 for kind in ['2', 'L']: cf = ad.ExactCoefficientFunction(1, kind, 'g', 1e-3, 1e-3, 1000, 1, 25000) @@ -35,56 +10,49 @@ def test_leading_order(): xmax = 1/(1 + 4/xi) for x in np.geomspace(1e-5, xmax, 100, endpoint=False): res1 = cf.fx(x, 1./xi, 1./xi, nf) - res2 = C2_g1(x, 1./xi) if kind == '2' else CL_g1(x, 1./xi) + res2 = old.C2_g1(x, 1./xi) if kind == '2' else old.CL_g1(x, 1./xi) np.testing.assert_allclose(res1, res2, rtol = 1e-7) def eta(x, xi): return 0.25 * xi * (1 - x) / x - 1 - -def test_next_leading_order(): + +def test_as2_muindep(): nf = 1 for kind in ['2', 'L']: for channel in ['g', 'q']: - if kind == '2' and channel == 'g': - func = ad.c2nlog_ - elif kind == 'L' and channel == 'g': - func = ad.clnlog_ - if kind == '2' and channel == 'q': - func = ad.c2nloq_ - if kind == 'L' and channel == 'q': - func = ad.clnloq_ cf = ad.ExactCoefficientFunction(2, kind, channel, 1e-3, 1e-3, 1000, 1, 25000) for xi in np.geomspace(1e-2, 1e4, 10, endpoint=True): xmax = 1/(1 + 4/xi) for x in np.geomspace(1e-5, xmax, 10, endpoint=False): res1 = cf.MuIndependentTerms(x, 1./xi, nf) if eta(x, xi) < 1e6 and eta(x, xi) > 1e-6: - res2 = 16 * np.pi * xi * func(eta(x, xi), xi) / x + if kind == '2' and channel == 'g': + res2 = old.C2_g20(x, 1/xi) + elif kind == 'L' and channel == 'g': + res2 = old.CL_g20(x, 1/xi) + elif kind == '2' and channel == 'q': + res2 = old.C2_ps20(x, 1/xi) + else: + res2 = old.CL_ps20(x, 1/xi) else: res2 = 0 np.testing.assert_allclose(res1, res2, rtol = 1e-7) - -def test_next_leading_order_mudep(): + +def test_as2_order_mudep(): nf = 1 for kind in ['2', 'L']: - for channel in ['q', 'g']: - if kind == '2' and channel == 'g': - func = ad.c2nlobarg_ - elif kind == 'L' and channel == 'g': - func = ad.clnlobarg_ - if kind == '2' and channel == 'q': - func = ad.c2nlobarq_ - if kind == 'L' and channel == 'q': - func = ad.clnlobarq_ + for channel in ['g', 'q']: cf = ad.ExactCoefficientFunction(2, kind, channel, 1e-3, 1e-3, 1000, 1, 25000) for xi in np.geomspace(1e-2, 1e4, 10, endpoint=True): - xmax = 1/(1 + 4/xi) - # we are comparing an exact (but numerical) result with a 2D interpolation: - # removing very last points in which the interpolation is worse - for x in np.geomspace(1e-5, xmax*0.9, 10, endpoint=False): - res1 = cf.MuDependentTerms(x, 1./xi, 1./xi, nf) - if eta(x, xi) < 1e6 and eta(x, xi) > 1e-6: - res2 = 16 * np.pi * xi * func(eta(x, xi), xi) / x * np.log(xi) - else: - continue - np.testing.assert_allclose(res1, res2, rtol = 3e-2) - + for ximu in np.geomspace(1e-2, 1e4, 10, endpoint=True): + xmax = 1/(1 + 4/xi) + for x in np.geomspace(1e-5, xmax, 10, endpoint=False): + res1 = cf.MuDependentTerms(x, 1./xi, 1./ximu, nf) + if kind == '2' and channel == 'g': + res2 = old.C2_g21(x, 1/xi) + elif kind == 'L' and channel == 'g': + res2 = old.CL_g21(x, 1/xi) + elif kind == '2' and channel == 'q': + res2 = old.C2_ps21(x, 1/xi) + else: + res2 = old.CL_ps21(x, 1/xi) + np.testing.assert_allclose(res1, res2 * np.log(ximu), rtol = 1e-7) diff --git a/tests/test_high_scale.py b/tests/test_high_scale.py index 01dcdee..e86744a 100644 --- a/tests/test_high_scale.py +++ b/tests/test_high_scale.py @@ -2,7 +2,7 @@ import oldadani as old import numpy as np -def test_lo_oldadani(): +def test_as1_oldadani(): for kind in ['2', 'L']: hs = ad.HighScaleCoefficientFunction(1, kind, 'g') for x in np.geomspace(1e-5, 1., 100, endpoint=False): @@ -11,7 +11,7 @@ def test_lo_oldadani(): res2 = old.C2_g1_highscale(x, m2Q2) if kind == '2' else old.CL_g1_highscale(x) np.testing.assert_allclose(res1, res2, rtol=1e-7) -def test_nnlo_oldadani(): +def test_as2_oldadani(): for kind in ['2', 'L']: for channel in ['g', 'q']: hs = ad.HighScaleCoefficientFunction(2, kind, channel) @@ -29,7 +29,7 @@ def test_nnlo_oldadani(): res2 = old.CL_ps2_highscale(x, m2Q2, m2mu2) np.testing.assert_allclose(res1, res2, rtol=1e-7) -def test_n3lo_oldadani(): +def test_as3_oldadani(): for kind in ['2', 'L']: for channel in ['g', 'q']: exact = True if channel == 'q' else False diff --git a/tests/test_massless.py b/tests/test_massless.py index 9def6bf..9ba9bb1 100644 --- a/tests/test_massless.py +++ b/tests/test_massless.py @@ -2,7 +2,7 @@ import oldadani as old import numpy as np -def test_lo(): +def test_as1(): for kind in ['2', 'L']: ml = ad.MasslessCoefficientFunction(1, kind, 'g') for x in np.geomspace(1e-5, 1., 100, endpoint=False): @@ -11,7 +11,7 @@ def test_lo(): res2 = old.C2_g1_massless(x, nf) if kind == '2' else old.CL_g1_massless(x, nf) np.testing.assert_allclose(res1, res2, rtol=1e-7) -def test_nnlo(): +def test_as2(): for kind in ['2', 'L']: for channel in ['g', 'q']: ml = ad.MasslessCoefficientFunction(2, kind, channel) @@ -29,7 +29,7 @@ def test_nnlo(): np.testing.assert_allclose(res1, res2, rtol=1e-7) -def test_n3lo(): +def test_as3(): for kind in ['2', 'L']: for channel in ['g', 'q']: ml = ad.MasslessCoefficientFunction(3, kind, channel) diff --git a/tests/test_threshold.py b/tests/test_threshold.py index 0f22655..572cb8d 100644 --- a/tests/test_threshold.py +++ b/tests/test_threshold.py @@ -2,7 +2,7 @@ import oldadani as old import numpy as np -def test_lo(): +def test_as1(): for kind in ['2']: ml = ad.ThresholdCoefficientFunction(1, kind, 'g') @@ -13,7 +13,7 @@ def test_lo(): res2 = old.C2_g1_threshold(x, m2Q2) np.testing.assert_allclose(res1, res2, rtol=1e-7) -def test_nlo(): +def test_as2(): for kind in ['2', 'L']: thr = ad.ThresholdCoefficientFunction(2, kind, 'g') for m2Q2 in np.geomspace(1e-2, 1e4, 10): @@ -34,7 +34,7 @@ def test_nlo(): res2 = old.CL_g2_threshold_const(x, m2Q2, m2mu2) np.testing.assert_allclose(res1, res2, rtol=1e-7) -def test_nnlo(): +def test_as3(): for kind in ['2']: thr = ad.ThresholdCoefficientFunction(3, kind, 'g') for m2Q2 in np.geomspace(1e-2, 1e4, 10):