Você está na página 1de 29

Interpolação

Crispiniano Furtado e Olga Lima

19 de Maio de 2020
Índice

1 Interpolação
Introdução
Interpolação de Lagrange
Interpolação de Newton
Diferenças divididas
Interpolação inversa e aplicação
Erro de interpolação

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 2 / 29


Introdução
Problema de interpolação - em que consiste?
Dado um conjunto de pares ordenados (x0 , y0 ), (x1 , y1 ), . . . , (xn , yn ),
determinar uma função g, designada função interpoladora, tal que

g(xi ) = yi , i = 0, 1, 2, . . . , n

Designação:
Nós de interpolação: x0 , x1 , x2 , . . . , xn (Sempre distintos entre si)
Valores nodais: y0 , y1 , y2 , . . . , yn
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 3 / 29
Introdução
Questões importantes
Como escolher a classe de funções interpoladoras a utilizar?
Como determinar concretamente a função interpoladora?
...

Aplicações da interpolação
Cálculo de funções fornecidas por tabelas quando se pretende avaliar
a função em pontos não tabelados;
Quando se conhecem apenas alguns dos valores de uma função, por
exemplo obtidos experimentalmente;
Aproximação de funções cujo cálculo seja complexo ou exija grande
esforço;
Base de muitos métodos numéricos.

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 4 / 29


Interpolação polinomial
Uma função p diz-se polinomial de grau n se puder ser escrita na forma

p(x ) = an x n + an−1 x n−1 + . . . + a1 x + a0


onde n ∈ N0 e an 6= 0.

Se p(x ) = 0, o polinómio diz-se nulo, e o seu grau é, por convenção, −∞.

Justificações da utilização da interpolação polinomial


O seu cálculo é feito com um número finito de multiplicações e somas
As operações de derivação e primitivação são simples
São funções de classe C ∞
Aproximam tanto quanto se queira qualquer função contínua num
intervalo finito

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 5 / 29


Preliminares
Teorema 1 - Weierstrass
Seja [a, b] um intervalo real e f uma função contínua em [a, b]. Então,
qualquer que seja  > 0, existe uma função polinomial p tal que

max |f (x ) − p(x )| < 


x ∈[a,b]

Nota: O teorema a afirma a existência de polinómios que aproximam tanto


quanto se queira qualquer funçâo contínua (num intervalo limitado). Mas
como determinar tais polinómios?
Em determinadas circunstâncias, a interpolação produz polinómios
aproximantes.
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 6 / 29
Formas polinomiais
1. Forma de potências simples
p(x ) = a0 + a1 x + a2 x 2 + . . . + an x n
y ← an
Algoritmo de Horner → Para i = n − 1 até 0 fazer
y = ai + y · x
2. Forma de potências centradas
p(x ) = a0 + a1 (x − c) + a2 (x − c)2 + . . . + an (x − c)n
3. Forma de Newton
p (x ) = ã0 +ã1 (x − c1 )+ã2 (x − c1 ) (x − c2 )+. . .+ãn (x − c1 ) . . . (x − cn )
y ← an
Algoritmo de Horner → Para i = n − 1 até 0 fazer
y = ai + y · (x − ci+1 )
Obs: As constantes c, c1 , c2 , . . . , cn são designadas por centros.
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 7 / 29
Interpolação Polinomial

Teorema 2 - Factorização de polinómios


Se z1 , z2 , . . . , zk forem zeros distintos do polinómio p, então

p(x ) = (x − z1 ) · (x − z2 ) · · · (x − zk ) · r (x )

onde r é também um polinómio.

Teorema 3 - Unicidade e existência do polinómio interpolador


Dados os nós distintos x0 , x1 , . . . , xn e os valores nodais y0 , y1 , . . . , yn ,
existe um e um só polinómio p de grau menor ou igual a n que interpola
os valores yi nos nós xi , ou seja, tal que

p(xi ) = yi , i = 0, 1, . . . , n.

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 8 / 29


Interpolação polinomial - Forma de Lagrange

Os polinómios (de grau n) definidos pela expressão


n
Y x − xi
Lk (x ) =
i=0
xk − xi
i6=k

designam-se por polinómios de Lagrange, relativos aos nós x0 , x1 , x2 ,


. . ., xn , e verificam as relações

Lk (xj ) = δkj ,

onde δkj é designado por delta de Kronecker, ou seja,


