X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?a=blobdiff_plain;ds=sidebyside;f=check%2Ftime_lw_E.cpp;h=5a4973004997b42abad77bd2f90df18a9efbfa69;hb=ad55caee62b76a04a632f7ea400da4c53c9ef29e;hp=95a4fd4ae1616fed92eb4801c73380d7086e6fc7;hpb=af922d5eb36ed70e4a9e3ffaf4c24492cf89a1a6;p=ginac.git diff --git a/check/time_lw_E.cpp b/check/time_lw_E.cpp index 95a4fd4a..5a497300 100644 --- a/check/time_lw_E.cpp +++ b/check/time_lw_E.cpp @@ -4,7 +4,7 @@ * Lewis and Michael Wester. */ /* - * GiNaC Copyright (C) 1999-2000 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2005 Johannes Gutenberg University Mainz, Germany * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,12 +18,12 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "times.h" -static unsigned test(void) +static unsigned test() { ex s; symbol y("y"); @@ -32,22 +32,24 @@ static unsigned test(void) for (int i=1; i<=10; ++i) s += i*y*pow(t,i)/pow(y + abs(5-i)*t,i); - if (s.nops()!=10) { + s = s.normal(); + + if (s.subs(t==0)!=0) { clog << "something very strange happened" << endl; return 1; } return 0; } -unsigned time_lw_E(void) +unsigned time_lw_E() { unsigned result = 0; unsigned count = 0; timer rolex; double time = .0; - cout << "timing Lewis-Wester test E (sum of rational fcns)" << flush; - clog << "-------Lewis-Wester test E (sum of rational fcns)" << endl; + cout << "timing Lewis-Wester test E (normalized sum of rational fcns)" << flush; + clog << "-------Lewis-Wester test E (normalized sum of rational fcns):" << endl; rolex.start(); // correct for very small times: @@ -63,7 +65,7 @@ unsigned time_lw_E(void) } else { cout << " failed "; } - cout << int(100000*(time/count))*0.00001 << 's' << endl; + cout << time/count << 's' << endl; return result; }