X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=check%2Fcheck_lsolve.cpp;h=4c98fc510c5605454795a6d166e20fb508b041b2;hp=a964c4b305352012393dad56dbe6b9bead9e752b;hb=e2627379c98aeafae903cc2f04bdbdc9defa34f7;hpb=0c8c12f5393a7ca5f78233af5ee81593184c35fb diff --git a/check/check_lsolve.cpp b/check/check_lsolve.cpp index a964c4b3..4c98fc51 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-2001 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2003 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;