Interpolacao

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 18

Disciplina: Métodos Numéricos Computacionais

Interpolação
Profa Aline Brum Loreto e Profa Ana Luisa Soubhia

Neste texto, os métodos de interpolação serão abordados. Primeiramente, vamos estudar o


método de interpolação que envolve resolução de sistemas lineares. Depois, vamos estudar o
método de Lagrange e o método de Newton. Por fim, vamos trabalhar com o procedimento da
interpolação inversa. Na última seção, vocês encontrarão exercı́cios para praticar.

1 Introdução
A Tabela 1 relaciona calor especı́fico da água e temperatura. Vamos supor que desejamos
saber o calor especı́fico da água com temperatura 32o C. Ou, ainda, queremos determinar a
temperatura para qual o calor especı́fico é 0.998737. Para isso, podemos utilizar a interpolação.

Temperatura (o C) 20 25 30 35 40 45 50
Calor especı́fico 0.99907 0.99852 0.99826 0.99818 0.99828 0.99849 0.99878

Tabela 1: Calor especı́fico da água e temperatura

Interpolar uma função f (x) consiste em aproximar essa função por uma função g(x), esco-
lhida dentro de uma classe de funções definida a priori, que satisfaça algumas propriedades. A
função g(x) é, então, usada no lugar da função f (x).
A interpolação pode ser usada quando temos os valores numéricos de uma função não
conhecida para um conjunto de pontos, e desejamos obter o valor dessa função em um ponto
não calculado. Além disso, podemos utilizar a técnica de interpolação quando a função estudada
tem uma complexidade e operações como diferenciação e/ou integração são difı́ceis de serem
executadas.

1
2 Conceito de interpolação
Sejam (n+1) pontos distintos denominados nós (x0 , x1 , . . . , xn ) e os valores f (x0 ), f (x1 ), . . . , f (xn ),
a interpolação consiste em obter uma função g(x) de forma que:


 g(x0 ) = f (x0 )

 g(x1 ) = f (x1 )

..


 .

g(xn ) = f (xn )

isto é, o valor de g(xi ) é igual ao valor de f (xi ) para i = 0, 1, . . . , n. Esse fato por ser observado
na Figura 1. Notem que, a função g(x) é diferente da curva da função f (x), porém essas
duas funções cruzam os pontos predefinidos. Nesta disciplina, vamos estudar a interpolação
polinomial, ou seja, g(x) será um polinômio.

Figura 1: Interpolação

Dados os pontos (x0 , f (x0 )), (x1 , f (x1 )), . . . , (xn , f (xn )), no caso da interpolação polinomial
o objetivo é aproximar a função f (x) por um polinômio de grau menor ou igual a n (pn (x)), de
forma que:

f (xi ) = pn (xi ) = a0 + a1 xi + a2 x2i + . . . + an xni , i = 0, 1, 2, . . . , n.

3 Métodos de interpolação
Neste texto, vamos estudar três métodos de obtenção do polinômio interpolador. O primeiro
deles consiste em resolução de sistema linear. Depois, vamos estudar o método de Lagrange.

2
Por fim, vamos estudar o método de Newton.

3.1 Resolução de sistema linear


Exemplo 1: Encontrar o polinômio de grau menor ou igual a 2 que interpola os dados apre-
sentados na Tabela 2.

x −1 0 2
f (x) 4 1 −1

Tabela 2: Exemplo 1

O objetivo é obter um polinômio com n ≤ 2, isto é:

p2 (x) = a0 + a1 x + a2 x2 . (1)

Para isso, vamos analisar as seguintes igualdades:



 p2 (x0 ) = f (x0 )

p2 (x1 ) = f (x1 ) (2)

p2 (x2 ) = f (x2 )

A partir da Tabela 2, temos que x0 = −1, f (x0 ) = 4, x1 = 0, f (x1 ) = 1, x2 = 2 e


f (x2 ) = −1. Assim, a partir da Equação (1) e da Equação (2), temos:

 p2 (−1) = f (−1) = 4 ⇐⇒ a0 − a1 + a2 = 4

p2 (0) = f (0) = 1 ⇐⇒ a0 = 1

p2 (2) = f (2) = −1 ⇐⇒ a0 + 2a1 + 4a2 = −1

Ou seja, temos o seguinte sistema linear para resolver:



 a0 − a1 + a2 = 4

