In this section we restrict our discussion to integrands with a single
component
. For a vector integrand
, the
cubature rules discussed in this section can be applied to each of the
components in
.
The local cubature rules that we use for the simplex algorithm
take the form
The local rules used by the simplex algorithm are from Grundmann and Möller
[19]. Let
denote a degree
Grundmann and
Möller rule,
The local error estimators used by our
simplex cubature algorithm are ``Norwegian'' error estimators
(see Berntsen and Espelid [2]).
They require a sequence of null rules, which are combined
to produce the final error estimate. Our simplex algorithm uses two sets of
null rules. One set of null rules is
constructed from the difference
between a degree
Grundmann and Möller rule and a lower
degree Grundmann and Möller rule. Define the degree
null rule
by
, for
.
The second set of null rules
is defined by
, where
is some degree
rule, different from
, for
.
Our implementation allows
and the
rules implemented are:
a) (
) a degree 7 Mysovskikh [27] rule that requires
additional points, b) (
) a degree 5 Stroud rule
[31] that requires
additional points,
and c) and d) special (
) degree 3
and (
) degree 1 rules, respectively, that use subsets of the
points of the degree 5 Stroud rule points.
The degree 7 Mysovskikh rule is described in a paper in Russian that is not
easily accessible, so we give some details here of our implementation of this
rule. The Mysovskikh rule structure is similar to that of the Grundmann and Möller
degree 7 rule. Let
be the sequence of
's for the
values for the Grundmann and Möller rule, and
be the corresponding sequence for the Mysovskikh rule, and let the sequences
and
be the corresponding sequences for the weights,
the two rules are compared in Table 1.
| 1 |
|
|
||
| 2 |
|
|
|
|
| 3 |
|
|
|
|
| 4 |
|
|
||
| 5 |
|
|
|
|
| 6 |
|
|
|
|
| 7 |
|
|
||
| 8 | - | - |
|
|
Using
for
, Mysovskikh shows that
the
's are the zeros of the polynomial
The weights for the degree 5 Stroud rule are not given explicitly in Stroud's
paper, but we derived some moderately simple expressions for these weights.
The generators for this rule are
, and
, for
, and
, for
,
with respective weights
,
,
,
and
, where
,
,
and
.
If we define
and
for
, then
To test that the implementation of these rules was correct we checked for the exact (to machine precision) integration of monomials of the appropriate degrees. We were also able to accurately reproduce Mysovskikh's table.
The actual error estimators require the use of scaled orthogonal null rules,
so we define the sequence
to be the set obtained by
orthogonalizing and scaling (using Berntsen's and Espelid's procedure) the
sequence
. We also define related
quantities
and reduction factors
required by the
Norwegian algorithm, by
,
for
and
, for
.
Finally, we define
,
and our final error estimate
by
When the integrand is a vector, the error estimate
is applied
to each component of
, and the result is an
-vector of error
estimates for the estimated integral of
over the selected subregion.
In order to make decisions about possible further subdivisions,
the globally adaptive algorithm requires a scalar measure of the error for that
subregion. For our simplex algorithm, we use
as an overall
measure of the error for a selected subregion. This quantity is used for
subsequent subdivision decisions by the region processor part of the globally
adaptive algorithm. When the algorithm terminates, the error estimate returned
for each component of
is the sum, taken over all of the subregions
in the final subregion list, of the estimated subregion errors for that
component.
In the Fortran 95 implementation of the algorithm
the user is allowed to choose
1, 2, 3 or 4 (degree
3, 5, 7 or 9).
The costs, in terms of
values, for computing the rules and
error estimates are given in Table 2,
for
.
|
|
2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 3 | 7 | 9 | 11 | 13 | 15 | 17 | 19 | 21 | 23 |
| 5 | 16 | 23 | 31 | 40 | 50 | 61 | 73 | 86 | 100 |
| 7 | 32 | 49 | 86 | 126 | 176 | 237 | 310 | 396 | 496 |
| 9 | 65 | 114 | 201 | 315 | 470 | 675 | 940 | 1276 | 1695 |
The degree 3 and 5 rules are not recommended for most problems,
because the error estimates are not as reliable as the error estimates for
the degree 7 and 9 rules, which use more integrand values.
Two special rules are also provided for
and
. For
, a 37 point
degree 13 rule [3] is available, and for
, a 43 point degree
8 rule [4] is available.