(
1 se k = j
δkj = .
0 6 j
se k =

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 9 / 29


Interpolação polinomial - Forma de Lagrange
Comportamento dos polinómios de Lagrange

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 10 / 29


Interpolação polinomial - Forma de Lagrange
Teorema 4 - Polinómio interpolador na forma de Lagrange
O polinómio p, de grau menor ou igual a n, que interpola o conjunto de
valores y0 , y1 , · · · , yn nos nós distintos x0 , x1 , x2 , . . ., xn é dado por
n
X
p (x ) = yk Lk (x )
k=0

Exemplo
Pretende-se determinar o polinómio de grau menor ou igual a 3 que
interpola os valores da seguinte tabela:
x −1 0 2 3
y 6 −12 18 24
Obs.: De acordo com a tabela, x0 = −1, x1 = 0, x2 = 2, x3 = 3, y0 = 6,
y1 = −12, y2 = 18, y3 = 24.

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 11 / 29


Interpolação polinomial - Forma de Lagrange

Exemplo - Cont.
(x − x1 ) (x − x2 ) (x − x3 ) 1
L0 (x ) = = − x (x − 2) (x − 3)
(x0 − x1 ) (x0 − x2 ) (x0 − x3 ) 12
(x − x0 ) (x − x2 ) (x − x3 ) 1
L1 (x ) = = (x + 1) (x − 2) (x − 3)
(x1 − x0 ) (x1 − x2 ) (x1 − x3 ) 6
(x − x0 ) (x − x1 ) (x − x3 ) 1
L2 (x ) = = − (x + 1) x (x − 3)
(x2 − x0 ) (x2 − x1 ) (x2 − x3 ) 6
(x − x0 ) (x − x1 ) (x − x2 ) 1
L3 (x ) = = (x + 1) x (x − 2)
(x3 − x0 ) (x3 − x1 ) (x3 − x2 ) 12

p (x ) = 6L0 (x ) − 12L1 (x ) + 18L2 (x ) + 24L3 (x )


7 29
= − x 3 + x 2 − 12
2 2

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 12 / 29


Interpolação polinomial - Forma de Lagrange

Algumas considerações:
Muito fácil.
Uma mudança da posição ou do número dos nós altera
completamente os polinómios. Torna-se necessário recalcular todos os
polinómios Lk .
Se um ou mais valores nodais forem alterados, os polinómios Lk
mantêm-se, sendo apenas necessário recalcular a combinação destes
para obter p(x ).

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 13 / 29


Interpolação polinomial - Forma de Newton

Tomando como centros os nós distintos x0 , x1 , . . . ,xn−1 , o polinómio


interpolador p é obtido na forma de Newton da seguinte forma:

p (x ) = a0 + a1 W0 (x ) + . . . + an Wn−1 (x )
onde
W0 (x ) = x − x0
W1 (x ) = (x − x0 ) (x − x1 )
...
Wn−1 (x ) = (x − x0 ) (x − x1 ) · · · (x − xn−1 )
Wi , i = 0, 1, . . . , n − 1 são designados por polinómios nodais.

Questão: Como determinar os coeficientes ai ?

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 14 / 29


Interpolação polinomial - Forma de Newton
Forma recursiva de obter o polinómio - Forma de Newton
Partindo do polinómio interpolador na forma de Newton,
p (x ) = a0 + a1 W0 (x ) + . . . + an Wn−1 (x ), definam-se os polinómios p0 ,
p1 , . . . , pn da seguinte forma:

p0 (x ) = a0
p1 (x ) = a0 + a1 W0 (x ) ,
p2 (x ) = a0 + a1 W0 (x ) + a2 W1 (x ) ,
...

p0 (x ) = a0
pk (x ) = pk−1 (x ) + ak Wk−1 (x ) , k = 1, . . . , n.

o polinómio pk apenas depende dos valores a0 , . . . , ak ;


o polinómio interpolador p será dado por pn .
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 15 / 29
Interpolação polinomial - Forma de Newton
Teorema 5 - Cálculo dos coeficientes a0 , . . . , ak
Fazendo a0 = y0 e

yk − pk−1 (xk )
ak = , k = 0, 1, 2, . . . , n
Wk−1 (xk )

então o polinómio pk interpola os valores (yj )kj=0 nos nós (xj )kj=0 , para
k = 0, 1, 2, . . . , n.

Exemplo
Pretende-se determinar o polinómio na forma de Newton, de grau menor
ou igual a 2, que interpola os valores da seguinte tabela:
x −1 2 3
y 1 3 5
Obs.: De acordo com a tabela, x0 = −1, x1 = 2, x2 = 3, y0 = 1, y1 = 3 e
y2 = 5.
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 16 / 29
Interpolação polinomial - Forma de Newton
Exemplo - Cont.
Nó 0:
p0 (x ) = y0 = 1
W0 (x ) = x − x0 = x + 1
Nó 1:
y1 − p0 (x1 ) 2
p1 (x ) = p0 (x ) + W0 (x ) = 1 + (x + 1)
W0 (x1 ) 3
W1 (x ) = (x − x0 ) (x − x1 ) = (x + 1) (x − 2)
Nó 2:
y2 − p1 (x2 )
p2 (x ) = p1 (x ) + W1 (x ) =
W1 (x2 )
2 1
1+ (x + 1) + (x + 1) (x − 2)
3 3
O polinómio interpolador na forma de Newton é dado por

p (x ) = p2 (x ) .
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 17 / 29
Interpolação polinomial - Forma de Newton

Algumas considerações:
a consideração de novos nós apenas exige o cálculo dos coeficientes
adicionais, aproveitando os cálculos entretanto já efectuados.
Não interessa a ordem pela qual os nós são apresentados.

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 18 / 29


Diferenças divididas

Sejam m, k ∈ Z+ . Seja pm,k o polinómio de grau menor ou igual a k que


interpola os valores ym , ym+1 , . . . , ym+k nos nós xm , xm+1 , . . . , xm+k .
Na forma de Newton,

pm,k (x ) = am,0 + am,1 (x − xm ) + . . . + am,k (x − xm ) . . . (x − xm+k−1 ) .

Pela constução do polinómio interpolador na forma de Newton, conclui-se


que am,j , para j = 0, 1, . . . , k depende apenas dos valores
ym , ym+1 , . . . , ym+j e dos nós xm , xm+1 , . . . , xm+j . Por isso, é representado
por
am,j = y [xm , . . . , xm+j ]
e é designado por diferença dividida (de ordem j nos nós xm , . . . , xm+j ).

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 19 / 29


Diferenças divididas
Teorema 6 - Relação entre diferenças divididas
As diferenças divididas satisfazem y [xj ] = yj , com 0 ≤ j ≤ n e

y [xm+1 , . . . xk+1 ] − y [xm , . . . xk ]


y [xm , . . . xk+1 ] =
xk+1 − xm

com 0 ≤ m ≤ k ≤ n − 1.

Polinómio interpolador na Forma de Newton


p (x ) = y [x0 ]+y [x0 , x1 ] (x − x0 )+. . .+y [x0 , . . . xn ] (x − x0 ) . . . (x − xn−1 )
onde
y [x0 ] = y0
y [x1 ] − y [x0 ]
y [x0 , x1 ] =
x1 − x0
y [x1 , x2 ] − y [x0 , x1 ]
y [x0 , x1 , x2 ] =
x2 − x0
...
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 20 / 29
Diferenças divididas - Forma tabular

Exemplo com 4 nós


x y [·] y [·, ·] y [·, ·, ·] y [·, ·, ·, ·]
x0 y0
y [x0 , x1 ]
x1 y1 y [x0 , x1 , x2 ]
y [x1 , x2 ] y [x0 , x1 , x2 , x3 ]
x2 y2 y [x1 , x2 , x3 ]
y [x2 , x3 ]
x3 y3

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 21 / 29


Exemplo (anterior)
Determine o polinómio na forma de Newton, de grau menor ou igual a 2,
que interpola os valores da seguinte tabela, utilizando diferenças dividas:
x −1 2 3
y 1 3 5
Resolução:
x y [·] y [·, ·] y [·, ·, ·]
−1 1
2
y [−1, 2] =
3
1
2 3 y [−1, 2, 3] =
3
y [2, 3] = 2
3 5

2 1
p (x ) = 1 + (x + 1) + (x + 1) (x − 2)
3 3
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 22 / 29
Interpolação inversa
Sejam f : [a, b] → R, (xi )ni=0 nós distintos em [a, b] e yi = f (xi ) ,
i = 0, 1, . . . , n.
Interpolação directa de f Vs Interpolação inversa de f
Directa: consiste em obter o polinómio p de menor grau tal que

p(xi ) = yi , i = 0, 1, . . . , n.

Nós: x0 , x1 , . . . , xn
Valores nodais: y0 , y1 , . . . , yn

Inversa: no caso em que f admite inversa, consiste em obter o polinómio


q de menor grau tal que

q(yi ) = xi , i = 0, 1, . . . , n.

Nós: y0 , y1 , . . . , yn
Valores nodais: x0 , x1 , . . . , xn
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 23 / 29
Interpolação inversa - Aplicação
Uma das aplicações da interpolação inversa é a determinação de zeros de
funções.

Exemplo
3
Determine uma aproximação do zero de f (x ) = sin (x ) − e −x em [0, 1].
2
Resolução:
Como f (0) = −1 e f (1) = 0.89433 e f é contínua em [0, 1], então
existe s ∈ [0, 1] tal que f (s) = 0.
Como f 0 (x ) > 0 em [0, 1], então f é estritamente crescente em [0, 1]
e, por isso, f admite inversa nesse intervalo.
∴ f (s) = 0 ⇔ s = f −1 (0).
Utiliza-se a interpolação inversa.
x 0 0.4 0.6 1
y = f (x ) −1.00000 −0.08619 0.29815 0.89433

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 24 / 29


Interpolação inversa - Aplicação
Exemplo - Cont.
y x [·] x [·, ·] x [·, ·, ·] x [·, ·, ·, ·]
−1.00000 0
0.43773
−0.08619 0.4 0.06366
0.52037 0.04745
0.29815 0.6 0.15356
0.67094
0.89433 1
Polinómio interpolador:

p(y ) =0.43773(y + 1) + 0.06366(y + 1)(y + 0.08619)


+0.04745(y + 1)(y + 0.08619)(y − 0.29815)

Aproximação do zero: s = f −1 (0) ≈ p(0) = 0.44200.

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 25 / 29


Erro de interpolação

Sejam f : [a, b] → R e os nós x0 , x1 , . . . , xn em [a, b].

Seja p o polinómio de menor grau que interpola f nesses nós.

Pode ser interessante analisar em que medida o polinómio interpolador se


aproxima da função, obviamente que em pontos distintos dos nós de
interpolação.

Qual o erro que se comete ao aproximar f (x ) por p(x )?

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 26 / 29


Erro de interpolação
Teorema - Diferenças divididas e derivadas
Sejam f ∈ C k ([a, b]; R) e {x0 , x1 , . . . , xk } um conjunto de nós distintos
em [a, b]. Então existe ξ ∈ [a, b] tal que

1 (k)
f [x0 , x1 , . . . , xk ] = f (ξ).
k!

Teorema - Erro de interpolação


Sejam f ∈ C n+1 ([a, b]; R) e p o polinómio, de grau menor ou igual a n,
que interpola f nos nós distintos (xi )ni=0 , pertencentes a [a, b]. Então,
para qualquer x ∈ [a, b] existe ξ ∈ [a, b] tal que

1
e(x ) ≡ f (x ) − p(x ) = f (n+1) (ξ)Wn (x )
(n + 1)!

onde Wn (x ) = (x − x0 ) (x − x1 ) . . . (x − xn ) .

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 27 / 29


Erro de interpolação

Majorante do erro absoluto


Na expressão do erro, o ponto ξ (que depende de x e dos nós de
interpolação) é desconhecido.

1 (n+1)

|e(x )| =
f (ξ)Wn (x )
(n + 1)!
1
≤ · max f (n+1) (z) · max |Wn (z)|

(n + 1)! z∈[a,b] z∈[a,b]

hn+1
≤ · max f (n+1) (z) (1)

4(n + 1) z∈[a,b]

A expressão em (1) deve-se quando os nós estão ordenados de forma


crescente, sendo h o espaçamento máximo entre nós consecutivos. Válida
para todo o x ∈ [x0 , xn ].

Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 28 / 29


Erro de interpolação
Exemplo
Pretende-se construir uma tabela da função f (x ) = tan(x ) no intervalo
[0, π/4] com nós equidistantes, por forma a que o erro absoluto cometido
quando se interpola linearmente nesta tabela não exceda 5 × 10−5 . Qual o
espaçamento mínimo entre os nós?
Resolução: O erro máximo absoluto na interpolação linear (n = 1) entre
nós consecutivos será
h2
· max f 00

≤
4×2
Tem-se ainda que f 00 (x ) = [1 + tan2 (x )]0 = 2 tan(x )(1 + tan2 (x )), cujo
valor máximo em [0, π/4] é 4 (para x = π/4). Impondo a condição

h2
× 4 ≤ 5 × 10−5
4×2

obtem-se h ≤ 10−2 (corresponde a um número de intervalos superior


π/4
10−2
≈ 78, 5).
Crispiniano Furtado e Olga Lima Interpolação 19 de Maio de 2020 29 / 29

Você também pode gostar