a0 = 1

a0 + 2a1 + 4a2 = −1

cuja solução é dada por:


7 2
a0 = 1, a1 = − e a2 = .
3 3
Substituindo os valor obtidos para a0 , a1 e a2 na Equação (1), temos o seguinte polinômio
interpolador:
7 2
p2 (x) = 1 − x + x2 .
3 3

3
Observem que, como esperado, p2 (0) = f (0) = 1. O mesmo deve ocorrer com os outros pontos
apresentados na Tabela 2. Vale salientar que, como estudamos em textos anteriores, nem
sempre é simples a resolução do sistema linear para se obter o polinômio. Além disso, a solução
pode não ser exata.
Exemplo 2: Encontrar o polinômio de grau menor ou igual a 3 que interpola os dados da
Tabela 3.

x 0.1 0.2 0.3 0.4


f (x) 5 13 −4 −8

Tabela 3: Exemplo 2

O objetivo é obter um polinômio com n ≤ 3, ou seja:

p3 (x) = a0 + a1 x + a2 x2 + a3 x3 . (3)

Neste caso, temos as seguintes igualdades:





 p3 (x0 ) = f (x0 )

 p (x ) = f (x )
3 1 1
(4)
 p3 (x2 ) = f (x2 )



 p (x ) = f (x )
3 3 3

A partir da Tabela 3, temos que x0 = 0.1, f (x0 ) = 5, x1 = 0.2, f (x1 ) = 13, x2 = 0.3,
f (x2 ) = −4, x3 = 0.4 e f (x3 ) = −8. Com isso, a partir da Equação (3) e da Equação (4),
obtemos: 


 p3 (0.1) = f (0.1) = 5 ⇐⇒ a0 + 0.1a1 + 0.01a2 + 0.001a3 = 5

 p (0.2) = f (0.2) = 13 ⇐⇒ a + 0.2a + 0.04a + 0.008a = 13
3 0 1 2 3


 p3 (0.3) = f (0.3) ⇐⇒ a0 + 0.3a1 + 0.09a2 + 0.027a3 = −4

 p (0.4) = f (0.4) ⇐⇒ a + 0.4a + 0.16a + 0.064a = −8
3 0 1 2 3

Ou seja, temos o seguinte sistema linear de quatro equações e quatro incógnitas para resolver:



 a0 + 0.1a1 + 0.01a2 + 0.001a3 =5

 a + 0.2a + 0.04a + 0.008a
0 1 2 3 = 13


 a0 + 0.3a1 + 0.09a2 + 0.027a3 = −4

 a + 0.4a + 0.16a + 0.064a
0 1 2 3 = −8

Se resolvermos esse sistema utilizando o método de eliminação de Gauss, com uma aritmética
de ponto flutuante com três dı́gitos na mantissa, obtemos o seguinte polinômio:

p3 (x) = −0.66 × 102 + (0.115 × 104 )x − (0.505 × 104 )x2 + (0.633 × 104 )x3 .

4
Note que, para x = 0.4, p3 (0.4) = −10 e f (0.4) = −8, ou seja, p3 (0.4) 6= f (0.4). Isso ocorre,
pois no processo de eliminação de Gauss a matriz escalonada tem números muito próximos de
zero. Com isso, durante a execução do método, pode haver problemas de arredondamento.
Exemplo 3: A Tabela 4 fornece valores da função f (x) = ex , a partir da qual se deseja
obter uma aproximação para o ponto x = 1.32.

x 1.3 1.4 1.5


ex 3.669 4.055 4.482

Tabela 4: Exemplo 3

Neste caso, como temos 3 pontos fornecidos (x0 = 1.3, f (x0 ) = 3.669, x1 = 1.4, f (x1 ) =
4.055, x2 = 1.5 e f (x2 ) = 4.482), podemos obter um polinômio de grau menor ou igual a 2.
Com isso, a partir da Equação (1) e da Equação (2), temos:

2
 p2 (1.3) = f (1.3) = 3.669 ⇐⇒ a0 + a1 (1.3) + a2 (1.3) = 3.669

p2 (1.4) = f (1.4) = 4.055 ⇐⇒ a0 + a1 (1.4) + a2 (1.4)2 = 4.055

p2 (1.5) = f (1.5) = 4.482 ⇐⇒ a0 + a1 (1.5) + a2 (1.5)2 = 4.482

