Post on 07-Apr-2016
Aproximação de funções
Interpolação Polinomial. Teorema de existência e unicidade. Como se determina o polinómio interpolador: desvantagens da resolução de sistemas.Método de Lagrange: vantagens e desvantagens.Método de Newton
Análise Numérica - Interpolação Polinomial2
Interpolação
Dada uma tabela {(xi, yi), i=0, , n}: yi = f(xi) e xi xj se i j,
F(xi) = f(xi) i = 0, , n.
x0 x*x1 x2 xn-1 xn...
f(x)
F(x)F(x*)
f(x*)erro
f(x*) ≈F(x*)
Análise Numérica - Interpolação Polinomial3
Interpolação Polinomial
Se x*x0, xn - interpolação
Se x*x0, xn - extrapolação
Teorema ( de existência e unicidade)
{(xi, yi), i=0, , n}: xi xj i j.
n
i
ii
nnn xaxaxaxaaxPxF
0
2210
1 Pn(x) : Pn(xi) = yi , i=0, , n.
Análise Numérica - Interpolação Polinomial4
Técnicas para obter Pn(x)
Determinar o polinómio do 1º grau que passa por (1,1) e (2,3) Resolução de um sistema
xaaxP 101
322111
101
101
aaPaaP
21
1
0
aa
xxP 211 é uma recta
31
2111
1
0
aa
Análise Numérica - Interpolação Polinomial5
Pouco eficiente ...
Pn(xi) = yi , i=0,, n
nnnnn
n
n
y
yy
a
aa
xx
xxxx
1
0
1
0
11
00
1
11
Determina ai com cerca de n3 produtos e divisões
Determinante ≠0 se xi≠ xj
0121 axaxaxaxaxP nnnn
012
21
1 axaxaxaxaxP nn
nn
nnn
nnkn
k
21
1produtos
n produtos
Resolução de sistemas
Análise Numérica - Interpolação Polinomial6
Resolução de sistemas... alguns mal condicionados
Exemplo: Determine o polinómio de 2º grau que passa pelos pontos de abcissa x0 =100, x1=101 e x2=102.
2
1
0
2
1
0
104021021102011011100001001
yyy
aaa
Condição da matriz 108
22102 xaxaaxP Base = {1,x,x2}
Análise Numérica - Interpolação Polinomial7
Resolução de sistemascomo melhorar a condição
2222102 xxaxxbbxP
2
1
0
2
1
0
22222
22121
22020
111
yyy
bbb
xxxxxxxxxxxx
Condição da matriz 28
Base = {1,(x-x2) ,(x-x2)2}
2
1
0
2
1
0
001111421
yyy
bbb
Base Método
Análise Numérica - Interpolação Polinomial8
Propriedades dos polinómios
A soma de dois polinómios de grau n é um polinómio de grau n.
O produto de um polinómio de grau m por um polinómio de grau n é um polinómio de grau m + n.O produto de n polinómios de grau 1 é um
polinómio de grau n, isto é,
Este polinómio tem precisamente n raízes reais 1, 2,, n.
nn xxxaxP 21
Análise Numérica - Interpolação Polinomial9
Propriedades dos polinómios
Se é raiz de Pn(x) então Pn(x) é divisível
por (x-) e é um polinómio de grau n-1.
Um polinómio de grau n tem no máximo n raízes reais.
Um polinómio que se anula em n pontos tem pelo menos grau n.
x
xPn
Análise Numérica - Interpolação Polinomial10
Método de Lagrange
k
n
k
n
kii ik
in y
xxxxxP
0 0
=ℓk
(x)
coordenadas= [y0, y1..., yn ]
Base={ℓ0(x),..., ℓn(x)}
Análise Numérica - Interpolação Polinomial11
Método de Lagrange
nkkkkkk
nkkk xxxxxxxx
xxxxxxxxx
110
110
n
kkk
n
kkk
n
k
n
kii ik
in xLyxy
xxxxxP
000 0
k
nkkkkkk
nkkk y
xxxxxxxxxxxxxxxxxL
110
110
kiki
xik se se
10
xk é um polinómio de grau n
kiy
kixL ik se
se k
0 xLk é um polinómio de grau n
xPn
Análise Numérica - Interpolação Polinomial12
x0 x1 x2 x3 x4 x5
y0
y3
Método de Lagrange
Lk(xk) = yk e Lk(xi) = 0 se i k
n
kkn xLxP
0
L0(x)
L3(x)
Análise Numérica - Interpolação Polinomial13
Método de Lagrange:
Exercício 1.
a) Determine f(0.4) por interpolação parabólica
b) Comente os resultados sabendo que:
2294255.05.02055202.03.01586693.02.0
)( iii yxfx
2)sin( xxxf
1586693.0
5.02.03.02.05.03.0
2xxxP
2055202.0
5.03.02.03.05.02.0 xx
2294255.03.05.02.05.0
3.02.0 xx
1586693.0
5.02.03.02.05.04.03.04.04.02P
2055202.0
5.03.02.03.05.04.02.04.0
2294255.03.05.02.05.03.04.02.04.0
707647516.02055202.0705288976.0 02291056.0
? xL0 x1
f(0.4)0.229418342309…
3 c.d.c de f(0.4)
Análise Numérica - Interpolação Polinomial14
Método de Newton
Pn(x) = Pn-1(x) + P? Polinómio de grau n anula-se em xi i=0,1,...,n-1 P?=an (x - x0)(x – xn-1)
(para a frente)
?
P5-1(x)
P ?P5 (x)
Análise Numérica - Interpolação Polinomial15
Como determinar an ? Polinómio de grau 0 que passa por (x0, y0)
P0(x) = a0
Polinómio de grau 1 que passa por (x0, y0), (x1, y1)
P1(x) = P0(x) + a1(x - x0) = y0 + a1(x - x0)
P1(x1) = y0 + a1(x1 - x0) = y1
Polinómio de grau 2 que passa por (x0, y0), (x1, y1) (x2, y2)
Pn(xn)=yn
P0(x0) = a0 = y0 P0(x) = y0
01
011 xx
yya
variação
))(()()( 10?20
01
0102 xxxxaxx
xxyyyxP
222 )( yxP 02
0101
1212
2 xxxxyy
xxyy
a
variação da variação
Pn(x) = Pn-1(x) + an (x - x0)(x – xn-1)
Análise Numérica - Interpolação Polinomial16
1,,0,1
11
ni
xxyyxxf
ii
iiii
Diferença dividida de f
De 1ª ordem
De 2ª ordem
De ordem k
ii xx ,1 1, ii xx
2,,0,,,,,,2
1212121
ni
xxxxxxxxxxxxf
ii
iiiiiiiiii
knixx
xxxxxxxiki
kiikiikiii
,,0,,,,,,, 11
1
Análise Numérica - Interpolação Polinomial17
Tabela das diferenças divididas
xi yi
x0 y0
x1 y1
x2 y2
x3 y3
x4 y4
⋮ ⋮
f[xi , xi+1] f[xi , xi+1 , xi+2] f[xi , xi+1 , xi+2 , xi+2]
[x0 , x1]
[x1 , x2]
[x2 , x3]
[x3 , x4]
[x0 , x1 , x2]
[x1 , x2 , x3]
[x2 , x3 , x4]
[x0 , x1 , x2 , x3]
[x1 , x2 , x3 , x4]
…
…
Tabela das diferenças divididas Folha InP1 -1.1
Análise Numérica - Interpolação Polinomial18
x (T) y (C. Ter.) 1ªordem 2ºordem 3ªordem 4ªordem 5ªordem
100 0.00939 9.04 010-5 -6.75 010-8 1.4 510-10 -5.2 510-13 1.8 583310-
15
200 0.01843 7.69 010-5 -2.4 010-8 -6.5 010-11 4.04 1710-13
300 0.02612 7.21 0 10-
5 -4.3 5 10-8 9.6 6710-11
400 0.03333 6.34 010-5 -1.4 5 10-8
500 0.03967 6.05 010-5
600 0.04572
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
exacto aproximado
Análise Numérica - Interpolação Polinomial19
Lema
A diferença dividida de ordem n+1 de um polinómio de grau n é identicamente nula
Análise Numérica - Interpolação Polinomial20
Polinómio de Newton
Polinómio de grau 2 que passa por (x0, y0), (x1, y1), (x2, y2)
Polinómio de grau n que passa por (x0, y0), …, (xn, yn)
1002
0101
1212
00101
02 xxxxxxxxyy
xxyy
xxxxyyyxP
1021001002 xxxxx,x,xxxx,xyxP
1010
102100100
nn
n
xxxxx,,x,xxxxxx,x,x
xxx,xyxP
Análise Numérica - Interpolação Polinomial21
2103210
10210
0100
,,,,,,
xxxxxxxxxxxxxxxxx
xxxxyxPn
xi yi f[xi , xi+1] f[xi , xi+1 , xi+2] f[xi , xi+1 , xi+2 , xi+3] …
x0 y0
[x0 , x1]
x1 y1 [x0 , x1 , x2]
[x1 , x2] [x0 , x1 , x2 , x3]
x2 y2 [x1 , x2 , x3] …
[x2 , x3] [x1 , x2 , x3 , x4]
x3 y3 [x2 , x3 , x4]
[x3 , x4]
x4 y4
⋮ ⋮
Análise Numérica - Interpolação Polinomial22
Qual o erro?
Se
R x f x P xn n( ) ( ) ( ) x xi
)( ,...,,)()(
1
001 xfxxxxxxxxPxPx
nnnn
n
)( ,,,)( 10 xxxxxR nnn
? )x(x,,x,x)x(R nnnn 101
Polinómio de newtonInP1 - 1.2
P2
Análise Numérica - Interpolação Polinomial23
3 pontos 300,200,100 210 xxx
= 0.0216(7)
P2(240)=0.00939+9.04(0)10-5(240-100) -6.75(0)10-8(240- 100)(240-200) = 0.00939 + 0.0126(56) -0.000378(0)
+ próximos
300240200240100240400,300,200,1002402 R
4-5-10
1049.0104.9 60401401045.1
0.510-
4
4 c.d.
)7(0216.0240 f Mesmo que f seja “suave” a 4ª c.d. pode não ser correcta
Análise Numérica - Interpolação Polinomial24
Significado da diferença dividida
Fórmula de Newton
Fórmula de Taylor
nn
nn
nn
xxxxx,,x,xxxxxx,,x
xxxxx,x,xxxx,xyxRxPxf
00100
102100100
1
01
00
20
0000
1
2
nn
nn
xxnfxx
nxf
xxx''fxxx'fxfxf
! !
!
0x,x
Análise Numérica - Interpolação Polinomial25
Significado da diferença dividida
k)k(
k x,x!k
fx,,x 00
!kxfx,,x
)k(
k
vezes 1
i)i( xfxf 0 Polinómio de Newton
ib,ax,x:b,a
x!n
fxx,,x,x)x(R
i
n)n(
nnn
11
10 1
Polinómio de Taylor
Erro do Polinómio de Newton
Análise Numérica - Interpolação Polinomial26
Estimativa do erro
Limite superior do erro
Valor aproximado (se f for “suave”)
baCf n ,1
)(max,!1
)( )1(
,11
1 xfMxnMxR n
baxnn
nn
xxxxxn
fxR nnn
n
n 101
)1(,,,
!1)(
Análise Numérica - Interpolação Polinomial27
Como se pode diminuir o erro?
Aumentando o n (grau do polinómio interpolador)
Escolhendo os pontos da tabela mais próximos de
n
n
n xxxxxxn
fxR
10
)1(
!1)(
x
y (C. Ter.) x (T) 1ªordem 2ºordem 3ªordem
0.02612 300 138 69.6255201 14 0460.896114 -4
053036.292780.03333 400 157 72.8706625 61021.3847759
0.03967 500 165 28.9256198
0.04572 600
Tabela das diferenças divididas Folha InP1 -1.3
Análise Numérica - Interpolação Polinomial28
( )
( )
( )
( )
( )
( )
P2(0.0387)= 400 + 1.57(73…)105(0.0387-0.03333) +6.(102…)104(0.0387-0.03333)(0.0387- 0.03967)
400 +84.7(0)-0.3(18)484.3(8)
R2(0.0387) 4.(1)106|(0.0387-0.03333)(0.0387-0.03967)(0.0387-0.04572)| 0.15 0.5×100
f-1(0.0387) 484.(4)
(0.0387 exacto)