1 interpol polinomial_met_lagrange_newton

claudianalima9 319 views 11 slides Jun 05, 2014
Slide 1
Slide 1 of 11
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11

About This Presentation

No description available for this slideshow.


Slide Content

68
4 – APROXIMAÇÃO DE FUNÇÕE S

4.1- INTERPOLAÇÃO POLINOMIAL

Introdução: A interpolação

Interpolar uma função f(x) consiste em aproximar essa função por uma outra
função g(x), escolhida entre uma classe de funções definida a priori e que satisfaça algumas
propriedades. A função g(x) é então usada em substituição à função f(x).
A necessidade de se efetuar esta substituição surge em várias situações, como por
exemplo:
a.) quando são conhecidos somente os valores numéricos da função para um
conjunto de pontos e é necessário calcular o valor da função em um ponto não
tabelado;
b.) quando a função em estudo tem uma expressã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.1.1- Interpretação geométrica

Consideremos (n +1 ) pontos distintos: x 0, x1, ... , x n, chamamos nós da
interpolação, e os valores de f(x) nesses pontos: f(x0), f(x1), ..., f(xn).
A forma de interpolação de f(x) que veremos a seguir, consiste em se obter uma
determinada função g(x) tal que:

() ()
() ()
() ()
() ()
ï
ï
ï
ï
î
ï
ï
ï
ï
í
ì
=
××
××
××
=
=
=
nn
22
11
00
xfxg
xfxg
xfxg
xfxg


Geometricamente, um esboço da interpolante g(x) sobre a função f(x) é visto na
figura 3.1.

Em particular, se g(x) = P n(x), onde P n é um polinômio de grau n, então a
interpolação é denominada de interpolação polinomial.
Observamos que:
i.) existem outras formas de interpolação polinomial como, por exemplo, a
fórmula de Taylor, a interpolação por polinômios de Hermite e do tipo
“spline”, para as quais as condições são outras;
ii.) Assim como g(x) foi escolhida entre as funções polinomiais, poderíamos
ter escolhido g(x) como função racional, função trigonométrica, etc. Um

69
caso que explora combinaçãoes de funções trigonométricas, em campo real
ou complexo, é o aproximante definido a partir da série de Fourier;
iii.) existe também o caso polinomial não interpolante, tal como, o aproximante
de funções por mínimos quadrados.

Em qualquer um dos casos citados, estes encontram-se inseridos em um tópico
mais geral chamado aproximação de funções.
A interpolação polinomial que será vistá será a de Lagrange e a de Newton.


Figura 4.1 – esboço de uma função f(x) e de sua interpolante g(x), para n = 4 ( 05
nós).

Definição 4.1- Interpolação Polinomial

Dados os pontos (x0, f(x0)), (x1, f(x1)), ..., (xn, f(xn)), portanto (n + 1) pontos,
queremos aproximar f(x) por um polinômio pn(x), de grau menor ou igual a n, tal que:
f(xk) = pn(xk) k = 0, 1, 2, ..., n

Surgem aqui as perguntas: existe sempre um polinômio p n(x) que satisfaça estas
condições? Caso exista, ele é único?
Representaremos pn(x) por:
pn(x) = a0 + a1x + a2x
2
+ ... + anx
n
.

Portanto, obter pn(x) significa obter os coeficientes a0, a1, ..., an.
Da condição p n(xk) = f(xk), " k = 0, 1, 2, ..., n, montamos o seguinte sistema
linear:

70
()
()
()ï
ï
ï
ï
î
ï
ï
ï
ï
í
ì
=++++
=++++
=++++
n
n
nn
2
n2n10
1
n
1n
2
12110
0
n
0n
2
02010
xfxaxaxaa
......
......
......
xfxaxaxaa
xfxaxaxaa
L
L
L


com n + 1 equações e n + 1 variáveis: a0, a1, ..., an.

A matriz A dos coeficientes é

