X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=check%2Fcheck_lsolve.cpp;h=9f2a1ae562a518e9ce9559c0bd896cded38912dc;hp=51792a3ed0e29d0b52457b5d3e86c2657e18a752;hb=781107fc309db9eadc2e0540d35d9813da0afd4d;hpb=e7cc6a764ff67b5885d6633385fac23ccc1dc9a7 diff --git a/check/check_lsolve.cpp b/check/check_lsolve.cpp index 51792a3e..9f2a1ae5 100644 --- a/check/check_lsolve.cpp +++ b/check/check_lsolve.cpp @@ -1,10 +1,11 @@ /** @file check_lsolve.cpp * * These test routines do some simple checks on solving linear systems of - * symbolic equations. */ + * symbolic equations. They are a well-tried resource for cross-checking + * the underlying symbolic manipulations. */ /* - * GiNaC Copyright (C) 1999-2002 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2004 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 @@ -96,7 +97,7 @@ static unsigned check_inifcns_lsolve(unsigned n) { unsigned result = 0; - for (int repetition=0; repetition<100; ++repetition) { + for (int repetition=0; repetition<200; ++repetition) { // create two size n vectors of symbols, one for the coefficients // a[0],..,a[n], one for indeterminates x[0]..x[n]: vector a; @@ -155,7 +156,7 @@ static unsigned check_inifcns_lsolve(unsigned n) return result; } -unsigned check_lsolve(void) +unsigned check_lsolve() { unsigned result = 0; @@ -163,23 +164,23 @@ unsigned check_lsolve(void) clog << "---------linear solve:" << endl; // solve some numeric linear systems - for (unsigned n=1; n<12; ++n) + for (unsigned n=1; n<14; ++n) result += check_matrix_solve(n, n, 1, 0); cout << '.' << flush; // solve some underdetermined numeric systems - for (unsigned n=1; n<12; ++n) + for (unsigned n=1; n<14; ++n) result += check_matrix_solve(n+1, n, 1, 0); cout << '.' << flush; // solve some overdetermined numeric systems - for (unsigned n=1; n<12; ++n) + for (unsigned n=1; n<14; ++n) result += check_matrix_solve(n, n+1, 1, 0); cout << '.' << flush; // solve some multiple numeric systems - for (unsigned n=1; n<12; ++n) + for (unsigned n=1; n<14; ++n) result += check_matrix_solve(n, n, n/3+1, 0); cout << '.' << flush; // solve some symbolic linear systems - for (unsigned n=1; n<7; ++n) + for (unsigned n=1; n<8; ++n) result += check_matrix_solve(n, n, 1, 2); cout << '.' << flush;