You are on page 1of 11

68

4 APROXIMAO DE FUNES

4.1- INTERPOLAO POLINOMIAL

Introduo: A interpolao

Interpolar uma funo f(x) consiste em aproximar essa funo por uma outra
funo g(x), escolhida entre uma classe de funes definida a priori e que satisfaa algumas
propriedades. A funo g(x) ento usada em substituio funo f(x).
A necessidade de se efetuar esta substituio surge em vrias situaes, como por
exemplo:
a.) quando so conhecidos somente os valores numricos da funo para um
conjunto de pontos e necessrio calcular o valor da funo em um ponto no
tabelado;
b.) quando a funo em estudo tem uma expresso tal que operaes como a
diferenciao e a integrao so difceis (ou mesmo impossveis) de serem
realizadas.

4.1.1- Interpretao geomtrica

Consideremos (n +1 ) pontos distintos: x
0
, x
1
, ... , x
n
, chamamos ns da
interpolao, e os valores de f(x) nesses pontos: f(x
0
), f(x
1
), ..., f(x
n
).
A forma de interpolao de f(x) que veremos a seguir, consiste em se obter uma
determinada funo g(x) tal que:

( ) ( )
( ) ( )
( ) ( )
( ) ( )

'

n n
2 2
1 1
0 0
x f x g
x f x g
x f x g
x f x g


Geometricamente, um esboo da interpolante g(x) sobre a funo f(x) visto na
figura 3.1.

Em particular, se g(x) = P
n
(x), onde P
n
um polinmio de grau n, ento a
interpolao denominada de interpolao polinomial.
Observamos que:
i.) existem outras formas de interpolao polinomial como, por exemplo, a
frmula de Taylor, a interpolao por polinmios de Hermite e do tipo
spline, para as quais as condies so outras;
ii.) Assim como g(x) foi escolhida entre as funes polinomiais, poderamos
ter escolhido g(x) como funo racional, funo trigonomtrica, etc. Um
69
caso que explora combinaoes de funes trigonomtricas, em campo real
ou complexo, o aproximante definido a partir da srie de Fourier;
iii.) existe tambm o caso polinomial no interpolante, tal como, o aproximante
de funes por mnimos quadrados.

Em qualquer um dos casos citados, estes encontram-se inseridos em um tpico
mais geral chamado aproximao de funes.
A interpolao polinomial que ser vist ser a de Lagrange e a de Newton.


Figura 4.1 esboo de uma funo f(x) e de sua interpolante g(x), para n = 4 ( 05
ns).

Definio 4.1- Interpolao Polinomial

Dados os pontos (x
0
, f(x
0
)), (x
1
, f(x
1
)), ..., (x
n
, f(x
n
)), portanto (n + 1) pontos,
queremos aproximar f(x) por um polinmio p
n
(x), de grau menor ou igual a n, tal que:
f(x
k
) = p
n
(x
k
) k = 0, 1, 2, ..., n

Surgem aqui as perguntas: existe sempre um polinmio p
n
(x) que satisfaa estas
condies? Caso exista, ele nico?
Representaremos p
n
(x) por:
p
n
(x) = a
0
+ a
1
x + a
2
x
2
+ ... + a
n
x
n
.

Portanto, obter p
n
(x) significa obter os coeficientes a
0
, a
1
, ..., a
n
.
Da condio pn(xk) = f(xk), k = 0, 1, 2, ..., n, montamos o seguinte sistema
linear:

70
( )
( )
( )

'

+ + + +
+ + + +
+ + + +
n
n
n n
2
n 2 n 1 0
1
n
1 n
2
1 2 1 1 0
0
n
0 n
2
0 2 0 1 0
x f x a x a x a a
. . . . . .
. . . . . .
. . . . . .
x f x a x a x a a
x f x a x a x a a
L
L
L


com n + 1 equaes e n + 1 variveis: a0, a1, ..., an.

A matriz A dos coeficientes

A =

,
_

n
n
2
n n
n
1
2
1 1
n
0
2
0 0
x x x 1
. . . .
. . . .
. . . .
x x x 1
x x x 1
L
L
L