A =
÷
÷
÷
÷
÷
÷
÷
÷
ø
ö
ç
ç
ç
ç
ç
ç
ç
ç
è
æ
n
n
2
nn
n
1
2
11
n
0
2
00
xxx1
....
....
....
xxx1
xxx1
L
L
L

que é uma matriz de Vandermonde e, portanto, desde que x 0, x1, ..., xn sejam pontos
distintos, temos det (A)
¹0 e, então, o sistema linear admite solução única.
Demonstramos assim o seguinte teorema:

Teorema 4.1 – Existência e unicidade do Polinômio Interpolador

Existe um único polinômio pn(x), de grau £ n, tal que: pn(xk) = f(xk), k = 0, 1, 2,
..., n, desde que xk ¹xj, j ¹ k.

4.2- Forma de Lagrange do Polinômio de Interpolação

Sejam x0, x1, ...,xn, (n + 1) pontos distintos e yi = f(xi), i = 0, ..., n.
Seja p n(x) o polinômio de grau £ n que interpola f em x0, ..., xn. Podemos
representar p n(x) na forma p n(x) = y 0L0(x) + y 1L1(x) + ... + ynLn(x), onde os polinômios
Lk(x) são de grau n. Para cada i, queremos que a condição pn(xi) = yi seja satisfeita, ou seja:
pn(xi) = y0L0(xi) + y1L1(xi) + ... + ynLn(xi) = yi

A forma mais simples de se satisfazer esta condição é impor:
Lk (xi) =
ï
î
ï
í
ì
=
¹
ikse
ikse
1
0
e, para isso, definimos Lk(x) por

Lk(x) =
( )( )( )( )( )
( )( )( )( )( )
nk1kk1kk1k0k
n1k1k10
xxxxxxxxxx
xxxxxxxxxx
-----
-----
+-
+-
KK
KK
.

71
É fácil verificar que realmente

Lk(xk) = 1 e
Lk(xi) = 0 se i ¹k.

Como o numerador de Lk(x) é um produto de n fatores da forma:
( )
ixx-, i = 0, ..., n, i ¹k, então Lk é um polinômio de grau n e, assim, pn(x) é
um polinômio de grau menor ou igual a n.
Além disso, para x = xi, i = 0, ..., n temos:

() () ()
iiii
n
0k
ikkin
yxLyxLyxp ===å
=


Então, a forma de Lagrange para o polinômio interpolador é:
pn(x) = ()å
=
n
0k
kk
xLy
onde

()
( )
( )Õ
Õ
¹
=
¹
=
-
-
=
n
kj
0j
jk
n
kj
0j
j
k
xx
xx
xL .

Exemplo 4.2.1: (Interpolação Linear)

Faremos aqui um exemplo teórico para interpolação em dois pontos distintos: (x0,
f(xo)) e (x1, f(x1)).
Assim, n é igual a 1 e, por isto, a interpolação por dois pontos é chamada
interpolação linear.

Usando a forma de Lagrange teremos:

p1(x) = () ()xLyxLy
1100
+ , onde
L0(x) =
( )
( )
10
1
xx
xx
-
-
, L1(x) =
( )
( )
01
0
xx
xx
-
-
.
Assim, p1(x) =
( )
( )
( )
( )
01
0
1
10
1
0
xx
xx
y
xx
xx
y
-
-
+
-
-
, ou seja,

72
p1(x) =
( )( )
( )
01
1001
xx
yxxyxx
-
-+-

que é exatamente a equação da reta que passa por (x0, f(x0)) e (x1, f(x1)).

Exemplo 4.2.2:

Seja a tabela:

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

Pela forma de Lagrange, temos que:
p2(x) = () ()xLyxLy
1100
+ ()xLy22+ , onde:
L0(x) =
( )( )
( )( )
()()
( )( ) 3
x2x
2101
2x0x
xxxx
xxxx
2
2010
21
-
=
----
--
=
--
--