Ou seja, temos o seguinte sistema linear 3 × 3 para resolver:



2
 a0 + a1 (1.3) + a2 (1.3) = 3.669

a0 + a1 (1.4) + a2 (1.4)2 = 4.055

a0 + a1 (1.5) + a2 (1.5)2 = 4.482

com solução dada por:

a0 = 2.383, a1 = −1.675 e a2 = 2.05.

Substituindo os valor obtidos para a0 , a1 e a2 na Equação (1), temos o seguinte polinômio


interpolador:
p2 (x) = 2.383 − 1.675x + 2.05x2 .

Por fim, o objetivo é calcular a aproximação para o ponto x = 1.32, logo:

p2 (1.32) = 2.383 − 1.675(1.32) + 2.05(1.32)2 = 3.744.

Quando utilizamos a função f (x) = ex , temos f (1.32) = e1.32 = 3.743.

5
3.2 Método de Lagrange
Sejam (n + 1) pontos distintos denominados nós (x0 , x1 , . . . , xn ) e os valores de yi = f (xi )
com f (x0 ), f (x1 ), . . . , f (xn ). A interpolação pelo método de Lagrange consiste em obter um
polinômio pn (x) de forma que:

pn (x) = y0 L0 (x) + y1 L1 (x) + . . . + yn Ln (x),

onde os polinômios Lk (x) são de grau n. Ou seja, como os yi são dados, no método de Lagrange
devemos determinar os polinômios Lk (x).
Para este método, o objetivo é que as igualdades pn (xi ) = yi sejam satisfeitas, isto é:

pn (xi ) = y0 L0 (xi ) + y1 L1 (xi ) + . . . + yn Ln (xi ) = yi .

Para isso, temos que:

(x − x0 )(x − x1 ) . . . (x − xk−1 )(x − xk+1 ) . . . (x − xn )


Lk (x) = .
(xk − x0 )(xk − x1 ) . . . (xk − xk−1 )(xk − xk+1 ) . . . (xk − xn )

Note que, Lk (xk ) = 1 e Lk (xi ) = 0 se i 6= k.


Enfim, a forma de Lagrange para o polinômio interpolador é dada por:
n
Y
(x − xj )
n
X j=0,j6=k
pn (x) = yk Lk (x) com Lk (x) = n . (5)
Y
k=0
(xk − xj )
j=0,j6=k

Exemplo 4: Sejam os dados apresentados na Tabela 2, ou seja, x0 = −1, y0 = f (x0 ) = 4,


x1 = 0, y1 = f (x1 ) = 1, x2 = 2 e y2 = f (x2 ) = −1. Vamos interpolar os três pontos utilizando
o método de Lagrange. O objetivo é obter um polinômio de grau 2, a partir da Equação (5),
da seguinte forma:

2
X
p2 (x) = yk Lk (x) = y0 L0 (x) + y1 L1 (x) + y2 L2 (x)
k=0
= 4L0 (x) + 1L1 (x) + (−1)L2 (x), (6)

6
onde:
(x − x1 )(x − x2 ) (x − 0)(x − 2) x2 − 2x


 L0 (x) = = =



 (x0 − x1 )(x0 − x2 ) (−1 − 0)(−1 − 2) 3




(x − x0 )(x − x2 ) (x + 1)(x − 2) x2 − x − 2



 L (x) =
1 = =
(x1 − x0 )(x1 − x2 ) (0 + 1)(0 − 2) −2




(x − x0 )(x − x1 ) (x + 1)(x − 0) x2 + x




 L2 (x) = = =
(x2 − x0 )(x2 − x1 ) (2 + 1)(2 − 0) 6




Substituindo L0 (x), L1 (x) e L2 (x) na Equação (6), obtemos:

x2 − 2x x2 − x − 2 x2 + x
     
p2 (x) = 4 +1 + (−1) .
3 −2 6

Após manipulações algébricas, obtemos o polinômio interpolador a partir da forma de Lagrange:

7 2
p2 (x) = 1 − x + x2 .
3 3

Notem que, o resultado obtido é análogo ao resultado obtido a partir da resolução do sistema
linear.

3.3 Método de Newton


Antes de estudarmos o método de Newton para interpolação, vamos estudar o operador dife-
renças divididas apresentado na Tabela 5.

