Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Padua points: theory, computation and
applications ∗
Stefano De Marchi
Department of Computer Science, University of Verona
Oslo, 2 April 2009
∗
Joint work with L. Bos (Calgary), M. Caliari (Verona), A. Sommariva and
M. Vianello (Padua), Y. Xu (Eugene)
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Outline
1
Motivations and aims
2
From Dubiner metric to Padua points
3
Padua points and their properties
4
Interpolation
5
Cubature
6
Numerical results
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Motivations and aims
Well-distributed nodes: there exist various nodal sets for polynomial
interpolation of even degree n in the square Ω = [−1, 1]2 (C.DeM.V.,
AMC04), which turned out to be equidistributed w.r.t. Dubiner metric
(D., JAM95) and which show optimal Lebesgue constant growth.
Efficient interpolant evaluation: the interpolant should be
constructed without solving theVandermonde system whose
complexity is O(N 3 ), N = n+2
for each pointwise evaluation. We
2
look for compact formulae.
Efficient cubature: in particular computation of cubature weights for
non-tensorial cubature formulae.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The Dubiner metric
The Dubiner metric in the 1D:
µ[−1,1] (x, y ) = | arccos(x) − arccos(y )|, ∀x, y ∈ [−1, 1] .
By using the Van der Corput-Schaake inequality (1935) for trig. polys.
µ[−1,1] (x, y ) :=
1
| arccos(P(x)) − arccos(P(y ))| ,
deg(P)
kPk∞,[−1,1] ≤1
sup
with P ∈ Pn ([−1, 1]).
This metric generalizes to compact sets Ω ⊂ Rd , d > 1:
µΩ (x, y) :=
1
| arccos(P(x)) − arccos(P(y))| .
kPk∞,Ω ≤1 (deg(P))
sup
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The Dubiner metric
Conjecture(C.DeM.V.AMC04):
Nearly optimal interpolation points on a compact Ω are asymptotically
equidistributed w.r.t. the Dubiner metric on Ω.
Once we know the Dubiner metric on a compact Ω, we have at least a
method for producing ”good” points. Letting x = (x1 , x2 ), y = (y1 , y2 )
Dubiner metric on the square:
max{| arccos(x1 ) − arccos(y1 )|, | arccos(x2 ) − arccos(y2 )|} ;
Dubiner metric on the disk:
q
q
arccos x1 y1 + x2 y2 + 1 − x 2 − x 2 1 − y 2 − y 2 ;
1
2
1
2 Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Dubiner points and Lebesgue constant
496 Dubiner nodes (i.e. degree n=30) and the comparison of Lebesgue constants for Random (RND), Euclidean
(EUC) and Dubiner (DUB) points.
1e+15
1
RND
n
106.4·(2.3)
EUC
n
4.0·(2.3)
DUB
3
0.4·n
0.8
Lebesgue constants
0.6
0.4
0.2
0
1e+10
1e+05
−0.2
−0.4
−0.6
1
−0.8
−1
−1
0
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
2
4
6
8
10
12
14
16
degree n
18
20
22
24
26
Euclidean pts, are Leja-like points: max min kx − yk2 .
x∈Ω y∈Xn
Stefano De Marchi
Padua points: theory, computation and applications
28
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Morrow-Patterson points
Let n be a positive even integer. The Morrow-Patterson points
(MP) (cf. M.P. SIAM JNA 78) are the points
2kπ
cos
if m odd
n+3
mπ
xm = cos
, yk =
n+2
(2k − 1)π
cos
if m even
n+3
n+2
1 ≤ m ≤ n + 1, 1 ≤ k ≤ n/2 + 1. Note: they are N =
.
2
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Extended Morrow-Patterson points
The Extended Morrow-Patterson points (EMP) (C.DeM.V. AMC
05) are the points
EMP
=
xm
1 MP
x ,
αn m
ykEMP =
1 MP
y
βn k
αn = cos(π/(n + 2)), βn = cos(π/(n + 3)).
Note: the MP and the EMP points are equally distributed w.r.t.
Dubiner metric on the square [−1, 1]2 and unisolvent for
polynomial interpolation of degree n on the square.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Padua points
The Padua points (PD) can be defined as follows (C.DeM.V. AMC
05):
(2k − 1)π
if m odd
cos
n+1
(m − 1)π
PD
PD
xm = cos
, yk =
n
2(k − 1)π
cos
if m even
n+1
n+2
1 ≤ m ≤ n + 1, 1 ≤ k ≤ n/2 + 1, N =
.
2
The PD points are equispaced w.r.t. Dubiner metric on [−1, 1]2.
They are modified Morrow-Patterson points discovered in Padua in
2003 by B.DeM.V.&W.
There are 4 families of PD pts: take rotations of 90 degrees,
clockwise for even degrees and counterclockwise for odd degrees.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Graphs of MP, EMP, PD pts and their Lebesgue constants
1
MP
EMP
PD
0.8
1000
Lebesgue constants
0.6
0.4
0.2
0
−0.2
−0.4
MP
2
(0.7·n+1.0)
EMP
2
(0.4·n+0.9)
PD
2
(2/π·log(n+1)+1.1)
100
10
−0.6
−0.8
−1
−1
0
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
4
8
12
16
20
24
28 32
degree n
36
40
44
48
52
Left: the graphs of MP, EMP, PD for n = 8. Right: the growth of the corresponding Lebesgue constants.
Stefano De Marchi
Padua points: theory, computation and applications
56
60
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Bivariate interpolation problem and Padua Pts
Let P2n be the space of bivariate polynomials of total degree ≤ n.
Question: is there a set Ξ ⊂ [−1, 1]2 of points such that:
card(Ξ) = dim(P2n ) =
(n+1)(n+2)
;
2
the problem of finding the interpolation polynomial on Ξ of
degree n is unisolvent;
the Lebesgue constant Λn behaves like log2 n for n → ∞.
Answer: yes, it is the set Ξ = Padn of Padua points.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Padua points
Let us consider n + 1 Chebyshev–Lobatto points on [−1, 1]
(j − 1)π
n
Cn+1 = zj = cos
, j = 1, . . . , n + 1
n
and the two subsets of points with odd or even indexes
O
Cn+1
= zjn , j = 1, . . . , n + 1, j odd
E
Cn+1
= zjn , j = 1, . . . , n + 1, j even
Then, the Padua points are the set
O
E
E
O
Padn = Cn+1
× Cn+2
∪ Cn+1
× Cn+2
⊂ Cn+1 × Cn+2
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve
There exists an alternative representation as self-intersections and
boundary contacts of the (parametric and periodic) generating
curve:
γ(t) = (− cos((n + 1)t), − cos(nt)),
Stefano De Marchi
t ∈ [0, π]
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
0
0.5
1
t=0
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
0
h
t ∈ 0,
Stefano De Marchi
0.5
4π
(n(n+1))
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
4π
5π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
5π
8π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
8π
9π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
9π
10π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
10π
12π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
12π
13π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
13π
14π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
14π
15π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
15π
16π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
16π
17π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
17π
18π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
18π
19π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
t∈
h
0
0.5
19π
20π
(n(n+1)) , (n(n+1))
Stefano De Marchi
1
i
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4)
1
0.5
0
-0.5
-1
-1
-0.5
odd
Cn+1
Stefano De Marchi
0
×
0.5
1
even
Cn+2
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
The generating curve γ(t) (n = 4), is a Lissajous curve
1
0.5
0
-0.5
-1
-1
Padn =
-0.5
O
Cn+1
×
E
Cn+2
0
0.5
E
∪ Cn+1
Stefano De Marchi
×
O
Cn+2
1
⊂ Cn+1 × Cn+2
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Lagrange polynomials
The fundamental Lagrange polynomials of the Padua points are
Lξ (x) = wξ (Kn (ξ, x) − Tn (ξ1 )Tn (x1 )) , Lξ (η) = δξη ,
where
1
2
1
wξ =
· 1
n(n + 1)
2
ξ, η ∈ Padn
(1)
if ξ is a vertex point
if ξ is an edge point
if ξ is an interior point
{wξ } are weights of cubature formula for the prod. Cheb. measure, exact
”on almost” Pn2n ([−1, 1]2), i.e. pol. orthogonal to T2n (x2 )
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Reproducing kernel
Kn (x, y) =
n X
k
X
T̂j (x1 )T̂k−j (x2 )T̂j (y1 )T̂k−j (y2 ) , T̂j =
√
k=0 j=0
2Tj , j ≥ 1
(2)
is the reproducing kernel of P2n ([−1, 1]2 ) equipped with the inner product
Z
dx1
dx2
p
hf , g i =
f (x1 , x2 )g (x1 , x2 ) p
,
2
2
π 1 − x1 π 1 − x22
[−1,1]
with reproduction property
Z
Kn (x, y)pn (y)w (y)dy = pn (x),
[−1,1]2
∀pn ∈ P2n
1
1
p
w (x) = w (x1 , x2 ) = p
2
π 1 − x1 π 1 − x22
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Lebesgue constant
The Lebesgue constant
Λn =
max λn (x),
x∈[−1,1]2
λn (x) =
X
ξ∈Padn
|Lξ (x)|
is bounded by (cf. BCDeMVX, Numer. Math. 2006)
Λn ≤ C log2 n
(3)
(optimal order of growth on a square).
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Interpolant
From the representations (1) (Lagrange poly.) and (2) (reproducing
kernel) the interpolant of a function f : [−1, 1]2 → R is
X
X
Ln f (x) =
f (ξ)Lξ (x) =
f (ξ) [wξ (Kn (ξ, x) − Tn (ξ1 )Tn (x1 ))] =
ξ∈Padn
=
ξ∈Padn
n X
k
X
k=0 j=0
cj,k−j T̂j (x1 )T̂k−j (x2 ) −
cn,0
T̂n (x1 )T̂0 (x2 ) ,
2
where the coefficients
X
cj,k−j =
f (ξ)wξ T̂j (ξ1 )T̂k−j (ξ2 ),
ξ∈Padn
0≤j ≤k ≤n
can be computed once and for all.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Coefficient matrix
Let us define the coefficient matrix
c0,0
c0,1
c1,0
c1,1
..
..
C0 = .
.
cn−1,0 cn−1,1
cn,0
0
2
...
...
c0,n
. . . c1,n−1 0
..
.
.
..
..
.
0
...
0
...
0
0
and for a vector S = (s1 , . . . , sm ), S ∈ [−1, 1]m , the (n + 1) × m
Chebyshev collocation matrix
T̂0 (s1 ) . . . T̂0 (sm )
..
T(S) = ...
...
.
T̂n (s1 ) . . . T̂n (sm )
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Coefficient matrix factorization
Letting Cn+1 the vector of the Chebyshev-Lobatto pts
n
Cn+1 = z1n , . . . , zn+1
we construct the (n + 1) × (n + 2) matrix
G(f ) = (gr ,s ) =
(
wξ f (zrn , zsn+1 )
if ξ = (zrn , zsn+1 ) ∈ Padn
if ξ = (zrn , zsn+1 ) ∈ (Cn+1 × Cn+2 ) \ Padn
0
Then C0 is essentially the upper-left triangular part of
C(f ) = P1 G(f )PT
2
P1 = T(Cn+1 ) ∈ R(n+1)×(n+1) and P2 = T(Cn+2 ) ∈ R(n+1)×(n+2) .
Stefano De Marchi
Padua points: theory, computation and applications
.
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Coefficient matrix factorization
Exploiting the fact that the Padua points are union of two Chebyshev
subgrids, we may define the two matrices
E
O
G1 (f ) = wξ f (ξ) , ξ = (zrn , zsn+1 ) ∈ Cn+1
× Cn+2
O
E
G2 (f ) = wξ f (ξ) , ξ = (zrn , zsn+1 ) ∈ Cn+1
× Cn+2
then we can compute the coefficient matrix as
E
O
O
E
C(f ) = T(Cn+1
) G1 (f ) (T(Cn+2
))t + T(Cn+1
) G2 (f ) (T(Cn+2
))t
We term this approach as MM, Matrix-Multiplication.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Coefficient matrix factorization by FFT
cj,l =
X
f (ξ)wξ T̂j (ξ1 )T̂l (ξ2 ) =
n X
n+1
X
r =0
gr ,s T̂j (zrn )T̂l (zsn+1 )
r =0 s=0
ξ∈Padn
= βj,l
n X
n+1
X
M−1
X
jr π
lsπ
gr ,s cos
cos
= βj,l
n
n+1
s=0
s=0
where N = 2n, M = 2(n + 1) and
(
j =l=0
1
gr ,s
0
j 6= 0, l 6= 0 gr ,s =
βj,l = 2
0
√
2 otherwise
Stefano De Marchi
N−1
X
r =0
gr0,s
2jr π
cos
N
!
cos
2lsπ
M
0 ≤ r ≤ n and 0 ≤ s ≤ n + 1
r > n or s > n + 1
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Coefficient matrix factorization by FFT
The coefficients cj,l can be computed by a double Discrete Fourier
Transform.
!
N−1
X
0 −2πijr /N
ĝj,s = REAL
gr ,s e
, 0 ≤ j ≤ n, 0 ≤ s ≤ M − 1
r =0
cj,l
= ĝˆj,l = REAL
βj,l
M−1
X
ĝj,s e−2πils/M
s=0
Stefano De Marchi
!
, 0 ≤ j ≤ n, 0 ≤ l ≤ n − j
(4)
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
R
Matlab
code for the FFT approach
Input: G ↔ G(f )
Gfhat = real(fft(G,2*n));
Gfhat = Gfhat(1:n+1,:);
Gfhathat =real(fft(Gfhat,2*(n+1),2));
C0f = Gfhathat(:,1:n+1);
C0f =2*C0f; C0f(1,:) = C0f(1,:)/sqrt(2);
C0f(:,1) = C0f(:,1)/sqrt(2);
C0f = fliplr(triu(fliplr(C0f)));
C0f(n+1,1) = C0f(n+1,1)/2;
Output: C0 ↔ C0
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Linear algebra approach vs FFT approach
The construction of the coefficients is performed by a
matrix-matrix product.
It has been easily and efficiently implemented in Fortran77
(by, eventually optimized, BLAS) (cf. CDeMV, TOMS 2008)
R
and in Matlab
(based on optimized BLAS).
The coefficients are approximated Fourier–Chebyshev
coefficients, hence they can be computed by FFT techniques.
FFT is competitive and more stable than the MM approach at
high degrees of interpolation (see later).
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Evaluating the interpolant (in Matlab)
Given a point x = (x1 , x2 ) and the coefficient matrix C0 , the
polynomial interpolation formula can be evaluated by a double
matrix-vector product
Ln f (x) = T(x1 )T C0 (f )T(x2 )
If X = (X1 , X2 ) (X1,2 column vectors) is a set of target points, then
t
Ln f (X) = diag (T(X1 )) C0 (f ) T(X2 )
(5)
The result Ln f (X) is a (column) vector.
If X = X1 × X2 is a Cartesian grid then
t
t
Ln f (X) = (T(X1 )) C0 (f ) T(X2 )
(6)
The result Ln f (X) is a matrix whose i-th row and j-th column
contains the evaluation of the interpolant as the built-in function
R
meshgrid of Matlab
.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Beyond the square
The interpolation formula can be extended to other domains
Ω ⊂ R2 , by means of a suitable mapping of the square. Given
σ : [−1,1]2 → Ω
t 7→ x = σ(t)
it is possible to construct the (in general nonpolynomial)
interpolation formula
Ln f (x) = T(σ1← (x))T C0 (f ◦ σ)T(σ2← (x))
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Cubature
Integration of the interpolant at the Padua points gives a
nontensorial Clenshaw–Curtis cubature formula (cf. SVZ, Numer.
Algorithms 2008)
Z
[−1,1]2
f (x)dx ≈
=
Z
[−1,1]2
n X
n
X
Ln f (x)dx =
′
cj,l
mj,l =
j=0 l=0
Stefano De Marchi
n X
k
X
′
cj,k−j
mj,k−j
k=0 j=0
n
n
X
X
′
cj,l
mj,l
j even l even
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Cubature
Where the moments mj,l are
mj,l =
Z
1
T̂j (t)dt
−1
Since
Z
1
2
Z 1
0
T̂j (t)dt =
2√2
−1
1 − j2
Stefano De Marchi
T̂l (t)dt
−1
j =0
j odd
j even
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
R
The Matlab
code for the cubature
Input: C0f↔ C0 (f )
j = [0:2:n];
mom = 2*sqrt(2)./(1-j.^2);
mom(1) = 2;
[M1,M2]=meshgrid(mom);
M = M1.*M2;
C0fM = C0f(1:2:n+1,1:2:n+1).*M;
Int = sum(sum(C0fM));
Output: Int↔ In (f )
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Cubature
It is often desiderable having a cubature formula involving the function
values at the nodes and the corresponding cubature weights. Using the
formula for the coefficients cj,l , we can write
X
In (f ) =
λξ f (ξ)
ξ∈Padn
=
X
λξ f (ξ) +
E ×C O
ξ∈Cn+1
n+2
where
λξ = wξ
n
n
X
X
X
λξ f (ξ)
O ×C E
ξ∈Cn+1
n+2
′
mj,l
T̂j (ξ1 )T̂l (ξ2 )
(7)
j even l even
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Cubature
Defining the Chebyshev matrix
T̂0 (s1 )
T̂2 (s1 )
TE (S) = .
..
corresponding to even degrees
· · · T̂0 (sm )
· · · T̂2 (sm )
([ n ]+1)×m
.. ∈ R 2
···
.
T̂pn (s1 ) · · · T̂pn (sm )
and the matrices of weights on
t the subgrids,
t
E
O
O
E
W1 = wξ , ξ ∈ Cn+1
× Cn+2
, W2 = wξ , ξ ∈ Cn+1
× Cn+2
, then the
cubature weights {λξ } can be computed in the matrix form
t
t
E
O
E
O
L1 = λξ , ξ ∈ Cn+1
× Cn+2
= W1 . TE (Cn+1
))t M0 TE (Cn+2
)
t
t
O
E
O
E
L2 = λξ , ξ ∈ Cn+1
× Cn+2
= W2 . TE (Cn+1
))t M0 TE (Cn+2
)
′
where M0 = mj,l
(moment matrix) and the dot means that the final
product is made componentwise.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Cubature
1
An FFT-based implementation is then feasible, in analogy to what
happens in the univariate case with the Clenshaw-Curtis formula (cf.
Waldvogel, BIT06). The algorithm is quite similar the one for
interpolation.
2
The cubature weights are not all positive, but the negative ones are
few and of small size and
lim
n→∞
X
ξ∈Padn
|λξ | = 4
i.e. stability and convergence.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Numerical results
R
Language: Matlab
7.6.0
Processor: Intel Core2 Duo 2.2GHz.
n
FFT
MM
20
0.002
0.003
40
0.002
0.001
60
0.002
0.003
80
0.002
0.004
100
0.006
0.006
200
0.029
0.022
300
0.055
0.065
400
0.088
0.142
500
0.137
0.206
Table: CPU time (in seconds) for the computation of the interpolation
coefficients at a sequence of degrees.
n
FFT
MM
20
0.005
0.004
40
0.001
0.000
60
0.003
0.001
80
0.003
0.002
100
0.005
0.003
200
0.025
0.010
300
0.048
0.025
400
0.090
0.043
500
0.142
0.071
Table: CPU time (in seconds) for the computation of the cubature
weights at a sequence of degrees.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Numerical results
1
MM
FFT
0.01
Relative ubature error
Relative interpolation error
1
MM
FFT
0.01
0.0001
1e-06
1e-08
1e-10
0.0001
1e-06
1e-08
1e-10
1e-12
1e-12
1e-14
1e-14
1e-16
0
20
40
60
degree
80
n
100
0
20
40
60
degree
80
n
Figure: Relative errors of interpolation (left) and cubature (right) versus
the interpolation degree for the Franke test function in [0, 1]2 , by the
Matrix Multiplication (MM) and the FFT-based algorithms.
Stefano De Marchi
Padua points: theory, computation and applications
100
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Numerical results
1
Tens. CL
Padua pts.
Relative interpolation error
Relative interpolation error
0.1
Tens. CL
Padua pts.
0.01
0.0001
1e-06
1e-08
1e-10
1e-12
0.01
0.001
0.0001
1e-14
1e-16
1e-05
0
100
200
300
400
500
Number of points
0
100
200
300
400
500
Number of points
Figure: Relative interpolation errors versus the number of interpolation
points for the Gaussian f (x) = exp (−|x|2 ) (left) and the C 2 function
f (x) = |x|3 (right) in [−1, 1]2; Tens. CL = Tensorial Chebyshev-Lobatto
interpolation.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Numerical results
0.01
Tens. CC pts.
0.0001
Non tens. CC Padua pts.
0.001
Tens. GLL pts.
OS pts.
1e-06
Relative ubature error
Relative ubature error
Tens. CC pts.
Non tens. CC Padua pts.
1e-08
1e-10
1e-12
1e-14
Tens. GLL pts.
OS pts.
0.0001
1e-05
1e-06
1e-07
1e-08
1e-16
1e-09
0
100
200
300
400
500
Number of points
0
100
200
300
400
500
Number of points
Figure: Relative cubature errors versus the number of cubature points
(CC = Clenshaw-Curtis, GLL = Gauss-Legendre-Lobatto, OS =
Omelyan-Solovyan) for the Gaussian f (x) = exp (−|x|2 ) (left) and the C 2
function f (x) = |x|3 (right); the integration domain is [−1, 1]2 , the
integrals up to machine precision are, respectively: 2.230985141404135
and 2.508723139534059.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Conclusions
We studied different families of point sets for polynomial
interpolation on the square.
The most promising, from theoretical purposes and
computational cost both of the interpolant and Lebesgue
constant growth are the Padua points.
More on Padua points (papers, software, links) at the CAA
research group:
http://www.math.unipd.it/∼marcov/CAA.html
http://en.wikipedia.org/wiki/Padua points.
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Main references
1
M. Caliari, S. De Marchi, A. Sommariva and M. Vianello: Padua2DM: fast interpolation and cubature at
Padua points in Matlab/Octave, Submitted (2009).
2
M. Caliari, S. De Marchi and M. Vianello: Bivariate polynomial interpolation on the square at new nodal
sets, Applied Math. Comput. vol. 165/2, pp. 261-274 (2005)
3
L. Bos, M. Caliari, S. De Marchi and M. Vianello: A numerical study of the Xu polynomial interpolation
formula in two variables, Computing 76(3-4)(2006), 311–324 .
4
L. Bos, S. De Marchi and M. Vianello: On the Lebesgue constant for the Xu interpolation formula J.
Approx. Theory 141 (2006), 134–141.
5
L. Bos, M. Caliari, S. De Marchi and M. Vianello: Bivariate interpolation at Xu points: results, extensions
and applications, Electron. Trans. Numer. Anal. 25 (2006), 1–16.
6
L. Bos, S. De Marchi, M. Caliari, M. Vianello and Y. Xu: Bivariate Lagrange interpolation at the Padua
points: the generating curve approach, J. Approx. Theory 143 (2006), 15–25.
7
L. Bos, S. De Marchi, M. Vianello and Y. Xu: Bivariate Lagrange interpolation at the Padua points: the
ideal theory approach, Numer. Math., 108(1) (2007), 43-57.
8
M. Caliari, S. De Marchi, and M. Vianello: Bivariate Lagrange interpolation at the Padua points:
computational aspects, J. Comput. Appl. Math., Vol. 221 (2008), 284-292.
9
M. Caliari, S. De Marchi and M. Vianello: Algorithm 886: Padua2D: Lagrange Interpolation at Padua
Points on Bivariate Domains, ACM Trans. Math. Software, Vol. 35(3), Article 21, 11 pages, 2008.
10 Sommariva, A., Vianello, M., Zanovello, R.: Nontensorial Clenshaw-Curtis cubature. Numer. Algorithms
49, 409–427 (2008).
Stefano De Marchi
Padua points: theory, computation and applications
Motivations and aims
From Dubiner metric to Padua points
Padua points and their properties
Interpolation
Cubature
Numerical results
Second DOLOMITES WORKSHOP ON
CONSTRUCTIVE APPROXIMATION AND APPLICATIONS
Alba di Canazei, Trento (Italy), September 4-9, 2009
http://www.math.unipd.it/∼dwcaa09/
Stefano De Marchi
Padua points: theory, computation and applications
© Copyright 2025 Paperzz