nag_quad_md_numth_coeff_prime (d01gyc) (PDF version)
d01 Chapter Contents
d01 Chapter Introduction
NAG Library Manual

NAG Library Function Document

nag_quad_md_numth_coeff_prime (d01gyc)

+ Contents

    1  Purpose
    7  Accuracy

1  Purpose

nag_quad_md_numth_coeff_prime (d01gyc) calculates the optimal coefficients for use by nag_quad_md_numth_vec (d01gdc), for prime numbers of points.

2  Specification

#include <nag.h>
#include <nagd01.h>
void  nag_quad_md_numth_coeff_prime (Integer ndim, Integer npts, double vk[], NagError *fail)

3  Description

The Korobov (1963) procedure for calculating the optimal coefficients a1,a2,,an for p-point integration over the n-cube 0,1n imposes the constraint that
a1=1  and  ai=ai-1 mod p,  i=1,2,,n (1)
where p is a prime number and a is an adjustable argument. This argument is computed to minimize the error in the integral
3n01dx101dxni=1n 1-2xi 2, (2)
when computed using the number theoretic rule, and the resulting coefficients can be shown to fit the Korobov definition of optimality.
The computation for large values of p is extremely time consuming (the number of elementary operations varying as p2) and there is a practical upper limit to the number of points that can be used. Function nag_quad_md_numth_coeff_2prime (d01gzc) is computationally more economical in this respect but the associated error is likely to be larger.

4  References

Korobov N M (1963) Number Theoretic Methods in Approximate Analysis Fizmatgiz, Moscow

5  Arguments

1:     ndimIntegerInput
On entry: n, the number of dimensions of the integral.
Constraint: ndim1.
2:     nptsIntegerInput
On entry: p, the number of points to be used.
Constraint: npts must be a prime number 5.
3:     vk[ndim]doubleOutput
On exit: the n optimal coefficients.
4:     failNagError *Input/Output
The NAG error argument (see Section 3.6 in the Essential Introduction).

6  Error Indicators and Warnings

NE_ACCURACY
The machine precision is insufficient to perform the computation exactly. Try reducing npts: npts=value.
NE_BAD_PARAM
On entry, argument value had an illegal value.
NE_INT
On entry, ndim=value.
Constraint: ndim1.
On entry, npts=value.
Constraint: npts must be a prime number.
On entry, npts=value.
Constraint: npts5.
NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact NAG for assistance.

7  Accuracy

The optimal coefficients are returned as exact integers (though stored in a double array).

8  Parallelism and Performance

Not applicable.

9  Further Comments

The time taken is approximately proportional to p2 (see Section 3).

10  Example

This example calculates the Korobov optimal coefficients where the number of dimensions is 4 and the number of points is 631.

10.1  Program Text

Program Text (d01gyce.c)

10.2  Program Data

None.

10.3  Program Results

Program Results (d01gyce.r)


nag_quad_md_numth_coeff_prime (d01gyc) (PDF version)
d01 Chapter Contents
d01 Chapter Introduction
NAG Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2014