A - Cardinal - Function - Algorithm - For - Computing - Multiv
A - Cardinal - Function - Algorithm - For - Computing - Multiv
net/publication/220179488
CITATIONS READS
48 222
3 authors:
Lp Bos
The University of Calgary
148 PUBLICATIONS 2,042 CITATIONS
SEE PROFILE
All content following this page was uploaded by Beth A. Wingate on 20 May 2014.
Abstract. We present a new algorithm for numerically computing quadrature formulas for arbi-
trary domains which exactly integrate a given polynomial space. An effective method for constructing
quadrature formulas has been to numerically solve a nonlinear set of equations for the quadrature
points and their associated weights. Symmetry conditions are often used to reduce the number of
equations and unknowns. Our algorithm instead relies on the construction of cardinal functions and
thus requires that the number of quadrature points N be equal to the dimension of a prescribed
lower dimensional polynomial space. The cardinal functions allow us to treat the quadrature weights
as dependent variables and remove them, as well as an equivalent number of equations, from the
numerical optimization procedure. We give results for the triangle, where for all degree d ≤ 25, we
find quadrature formulas of this form which have positive weights and contain no points outside the
triangle. Seven of these quadrature formulas improve on previously known results.
Key words. multivariate integration, quadrature, cubature, fekete points, spectral methods,
triangle, polynomial approximation
Pd = span{ξ1n ξ2m , m + n ≤ d}
where |Ω| is the area of Ω and dξ represents the uniform area measure. In the right
triangle, ξ1 ≥ −1, ξ2 ≥ −1 and ξ1 + ξ2 ≤ 0, such a basis is given by the Kornwinder-
Dubiner polynomials {gm,n } [1, 18, 9],
0,0 ξ1
gm,n (ξ) = Pm (1 − ξ2 )m Pn2m+1,0 (ξ2 ), m+n≤d
1 − ξ2
Multivariate quadrature 3
where Pnα,β are the Jacobi Polynomials with weight (α, β) and degree n. The tra-
ditional double index (m, n) can be converted into the single index used here by
i = (m + n + 1)(m + n + 2)/2 − m. Suitable recurrence relations for these polynomials
are given in [16].
3. Cardinal functions and Quadrature points. We now describe the proce-
dure we use to compute cardinal functions defined by a set of N points
z = {z1 , z2 , . . . , zN }
where each zi is a point in the right triangle. If the points are non-degenerate, the
cardinal functions can be defined uniquely as the polynomials in ξ which belong to
Pd and satisfy
(
1, if ξ = zi
φi (ξ; z) = (3.1)
0, if ξ = zj , j 6= i
The cardinal function depend implicitly on the defining points, and thus we include
a second argument of z. To evaluate cardinal functions numerically, we first express
them in terms of the orthogonal basis {gm },
X
φi (ξ; z) = φ̂m
i gm (ξ). (3.2)
m
If reasonable care is used, the points {zj } can be chosen so that the system is well con-
ditioned and easily inverted by Gaussian elimination. The resulting cardinal functions
form a basis for Pd .
Following conventional spectral method techniques, we evaluate cardinal functions
at an arbitrary point ξ by by simply evaluating the gm (ξ) (via recurrence relations)
and summing the series in Eq. 3.2. Derivatives of cardinal functions with respect to
ξ are evaluated in a similar fashion, by first evaluating the derivatives of gm after
differentiating Eq. 3.2.
The Newton-Cotes quadrature formula for Pd can be constructed at these points
by solving the system
XN Z
wj φi (zj ; z) = φi dξ ∀φi , i = 1, . . . , N
j=1
Making use of Eq. 2.1 and Eq. 3.1, the solution of this system is given by
Z
wi = φi dξ = |Ω|φ̂1i . (3.3)
By construction, the Newton-Cotes weights and the points {zi } give a quadrature
formula which exactly integrates our N cardinal functions {φi }. Since Pd = span{φi },
we have
N
X Z
wj g(zj ) = g dξ ∀g ∈ Pd
j=1
4 Taylor, Wingate and Bos
Thus any set of N non-degenerate points {zj } will yield a quadrature formula for
Pd , with uniquely determined quadrature weights. The problem now is to find the N
points which integrate all of Pd+e for the largest possible e.
4. Derivatives of cardinal functions with respect to z. In the algorithm
that follows, we will also need to compute the derivative of a cardinal function φi with
respect to the points zj used to define φi . For this, we use:
Proposition 4.1. We have
∂φi ∂φi
(ξ; z) = −φj (ξ; z) (zj ; z). (4.1)
∂zj ∂ξ
so that
φi (zj + hek ; z)
C=− .
φj (zj + hek ; z)
Hence,
∂ φi (zj + hek ; z)
φi (ξ; z) = lim − φj (ξ; z)
∂(zj )k h→0 hφj (zj + hek ; z)
φj (ξ; z) 0 − φi (zj + hek ; z)
= lim
φj (zj ; z) h→0 h
φj (ξ; z) φi (zj ; z) − φi (zj + hek ; z)
= lim
φj (zj ; z) h→0 h
φj (ξ; z) ∂φi
=− (zj ; z)
1 ∂ξk
∂φi
= −φj (ξ; z) (zj ; z).
∂ξk
Multivariate quadrature 5
Thus the derivative of the i’th cardinal function with respect to j’th quadrature
point is given by the j’th cardinal function times a term independent of ξ and in-
volving only the conventional derivative. The later term can be easily evaluated by
differentiating Eq. 3.2.
Using Eq. 3.3 and and Eq. 4.1, we can also derive a similar relation showing that
the derivative of the i’th weight with respect to the j’th quadrature point is given by
the j’th weight times the same term that appears in Eq. 4.1:
Z
∂wi ∂φi ∂φi
= − φj (ξ; z) (zj ; z) dξ = −wj (zj ; z) (4.2)
∂zj ∂ξ ∂ξ
5. A cardinal function algorithm for computing quadrature points for
Pd+e . We now describe an iterative method for improving an initial set of N quadra-
ture points z. In order to integrate a space larger than Pd , we need to find quadrature
points which satisfy the nonlinear equation
X Z
wi gm (zi ) = gm dξ ∀gm ∈ Pd+e (5.1)
i
for some e > 0. By using the Newton-Cotes weights given by Eq. 3.3, we automatically
integrate all of Pd , thus we need only satisfy the equations for the basis functions in
Pd+e which are not in Pd :
X
wi gm (zi ) = 0 ∀gm : d < degree gm ≤ d + e
i
and we have replaced the integral on the left-hand-side of Eq. 5.1 by 0 by virtue of
Eq. 2.1. Define
X
Fm = wi gm (zi )
i
and F = {Fm : d < degree gm ≤ d + e}. Note that since the weights are determined
by z, we can treat F as a function solely of z. Then Eq .5.1 is equivalent to F = 0,
which can be solved using Newton’s method:
∂z −1
= − (∇F ) F.
∂t
The gradient of F is not necessarily square. Following [26], we use a pseudo-inverse
for (∇F )−1 , and restrict ourselves to the under-determined case by choosing e so
6 Taylor, Wingate and Bos
that there are more equations then degrees of freedom in the problem. There is one
degree of freedom for each coordinate of each point in <n , for a total of n dim Pd .
The number of equations is given by dim Pd+e − dim Pd . Thus the degrees-of-freedom
constraint is given by dim Pd+e ≤ (n + 1) dim Pd = (n + 1)N .
Using Eq. 4.2, the components of the gradient of F are given by
∂Fm X ∂gm (zi ) ∂wi
= wi + gm (zi ) (5.2)
∂zj i
∂zj ∂zj
∂gm X ∂φi
= wj (zj ) − wj (z, zj )gm (zi )
∂ξ i
∂ξ
Comparing this approach to the traditional Newton method for quadrature, such as
in [26], we see that the use of the Newton-Cotes weights has removed the weights
from the iteration, and thus reduced the number of unknowns by N . Since these
weights exactly integrate Pd , we have also reduced the number of equations by N .
The only increase in complexity is the addition of the term involving the derivative of
the weights with respect to the quadrature points. But this term is easy to evaluate
by virtue of Eq. 4.2.
If symmetry is imposed on the quadrature points, then additional reductions in
the number of equations and unknowns are possible, as in [21]. However, for the
results presented in this paper we typically do not impose any symmetry constraints.
6. Practical considerations. In practice, Newton’s method is only used to ac-
celerate the convergence of a slower, more robust algorithm. We first use the steepest
descent algorithm to minimize the quadrature error, F · F . This algorithm simply
moves the points in the direction of steepest descent given by ∇(F · F ):
∂zj X ∂Fm
= −2 Fm
∂t m
∂zj
Once this algorithm has found a possible quadrature formula, we switch to Newton’s
method and iterate until the sequence converges. If the iteration fails to converge,
then another initial condition is chosen and the procedure is repeated.
Our procedure for constructing initial conditions is the same as that used in [24].
We choose a distribution of points which approximates the extremal measure µ for
the triangle given in [2]. For the triangle, it is conjuctured that µ is also the density
of quadrature points with positive weights in the limit N goes to infinity and it was
recently shown that this limit is bounded below by cmu for some constant c. [19].
For the right triangle ξ1 ≥ 0, ξ2 ≥ 0 and ξ1 + ξ2 ≤ 1, the extremal measure is
1
µ(ξ) = p .
ξ1 ξ2 (1 − ξ1 − ξ2 )
To distribute a finite set of points to approximate the given density µ(ξ), we first
assume the points lie in a nested family of triangles. We then compute a nested family
of triangular shells, each with a mass (using the measure µ(ξ)dξ) proportional to the
number of points we have decided to place in that shell. If there are k points to be
placed in a given shell, we break that shell into k quadrilateral pieces, all with the same
mass, and place one point in the center of each piece. For a given number of points,
there are a variety of configurations which can be generated by altering the number
of points within each shell and the number of shells. The cardinal function algorithm
is extremely sensitive to the initial condition, so many of these initial conditions must
be tried to find an optimal solution.
Multivariate quadrature 7
7. Results. Our results for the triangle are summarized in Table 7.1. Except for
quadrature formulas associated with d = 3 and d = 4, were were able to obtain the
optimal solution (fewest number of points) subject to the cardinal function constraint
on the number of points and the degrees-of-freedom constraint:
N = dim Pd , (7.1)
dim Pd+e ≤ 3N. (7.2)
All the quadrature points have positive weights and no points lie outside the triangle,
although neither of these properties is in any way guaranteed by the cardinal function
algorithm. The errors presented in the table is the max norm of the quadrature error
over all the ortho-normal basis functions:
X Z
max wi gm,n (zi ) − gm,n dξ
gm,n ∈Pd+e
i
2
R
with normalization dξ = |Ω|. Many of the quadrature sets are invariant under
gm,n
the symmetry group of rotations and reflections of the triangle, D3 . The solutions
which do not have this symmetry are denoted with asym in the table.
Quadrature formulas denoted by new in the table represent formulas which im-
prove upon the best previously published results, as taken from the extensive database
described in [7] and the quadrature points presented in [26] (which are not included
in the database as of this writing). The new solutions for integration degree d + e
from 18 to 25 have fewer points then the previously published results. For d + e = 13
and 16, the results presented here have the fewest number of points amoung formulas
with positive weights and no points outside the triangle. For d + e = 13, the previ-
ous result with the fewest number of quadrature points has N = 36, but but some
of those points are outside the triangle and not all the weights are positive [3]. For
d+e = 16, previous results include formulas with 52 points, some of which are outside
the triangle [10], and 55 points, some of which have negative weights [13].
In Table 7.2, we summerize the resuls for the triangle from [7], [26], and the
cardinal function algorithm.
8 Taylor, Wingate and Bos
The coordinates of the points for the first four new quadrature formulas are given
in Appendix I. The coordinates for all the formulas in the table are available elec-
tronically from [23]. Plots for the first four of these quadrature points are shown in
Fig. 7.1. In the figure, the right triangle has been mapped lineally to the equilateral
triangle in order to make the asymmetry in the points more visible.
8. Summary. We have presented a cardinal function algorithm for comput-
ing multi-variate quadrature points. The key ideas involve the use of Newton-Cotes
weights expressed as integrals of cardinal functions and a formula relating the deriva-
tives of cardinal functions with respect to zi (their defining points) to conventional
derivatives in ξ. These two ideas allow us to reduce the number of equations and
number of unknowns by N , while still retaining analytic expressions for the gradients
necessary to apply steepest decent or Newton iterations. The algorithm was applied
to the triangle, where optimal (in the sense of Equations 7.1 and 7.2) formulas were
constructed for integrating polynomials up to degree 25. Seven of these quadrature
formulas improve on previously known results.
To apply the algorithm to other domains and more than two dimensions only
requires the knowledge of an orthogonal basis of polynomials and the ability to eval-
uate the basis functions arbitrary points. The use of cardinal functions requires that
Multivariate quadrature 9
Fig. 7.1. Quadrature points for the triangle which, from left to right and top to bottom, ex-
actly integrate polynomials of degree 13, 16,18 and 20. No points are outside the triangle, and all
quadrature weights are positive.
REFERENCES