/* test_mpf_inverse.c tough matrix to invert accurately, use multiple */ /* precision math package */ #include #include "gmp.h" #include "mpf_inverse.h" #define digits 200 static mpf_t AA[65535]; static mpf_t AI[65536]; static mpf_t II[65536]; int main(int argc, char * argv[]) { int i, j, k, n; mpf_t err; mpf_t JK, T, T2, zero, one; gmp_printf("test_mpf_inverse.c on tough matrix to invert, %d digits \n", digits); mpf_set_default_prec(digits*3.32); /* digits */ mpf_init(err); mpf_init(JK); mpf_init(T); mpf_init(T2); mpf_init(zero); mpf_init(one); n = 1; mpf_set_si(zero, 0); mpf_set_si(one, 1); while(n < 128) /* < 1024 */ { n=n*2; gmp_printf("initializing big matrix, n=%d, n*n=%d \n", n, n*n); for(i=0; i