Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
INTERPOLAÇÃO E APROXIMAÇÃO POLINOMIAL
Nadir Arada
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Posição do problema geral
Considere a tabela seguinte
x0
y0
x1
y1
x2
y2
···
···
xn−1
yn−1
xn
yn
onde x0 , x1 , · · · , xn são distictos.
Objectivo: Encontrar um polinómio Π n de grau n tal que
Πn (xi ) = yi
i = 0, 1, 2, · · · , n
O polinómio é chama-se polinómio de interpolação nos pontos x i ,
i = 0, 1, 2, · · · , n.
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
y0
Πn
y1
yn
y2
x0 x1
x2
xn
Exemplo de um polinómio de interpolação de grau 3
Cálculo Numérico - Interpolação e aproximção polinomial
Splines
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Caso particular: Interpolação de uma função continua
Seja f ∈ C([a, b]) e sejam x0 , x1 , · · · , xn , n + 1 pontos em [a, b]. Se
consideramos
yi = f (xi )
então o polinómio Πn chama-se polinómio interpolador de f nos
pontos (xi =i=0,··· ,n , e usa-se a notação Πn f (x).
Πn
f
x0
Cálculo Numérico - Interpolação e aproximção polinomial
x1
xn
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Base de Lagrange
Considere os polinómios ϕk ∈ P
I n [x], k = 0, 1, · · · , n, definidos por
n
Y
(x − xi )
ϕk (x) =
(xk − xi )
i=0
i6=k
É facile verificar que
(
ϕk (xk ) = 1
ϕk (xi ) = 0
e que (ϕk )k=0,1,··· ,n é uma base de P
I n [x]
Cálculo Numérico - Interpolação e aproximção polinomial
se i 6= k
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo 1. Para n = 1, x0 = −1 e x1 = 1, os polinómios da base de
Lagrange são
ϕ0 (x) =
x − x1
1
= − (x − 1)
x0 − x 1
2
e
ϕ1 (x) =
x − x0
1
= (x + 1)
x1 − x 0
2
Exemplo 2. Para n = 2, x0 = −1, x1 = 0 e x2 = 1, os polinómios da
base de Lagrange são

(x − x1 )(x − x2 )
1


ϕ0 (x) =
= x(x − 1)


(x0 − x1 )(x0 − x2 )
2




(x − x0 )(x − x2 )
ϕ1 (x) =
= −(x + 1)(x − 1)

(x1 − x0 )(x1 − x2 )





(x − x0 )(x − x1 )
1

 ϕ2 (x) =
= x(x + 1)
(x2 − x0 )(x2 − x1 )
2
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
ϕ0
Fenômeno de Runge
ϕ2
Interpolação por intervalo
ϕ1
Base de Lagrange para n = 2, x0 = −1, x1 = 0 e x2 = 1
Cálculo Numérico - Interpolação e aproximção polinomial
Splines
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Existência e unicidade do polinómio de interpolação
Teorema 1. Sejam x0 , x1 , · · · , xn , n + 1 pontos distinctos e sejam y0 ,
y1 , · · · , yn , os valores associados. O polinómio Π n ∈ P
I n [x] definido
por
n
X
Πn (x) =
yk ϕk (x)
k=0
é o único polinómio de interpolação nos pontos x i , i = 1, 2, · · · , n.
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Demonstração. É facile verificar que para qualquer i = 0, 1, · · · , n,
tem-se
n
X
Πn (xi ) =
yk ϕk (xi ) = yi ϕ(xi ) = yi
k=0
o que prova que Πn é um polinómio de interpolação nos pontos x i .
Para provar a unicidade, suponha que existe um polinómio Q n ∈ P
I n [x]
tal que Qn (xi ) = yi . Então Πn − Qn ∈ P
I n [x] satisfaz
(Πn − Qn )(xi ) = 0
i = 0, 1, · · · , n
e portanto é identicamente nulo. Isto é Q n ≡ Πn
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo. Considere a função f (x) = sin x em [0, 3π].
1. Grau n = 1 com x0 = 0 e x1 = 3π. Tem-se f (x0 ) = 0 e f (x1 ) = 0.
O polinómio interpolador de f nos pontos x 0 e x1 é
Π1 (x) = f (x0 ) × ϕ0 (x) + f (x1 )ϕ1 (x) = 0
2. Grau n = 2 com x0 = 0, x1 = 3π
2 e x2 = 3π. Tem-se f (x0 ) = 0,
f (x1 ) = −1 e f (x1 ) = 0. O polinómio interpolador de f nos pontos x 0 ,
x1 e x 2 é
Π2 (x) = f (x0 ) × ϕ0 (x) + f (x1 )ϕ1 (x) + f (x2 )ϕ2 (x)
= f (x1 )ϕ1 (x) = −ϕ1 (x)
=−
(x − x0 )(x − x2 )
4
= 2 x(x − 3π)
(x1 − x0 )(x1 − x2 )
9π
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Π4 (x)
sin x
3
6
9
Π2 (x)
Interpolação de f (x) = sin x em [0, 3π]
Cálculo Numérico - Interpolação e aproximção polinomial
Splines
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Algoritmo de Newton- Diferenças divididas
Definição. O coeficiente de xn no polinómio de Lagrange Πn é notado
f [x0 , x1 , · · · , xn ]
e chama-se diferença dividida de ordem n dos dados (x i , yi )0≤i≤n .
Uma vez que
Πn (x) =
n
X
yk ϕk (x) =
k=0
tem-se
f [x0 , x1 , · · · , xn ] =
n
X
yk
k=0
n
X
k=0
n
Y
i=0
i6=k
Cálculo Numérico - Interpolação e aproximção polinomial
n
Y
x − xi
xk − x i
i=0
i6=k
yk
(xk − xi )
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Teorema. Seja Πn o polinómio de interpolação de Lagrange definido
por
Πn (xi ) = yi
i = 0, 1, · · · , n
e seja Πn+1 o polinómio de interpolação de Lagrange definido por
Πn+1 (xi ) = yi
i = 0, 1, · · · , n, n + 1
Então
Πn+1 (x) = Πn (x) + f [x0 , x1 , · · · , xn , xn+1 ]
n
Y
i=0
Cálculo Numérico - Interpolação e aproximção polinomial
(x − xi )
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Demonstração. Seja Qn+1 o polinómio definido por
Qn+1 (x) = Πn (x) + f [x0 , x1 , · · · , xn , xn+1 ]
n
Y
(x − xi )
i=0
Para qualquer xi , i = 0, 1, · · · , n, tem-se
(Qn+1 − Πn+1 ) (xi ) = Πn (xi ) − Πn+1 (xi ) = yi − yi = 0
Por outro lado, os polinómios Qn+1 e Πn+1 têm o mesmo o
coeficiente de maior grau. Assim
Qn+1 − Πn+1 é de grau n e tem n + 1 zeros
e portanto
Qn+1 = Πn+1
Cálculo Numérico - Interpolação e aproximção polinomial
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Consequência.
Π0 (x) = y0
Π1 (x) = Π0 (x) + f [x0 , x1 ](x − x0 )
= y0 + f [x0 , x1 ](x − x0 )
Π2 (x) = Π1 (x) + f [x0 , x1 , x1 ](x − x0 )(x − x1 )
= y0 + f [x0 , x1 ](x − x0 ) + f [x0 , x1 , x1 ](x − x0 )(x − x1 )
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Por recorrência, deduz-se a forma de Newton com diferenças
divididas para o polinómio de interpolação
Πn (x) = y0
+f [x0 , x1 ](x − x0 )
+f [x0 , x1 , x2 ](x − x0 )(x − x1 )
+···
+f [x0 , x1 , · · · , xn ] (x − x0 )(x − x1 ) · · · (x − xn−1 )
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Cálculo efectivo das diferenças divididas
Prova-se que a uma diferença de ordem n é relacionada com duas
diferenças de ordem (n − 1) do seguinte modo
f [xi , xi+1 , · · · , xi+k ] =
f [xi+1 , xi+1 , · · · , xi+k ] − f [xi , xi+1 , · · · , xi+k−1 ]
xi+k − xi
Na prática usa-se a tabela das diferenças divididas
x0
x1
x2
x3
y0
y1
y2
y3
= f [x0 ]
= f [x1 ]
= f [x2 ]
= f [x3 ]
f [x0 , x1 ]
f [x1 , x2 ]
f [x2 , x3 ]
f [x0 , x1 , x2 ]
f [x1 , x2 , x3 ]
f [x0 , x1 , x2 , x4 ]
Table: Organização das diferenças divididas de Newton
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo. Considere a função f (x) = sin(πx) em [−1, 1] e seja Π 4 o
polinómio de interpolação de grau 4 nos pontos x i = −1 + 2i ,
i = 0, 1, · · · , 4. A tabela das diferenças divididas é dada por
−1
−0.5
0
−1
0
0.5
1
0
1
0
−1−0
−0.5−(−1) = −2
0−(−1)
0−(−0.5) = 2
1−0
0.5−0 = 2
0−1
1−0.5 = −2
2−(−2)
0−(−1) = 4
2−2
0.5−(−0.5) = 0
−2−2
1−0 = −4
0−4
0.5−(−1)
−4−0
1−(−0.5)
= − 83
= − 83
O polinómio de interpolação é
Π4 (x) = 0−2(x + 1) + 4(x + 1)(x + 0.5)− 83 (x + 1)(x + 0.5)x
+0(x + 1)(x + 0.5)x(x − 0.5)
= −2(x + 1) + 4(x + 1)(x + 0.5) − 83 (x + 1)(x + 0.5)x
Cálculo Numérico - Interpolação e aproximção polinomial
0
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Caso de pontos equidistantes: diferenças finitas
Consider a sucessão de dados (xi , yi )0≤i≤n . Defina-se o operador ∆yi
∆yi = yi+1 − yi
i = 0, 1, · · · n − 1
e, de modo recursivo, o operador de ordem superior ∆ k yi
∆k yi = ∆(∆k−1 yi )
k = 2, · · ·
A forma de interpolação de Newton com diferenças divididas é valida
no caso de uma distribução qualquer dos pontos de interpolação. Se a
distribução é uniforme com passo h, prova-se que
f [x0 , x1 , x2 , · · · , xn ] =
Cálculo Numérico - Interpolação e aproximção polinomial
1
∆n y0
n!hn
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Por conseguinte, obtem-se a forma de Newton com diferenças finitas
para o polinómio de interpolação
Πn (x) = y0
+
∆y0
(x − x0 )
h
+
∆2 y0
(x − x0 )(x − x1 )
2!h2
+···
+
∆n y0
(x − x0 )(x − x1 ) · · · (x − xn−1 )
n!hn
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Cálculo efectivo das diferenças finitas
Na prática usa-se a tabela das diferenças finitas
x0
x1
x2
x3
x4
y0
y1
y2
y3
y4
∆y0
∆y1
∆y2
∆y3
∆2 y0
∆2 y1
∆2 y3
∆3 y0
∆3 y1
∆4 y0
Table: Organização das diferenças finitas de Newton
Cálculo Numérico - Interpolação e aproximção polinomial
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo. Considere a função f (x) = sin(πx) em [−1, 1] e seja Π 4 o
polinómio de interpolação de grau 4 nos pontos x i = −1 + 2i ,
i = 0, 1, · · · , 4. A tabela das diferenças finitas é dada por
−1
−0.5
0
0.5
1
0
−1
0
1
0
−1 − 0 = −1
0 − (−1) = 1
1−0=1
0 − 1 = −1
1 − (−1) = 2
1−1 =0
−1 − 1 = −2
0 − 2 = −2
−2 − 0 = −2
0
O polinómio de interpolação é
1
Π4 (x) = 0− 1!(0.5)
(x + 1) +
2
(x
2!(0.5)2
2
− 3!(0.5)
3 (x + 1)(x + 0.5)x +
+ 1)(x + 0.5)
0
(x
4!(0.5)4
+ 1)(x + 0.5)x(x − 0.5)
= −2(x + 1) + 4(x + 1)(x + 0.5) − 83 (x + 1)(x + 0.5)x
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Erro de interpolação de uma função regular
Teorema 2. Seja f ∈ C n+1 ([a, b]) e seja Πn o polinómio interpolador
de f nos pontos x0 , x1 , · · · , xn . Então para qualquer x ∈ [a, b], existe
ζ(x) ∈ [a, b] tal que o erro de interpolação f − Π n satisfaz
n
f (n+1) (ζ) Y
f (x) − Πn (x) =
(x − xi )
(n + 1)!
i=0
Demonstração. 1. Se x = xi , i = 0, 1, · · · , n, então o resultado é
sempre valido.
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
2. Se x 6= xi , considere-se a função
F(t) = f (t) − Πn (t) −
onde ωn (x) =
n
Y
f (x) − Πn (x)
ωn (t)
ωn (x)
(x − xi ) = (x − x0 )(x − x1 ) · · · (x − xn )
i=0
É facile ver que
F(x) = 0
e
F(xi ) = 0
∀ i = 0, 1, · · · , n
e portanto
F tem pelo menos n + 2 zeros em [a, b]
Cálculo Numérico - Interpolação e aproximção polinomial
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Aplicando o teorema de Rolle, conclui-se que
F 0 tem pelo menos n + 1 zeros em [a, b]
F” tem pelo menos n zeros em [a, b]
···
F (n+1) tem pelo menos 1 zero em [a, b]
Existe então ζ ∈]a, b[ tal que
F (n+1) (ζ) = 0
Cálculo Numérico - Interpolação e aproximção polinomial
Splines
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Uma vez que
(n+1)
F (n+1) (t) = f (n+1) (t) − Πn
= f (n+1) (t) −
(t) −
f (x)−Πn (x)
ωn (x) (n
f (x)−Πn (x)
(ωn (t))(n+1)
ωn (x)
+ 1)!
conclui-se que
f (n+1) (ζ) −
f (x) − Πn (x)
(n + 1)! = 0
ωn (x)
Isto é
f (x) − Πn (x) =
Cálculo Numérico - Interpolação e aproximção polinomial
f (n+1) (ζ)
ωn (x)
(n + 1)!
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Erro de interpolação no caso de uma distribução de pontos
uniforme
Teorema 2. Seja f ∈ C n+1 ([a, b]) e seja Πn o polinómio interpolador
de f nos pontos equidistantes (xi )0≤i≤n definidos por
xi = a + i h
com h =
b−a
n
Então, o erro de interpolação f − Πn satisfaz
max |f (x) − Πn (x)| ≤ max f (n+1) (x)
x∈[a,b]
Cálculo Numérico - Interpolação e aproximção polinomial
x∈[a,b]
hn+1
4(n + 1)
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Demonstração. Do teorema precedente, sabe-se que para quelquar
x ∈ [a, b] existe ζ ∈ [a, b] tal que
n
(n+1) Y
f
(ζ)
|f (x) − Πn (x)| = (n+1)!
(x − xi )
i=0
n
|f (n+1) (ζ)| Y
= (n+1)! (x − xi )
i=0
max f (n+1) (ζ) Y
n
x∈[a,b]
≤
(x − xi )
(n+1)!
i=0
n
Y
Falta estimar (x − xi ) .
i=0
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Uma vez que x ∈]x0 , xn [, então existe um intervalo ]xi , xi+1 [ tal que
x ∈]xi , xi+1 [. Suponha, para simplificar, que x ∈]x 0 , x1 [.
|x − x2 | ≤ |x − x1 | + |x1 − x2 | ≤ 2h
|x − x3 | ≤ |x − x2 | + |x2 − x3 | ≤ 3h
···
|x − xn | ≤ |x − xn−1 | + |xn−1 − xn | ≤ nh
Portanto
n
n
Y
Y
(x
−
x
)
=
|(x
−
x
)(x
−
x
)|
|x − xi |
i 0
1
i=0
i=2
≤ |(x − x0 )(x − x1 )| (2h)(3h) · · · (nh)
= (x − x0 )(x1 − x) n!hn−1
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
No intervalo [x0 , x1 ] a função (x − x0 )(x − x1 ) atinge o seu máximo no
1
ponto x∗ = x0 +x
2 . Portanto
(x − x0 )(x1 − x) ≤ (x∗ − x0 )(x1 − x∗ )
1
h2
= (x1 − x0 )2 =
4
4
Assim
e
n
Y
hn+1
h2
n!hn−1 =
n!
(x − xi ) ≤
4
4
i=0
max f (n+1) (ζ) Y
n
x∈[a,b]
|f (x) − Πn (x)| ≤
(x
−
x
)
i (n+1)!
i=0
max f (n+1) (ζ)
x∈[a,b]
≤
hn+1
4(n+1)
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Observação. Este resultado é interessante se a quantidade
max f (n+1) (x) x∈[a,b]
b − a n+1
En =
4(n + 1)
n
tende para zero. É suficiente, por exemplo, existir M > 0
independente de n tal que
(n+1) max f
(x) ≤ M
x∈[a,b]
Assim
lim En = 0
n→+∞
o que garante a convergência do método para um grau de interpolação
suficientemente elevado.
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo. Considere a função f (x) = sin(πx) em [−1, 1] e seja Π n o
polinómio de interpolação de grau n nos pontos equidistantes
xi = −1 + 2in , i = 0, 1, · · · , n.
Uma vez que
(n+1) (x) ≤ π n+1
f
∀ x ∈ [−1, 1]
conclui-se que o erro de interpolação satisfaz
max |sin(πx) − Πn (x)| ≤
x∈[−1,1]
−→ 0
Cálculo Numérico - Interpolação e aproximção polinomial
π n+1
4(n + 1)
quando n → +∞
n+1
2
n
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
0.5
−1.0
−0.5
0
0.5
Função erro E4 (x) = |sin(πx) − Π4 (x)|
Cálculo Numérico - Interpolação e aproximção polinomial
1.0
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
0.05
−1.0
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
Função erro E5 (x) = |sin(πx) − Π5 (x)|
Cálculo Numérico - Interpolação e aproximção polinomial
0.6
0.8
1.0
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
0.005
−1.00
−0.75
−0.50
−0.25
0
0.25
0.50
Função erro E8 (x) = |sin(πx) − Π8 (x)|
Cálculo Numérico - Interpolação e aproximção polinomial
0.75
1.00
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
1
Exemplo. Considere a função de Runge f (x) = 1+x
2 definida em
[−5, 5] e seja Πn o polinómio interpolador de f nos pontos
equidistantes xi = −5 + 10i
n , i = 0, 1, · · · , n.
1.5
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
Interpolação da função de Runge com 6 pontos equidistantes
Cálculo Numérico - Interpolação e aproximção polinomial
5
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
No caso de pontos equidistantes, o polinómio interpolador apresenta
oscilações na vizinhança das extremidades do intervalo. Estas
oscilações crescem com o numéro de pontos.
1.5
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
Interpolação da função de Runge com 11 pontos equidistantes
Cálculo Numérico - Interpolação e aproximção polinomial
5
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1.5
1.0
0.5
3
4
Distribução uniforme dos pontos- Função erro E6 (x) =
1
1+x2
−5
−4
−3
−2
Cálculo Numérico - Interpolação e aproximção polinomial
−1
0
1
2
5
− Π6 (x)
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1.5
1.0
0.5
3
4
Distribução uniforme dos pontos- Função erro E11 (x) =
1
1+x2
−5
−4
−3
−2
Cálculo Numérico - Interpolação e aproximção polinomial
−1
0
1
2
5
− Π11 (x)
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Remédio. Considerar como pontos de interpolação, os pontos de
Chebyshev definidos no intervalo [a, b] por
b−a
iπ
i = 0, 1, · · · , n
xi = a+b
2 − 2 cos n ,
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
Interpolação da função de Runge com 6 pontos de Chebychev
Cálculo Numérico - Interpolação e aproximção polinomial
5
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
As oscilações desaparacem e o erro diminua quando o número de
pontos de Chebychev cresce
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
5
Interpolação da função de Runge com 11 pontos de Chebychev
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1.5
1.0
0.5
2
3
Pontos de Chebychev- Função erro E6 (x) =
1
1+x2
−5
−4
−3
−2
Cálculo Numérico - Interpolação e aproximção polinomial
−1
0
1
4
− Π6 (x)
5
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1.5
1.0
0.5
2
3
Pontos de Chebychev- Função erro E11 (x) =
1
1+x2
−5
−4
−3
−2
Cálculo Numérico - Interpolação e aproximção polinomial
−1
0
1
4
− Π11 (x)
5
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Outro Remédio: Interpolação linear por intervalo
Sejam x0 = a < x1 < x2 < · · · < xn = b, (n + 1) pontos que
subdivisam o intervalo [a, b] em n subintervalos I k = [xk , xk+1 ] de
cumprimento h = b−a
n .
Ideia. Em cada subintervalo Ik , interpolar f|Ik por um polinómio Πh1 de
grau 1. É facile de ver que
Πh1 (x) = f (xk ) +
f (xk+1 ) − f (xk )
(x − xk )
xk+1 − xk
Cálculo Numérico - Interpolação e aproximção polinomial
x ∈ Ik
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo. Consideram-se os polinómios Π h1 linear por secção que
interpolam a função de Runge em [−5, 5] com 5 e 10 subintervalos.
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
Interpolação da função de Runge por Πh1 com h = 2
Cálculo Numérico - Interpolação e aproximção polinomial
5
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
Interpolação da função de Runge por Πh1 com h = 1
Cálculo Numérico - Interpolação e aproximção polinomial
5
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
0.5
−5
−4
−3
−2
−1
Função erro Eh (x) =
Cálculo Numérico - Interpolação e aproximção polinomial
0
1
1+x2
1
2
3
4
− Πh1 (x) com h = 2
5
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
0.5
−5
−4
−3
−2
−1
Função erro Eh (x) =
Cálculo Numérico - Interpolação e aproximção polinomial
0
1
1+x2
1
2
3
4
− Πh1 (x) com h = 1
5
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Teorema. Seja f ∈ C 2 ([a, b]) e sejam x0 = a < x1 < · · · < xn = b,
(n + 1) pontos que subdivisam o intervalo [a, b] em n subintervalos
Ik = [xk , xk+1 ] de cumprimento h = b−a
n . Então
h2
max f (x) − Πhi (x) ≤
max |f ”(x)|
8 x∈[a,b]
x∈[a,b]
Demonstração. Da formula do erro de interpolação de uma função
regular, deduz-se que em cada subintervalo I k , tem-se
h2
max f (x) − Πhi (x) ≤
max |f ”(x)|
x∈Ik
8 x∈Ik
O resultado é uma consequência directa desta estimativa
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Interpolação por intervalo com polinómios de grau n
Se f ∈ C(n+1) ([a, b]), em vez de uma interpolação linear, podemos
considerar polinómios de interpolação de grau superior em cada
subintervalo.
Do mesmo modo, tem-se a estimativa do erro
max f (x) − Πhi (x) ≤
x∈[a,b]
Cálculo Numérico - Interpolação e aproximção polinomial
hn+1
max f (n+1) (x)
4(n + 1) x∈[a,b]
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Exemplo. Considere o polinómio Πh2 de grau 2 que interpola a função
de Runge em [−5, 5] com 5 subintervalos.
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
Interpolação da função de Runge por Πh2 com h = 2
Cálculo Numérico - Interpolação e aproximção polinomial
5
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1.0
0.5
−5
−4
−3
−2
−1
Função erro Eh (x) =
Cálculo Numérico - Interpolação e aproximção polinomial
0
1
1+x2
1
2
3
4
− Πh2 (x) com h = 2
5
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Interpolação por splines cúbicos
Ideia. Interpolação local (por intervalo) com polinómios de grau 3 de
modo a garantir que a função interpoladora seja suficientemente
regular sem apresentar oscilações
Definição. Um spline cubico de interpolação é uma função g tal que
I
I
I
g(xi ) = yi , i = 0, 1, · · · , n
Em cada subintervalo [xi , xi+1 ], g coincide com um polinómio de
grau 3
g ∈ C2 [a, b]
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Determinação do spline
Seja gi o polinómio de grau 3 que coincide com g em [x i , xi+1 ]. Neste
subintervalo a função gi ” é um polinómio de grau 1 e é determinada
por dois valores
mi = gi ”(xi )
e
mi+1 = gi ”(xi+1 )
Isto é, para qualquer x ∈ [xi , xi+1 ], tem-se
gi ”(x) = mi+1
com hi = xi+1 − xi
Cálculo Numérico - Interpolação e aproximção polinomial
x − xi
xi+1 − x
+ mi
hi
hi
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Integrando uma primeira, e depois uma segunda vez obtem-se
g0i (x) = mi+1
(x − xi )2
(xi+1 − x)2
− mi
+ ai
2hi
2hi
e
gi (x) = mi+1
(x − xi )3
(xi+1 − x)3
+ mi
+ ai (x − xi ) + bi
6hi
6hi
onde ai e bi são constantes a determinar
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Utilizando o facto que xi e xi+1 são pontos de interpolação, obtem-se
(
gi (xi ) = yi
gi (xi+1 ) = yi+1
⇐⇒

2
 y i = m i hi + b i
6

yi+1 = mi+1
h2i
6
+ a i hi + b i

 b = y − m h2i
i
i
i 6
⇐⇒
 a = 1 (y − y ) −
i
i
hi i+1
Cálculo Numérico - Interpolação e aproximção polinomial
hi
6 (mi+1
− mi )
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Portanto, para x ∈ [xi , xi+1 ], o spline cúbico gi escreve-se
2
mi
3 + mi+1 (x − x )3 + 1 y − m hi (x
gi (x) = 6h
(x
−
x)
i+1
i
i
i 6
i+1 − x)
6hi
hi
i
h2
+ h1i yi+1 − mi+1 6i (x − xi )
i = 0, 1, · · · , n − 1
Por outro lado, uma vez que g0 é contínua, para i = 1, 2, · · · , n − 1,
tem-se
g0i (xi ) = g0i−1 (xi )
⇐⇒
Cálculo Numérico - Interpolação e aproximção polinomial
−mi
hi
hi−1
+ ai = mi
+ ai−1
2
2
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Por conseguinte, para i = 1, · · · , n − 1, os coeficientes m i satisfazam
as equações
yi+1 − yi yi − yi−1
hi−1 mi−1 + 2(hi + hi−1 ) mi + hi mi+1 = 6
−
hi
hi−1
Tem-se n + 1 incógnitas m0 , m1 , · · · , mn−1 , mn e n − 1 equações.
Precisamos de mais duas condições. Existem varias possibilidades.
Por exemplo
m0 = m n = 0
Spline natural
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Observação. O sistema obtido pode ser escrito na forma matricial

 

m1
s1

 

 m   s 
2 

 2 

 

 .   . 



A  ..  =  .. 
,

 


 

 mn−2   sn−2 

 

mn−1
sn−1
onde
si = 6
Cálculo Numérico - Interpolação e aproximção polinomial
yi+1 − yi yi − yi−1
−
hi
hi−1
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
e onde A é uma matriz tridiagonal dependente de h i , i = 1, · · · , n − 1
dada por












2(h0 + h1 )
h1
0
0
···
0
h1
2(h1 + h2 )
h2
0
···
0
0
h2
2(h2 + h3 )
h3
···
0
..
.
..
.
..
.
..
.
..
.
..
.
0
···
hn−2
2(hn−2 + hn−1 )
hn−1
0
0
···
···
0
hn−2
2(hn−1 + hn )
Cálculo Numérico - Interpolação e aproximção polinomial












Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1
−5
−4
−3
−2
−1
0
1
2
3
4
5
Interpolação por spline natural da função de Runge com n = 5
Cálculo Numérico - Interpolação e aproximção polinomial
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
1
−5
−4
−3
−2
−1
0
1
2
3
4
5
Função de Runge: interpolação por spline cúbico com n = 10
Cálculo Numérico - Interpolação e aproximção polinomial
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Aproximação no sentido dos mínimos quadrados
Considere-se n + 1 pontos x0 , x1 , · · · , xn e medidas associadas y0 , y1 ,
· · · , yn . Para 1 ≤ m << n, procura-se um polinómio P m de grau m
que aproxima os dados no sentido dos mínimos quadrados, isto é tal
que
n
n
X
X
|yi − Pm (xi )|2 ≤
|yi − Qm (xi )|2
i=0
i=0
para qualquer polinómio Qm de grau m. Se existir, o polinómio Pm é
chamado aproximação no sentido dos mínimos quadrados dos dados
(xi , yi )i=0,··· ,n .
Uma vez que m < n, em geral não é possível garantir que P m (xi ) = yi
para qualquer i.
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
Se Pm (x) = a0 + a1 x + · · · + am xm , o problema dos mínimos
quadrados pode ser reescrito na forma
Φ(a0 , a1 , · · · , am ) =
min
bi , i=0,1,··· ,m
Φ(b0 , b1 , · · · , bm )
onde Φ é definida por
Φ(b0 , b1 , · · · , bm ) =
n
X
2
|yi − (b0 + b1 xi + · · · + bm xm
i )|
i=0
O vector (a0 , a1 , · · · , am ) onde Φ atinge o mínimo satisfaz as
condições necessárias de optimalidade
∂Φ
(a0 , a1 , · · · , am ) = 0
∂bi
Cálculo Numérico - Interpolação e aproximção polinomial
i = 0, 1, · · · , m
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Para simplificar, suponha que m = 1. Então
Φ(b0 , b1 )
=
n
X
y2i + b20 + b21 x2i + 2b0 b1 xi − 2b0 yi − 2b1 xi y2i
i=0
∂Φ
∂Φ
Das condições de optimalidade ∂b
(a0 , a1 ) = ∂b
(a0 , a1 ) = 0,
0
1
deduz-se

n
n
X
X



a0 (n + 1) + a1
xi =
yi








 a0
n
X
xi + a 1
i=0
Cálculo Numérico - Interpolação e aproximção polinomial
i=0
n
X
i=0
n
X
(xi )2 =
i=0
i=0
xi yi
Mínimos quadrados
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
No caso geral, obtem-se o sistema com (m + 1) × (m + 1) sistema
linear dado por

n
n
n
X
X
X

m

 a0 (n + 1) + a1
xi + · · · a m
(xi ) =
yi




i=0
i=0
i=0



n
n
n
n

X
X
X
X



xi + a 1
x2i + · · · am
(xi )m+1 =
xi yi
 a0
i=0















i=0
i=0
i=0
..
.
a0
n
X
i=0
(xi )m + a1
n
X
(xi )m+1 + · · · am
i=0
Cálculo Numérico - Interpolação e aproximção polinomial
n
X
i=0
(xi )2m =
n
X
i=0
(xi )m yi
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
5
Função de Runge: aproximação pelo método dos mínimos quadrados com m = 6 e n = 20
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
5
Função de Runge: aproximação pelo método dos mínimos quadrados com m = 6 e n = 100
Cálculo Numérico - Interpolação e aproximção polinomial
Lagrange
Diferenças de Newton
Erro de interpolação
Fenômeno de Runge
Interpolação por intervalo
Splines
Mínimos quadrados
1.0
0.5
−5
−4
−3
−2
−1
0
1
2
3
4
5
Função de Runge: aproximação pelo método dos mínimos quadrados com m = 10 e n = 100
Cálculo Numérico - Interpolação e aproximção polinomial
Download

INTERPOLAÇÃO E APROXIMAÇÃO POLINOMIAL Nadir Arada