X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=check%2Fexam_inifcns.cpp;h=96ea9cc7cd4a3feb8e3750d45eba145b062ea6a5;hp=47cc10404c43f45217890a0a0f694a8e91826440;hb=3ab7092e925aba28498d7508f50da9f913dcffd2;hpb=383d5eb3b0f0506810d9105a268f939125bfc347 diff --git a/check/exam_inifcns.cpp b/check/exam_inifcns.cpp index 47cc1040..96ea9cc7 100644 --- a/check/exam_inifcns.cpp +++ b/check/exam_inifcns.cpp @@ -90,6 +90,27 @@ static unsigned inifcns_consist_trans(void) ++result; } + // check consistency of log and eta phases: + for (int r1=-1; r1<=1; ++r1) { + for (int i1=-1; i1<=1; ++i1) { + ex x1 = r1+I*i1; + if (x1.is_zero()) + continue; + for (int r2=-1; r2<=1; ++r2) { + for (int i2=-1; i2<=1; ++i2) { + ex x2 = r2+I*i2; + if (x2.is_zero()) + continue; + if (abs(evalf(eta(x1,x2)-log(x1*x2)+log(x1)+log(x2)))>.1e-12) { + clog << "either eta(x,y), log(x), log(y) or log(x*y) is wrong" + << " at x==" << x1 << ", y==" << x2 << endl; + ++result; + } + } + } + } + } + return result; } @@ -100,7 +121,7 @@ static unsigned inifcns_consist_gamma(void) unsigned result = 0; ex e; - e = tgamma(ex(1)); + e = tgamma(1); for (int i=2; i<8; ++i) e += tgamma(ex(i)); if (e != numeric(874)) { @@ -109,7 +130,7 @@ static unsigned inifcns_consist_gamma(void) ++result; } - e = tgamma(ex(1)); + e = tgamma(1); for (int i=2; i<8; ++i) e *= tgamma(ex(i)); if (e != numeric(24883200)) {