que uma matriz de Vandermonde e, portanto, desde que x0, x1, ..., xn sejam pontos
distintos, temos det (A) 0 e, ento, o sistema linear admite soluo nica.
Demonstramos assim o seguinte teorema:

Teorema 4.1 Existncia e unicidade do Polinmio Interpolador

Existe um nico polinmio p
n
(x), de grau n, tal que: p
n
(x
k
) = f(x
k
), k = 0, 1, 2,
..., n, desde que xk xj, j k.

4.2- Forma de Lagrange do Polinmio de Interpolao

Sejam x
0
, x
1
, ...,x
n
, (n + 1) pontos distintos e y
i
= f(x
i
), i = 0, ..., n.
Seja p
n
(x) o polinmio de grau n que interpola f em x0, ..., xn. Podemos
representar p
n
(x) na forma p
n
(x) = y
0
L
0
(x) + y
1
L
1
(x) + ... + y
n
L
n
(x), onde os polinmios
Lk(x) so de grau n. Para cada i, queremos que a condio pn(xi) = yi seja satisfeita, ou seja:
p
n
(x
i
) = y
0
L
0
(x
i
) + y
1
L
1
(x
i
) + ... + y
n
L
n
(x
i
) = y
i

A forma mais simples de se satisfazer esta condio impor:
L
k
(x
i
) =

'

i k se
i k se
1
0
e, para isso, definimos L
k
(x) por

Lk(x) =
( )( ) ( )( ) ( )
( )( ) ( )( ) ( )
n k 1 k k 1 k k 1 k 0 k
n 1 k 1 k 1 0
x x x x x x x x x x
x x x x x x x x x x


+
+
K K
K K
.

71
fcil verificar que realmente

L
k
(x
k
) = 1 e
L
k
(x
i
) = 0 se i k.

Como o numerador de L
k
(x) um produto de n fatores da forma:
( )
i
x x , i = 0, ..., n, i k, ento L
k
um polinmio de grau n e, assim, p
n
(x)
um polinmio de grau menor ou igual a n.
Alm disso, para x = x
i
, i = 0, ..., n temos:

( ) ( ) ( )
i i i i
n
0 k
i k k i n
y x L y x L y x p



Ento, a forma de Lagrange para o polinmio interpolador :
pn(x) = ( )

n
0 k
k k
x L y
onde

( )
( )
( )

n
k j
0 j
j k
n
k j
0 j
j
k
x x
x x
x L .

Exemplo 4.2.1: (Interpolao Linear)

Faremos aqui um exemplo terico para interpolao em dois pontos distintos: (x
0
,
f(x
o
)) e (x
1
, f(x
1
)).
Assim, n igual a 1 e, por isto, a interpolao por dois pontos chamada
interpolao linear.

Usando a forma de Lagrange teremos:

p
1
(x) = ( ) ( ) x L y x L y
1 1 0 0
+ , onde
L
0
(x) =
( )
( )
1 0
1
x x
x x

, L
1
(x) =
( )
( )
0 1
0
x x
x x

.
Assim, p1(x) =
( )
( )
( )
( )
0 1
0
1
1 0
1
0
x x
x x
y
x x
x x
y

, ou seja,
72
p1(x) =
( ) ( )
( )
0 1
1 0 0 1
x x
y x x y x x

+

que exatamente a equao da reta que passa por (x
0
, f(x
0
)) e (x
1
, f(x
1
)).

Exemplo 4.2.2:

Seja a tabela:

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

Pela forma de Lagrange, temos que:
p
2
(x) = ( ) ( ) x L y x L y
1 1 0 0
+ ( ) x L y
2 2
+ , onde:
L
0
(x) =
( )( )
( )( )
( )( )
( )( ) 3
x 2 x
2 1 0 1
2 x 0 x
x x x x
x x x x
2
2 0 1 0
2 1




L
1
(x) =
( )( )
( )( )
( )( )
( )( ) 2
2 x x
2 0 1 0
2 x 1 x
x x x x
x x x x
2
2 1 0 1
2 0

+
+




