void test01 ( void ) /******************************************************************************/ /* Purpose: TEST01 simply prints the title of each grid and function. Licensing: This code is distributed under the GNU LGPL license. Modified: 30 January 2012 Author: John Burkardt */ { int f_num; int fi; char ft[100]; int g_num; int gi; char gt[100]; printf ( "\n" ); printf ( "TEST01\n" ); printf ( " For each grid and function, print the title.\n" ); g_num = g00_num ( ); printf ( "\n" ); printf ( " GRIDS:\n" ); printf ( " Index Title\n" ); printf ( "\n" ); for ( gi = 1; gi <= g_num; gi++ ) { g00_title ( gi, gt ); printf ( " %2d %s\n", gi, gt ); } f_num = f00_num ( ); printf ( "\n" ); printf ( " FUNCTIONS:\n" ); printf ( " Index Title\n" ); printf ( "\n" ); for ( fi = 1; fi <= f_num; fi++ ) { f00_title ( fi, ft ); printf ( " %2d %s\n", fi, ft ); } return; }
int main ( ) /******************************************************************************/ /* Purpose: MAIN is the main program for PWL_INTERP_2D_SCATTERED_PRB. Discussion: PWL_INTERP_2D_SCATTERED_PRB tests the PWL_INTERP_2D_SCATTERED library. Licensing: This code is distributed under the GNU LGPL license. Modified: 25 October 2012 Author: John Burkardt */ { int prob; int prob_num; timestamp ( ); printf ( "\n" ); printf ( "PWL_INTERP_2D_SCATTERED_PRB:\n" ); printf ( " C version\n" ); printf ( " Test the PWL_INTERP_2D_SCATTERED library.\n" ); printf ( " The R8LIB library is needed.\n" ); printf ( " This test also needs the TEST_INTERP_2D library.\n" ); test01 ( ); test02 ( ); /* Numerical tests. */ prob_num = f00_num ( ); for ( prob = 1; prob <= prob_num; prob++ ) { test03 ( prob ); } /* Terminate. */ printf ( "\n" ); printf ( "PWL_INTERP_2D_SCATTERED_PRB:\n" ); printf ( " Normal end of execution.\n" ); printf ( "\n" ); timestamp ( ); return 0; }
int main ( ) /******************************************************************************/ /* Purpose: MAIN is the main program for VANDERMONDE_APPROX_2D_PRB. Discussion: VANDERMONDE_APPROX_2D_PRB tests the VANDERMONDE_APPROX_2D library. Licensing: This code is distributed under the GNU LGPL license. Modified: 11 October 2012 Author: John Burkardt */ { int j; int m; int m_test[5] = { 0, 1, 2, 4, 8 }; int m_test_num = 5; int grid; int prob; int prob_num; timestamp ( ); printf ( "\n" ); printf ( "VANDERMONDE_APPROX_2D_PRB:\n" ); printf ( " C version\n" ); printf ( " Test the VANDERMONDE_APPROX_2D library.\n" ); printf ( " This test also needs the TEST_INTERP_2D library.\n" ); prob_num = f00_num ( ); for ( prob = 1; prob <= prob_num; prob++ ) { grid = 1; for ( j = 0; j < m_test_num; j++ ) { m = m_test[j]; test01 ( prob, grid, m ); } } /* Terminate. */ printf ( "\n" ); printf ( "VANDERMONDE_APPROX_2D_PRB:\n" ); printf ( " Normal end of execution.\n" ); printf ( "\n" ); timestamp ( ); return 0; }
int main ( ) /******************************************************************************/ /* Purpose: MAIN is the main program for PWL_INTERP_2D_PRB. Discussion: PWL_INTERP_2D_PRB tests the PWL_INTERP_2D library. Licensing: This code is distributed under the GNU LGPL license. Modified: 15 October 2012 Author: John Burkardt */ { int i; int n; int n_test[5] = { 2, 3, 4, 5, 9 }; int n_test_num = 5; int prob; int prob_num; timestamp ( ); printf ( "\n" ); printf ( "PWL_INTERP_2D_PRB:\n" ); printf ( " C version\n" ); printf ( " Test the PWL_INTERP_2D library.\n" ); printf ( " The R8LIB library is needed.\n" ); printf ( " The test needs the TEST_INTERP_2D library.\n" ); prob_num = f00_num ( ); /* Numerical tests. */ for ( prob = 1; prob <= prob_num; prob++ ) { for ( i = 0; i < n_test_num; i++ ) { n = n_test[i]; test01 ( prob, n ); } } /* Terminate. */ printf ( "\n" ); printf ( "PWL_INTERP_2D_PRB:\n" ); printf ( " Normal end of execution.\n" ); printf ( "\n" ); timestamp ( ); return 0; }
void test02 ( void ) /******************************************************************************/ /* Purpose: TEST02 samples each function using each grid. Licensing: This code is distributed under the GNU LGPL license. Modified: 30 January 2012 Author: John Burkardt */ { double *f; double f_ave; double f_max; double f_min; int f_num; int fi; char ft[100]; int g_num; int gi; int gn; char gt[100]; double *gx; double *gy; printf ( "\n" ); printf ( "TEST02\n" ); printf ( " Sample each function over each grid.\n" ); g_num = g00_num ( ); f_num = f00_num ( ); for ( fi = 1; fi <= f_num; fi++ ) { f00_title ( fi, ft ); printf ( "\n" ); printf ( " %2d %s\n", fi, ft ); printf ( " Grid Title " ); printf ( "Min(F) Ave(F) Max(F)\n" ); printf ( "\n" ); for ( gi = 1; gi <= g_num; gi++ ) { g00_title ( gi, gt ); gn = g00_size ( gi ); gx = ( double * ) malloc ( gn * sizeof ( double ) ); gy = ( double * ) malloc ( gn * sizeof ( double ) ); g00_xy ( gi, gn, gx, gy ); f = ( double * ) malloc ( gn * sizeof ( double ) ); f00_f0 ( fi, gn, gx, gy, f ); f_max = r8vec_max ( gn, f ); f_min = r8vec_min ( gn, f ); f_ave = r8vec_sum ( gn, f ); f_ave = f_ave / ( double ) ( gn ); printf ( " %4d %25s %14g %14g %14g\n", gi, gt, f_min, f_ave, f_max ); free ( f ); free ( gx ); free ( gy ); } } return; }