L1(x) =
( )( )
( )( )
()()
()() 2
2xx
2010
2x1x
xxxx
xxxx
2
2101
20
-
--
=
-+
-+
=
--
--

L2(x) =
( )( )
( )( )
()()
()() 6
xx
0212
0x1x
xxxx
xxxx
2
1202
10 +
=
-+
-+
=
--
--


Assim na forma de Lagrange,

p2(x) = ()
÷
÷
ø
ö
ç
ç
è
æ
+
-+
÷
÷
ø
ö
ç
ç
è
æ
-
--
+
÷
÷
ø
ö
ç
ç
è
æ
-
6
xx
1
2
2xx
1
3
x2x
4
222


Agrupando os termos semelhantes, obtemos que p2(x) =
2
x
3
2
x
3
7
1 +- .

4.3 - Forma de Newton do Polinômio de Interpolação

A forma de Newton para o polinômio pn(x) que interpola f(x) em x 0, x1, ..., xn,
(n + 1) pontos distintos é a seguinte:
pn(x) = ( )( )( ) ( )( )( )
1n10n102010
xxxxxxdxxxxdxxdd
-
---++--+-+ LL

No que segue, estudaremos:
i) o operador diferenças divididas, uma vez que os coeficientes dk, k = 0, 1,
..., n acima são diferenças divididas de ordem k entre os pontos (xj, f(xj)),
j = 0, 1, ..., k.
ii) a dedução da expressão de pn(x) dada por:
pn(x) = ( )( )( ) ( )( )( )
1n10n102010
xxxxxxdxxxxdxxdd
-
---++--+-+ LL

73
4.3.1- Operador diferenças divididas

Seja f(x) uma função tabelada em n + 1 pontos distintos: x0, x1, ..., xn.

Definimos o operador diferenças divididas por:

[]()
[ ]
[][]()()
[ ]
[ ][ ]
[ ]
[ ][ ]
[ ]
[ ][ ]
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ê
ë
é
-
-
=
-
-
=
-
-
=
-
-
=
-
-
=
=
-
0n
1n210n21
n210
03
210321
3210
02
1021
210
01
01
01
01
10
00
xx
x,,x,x,xfx,,x,xf
x,,x,x,xf
..
..
..
xx
x,x,xfx,x,xf
x,x,x,xf
xx
x,xfx,xf
x,x,xf
xx
xfxf
xx
xfxf
x,xf
xfxf
LL
L



Dizemos que f[x0, x1, ..., xk] é a diferença dividida de ordem k da função f(x) sobre
os k + 1 pontos: x0, x1, ..., xk.
Dada uma função f(x) e conhecidos os valores que f(x) assume nos pontos
distintos x0, x1, ..., xn, podemos construir a tabela:

x Ordem 0 Ordem 1 Ordem 2 Ordem 3 ... Ordem n
x0 f[x0]
F[x0, x1]
x1 f[x1] f[x0, x1, x2]
F[x1, x2] f[x0, x1, x2, x3]
x2 f[x2] f[x1, x2, x3]
F[x2, x3] f[x1, x2, x3, x4]
.
.
.

x3 f[x3] f[x2, x3, x4] f[x0, x1, x2, ..., xn]
F[x3,x4]
.
.
.


x4 f[x4]
.
.
.

f[xn-3, xn-2, xn-1, xn] .
.
.


. . f[xn-2, xn-1, xn]
. . .
.
.


. . F[xn-1, xn]
xn f[xn]

(Ordem Zero)
(Ordem 1)
(Ordem 2)
(Ordem 3)

(Ordem n)

74


Exemplo 4.3.1:

Seja f(x) tabelada abaixo

X -1 0 1 2 3
f(x) 1 1 0 -1 -2

Sua tabela de diferenças divididas é:

x Ordem 0 Ordem 1 Ordem 2 Ordem 3 Ordem 4
-1 1
0
0 1
2
1
-

-1
6
1


