Exemple #1
0
int main() {
        struct timespec tstart, tend;
	int m;
	int DIM=10000+1;
	int MM=4000;
#ifdef try_TS
	if ( clock_gettime(CLOCK_MONOTONIC, &tstart)!=0 )
           exit(1);
	TS_make(DIM,MM,0.5);
	if ( clock_gettime(CLOCK_MONOTONIC, &tend)!=0 )
           exit(1);
	printf("TS_make(%d,%d) took %lf ms\n", DIM, MM, timespecDiff(&tend, &tstart)/1.0e6);
#endif
	if ( clock_gettime(CLOCK_MONOTONIC, &tstart)!=0 )
           exit(1);
	S_make(DIM,MM,0.5);
	if ( clock_gettime(CLOCK_MONOTONIC, &tend)!=0 )
           exit(1);
	printf("S_make(%d,%d) took %lf ms\n", DIM, MM, timespecDiff(&tend, &tstart)/1.0e6);

	fS_make(0.5);
	if ( clock_gettime(CLOCK_MONOTONIC, &tstart)!=0 )
           exit(1);
	T_make(DIM,MM,0.5);
	if ( clock_gettime(CLOCK_MONOTONIC, &tend)!=0 )
           exit(1);
	printf("T_make(%d,%d) took %lf ms\n", DIM, MM, timespecDiff(&tend, &tstart)/1.0e6);
	fT_make(DIM,MM,0.5);
	
	for (m=10; m<MM; m+=10) 
		printf("(%d,%d):  S=%10lg  fS=%10g   T=%10lg   fT=%10g\n",
			DIM-1, m, 
			exp(S_safe(DIM-1,m)-S_safe(DIM-1,m-1)),
			exp(fS_safe(DIM-1,m)-fS_safe(DIM-1,m-1)),
			T_V(DIM-1,m),
			fT_V(DIM-1,m) );
#ifdef try_TS
	for (m=10; m<MM; m+=10) 
	  printf("(%d,%d):  S=%10lg   TS=%10lg  tbl=%10lg\n",
		 DIM-1, m, 
		 S_safe(DIM-1,m),
		 TS_safe(DIM-1,m),
		 TStbl[m-2][DIM-2] );
#endif
	return 1;
}
Exemple #2
0
// tests integration operator [S]
void test_S(void)
{

  double *S;
  double *f1;
  int len_NBSCHTYPE = 2;
  int NBSCHTYPE[len_NBSCHTYPE];
  NBSCHTYPE[0] = 3;
  NBSCHTYPE[1] = 3;

  int n = 5;
  int z = 2;
  int INTSCHTYPE = 2;
  //obtaining the operator
  //S_op(n, z, NBSCHTYPE, len_NBSCHTYPE, INTSCHTYPE, &S, &f1, 1);
  S_safe(n,z, NBSCHTYPE, len_NBSCHTYPE, INTSCHTYPE, &S, &f1);

  //printing S and f1
  print_1d_matrix("S", S, n*z, n*z);
  print_1d_matrix("f1", f1, n*z, z);

  // exit

}