ap cn 2osem 2007 interpolacao
TRANSCRIPT
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
1/27
73
unesp CAMPUS DE GUARATINGUETÁ Computação e Cálculo Numérico: Elementos de Cálculo Numérico
Prof. G.J. de Sena - Depto. de Matemática – Rev. 2007
C APÍTULO 4
INTERPOLAÇÃO
4.1 INTRODUÇÃO
Considere a seguinte tabela relacionando calor específico 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 interpolação. Interpolar umafunção f(x) consiste em "substituir" esta função por outra função, g(x), que é uma
aproximação da função dada.
Há a necessidade de se efetuar uma interpolação em várias situações, como por exemplo:
(a) quando a função é conhecida apenas em um conjunto finito e discreto de pontos, não se
dispondo de sua forma analítica;
(b) quando a forma analítica da função é tal que operações como a diferenciação e a
integração são difíceis (ou mesmo impossíveis) de serem realizadas.
4.2 PROBLEMA GERAL DE INTERPOLAÇÃO
Sejam n x x x ,,, 10 , )1( +n pontos distintos, chamados pontos de interpolação e sejam)(,),(),( 10 n x f x f x f os valores de )( x f nesses pontos.
Objetiva-se obter uma função de interpolação g(x) para a função f(x), a partir dos pontos de
interpolação, com a condição de que os valores numéricos de f e g sejam coincidentes
nesses pontos de interpolação, ou seja:
)()(),()(),()( 1100 nn x f xg x f xg x f xg ===
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
2/27
74
Graficamente:
Obs.:(a) A função g(x) pode pertencer à classe das funções exponenciais, logarítmicas,
trigonométricas ou polinomiais;
(b) Para o caso da interpolação polinomial, há as formas dadas, por exemplo, pela
fórmula de Taylor e pelos polinômios de Hermite, em que as condições de
interpolação são outras.
4.3 INTERPOLAÇÃO POLINOMIAL
4.3.1 EXISTÊNCIA E UNICIDADE DO POLINÔMIO INTERPOLADOR
Dados os pontos ))(,(,)),(,()),(,( 1100 nn x f x x f x x f x , portanto 1+n pontos, queremos
aproximar ( ) x f por um polinômio de grau ( ) xPn n,≤ , tal que:
( ) ( ) nk xP x f k nk ,...,2,1,0==
Dado que ( ) xPn é da forma
nn xa xa xaa ++++ ...
2
210
obter ( )P xn significa obter os coeficientes
naaaa ,...,,, 210
Da condição ( ) ( )k k n x f xP = , obtém-se o sistema linear:
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
3/27
75
( )
( )
( )
=++++
=++++
=++++
+
nnnnnn
nn
nn
n
x f xa xa xaa
x f xa xa xaa
x f xa xa xaa
S
2
210
11
2
12110
00
2
02010
1
com n+1 equações e n+1 variáveis: naaa ,,, 10 .
A matriz A dos coeficientes:
=
nn
n
n
nn x
x
x
x x
x x
x x
A
1
0
2
2
11
2
00
1
1
1
é uma matriz de Vandermonde. Portanto, desde que x0, x1, ..., xn sejam pontosdistintos, tem-se que det A ≠ 0 e que o sistema admite solução única.
Concluindo: se x x j k k j≠ ≠, , então existe um único polinômio )( xPn , de grau ≤ n, tal
que nk x f xP k k n ,...,2,1,0),()( == .
Exemplo: Obter um polinômio 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)
Solução:
Forma do polinômio:2
212 )( xa xaa xP o ++=
Condição de interpolação:
2,1,0)()(2 == k x f xP k k
320.3)2.1()2.1()2.1()2.1()(
004.3)1.1()1.1()1.1()1.1()(
718.2)0.1()()0.1()(
2
210222
2
210212
0210202
==++==
==++==
===++==∴
f aaaP xP
f aaaP xP
f x f aaaP xP
Os coeficientes ao, a1 e a2 são obtidos, portanto, da solução do sistema:
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
4/27
76
=++
=++
=++
320.3a44.1a2.1a
004.3a21.1a1.1a
718.2aaa
:S
210
210
210
3
Usando o dispositivo prático para o método de eliminação de Gauss, obtém-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.0a
1
−=−
=
0.002 0.003 a0 = 2.718 - 1.5 + 0.29 = 1.508
2
2 5.129.0508.1)( x x xP +−=∴
85725.2)05.1)(5.1()05.1)(29.0(508.1)05.1()05.1(2
2 =+−=≅ P f
Obs.: sabendo-se que xe x f =)( , tem-se que 8576511.2)05.1( 05.1 == e f
A matriz A dos coeficientes pode ser, no caso geral, mal condicionada. Portanto, não será
sempre conveniente obter o polinômio de interpolação da forma indicada no exemplo.
4.3.2 OBTENÇÃO DE )( xPn - FORMA DE LAGRANGE
Sejam n x x x ,,, 10 , )1( +n pontos distintos, e )( ii x f y = , ni ,,2,1,0 = . Seja )( xPn o
polinômio de grau ≤ n que interpola f em n x x x ,,, 10 . Supor que )( xPn é da forma:
)(...)()()( 1100 x L y x L y x L y xP nnn +++=
onde cada ),...,2,1,0(),( nk x Lk = , é um polinômio de grau ≤ n.
Da condição de interpolação:
iin y xP =)( vem que iinnii y x L y x L y x L y =+++ )(...)()( 1100
Esta condição será satisfeita se se impuser:
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
5/27
77
≠
==
ik se
ik se x L ik
,0
,1)(
o que é obtido com a seguinte definição de Lk (x):
))...()()...()((
))...()()...()(()(
1110
1110
nk k k k k k k
nk k k x x x x x x x x x x
x x x x x x x x x x x L
−−−−−
−−−−−=
+−
+−
pois:
k ise x L
e x L
ik
k k
≠=
=
0)(
1)(
Como Lk (x) tem n fatores da forma (x - xi), )( x Lk é um polinômio de grau n. Assim,
)( xPn é um polinômio de grau ≤ n.
Esta é a f orma de Lagrange para o polinômio interpolador:
=
=
n
k k k n x L y xP
0
)()( onde
)(
)(
)(
0
0
ik
n
k ii
i
n
k ii
k
x x
x x
x L−
−
=
≠
=
≠
=
π
π
Exemplo:Seja )( x f y = uma função definida através da tabela a seguir. Para esta função pede-se,utilizando a forma de Lagrange, com interpolação quadrática:
(a) O valor aproximado para )05.1( f ;
(b) O polinômio de interpolação na forma 22102 )( xa xaa xP ++= .
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Resolução:
(a) )()()()( 2211002 x L y x L y x L y xP ++=
)2.10.1)(1.10.1(
)2.1)(1.1(
))((
))(()(
2010
210
−−
−−=
−−
−−=
x x
x x x x
x x x x x L
)2.10.1)(1.10.1(
)2.105.1)(1.105.1()05.1(0
−−
−−= L
)2.11.1)(11.1(
)2.1)(1(
))((
))(()(
2101
201
−−
−−=
−−
−−=
x x
x x x x
x x x x x L
)2.11.1)(11.1(
)2.105.1)(105.1()05.1(1
−−
−−= L
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
6/27
78
)1.12.1)(12.1(
)1.1)(1(
))((
))(()(
1202
102
−−
−−=
−−
−−=
x x
x x x x
x x x x x L
)1.12.1)(12.1(
)1.105.1)(105.1()05.1(2
−−
−−= L
)05.1(32.3)05.1(004.3)05.1(718.2)05.1()05.1( 2102 L L LP f ++=≅
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
85725.2)125.0(32.375.0004.3375.0718.2)05.1(2 =−×+×+×=∴ P
(b) Obtenção de 22102 )( xa xaa xP ++=
)()()()( 2211002 x L y x L y x L y xP ++=
6611550)2.10.1)(1.10.1(
)2.1)(1.1()(
2
0 +−=−−
−−= x x
x x x L
120220100)2.11.1)(11.1(
)2.1)(1()(
2
1 −+−=−−
−−= x x
x x x L
5510550)1.12.1)(12.1(
)1.1)(1()(
2
2 +−=−−
−−= x x
x x x L
)5510550(320.3)120220100(004.3)6611550(718.2)(222
2 +−+−+−++−=∴ x x x x x x xP
= − +P x x x2215 0 29 1508( ) . . .
Observação:
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
Exemplo: (interpolação linear)(a) Obter, utilizando a forma de Lagrange, o polinômio P1 (x) que interpole os pontos
))(,( 00 x f x e ))(,( 11 x f x .
(b) Comparar com a equação da reta que passa por estes pontos.
Resolução:
(a) )()()( 11001 x L y x L y xP += x 0 x 1 x
f(x)o y 1 y
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
7/27
79
L xx x
x x0
1
0 1
( )( )
( )=
−
− L x
x x
x x1
0
1 0
( )( )
( )=
−
−
ba
x x
x y x y x x x
y y
x x
x x y x x
x x y x x
x x y x x
x x y xP )(
)(
)(
)(
)(
)(
)(
)(
)(
)(
)(
)()(
01
0110
01
01
01
01
01
10
01
01
10
101−
−
+−
−
=−
−
+−
−
=−
−
+−
−
=∴
(b)
0
01
01
01 )(
x x
y xP
x x
y ytg
−
−=
−
−=α 00
01
011 )(
)(
)()( y x x
x x
y y xP +−
−
−=
)(
)()(
)(
)()(
01
001010
01
011 x x
y x x x y y x
x x
y y xP
−
−+−+
−
−=
ba
x x
x y x y x
x x
y y xP
)(
)(
)(
)()(
01
0110
01
011
−
−+
−
−=
Exemplo:Seja a função )( x f y = 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 )20.0( f aplicando-se a fórmula de Lagrange
Resolução:
( ) +−−−−
−−−−+
−−−−
−−−−=
++++=
)11.0)(6.01.0)(3.01.0)(01.0(
)1)(6.0)(3.0)(0()001.2(
)10)(6.00)(3.00)(1.00(
)1)(6.0)(3.0)(1.0(1
)()()()()()( 44332211004
x x x x x x x x
x L y x L y x L y x L y x L y xP
( ) ( )
( ))6.01)(3.01)(1.01)(01(
)6.0)(3.0)(1.0)(0(21
)16.0)(3.06.0)(1.06.0)(06.0(
)1)(3.0)(1.0)(0(296.8
)13.0)(6.03.0)(1.03.0)(03.0(
)1)(6.0)(1.0)(0(081.4
−−−−
−−−−
+−−−−
−−−−+
−−−−
−−−−
x x x x
x x x x x x x x
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
8/27
80
016.3)6.01)(3.01)(1.01(
)6.02.0)(3.02.0)(1.02.0)(2.0()21(
)16.0)(3.06.0)(1.06.0)(6.0(
)12.0)(3.02.0)(1.02.0(2.0()296.8(
)13.0)(6.03.0)(1.03.0)(3.0(
)12.0)(6.02.0)(1.02.0)(2.0()081.4(
)11.0)(6.01.0)(3.01.0)(1.0(
)12.0)(6.02.0)(3.02.0)(2.0()001.2(
)6.0)(3.0)(1.0(
)12.0)(6.02.0)(3.02.0)(1.02.0(
)20,0()20,0( 4
=−−−
−−−
+−−−
−−−+
−−−
−−−
+−−−
−−−+
−−−−=
=≅∴ P f
016.3)20,0( ≅∴ f
Exercício: Usar a forma de Lagrange para obter um polinômio de grau ≤ 3 que interpole os pontos
da 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 −+−= x x x xP
Exercício: Seja a função )( x f y = 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 fórmula de Lagrange.
4.3.3 OBTENÇÃO DE )( xPn - FORMA DE GREGORY - NEWTON PARA O
POLINÔMIO INTERPOLADOR
4.3.3.1 TABELA DE DIFERENÇAS FINITAS
Definição: Sejam ,,, 210 x x x pontos que se sucedem com passo h, isto é, jh x x j += 0 . Define-se o
operador de diferenças finitas como segue:
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
9/27
81
)()()(
)()()(
)()()(
)()(
11
2
0
x f h x f x f
x f h x f x f
x f h x f x f
x f x f
nnn −−∆−+∆=∆
∆−+∆=∆
−+=∆
=∆
Conhecidos os valores de )( x f em n x x x x ,,, 210 , constrói-se a seguinte tabela dediferenças finitas:
x f(x) ∆∆∆∆f(x) ∆∆∆∆2f(x)
0 x f(x0)
∆f(x0)
1 x f(x1) ∆2f(x0)
∆f(x1) ...
2 x f(x2) ∆2f(x1)
∆f(x2)
3 x f(x3)
Exemplo: Seja f(x) dada na forma tabular:
x -1 0 1 2 3
f(x) 2 1 2 5 10
A tabela de diferenças finitas para esta função é mostrada a seguir:
x f(x) ∆f(x) ∆2f(x) ∆3f(x) ∆4f(x)
-1 2
-10 1 2
1 0
1 2 2 0
3 0
2 5 2
5
3 10
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
10/27
82
4.3.2 O POLINÔMIO DE INTERPOLAÇÃO
Estabelece-se a seguinte forma para o polinômio de interpolação (forma de Gregory-Newton):
!.
)())...()((...
2
)())((
)()()()( 01102
0
2
100
00 nh
x f x x x x x x
h
x f x x x x
h
x f x x x f xP
n
n
nn
∆−−−++
∆−−+
∆−+=
−
Observar que os pontos de interpolação devem ser igualmente espaçados (por um valor de“passo” h).
Exemplo: Para os dados da função f(x), apresentada abaixo na forma tabular a seguir, pede-se obter,
usando a forma de Gregory-Newton:
a) Uma aproximação para f(1.05)
b) O polinômio )(2 xP que interpola f(x)
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Solução:(a) Construção da tabela das diferenças finitas
x f(x) ∆f(x) ∆2f(x)
x0 =
1
2.718
0.286
1.1 3.004 0.03
0.316
1.2 3.320
2
0
2
100
0022
)())((
)()()()(
h
x f x x x x
h
x f x x x f xP
∆−−+
∆−+=
2.)1.0(
03.0)1.1)(1(
1.0
286.0)1(718.2)(
22 −−+−+=∴ x x x xP
2.)1.0(
03.0)1.105.1)(105.1(
1.0
286.0)105.1(718.2)05.1()05.1(
22 −−+−+=≅ P f
85725.2)05.1( ≅ f
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
11/27
83
(b) obtenção de P2(x):
2.)1.0(
03.0
)1.1)(1(1.0
286.0
)1(718.2)( 22 −−+−+= x x x xP
)65.186.2718.2()15.386.2(5.1)(
)1.11.2(5.186.286.2718.2)(
2
2
2
2
+−+−+=
+−+−+=
x x xP
x x x xP
508.129.05.1)( 22 +−= x x xP
Exemplo: Dada a função )( x f y = , conhecida pelos pontos da tabela abaixo, obter umaaproximação para )25.0( f , empregando a fórmula de Gregory-Newton com:
a) Interpolação linear b) Interpolação quadrática
x 0.10 0.20 0.30 0.40 0.50
f(x) 0.125 0.064 0.027 0.008 0.001
Resolução:(a) Construção da tabela de diferenças finitas:
x f(x) ∆f(x) ∆2f(x) ∆3f(x) ∆4f(x)
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.006
0.40 0.008 0.012
-0.007
0.50 0.001
Obtenção de uma aproximação para )25.0( f utilizando interpolação linear ( )(1 xP ):
x f(x) ∆f(x)
=0 x 0.20 0.064
-0.037
0.30 0.027
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
12/27
84
O passo h corresponde ao espaçamento entre os pontos, ou seja, 10.020.030.0 =−=h .
h
x f
x x x f xP
)(
)()()(0
001
∆
−+= 1.0
)037.0(
)20.0(064.0)(1−
−+= x xP
1.0
)037.0()20.025.0(064.0)25.0()25.0( 1
−−+=≅ P f 0455.0)25.0( ≅ f
(b) Obtenção de uma aproximação para )25.0( f com interpolação quadrática ( )(2 xP ):
x f(x) ∆f(x) ∆2f(x)
=0 x 0.10 0.125
-0.0610.20 0.064 0.024
-0.037
0.30 0.027
2
0
2
100
0022
)())((
)()()()(
h
x f x x x x
h
x f x x x f xP
∆−−+
∆−+=
10.010.020.020.030.0 =−=−=h .
22
)10.0)(2(
024.0)2.0)(1.0(
10.0
)061.0()1.0(125.0)( −−+
−−+=∴ x x x xP
2
05.015.015.0
2)10.0)(2(
024.0)02.025.0)(10.025.0(
10.0
)061.0()10.025.0(125.0)25.0()25.0(
−−+
−−+=≅ P f
0425.0)25.0( ≅∴ f
Observe-se que poderiam também ser utilizados os pontos a seguir, para a obtenção de
)(2 xP :
x f(x) ∆f(x) ∆2f(x)
0.20 0.064-0.037
0.30 0.027 0.018
-0.019
0.40 0.008
22 )10.0)(2(
018.0)30.0)(20.0(
10.0
)037.0()20.0(064.0)( −−+
−−+= x x x xP
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
13/27
85
22 )10.0)(2(
018.0)30.025.0)(20.025.0(
10.0
)037.0()20.025.0(064.0)25.0()25.0( −−+
−−+=≅ P f
04325.0)25.0( ≅∴ f
Exercício: dada a função )( x f y = , conhecida pelos pontos da tabela abaixo, calcularuma aproximação para f(3.7), empregrando a fórmula de Gregory-Newton.
x 1 2 3 4 Obs.:
f(x) 0 0.6931 1.0986 1.3863 f(x) = ln x
Exercício: obter, usando a fórmula de Gregory-Newton, uma aproximação para f(0.7),
onde f é uma função conhecida apenas nos pontos tabelados a seguir:
x 0 0.5 1 1.5 2.0
f(x) 0.0 1.1487 2.7183 4.9811 8.3890
4.3.4 OBTENÇÃO DE )( xPn - FORMA DE NEWTON COM DIFERENÇAS
DIVIDIDAS
4.3.4.1 TABELA DE DIFERENÇAS DIVIDIDAS
Definição:
Seja )( x f y = uma função tabelada em ( )1 ,,,, 10 +n x x x n pontos distintos. Define-se o
operador de diferenças divididas como segue:
( )
[ ] [ ] [ ] ( ) ( )
01
01
01
0110
00
,
x x
x f x f
x x
x f x f x x f
x f x f
−
−=
−
−=
=
[ ] [ ] [ ]
[ ] [ ] [ ]
03
2103213210
02
1021210
,,,,,,,
,,,,
x x
x x x f x x x f x x x x f
x x
x x f x x f x x x f
−
−=
−
−=
[ ] [ ] [ ]
0
11021210
,,,,,,,,,,
x x
x x x f x x x f x x x x f
n
nnn
−
−=
−
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
14/27
86
Define-se [ ]k x x x f ,,, 10 como sendo a diferença dividida de ordem k da função f(x)
sobre os (k+1) pontos: k x x x ,,, 10
Tabela de diferenças divididas
Conhecidos os valores de )( x f y = em ,,,, 10 n x x x , constrói-se a seguinte tabela de
diferenças divididas.
x ordem 0 ordem 1 ordem 2 ordem 3 ... ordem n
0 x [ ]f x 0
[ ]f x x0 1,
1 x [ ]f x1 [ ]f x x x0 1 2, ,
[ ]f x x1 2, [ ]f x x x x0 1 2 3, , ,
2 x [ ]f x 2 [ ]f x x x1 2 3, ,
[ ]f x x2 3, [ ]f x x x x1 2 3 4, , ,
3 x [ ]f x 3 [ ]f x x x2 3 4, ,
[ ]f x x3 4, [ ]f x x x xn0 1 2, , , ,
4 x [ ]f x 4
[ ]f x x x xn n n n− − −3 2 1, , ,
[ ]f x x xn n n− −2 1, ,
[ ]f x xn n−1 ,
n x [ ]f x n
Exemplo: Construir a tabela de diferenças divididas para a função f( x ) tabelada a seguir:
x -1 0 1 2 3
f(x) 1 1 0 -1 -2
Resolução:
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
15/27
87
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 11
0 0
3 00
−
−=
2 -1 ( )− − −
−=
1 1
3 10
( )− − −
−= −
2 1
3 21
3 -2
4.3.4.2 FORMA DE NEWTON PARA O POLINÔMIO INTERPOLADOR
A forma de Newton para o polinômio )( xPn que interpola f(x) em ,,,, 10 n x x x )1( +n pontos distintos, é a seguinte:
( ) ( ) ( ) [ ] ( )( ) [ ]
( )( ) ( ) [ ]nn
n
x x x f x x x x x x
x x x f x x x x x x f x x x f xP
,,,
,,,
10110
210101000
−−−−+
+−−+−+=
Exemplo: Obter, utilizando a forma de Newton com diferenças divididas, o polinômio)(2 xP que interpola )( x f y = nos pontos dados abaixo:
x 1.0 1.1 1.2
f(x) 2.718 3.004 3.320
Resolução:
(a) Tabela das diferenças 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 86
1 2 1 01 5
. .
. ..
−
−=
16.31.12.1
004.3320.3=
−
−
1.2 3.320
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
16/27
88
(b) Obtenção de )(2 xP :
( ) ( ) ( ) [ ] ( )( ) [ ]
( ) ( )( ) ( )( )( )
( ) 508.129.05.1
65.115.35.186.286.2718.2=5.11.1186.21718.2
,,,
2
2
2
2
2101010002
+−=
+−+−+−−+−+=
−−+−+=
x x xP
x x x x x x xP
x x x f x x x x x x f x x x f xP
Exemplo:Dada a função )( x f y = , conhecida pelos pontos da tabela abaixo, obter uma aproximaçãopara )25.0( f , através da fórmula de Newton (com diferenças divididas), utilizando:
a) Interpolação linear
b) Interpolação quadrática
x 0.10 0.20 0.30 0.40 0.50f(x) 0.125 0.064 0.027 0.008 0.001
Resolução:
(a) Aproximação com interpolação linear:
Construção da tabela de diferenças divididas:
x ordem 0 ordem 1 ordem 2 ordem 3 ordem 4
0.10
0.125 10.6−=
−
−
10.020.0
125.0064.0
0.20 0.064 ( ) 1.2=−
−−−
10.030.0
61.037.0
37.020.030.0
064.0027.0−=
−
−
0 9 1 2
0 40 0 10
. .
. .
−
−= −1
0.30 0.027 ( )− − −−
=0 19 0 37
0 0 200 9
. .
.40 .. ( )− − −
−=
1 1
0 50 0 10. .0
19.030.040.0027.0008.0 −=
−
− 0 6 0 90 50 0 201. .
. .
−
−= −
0.40 0.008 ( )− − −−
=0 07 019
0 50 0 300 6
. .
. ..
07.040.050.0
008.0001.0−=
−
−
0.50 0.001
Obtenção de )(1 xP :
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
17/27
89
x ordem 0 ordem 1
=0 x 0.20 0.064-0.37
0.30 0.027
( ) ( ) ( ) [ ] )37.0)(20.0(064.0, 10001 −−+=−+= x x x f x x x f xP
( ) )37.0)(20.025.0(064.025.0)25.0( 1 −−+=≅ P f 0455.0)25.0( ≅∴ f
(b) Aproximação com interpolação quadrática:
x ordem 0 ordem 1 ordem 2
=0 x 0.20 0.064
-0.37
0.30 0.027 0.9
-0.19
0.40 0.008
( ) ( ) ( ) [ ] ( )( ) [ ]2101010002 ,,, x x x f x x x x x x f x x x f xP −−+−+=
( ) ( ) ( )( ) .9)0(30.020.0)37.0(20.0064.02 −−+−−+=∴ x x x xP ( ) ( ) ( )( ) .9)0(30.025.020.025.0)37.0(20.025.0064.025.0)25.0( 2 −−+−−+=≅ P f 04325.0)25.0( ≅ f
4.3.4.3 ESTUDO DO ERRO NA INTERPOLAÇÃO
Ao se aproximar uma função )( x f y = por um polinômio interpolador de grau ≤ n comete-se um erro, ou seja:
( ) ( ) ( ) [ ]nnn x x x xP x f xE , , 0∈∀−=
Teorema 1: Sejam ( )1 ,210 +
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
18/27
90
Observe-se que a fórmula anterior para ( ) xE n tem uso limitado na prática, dado que são
raras as situações em que conhecemos ( ) )(1 x f n + e que o ponto xε nunca é conhecido.
Teorema 2:
[ ]( )( )
( ) ( ) ( )n xn
xn
n x x x x xn
f x x x x f ,e,,
!1,,,, 00
1
10 ∈∈+
=
+
ε ε
Observe-se que este teorema mostra a relação existente entre a diferença dividida de ordem
( )1+n e a derivada de ordem ( )1+n .
Corolário 1:
Sob as hipóteses do Teorema 1, e se( )
( ) x f n 1+
for contínua em [ ],,0 n x x I = pode-se escrevera seguinte relação:
( ) ( ) ( ) ( )( ) ( )( )!1
110
+−−−≤−=
+
n
M x x x x x x xP x f xE nnnn
onde ( )( ) x f máx M n
I xn
1
1 +
∈+
=
Se a função )( x f y = é dada na forma de uma tabela, o valor absoluto do erro, ( ) , xE n
somente pode ser estimado. Se construirmos a tabela de diferenças divididas até ordem
)1( +n , podemos usar o maior valor (em módulo) das diferenças divididas de ordem (n+1)
como uma aproximação para( )!1
1
+
+
n
Mn no intervalo [ ],, no x x ou seja:
( ) ( )( ) ( ) ( )1+nordemdedivididas10 diferenças Max x x x x x x xE nn ×−−−≅
Exemplo: Seja )( x f y = 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
Para esta função, pede-se obter:
(a) Uma aproximação para f(0.47) utilizando um polinômio de grau 2 (interpolação
quadrática), a partir da forma de Newton com diferenças divididas.
(b) Obter uma estimativa para o erro incorrido com esta aproximação.
Resolução:
(a) Tabelas de diferenças divididas
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
19/27
91
x ordem 0 ordem 1 ordem 2 ordem 30.2 0.16
0.4286
0.34 0.22 2.02350.8333 -17.8963
=0 x 0.4 0.27 -3.7033
0.1667 18.2492=1 x 0.52 0.29 1.0415
0.375 -2.6031
=2 x 0.6 0.32 0.2085
0.4167
0.72 0.37
( ) ( ) ( ) [ ] ( )( ) [ ] =−−+−+= 2101010002 ,,, x x x f x x x x x x f x x x f xP
( )( ) ( )( )( )0415.152.04.00.16674.027.0 −−+−+ x x x
( ) ( ) ( ) ( ) ( )( )( )
( ) 2780.047.0
0415.152.047.04.047.00.16674.047.027.047.047.0 2
≅∴
−−+−=≅
f
P f
(b) ( ) ( )( ) ( ) ( )1+nordemdedivididas10 diferenças Max x x x x x x xE nn ×−−−≅
( ) ( )( )( ) 3ordem divididas2102 diferenças Max x x x x x x xE ×−−−≅
( ) ( )( )( ) ( )
( ) 32
2
10303.847.0
2492.186.047.052.047.04.047.047.0
−≅∴
−−−≅
xE
E
4.3.5 INTERPOLAÇÃO INVERSA
Dada a Tabela:
x 0 x 1 x 2 x … n x
)( x f )( 0 x f )( 1 x f )( 2 x f … )( n x f
o problema de Interpolação Inversa consiste em, dado ( ) ( )( )no x f x f , y ∈ , obter
( ) .xquetalx y f =
FORMAS DE SE RESOLVER ESTE PROBLEMA
(I) Obter )( xPn que interpole )( x f y = em ,,,, 10 n x x x e em seguida encontrar
( ) yPn =xquetalx
Exemplo:Dada a tabela a seguir, encontrar uma aproximação x para x tal que 2)( = x f .
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
20/27
92
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 interpolação quadrática sobre 8.0e,7.0,6.0 21 === x x xo
Resolução:
Tabela de Diferenças Divididas
x ordem 0 ordem 1 ordem 20.5 1.65
2.1
0.6 1.86 -31.5
0.7 2.01 3.52.2
0.8 2.23 2.0
2.3
0.9 2.46 1.5
2.6
1.0 2.72
Polinômio de Interpolação
( ) ( ) ( ) [ ] ( )( ) [ ]2101010002 ,,, x x x f x x x x x x f x x x f xP −−+−+=
( ) ( )( ) ( )( )( ) 43.205.35.35.37.00.6-x+5.16.0+1.86= 22 +−=−− x x x x xP
( ) ( )
043.0x05.3x5.30.243.2x05.3x5.3
2x0.2x
22
2
=+−=+−∴
≅= f P
177.0xou6945.0x == ∴ 6945.0x = (pois )7.0,6.0(6945.0x ∈= ).
(II) Interpolação Inversa
Se )( x f y = for inversível num intervalo contendo y então fazemos a interpolação de
( ) ( ) yg y f x == −1 .
Uma condição para que uma função contínua num intervalo [a, b] seja inversível é que seja
monótona crescente (ou decrescente) neste intervalo. Se )( x f é dada na forma tabelar,supondo que )( x f y = seja contínua em ( ) ( ) x f x x no ,, será considerada monótona
crescente se ( ) ( ) ( )no x f x f x f > 1 .
Exemplo:Para os dados do exemplo anterior, encontrar x tal que ( ) :2xf = , através de interpolaçãoinversa, utilizando interpolação quadrática. Estimar o erro incorrido com esta aproximação.
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
21/27
93
Resolução:Tabela de diferenças divididas:
y ordem 0 ordem 1 ordem 2 ordem 3 1,65 0,5
0,4762
=0 y 1,86 0,6 0,5291
0,6667 -1,9007
=1 y 2,01 0,7 -0,5733
0,4545 0,8823
=2 y 2,23 0,8 -0,0439
0,4348 -0,0823
2,46 0,9 -0,1024
0,3846
2,72 1
Obtenção de x (interpolação inversa):( ) ( ) ( ) [ ] ( )( ) [ ]21112 ,,, y y yg y y y y y yg y y yg yP ooooo −−+−+=
( ) ( )( ) ( )( )( )
( ) ( )( ) ( )( )( )
6941.0
6941.0=5733.001.2286.126667.086.126.000.2
5733.001.286.16667.086.16.0
2
2
=∴
−−−+−+=∴
−−−+−+=∴
x
P
y y y yP
Estimativa do erro na aproximação:
( ) ( )( ) ( ) ( )1+nordemdedivididas10 diferenças Max y y y y y y yE nn ⋅−−−≅
( ) ( )( )( ) 3ordem divididas2102 diferenças Max y y y y y y yE ⋅−−−≅
( ) ( )( )( )( ) ( ) 0.00061200.29007.123.200.201.200.286.100.200.2 22 ≅−−−≅ E E
Exercício: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 polinômio 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 possível.
Resp.: (I) 0.3166666 (II) 0.3166666; 310666664.1 −≅ xerro
Exercício:Construa uma tabela para a função f(x) = cos(x) usando os pontos: 0.8, 0.9, 1.0, 1.1, 1.2,
1.3. Obtenha um polinômio de 3o grau para estimar cos(1.07) Forneça um limitante
superior para o erro ao se calcular cos(1.07) pelo polinômio obtido.
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
22/27
94
Resp.:( )
( ) 610x2020383.107.1E
4801232.007.1cos
−≤
≅
Exercício:O calor específico da água, como função da temperatura, é dado por:
Temperatua, oC Calor Específico
20 0.99907
25 0.99852
30 0.99826
35 0.99818
40 0.9982845 0.99849
50 0.99878
(a) Use interpolação linear para estimar o calor específico da água a 37oC;
(b) Use interpolação quadrática para estimar o calor específico a 37oC.
Observação: usar o polinômio interpolante de Newton com diferenças divididas, estimar o
erro cometido em cada caso:
4.3.6 INTERPOLAÇÃO LINEAR DUPLA
Seja determinar uma aproximação para ( )cc y,xf , utilizando a teoria de Interpolação.
Supor que xc e yc satisfaçam às restrições:
ici
jc j
y y y
x x x
≤≤
≤≤
−
−
1
1
Graficamente:
Inicialmente interpolamos y x f z j ,1−= e obtemos uma expressão para ( )c j y x f ,1−
, onde
( )c j y x f ,1−
é uma aproximação parac j
y x f ,1−
. Depois interpolamos y x f z j
,= e
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
23/27
95
obtemos uma expressão para ( )c j
y x f , . Interpolamos então ( )c
y x f z ,= e obtemos então
uma expressão para ( )cc
y,xf . O detalhamento segue:
( ) ( ) ( ) ( )[ ]111
1
1
111 ,,,, −−−−
−
−−−−
−
−+= i ji j
ii
ic
i jc j y x f y x f y y
y y y x f y x f
( ) ( ) ( ) ( )[ ]1
1
1
1 ,,,, −−
−
−−
−
−+= i ji j
ii
ic
i jc j y x f y x f y y
y y y x f y x f
( ) ( ) ( ) ( )[ ]c jc j
j j
jc
c jcc y x f y x f x x
x x y x f y x f ,,,, 1
1
1
1 −
−
−
−−
−
−+=
Notar que as expressões para ( )c j
y x f ,1−
e ( )c j
y x f , são obtidas a partir da interpolação de
z como função de y, mantidos constantes os correspondentes valores de x. Notar também
que a expressão para ( )cc y x f , é obtida a partir da interpolação de z como função de x, em
y constante é igual ac
y . Observar, por final, que os valores para ( )c j y x f ,1−
e ( )c j
y x f , ,
calculados através das duas primeiras expressões, são utilizados no cálculo de ( )cc
y x f , .
Exemplo:A integral elíptica de primeira espécie é definida como sendo:
( ) Θ−
=Θϕ
ϕ
ϕ ϕ
0 22 sensen1,
d F
Mostra-se, a seguir, uma tabela parcial do valor desta função:
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.7354
75 1.5345 1.6492 1.7927 1.9468 2.0276
80 1.6660 1.8125 2.0119 2.2653 2.4362
Seja determinar ( )F o o73 77, , utilizando interpolação linear dupla.
Resolução:
Notação utilizada:
90,80,70,60,50 54321 ===== x x x x x
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
24/27
96
80,75,70,65,60,55,50 7654321 ======= y y y y y y y
Cálculo de uma aproximação para ( )77,73 f
( )
( )
( )
( ) 2653.280,80
9468.175,80
0119.280,70
7927.175,70
=
=
=
=
f
f
f
f
(i) ( ) ( ) 8804.17927.10119.27580
75777927.177,70 =−
−
−+= f
(ii) ( ) ( ) 0742.29468.12653.27580
75779468.177,80 =−
−
−+= f
(iii) ( ) ( ) 9385.18804.10742.27080
70738804.177,73 =−
−
−+= f
4.3.7 ASPECTOS COMPUTACIONAIS: IMPLEMENTAÇÃO DO MÉTODO DENEWTON COM DIFERENÇAS DIVIDIDAS
Esquema para construção da tabela de diferenças 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(
X X
D D D
−
−
=
)0()2(
)1,0()1,1()2,0(
X X
D D D
−
−
=
..
)0()1(
)2,0()2,1()1,0(
X N X
N D N D N D
−−
−−−
=−
)0()(
)1,0()1,1(),0(
X N X
N D N D N D
−
−−−
=
X(1) D(1,0)
)1()2(
)0,1()0,2()1,1(
X X
D D D
−
−
=
)1()3(
)1,1()1,2()2,2(
X X
D D D
−
−
=
..
)1()(
)2,1()2,2()1,1(
X N X
N D N D N D
−
−−−
=−
X(2) D(2,0)
)2()3(
)0,2()0,3()1,2(
X X
D D D
−
−
=
)2()4(
)1,2()1,3()2,3(
X X
D D D
−
−
=
X(3) D(3,0)
)3()4(
)0,3()0,4()1,3(
X X
D D D
−
−
=
)3()5(
)1,3()1,4()2,4(
X X
D D D
−
−
=
)1()(
)1,1()1,()2,1(
−−
−−
=−
N X N X
N D N D N D
X(N-1) D(N-1,0)
)1()(
)0,1()0,()1,(
−−
−−
=
N X N X
N D N D N D
X(N) D(N,0)
Seja M = N + 1, o número de pontos da tabela. Os elementos de D podem ser obtidos, de
uma forma genérica, a partir das expressões:
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
25/27
97
1,...,2,1,0,...,2,1,)()(
)1,()1,1(),(,0)),(()0,( +−==
−+
−−−+=== J M I N J
I X J I X
J I D J I D J I D N I I X F I D
O polinômio interpolante de Newton com diferenças 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()(
N D N X A X A X A N D N X X X A X A
D X A X A D X A D AP
−−−−+−−−−−+
+−−+−+=
( )
( ) 1)(
),0()(
1
0
0
1
0
=−
−=
−
=
=
−
=
k X Acom
J DK X A
K
N
J
J
K
π
π
Segue o algoritmo:
Início ! Método de Newton com Diferenças Divididas
! entrada de dados
Solicite o número de pontos
Leia o número de pontos (M)
Solicite os valores de (X,F(X))
N = M – 1
Para I de 0 até N
FaçaLeia X(I), D(I,0)
Fim Para! construção da tabela de diferenças divididas
Para J de 1 até NFaça
Para I de 0 até M-J+1
Faça
)()(
)1,()1,1(),(
I X J I X
J I D J I D J I D
−+
−−−+=
Fim paraFim para
! cálculo do valor aproximado
Solicite o valor da abscissa em que se quer aproximar FLeia o valor da abscissa (A)
F = 0
Para J de 0 até NFaça
P = 1
Para K de 0 até J-1
Faça
P = P * (A – X(K))
Fim Para
F = F + D(0,J)*P
Fim para
(* saída do valor aproximado *)
Escreve ‘Aproximação = ‘, F
Fim ! Método de Newton com Diferenças Divididas
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
26/27
98
Exercícios:
(1) Considere a função y = f (x) conhecida através dos pontos da tabela:
x 0.000 0.100 0.300 0.400
f(x) 1.000 0.761 0.067 -0.376
Através da forma de Lagrange, determine:
(a) o valor aproximado de f(0.32) usando um polinômio interpolador de 2o grau, ou
seja, calcule P2 (0.32)
(b) P3(0.32)
Sabendo que a função 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 específico da água (c) em função da temperatura
(T). Calcular o calor especifico da água a uma temperatura de 25oC interpolando os
pontos da tabela com um polinômio de 3o grau, obtido através:
(a) da fórmula de Lagrange.
(b) da fórmula de Newton com diferenças divididas.
Comparar os resultados obtidos com o valor real 0.99852
T (oC) C
2030
45
55
0.999070.99826
0.99849
0.99919
Resp.: P3(25) = 0.99854
(3) A tabela a seguir relaciona a velocidade (v) de um foguete lançado do solo com o
tempo (t). Calcule a velocidade aproximada do foguete 25s após o lançamento,
interpolando os pontos da tabela com um polinômio de 4o grau, obtido através da
fórmula de Newton com diferenças 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
(4) A tabela a seguir relaciona a distância (d) percorrida por uma bala ao longo do cano de
um canhão com o tempo (t). Encontrar a distância percorrida pela bala 5 segundos após
ter sido disparada, interpolando os pontos da tabela através de um polinômio de 4o grau
obtido através da fórmula de Gregory-Newton.
t (s) 0 2 4 6 8
d (m) 0.000 0.049 0.070 0.087 0.103
-
8/18/2019 AP CN 2oSem 2007 Interpolacao
27/27
99
Resp.: P4(5) = 0.078
(5) Considerando a tabela a seguir, onde estão representados alguns pontos da funçãof 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 Pólo Computacional, em particular à equipe de digitação, cujo apoio foi essencial para a produção do
presente trabalho. Aos colegas do DMA, pelo apoio, críticas e sugestões recebidas.
BIBLIOGRAFIA 1. RUGGIERO, M.A.G. & LOPES, V.L.R. Cálculo Numérico Aspectos Teóricos e Computacionais.
McGraw-Hill, 1988.2. DORN, W.S. & MAcCRACKEN, D.D. Cálculo Numérico com Estudo de Casos em Fortran IV.
Campus,1978.
3. BARROSO, L.C. & outros. Cálculo Numérico (com aplicações). Editora Harbra Ltda, 1987.4. SCHEID, F. Análise Numérica. McGraw-Hill, 1991.5. ALBRECHT, P. Análise Numérica: um curso moderno. Livros Técnicos e Científicos, 1973.6. PACITTI, T. & ATKINSON, C.P. Programação e Métodos Computacionais (Vol. 2). Livros Técnicos
e Científicos, 1981.
7. CHAPRA, S.C. & CANALE, R.P. Numerical Methods for Engineers (with Personal ComputerApplications). McGraw-Hill, 1987.