int pcubature_v(unsigned fdim, integrand_v f, void *fdata, unsigned dim, const double *xmin, const double *xmax, size_t maxEval, double reqAbsError, double reqRelError, error_norm norm, double *val, double *err) { int ret; size_t nbuf = 0; unsigned m[MAXDIM]; double *buf = NULL; memset(m, 0, sizeof(unsigned) * dim); ret = pcubature_v_buf(fdim, f, fdata, dim, xmin, xmax, maxEval, reqAbsError, reqRelError, norm, m, &buf, &nbuf, DEFAULT_MAX_NBUF, val, err); free(buf); return ret; }
int pcubature_log(unsigned fdim, integrand f, void *fdata, unsigned dim, const double *xmin, const double *xmax, size_t maxEval, double reqAbsError, double reqRelError, error_norm norm, double *val, double *err, const char *LogFileName) { int ret; size_t nbuf = 0; unsigned m[MAXDIM]; double *buf = NULL; fv_data d; d.f = f; d.fdata = fdata; memset(m, 0, sizeof(unsigned) * dim); ret = pcubature_v_buf( fdim, fv, &d, dim, xmin, xmax, maxEval, reqAbsError, reqRelError, norm, m, &buf, &nbuf, 16 /* max_nbuf > 0 to amortize function overhead */, val, err, LogFileName); free(buf); return ret; }