Gauss-Kronrod data the floating-point template parameter. More...
|GKData (Real MACHEPS, size_t m=10)|
|Computes data for (2m+1)-point Gauss-Kronrod quadrature. |
|Size of arrays of Gauss-Kronrod abscissae and weights. |
|Real||xgk (int k)|
|Array of Gauss-Kronrod abscissae in (0, 1); QUADPACK convention. |
|Real||wgk (int k)|
|Array of corresponding Gauss-Kronrod weights; QUADPACK convention. |
|Real||wg (int k)|
|Gauss-Legendre weights for odd indexed abscissae; QUADPACK convention. |
The Gauss-Kronrod abscissae consist of 2m+1 points in the interval (-1, 1) used for a low-order and a high-order quadrature rule:
The weights and abscissae are stored according to compact QUADPACK convention. Due to symmetry, the positive abscissae , ,..., are returned as values xgk(0), xgk(1),..., xgk(m+1) respectively. Note the reverse order. The corresponding weights , ,..., are returned by the respective values of wgk(). The weights , ,..., corresponding to the even-indexed , , ...., are returned by the values of wg() in their reverse order.
The even-indexed abscissae , ..., are the zeros of the m-th Legendre polynomial . The odd indexed points are zeros of a polynomial that is represented as a Chebyshev sum,
whose coefficients are defined by explicit formulae in
The zeros of both of these polynomials are computed by Newton's method. Upper bounds for their round-off errors, as functions of machine epsilon, are incorporated in the stopping criteria for for the root finders.
The weights , ..., are Gauss-Legendre weights. The are given by the formulae
where and are the leading coefficients of the polynomials and respectively. These are from