x ordem 0 ordem 1 ordem 2 ordem n


x0 f [x0 ]
f [x0 , x1 ]
x1 f [x1 ] f [x0 , x1 , x2 ]
f [x1 , x2 ]
x2 f [x2 ] f [x1 , x2 , x3 ]
f [x2 , x3 ]
... ... ... ... f [x0 , x1 , . . . , xn ]
f [xn−1 , xn ]
xn f [xn ]

Tabela 5: Operador diferenças divididas

As diferenças divididas de ordem 0 são definidas como:

f [x0 ] = f (x0 ), f [x1 ] = f (x1 ), f [x2 ] = f (x2 ), ... f [xn ] = f (xn ).

7
As diferenças divididas de ordem 1 são escritas como:

f [x1 ] − f [x0 ] f (x1 ) − f (x0 )




 f [x0 , x1 ] = =



 x1 − x0 x1 − x0





 f [x2 ] − f [x1 ] f (x2 ) − f (x1 )
f [x1 , x2 ] = =


x2 − x1 x2 − x1








f [x3 ] − f [x2 ] f (x3 ) − f (x2 )



f [x2 , x3 ] = =
 x3 − x2 x3 − x2



..





 .





f [xn ] − f [xn−1 ] f (xn ) − f (xn−1 )




 f [xn−1 , xn ] = =
xn − xn−1 xn − xn−1




Observem que, para obter as diferenças divididas de ordem 1, utilizamos as diferenças divididas
de ordem 0.
As diferenças divididas de ordem 2 são:

f [x1 , x2 ] − f [x0 , x1 ]


 f [x0 , x1 , x2 ] =
x2 − x0








f [x2 , x3 ] − f [x1 , x2 ]


f [x1 , x2 , x3 ] =


x3 − x1





..
.









f [xn−1 , xn ] − f [xn−2 , xn−1 ]




 f [xn−2 , xn−1 , xn ] =



 xn − xn−2

Notem que, para obter as diferenças divididas de ordem 2, utilizamos as diferenças de ordem 1.
Dessa forma, podemos construir a tabela do operador de diferenças divididas até a diferença
dividida de ordem n dada por:

f [x1 , x2 , . . . , xn ] − f [x0 , x1 , x, . . . , xn−1 ]


f [x0 , x1 , x2 , . . . , xn ] = .
xn − x0

8
A forma de Newton para o polinômio de ordem n que interpola f (x) é dada por:

pn (x) = f [x0 ] + (x − x0 )f [x0 , x1 ] + (x − x0 )(x − x1 )f [x0 , x1 , x2 ] + · · ·


· · · + (x − x0 )(x − x1 ) . . . (x − xn−1 )f [x0 , x1 , x2 , . . . , xn ]. (7)

Exemplo: Sejam os dados apresentados na Tabela 6, onde x0 = −1, f (x0 ) = 1, x1 = 0,


f (x1 ) = 1, x2 = 1, f (x2 ) = 0, x3 = 2, f (x3 ) = −1, x4 = 3 e f (x4 ) = −2. Como vamos obter
um polinômio de ordem menor ou igual a 4, o primeiro passo é construir a tabela de diferenças
divididas até ordem 4.

x −1 0 1 2 3
f (x) 1 1 0 −1 −2

Tabela 6: Exemplo: Forma de Newton

As diferenças divididas de ordem 0 são:




 f [x0 ] = f (x0 ) = 1

 f [x1 ] = f (x1 ) = 1



f [x2 ] = f (x2 ) = 0

f [x3 ] = f (x3 ) = −1





f [x4 ] = f (x4 ) = −2

As diferenças divididas de ordem 1 são:

f [x1 ] − f [x0 ] 1−1




 f [x0 , x1 ] = = =0
x1 − x0 0 − (−1)








f [x2 ] − f [x1 ] 0−1




 f [x1 , x2 ] = = = −1
x2 − x1 1−0





f [x3 ] − f [x2 ] −1 − 0
f [x2 , x3 ] = = = −1


x3 − x2 2−1








f [x4 ] − f [x3 ] −2 − (−1)




 f [x 3 , x4 ] = = = −1
x − x 3 − 2

4 3



9
As diferenças divididas de ordem 2 são:

f [x1 , x2 ] − f [x0 , x1 ] −1 − 0 1
f [x , x , x ] = = = −

