X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=check%2Ftime_lw_O.cpp;h=2090e6f1d32268902ff9fa340c927dcca241618d;hp=5ae917a5a066de1fdcfa9c7bcac8eef862223032;hb=581244b7b8fc9b5f81291e1a3f5731939e3f3d8e;hpb=5b44febe31956b36b62cd3650f7c5249bbe8100c diff --git a/check/time_lw_O.cpp b/check/time_lw_O.cpp index 5ae917a5..2090e6f1 100644 --- a/check/time_lw_O.cpp +++ b/check/time_lw_O.cpp @@ -4,7 +4,7 @@ * Lewis and Michael Wester. */ /* - * GiNaC Copyright (C) 1999-2005 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2008 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 @@ -21,7 +21,12 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "times.h" +#include +#include +#include "ginac.h" +#include "timer.h" +using namespace std; +using namespace GiNaC; static const bool do_test2 = false; // set to true in order to run this beast @@ -133,7 +138,6 @@ unsigned time_lw_O() double time = .0; cout << "timing Lewis-Wester test O1 (three 15x15 dets)" << flush; - clog << "-------Lewis-Wester test O1 (three 15x15 dets):" << endl; rolex.start(); // correct for very small times: @@ -142,32 +146,30 @@ unsigned time_lw_O() ++count; } while ((time=rolex.read())<0.1 && !result); - if (!result) { - cout << " passed "; - clog << "(no output)" << endl; - } else { - cout << " failed "; - } + if (result) + return result; + cout << time/(3*count) << "s (average)" << endl; cout << "timing Lewis-Wester test O2 (Resultant)" << flush; - clog << "-------Lewis-Wester test O2 (Resultant):" << endl; if (do_test2) { rolex.reset(); result += test_O2(); - if (!result) { - cout << " passed "; - clog << "(no output)" << endl; - } else { - cout << " failed "; - } cout << rolex.read() << "s (combined)" << endl; } else { cout << " disabled" << endl; - clog << "(no output)" << endl; } return result; } + +extern void randomify_symbol_serials(); + +int main(int argc, char** argv) +{ + randomify_symbol_serials(); + cout << setprecision(2) << showpoint; + return time_lw_O(); +}