L2(x) =
( )( )
( )( )
( )( )
( )( ) 6
x x
0 2 1 2
0 x 1 x
x x x x
x x x x
2
1 2 0 2
1 0
+

+
+





Assim na forma de Lagrange,

p
2
(x) = ( )

,
_

+
+

,
_

,
_


6
x x
1
2
2 x x
1
3
x 2 x
4
2 2 2


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

4.3 - Forma de Newton do Polinmio de Interpolao

A forma de Newton para o polinmio p
n
(x) que interpola f(x) em x
0
, x
1
, ..., x
n
,
(n + 1) pontos distintos a seguinte:
p
n
(x) = ( ) ( )( ) ( )( ) ( )
1 n 1 0 n 1 0 2 0 1 0
x x x x x x d x x x x d x x d d

+ + + + L L

No que segue, estudaremos:
i) o operador diferenas divididas, uma vez que os coeficientes d
k
, k = 0, 1,
..., n acima so diferenas divididas de ordem k entre os pontos (x
j
, f(x
j
)),
j = 0, 1, ..., k.
ii) a deduo da expresso de p
n
(x) dada por:
p
n
(x) = ( ) ( )( ) ( )( ) ( )
1 n 1 0 n 1 0 2 0 1 0
x x x x x x d x x x x d x x d d

+ + + + L L

73
4.3.1- Operador diferenas divididas

Seja f(x) uma funo tabelada em n + 1 pontos distintos: x
0
, x
1
, ..., x
n
.

Definimos o operador diferenas divididas por:

[ ] ( )
[ ]
[ ] [ ] ( ) ( )
[ ]
[ ] [ ]
[ ]
[ ] [ ]
[ ]
[ ] [ ]

0 n
1 n 2 1 0 n 2 1
n 2 1 0
0 3
2 1 0 3 2 1
3 2 1 0
0 2
1 0 2 1
2 1 0
0 1
0 1
0 1
0 1
1 0
0 0
x x
x , , x , x , x f x , , x , x f
x , , x , x , x f
. .
. .
. .
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
x x
x f x f
x x
x f x f
x , x f
x f x f
L L
L



Dizemos que f[x
0
, x
1
, ..., x
k
] a diferena dividida de ordem k da funo f(x) sobre
os k + 1 pontos: x0, x1, ..., xk.
Dada uma funo f(x) e conhecidos os valores que f(x) assume nos pontos
distintos x
0
, x
1
, ..., x
n
, podemos construir a tabela:

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


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


x
4
f[x
4
]
.
.
.

f[x
n-3
, x
n-2
, x
n-1
, x
n
]
.
.
.


. . f[x
n-2
, x
n-1
, x
n
]
. . .
.
.


. . F[x
n-1
, x
n
]
x
n
f[x
n
]