0 1 2

x2 − x0 1 − (−1) 2









 f [x , x , x ] = f [x2 , x3 ] − f [x1 , x2 ] = −1 − (−1) = 0


1 2 3
x3 − x1 2−0




f [x3 , x4 ] − f [x2 , x3 ] −1 − (−1)




 f [x2 , x3 , x4 ] = = =0



 x 4 − x 2 3 − 1

As diferenças divididas de ordem 3 são:



f [x1 , x2 , x3 ] − f [x0 , x1 , x2 ] 0 − (−1/2) 1
f [x0 , x1 , x2 , x3 ] = = =


x3 − x0 2 − (−1)




 6

f [x2 , x3 , x4 ] − f [x1 , x2 , x3 ] 0−0
f [x1 , x2 , x3 , x4 ] = = =0


x4 − x1 −2 − 0





Por fim, a diferença dividida de ordem 4 é dada por:

f [x1 , x2 , x3 , x4 ] − f [x0 , x1 , x2 , x3 ] 0 − 1/6 1


f [x0 , x1 , x2 , x3 , x4 ] = = =− .
x4 − x0 3 − (−1) 24

Na Tabela 7 é possı́vel observar a tabela completa com as diferenças divididas desse exemplo.

x ordem 0 ordem 1 ordem 2 ordem 3 ordem 4


−1 f [x0 ] = 1
f [x0 , x1 ] = 0
0 1 f [x0 , x1 , x2 ] = −1/2
−1 1/6
1 0 0 −1/24
−1 0
2 −1 0
−1
3 −2

Tabela 7: Exemplo: Forma de Newton

Logo, a forma de Newton que interpola os pontos da Tabela 6, a partir da Equação (7), é

10
escrita como:

p4 (x) = f [x0 ] + (x − x0 )f [x0 , x1 ] + (x − x0 )(x − x1 )f [x0 , x1 , x2 ] +


+(x − x0 )(x − x1 )(x − x2 )f [x0 , x1 , x2 , x3 ] + (x − x0 )(x − x1 )(x − x2 )(x − x3 )f [x0 , x1 , x2 , x3 , x4 ].

Ou seja,

p4 (x) = 1 + (x + 1)0 + (x + 1)(x − 0)(−1/2) +


+(x + 1)(x − 0)(x − 1)(1/6) + (x + 1)(x − 0)(x − 1)(x − 2)(−1/24).

Portanto, após manipulações algébricas, obtemos:

p4 (x) = 1 + (−1/2)x(x + 1) + (1/6)x(x + 1)(x − 1) +


+(−1/24)x(x + 1)(x − 1)(x − 2).

4 Estudo do erro na interpolação


Estudar o erro na interpolação significa saber o quão próximo de f (x) está pn (x). O erro em
aproximar a função f (x) por um polinômio interpolador pn (x) de grau menor ou igual a n,
pode ser determinado como:
En (x) = f (x) − pn (x), (8)

para todo x pertencente a [x0 , xn ].


Observem a Figura 2. O mesmo polinômio p1 (x) interpola f1 (x) e f2 (x) em x0 e x1 . O erro
E1 = f1 (x) − p1 (x) é maior que o erro E12 = f2 (x) − p1 (x) para todo x pertencente a [x0 , xn ].
1

Ou seja, podemos verificar o erro a partir da concavidade da curva.


Exemplo: Seja o problema de se obter f (3.7) = ln(3.7) por interpolação linear, onde a
função ln(x) está tabelada com resultados mostrados na Tabela 8.

x 1 2 3 4
ln(x) 0 0.6931 1.0986 1.3863

Tabela 8: Exemplo: Erro

Para realizar interpolação linear, precisamos utilizar dois pontos da tabela. Como x = 3.7
pertence ao intervalo [3, 4], vamos escolher x0 = 3 e x1 = 4, logo f (x0 ) = 1.0986 e f (x1 ) =
1.3863. Utilizando o método de Newton (Equação (7)), o polinômio linear pode ser obtido da
seguinte forma:
p1 (x) = f (x0 ) + (x − x0 )f [x0 , x1 ],

11
Figura 2: Erros na interpolação

onde:
f (x1 ) − f (x0 ) 1.3863 − 1.0986
f [x0 , x1 ] = = = 0.2877.
x1 − x0 4−3
Portanto, o polinômio linear é dado como:

