Escolar Documentos
Profissional Documentos
Cultura Documentos
Interpolação polinomial
Introdução
x y
x0 y0
x1 y1
x2 y2
... ...
xn yn
O gráfico a seguir mostra a “população, em mil habitantes, em uma cidade” (y) nos anos
(x) de 1980 a 2010. Qual o valor aproximado da população em 2003, ou seja, o valor de
y(2003)?
População
Ano
(em mil)
1980 620
1990 850
2000 1600
2010 2200
Para responder à pergunta, precisamos ajustar algum modelo matemático aos pontos
mostrados no gráfico e algum desses modelos poderiam ser
Interpolação vs extrapolação
Na interpolação polinomial são usadas apenas polinômios (de grau no máximo 𝑛) para
aproximar a função 𝑦 = 𝑓(𝑥)
𝑦 = 𝑎𝑛 𝑥 𝑛 + 𝑎𝑛−1 𝑥 𝑛−1 + ⋯ + 𝑎2 𝑥 2 + 𝑎1 𝑥 + 𝑎0
𝑃1 (𝑥) = 𝑎0 + 𝑎1 𝑥 … (1)
𝑎0 + 𝑎1 𝑥0 = 𝑦0 1 𝑥0 𝑎0 𝑦0
{ [ ] ∙ [𝑎 ] = [𝑦 ] → 𝐴𝑥 = 𝑏
𝑎0 + 𝑎1 𝑥1 = 𝑦1 → 1 𝑥1 1 1
lembre-se de que os
𝐝𝐞𝐭(𝑨) = (𝟏 ⋅ 𝒙𝟏 ) − (𝟏 ⋅ 𝒙𝟎 ) = 𝒙𝟏 − 𝒙𝟎 ≠ 𝟎
pontos x´s são distintos
EXEMPLO 1 - Dados os pontos (0.52 , 0.5) e (1.57 , 1) da função f(x) = sen(x)
determine o valor aproximado de seno de 50 graus usando um polinômio linear.
solução -------------------------------------------------------------------------------------------------------
𝐸𝑇 (𝒙
̃) = 𝑉𝑒𝑥𝑎𝑡𝑜 − 𝑉𝑎𝑝𝑟𝑜𝑥 = 𝑓(𝒙
̃) − 𝑃1 (𝒙
̃)
Repare que o tamanho do erro depende do valor da localização do ponto 𝑥̃, sendo zero,
quando coincidir com 𝑥0 e 𝑥1 . Assim podemos reescrever o 𝐸𝑇 (𝒙
̃) como
𝐸𝑇 (𝒙
̃) = 𝐻(𝒙
̃ − 𝑥0 )(𝒙
̃ − 𝑥1 )
onde H é uma constante a ser obtida. É possível demonstrar que esta constante é
𝑓 ′′ (𝜀)
𝐻= , 𝜀 ∈ [𝑥0 ; 𝑥1 ]
2!
Assim, o erro de truncamento é
𝒇′′ (𝜺)
𝐸𝑇 (𝒙
̃) = (𝒙
̃ − 𝑥0 )(𝒙
̃ − 𝑥1 ) ⋅ 𝜀 ∈ [𝑥0 ; 𝑥1 ] … (2)
2!
𝑃2 (𝑥) = 𝑎0 + 𝑎1 𝑥 + 𝑎2 𝑥 2 … (3)
𝑎0 + 𝑎1 𝑥0 + 𝑎2 𝑥02 = 𝑦0 1 𝑥0 𝑥02 𝑎0 𝑦0
2
{𝑎0 + 𝑎1 𝑥1 + 𝑎2 𝑥1 = 𝑦1 → [1 𝑥1 𝑥1 ] ∙ [𝑎1 ] = [𝑦1 ] → 𝐴𝑥 = 𝑏
2
𝑎0 + 𝑎1 𝑥2 + 𝑎2 𝑥22 = 𝑦2 1 𝑥2 𝑥22 𝑎2 𝑦2
Como os pontos x´s dados são distintos, temos det (𝑋) ≠ 0 e, dessa forma, o sistema
linear terá solução única.
OBS:
A matriz de Vandermonde é uma matriz em que os termos de cada coluna estão
em progressão geométrica.
Matriz de Vandermonde
1 2 22 23 1 2 4 8
𝑉 = [1 4 42 3
4 ] = [1 4 16 64
]
1 0 02 03 1 0 0 0
1 3 32 33 1 3 9 27
cujo determinante é
det(𝑉) = (2 − 4)(2 − 0)(2 − 3)(4 − 0)(4 − 3)(0 − 3) = −96
Erro de truncamento
𝑓 ′′′ (𝜀)
𝐸𝑇 (𝒙
̃) = (𝒙
̃ − 𝑥0 )(𝒙
̃ − 𝑥1 )(𝒙
̃ − 𝑥2 ) ⋅ 𝜀 ∈ [𝑥0 ; 𝑥2 ] … (4)
3!
Generalizando
Para um polinômio interpolador de grau no máximo 𝑛, o erro de truncamento é
𝑓 (𝑛+1) (𝜀)
𝐸𝑇 (𝒙
̃) = (𝒙
̃ − 𝑥0 )(𝒙
̃ − 𝑥1 ) … (𝒙
̃ − 𝑥𝑛 ) ⋅ … (5)
(𝑛 + 1)!
𝑥 𝑦
0 -2
1.2 -0.32
1.4 0.52
solução ----------------------------------------------------------------------------------------------
a). 𝑃2 (𝑥) = 𝑎0 + 𝑎1 𝑥 + 𝑎2 𝑥 2
𝑎0 + 0𝑎1 + 02 𝑎2 = −2 1 0 02 𝑎0 −2
{𝑎0 + 1.2𝑎1 + 1.22 𝑎2 = −0.32 → [1 2 ] ∙ [𝑎1 ] = [−0.32]
1.2 1.2
𝑎0 + 1.4𝑎1 + 1.42 𝑎2 = 0.52 1 1.4 1.42 𝑎2 0.52
Agora, basta resolver o sistema linear acima para encontrar a0, a1 e a2. Usando o método
de escalonamento de Gauss na matriz aumentada
1 0 0 −2 𝑜𝑝𝑒𝑟𝑎çõ𝑒𝑠 1 0 0 −2
𝑒𝑙𝑒𝑚𝑒𝑛𝑡𝑎𝑟𝑒𝑠
[1 1.2 1.44 −0.32] → [0 1 0 −1]
1 1.4 1.96 0.52 0 0 1 2
b). Se f(x)= 2x2 - x - 2, então f’(x) = 4x -1, f’’(x) = 4 e f’’’(x) = 0, o erro de truncamento
será igual a zero. Veja que o polinômio quadrático é IGUAL ao f(x).
0
𝐸𝑇 (𝟎. 𝟖) = (𝟎. 𝟖 − 0)(𝟎. 𝟖 − 1.2)(𝟎. 𝟖 − 1.4) ⋅ =0
6
EXEMPLO 3 - Dados três pontos (0.52, 0.5), (1.57, 1) e (1.92, 0.94) da função
𝑓(𝑥) = 𝑠𝑒𝑛 (𝑥)
solução ----------------------------------------------------------------------------------------------------
a)
f(x) P2(x) = -0.125 + 1.44x -0.46x2
# No Octave
A = [1, 0.52, 0.52^2 ; 1, 1.57, 1.57^2 ; 1, 1.92, 1.92^2]
b = [0.5 ; 1; 0.94]
M = [A b]
rref(M) # escalonamento Gauss-Jordan
c) Erro de truncamento
𝑓′′′(𝜀)
𝐸𝑇 (𝒙) = (𝒙 − 𝑥0 )(𝒙 − 𝑥1 )(𝒙 − 𝑥2 ) ⋅ ( )
3!
−cos(𝜀)
𝐸𝑇 (𝟎. 𝟖𝟕) = (𝟎. 𝟖𝟕 − 0.52)(𝟎. 𝟖𝟕 − 1.57)(𝟎. 𝟖𝟕 − 1.92) ⋅ ( )
3!
cos(0.52)
|𝐸𝑇 (𝟎. 𝟖𝟕)| ≤ |(𝟎. 𝟖𝟕 − 0.52)(𝟎. 𝟖𝟕 − 1.57)(𝟎. 𝟖𝟕 − 1.92) ⋅ ( )| = 0.037
6
Gráfico de cosseno no intervalo (0.52 , 1.92)
0.52 1.92
2
EXEMPLO 4 - Determine a função interpoladora quadrática que se aproxima da
função f(x) usando três pontos no intervalo 𝑥 = [0 ; 0.78] igualmente espaçados
solução --------------------------------------------------------------------------------------------------------
RESPOSTA: 𝑃2 (𝑥) = 0.45𝑥 2 + 0.37𝑥
EXEMPLO 5 - Considerando a população (em mil) de uma cidade nos anos de 1980 a
2010, dê o valor aproximado da população em 2003 usando:
População
Ano
(em mil)
1980 620
1990 850
2000 1600
2010 2200
EXEMPLO 6 - A função f(x) apresenta o gráfico abaixo no intervalo de –1 a +1.