Escolar Documentos
Profissional Documentos
Cultura Documentos
Captulo 3
Interpolao Polinomial
Teorema de Weierstrass: se f(x) uma funo contnua em um intervalo fechado
[a, b], ento para cada > 0, existe um polinmio de grau n() tal que:
| f(x) pn(x)| <
x [a, b]
Embora seja um teorema motivador para usar polinmios, o valor de n() geralmente no
conhecido, principalmente quando f(x) no dada explicitamente. Outro motivo para usar
polinmios na aproximao de funes que suas derivadas e integrais so fceis de
determinar e tambm so polinmios.
Como o polinmio de Taylor, descrito no captulo anterior, concentra a sua preciso
prxima ao ponto x0, ele no adequado para a maioria das aplicaes prticas onde,
geralmente, se deseja uma boa aproximao em todo o intervalo de definio da funo f(x).
Contudo, o polinmio de Taylor de grande utilidade na anlise numrica para estimativas de
erros de tcnicas numricas. Portanto, neste captulo so abordados polinmios que utilizam
dados em vrios pontos do intervalo, chamados de polinmios interpoladores.
Dados n+1 pares de valores {xi, f(xi)}, i = 0, 1, 2, ..., n, existe um e somente um
polinmio pn(x) de grau n no qual
f(xi) = pn(xi) , i = 0, 1, 2, ..., n.
Portanto, embora existam vrias frmulas de interpolao polinomial, se elas
utilizarem as mesmas informaes nos pontos nodais {x0, x1, x2, ..., xn}, ento os polinmios
obtidos sero os mesmos.
Naturalmente, se f(x) for um polinmio de grau n, ento a aproximao tambm ser
exata x xi.
n
3. INTERPOLAO POLINOMIAL
c0 c1 x0 c2 x02 cn x0n f ( x0 )
2
n
c0 c1 x1 c2 x1 cn x1 f ( x1 )
2
c0 c1 xn c2 xn cn xnn f ( xn )
1 x0
x02 x0n
1 x1
x12 x1n
1 xn
2
n
xnn
senh( x)
x senh( )
O resultado do exerccio acima mostrado na figura abaixo, onde se observa no caso (b) o
efeito dos erros de arredondamento devido inverso matricial sem pivotamento do sistema
de Vandermonde que neste caso mal condicionado. Este problema no ocorreria se fosse
realizada a inverso matricial com pivotamento (parcial ou total).
1
1
exato
polinmio
pontos
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
exato
polinmio
pontos
0.9
0.1
Caso (a)
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Caso (b)
n
3. INTERPOLAO POLINOMIAL
f ( x0 ) lim
x x0
x x0
f ( x) f ( x0 )
x x0
f ( x) f ( x0 )
f [ x, x0 ] para x x0 chamada de primeira diferena dividida
x x0
ou diferena dividida de ordem 1 com relao a x e x0.
a aproximao
f ()
f (b) f (a )
para f(x) C1[a, b] e algum [a, b], ento:
ba
f [ x, x0 ] f () para algum [x, x0],
f ( x0 ) p1 ( x0 ) a0 f ( x0 )
f ( x1 ) p1 ( x1 )
a1
f ( x1 ) f ( x0 ) a1 ( x1 x0 )
f ( x1 ) f ( x0 )
f [ x1 , x0 ] , ou seja, p1 ( x) f ( x0 ) f [ x1 , x0 ] ( x x0 ) .
x1 x0
f [ x, x0 ] f [ x1 , x0 ]
f [ x, x1 , x0 ] .
x x1
f ( x) f ( x0 )
( x x0 ) f [ x1 , x0 ] ( x x0 )
x x0
f [ x, x0 ] f [ x1 , x0 ]
( x x1 )( x x0 )
x x1
Definindo a funo:
Q(t ) f (t ) p1 (t ) (t x1 )(t x0 ) g ( x)
ela se anula pelo menos em t = x1, t = x0 e t = x, logo Q(t ) deve se anular pelo menos duas
vezes no intervalo [x, x0] e Q(t ) deve se anular pelo menos uma vez em um ponto t = [x,
x0]:
Q() f () p1() 2! g ( x) 0
g ( x)
Agora, se mais um ponto {x2, f(x2)} for includo no conjunto de pontos nodais:
f ( x) p2 ( x) a0 a1 ( x x0 ) a2 ( x x1 )( x x0 )
fica evidente pelo exposto acima que
a2 = f[x2, x1, x0]
podendo tambm ser tomado como uma boa aproximao para R1(x) se f ( x) for uma funo
suave (que no muda bruscamente para diferentes valores de x). Isto mostra que as frmulas
das diferenas divididas de Newton podem ser usadas para determinar o grau apropriado do
polinmio interpolador em funo da qualidade desejada da aproximao.
Retomando a expresso: f [ x2 , x1 , x0 ]
f [ x2 , x0 ] f [ x1 , x0 ]
x2 x1
f ( x2 ) f ( x0 ) f ( x1 ) f ( x0 )
( x x ) f ( x2 ) f ( x0 ) ( x2 x0 ) f ( x1 ) f ( x0 )
x2 x0
x1 x0
f [ x2 , x1 , x0 ]
1 0
x2 x1
( x2 x0 )( x1 x0 )( x2 x1 )
f [ x2 , x1 , x0 ]
( x1 x0 ) f ( x2 ) ( x0 x2 ) f ( x1 ) ( x2 x1 ) f ( x0 )
( x2 x0 )( x1 x0 )( x2 x1 )
f [ x2 , x1 , x0 ]
( x1 x0 ) f ( x2 ) ( x1 x0 ) f ( x1 ) ( x2 x1 ) f ( x1 ) ( x2 x1 ) f ( x0 )
( x2 x0 )( x1 x0 )( x2 x1 )
f [ x2 , x1 , x0 ]
ou ainda
( x1 x0 ) f ( x2 ) f ( x1 ) ( x2 x1 ) f ( x1 ) f ( x0 )
( x2 x0 )( x1 x0 )( x2 x1 )
f ( x2 ) f ( x1 ) f ( x1 ) f ( x0 )
x2 x1
x1 x0
f [ x2 , x1 ] f [ x1 , x0 ]
f [ x2 , x1 , x0 ]
x2 x0
x2 x0
ou seja, f[x2, x1, x0] = f[x1, x2, x0] = f[x0, x2, x1] = f[x0, x1, x2] = f[x1, x0, x2] = f[x2, x0, x1], a
ordem dos argumentos das frmulas das diferenas divididas indiferente. Das expresses
acima, podemos observar tambm que:
f [ x2 , x1 , x0 ]
f ( x2 )
f ( x1 )
f ( x0 )
( x2 x0 )( x2 x1 ) ( x1 x0 )( x1 x2 ) ( x0 x1 )( x0 x2 )
3. INTERPOLAO POLINOMIAL
e f [ x, xk 1 , , x2 , x1 , x0 ]
f [ xk , xk 1 , , x2 , x1 ] f [ xk 1 , xk 2 , , x1 , x0 ]
xk x0
, k = 1, 2, 3, ..., n
f ( k ) ()
, [x, x0].
k!
Rn ( x) f [ x, xn , xn 1 , , x2 , x1 , x0 ] ( x xi )
i 0
Rn ( x)
ou
f ( n 1) () n
( x xi ) ,
(n 1)! i 0
[x, x0]
sendo que a segunda forma til somente quando a funo f(x) for dada explicitamente.
Exemplo: obter o polinmio interpolador de grau 3 usando as frmulas das diferenas
divididas de Newton para os dados abaixo:
xi
yi
-5
6
1
2
12
25
1
6
30
3
55
p3 ( x) f [ x0 ] f [ x1 , x0 ] ( x x0 ) f [ x2 , x1 , x0 ] ( x x1 )( x x0 ) f [ x3 , x2 , x1 , x0 ] ( x x2 )( x x1 )( x x0 )
xi
x0
yi
f[x0]
x1
f[x1]
f[x1, x0]
f[x2, x1, x0]
f[x3, x2, x1, x0]
2
x2
f[x2]
n1
xn-1
f[xn-1]
f[xn, xn-1,xn-2]
f[xn, xn-1]
f[xn]
xn
f x0 f x
f x f x0 x x0 f x0 , x , mas:
x0 x
f x1 , x0 f x0 , x
f x1 , x0 , x
f x0 , x f x1 , x0 x x1 f x1 , x0 , x , mas:
x1 x
f x2 , x1 , x0 f x1 , x0 , x
f x2 , x1 , x1 , x
f x1 , x0 , x f x2 , x1 , x0 x x2 f x2 , x1 , x0 , x
x2 x
f xn 1 , , x1 , x0 , x
f xn 1 , , x1 , x0 f xn 2 , , x0 , x
xn 1 x
f xn 2 , , x0 , x f xn 1 , , x1 , x0 x xn 1 f xn 1 , , x1 , x0 , x
e, finalmente:
f xn , xn 1 , , x1 , x0 , x
f xn , xn 1 , , x1 , x0 f xn 1 , xn 2 , , x0 , x
xn x
f xn 1 , xn 2 , , x0 , x f xn , xn 1 , , x1 , x0 x xn f xn , xn 1 , , x1 , x0 , x
n
3. INTERPOLAO POLINOMIAL
a) A tabela abaixo contm os valores da viscosidade (em centipoise) de uma soluo contendo
60% de sacarose a vrias temperaturas. Construa a Tabela de Diferenas destes dados.
T
( C)
(centipoise)
10
113,9
-5,72
20
56,7
0,17255
-2,269
30
-0,004088
34,01
0,0499
-1,271
40
21,30
ln()
10
4,735321
-0,069755
20
4,037774
0,000932
-0,051112
30
3,526655
40
3,058707
-0,000024
0,000216
-0,046795
Aj 1,i -1 Aj ,i -1
p1
y A0,0
*
xi j x j
i
0
1
2
3
n2
n1
n
xi
x0
x1
x2
x3
xn-2
xn-1
xn
yi
A0,0
A1,0
A2,0
A3,0
An-2,0
An-1,0
An,0
1
A0,1
A1,1
A2,1
A3,1
An-2,1
An-1,1
2
A0,2
A1,2
A2,2
A3,2
An-2,2
n-2
A0,n-2
A1,n-2
A2,n-2
n-1
A0,n-1
A1,n-1
n
A0,n
pn ( x) a0 a1 ( x x0 ) a2 ( x x1 )( x x0 ) an ( x xi )
i 0
f ( xi )
, i = 0, 1, 2, ..., n.
( xi x0 )( xi x1 ) ( xi xi 1 )( xi xi 1 ) ( xi xn )
i ( x)
j 0
j i
x xj
xi x j
, i = 0, 1, 2, ..., n
pn ( x) i ( x) f ( xi ) .
i 0
( x) 1 .
i 0
Definindo o polinmio nodal, que tem como razes x = xi, i = 0, 1, 2, ..., n, logo de
grau n + 1:
10
3. INTERPOLAO POLINOMIAL
Pn 1 ( x) an 1 ( x x0 )( x x1 ) ( x xn 1 )( x xn ) an 1 ( x x j )
j 0
i ( x)
qi ( x)
qi ( xi )
e an 1 qi ( x)
an 1 qi ( xi ) Pn1 ( xi ) e
i ( x)
Pn 1 ( x)
.
x xi
Pn 1 ( x)
Pn1 ( xi ) , temos:
x xi
Pn 1 ( x)
, i = 0, 1, 2, ..., n.
( x xi ) Pn1 ( xi )
Sabendo que f(x) = pn(x) + Rn(x) e que Rn(x) deve se anular em xi, i = 0, 1, 2, ..., n,
ento Rn(x) = Pn+1(x) G(x), que procedendo de maneira anloga seo anterior, a funo:
Q(t ) f (t ) pn (t ) Pn 1 (t ) G ( x)
deve se anular em t = xi, i = 0, 1, 2, ..., n e em t = x, ou seja, em no mnimo n + 2 vezes dentro
do intervalo [x0, xn]. Portanto, Q(n+1)(t) deve se anular em pelo menos um ponto neste
intervalo, t = :
Q ( n 1) () 0 f ( n 1) () pn( n 1) () Pn(n11) () G ( x)
como pn( n 1) () 0 (polinmio de grau n) e Pn(n11) () an 1 (n 1)!, temos:
G ( x)
f ( n 1) ()
f ( n 1) () n
e Rn ( x)
( x xi )
an 1 (n 1)!
(n 1)! i 0
xi
yi = f(xi)
0
1
2
0
1
3
-5
1
25
0 ( x)
( x x1 )( x x2 )
( x 1)( x 3) x 2 4 x 3
( x0 x1 )( x0 x2 ) (0 1)(0 3)
3
1 ( x)
( x x0 )( x x2 ) ( x 0)( x 3) x 2 3 x
( x1 x0 )( x1 x2 ) (1 0)(1 3)
2
2 ( x)
( x x0 )( x x1 )
( x 0)( x 1) x 2 x
( x2 x0 )( x2 x1 ) (3 0)(3 1)
6
11
p2 ( x) i ( x) f ( xi ) 5 0 ( x) 1 ( x) 25 2 ( x) 2 x 2 4 x 5
i 0
pi
y* 0
f ( n 1) [( x)] n
( x xi )
(n 1)! i 0
12
3. INTERPOLAO POLINOMIAL
e os mesmos comentrios acima se aplicam, com o agravante que neste caso, geralmente, a
funo f(x) no conhecida para podermos encontrar o valor mximo de | f ( n 1) ( x) | . Neste
caso podemos recorrer ao uso da tabela de diferenas divididas de Newton para encontrarmos
uma estimativa para o erro usando a relao:
f ( n 1) [( x)]
f [ x, xn , xn 1 , , x2 , x1 , x0 ]
(n 1)!
Neste caso, uma informao til o erro mdio quadrtico (MSE, Mean Square Error) da
aproximao no intervalo [a, b]:
b
MSE
1
Rn2 ( x)dx
b a a
xa
ba
dx = (b a) dy ,
resulta em:
que pode ser usado para determinar a melhor aproximao para f(x) dentre vrias alternativas.
1
usando interpolaes
1 25 x 2
polinomiais de 2, 3 e 10 graus com pontos igualmente espaados no intervalo [-1, 1], os
grficos dos erros da interpolao e calcular o MSE.
Exemplo: construir os grficos das aproximaes de f ( x)
Interpolao
13
Comparao da
Funo Real com a
Interpolada
Interpolao
Polinomial de
Segundo Grau com
Pontos Igualmente
Espaados
Interpolao
Polinomial de
Terceiro Grau com
Pontos Igualmente
Espaados
Interpolao
Polinomial de
Dcimo Grau com
Pontos Igualmente
Espaados
Interpolao
Polinomial de
Dcimo Grau como
Pontos as Razes do
11o Polinmio de
Chebyshev
Erro da Interpolao
0.5
0.5
1
Rn ( x) 2 dx
2 1
0,207
Yk
Zk
0.038
zk
0,0595
Yk
0.5
Zk
0.038
1.846
Yk
Zk
0.255
zk
zk
3,2310-3
0,337
2
1
1
0.5
Yk
Zk
5.32710
0.5
zk
f ( n 1) [( x)] n
f ( n 1) [( x)]
x
x
Pn 1 ( x)
(
i
(n 1)! i 0
(n 1)!
Pn 1 ( x) x n 1 ci xi
i 0
sendo
2
f ( n 1) [( x; c)] n 1 n
MSE (c ) R ( x; c )dx
x ci xi dx
(n 1)!
i 0
0
0
1
2
n
14
3. INTERPOLAO POLINOMIAL
f ( n 1) [(c)]
MSE (c )
(n 1)!
2 1
n 1 n
ci xi dx
0 x
i 0
(
)
2
n 1
d
[(n 1)!]2
ck
ck 0
(n 1)!
2 1
x P
k
n 1
( x)dx 0 ,
k = 0, 1, ..., n
Se considerarmos independente de c [vlido quando f(n+1)(x) for constante], ento,
1
x P
k
n 1
( x)dx 0 , k = 0, 1, 2, ..., n
O que permite concluir que Pn+1(x) um polinmio ortogonal no intervalo [0, 1] em relao
funo peso w(x) = 1. O polinmio que satisfaz essa condio de ortogonalidade o
polinmio de Jacobi, Pn(1,) ( x) , com = 0 e = 0. Portanto, uma boa aproximao para os
pontos nodais que minimizam o MSE so as razes do polinmio de Jacobi Pn(0,0)
1 ( x ) . Se o
intervalo utilizado fosse [-1, 1], ento teramos o polinmio de Legendre.
c0 ,c1 ,,cn
c0 ,c1 ,,cn a x b
2z ba
ba
n
15
T0(x) = 1
T1(x) = x
T2(x) = 2x21
T3(x) = 4x33x
T4(x) = 8x48x2+1
T5(x) = 16x520x3+5x
T6(x) = 32x648x4+18x2-1
T7(x) = 64x7112x5+56x37x
T8(x) = 128x8256x6+160x4-32x2+1
T9(x) = 256x9576x7+432x5120x3+9x
Frmula de Recorrncia:
Tn 1 ( x) 2 x Tn ( x) Tn 1 ( x) para n 1, 2,
com T0 ( x) 1 e T1 ( x) x
Grfico dos 5 primeiros polinmios de Chebyshev
1
T 0,x
T 1,x
T 2,x
T 3,x
T 4,x
0.5
i
i
i
0.5
i
0.5
0
x
0.5
0,
nm
T ( x)T ( x)
2
1 n 1 mx 2 dx T0 ( x) , n m 0
2
Tn ( x) , n m 0
2
16
3. INTERPOLAO POLINOMIAL
Estes polinmios originaram das funes trigonomtricas cos(), cos(2), cos(3), ..., cos(n)
que distribuem seus mximos e mnimos de maneira uniforme no intervalo [0, ]. Ao aplicar a
mudana de varivel:
x = cos()
x [-1, 1]
f ( x) ai Ti ( x)
i 0
2 f ( x)Tk ( x)
1
f ( x)
podem ser determinados por: a0
dx , k = 1, 2, ..., n.
dx e ak
2
1 1 x
1 1 x 2
dx
1
2
Como d
, ento a0 f (cos )d e ak f (cos ) cos(k ) d , k = 1, 2, ..., n.
2
0
0
1 x
f ( x) pn ( x) i ( x) f ( xi ) , com xi = ri+1.
i 0
17
Tn ( x)
2n 1
Pn ( x)
x[ 1,1]
an
2n 1
x [-1, 1]
e
f (5) () x5
R4 ( x) 0, 023
5!
5!
x 2 x3
, temos:
2 6
e
f (4) () x 4
R3 ( x) 0,113 , que est acima de 0,05.
4!
4!
18
3. INTERPOLAO POLINOMIAL
p4 ( x) 1 T1 ( x)
T2 ( x) T0 ( x) T3 ( x) 3T1 ( x) T4 ( x) 4 T2 ( x) 3T0 ( x)
22
46
8 24
24
192
4 64
8
4 48
Truncando no termo de grau 3:
p3 ( x) 1
T ( x)
17
9
13
, o erro entre as duas aproximaes :
T0 ( x) T1 ( x) T2 ( x) 3
64
8
48
24
p4 ( x) p3 ( x)
T4 ( x)
1
0, 0052
192
192
Portanto, o erro mximo ao aproximar f(x) por p3(x) : 0,023 + 0,0052 = 0,0282 < 0,05.
Reescrevendo o polinmio em termos das potncias de x:
p3 ( x) 1
17
9
13
4 x 3 3x 191
13 2 x 3
1 x (2 x 2 1)
x
x
64
8
48
24
192
24
6
com R3 ( x) 0, 0282 .
Ou de maneira similar: p3 ( x) p4 ( x) a4 T4 ( x) , isto :
p3 ( x) 1 x
x 2 x3 x 4 1 4
1
x x 2 , pois a4 = 1/24, que aps rearranjo dos termos
2 6 24 24
8
resulta em:
p3 ( x)
191
13 2 x 3
x
x .
192
24
6
191
13 2 x 3 1 3 3
x
x x x , levando a:
192
24
6 6
4
p2 ( x)
191 9
13 2
T ( x)
1
x
x , com p3 ( x) p2 ( x) 3
0, 042 .
192 8
24
6
64
Portanto, o erro mximo ao aproximar f(x) por p2(x) : 0,0282 + 0,042 = 0,0702 > 0,05.
19
20
3. INTERPOLAO POLINOMIAL
21
22
3. INTERPOLAO POLINOMIAL
Nas figuras a seguir so comparados os valores dos polinmios nodais com pontos igualmente espaados com os polinmios nodais construdos a
T x
1
partir do polinmio de Chebyshev normalizados [ tn x n n 1 para n 1 ]. Note que: tn x n 1 para n 1 .
2
2
24
Lista de exerccios
1. Busque uma expresso de segundo grau e outra de terceiro grau que melhor aproximam a
funo x4 no intervalo 2 x 8. Analise e discuta seus resultados confrontado-os
graficamente.
2. Aproxime a funo ex no intervalo: 0 x +2 por um polinmio de menor grau em x, em
que se assegura que o mdulo do erro seja menor do que 10-2.
3. Hougen & Watson sugerem a expresso emprica abaixo para o clculo do calor especfico
3
a) aproxime k(T) por uma constante, na mesma faixa de 0 a 100o C, de modo que o valor
do erro mximo seja mnimo;
100
1
k (T ) dT e sua mdia aritmtica (na mesma
b) Calcule o valor mdio de k(T) k
100 0
faixa de temperatura) e compare e discuta todos estes valores sugerindo que valor o mais
adequado!
5. Nas Tabelas abaixo, apresentam-se os valores da condutividade trmica do CO2 e da
viscosidade do etileno glicol lquido a vrias temperaturas:
T
( F)
k
(BTU/hr/ft/ o F)
32
212
392
572
0,0085
0,0133
0,0181
0,0228
T
( F)
o
(lb/ft/hr)
0
242,00
50
82,10
100
30,50
150
12,60
200
5,57
Determine, em cada caso, o polinmio interpolador de menor grau possvel que assegure um
erro relativo inferior a 1,00 % na faixa tabelada de T.
26
3. INTERPOLAO POLINOMIAL
10
0,26
0,51
0,95
2,89
7,51
17,19
29,83
1,42
2,43
4,05
9,98
21,65
42,47
66,67
20
25
30
35
3,51
5,85
9,34
21,49
44,02
81,91
124,08
5,55
9,06
14,22
31,54
62,68
113,81
169,48
8,65
13,86
21,32
45,73
88,17
156,41
229,62
13,22
20,61
31,16
64,78
121,68
211,24
305,60
por interpolao linear nas duas variveis independentes [temperatura e concentrao] calcule
as presses parciais da amnia nos seguintes casos:
T [o C]
Concentrao
Molal [%]
126,5
126,5
126,5
60,0
237,5
237,5
28,8
6,7
25,0
0,00
17,6
35,0