1 0 0
24
1
-
-1 0
2 -1 0
-1
3 -2

Onde

f[x0, x1] =
[][]
0
1
11
xx
xfxf
01
01
=
-
=
-
-

f[x1, x2] =
[][]
1
01
10
xx
xfxf
12
12
-=
-
-
=
-
-

.
.
.
f[x0, x1, x2] =
[ ][ ]
2
1
11
01
xx
x,xfx,xf
02
1021
-
=
+
--
=
-
-

f[x1, x2, x3] =
[ ][ ]
0
02
11
xx
x,xfx,xf
13
2132
=
-
+-
=
-
-

.
.
.
f[x0, x1, x2, x3] =
[ ][ ]
6
1
12
210
xx
x,x,xfx,x,xf
03
210321
=
+
+
=
-
-

Procede-se desta forma até obter-se todos os termos da tabela de diferenças
divididas.

75

Propriedade 4.3.1

As formas de diferenças divididas satisfazem a propriedade a seguir:
f[x0, x1, ..., xk] é simétrica nos argumentos, ou seja, f[x0, x1, ..., xk] = f[xj0, xj1, ...,
xjk] onde j0, j1, ..., jk é qualquer permutação de 0, 1, ..., k.

Por exemplo,
f[x0, x1] =
[][][][]
[ ]
01
10
10
01
01
x,xf
xx
xfxf
xx
xfxf
=
-
-
=
-
-
.
Para k = 2 teremos:
f[x0, x1, x2] = f[x0, x2, x1] = f[x1, x0, x2] = f[x1, x2, x0] = f[x2, x0, x1] = f[x2, x1, x0].

4.3.2- A Forma de Newton do polinômio interpolador

Seja f(x) contínua e com tantas derivadas contínuas quantas necessárias num
intervalo [a, b].
Sejam a = x0 < x1 < x2 < ... < xn = b, (n + 1) pontos.
Construiremos o polinômio pn(x) que interpola f(x) em x0, x1, ..., xn. Iniciaremos a
construção obtendo p 0(x) que i nterpola f(x) em x = x 0. E assim, sucessivamente,
construiremos pk(x) que interpola f(x) em x0, x1, ..., xk, k = 0, 1, ..., n.
Seja p0(x) o polinômio de grau 0 que interpola f(x) em x = x0. Então, p0(x) = f(x0)
= f[x0].

Temos que, para todo x Î [a, b], x ¹x0
[]
[][]()()
( )[]()()
()()
()
( )[]
()
()()()( )[]x,xfxxxpxfxE
x,xfxxxfxf
xfxfx,xfxx
xx
xfxf
xx
xfxf
x,xf
0000
xE
00
xp
0
000
0
0
0
0
0
0o
-=-=Þ
-+=Þ
Þ-=-Þ
Þ
-
-
=
-
-
=
4434421321


Note que E0(x) = f(x)-p0(x) é o erro cometido ao se aproximar f(x) por p0(x).
Seja agora construir p1(x), o polinômio de grau £ 1 que interpola f(x) em x0 e x1.

Temos que
[ ][ ]
[][ ]
()()
[ ]
( )
()()( )[ ]
( )( )
01
0100
1
01
0
0
1
010
0110
xxxx
x,xfxxxfxf
xx
x,xf
xx
xfxf
xx
x,xfx,xf
x,x,xfx,x,xf
--
---
=
-
-
-
-
=
=
-
-
==

76

[ ]
()()( )[ ]
( )( )
()()( )[ ]
()
( )( )[ ]
()
4444 34444 214444 34444 21
xE
1010
xp
0100
10
0100
10
11
x,x,xfxxxxx,xfxxxfxf
xxxx
x,xfxxxfxf
x,x,xf
--+-+=Þ
Þ
--
---



Assim,
p1(x) = ()
()
( )[ ]
()
444344421321
xq
100
xp
0
10
x,xfxxxf -+ e
E1(x) = ( )( )[ ]x,x,xfxxxx
1010
-- .