(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 diferenas 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[x
0
, x
1
] =
[ ] [ ]
0
1
1 1
x x
x f x f
0 1
0 1


f[x
1
, x
2
] =
[ ] [ ]
1
0 1
1 0
x x
x f x f
1 2
1 2


.
.
.
f[x0, x1, x2] =
[ ] [ ]
2
1
1 1
0 1
x x
x , x f x , x f
0 2
1 0 2 1


f[x
1
, x
2
, x
3
] =
[ ] [ ]
0
0 2
1 1
x x
x , x f x , x f
1 3
2 1 3 2


.
.
.
f[x0, x
1
, x
2
, x
3
] =
[ ] [ ]
6
1
1 2
2 1 0
x x
x , x , x f x , x , x f
0 3
2 1 0 3 2 1

+
+


Procede-se desta forma at obter-se todos os termos da tabela de diferenas
divididas.
75

Propriedade 4.3.1

As formas de diferenas divididas satisfazem a propriedade a seguir:
f[x
0
, x
1
, ..., x
k
] simtrica nos argumentos, ou seja, f[x
0
, x
1
, ..., x
k
] = f[x
j0
, x
j1
, ...,
x
jk
] onde j
0
, j
1
, ..., j
k
qualquer permutao de 0, 1, ..., k.

Por exemplo,
f[x0, x1] =
[ ] [ ] [ ] [ ]
[ ]
0 1
1 0
1 0
0 1
0 1
x , x f
x x
x f x f
x x
x f x f

.
Para k = 2 teremos:
f[x
0
, x
1
, x
2
] = f[x
0
, x
2
, x
1
] = f[x
1
, x
0
, x
2
] = f[x
1
, x
2
, x
0
] = f[x
2
, x
0
, x
1
] = f[x
2
, x
1
, x
0
].

4.3.2- A Forma de Newton do polinmio interpolador

Seja f(x) contnua e com tantas derivadas contnuas quantas necessrias num
intervalo [a, b].
Sejam a = x0 < x1 < x2 < ... < xn = b, (n + 1) pontos.
Construiremos o polinmio p
n
(x) que interpola f(x) em x
0
, x
1
, ..., x
n
. Iniciaremos a
construo obtendo p
0
(x) que interpola f(x) em x = x
0
. E assim, sucessivamente,
construiremos p
k
(x) que interpola f(x) em x
0
, x
1
, ..., x
k
, k = 0, 1, ..., n.
Seja p
0
(x) o polinmio de grau 0 que interpola f(x) em x = x
0
. Ento, p
0
(x) = f(x
0
)
= f[x0].

Temos que, para todo x [a, b], x x0
[ ]
[ ] [ ] ( ) ( )
( ) [ ] ( ) ( )
( ) ( )
( )
( ) [ ]
( )
( ) ( ) ( ) ( ) [ ] x , x f x x x p x f x E
x , x f x x x f x f
x f x f x , x f x x
x x
x f x f
x x
x f x f
x , x f
0 0 0 0
x E
0 0
x p
0
0 0 0
0
0
0
0
0
0 o

+

4 4 3 4 4 2 1 3 2 1


Note que E
0
(x) = f(x)-p
0
(x) o erro cometido ao se aproximar f(x) por p
0
(x).
Seja agora construir p
1
(x), o polinmio de grau 1 que interpola f(x) em x
0
e x
1
.

Temos que
[ ] [ ]
[ ] [ ]
( ) ( )
[ ]
( )
( ) ( ) ( ) [ ]
( )( )
0 1
0 1 0 0
1
0 1
0
0
1
0 1 0
0 1 1 0
x x x x
x , x f x x x f x f
x x
x , x f
x x
x f x f
x x
x , x f x , x f
x , x , x f x , x , x f



76

[ ]
( ) ( ) ( ) [ ]
( )( )
( ) ( ) ( ) [ ]
( )
( )( ) [ ]
( )
4 4 4 4 3 4 4 4 4 2 1 4 4 4 4 3 4 4 4 4 2 1
x E
1 0 1 0
x p
0 1 0 0
1 0
0 1 0 0
1 0
1 1
x , x , x f x x x x x , x f x x x f x f
x x x x
x , x f x x x f x f
x , x , x f
+ +






Assim,
p
1
(x) = ( )
( )
( ) [ ]
( )
4 4 4 3 4 4 4 2 1 3 2 1
x q
1 0 0
x p
0
1 0
x , x f x x x f + e
E
1
(x) = ( )( ) [ ] x , x , x f x x x x
1 0 1 0
.

Verificao:
p
1
(x) interpola f(x) em x
0
e em x
1
?
p
1
(x
0
) = f(x
0
)
p
1
(x
1
) = f(x
0
) + (x
1
x
0
)
( ) ( )
( )
1
0 1
0 1
x f
x x
x f x f

.
Seja agora construir p
2
(x) , o polinmio de grau 2 que interpola f(x) em x
0
, x
1
,
x
2
.
Temos que:

f[x
0
, x
1
, x
2
, x] = f[x
2
, x
1
, x
0
, x] =
[ ] [ ]

2
0 1 2 0 1
x x
x , x , x f x , x , x f

[ ] [ ]
[ ]
( )
( ) ( )
( )
[ ]
( )
[ ]
( )

2
0 1 2
1
0 1
0
0
2
0 1 2
1
0 1 0
x x
x , x , x f
x x
x , x f
x x
x f x f
x x
x , x , x f
x x
x , x f x , x f

( ) ( ) ( ) [ ] ( )( ) [ ]
( )( )( )


2 1 0
0 1 2 1 0 0 1 0 0
x x x x x x
x , x , x f x x x x x , x f x x x f x f



( ) ( ) ( ) [ ] ( )( ) [ ]
( )( )( ) [ ] x , 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 x f
2 1 0 2 1 0
2 1 0 1 0 1 0 0 0
+
+ + +


Ento,

p
2
(x) = ( ) ( ) [ ]
( )
( )( ) [ ]
( )
4 4 4 4 4 3 4 4 4 4 4 2 1 4 4 4 4 3 4 4 4 4 2 1
x q
2 1 0 1 0
x p
1 0 0 0
2 1
x , x , x f x x x x x , x f x x x f + + e

E
2
(x) = (x x
0
)(x x
1
)(x x
2
)f[x
0
, x
1
, x
2
, x].
77


Observamos que, assim como para p
1
(x) e p
2
(x), p
k
(x) = p
k1
(x) + q
k
(x), onde q
k
(x)
um polinmio de grau k.
Aplicando sucessivamente o mesmo raciocnio para
x0, x1, x2, x3;
x
0
, x
1
, x
2
, x
3
, x
4
;
.
.
.
x
0
, x
1
, x
2
, ..., x
n
,
teremos a forma de Newton para o polinmio de grau n que interpola f(x) em x
0
, ..., x
n
:

p
n
(x) = f(x
0
) + (x x
0
)f[x
0
, x
1
] + (x x
0
)(x x
1
)f[x
0
, x
1
, x
2
] + ... +
+ ... + (x x
0
)(x x
1
)...(x x
n1
)f[x
0
, x
1
, ..., x
n
]
e o erro dado por:

E
n
(x) = (x x
0
)(x x
1
) ... (x x
n
)f[x
0
, x
1
, ..., x
n
, x]

De fato, pn(x) interpola f(x)em x0, x1, ..., xn, pois sendo
f(x) = p
n
(x) + E
n
(x), ento para todo n x
k
, k = 0, ..., n, temos:
f(x
k
) = p
n
(x
k
) + ( ) ( )
k n
0
k n
x p x E

43 42 1
.

Exemplo 4.3.2:

Usando a forma de Newton, o polinmio p
2
(x), que interpola f(x) nos pontos dados
abaixo, :

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


p
2
(x) = f(x
0
) + (x x
0
)f[x
0
, x
1
] + (x x
0
)(x x
1
)f[x
0
, x
1
, x
2
].

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

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

Observamos que, agrupando os termos semelhantes, obtemos
p
2
(x) = 1 x
3
7
x
3
2
2
+ , que a mesma expresso obtida no exemplo 2.
78


Observamos ainda que conveniente deixar o polinmio na forma de Newton,
sem agrupar os termos semelhantes, pois, quando calcularmos o valor numrico de p
n
(x),
para x = , evitaremos o clculo de potncias. O nmero de operaes pode ainda ser
reduzido se usarmos a forma dos parnteses encaixados descrita a seguir:
Dado:

p
n
(x) = f(x
0
) (x x
0
)f[x
0
, x
1
] + (x x
0
)(x x
1
)f[x
0
, x
1
, x
2
] +
+ (x x
0
)(x x
1
)(x x
2
)f[x
0
, x
1
, x
2
, x
3
] + ... +
+ (x x
0
)(x x
i
)...(x x
n1
)f[x
0
, x
1
, x
2
, ..., x
n
]
temos que:

p
n
(x) = f(x
0
) + (x x
0
){f[x
0
, x
1
] + (x x
1
){f[x
0
, x
1
, x
2
] +
+ (x x
2
){f[x
0
, x
1
, x
2
, x
3
] + ... + (x x
n1
)f[x
0
, x
1
, ..., x
n
]...}}}.

Um algoritmo para se calcular p
n
( ) usando esta forma de parnteses encaixados
ser visto na lista de exerccios no final deste captulo.

You might also like