/* nag_multid_quad_monte_carlo (d01gbc) Example Program. * * Copyright 1991 Numerical Algorithms Group. * * Mark 2, 1991. * Mark 6 revised, 2000. * Mark 7 revised, 2001. * Mark 8 revised, 2004. * */ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif static double f(Integer ndim, double x[]); #ifdef __cplusplus } #endif #define MAXCLS 20000 int main(void) { Integer exit_status=0, k, maxcls=MAXCLS, mincls, ndim=4; NagError fail; Nag_MCMethod method; Nag_Start cont; double *a=0, acc, *b=0, *comm_arr=0, eps, finest; INIT_FAIL(fail); Vprintf("nag_multid_quad_monte_carlo (d01gbc) Example Program Results\n"); if (ndim>=1) { if ( !( a = NAG_ALLOC(ndim, double)) || !( b = NAG_ALLOC(ndim, double)) ) { Vprintf("Allocation failure\n"); exit_status = -1; goto END; } } else { Vprintf("Invalid ndim.\n"); exit_status = 1; } for (k=0; k