void test_dobldobl_container ( void ) { int fail,n,i,t,deg; fail = syscon_read_dobldobl_system(); fail = syscon_write_dobldobl_system(); fail = syscon_number_of_dobldobl_polynomials(&n); printf("number of polynomials : %d\n",n); printf("number of terms in each polynomial :"); for(i=1; i<=n; i++) { fail = syscon_number_of_dobldobl_terms(i,&t); printf(" %d",t); } printf("\ndegree of each polynomial :"); for(i=1; i<=n; i++) { fail = syscon_degree_of_dobldobl_polynomial(i,°); printf(" %d",deg); } printf("\nthe polynomials as strings :\n"); for(i=1; i<=n; i++) { char buffer[2000]; int nc; fail = syscon_load_dobldobl_polynomial(i,&nc,buffer); printf("polynomial %d : %s\n",i,buffer); } printf("\n"); test_symbol_table(); }
int dobldobl_polysys_solver ( void ) { int fail,nbq,nbtasks,topdim,filter,factor,verbose; fail = syscon_read_dobldobl_system(); fail = syscon_number_of_dobldobl_polynomials(&nbq); printf("-> read %d polynomials\n", nbq); printf("\n"); read_solver_options(&nbtasks,&topdim,&filter,&factor,&verbose); printf("\nCalling the solver ...\n\n"); fail = dobldobl_polysys_solve(nbtasks,topdim,filter,factor,verbose); fail = dobldobl_polysys_write(topdim); return fail; }
void dobldobl_test ( void ) { int fail,max,nit; const double eps = 1.0e-24; fail = syscon_read_dobldobl_system(); fail = syscon_write_dobldobl_system(); printf("\nGive the maximum number of iterations : "); scanf("%d",&max); fail = solve_with_double_doubles(max,eps,&nit); printf("\nNumber of iterations : %d\n",nit); fail = solcon_write_dobldobl_solutions(); }
void test_dobldobl_Newton_step ( void ) { int fail,dim,len; printf("\nRunning Newton step with double double arithmetic ...\n"); fail = syscon_read_dobldobl_system(); fail = syscon_number_of_dobldobl_polynomials(&dim); printf("The system container has %d polynomials.\n",dim); fail = solcon_read_dobldobl_solutions(); fail = solcon_number_of_dobldobl_solutions(&len); printf("The solution container has size %d.\n",len); fail = solcon_dimension_of_dobldobl_solutions(&dim); printf("The solutions in the container have dimension %d.\n",dim); fail = dobldobl_Newton_step(); printf("The solutions after the Newton step :\n"); fail = solcon_write_dobldobl_solutions(); }
int input_output_on_files ( int precision ) { int fail,rc,nbtasks; if(precision == 0) { fail = syscon_read_standard_system(); printf("\nThe system in the container : \n"); fail = syscon_write_standard_system(); printf("\nGive the number of tasks : "); scanf("%d",&nbtasks); fail = solve_system(&rc,nbtasks); printf("\nThe root count : %d\n",rc); printf("\nThe solutions :\n"); fail = solcon_write_standard_solutions(); } else if(precision == 1) { fail = syscon_read_dobldobl_system(); printf("\nThe system in the container : \n"); fail = syscon_write_dobldobl_system(); printf("\nGive the number of tasks : "); scanf("%d",&nbtasks); fail = solve_dobldobl_system(&rc,nbtasks); printf("\nThe root count : %d\n",rc); printf("\nThe solutions :\n"); fail = solcon_write_dobldobl_solutions(); } else if(precision == 2) { fail = syscon_read_quaddobl_system(); printf("\nThe system in the container : \n"); fail = syscon_write_quaddobl_system(); printf("\nGive the number of tasks : "); scanf("%d",&nbtasks); fail = solve_quaddobl_system(&rc,nbtasks); printf("\nThe root count : %d\n",rc); printf("\nThe solutions :\n"); fail = solcon_write_quaddobl_solutions(); } return fail; }