5/28/2018 Capitulo4 Interpolacao Rev 2005
1/29
73
unesp CAMPUS DE GUARATINGUETComputao e Clculo Numrico: Elementos de Clculo Numrico
Prof. G.J. de Sena - Depto. de Matemtica Rev. 2005
CAPTULO 4
INTERPOLAO
4.1 INTRODUO
Considere a seguinte tabela relacionando calor especfico da gua(c) e temperatura (T):
T (oC) 25 30 35 40
c 0.99852 0.99826 0.99818 0.99828
Suponha se queira determinar:
(i) c para T = 32.5 oC; (ii) T para c = 0.99825.
Este tipo de problema pode ser resolvido com a ajuda da interpolao. Interpolar umafuno f(x) consiste em "substituir" esta funo por outra funo, g(x), que uma
aproximao da funo dada.
H a necessidade de se efetuar uma interpolao em vrias situaes, como por exemplo:
(a) Quando a funo conhecida apenas em um conjunto finito e discreto de pontos,
no se dispondo de sua forma analtica;(b) Quando a forma analtica da funo tal que operaes como a diferenciao e a
integrao so difceis (ou mesmo impossveis) de serem realizadas.
4.2 PROBLEMA GERAL DE INTERPOLAO
Sejam x0, x1,..., xn (n+1) pontos distintos, chamados pontos de interpolao e sejamf(x0), f(x1), ..., f(xn) os valores de f(x) nesses pontos.
Objetiva-se obter uma funo de interpolao g(x) para a funo f(x), a partir dos pontos
de interpolao, com a condio de que os valores numricos de f e g sejam coincidentesnesses pontos de interpolao, ou seja:
g(x0) = f(x0)
g(x1) = f(x1)
g(xn) = f(xn)
5/28/2018 Capitulo4 Interpolacao Rev 2005
2/29
74
Graficamente:
Observe-se que:(a) a funo g(x) pode pertencer classe das funes exponenciais, logartmicas,
trigonomtricas ou polinomiais;
(b) para o caso da interpolao polinomial, h as formas dadas, por exemplo, pela
frmula de Taylor e pelos polinmios de Hermite, em que as condies de
interpolao so outras
4.3 INTERPOLAO POLINOMIAL
4.3.1 EXISTNCIA E UNICIDADE DO POLINMIO INTERPOLADOR
Dados os pontos ( )( ) ( )( ) ( )( )nn1100 xf,x,...,xf,x,xf,x , portanto (n + 1) pontos, queremos
aproximar ( )f x por umpolinmio de grau ( ) n P xn, , tal que:
( ) ( ) nkxPxf knk ,...,2,1,0==
Dado que ( )P xn da forma
n
n
2
210 xa...xaxaa ++++
obter ( )P xn significa obter os coeficientes
a a a an0 1 2, , , . .. ,
Da condio ( ) ( )P x f xn k k= , obtm-se o sistema linear:
5/28/2018 Capitulo4 Interpolacao Rev 2005
3/29
75
( )
( )
( )
S
a a x a x a x f x
a a x a x a x f x
a a x a x a x f x
n
nn
nn
n n n nn
n
+
+ + + + =
+ + + + =
+ + + + =
1
0 1 0 2 02
0 0
0 1 1 2 12
1 1
0 1 22
L
L
M M M M M
L
com n+1 equaes e n+1 variveis: a a an0 1, , ,L .
A matriz A dos coeficientes:
A
x x
x x
x x
x
x
xn n
n
n
nn
=
1
1
1
0 02
1 12
2
0
1
L
L
M M M
L
M
uma matriz de Vandermonde. Portanto, desde que x0, x1, ..., xn sejam pontosdistintos, tem-se que det A 0 e que o sistema admite soluo nica.
Concluindo: se x x j k k j , , ento existe um nico polinmioPn(x), de grau n, tal
que P x f x k nn k k( ) ( ), , , , ... ,= = 0 1 2 .
Exemplo:Obter um polinmio de grau 2 que interpole os pontos da tabela
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Determinar o valor aproximado de f(1.05)
Soluo:
Forma do polinmio:
P x a a x a xo2 1 22( ) = + +
Condio de interpolao:P x f x k k k2 0 1 2( ) ( ) , ,= =
= = + + = = =
= = + + = =
= = + + = =
P x P a a a f x f
P x P a a a f
P x P a a a f
2 0 2 0 1 2 0
2 1 2 0 1 2
2
2 2 2 0 1 2
2
10 10 2 718
11 11 11 11 3004
12 12 12 12 3320
( ) ( . ) ( ) ( . ) .
( ) ( . ) ( . ) ( . ) ( . ) .
( ) ( . ) ( . ) ( . ) ( . ) .
Os coeficientes ao, a1e a2so obtidos, portanto, da soluo do sistema:
5/28/2018 Capitulo4 Interpolacao Rev 2005
4/29
76
=++
=++
=++
320.3a44.1a2.1a
004.3a21.1a1.1a
718.2aaa
:S
210
210
210
3
Usando o dispositivo prtico para o mtodo de eliminao de Gauss, obtm-se:
a0 a1 a2
1
1
1
1
1.1
1.2
1
1.21
1.44
2.718
3.004
3.320a 2
0003
000215= =
.
..
0.1
0.2
0.21
0.44
0.286
0.60229.0
1.0
)5.1)(21.0(286.0a1 =
=
0.002 0.003 a0= 2.718 - 1.5 + 0.29 = 1.508
2
2 x5.1x29.0508.1)x(P +=
857.2)05.1)(5.1()05.1)(29.0(508.1)05.1(P)05.1(f2
2 =+=
Obs.: sabendo-se que f(x) = ex, tem-se que 8576511.2e)05.1(f05.1
==
A matriz A dos coeficientes pode ser, no caso geral, mal condicionada. Portanto, no ser
sempre conveniente obter o polinmio de interpolao da forma indicada no exemplo.
4.3.2 OBTENO DE Pn(x) - FORMA DE LAGRANGE
Sejam x0, x1, ..., xn, (n+1) pontos distintos, e yi = f(xi), (i = 0, ..., n). Seja Pn(x) o
polinmio de grau n que interpola f em x0, ..., xn. Supor que Pn(x) da forma:
)(...)()()( 1100 xLyxLyxLyxP nnn +++=
onde cada ),...,2,1,0(),( nkxLk = , um polinmio de grau n.
Da condio de interpolao:
Pn(xi) = yi
vem que iinnii yxLyxLyxLy =+++ )(...)()( 1100
Esta condio ser satisfeita se se impuser:
5/28/2018 Capitulo4 Interpolacao Rev 2005
5/29
77
==
ikse
iksexL ik
,0
,1)(
o que obtido com a seguinte definio de Lk(x):
))...()()...()(())...()()...()(()(
1110
1110
nkkkkkkk
nkkk xxxxxxxxxx
xxxxxxxxxxxL
=
+
+
pois:
kisexL
exL
ik
kk
=
=
0)(
1)(
Como Lk(x) tem n fatores da forma (x - xi), Lk(x) um polinmio de grau n. Assim, Pn(x)
um polinmio de grau n.
Esta a forma de Lagrangepara o polinmio interpolador:
onde
xLyxPnn
kkk
=
=
0
)()(
)(
)(
)(
0
0
ik
n
kii
i
n
kii
k
xx
xx
xL
=
=
=
Exemplo:
Considere a funo f(x) dada na forma tabelar a seguir. Use a forma de Lagrange paraobter:
(a) o valor aproximado para f(1.05), considerando todos os pontos da tabela;
(b) o polinmio de interpolao de grau 2, da forma2
212 )( xaxaaxP o ++= , que
interpole todos os pontos da tabela.
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Resoluo:
(a) )()()()( 2211002 xLyxLyxLyxP ++= (1)
5/28/2018 Capitulo4 Interpolacao Rev 2005
6/29
78
)2.10.1)(1.10.1(
)2.1)(1.1(
))((
))(()(
2010
210
=
=
xx
xxxx
xxxxxL (2)
)2.11.1)(11.1(
)2.1)(1(
))((
))(()(
2101
201
=
=
xx
xxxx
xxxxxL (3)
)1.12.1)(12.1(
)1.1)(1(
))((
))((
)(1202
10
2
=
=
xx
xxxx
xxxx
xL (4)
Substituindo-se x=1.05nas expresses (2), (3) e (4), obtm-se:
375.0)2.10.1)(1.10.1(
)2.105.1)(1.105.1()05.1(0 =
=L
75.0)2.11.1)(11.1(
)2.105.1)(105.1()05.1(1 =
=L
125.0)1.12.1)(12.1(
)1.105.1)(105.1()05.1(2 =
=L
Substituindo-se estes valores na equao (1):
857.2)125.0(320.375.0004.3375.0718.2)05.1()05.1( 2 =++=Pf
(b) Para obter o polinmio na forma solicitada, preciso desenvolver as expresses (2), (3)
e (4) acima, como indicado a seguir:
661155002.0
32.13.2
)2.10.1)(1.10.1(
)2.1)(1.1()(
22
0 +=+
=
= xx
xxxxxL (5)
12022010001.0
2.12.2
)2.11.1)(11.1(
)2.1)(1()(
22
1 +=
+=
= xx
xxxxxL (6)
551055002.0
1.11.2
)1.12.1)(12.1(
)1.1)(1()(
22
2 +=+
=
= xx
xxxxxL (7)
Substituindo (5), (6) e (7) em (1), e efetuando-se a reduo dos termos semelhantes,
obtm-se:
)5510550(320.3)120220100(004.3)6611550(718.2)( 2222 +++++= xxxxxxxP
508.129.05.1)(2
2 += xxxP
Observao:
320.3508.1)2.1)(29.0()2.1)(5.1()2.1(
004.3508.1)1.1)(29.0()1.1)(5.1()1.1(
718.2508.1)1)(29.0()1)(5.1()0.1(
2
2
2
2
2
2
=+=
=+=
=+=
P
P
P
(pois a funo e o polinmio de interpolao devem coincidir nos pontos tabelados).
5/28/2018 Capitulo4 Interpolacao Rev 2005
7/29
79
Exemplo:Seja a funo f(x) conhecida apenas nos pontos tabelados:
x 0 0.1 0.3 0.6 1
f(x) 1 2.001 4.081 8.296 21
Determinar o valor aproximado para f(0.2) aplicando-se a frmula de Lagrange, para as
formas de interpolao (a) lineare (b) quadrtica.
Resoluo:
(a)Interpolao linear( )(1 xP )
Deve-se considerar um intervalo com dois pontos, contendo a abscissa de interesse (0.2),
ou seja:
0.1 0.3
2.001 4.081
Forma de )(1 xP :
)()()( 11001 xLyxLyxP +=
onde:
)3.01.0(
)3.0(
)(
)()(
10
10
=
=
x
xx
xxxL
)1.03.0(
)1.0(
)(
)()(
01
01
=
=
x
xx
xxxL
Substituindo-se x=0.2, obtm-se os valores =)2.0(0L 0.5 e =)2.0(1L 0.5. Substituindo-se
estes valores na expresso de )(1 xP obtm-se:
041.35.0081.45.0001.2)2.0(1 =+=P 041.3)2.0( f
(b)Interpolao quadrtica( )(2 xP )
Deve-se considerar um intervalo com trs pontos, contendo a abscissa de interesse (0.2). O
intervalo escolhido deve ser tal que o ponto de interesse se situe o mais internamente
possvel ele (ou seja, o mais distante possvel de qualquer das extremidades). Um
possvel conjunto de pontos seria:
0 0.1 0.3
1 2.001 4.081
Tambm poderiam ser utilizados os pontos:
0.1 0.3 0.6
2.001 4.081 8.296
Utilizaremos o primeiro intervalo neste exemplo.
Forma de )(2 xP :
)()()()( 2211002 xLyxLyxLyxP ++=
5/28/2018 Capitulo4 Interpolacao Rev 2005
8/29
80
onde:
)3.00)(1.00(
)3.0)(1.0(
))((
))(()(
2010
21
0
=
=
xx
xxxx
xxxxxL
)3.01.0)(01.0(
)3.0)(0(
))((
))(()(
2101
201
=
=
xx
xxxx
xxxxxL
)1.03.0)(03.0(
)1.0)(0(
))((
))(()(1202
10
2
=
= xx
xxxxxxxxxL
Substituindo-se x=0.2, obtm-se os valores: =)2.0(0L -0.333, =)2.0(1L 1 e
=)2.0(2L 0.333. Substituindo-se estes valores na expresso de )(2 xP , obtm-se:
027.3333.0081.41001.2)333.0(1)2.0(2 =++=P 027.3)2.0( f
Exerccio:Resolver o item(b) do exerccio anterior considerando o segundo conjunto de pontos
possvel.
Exemplo:(Interpolao Linear)(a) obter aforma de Lagrangepara o polinmio P1(x) que interpole os pontos (x0,f(x0)) e
(x1,f(x1)).
(b) obter a equao da reta que passa por (x0,f(x0)) e (x1,f(x1)).
Resoluo:
(a)P x y L x y L x1 0 0 1 1( ) ( ) ( )= + x x0 x1
L xx x
x x0
1
0 1
( )( )
( )=
f(x) f(x0) f(x1)
L xx x
x x1
0
1 0
( )( )
( )=
=
+
=
+
=
+
P x y
x x
x xy
x x
x xy
x x
x xy
x x
x x
y y
x xx
y x y x
x x
a b
1 0
1
0 1
1
0
1 0
0
1
1 0
1
0
1 0
1 0
1 0
0 1 1 0
1 0
( )( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )1 24 34 1 24 34
(b)
5/28/2018 Capitulo4 Interpolacao Rev 2005
9/29
81
0
01
01
01 )(
xx
yxP
xx
yytg
=
= 00
01
011 )(
)(
)()( yxx
xx
yyxP +
=
)(
)()(
)(
)()(
01
001010
01
011 xx
yxxxyyx
xx
yyxP
++
=
4342143421ba
xx
xyxyx
xx
yyxP
)(
)(
)(
)()(
01
0110
01
011
+
=
Exerccio:Seja a funo f(x) conhecida apenas nos pontos tabelados:
x 0 0.2 0.4 0.5
f(x) 0 2.008 4.064 5.125
Determinar o valor aproximado para f(0.3) aplicando-se a frmula de Lagrange, . para as
formas de interpolao (a) lineare (b) quadrtica.
Exerccio:Usar a forma de Lagrangepara obter um polinmio de grau 3 que interpole os pontosda tabela:
x 0 1 3 4
f(x) -5 1 25 55
Calcular )4()3(),1(),0( 3333 PePPP , utilizando Briot-Ruffini.
Resp.: 572)(23
3 += xxxxP
4.3.3 OBTENO DE Pn(x) - FORMA DE GREGORY - NEWTON PARA OPOLINMIO INTERPOLADOR
4.3.3.1 TABELA DE DIFERENAS FINITAS
Definio:Sejam nxxx ,...,, 10 pontos que se sucedem com passo h, isto , jhxxn += 0 .
5/28/2018 Capitulo4 Interpolacao Rev 2005
10/29
82
Define-se o operador de diferenas finitascomo segue:
)()()(
)()()(
)()()(
)()(
11
2
0
xfhxfxf
xfhxfxf
xfhxfxf
xfxf
nnn +=
+=
+=
=
M
Conhecidos os valores de f(x) em nxxx ,...,, 10 , constri-se a seguinte tabela de diferenas
finitas:
x f(x) f(x) 2f(x)
x0 f(x0)
f(x0)
x1 f(x1) 2f(x0)
f(x1) ...
x2 f(x2) 2f(x1)
f(x2) M
x3 f(x3)
M M M
Exemplo:Seja f(x) dada na forma tabular:
x -1 0 1 2 3
f(x) 2 1 2 5 10
A tabela de diferenas finitas para esta funo mostrada a seguir:
x f(x) f(x) 2f(x) 3f(x)
-1 2
-1
0 1 2
1 01 2 2
3 0
2 5 2
5
3 10
5/28/2018 Capitulo4 Interpolacao Rev 2005
11/29
83
4.3.2 O POLINMIO DE INTERPOLAO
Estabelece-se a seguinte forma para o polinmio de interpolao (forma de Gregory-Newton):
!.
)())...()((...
2
)())((
)()()()( 01102
0
2
10
0
00
nh
xfxxxxxx
h
xfxxxx
h
xfxxxfxP
n
n
nn
++
+
+=
Observar que os pontos de interpolao devem ser igualmente espaados, com um passo h,ou seja:
hxx += 01 hxx += 12 ... hxx nn += 1
ou, equivalentemente, njjhxxj ,...,1,0,0 =+= .
Exemplo:Dada a funo y=f(x), conhecida pelos pontos da tabela abaixo, pede-se obter uma
aproximao para f(0.25) empregando a frmula de Gregory-Newton, para as formas de
interpolao (a) linear, e (b) quadrtica.
x 0.10 0.20 0.30 0.40 0.50
f(x) 0.125 0.064 0.027 0.008 0.001
Resoluo:
(a)Interpolao Linear( )(1 xP ):
Constri-se )(1 xP o polinmio interpolador de f(x) no intervalo:
0.20 0.30
0.064 0.027Tabela de diferenas finitas:
x f(x) f(x)
=ox 0.20 0.064
-0.037
0.30 0.027
Forma de )(1 xP :
h
xfxxxfxP
)()()()( 0001
+=
Substituindo os valores da tabela, obtm-se:
1.0
)037.0()2.0(064.0)(1
+= xxP
Substituindo-se x=0.25, obtm-se:
046.0)25.0(1 =P 046.0)25.0( f
(b)Interpolao Quadrtica( )(2 xP ):
5/28/2018 Capitulo4 Interpolacao Rev 2005
12/29
84
Constri-se )(2 xP , o polinmio interpolador de f(x) no intervalo:
0.10 0.20 0.30
0.125 0.064 0.027
Tabela de diferenas finitas:
x f(x) f(x) 2f(x)
=ox 0.10 0.125
-0.061
0.20 0.064 0.024
-0.037
0.30 0.027
Forma de )(2
xP
2
0
2
100
0022
)())((
)()()()(
h
xfxxxx
h
xfxxxfxP
+
+=
Substituindo-se os valores da tabela, obtm-se:
22)1.0(2
024.0)2.0)(1.0(
1.0
)061.0()1.0(125.0)(
+
+= xxxxP
Substituindo-se x=0.25, obtm-se:
043.0)25.0(2 =P 043.0)25.0( f
Observe-se que neste caso no foi preciso construir a tabela de diferenas finitas para todosos pontos da tabela de dados. Abaixo mostrada a tabela de diferenas finitas completa:
x f(x) f(x) 2f(x) 3f(x) 4f(x)
=ox 0.10 0.125
-0.061
0.20 0.064 0.024
-0.037 -0.006
0.30 0.027 0.018 0.000
-0.019 -0.0060.40 0.008 0.012
-0.007
0.50 0.001
Observe-se que, como o nmero de pontos na tabela de dados cinco, a tabela de
diferenas finitas permite calcular at a diferena de ordem quatro, que o grau mximo
que um polinmio de interpolao pode ter para este nmero de pontos. No entanto, o
5/28/2018 Capitulo4 Interpolacao Rev 2005
13/29
85
valor desta ltima diferena na tabela acima nulo, isto significando que o grau do
polinmio de interpolao, ao se considerar todos os pontos da tabela, ser igual a trs e
no a quatro.
Exemplo:
Obter, usando a forma de Gregory-Newton, o polinmio )(2 xP da forma2
212 )( xaxaaxP o ++= , que interpola f(x) nos pontos dados abaixo:
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Resoluo:(a) Construo da tabela das diferenas finitas
x f(x) f(x) 2f(x)
=ox 1.0 2.718
0.286
1.1 3.004 0.03
0.316
1.2 3.320
(b) obteno de P2(x):
2
02
100
0022
)())((
)()()()(
hxfxxxx
hxfxxxfxP ++=
2.)1.0(
03.0)1.1)(1(
1.0
286.0)1(718.2)(
22 ++= xxxxP
508.129.05.1)( 22 += xxxP
Exerccio: dada a funo y = f(x), conhecida pelos pontos da tabela abaixo, calcular umaaproximao para f(3.7), empregrando a frmula de Gregory-Newton.
x 1 2 3 4 Obs.:
f(x) 0 0.6931 1.0986 1.3863 f(x) = ln x
Exerccio: obter, usando a frmula de Gregory-Newton, uma aproximao para f(0.7),onde f uma funo conhecida apenas nos pontos tabelados a seguir:
5/28/2018 Capitulo4 Interpolacao Rev 2005
14/29
86
x 0 0.5 1 1.5 2.0
f(x) 0.0 1.1487 2.7183 4.9811 8.3890
4.3.4 OBTENO DE Pn(x) - FORMA DE NEWTON COM DIFERENAS
DIVIDIDAS
4.3.4.1 TABELA DE DIFERENAS DIVIDIDAS
Definio:
Seja f(x) uma funo tabelada em ( )1n,x,,x,x n10 +K pontos distintos. Define-se ooperador de diferenas divididascomo segue:
( )
[ ] [ ] [ ] ( ) ( )
01
01
01
01
10
00
,xx
xfxfxx
xfxfxxf
xfxf
=
=
=
[ ] [ ] [ ]
[ ] [ ] [ ]
03
2103213210
02
1021210
,,,,,,,
,,,,
xx
xxxfxxxfxxxxf
xx
xxfxxfxxxf
=
=
[ ] [ ] [ ]
0
11021210
,,,,,,,,,,
xx
xxxfxxxfxxxxf
n
nnn
=
KK
K
M
Define-se [ ]kxxxf ,,, 10 K como sendo a diferena dividida de ordem k da funo f(x)
sobre os (k+1) pontos: kxxx ,,, 10 K
Tabela de diferenas divididas
Conhecidos os valores de f(x) em ,,,, 10 nxxx K , constri-se a seguinte tabela de diferenas
divididas.
5/28/2018 Capitulo4 Interpolacao Rev 2005
15/29
87
x ordem 0 ordem 1 ordem 2 ordem 3 ... ordem n
0x [ ]0xf
[ ]1,0 xxf
1x [ ]1xf [ ]2,1,0 xxxf
[ ]2,1 xxf [ ]3,2,1,0 xxxxf
2x [ ]2xf [ ]3,2,1 xxxf O
[ ]3,2 xxf M [ ]nxxxxf ,,2,1,0 K
3x [ ]3xf M N
M [ ]nxnxnxnxf ,1,2,3
M M [ ]nxnxnxf ,1,2
[ ]nxnxf ,1
nx [ ]nxf
Exemplo:Construir a tabela de diferenas divididas para a funo f(x) tabelada a seguir:
x -1 0 1 2 3
f(x) 1 1 0 -1 -2
Resoluo:
x ordem 0 ordem 1 ordem 2 ordem 3 ordem 4-1 1
( )
1 1
0 10
=
0 1( )
=
1 0
1 1
1
2
0 1
1 01
= ( )
( )
0 1 2
2 1
1
6
=
1 0 ( )
=
1 1
2 00
( )
0 1 6
3 1
1
24
=
=
1 0
2 1
10 0
3 0
0
=
2 -1 ( )
=
1 1
3 10
( )
=
2 1
3 21
3 -2
5/28/2018 Capitulo4 Interpolacao Rev 2005
16/29
88
4.3.4.2 FORMA DE NEWTON PARA O POLINMIO INTERPOLADOR
A forma de Newton para o polinmio Pn (x) que interpola f(x) em ,,,, 10 nxxx K (n+1)
pontos distintos, a seguinte:
( ) ],...,1
,
0
[)
1
()
1
)(
0
(]
2
,
1
,
0
[)
1
)(
0
(]
1
,
0
[)
0
()
0
(
n
xxxf
n
xxxxxxxxxfxxxxxxfxxxfxnP
++++= KK
Exemplo:Dada a funo y = f(x), conhecida pelos pontos da tabela abaixo, obter uma aproximao
para f(0.27), empregando a frmula de Newton (com diferenas divididas), para as formas
de interpolao (a) linear e (b) quadrtica.
x 0.10 0.20 0.30 0.40 0.50f(x) 0.125 0.064 0.027 0.008 0.001
Resoluo:
(a)Interpolao Linear ( )(1 xP ):
Obtm-se o polinmio )(1 xP que interpola f(x) nos pontos do intervalo:
0.20 0.30
0.064 0.027Tabela de diferenas divididas:
x ordem 0 ordem 1
0.20 0.064
37.020.030.0
064.0027.0=
0.30 0.027
Forma de )(1 xP :( ) ]
1,
0[)
0()
0(1 xxfxxxfxP +=
Substituindo-se os valores da tabela, obtm-se:
( ) (-0.37))2.0(064.01
+= xxP
Calculando-se em x=0.27, obtm-se:
( ) 038.027.01
=P 038.0)27.0( f
(b)Interpolao Quadrtica ( )(2 xP ):
Obtm-se o polinmio )(2 xP que interpola f(x) nos pontos do intervalo:
0.20 0.30 0.40
0.064 0.027 0.008
Recorde-se que devem ser escolhidos trs pontos de forma que (i) contenham a abscissa de
interesse (no caso, x=0.27), e (ii) que este valor se situe o mais internamente possvel ao
intervalo considerado. Assim , pelo critrio (ii), o intervalo a seguir no deve ser usado,
mesmo contendo a abscissa de interesse:
0.10 0.20 0.30
0.125 0.064 0.027
5/28/2018 Capitulo4 Interpolacao Rev 2005
17/29
89
Tabela de diferenas divididas:
x ordem 0 ordem 1 ordem 2
0.20 0.064
37.0
20.030.0
064.0027.0=
0.30 0.027 ( )
=
0 19 0 37
0 0 200 9
. .
.40 ..
19.0
30.040.0
027.0008.0=
0.40 0.008
Forma do polinmio )(2 xP :
( ) ]2
,1
,0
[)1
)(0
(]1
,0
[)0
()0
(2 xxxfxxxxxxfxxxfxP ++=
Substituindo-se os valores da tabela, obtem-se:
( ) 0.9)3.0)(2.0()37.0)(2.0(064.02
++= xxxxP
Calculando-se em x=0.27, obtm-se:
( ) 036.027.02
=P ( ) 036.027.0 f
Observe-se que, para este exemplo, no foi necessrio calcular todos os valores da tabela
de diferenas divididas. A tabela completa mostrada a seguir. Note-se que a diferena
dividida de ordem 4 nula. Ou seja, o grau mximo de um polinmio de interpolao para
esta tabela trs.
x ordem 0 ordem 1 ordem 2 ordem 3 ordem 4
0.10 0.125
-0.610.20 0.064 1.2
-0.37 -1
0.30 0.027 0.9 0
-0.19 -1
0.40 0.008 0.6
-0.07
0.50 0.001
Exemplo: obter, usando a forma de Newton, o polinmio )(2 xP da forma2212 )( xaxaaxP o ++= que interpola )(xf nos pontos dados abaixo:
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Resoluo:
5/28/2018 Capitulo4 Interpolacao Rev 2005
18/29
90
(a) Tabela das diferenas divididas
x ordem 0 ordem 1 ordem 21.0 2.718
86.20.11.1
718.2004.3=
1.1 3.004 3 16 2 861 2 1 0
1 5. .
. ..
=
16.31.12.1
004.3320.3=
1.2 3.320
(b) obteno de P2(x):
( ) ( ) ( ) [ ] ( )( ) [ ]
( ) ( )( ) ( )( )( )
( ) 508.129.05.1
5.11.1186.21718.2
,,,
2
2
2
2101010002
+=
++=
++=
xxxP
xxxxP
xxxfxxxxxxfxxxfxP
4.3.4.3 ESTUDO DO ERRO NA INTERPOLAO
Ao se aproximar uma funo f(x) por um polinmio interpolador de grau n comete-se um
erro, ou seja:
( ) ( ) ( ) [ ]nnn xxxxPxfxE ,, 0=
Teorema 1:Sejam ( )1,210 +
5/28/2018 Capitulo4 Interpolacao Rev 2005
19/29
91
Corolrio 1:Sob as hipteses do Teorema 1, e se
( ) ( )xf n 1+ for contnua em [ ],,0 nxxI = pode-seescrever a seguinte relao:
( ) ( ) ( ) ( )( ) ( )
( )!1
110
+=
+
n
MxxxxxxxPxfxE nnnn K
onde( ) ( )xfmxM
n
Ixn
1
1 +
+
=
Se a funo )(xf dada na forma de uma tabela, o valor absoluto do erro, ( ),xEn
somente pode ser estimado. Se construirmos a tabela de diferenas divididas at ordem
(n+1), podemos usar o maior valor (em mdulo) das diferenas divididas de ordem (n+1)
como uma aproximao para( )!1n
1Mn
+
+no intervalo [ ],, no xx ou seja:
110 ))...()(()( + nnn MaxxxxxxxxE
onde:
)1(1 +=+ nde ordemdivididasdiferenasMaxMaxn
Exemplo:No primeiro exemplo do item 4.3.4.2, foram determinadas aproximaes para f(0.27) a
partir dos dados da tabela abaixo, utilizando-se as formas de interpolao linear e
quadrtica. Pede-se estimar os erros para cada uma destas formas.
x 0.10 0.20 0.30 0.40 0.50f(x) 0.125 0.064 0.027 0.008 0.001
Resoluo:
a)Interpolao Linear
No caso geral, )(xEn pode ser estimado por:
( )( ) ( ) 110)( + nnn MaxxxxxxxxE K
Assim o erro )(1 xE para interpolao linear pode ser estimado por:
2101 ))(()( MaxxxxxxE
onde: 22 de ordemdivididasdiferenasMaxMax =
Recorde-se, do exemplo mencionado acima, que )(1 xP foi construdo sobre os pontos
(0.2,0.064) e (0.3,0.027), e que =2Max 1.2. Substituindo-se os valores na expresso de
)(1 xE , obtm-se:2.1)3.0)(2.0()(1 xxxE
Calculando-se para x=0.27, obtm-se:3
1 1052.2)27.0(
E
b)Interpolao Quadrtica:
5/28/2018 Capitulo4 Interpolacao Rev 2005
20/29
92
A partir da expresso para )(xEn obtm-se a seguinte expresso para a estimao de
)(2 xE , que corresponde ao erro para interpolao quadrtica:
32102 ))()(()( MaxxxxxxxxE
onde: 33 de ordemdivididasdiferenasMaxMax =
Recorde-se, do exemplo mencionado acima, que )(2 xP foi construdo sobre os pontos(0.2,0.064), (0.3,0.027) e (0.4,0.008) e que =3Max 1.0. Substituindo-se os valores na
expresso de )(2 xE , obtm-se:
0.1)4.0)(3.0)(2.0()(2 xxxxE
Calculando-se para x=0.27, obtm-se:4
2 1073.2)27.0(
E
Exemplo:Seja f(x) dada na forma tabelar:
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
(a) obter uma aproximao para f(0.47) utilizando um polinmio de interpolao de grau 2;
(b) obter uma estimativa para o erro.
Soluo:
(a) Tabelas de diferenas divididas:
Para se calcular uma aproximao para f(0.47) utilizando )(2 xP , seria necessrio construir
a tabela de diferenas divididas apenas para os valores do conjunto de dados a seguir:
0.4 0.52 0.6
0.27 0.29 0.32
No entanto, como o problema pede para que seja determinada tambm uma estimativa do
erro da aproximao, preciso construir a tabela de diferenas divididas considerando
todos os pontos da tabela de dados e calculando-se at os termos de ordem 3, ou seja:
x ordem 0 ordem 1 ordem 2 ordem 3
0.2 0.16
0.4286
0.34 0.22 2.0235
0.8333 -17.8963x0=0.4 0.27 -3.7033
0.1667 18.2492x1=0.52 0.29 1.0415
0.375 -2.6031
x2=0.6 0.32 0.2085
0.4167
0.72 0.37
5/28/2018 Capitulo4 Interpolacao Rev 2005
21/29
93
A partir desta tabela, constri-se o polinmio )(2 xP como indicado:
( ) ( ) ( ) [ ] ( )( ) [ ] =++= 2101010002 ,,, xxxfxxxxxxfxxxfxP
( ) ( ) ( )( )( )0415.152.04.00.16674.027.0 ++ xxx
que utilizado para obter a aproximao solicitada:
( ) ( ) ( )( ) ( )( )( )( ) 2780.047.0f
0415.152.047.04.047.00.16674.047.027.047.0P47.0f 2
+=
(b) ( ) ( )( ) ( ) 110 + nnn MaxxxxxxxxE K
( ) ( )( )( ) 32102 MaxxxxxxxxE
onde: 33 de ordemdivididasdiferenasMaxMax =
( ) ( )( )( )( ) ( ) 322 10303.847.02492.186.047.052.047.04.047.047.0
xEE
4.3.5 INTERPOLAO INVERSA
Dada a Tabela:
x x0 x1 x2 xn
f(x) f(x0) f(x1) f(x2) f(xn)
o problema de Interpolao Inversa consiste em, dado ( ) ( )( )no xfxf ,y , obter x uma
aproximao para o valor de x tal que ( ) .x yf =
FORMAS DE SE RESOLVER ESTE PROBLEMA
(I) Obter ( )xnP que interpole f(x) em ,,,, 10 nxxx K e em seguida encontrar x tal que
( ) yPn =x .
Exemplo:Dada a tabela a seguir, encontrar x uma aproximao para x tal que ( ) .2x =f
x 0.5 0.6 0.7 0.8 0.9 1.0
f(x) 1.65 1.86 2.01 2.23 2.46 2.72
utilizando interpolao quadrtica sobre x o = = =0 6 0 7 0 81 2. , . , .x e x
Resoluo:
Tabela de Diferenas Divididas:
(Construda apenas para os pontos de interesse e at a ordem 2)
5/28/2018 Capitulo4 Interpolacao Rev 2005
22/29
94
x ordem 0 ordem 1 ordem 20.6 1.86
1.50.7 2.01 3.5
2.2
0.8 2.23
Polinmio de Interpolao
( ) ( ) ( ) [ ] ( )( ) [ ]2101010002 ,,, xxxfxxxxxxfxxxfxP ++= ( )
( ) 43.205.35.3P
0.7)(3.5)-0.6)(x-(x+0.6)1.5-(x+1.86=xP
2
2
2
+=
xxx
( ) ( )
0430053530243205353
2x0.2x
22
2
=+=+
=
.x.x...x.x.
fP
1770ou69450 .x.x == 69450.x = (pois )7.0,6.0(6945.0 =x )
(II) Interpolao Inversa
Se f(x) for inversvel num intervalo contendo y ento fazemos a interpolao de
( ) ( )ygyfx == 1 .
Uma condio para que uma funo contnua num intervalo [a, b] seja inversvel que seja
montona crescente (ou decrescente) neste intervalo. Se f(x) dada na forma tabelar,
supondo que f(x) seja contnua em ( ) ( )xf,x,x no ser considerada montona crescente se
( ) ( ) ( )n1o xfxfxf > K .
Exemplo:Dada a tabela a seguir, encontrar x uma aproximao para x tal que ( ) .2x =f Estimar oerro cometido com esta aproximao.
x 0.5 0.6 0.7 0.8 0.9 1.0
f(x) 1.65 1.86 2.01 2.23 2.46 2.72
(Utilizar interpolao quadrtica)
Resoluo:Neste caso, como alm da aproximao para x, solicita-se uma estimativa do erro incorrido
com esta aproximao, preciso construir a tabela de diferenas divididas (i) considerando
todos os pontos da tabela de dados, e (ii) calculando-se os valores das diferenas at a
ordem 3, uma vez que ser utilizada interpolao quadrtica. Como ser utilizada
interpolao inversa, a tabela ser construda colocando-se x como funo de y, como
mostrado a seguir. (O clculo dos valores das diferenas divididas segue o mesmo esquema
anterior).
5/28/2018 Capitulo4 Interpolacao Rev 2005
23/29
95
y ordem 0 ordem 1 ordem 2 ordem 31.65 0.5
0.4762
y0=1.86 0.6 0.5292
0.6667 -1.9012
y1=2.01 0.7 -0.57350.4545 0.8828
y2=2.23 0.8 -0.0438
0.4348 -0.0825
2.46 0.9 -0.1024
0.3846
2.72 1.0
A forma do polinmio de interpolao ser a mesma anterior, apenas substituindoxporyefpor g( 1= f ), como mostrado a seguir:
( ) ( ) ( ) [ ] ( )( ) [ ]21112 ,,, yyygyyyyyygyyygyP ooooo ++=
( ) ( )( ) ( )( )( )( ) ( )( ) ( )( )( )
6941.0
6941.0=5735.001.2286.126667.086.126.000.25735.001.286.16667.086.16.0
2
2
=
++=
++=
x
P yyyyP
Exerccio:Seja a Tabela:
x 0.15 0.20 0.25 0.30 0.35 0.40
f(x) 0.12 0.16 0.19 0.22 0.25 0.27
Usando um polinmio interpolador de grau 2, trabalhe de dois modos diferentes para obtero valor estimado de x para o qual f(x) = 0.23. D uma estimativa do erro cometido em cada
caso, se possvel.
Resp.: (I) 0.3166666 (II) 0.3166666;3
10666664.1 xerro
Exerccio:Construa uma tabela para a funo f(x) = cos(x) usando os pontos: 0.8, 0.9, 1.0, 1.1, 1.2,
1.3. Obtenha um polinmio de 3o grau para estimar cos(1.07) Fornea um limitante
superior para o erro ao se calcular cos(1.07) pelo polinmio obtido.
Resp.:
( )
( ) 610x2020383.107.1E
4801232.007.1cos
Exerccio:O calor especfico da gua, como funo da temperatura, dado por:
5/28/2018 Capitulo4 Interpolacao Rev 2005
24/29
96
Temperatua, oC Calor Especfico
20 0.99907
25 0.99852
30 0.99826
35 0.99818
40 0.99828
45 0.99849
50 0.99878
(a) use interpolao linear para estimar o calor especfico da gua a 37oC;
(b) use interpolao quadrtica para estimar o calor especfico a 37oC;
Obs.: usar o polinmio interpolante de Newton com diferenas divididos, estimar o erro
cometido em cada caso:
4.3.6 INTERPOLAO LINEAR DUPLA
Seja determinar uma aproximao para ( )cc y,xf , utilizando a teoria de Interpolao.Supor que xce ycsatisfaam s restries:
x x x
y y y
j c j
i c i
1
1
Graficamente:
Inicialmente interpolamos yxfz j ,1= e obtemos uma expresso para ( )cj yxf ,1r
, onde
( )c1j y,xf
r uma aproximao para cj yxf ,1 . Depois interpolamos yxfz j ,= e
obtemos uma expresso para ( )cj yxf , . Interpolamos ento ( )cyxfz ,= e obtemos entouma expresso para ( )cc yxf , . O detalhamento segue:
( ) ( ) ( ) ( )[ ]1111
1111 ,,,,
+= ijij
ii
icijcj yxfyxfyy
yyyxfyxf
( ) ( ) ( ) ( )[ ]11
1
1 ,,,,
+= ijij
ii
icijcj yxfyxfyy
yyyxfyxf
5/28/2018 Capitulo4 Interpolacao Rev 2005
25/29
97
( ) ( ) ( ) ( )[ ]cjcjjj
jccjcc yxfyxfxx
xxyxfyxf ,,,, 1
1
1
1
+=
Notar que as expresses para ( )cj yxf ,1 e ( )cj yxf , so obtidas a partir da interpolao dez como funo de y, mantidos constantes os correspondentes valores de x. Notar tambm
que a expresso para ( )cc y,xf obtida a partir da interpolao de z como funo de x, em
y constante igual a yc . Observar, por final, que os valores para ( )cj yxf ,1r
e )cj yxf , ,
calculados atravs das duas primeiras expresses, so utilizados no clculo de ( )cc yxf , .
Exemplo:
A integral elptica de primeira espcie definida como sendo:
( )
=
0 22 sensen1
, d
F
Mostra-se, a seguir, uma tabela parcial do valor desta funo:
50 60 70 80 90
50 0.9401 0.9647 0.9876 1.0044 1.0107
55 1.0500 1.0848 1.1186 1.1444 1.1542
60 1.1643 1.2125 1.2619 1.3014 1.3170
65 1.2833 1.3489 1.4199 1.4810 1.5065
70 1.4068 1.4944 1.5959 1.6918 1.735475 1.5345 1.6492 1.7927 1.9468 2.0276
80 1.6660 1.8125 2.0119 2.2653 2.4362
Seja determinar ( )ooF 77,73 , utilizando interpolao linear dupla.
Resoluo:
Notao utilizada:
x x x x x
y y y y y y y
1 2 3 4 5
1 2 3 4 5 6 7
50 60 70 80 90
50 55 60 65 70 75 80
= = = = =
= = = = = = =
, , , ,
, , , , , ,
Clculo de uma aproximao para ( )77,73f
5/28/2018 Capitulo4 Interpolacao Rev 2005
26/29
98
( )
( )
( )
( ) 2653.280,80f
9468.175,80f
0119.280,70f
7927.175,70f
=
=
=
=
(i) ( ) ( ) 8804.17927.10119.27580
75777927.177,70f =
+=
(ii) ( ) ( ) 0742.29468.12653.27580
75779468.177,80f =
+=
(iii) ( ) ( ) 9385.18804.10742.27080
70738804.177,73f =
+=
4.3.7 ASPECTOS COMPUTACIONAIS: IMPLEMENTAO DO MTODO DENEWTON COM DIFERENAS DIVIDIDAS
Esquema para construo da tabela de diferenas divididas:
X 0ordem ordem 1 ordem 2 ordem (N-1) ordem N
X(0) D(0,0)
)0()1(
)0,0()0,1()1,0(
XX
DDD
=
)0()2(
)1,0()1,1()2,0(
XX
DDD
=
...
)0()1(
)2,0()2,1()1,0(
XNX
NDNDND
=
)0()(
)1,0()1,1(),0(
XNX
NDNDND
=
X(1) D(1,0)
)1()2(
)0,1()0,2()1,1(
XX
DDD
= )1()3(
)1,1()1,2()2,2(
XX
DDD
= ...
)1()(
)2,1()2,2()1,1(
XNX
NDNDND
=
X(2) D(2,0)
)2()3(
)0,2()0,3()1,2(
XX
DDD
=
)2()4(
)1,2()1,3()2,3(
XX
DDD
=
X(3) D(3,0)
)3()4(
)0,3()0,4()1,3(
XX
DDD
=
)3()5(
)1,3()1,4()2,4(
XX
DDD
=
M M M M
)1()(
)1,1()1,()2,1(
=
NXNX
NDNDND
X(N-1) D(N-1,0)
)1()(
)0,1()0,()1,(
=
NXNX
NDNDND
X(N) D(N,0)
5/28/2018 Capitulo4 Interpolacao Rev 2005
27/29
99
Seja M = N + 1, o nmero de pontos da tabela. Os elementos de D podem ser obtidos, de
uma forma genrica, a partir das expresses:
1,...,2,1,0,...,2,1,)()(
)1,()1,1(),(
,0)),(()0,(
+==
+
+=
==
JMINJIXJIX
JIDJIDJID
NIIXFID
O polinmio de interpolao de Newton com diferenas divididas, em uma determinada
abscissa A, dado por:
),0())1())...(1())(0((
)1,0())2())...(1())(0((
...)2,0())1())(0(()1,0())0(()0,0()(
NDNXAXAXA
NDNXXXAXA
DXAXADXADAP
+
++
+++=
( )
( ) 1)(
),0()(
1
0
0
1
0
=
=
=
=
=
kXAcom
JDKXA
K
N
J
J
K
Segue o algoritmo:
Incio ! Mtodo de Newton com Diferenas Divididas
! entrada de dados
Solicite o nmero de pontos
Leia o nmero de pontos (M)
Solicite os valores de (X,F(X))
N = M 1
Para I de 0 at N
Faa
Leia X(I), D(I,0)
Fim Para
! construo da tabela de diferenas divididas
Para J de 1 at N
Faa
Para I de 0 at M-J+1
Faa
)()(
)1,()1,1(),(
IXJIX
JIDJIDJID
+
+=
Fim para
Fim para
! clculo do valor aproximado
Solicite o valor da abscissa em que se quer aproximar F
Leia o valor da abscissa (A)
F = 0Para J de 0 at N
Faa
P = 1
Para K de 0 at J-1
Faa
P = P * (A X(K))
Fim Para
F = F + D(0,J)*P
Fim para
5/28/2018 Capitulo4 Interpolacao Rev 2005
28/29
100
(* sada do valor aproximado *)
Escreve Aproximao = , F
Fim ! Mtodo de Newton com Diferenas Divididas
Exerccios:
(1) Considere a funo y = f (x) conhecida atravs dos pontos da tabela:
x 0.000 0.100 0.300 0.400
f(x) 1.000 0.761 0.067 -0.376
Atravs da forma de Lagrange, determine:
(a) o valor aproximado de f(0.32) usando um polinmio interpolador de 2ograu, ou
seja, calcule P2(0.32)
(b) P3(0.32)
Sabendo que a funo f(x) x3- 4x2- 2x + 1, calcule f(0.32) exatamente.
Obs.:trabalhar com quatro decimaisResp.: P2(0.32) = -0.0165 P3(0.32) = -0.0168
(2) A tabela a selguir relaciona o calor especfico da gua (c) em funo da temperatura
(T). Calcular o calor especifico da gua a uma temperatura de 25oC interpolando os
pontos da tabela com um polinmio de 3ograu, obtido atravs:
(a) da frmula de Lagrange.
(b) da frmula de Newton com diferenas divididas.Comparar os resultados obtidos com o valor real 0.99852
T (oC) C
20
30
45
55
0.99907
0.99826
0.99849
0.99919
Resp.: P3(25) = 0.99854
(3) A tabela a seguir relaciona a velocidade (v) de um foguete lanado do solo com otempo (t). Calcule a velocidade aproximada do foguete 25s aps o lanamento,
interpolando os pontos da tabela com um polinmio de 4o grau, obtido atravs da
frmula de Newton com diferenas divididas.
t (s) 0 8 20 30 45
v (m/s) 0.000 52.032 160.450 275.961 370.276
Resp.: P4(25) = 219.612 m/s
5/28/2018 Capitulo4 Interpolacao Rev 2005
29/29
101
(4) A tabela a seguir relaciona a distncia (d) percorrida por uma bala ao longo do cano de
um canho com o tempo (t). Encontrar a distncia percorrida pela bala 5 segundos aps
ter sido disparada, interpolando os pontos da tabela atravs de um polinmio de 4ograu
obtido atravs da frmula de Gregory-Newton.
t (s) 0 2 4 6 8d (m) 0.000 0.049 0.070 0.087 0.103
Resp.: P4(5) = 0.078
(5) Considerando a tabela a seguir, onde esto representados alguns pontos da funo
f x x( ) = 3 , determine o valor aproximado de 0.53.
x 0.000 0.008 0.064 0.216 0.512
f(x) 0.000 0.200 0.400 0.600 0.800
Agradecimentos:Ao Plo Computacional, em particular equipe de digitao, cujo apoio foi essencial para a produo do
presente trabalho. Aos colegas do DMA, pelo apoio, crticas e sugestes recebidas.
BIBLIOGRAFIA1. RUGGIERO, M.A.G. & LOPES, V.L.R. Clculo Numrico Aspectos Tericos e Computacionais.
McGraw-Hill, 1988.
2. DORN, W.S. & MAcCRACKEN, D.D. Clculo Numrico com Estudo de Casos em Fortran IV.Campus,1978.
3. BARROSO, L.C. & outros. Clculo Numrico (com aplicaes). Editora Harbra Ltda, 1987.4. SCHEID, F. Anlise Numrica. McGraw-Hill, 1991.5. ALBRECHT, P. Anlise Numrica: um curso moderno. Livros Tcnicos e Cientficos, 1973.6. PACITTI, T. & ATKINSON, C.P. Programao e Mtodos Computacionais(Vol. 2). Livros Tcnicos
e Cientficos, 1981.7. CHAPRA, S.C. & CANALE, R.P. Numerical Methods for Engineers (with Personal Computer
Applications). McGraw-Hill, 1987.