Hermite mean value interpolation

advertisement
Hermite mean value interpolation
Christopher Dyken and Michael Floater
Centre of Mathematics for Applications,
Department of Informatics,
University of Oslo
In this talk:
1. What is mean value interpolation?
2. Proving that the mean value interpolant really interpolates!
3. Hermite interpolation
4. Applications: smooth mappings, web-splines.
Mean value interpolation
p (x , θ )
Ω ⊂ R2 convex. Given values
of a function f on ∂Ω.
θ
Ω
x
dΩ
The mean value interpolant to f is
,Z
Z 2π
2π
f (p(x, θ))
1
g (x) =
dθ
dθ,
kp(x, θ) − xk
kp(x, θ) − xk
0
0
Linear precision: if f is linear in Ω then g = f .
Mean value property at x.
x ∈ Ω.
Examples
MV interpolation on a polygon
p i+1
Ω
αi
Suppose Ω is a polygon with
vertices p1 , . . . , pn and f is
piecewise linear on ∂Ω.
pi
α i−1
x
p i−1
dΩ
Then
g (x) =
n
X
λi (x)f (pi ),
i=1
where λi (x) = wi (x)/
Pn
1
wi (x) =
kpi − xk
j=1 wj (x),
tan
and
αi−1 (x)
2
+ tan
αi (x)
2
.
Non-convex domains: use same formula (Hormann & F. 2006)
Boundary integrals: Ju, Schaefer, and Warren (2005)
c (t )
Let c : [a, b] → R2 be a
parametric representation of
∂Ω, oriented anticlockwise.
θ
Ω
x
dΩ
Then
dθ
(c(t) − x) × c0 (t)
=
,
dt
kc(t) − xk2
and so
Z
g (x) =
,
b
w (x, t)f (c(t)) dt
φ(x),
Z
φ(x) =
a
b
w (x, t) dt.
a
where
w (x, t) =
(c(t) − x) × c0 (t)
.
kc(t) − xk3
Shows that g ∈ C ∞ (Ω). Non-convex domains: use same
formula!
Non-convex domains
p 2(x ,θ)
p 3(x ,θ)
p 1(x ,θ)
x
Z
g (x) =
0
2π n(x,θ)
X
j=1
θ
(−1)j−1
f (pj (x, θ)) dθ
kpj (x, θ) − xk
,
where
Z
φ(x) =
0
2π n(x,θ)
X
j=1
(−1)j−1
dθ > 0.
kpj (x, θ) − xk
φ(x),
References
1. A. Belyaev, On transfinite barycentric coordinates (2006).
2. M. S. Floater, Mean value coordinates (2003).
3. M. S. Floater, G. Kos, and M. Reimers, Mean value coordinates in
3D (2005).
4. M. S. Floater, K. Hormann, and G. Kos, A general construction of
barycentric coordinates over convex polygons (2006).
5. W. J. Gordon and J. A. Wixom, Pseudo-harmonic interpolation on
convex domains (1974).
6. T. Ju, S. Schaefer, and J. Warren, Mean value coordinates for
closed triangular meshes (2005).
7. K. Hormann and M. S. Floater, Mean value coordinates for arbitrary
planar polygons (2006).
8. M. Sabin, Transfinite surface interpolation (1994).
9. S. Schaefer, T. Ju, and J. Warren, A unified integral construction
for coordinates over closed curves, to appear.
Interpolation property
Let ME be the exterior medial axis of Ω.
Theorem
If
1. f is continuous,
2. supx∈Ω sup0≤θ≤2π n(x, θ) < ∞,
3. and d(ME , ∂Ω) > 0
then g interpolates f .
Sketch of proof
With c(s) ∈ ∂Ω and x ∈ Ω,
,
Z b
g (x) − f (c(s)) =
w (x, t) f (c(t)) − f (c(s)) dt φ(x).
a
Rb R R
For small γ > 0 split the integral: a = I + J , where
I = [s − γ, s + γ] and J = [a, b] \ I . Then,
,
Z
|g (x) − f (c(s))| ≤ max |f (c(t)) − f (c(s))| |w (x, t)| dt φ(x)
t∈I
I
,
Z
|w (x, t)| dt
+ 2M
φ(x).
J
Then show
Z
|w (x, t)| dt ≤
I
C1
,
d(x, ∂Ω)
Z
and use continuity of f and c.
b
w (x, t) dt ≥
and φ(x) =
a
C2
d(x, ∂Ω)
Cubic Hermite interpolation
Given data f (x0 ), f 0 (x0 ), f (x1 ), f 0 (x1 ), the cubic p ∈ π3 such that
p (k) (xi ) = f (k) (xi ), i = 0, 1, k = 0, 1, can be expressed as
p(x) = g0 (x) + ψ(x)g1 (x),
where
x − x0
x1 − x
f (x0 ) +
f (x1 ),
x1 − x0
x1 − x0
(x − x0 )(x1 − x)
ψ(x) =
,
x1 − x0
x1 − x
x − x0
g1 (x) =
m0 +
m1 ,
x1 − x0
x1 − x 0
g0 (x) =
and
mi =
f 0 (xi ) − g00 (xi )
,
ψ 0 (xi )
i = 0, 1.
Equivalently:
(for x ∈ (x0 , x1 ))
X
1
1
X
f (xi )
g0 (x) =
|xi − x|
|xi
i=0
i=0
X
1
1
ψ(x) = 1
,
|xi − x|
i=0
X
1
1
X
mi
g1 (x) =
|xi − x|
|xi
i=0
i=0
1
,
− x|
1
.
− x|
Idea: in 2D replace g0 and g1 by mean value interpolants and ψ by
a mean value weight function, i.e., replace sums by integrals
over θ.
Hermite mean value interpolation
We can interpolate the data f and
∂f
∂n
on ∂Ω, by the function
p(x) = g0 (x) + ψ(x)g1 (x),
x ∈ Ω,
where
Z
2π
f (p(x, θ))
dθ
kp(x, θ) − xk
g0 (x) =
0
ψ(x) = 1
φ(x),
φ(x),
Z
2π
m(p(x, θ))
dθ
kp(x, θ) − xk
g1 (x) =
0
Z
φ(x) =
0
2π
φ(x),
1
dθ.
kp(x, θ) − xk
and
m(y) =
∂f
∂g0
∂ψ
(y) −
(y)
(y),
∂n
∂n
∂n
y ∈ ∂Ω.
To use this construction we need to find
∂ψ
∂n (y)
and
∂g0
∂n (y).
Theorem
If d(ME , ∂Ω) > 0 and d(MI , ∂Ω) > 0 and y ∈ ∂Ω then
∂ψ
(y) =
∂n
∂g0
(y) =
∂n
1
,
2
Z
1 b
w (y, t) f (c(t)) − f (y) dt.
2 a
Hermite examples
Application I: Smooth mappings
Reference shape
Computational domain
(extended Gordon & Hall)
MV-Lagrange
MV-Hermite
Conjecture: Lagrange interpolation from convex sets to convex
sets is always injective.
Application II: web-splines [Höllig, Reif, Wipper 2001]
Idea: Use ψ as a weight function for web-splines
Parametric circle
Two nested ellipses
Polygon
Piecwise cubic Bézier curve
Solution to Poisson’s equation using bicubic web-splines
Using implicit weight function
Grid
10 × 8
20 × 16
40 × 32
80 × 64
L2 error
7.3e-02
2.9e-02
1.6e-03
4.4e-05
order
1.31
4.21
5.17
Using MV weight function
Grid
10 × 8
20 × 16
40 × 32
80 × 64
L2 error
9.5e-02
4.1e-02
2.4e-03
1.4e-04
order
1.21
4.12
4.01
Download