p1 (x) = 1.0986 + (x − 3)0.2877


= 0.2877x + 0.2355.

Com isso, p1 (3.7) = 0.2877(3.7) + 0.2355 = 1.3000.


Sabemos que f (3.7) = ln(3.7) = 1.3083, assim, a partir da Equação (8), obtemos o erro:

E1 (3.7) = f (3.7) − p1 (3.7) = 1.3083 − 1.3000 = 8.3 × 10−3 .

Entretanto, vale salientar que só é possı́vel utilizar a Equação (8) para calcular o erro se o valor
de f (x) no ponto estudado for conhecido.
Se o valor de f (x) no ponto estudado não for conhecido, temos a seguinte fórmula para o
erro:
|En (x)| ≈ |(x − x0 )(x − x1 ) . . . (x − xn )|(max |dif. divididas ordem n + 1|), (9)

onde max |dif. divididas ordem n + 1| significa o maior valor em módulo entre as diferenças
dividades de ordem n + 1.
Exemplo: Seja f (x) dada na Tabela 9. O objetivo é obter f (0.47) usando um polinômio
de grau 2 e encontrar uma estimativa para o erro.
Como queremos calcular f (0.47), é aconselhável utilizarmos o intervalo [0.4, 0.52] e o terceiro
ponto pode ser 0.34 ou 0.6. Aqui, vamos definir x0 = 0.4, x1 = 0.52 e x2 = 0.6.
Utilizando o método de Newton (Equação (7)), o polinômio quadrático pode ser obtido da

12
x 0.2 0.34 0.4 0.52 0.6 0.72
f (x) 0.16 0.22 0.27 0.29 0.32 0.37

Tabela 9: Exemplo: Erro

seguinte forma:

p2 (x) = f (x0 ) + (x − x0 )f [x0 , x1 ] + (x − x0 )(x − x1 )f [x0 , x1 , x2 ],

onde:
f (x1 ) − f (x0 ) f [x1 , x2 ] − f [x0 , x1 ]
f [x0 , x1 ] = e f [x0 , x1 , x2 ] =
x1 − x0 x2 − x0
Na Tabela 10, é possı́vel observar todas as diferenças divididas até a ordem 3 (n + 1). Em
destaque (vermelho) nas coluna da ordem 0, 1 e 2 estão o resultados utilizados para obter o
polinômio quadrático:

p2 (x) = 0.27 + (x − 0.4)(0.1667) + (x − 0.4)(x − 0.52)(1.0415).

Portanto, p2 (0.47) = 0.2780.

x ordem 0 ordem 1 ordem 2 ordem 3


0.2 0.16
0.428
0.34 0.22 2.0325
0.8333 −17.8963
x0 = 0.4 0.27 −3.7033
0.1667 18.2494
x1 = 0.52 0.29 1.0415
0.375 −2.6031
x2 = 0.6 0.32 0.2085
0.4167
0.72 0.37

Tabela 10: Exemplo: Erro

Entre os valores das diferenças divididas de ordem n+1, que é 3, o de maior valor em módulo
é 18.2494 em destaque (em azul) na Tabela 10. Agora, a partir da Equação (9) podemos estimar
o erro da seguinte forma:

|E(0.47)| ≈ |(0.47 − 0.4)(0.47 − 0.52)(0.47 − 0.6)||18.2492|


≈ 8.303 × 10−3 .

Para escolher o grau do polinômio interpolador, caso essa informação não seja fornecida,

13
devemos construir a tabela das diferenças divididas e, depois, analisar essas diferenças em torno
do ponto de interesse. Por exemplo, se todas as diferenças divididas de ordem 3 variarem pouco,
devemos construir um polinômio de ordem 2. Ou seja, se as diferenças divididas de ordem k + 1
sofrerem pouca variação, devemos construir um polinômio de ordem k.

5 Interpolação inversa
Em todos os exemplos desse texto, procuramos um polinômio interpolador com o objetivo de
obter uma aproximação para um valor da função f (x) em um ponto pedido. Assim, escolhemos
os pontos xi para interpolação de acordo com esse ponto. No exemplo anterior, o objetivo era
calcular f (0.47). Com isso, escolhemos um intervalo que continha x = 0.47 para determinar os
pontos x0 = 0.4, x1 = 0.52 e x2 = 0.6.
No caso da interpolação inversa, o objetivo é encontrar o valor de x para um determinado
valor de f (x). Assim, a escolha dos pontos para a interpolação será definido a partir dos valores
de f (x) fornecidos. Após a escolha dos pontos, podemos aplicar qualquer um dos métodos de
interpolação estudados.
Exemplo: Dada a Tabela 11, utilizando interpolação linear, o objetivo é encontrar x tal
que f (x) = 2.