Verificação:
p1(x) interpola f(x) em x0 e em x1?
p1(x0) = f(x0)
p1(x1) = f(x0) + (x1 – x0)
()()
()
1
01
01
xf
xx
xfxf
=
-
-
.
Seja agora construir p2(x) , o polinômio de grau £ 2 que interpola f(x) em x0, x1,
x2.
Temos que:

f[x0, x1, x2, x] = f[x2, x1, x0, x] =
[ ][ ]
=
-
-
2
01201
xx
x,x,xfx,x,xf

[][ ]
[ ]
( )
()()
( )
[ ]
( )
[ ]
( )
=
-
-
-
-
-
-
=
=
-
-
-
-
=
2
012
1
01
0
0
2
012
1
010
xx
x,x,xf
xx
x,xf
xx
xfxf
xx
x,x,xf
xx
x,xfx,xf

()()( )[ ]( )( )[ ]
( )( )( )
Þ
---
------
=
210
012100100
xxxxxx
x,x,xfxxxxx,xfxxxfxf


Þ
()()( )[ ]( )( )[ ]
( )( )( )[ ]x,x,x,xfxxxxxx
x,x,xfxxxxx,xfxxxfxf
210210
210101000
---+
+--+-+=


Então,

p2(x) = ()( )[ ]
()
( )( )[ ]
()
44444 344444 214444 34444 21
xq
21010
xp
1000
21
x,x,xfxxxxx,xfxxxf --+-+ e

E2(x) = (x – x0)(x – x1)(x – x2)f[x0, x1, x2, x].

77


Observamos que, assim como para p1(x) e p2(x), pk(x) = pk–1(x) + qk(x), onde qk(x)
é um polinômio de grau k.
Aplicando sucessivamente o mesmo raciocínio para
x0, x1, x2, x3;
x0, x1, x2, x3, x4;
.
.
.
x0, x1, x2, ..., xn,
teremos a forma de Newton para o polinômio de grau £ n que interpola f(x) em x0, ..., xn:

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, ..., xn]
e o erro é dado por:

En(x) = (x – x0)(x – x1) ... (x – xn)f[x0, x1, ..., xn, x]

De fato, pn(x) interpola f(x)em x0, x1, ..., xn, pois sendo
f(x) = pn(x) + En(x), então para todo nó xk, k = 0, ..., n, temos:
f(xk) = pn(xk) + ()()
kn
0
kn
xpxE =
=
43421
.

Exemplo 4.3.2:

Usando a forma de Newton, o polinômio p2(x), que interpola f(x) nos pontos dados
abaixo, é:

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


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

x Ordem 0 Ordem 1 Ordem 2
-1 4
-3
0 1 2/3
-1
2 -1

p2(x) = 4 + (x + 1)(-3) + (x + 1)(x - 0)(2/3)

Observamos que, agrupando os termos semelhantes, obtemos
p2(x) = 1x
3
7
x
3
22
+- , que é a mesma expressão obtida no exemplo 2.

78


Observamos ainda que é conveniente deixar o polinômio na forma de Newton,
sem agrupar os termos semelhantes, pois, quando calcularmos o valor numérico de p n(x),
para x = a, evitaremos o cálculo de potências. O número de operações p ode ainda ser
reduzido se usarmos a forma dos parênteses encaixados descrita a seguir:
Dado:

pn(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 – xi)...(x – xn–1)f[x0, x1, x2, ..., xn]
temos que:

pn(x) = f(x0) + (x – x0){f[x0, x1] + (x – x1){f[x0, x1, x2] +
+ (x – x2){f[x0, x1, x2, x3] + ... + (x – xn–1)f[x0, x1, ..., xn]...}}}.

Um algoritmo para se calcular pn(a) usando esta forma de parênteses encaixados
será visto na lista de exercícios no final deste capítulo.
Tags