x 0.5 0.6 0.7 0.8 0.9 1.0


f (x) 1.65 1.82 2.01 2.23 2.46 2.72

Tabela 11: Exemplo: Interpolação inversa

Para interpolação linear, precisamos escolher dois pontos da tabela referida. Como o ob-
jetivo é calcular f (x) = 2, vamos analisar a segunda linha da tabela que é referente a f (x) e
vamos escolher dois valores em que 2 esteja contido. Neste caso, podemos escolher f (x) = 1.82
e f (x) = 2.01. O x referente a f (x) = 1.82 é x = 0.6 e o x referente a f (x) = 2.01 é x = 0.7,
logo, definimos x0 = 0.6 e x1 = 0.7.
Definidos os pontos para interpolação, podemos aplicar qualquer um dos métodos estudados.
Neste exemplo, vamos usar o método de Lagrange, onde y0 = f (x0 ) = 1.82 e y1 = f (x1 ) = 2.01.
Portanto, o objetivo é obter o polinômio:

p1 (x) = 1.82L0 (x) + 2.01L1 (x),

14
com 
(x − x1 ) (x − 0.7)
L0 (x) = =


(x0 − x1 ) 0.6 − 0.7






(x − x0 ) (x − 0.6)
L1 (x) = =


(x1 − x0 ) 0.7 − 0.6





Dessa forma, o polinômio é dado por:

(x − 0.7) (x − 0.6)
p1 (x) = 1.82 + 2.01
−0.1 0.1
= −18.2x + 12.74 + 20.1x − 12.06
= 1.9x + 0.68.

Assim, como o objetivo é obter x para f (x) = 2, fazemos:

p1 (x) = 2 ⇐⇒ 1.9x + 0.68 = 2 ⇐⇒ x = 0.6947368.

6 Exercı́cios
1. Considere os dados da Tabela 12.
x 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8
ex 11.02 13.46 16.44 20.08 24.53 29.96 36.59 44.70

Tabela 12: Exercı́cio 1

(a) Calcule e3.1 utilizando um polinômio interpolador por dois pontos, por meio do método
do sistema linear.

(b) Calcule e3.1 utilizando um polinômio interpolador por três pontos, por meio do método
do sistema linear.

(c) Calcule e3.1 utilizando um polinômio interpolador por quatro pontos, por meio do método
do sistema linear.

(d) Calcule e3.1 utilizando um polinômio interpolador por quatro pontos, por meio do método
de Lagrange.

2. Construa a tabela de diferenças divididas com os dados da Tabela 13.


(a) Estime o valor de f (1.23) da melhor maneira possı́vel, de forma que se possa estimar o
erro cometido.

15
x 0.0 0.5 1.0 1.5 2.0 2.5
f (x) −2.78 −2.241 −1.65 −0.594 1.34 4.564

Tabela 13: Exercı́cio 2

(b) Justifique o grau do polinômio que você escolheu para o item (a).

3. Considere os dados da Tabela 14. Usando um polinômio interpolador de grau 3, determine


x tal que f (x) = 2.3.

x 0.0 0.2 0.4 0.6 0.8 1.0


f (x) 1.0 1.2408 1.5735 2.0333 2.6965 3.7183

Tabela 14: Exercı́cio 3

4. Considere a Tabela 15:

x −1 0 2
f (x) 4 1 −1

Tabela 15: Exercı́cio 4

(a) Resolvendo por meio do método do sistema linear, encontre o polinômio de grau 2 que
interpola os dados da tabela dada.

(b) Resolvendo por meio do método de Lagrange, encontre o polinômio de grau 2 que
interpola os dados da tabela dada.

(c) Usando a forma de Newton, obtenha o polinômio p2 (x) que interpola f (x) nos pontos
dados.

16
Respostas:

1.(a) Tomando os pontos (3.0, 20.08) e (3.2, 24.53), supondo o polinômio p1 (x) = a0 + a1 x,
obtemos o sistema linear: (
a0 + 3.0a1 = 20.08
a0 + 3.2a1 = 24.53
Resolvendo o sistema pelo método de Eliminação de Gauss, encontramos a0 = −46.67 e a1 =
22.25, portanto o polinômio interpolador é p1 (x) = −46.67 + 22.24x. Enfim, p1 (3.1) = 22.31.

1.(b) Tomando os pontos (2.8, 16.44), (3.0, 20.08) e (3.2, 24.53), supondo o polinômio quadrático
p2 (x) = a0 + a1 x + a2 x2 , obtemos o sistema linear:

2
 a0 + 2.8a1 + (2.8) a2 = 16.44

a0 + 3.0a1 + (3.0)2 a2 = 20.08

a0 + 3.2a1 + (3.2)2 a2 = 24.53

Resolvendo o sistema pelo método de Eliminação de Gauss, encontramos a0 = 50.53, a1 =


−40.53 e a2 = 10.13, portanto o polinômio interpolador é p2 (x) = 50.53 − 40.53x + 10.13x2 .
Enfim, p2 (3.1) = 22.20.

1.(c) Tomando os pontos (2.8, 16.44), (3.0, 20.08), (3.2, 24.53) e (3.4, 29.96), supondo o po-
linômio p3 (x) = a0 + a1 x + a2 x2 + a3 x3 , obtemos o sistema linear:



 a0 + 2.8a1 + (2.8)2 a2 + (2.8)3 a3 = 16.44
 a + 3.0a + (3.0)2 a + (3.0)3 a

= 20.08
0 1 2 3
2 3


 a0 + 3.2a1 + (3.2) a2 + (3.2) a3 = 24.53
 a + 3.4a + (3.4)2 a + (3.4)3 a

= 29.96
0 1 2 3

Resolvendo o sistema pelo método de Eliminação de Gauss, encontramos a0 = −44.67, a1 =


54.96, a2 = −21.75 e a3 = 3.54, portanto o polinômio interpolador é p3 (x) = −44.67 + 54.96x −
21.75x2 + 3.54x3 . Enfim, p3 (3.1) = 22.19.

1.(d) A forma de Lagrange para um polinômio de grau 3 é dada por:

p3 (x) = y0 L0 (x) + y1 L1 (x) + y2 L2 (x) + y2 L3 (x).

Tomando os mesmo pontos do item (c), segue que:

y0 = 16.44, y1 = 20.08, y2 = 24.53, y3 = 29.96,

17

(x − 3.0)(x − 3.2)(x − 3.4)
L0 (x) =


(2.8 − 3.0)(2.8 − 3.2)(2.8 − 3.4)










 (x − 2.8)(x − 3.2)(x − 3.4)
L1 (x) =


(3.0 − 2.8)(3.0 − 3.2)(3.0 − 3.4)






(x − 2.8)(x − 3.0)(x − 3.4)
L2 (x) =


(3.2 − 2.8)(3.2 − 3.0)(3.2 − 3.4)










 (x − 2.8)(x − 3.0)(x − 3.2)

 L3 (x) =
(3.4 − 2.8)(3.4 − 3.0)(3.4 − 3.2)





Substituindo os valores e reagrupando as potências, obtemos:

p3 (x) = −44.67 + 54.96x − 21.75x2 + 3.54x3 .

Enfim, p3 (3.1) = 22.19.

2.(a) Escolhendo x0 = 0.5, x1 = 1.0, x2 = 1.5 e x3 = 2.0, obtemos f (1.23) ≈ −1.247 com
|E(1.23)| ≈ 2.327 × 10−5 .

2.(b) Polinômio de grau 3 porque as diferenças divididas de grau 3 são aproximadamente


constantes.

3. Usando o processo de interpolação inversa e os pontos: y0 = 1.5735, y1 = 2.0333 e


y2 = 2.6965 obtemos f (0.623) ≈ 2.3.

Referências
[1] Cunha, M. C. C. Métodos numéricos. 2a Ed., Campinas, SP: Editora Unicamp, 2000.

[2] Ruggiero, M. A. G., Lopes, V. L. R. Cálculo Numérico: Aspectos teóricos e com-


putacionais. 2a Ed., São Paulo, SP: Makron Books, 1996.

18

Você também pode gostar