Você está na página 1de 136

ANÁLISE NUMÉRICA

0. INTRODUÇÃO
A disciplina de Análise Numérica procura criar métodos para aproximar, de uma maneira
eficiente, as soluções de problemas matematicamente expressos. A eficiência do método depende
tanto da precisão requerida para o método, como da facilidade com que o mesmo pode ser
implementado.

Numa situação prática, o problema matemático deriva de um fenómeno físico, onde algumas
suposições já foram feitas para permitir o desenvolvimento da representação matemática.
Geralmente um relaxamento das suposições físicas conduz a um modelo matemático mais
apropriado, mas ao mesmo tempo mais difícil ou impossível de resolver explicitamente.

Como o problema matemático geralmente não resolve em caso algum o problema físico com
exactidão, frequentemente é mais apropriado encontrar uma solução aproximada para um modelo
matemático mais complicado de um problema físico, do que encontrar uma solução exacta de um
modelo simplificado.

1
1. CÁLCULO E TEORIA DE ERROS

Este capítulo contém uma breve revisão daqueles conceitos do cálculo elementar, isto é, com
uma variável, que servem de base de raciocínio nos capítulos seguintes, juntamente com uma
introdução da terminologia usada na representação de números com ajuda de máquinas, análise
de erros e discussão de convergência.

1.1. Revisão do cálculo elementar

Definição 1.1 (Limite de uma função):

Seja f uma função definida num conjunto X de números reais. f tem limite L em x0, se,
dado qualquer número real  > 0, existe sempre um número real  > 0, tal que, sempre

que xX e 0 < |x – x0| <  então |f(x) – L| < . (Simbolicamente tem-se: lim f(x) = L 
x x0

+, +:|x – x0| < |f(x) – L| < ),

Definição 1.2 (Continuidade de uma função):

Seja f uma função definida num conjunto X de números reais. f é contínua em x0, se
lim f(x) = f(x0).
x x0

2
Fig. 1.1

Nota: A função f é contínua num conjunto X, se o for em todos os valores de X. C(X) representa
o conjunto de todas as funções que são contínuas em X. Quando X é um intervalo da linha real,
os parêntesis podem ser omitidos. Por exemplo, o conjunto de todas as funções contínuas no
intervalo fechado [a,b] é representado por C[a,b] em vez de C([a,b]).

Definição 1.3 (Limite de uma sequência – convergência):

Seja (xn), com n = 1,..., uma sequência infinita de números reais (ou complexos). Diz-
se que a sequência converge para um número x (chamado limite) se, para cada  > 0,

existe um número inteiro positivo N(), tal que n > N()  |xn – x| < . A anotação lim
n 

xn = x, ou xn  x quando n  , significa que a sequência  xn n1 converge para x.


Teorema 1.4 (Relação entre o comportamento de uma função e o de uma sequência


funcional correspondente):

Se f é uma função definida num conjunto X de números reais e x0X, então as


seguintes proposições são equivalentes:

a) f é contínua em x0.

b) Se xn n1 é qualquer sequência em X convergente para x0, então

lim f xn   f x0  .


n

Definição 1.5 (Diferenciabilidade de uma função – Derivabilidade):

Se f é uma função definida num intervalo aberto contendo x0, então f é diferenciável

em x0 se f ' ( x)  lim f ( x)  f ( x0 ) existe.


x x0 x  x0

Nota: O número f ( x 0 ) chama-se derivada de f em x0 (fig. 1.2). A função que tem derivadas

em todos os números dum conjunto X diz-se diferenciável em X. A derivada de f em x0 é a


inclinação da recta tangente ao gráfico de f em (x0,f(x0)).

3
Fig. 1.2

Teorema 1.6 (Relação Diferenciabilidade – Continuidade duma função):

Se f é diferenciável em x0, então f é contínua em x0.

Nota: O conjunto de todas as funções que têm n derivadas contínuas em X é representado por
Cn(X) e o conjunto de funções que têm derivadas de todas as ordens em X é representado por
C(X). Funções polinomiais, racionais, trigonométricas, exponenciais e logarítmicas estão em
C(X), onde X é constituído por todos valores em que as funções estão definidas.

Teorema 1.7 ( de Rolle):

Suponhamos que fC[a,b] e f é diferenciável em (a,b). Se f(a) = f(b), então existe um


número c em (a,b), tal que f’(c) = 0.

4
Fig. 1.3

Teorema 1.8 (do valor médio):

Se fC[a,b] e f é diferenciável em (a,b), então existe um número c em (a,b), tal que


f (b)  f (a)
f ' (c )  .
ba

Fig. 1.4

5
Teorema 1.9 (do valor extremo):

Se fC[a,b], então existem c1,c2[a,b], tais que f(c1)  f(x)  f(c2), x[a,b]. Se,
adicionalmente, f é diferenciável em (a,b), então c1 e c2 ocorrem, ou nos extremos do
intervalo [a,b], ou onde f’(x) = 0.

Fig 1.5

Definição 1.10 (generalizado de Rolle):

Suponhamos que fC[a,b] é n vezes diferenciável em (a,b). Se f(x) é igual a zero em


n+1 números distintos x0, x1, ..., xn de [a,b], então existe um número c em (a,b), tal que

f ( n ) (c )  0 .

Teorema 1.11 (do valor intermédio):

Se fC[a,b] e k é qualquer número entre f(a) e f(b), então existe um número c em (a,b),
tal que f(c) = k.

Teorema 1.12 (de Taylor):

Suponhamos que fCn[a,b], que existe f(n+1) em (a,b) e x0[a,b]. x[a,b] existe um
número (x) entre x0 e x, tal que f(x) = Pn(x) + Rn(x), onde

6
n
Pn ( x)   k1! f ( k ) ( x0 )( x  x0 ) k  f ( x0 )  f ' ( x0 )( x  x0 )  1
2!
f ' ' ( x0 )( x  x0 ) 2  ...  1
n!
f ( n ) ( x0 )( x  x0 ) n
k 0

e Rn ( x)  1
( n1)! f ( n1) ( x )( x  x0 ) n1 .

Fig. 1.6

Nota: Aqui Pn(x) é designado n-ésimo polinómio de Taylor ou polinómio de Taylor de grau
n de f em ordem a x0 e Rn(x) é designado resto, termo remanescente ou erro de truncatura
associado a Pn(x). A série infinita obtida através do limite de Pn(x) quando n designa-se série
de Taylor de f em ordem a x0. No caso em que x0 = 0, o polinómio de Taylor é mais frequente
designado polinómio de Maclaurin e a série de Taylor, série de Maclaurin. O termo erro de
truncatura refere-se ao erro envolvido no uso de uma soma finita para aproximar uma soma
infinita.

Exercícios (1.1):

1. Mostre que as seguintes equações têm pelo menos uma solução nos intervalos dados:
Resolvido:

a) x  ln x   0,
x
[4;5]

(1) Continuidade: f ( x)  x  ln x  é contínua em   porque Df =   , logo, f é contínua


x

em [4,5]    .
(2) f (4)  4  ln 4  0.3066  0 ; f (5)  5  ln 5  5.79869  0 , logo, há-de existir
4 5

entre 4 e 5 um valor c, tal que f(c) = 0, uma vez que f ( x)  x  ln x  é contínua em
x

[4,5].
Não resolvidos:

b) x cos x  2 x 2  3x  1  0, [0.2;0.3] e [1.2;1.3]

7
c) x  2  ln x  0,
2
[1;2] e [e;4]

d) 2 x cos2 x   x  2  0,
2
[2;3] e [3;4]
2. Ache intervalos contendo soluções das seguintes equações:
Resolvido:

a) 4 x 2  e x  0
(1) Continuidade: f ( x)  4 x 2  e x é contínua em  porque Df =  .
(2) Começando aleatoriamente pelos valores mais fáceis (mais próximos de zero) tem-se:
f (0)  4 * 0 2  e 0  1  0 ; f (1)  4 *12  e1  1.28  0 . Logo, há-de existir em [0,1] um
valor c, tal que f(c) = 0, uma vez que f ( x)  4 x 2  e x é contínua em [0,1].
Não resolvidos:

b) x  3 x  0
c) x 3  2 x 2  4 x  3  0
d) x 3  4.001x 2  4.002 x  1.101  0
3. Mostre que as primeiras derivadas das seguintes funções são iguais a zero, pelo menos uma
vez, nos intervalos dados:
Resolvido:
a) f x   x  2sin x ln x  2, [–1;3]
  
(1) f ( x)  x  2 sin x ln( x  2)  ( x  2)sin x  ln( x  2)  ( x  2) sin xln( x  2)
( x  2) sin x
f ( x)  sin x ln( x  2)  ( x  2) cos x ln( x  2) 
x2
( x  2) sin x
(2) Continuidade: f ( x)  sin x ln( x  2)  ( x  2) cos x ln( x  2)  é contínua em
x2
 2 ;    porque Df =  2 ;    . Logo, f (x) é contínua em  1; 3   2 ;    .
(1  2) sin(1)
(3) f (1)  sin(1) ln(1  2)  (1  2) cos(1) ln(1  2)   2.52  0 ;
1 2
(3  2) sin(3)
f (3)  sin(3) ln(3  2)  (3  2) cos(3) ln(3  2)   1.33798  0 . Logo, há-
3 2
de existir em ]-1,3[ um valor c, tal que f’(c) = 0, uma vez que
( x  2) sin x
f ( x)  sin x ln( x  2)  ( x  2) cos x ln( x  2)  é contínua em ]-1,3[.
x2
Não resolvidos:

8
 x 
b) f  x   1  e x  e  1sin   , [0;1]
 2 
c) f x   x  1tan x  x sin  x , [0;1]

d) f x   x sin  x   x  2ln x  2, [0.5;1]

4. Ache max f  x  para as seguintes funções nos intervalos dados:


a xb

Resolvido:

a) f x   1  e  cos x1 , [1;2]

(1) Continuidade: f x   1  e  cos x1 é contínua em  porque Df =  . Logo, f(x) é contínua


em [1;2]   .

(2) f ( x)  e cos(x1)  cos( x  1)  e cos(x1) sin( x  1) . f ( x)  0  sin( x  1)  0 
x  k  1 , k  Z . Dos zeros das derivadas, apenas x = 1 se encontra na extremidade do
intervalo [1;2], estando todos os restantes fora dele.
(3) f (1)  1  e  cos(11)  1  e 1  1.367879 ; f (2)  1  e  cos(21)  1  e 0.54  1.582572 . Em
condições normais teríamos pelo menos três valores para comparar (as imagens absolutas
dos dois limites do intervalo e as imagens absolutas dos extremos da função dentro do
intervalo). Como f (1) é simultaneamente extremo local e imagem de 1, que é limite
inferior do intervalo [1;2], acabaremos comparando apenas os dois extremos disponíveis,
f (1) e f (2) , para concluir que, para f ( x)  1  e  cos x1 , max f ( x) = f (2)  1.582572
1 x 2
.
Não resolvidos:

a) f x  
1
3
2  e x  2x ,  [0;1]

f x   2 x cos2 x   x  2 ,
2
b) [2;4]

4x  3
c) f x   , [0.5;1]
x2  2x
5. Determine se o teorema do valor médio se aplica nas seguintes situações. Se sim, dê um
número c que satisfaz o teorema; e se não, mostre que tal número não existe.
Resolvidos:
a) f(x) = | x |, [a, b] = [-1,1]
(1) f(x) contínua em . Logo, f(x) contínua em [-1;1]  .

9
(2) f(x) diferenciável em – e em +. Logo, f(x) não diferenciável em ]-1;1[, uma vez
que f(x) não é diferenciável para x = 0.
(3) Dado que a diferenciabilidade é violada em ]-1;2[ como se mostra em (2), então o
teorema do valor médio não se aplica.
b) f(x) = | x |, [a, b] = [0, 1]
(1) f(x) contínua em . Logo, f(x) contínua em [0;1]  .
(2) f(x) diferenciável em – e em +. Logo, f(x) diferenciável em ]0;1[  +.
(3) Então o teorema do valor médio aplica-se. Portanto, existe c ]0;1[, tal que
 1. Aplicando este resultado “1” em f(x) = | x | tem-se f ' ( x)  1 
f (1)  f (0)
f ' (c ) 
1 0
f ' (c)  1 , significando isso que c pode ser qualquer valor do intervalo ]0;1[.
Não resolvidos:
c) f(x) = x2/3, [a, b] = [-1, 8]
d) f(x) = x2/3, [a, b] = [0, 8]

6. Desenvolva o polinómio de Taylor P3(x) para f x   x  1 , em ordem a x0 = 0, use o


polinómio para aproximar 0.5 , 0.75, 1.25 e 1.5 e determine os respectivos erros.

10
Resolução:
1 1 3
(1) f ( x)  x  1 ; f ( x)  ; f ( x)   ; f ( x)  .
2 x 1 4 ( x  1) 3 8 ( x  1) 5
1 1 1 1 3 3
(2) f (0)  0  1  1 ; f (0)   ; f (0)     ; f (0)   .
2 1 2 4 13 4 8 15 8
1 1
(3) P3 ( x)  f ( x0 )  f ( x0 )( x  x0 )  f ( x0 )( x  x0 ) 2  f ( x0 )( x  x0 ) 3
2! 3!

1 1 x x2 x3
P3 ( x)  f (0)  f (0)( x  0)  f (0)( x  0)  f (0)( x  0)  1  
2 3
 .
2! 3! 2 8 16

x x2 x3
(4) f ( x)  x  1 ; P3 ( x)  1   
2 8 16

x f(x) P3 ( x) Erro: E = f(x) – P3 ( x)

0.5 1.5  1.224744871 1.313150478 -0.088405607

0.75 1.75  1.322875656 1.379857643 -0.056981987

1.25 2.25  1.5 1.4901134 0.0098866

1.5 2.5  1.58113883 1.539692267 0.041446562

7. Desenvolva o polinómio de Taylor P2(x) para f, em ordem a x0 = 0 sabendo que


f ( x)  e x cos x . Use este polinómio para aproximar f(/6) e determine a margem de erro
nesta aproximação.
Resolução:
(1) f ( x)  e x cos x ; f ( x)  e x (cos x  sin x) ; f ( x)  2e x sin x ;
f ( x)  2e x (sin x  cos x) .

(2) f (0)  e 0 cos 0  1 ; f (0)  e 0 (cos 0  sin 0)  1 ; f (0)  2e 0 sin 0  0 ;


f (0)  2e 0 (sin 0  cos 0)  2 .
1
(3) P2 ( x)  f ( x0 )  f ( x0 )( x  x0 )  f ( x0 )( x  x0 ) 2  1  x .
2!

f  ( x) ( x  x0 ) 3   x 3 e  ( x ) sin  ( x)  cos  ( x)  .


1 1
(4) R2 ( x) 
3! 3
 
(5) f ( 6 )  P2 ( 6 )  1   1.523598776 . Com 0   ( x)  tem-se:
6 6

11
1
R2 ( x)   * 0.143547577 * e 0.523598775(sin 0.523598775  cos 0.523598775)  0.110339102
3
R2 ( x)   * 0.143547577 * e 0 sin 0  cos 0  0.047849 .
1
3
 0.110339102  R2 ( x)  0.047849192
8. Desenvolva o polinómio de Taylor de grau 4 para f desenvolvido em ordem a x0 = 1,
x2
sabendo que f(x) = e . Use este polinómio para aproximar f(1.1), e determine a margem de
erro desta aproximação.
9. Seja f(x) = e–x dê o polinómio de Taylor de 3º grau para f desenvolvido em ordem a x0 = 1 e
aproxime e–99 usando esse polinómio.
10. Usando o teorema de Taylor, com n = 2 e x0 = 0, dê uma aproximação de sin 0.001 . Acha
que a exactidão para este problema pode ser a mesma do cos 0.001?

12
1.2. CÁLCULO ARITMÉTICO E TEORIA DE ERROS
1.2.1. Sistemas numéricos e números de máquina

1.2.1.1. Representação de números inteiros

Sistema decimal: N = (dndn–1d1d0)10 = dn * 10n + dn–1 * 10n–1 +  + d1 * 101 + d0 * 100,


com 0  di  9 e i = 0, 1, , n.

Sistema de qualquer base: N = (dndn–1d1d0)b = dn*bn + dn–1*bn–1 +  + d1*b1 + d0*b0, com
0  di  b – 1 e i = 0, 1, , n.

Exemplo: (12345) 6  5  6 0  4  61  3  6 2  2  6 3  1 6 4  5  24  108  432  1296  1865

(Mais exemplos de operações elementares e conversões dos sistemas de uma base para
outra).

1.2.1.2. Representação de números reais em máquinas de calcular ou computadores

Tomemos o seguinte exemplo:

Aritmética real Aritmética de máquina

2+3=5 2+3=5

4  4 = 16 4  4 = 16

 3 2
3  3 2
3

Isto acontece porque no mundo da computação cada número representável tem só um número
fixo e finito de dígitos. Isto significa que só alguns números racionais podem ser
representados com exactidão. Não sendo 3 um número racional, o que é dado é uma
aproximação, cujo quadrado não será precisamente 3, embora seja suficientemente próximo
de 3 para ser aceitável na maioria das situações.

Erros de aproximação são gerados quando uma máquina de calcular ou um computador são
usados para fazer cálculos com números reais (irracionais ou mesmo racionais), porque as
máquinas só usam uma representação de números com um número finito de dígitos.

13
Num computador típico é usado apenas um subconjunto relativamente pequeno do sistema
numérico para a representação de todos os números reais. Este subconjunto contém só
números racionais, positivos e negativos e guarda a parte fraccionária juntamente com uma
parte exponencial, naquilo a que se chama de notação científica: x = mbt, (com m  R:
mantissa, b  2: base e t  [l,u]  Z: expoente).

Exemplo 1: Com b = 10, m = 3 e t[-5,5], o menor número, em valor absoluto é xm = 0.100 


10–5 = 10–6 e o maior é xM = 0.999  105 = 99900.

Em 1985, a IEEE (Institute for Electrical and Electronic Engineers) publicou um relatório
chamado Binary Floating Point Arithmetic Standard 754 – 1985, no qual foram especificados
formatos com precisão simples, dupla e múltipla e esses padrões são geralmente usados por
todos os fabricantes de microprocessadores que usam máquinas de pontos flutuantes.

Por exemplo, os co-processadores numéricos dos PC da série IBM 3000 usavam, para
números com precisão simples, uma representação de 32-bit (1-7-24) dos números x
= mbt, com b = 16,  64  t  63 e m = mantissa (resultante da adição de potências de base 2
e expoentes negativos). Com base nesta representação, o número x tem o seguinte formato: x
= (–1)smbc, sendo s regulador do sinal (0 = “+” ou 1 = “–“) e c = t + 64 característica do
c 64
número, isto é, x  (1) 16
s
m . Usando a normalização imposta para números em ponto

flutuante, a representação de 64-bit (1-11-52) é usada para números em precisão dupla, com a
s c 1023
qual o número x passa a ter o seguinte formato: x  (1) 2 (1  f ) com s  0,1, c

característica (resultante da adição de potências de base 2 e expoentes inteiros positivos) e


f = m = fracção binária numa representação de 52-bit, isto é, mantissa (resultante da adição de
potências de base 2 e expoentes negativos). A título de exemplo, um número decimal de
precisão simples, em ponto flutuante, usado nas séries de máquinas IBM 3000, consiste num
indicador de sinal de 1 dígito binário, um expoente de 7 dígitos binários com a base 16 e uma
mantissa de 24 dígitos binários. Uma vez que 24 dígitos binários correspondem entre 6 e 7
dígitos decimais, podemos assumir que este número tem pelo menos 6 casas decimais de
precisão para o sistema numérico decimal. O expoente 7 dá uma margem de oscilação de 0 a
127, mas por causa da prevenção exponencial de casas decimais, a margem varia de –64 a

14
+63, isto é, subtrai-se 64 da anterior margem de oscilação. Procedimento análogo é aplicado
nos casos de números decimais de precisão dupla.

Exemplos:

a) O número de máquina, em precisão simples:

0 1000010 101100110000010000000000
representa precisamente o número decimal

+ [(1/2)1 + (1/2)3 + (1/2)4 + (1/2)7 + (1/2)8 + (1/2)14 ] * 1666–64 = 179,015625.

Uma vez que, nesta classe de máquinas, o primeiro dígito binário representa o sinal, com 0 a
indicar (+) e 1 (–), os sete dígitos binários representam o expoente e os últimos vinte e quatro
dígitos binários representam a mantissa, este número de máquina pode ser usado para aproximar
qualquer número real que se encontra no intervalo
[179,01561737060546875;179,01563262939453125], dado que

0 1000010 101100110000001111111111 = 179,0156097412109375


é o número de máquina mais pequeno que antecede aquele e

0 1000010 101100110000010000000001 = 197,0156402587890625.


é o maior número de máquina que sucede aquele.

Com esta representação, o número positivo mais pequeno que pode ser expresso é

0 0000000 000100000000000000000000 = 16–65  10–78


e o maior é

0 1111111 111111111111111111111111  1663  1076.

b) O número de máquina, em precisão dupla:

0 10000000011 1011100100010000010000000000000000000000000000000000
representa precisamente o número decimal

+ [1+ (1/2)1 + (1/2)3 + (1/2)4 + (1/2)5 + (1/2)8 + (1/2)12 ] * 21027–1023 = 27,56640625.

1.2.2. – Erros de Aproximação

15
A representação na forma de ponto flutuante só permite a representação exacta de alguns
números reais, o que implica que tenhamos de aceitar representar os números em geral com uma
certa margem de erro.

A questão pertinente que se coloca é: dado um número real x, qual é o número em FP(b,p,q),
onde b representa a base aplicada para o sistema, p o número de dígitos disponíveis e q o
expoente desejado para a base em uso e que exprimiremos por Fl(x), que o representa? Se x tiver
representação exacta em FP(b,p,q), então Fl(x) = x. Se não for possível a representação exacta,
existem basicamente duas técnicas para determinar Fl(x): a truncatura, em que se desprezam
simplesmente os dígitos do número real x que não cabem na mantissa de p dígitos, e o
arredondamento. Esta técnica consiste em adicionar 5  10 n( p 1) à mantissa de x antes da
truncatura, para se obter: Fl(x) = .12... p * 10n. Nesta técnica, se dp+1  5, adiciona-se 1 a dp
para se obter Fl(x), isto é, arredonda-se por excesso. Se dp+1 < 5, aplica-se a truncatura de tudo o
que vem depois das p casas, isto é, arredonda-se por defeito.

Quando uma máquina de calcular ou computador digital são usados para fazer cálculos
numéricos deve ser tomado como inevitável este tipo de erro de aproximação, que aparece pelo
facto de a aritmética feita numa máquina envolver apenas valores numéricos com um número
finito de algarismos (dígitos). Num computador típico, só um subconjunto relativamente
pequeno do sistema de números reais é usado para representar todos os números reais. Este
subconjunto contém só números racionais e guarda a parte fraccionária, chamada mantissa,
junto com uma parte exponencial chamada característica, como foi mostrado nos exemplos
anteriores.

Números que aparecem nas máquinas de calcular com um valor inferior ao menor que a máquina
suporta provocam um esvaziamento “underflow” e são convertidos a zero, enquanto que os que
ostentam valores superiores ao maior que a máquina suporta provocam um transbordo
“overflow” e a consequente paragem do processamento da máquina ou do computador,
geralmente com mensagem “error”.

Os sistemas de representação de números descritos nestes exemplos não são padrão para todas
as máquinas de calcular, mas dão uma indicação das possíveis dificuldades que podem ocorrer.

16
Qualquer número real positivo y pode ser normalizado para obter a forma .d1d2...dkdk+1dk+2... *
10n, se assumirmos que o número em questão está dentro do limite permitido pela máquina.

Definição 1.13 (erro absoluto e erro relativo):

Se p* é uma aproximação de p, o erro absoluto é igual a |p–p*| e o erro relativo é igual


p  p*
a , desde que p  0.
p

Definição 1.14 (dígitos significativos):

Diz-se que o número p* aproxima p com t algarismos (ou dígitos) significativos se t


p  p*
é o maior número inteiro não negativo, para o qual  5  10 t .
p

A razão de se utilizar o erro relativo na definição é para se obter um conceito contínuo.

Para se reduzir os efeitos dos erros de arredondamento pode se usar cálculos aritméticos com
muitos dígitos, como quando se opta pelas precisões dupla ou múltipla disponíveis em muitos
computadores. A sua desvantagem é que ela leva muito mais tempo de execução.

Outra forma de estimar erros de arredondamento consiste em usar uma aritmética de intervalos,
isto é, reter o maior e o menor valores possíveis em cada passo, para que no fim se possa ter um
intervalo que contém o valor correcto. Infelizmente, a resposta certa pode estar perto dos
extremos do intervalo, ou pode-se ter que achar um intervalo muito pequeno para uma
implementação razoável. É também possível estudar-se erros de um ponto de vista estatístico,
que, entretanto, por envolver muita análise, está para além do âmbito deste texto.

Uma vez que são usadas técnicas iterativas envolvendo sequências, esta secção vai terminar com
uma breve abordagem do conceito de ordem de convergência...

Algoritmos e Convergência

Um algoritmo é um procedimento que descreve, sem ambiguidade, um sequência


finita de passos numa ordem específica, com o objectivo de resolver um problema ou
aproximar a solução do problema.

17
Pseudo códigos (especificações técnicas) são usados para descrever os algoritmos,
especificando a forma como devem ser alimentados e a forma desejável do resultado esperado.

Nem todos os procedimentos numéricos dão um resultado satisfatório para valores


arbitrariamente escolhidos para “input”. Como consequência, uma técnica de paragem
independente da técnica numérica deve ser incorporada em cada algoritmo, para que ciclos
intermináveis possam ocorrer uma única vez.

Dois símbolos de pontuação são usados nos algoritmos: o ponto (.) para indicar a terminação de
um passo e o ponto e vírgula (;) para separar tarefas dentro de um mesmo passo. A indentação é
usada para indicar que grupos de instruções devem ser executados como uma única entidade.

Técnicas cíclicas nos algoritmos são controladas por contadores como “For i = 1, 2, ... , n, xi =
ai + i*h”, ou por condições como “While i < N execute steps 3 – 6.”. Para permitir execuções

condicionadas, usam-se as instruções padrão “If...Then ...” ou “If...Then...Else... ”.

Os passos do algoritmo seguem geralmente as regras das instruções em programação estruturada,


tendo sido organizados para reduzir ao mínimo as dificuldades de tradução das especificações
técnicas.

A escolha de um algoritmo deve obedecer o critério de que pequenas alterações nos dados
iniciais provoquem pequenas alterações nos dados finais. Algoritmos que satisfazem esta
condição dizem-se estáveis, sendo instáveis os que a violam.

Def. 1.15: Suponhamos que En representa a magnitude de um erro depois de n


operações subsequentes. Se En  CnE0, onde C é uma constante independente de n, o
crescimento do erro diz-se linear. Se En  CnE0 para algum C > 1, o crescimento do
erro diz-se exponencial.

18
Fig 1.7

O crescimento linear de um erro geralmente é inevitável e quando C e E0 são pequenos os


resultados são aceitáveis, o que significa que algoritmos que originam um crescimento linear do
erro são estáveis. O crescimento exponencial de um erro deve ser evitado, uma vez que Cn torna-
se grande mesmo para valores relativamente pequenos de n, criando imprecisões inaceitáveis
independentemente do tamanho de E0. Isto torna instáveis os algoritmos que originam este tipo
de crescimento de erro.

Def. 1.16: Suponhamos que (n) seja uma sequência convergente para 0 e ( n) seja
uma sequência convergente para . Se existir uma constante positiva K tal que
 n    k  n para valores de n muito grandes, então diz-se que (n) converge para 

com a taxa de convergência O(n). Esta expressão lê-se “Oh maiúsculo de n” e esta
relação exprime-se: n =  + O(n).

Embora a definição 1.16 permita-nos comparar (n) com qualquer sequência arbitrária ( n), em
1
quase todas as situações tem-se n = , para algum p > 0. Em regra consideramos o maior valor
np
possível de p, para o qual n =  + O(1/np ), para descrever a taxa com que n converge para .

Def. 1.17: Suponhamos que lim G(h)  0 e lim F (h)  L . Se uma constante positiva
h 0 h 0

K existe tal que F (h)  L  k G(h) para valores suficientemente pequenos de h, então

F(h) = L + O(G(h)).

19
Geralmente a função de comparação G tem a forma G(h) = h p , para algum p > 0. Igualmente
consideramos o maior valor possível de p, para o qual F(h) = L + O(G(h)), para descrever a taxa
de convergência de F(h) para L.

Exercícios (1.2):
1. Determine o erro absoluto e o erro relativo nas seguintes aproximações de p por p*:
Ea p  p*
Resolvidos: Ea  p  p * ; Er  
p p

a) p = 8!, p* = 39900  Ea  8! 39900  40320  39900  420

8! 39900 40320  39900 420


Er     0.0104
8! 40320 40320
9
9
9
9
b) p = 9!, p* = 18    Ea  9! 18    362880  359536.87  3343.13
e e

Ea 3343.13
Er    0.0092 .
p 362880
Não resolvidos:

c) p = , p* = 22/7 d) p = , p* = 3.1416
e) p = e, p* = 2.718 f) p= 2 , p* = 1.414
g) p = e10, p* = 22000 h) p = 10, p* = 1400

2. Suponhamos que p* deva aproximar p com um erro relativo não superior a 10–3. Ache o
maior intervalo em que p* deve situar-se para cada um dos seguintes valores de p.
Ea p  p*
Resolvido: (não superior: )  Er    10 3
p p

90  p *
a) 90  Er   10 3  90  p *  0.09  0.09  p *  90  0.09
90
 89.91  p*  90.09  p* [89.91;90.09]
Não resolvidos:

b) 150 c) 900 d) 1500

3. Ache os intervalos para x usando a definição 1.14, sabendo que x é uma aproximação, com 4
algarismos significativos, de:

20
px
Resolvido: (4 algarismos significativos:  5  10  4 )
p
3
7x
a) 3
7  3
 5  10 4  3
7  x  3 7  5  10 4 
7
 
 3 7  5  10 4  x  3 7  3 7  5  10 4  3 7 1  5  10 4  x  3 7 1  5  10 4  
 1.911974717 < x < 1.913887648
Não resolvidos:

b)  c) e d) 2
4. Faça os seguintes cálculos (i) exactamente, (ii) usando a truncatura a 3 dígitos e (iii) usando o
arredondamento a 3 dígitos. Determine o erro relativo nos cálculos (ii) e (iii).
Resolvidos:
a) (164 + 0,913) – (143 + 21)
(i) xe  (164  0.913)  (143  21)  164.913  164  0.913

x e  xt 3 0.913
(ii) xt 3  (164  0.913)  (143  21)  164  164  0  Er   1
xe 0.913

xe  x a 3 0.087
(iii) xa3  (164  0.913)  (143  21)  165  164  1  Er    0.09529
xe 0.913
b) 4/5 * 1/3
4 1 4
(i) xe     0.266666666
5 3 15
4 1 xe  xt 3 0.000666666
(ii) xt 3    0.800  0.333  0.266  Er    0.0025
5 3 xe 0.266666666

4 1 xe  xt 3 0.000666666
(iii) xa 3    0.800  0.333  0.266  Er    0.0025
5 3 xe 0.266666666
Não resolvidos:

c) 14,1 + 0,981 d) 0,218 * 179 e) (164 – 143) + 0,913


f) 4/5 + 1/3 g) (1/3 – 3/11) + 3/20 h) (1/3 + 3/11) – 3/20

5. Faça os seguintes cálculos usando (i) arredondamento a três dígitos, (ii) arredondamento a
quatro dígitos, (iii) truncatura a três dígitos e (iv) truncatura a quatro dígitos. Determine em
cada caso o erro absoluto e o erro relativo, com o valor correcto determinado com uma
exactidão de pelo menos cinco dígitos.

21
a) 133 + 0.921 b) (13/14 – 6/7) / (2e – 5.4) c) (121 – 0.327) – 119

d) 133 – 0.499 e) (121 – 119) – 0.327 f) –10 + 6e – 3/62

g) (2/9) * (9/7) h) (– 22/7) / (1/17)

6. As medidas aproximadas das dimensões de um paralelepípedo rectangular são 3m, 4m e 5m.


a) Quais são os maiores erros absoluto e relativo cometidos com esta aproximação, no
cálculo da área da superfície do sólido, sabendo que a aproximação foi feita por:
 Arredondamento.
 Truncatura.
b) Quais são os maiores erros absoluto e relativo cometidos com esta aproximação, no
cálculo do volume do sólido, sabendo que a aproximação foi feita por:
 Arredondamento.
 Truncatura.
Resolução:
a) Área da superfície do paralelepípedo: A = 2(xy + xz + yz)
(i) Arredondamento que gera o maior erro: x = 2.5; y = 3.5 , z = 4.5
Ae  2(2.5  3.5  2.5  4.5  3.5  4.5)  2(8.75  11.25  15.75)  2  35.75  71.5
Aa  2(3  4  3  5  4  5)  2(12  15  20)  2  47  94
Ea 22.5
Ea  71.5  94  22.5 ; Er    0.314685
Ae 71.5
(ii) Truncatura que gera o maior erro: x = 3.9; y = 4.9 , z = 5.9
Ae  2(3.9  4.9  3.9  5.9  4.9  5.9)  2(19.11  23.01  28.91)  2  71.03  142.06
Aa  2(3  4  3  5  4  5)  2(12  15  20)  2  47  94
Ea 48.06
Ea  142.06  94  48.06 ; Er    0.3383
Ae 142.06
b) Volume do paralelepípedo: V = xyz
(i) Arredondamento que gera o maior erro: x = 2.5; y = 3.5 , z = 4.5
Ae  2.5  3.5  4.5  39.375
Ea 20.625
Aa  3  4  5  60  Ea  39.375  60  20.625 ; Er    0.5238
Ae 39.375
(ii) Truncatura que gera o maior erro: x = 3.9; y = 4.9 , z = 5.9

22
Ae  3.9  4.9  5.9  112.749
Ea 52.749
At  3  4  5  60  Ea  112.749  60  52.749 ; Er    0.4678
Ae 112.749
7. Um terreno rectangular mede aproximadamente 5km e 3 km.
a) Quais são os maiores erros absoluto e relativo cometidos com esta aproximação, no
cálculo do perímetro do terreno, sabendo que a aproximação foi feita por:
 Arredondamento.
 Truncatura.
b) Quais são os maiores erros absoluto e relativo cometidos com esta aproximação, no
cálculo da área do terreno em hectares, sabendo que a aproximação foi feita por:
 Arredondamento.
 Truncatura.
8. Use o formato das máquinas IBM para achar o número no sistema decimal, equivalente aos
seguintes números de máquina em ponto flutuante e precisão simples, aos respectivos
antecessores, bem como aos respectivos sucessores:
a) 0-1000011-101010010011000000000000 b) 1-0111111-010001111000000000000000
c) 0-0111111-010001111000000000000000 d) 0-0111111-01000111100000000000000

1
9. O número e está definido por e   , onde n! n(n  1)(n  2)2  1 para n  0 e 0! = 1.
n 0 n !

Use a truncatura a quatro dígitos para calcular as seguintes aproximações de e e determine os


erros absoluto e relativo.
5 5 10 10
1 1 1 1
a) e   b) e   c) e   d) e  
n 0 n ! j  0 (5  j ) ! n 0 n ! j  0 (10  j ) !

10. Ache a taxa de convergência das seguintes sequências, quando n  :

1 1  1
2 d) lim ln( n  1)  ln n  0
a) lim sin 0 b) lim sin 0 c) lim  sin   0 n
n  n n  n2 n 
 n
11. Ache a taxa de convergência das seguintes funções, quando h  0:

sin h 1  cos h sin h  h cos h 1  eh


a) lim 1 b) lim 0 c) lim 0 d) lim  1
h 0 h h 0 h h 0 h h 0 h

23
2. RAÍZES REAIS DE EQUAÇÕES NÃO LINERARES E DE SISTEMAS
DE EQUAÇÕES LINEARES
Neste capítulo estudaremos um dos problemas mais básicos em análise numérica: encontrar
valores da variável x que satisfazem a equação f(x) = 0, para uma dada função f. A solução para
este problema chama-se zero da função y = f(x) ou raiz da equação f(x) = 0.

Assim, para se resolver uma equação f(x) = 0, começa-se por se criar intervalos, aleatoriamente,
e testar-se se os mesmos contêm ou não uma raiz, através do Teorema do valor intermédio.
Achado um intervalo, tomam-se os extremos desse intervalo como as primeiras aproximações da
raiz da equação e aplica-se uma das técnicas que se seguem, para refinar, isto é, para melhorar a
aproximação. Normalmente, cada técnica consiste num procedimento cíclico. A cada ciclo do
procedimento dá-se o nome de iteração, por usar como input o output do ciclo anterior, e o
procedimento é sempre descritível através de um algoritmo que pode servir de guia para um
pequeno programa de computador.

2.1. O algoritmo da bissecção

A primeira técnica, baseada no teorema do valor intermédio (T1.11), chama-se método de


bissecção, ou algoritmo da bissecção ou ainda método de pesquisa binária.

Seja f  C[a,b], com f(a) e f(b) de sinais contrários. Nestas condições, o teorema diz existir p,
com a < p < b, tal que f(p) = 0.

24
Fig. 2.1

Como mostra a figura 2.1, o método consiste em subdividir repetidamente o intervalo [a,b] em
duas metades e em cada passo localizar a metade que contém p. Para começar faz-se a
substituição a1 = a e b1 = b e coloca-se p1 como ponto médio do intervalo [a,b], isto é: p1 = ½(a1
+ b1). Se f(p1) = 0, então p = p1. Se não, então f(p1) tem o mesmo sinal que f(a1) ou f(b1). Se f(p1)
e f(a1) têm o mesmo sinal, então p] p1,b1[, e fazemos as substituições a2 = p1 e b2 = b1. Se f(p1)
e f(b1) têm o mesmo sinal, então p] a1, p1[, e fazemos as substituições a2 = a1 e b2 = p1. Feito
isto, repetimos o processo no intervalo [a2,b2] e depois no intervalo [a3,b3] e assim por diante,
aplicando-se sempre a “fórmula geral” pn = ½(an + bn) , da sequência (pn) = (½(an + bn)), de
convergência garantida. Esta técnica encontra-se resumida no Algoritmo 2.1 e a sua aplicação
pode ser feita e controlada com ajuda de um dos seguintes quadros:

Tabela 1: Método de bissecção

n an bn pn f(pn) (<> 0 ?)

...

Tabela 2: Método de bissecção

n an bn pn f(pn) f(pn) f(an) < 0? f(pn) f(bn) < 0?

...

25
2.1.1. – Critérios de Paragem

O processo descrito anteriormente deve terminar em algum momento, mesmo que não se tenha
achado a solução exacta. A forma mais comum consiste em estabelecer um critério de paragem,
tal como o que vem expresso no passo 4 do algoritmo 2.1.

Vamos mencionar outros procedimentos de paragem que podem ser usados, os primeiros três dos
quais são aplicáveis para qualquer técnica iterativa considerada neste capítulo.

Escolhe-se uma tolerância  > 0 e cria-se uma sequência p1, ..., pN, de iterações, até uma das
seguintes condições ser satisfeita:

(2.1) |f(pN)| < ; (2.2) |pN – pN –1| < ;


p N  p N 1 bN  a N
(2.3) < , com pN  0; (2.4) < , com aN  0.
pN aN

Infelizmente podem surgir dificuldades na utilização indiscriminada destes critérios de paragem.


Por exemplo, há sequências (pn) com propriedade de que pn – pn –1 converge para zero, enquanto
que a própria sequência é divergente. É também possível f(pn) estar perto de zero enquanto pn
difere significativamente de p. Sem conhecimentos adicionais sobre f ou p, a inequação (2.2) é o
melhor critério de paragem aplicável, porque testa o erro relativo...

Teorema 2.1 (Cálculo do número de iterações):

Suponhamos que fC[a,b] e f(a)*f(b) < 0, isto é, f(a) e f(b) têm sinais contrários. O
método de bissecção gera uma sequência (pn) que converge para a raiz p (ou zero de
f), com |pn – p|  (b – a) / 2n < , para n  1.

Este teorema permite-nos estimar o número de iterações necessárias para se alcançar a exactidão
desejada, sem ser necessário verificar em cada iteração se algum dos critérios de paragem
apresentados é satisfeito ou não.

Algoritmo 2.1 (de bissecção) : (Consulte Burden, p. 49)

26
Exemplo: Use o algoritmo da bissecção para achar a solução correcta até 10 –6 para a equação x3
+ 4x2 – 10 = 0, em [1;2].

Resolução:
1
N.º mínimo de iterações: |pn – p|  (2 – 1) / 2n < 10–6  2n > =1000000 
10 6
6
n  19.9  n = 20
lg 2
i ai bi pi f(a0) f(b0) f(pi)
0 1 2 -5 14
1 1 2 1,5 2,375
2 1 1,5 1,25 -1,796875
3 1,25 1,5 1,375 0,162109375
4 1,25 1,375 1,3125 -0,848388672
5 1,3125 1,375 1,34375 -0,350982666
6 1,34375 1,375 1,359375 -0,096408844
7 1,359375 1,375 1,3671875 0,032355785
8 1,359375 1,3671875 1,36328125 -0,032149971
9 1,36328125 1,3671875 1,365234375 7,20248E-05
10 1,36328125 1,365234375 1,364257813 -0,016046691
11 1,364257813 1,365234375 1,364746094 -0,007989263
12 1,364746094 1,365234375 1,364990234 -0,003959102
13 1,364990234 1,365234375 1,365112305 -0,001943659
14 1,365112305 1,365234375 1,36517334 -0,000935847
15 1,36517334 1,365234375 1,365203857 -0,000431919
16 1,365203857 1,365234375 1,365219116 -0,000179949
17 1,365219116 1,365234375 1,365226746 -5,39625E-05
18 1,365226746 1,365234375 1,36523056 9,03099E-06
19 1,365226746 1,36523056 1,365228653 -2,24658E-05
20 1,365228653 1,36523056 1,365229607 -6,71741E-06
21 1,365229607 1,36523056 1,365230083 1,15679E-06

Exercícios (2.1):
1. Use o teorema 2.1 para achar um limite para o número de iterações necessárias para alcançar
uma aproximação à solução de uma equação, que se encontra no intervalo [1,2], com uma
exactidão até 10–4.
Resolução:
1 4
|pn – p|  (2 – 1) / 2n < 10–4  2n > 4
=10000  n   13.3  n = 14.
10 lg 2
2. Use o algoritmo da bissecção para achar soluções correctas até   10 5 para os problemas
seguintes:
Resolvido:

27
a) ex + 2–x + 2cos x – 6 = 0 para 1  x  2,
1
(i) N.º mínimo de iterações: |pn – p|  (2 – 1) / 2n < 10–5  2n > =100000 
10 5
5
n  16.6  n = 17
lg 2
(ii)
i ai bi pi f(a0) f(b0) f(pi)
0 1 2 -1,70111 0,806762
1 1 2 1,5 -1,02328314
2 1,5 2 1,75 -0,30458766
3 1,75 2 1,875 0,194379041
4 1,75 1,875 1,8125 -0,06827443
5 1,8125 1,875 1,84375 0,059637426
6 1,8125 1,84375 1,828125 -0,00515671
7 1,828125 1,84375 1,835938 0,027028879
8 1,828125 1,835938 1,832031 0,010883456
9 1,828125 1,832031 1,830078 0,002850245
10 1,828125 1,830078 1,829102 -0,00115651
11 1,829102 1,830078 1,82959 0,000846047
12 1,829102 1,82959 1,829346 -0,00015544
13 1,829346 1,82959 1,829468 0,000345254
14 1,829346 1,829468 1,829407 9,48956E-05
15 1,829346 1,829407 1,829376 -3,0274E-05
16 1,829376 1,829407 1,829391 3,231E-05
17 1,829376 1,829391 1,829384 1,01784E-06
Não resolvidos:

b) x  2  x  0 para 0  x  1 c) ex – x2 + 3x – 2 = 0 para 0  x  1
3
3. Ache uma aproximação de 25 , correcta até quatro algarismos significativos, usando o
algoritmo da bissecção. [Dica: Considere f(x) = x3 – 25].

4. Ache uma aproximação de 3 , correcta até quatro algarismos significativos, usando o


algoritmo da bissecção.

5. Use o teorema 2.1 para achar um limite para o número de iterações necessárias para alcançar
uma aproximação à solução de x3 + x – 4 = 0, que se encontra no intervalo [1,4], com uma
exactidão até 10–3. Ache uma aproximação à raiz com este grau de exactidão.

28
2.2. Iteração do ponto fixo

O método nesta secção e a maioria dos restantes métodos deste capítulo baseiam-se na mudança
da equação f(x) = 0 para g(x) = x, equação típica que fornece os pontos fixos de g(x). Há muitas
maneiras de realizar esta mudança. Um dos procedimentos consiste em definir g(x) como sendo x
– f(x). Neste caso, x satisfaz f( x ) = 0 se e só se g( x ) = x . Consequentemente, se pode ser
encontrado o método geral de resolução de um problema na forma g(x) = x, então uma solução
para f(x) = 0 pode ser obtida definindo-se a função g(x) = x – f(x).

Definição 2.2:

Se g: [a,b]  R e g(p) = p para algum p[a,b], então a função g diz-se ter o ponto fixo
p em [a,b].

Fig. 2.2

Exemplo 1: g(x) = x é uma função constituída só de pontos fixos, h(x) = x – senox tem ponto
fixo no intervalo [0;1] e i(x) = x2 tem dois pontos fixos: (0,0) e (1,1).

29
Teorema 2.3:

Se gC[a,b] e g(x)[a,b] x[a,b], então g tem um ponto fixo em [a,b]. Além disso,
supondo que g’(x)]a,b[ e |g’(x)|  k < 1 x[a,b], então g tem um único ponto fixo p
em [a,b].

Fig. 2.3

Exemplo 2: Seja g(x) = (x2 – 1) / 3, no intervalo [–1;1]. Pelo teorema do valor extremo, o mínimo
absoluto de g ocorre em x = 0 e g(0) = – 1/3. Analogamente, os máximos de g ocorrem em x =
1, com o valor g(1) = 0. Por outro lado, |g’(x)| = |2x / 3|  2/3 x(–1;1). Assim, g satisfaz a
hipótese do teorema 2.3 e tem um único ponto fixo em [–1;1], que se pode achar resolvendo-se a
equação p = g(p) = (p2 – 1) / 3, ou seja, p2 – 3p – 1 = 0.

30
Fig 2.4

Para se aproximar o ponto fixo de uma função g, escolhe-se uma aproximação inicial p0 e cria-se
uma sequência (pn): pn = g(pn–1) para cada n  1. Se a sequência converge para p e g é
contínua, então, pelo teorema 1.4, p = limn pn = limn g(pn–1) = g(limn pn– 1) = g(p),
obtendo-se assim a solução para x = g(x). Esta técnica chama-se técnica iterativa do ponto fixo
ou iteração funcional e é desenvolvida no Algoritmo 2.2.

Fig. 2.5

31
Exemplo 3: A equação x3 + 4x2 – 10 = 0 tem uma única raiz em [1;2], que é p = 1,36523 e foi
achada no exemplo 1 da secção 2.1. Há muitas maneiras de alterar a mesma equação para a
forma x = g(x), por simples manipulações algébricas:
(a) x = g1(x) = x – x3 – 4x2 + 10,
10
(b) x = g2(x) =  4x ,
x
1
(c) x = g3(x) = 10  x 3 ,
2
10
(d) x = g4(x) = e
4 x
x 3  4 x 2  10
(e) x = g5(x) = x  .
3x 2  8 x
Comparando os resultados aos do algoritmo da bissecção achados nesta equação, pode verificar-
se que, enquanto a escolha da variante (a) conduziu a uma divergência e a escolha da variante (b)
conduziu a uma indefinição, resultados excelentes podem ser obtidos através da escolha das
variantes (c), (d) e (e), como o atestam os quadros na página seguintes. Em especial, se a variante
(c) tem uma taxa de convergência similar à do método de bissecção, já as variantes (d) e (e) têm
uma taxa de convergência três ou quatro vezes mais alta.

O exemplo anterior ilustra a necessidade de um procedimento que garanta a convergência da


função g para uma solução de x = g(x), bem como a escolha de g de maneira a tornar essa
convergência o mais rápida possível. O seguinte teorema é o primeiro passo para a determinação
de um procedimento do género.

Teorema 2.4:

Seja gC[a,b] e suponhamos que g(x)[a,b] x[a,b]. Além disso, g’[a,b], com |g’(x)|
 k < 1 x]a,b[. Se p0]a,b[, então a sequência definida por pn = g(pn–1), n  1,
convergirá para um único ponto fixo p[a,b].

Corolário 2.5:

Se g satisfaz a hipótese do teorema 2.4, um limite do erro envolvido na utilização de pn


para aproximar p é dado por

|pn – p|  kn  max{p0 – a, b – p0} n1 e |pn – p|  kn / (1 – k)  |p0 – p1| n1.

32
a)
i pi g1(pi)
0 0,5 9,375
1 9,375 -1156,162109 c)
2 -1156,162109 1540106415
3 1540106415 -3,65302E+27 i pi g3(pi)
4 -3,65302E+27 4,8748E+82 0 0,5 1,571225636
1 1,571225636 1,23703645
b) 2 1,23703645 1,423640897
3 1,423640897 1,333663279
i pi g2(pi) 4 1,333663279 1,380929894
0 0,5 4,242640687 5 1,380929894 1,357075141
1 4,242640687 indefinido 6 1,357075141 1,369373815
7 1,369373815 1,363100441
d) 8 1,363100441 1,366318139
9 1,366318139 1,364672377
i pi g4(pi)
0 10 1,364672377 1,365515355
0,5 1,490711985
1 11 1,365515355 1,365083891
1,490711985 1,349539711
2 12 1,365083891 1,365304812
1,349539711 1,36723067
3 13 1,365304812 1,365191717
1,36723067 1,364975542
4 14 1,365191717 1,365249619
1,364975542 1,365262391
15 1,365249619 1,365219976
5 1,365262391 1,365225894
6 16 1,365219976 1,365235152
1,365225894 1,365230538
7 17 1,365235152 1,365227383
1,365230538 1,365229947
8 18 1,365227383 1,36523136
1,365229947 1,365230022 19 1,36523136 1,365229324
9 1,365230022 1,365230012 20 1,365229324 1,365230366
21 1,365230366 1,365229833
e) 22 1,365229833 1,365230106
i pi g5(pi) 23 1,365230106 1,365229966
0 0,5 2,368421053 24 1,365229966 1,365230038
1 2,368421053 1,649408073 25 1,365230038 1,365230001
2 1,649408073 1,397991494
3 1,397991494 1,365743858
4 1,365743858 1,365230143
5 1,365230143 1,365230013
6 1,365230013 1,365230013

Como mostram estes quadros, aplicação deste método é feita em conformidade com o seguinte
modelo de quadro:

33
Tabela 3: Método do ponto fixo

n pn g(pn)
0
1
...
Algoritmo 2.2 (Iteração do ponto fixo) : (Consulte Burden, p. 59)

Exercícios (2.2):
1. Use o teorema 2.3 para mostrar que g(x) = 2–x tem um único ponto fixo no intervalo [1/3,1].
Use a iteração do ponto fixo para achar uma aproximação do ponto fixo com exactidão até
10–4. Use o corolário 2.5 ou 2.6 para estimar o número de iterações requerido para alcançar a
exactidão de 10–4 e compare esta estimativa teórica ao número real que se pretende.
2. Use o teorema 2.3 para mostrar que g(x) =  + 0,5sen x tem um único ponto fixo no intervalo
[0,2]. Use a iteração do ponto fixo para achar uma aproximação do ponto fixo com
exactidão até 10–2. Use o corolário 2.5 ou 2.6 para estimar o número de iterações requerido
para alcançar a exactidão de 10–2 e compare esta estimativa teórica ao número real que se
pretende.
3. Resolva x3 – x – 1 = 0 para a raiz do intervalo [1,2], usando iteração do ponto fixo. Obtenha
uma aproximação da raiz com exactidão até 10–5.

4. Use um procedimento de iteração de ponto fixo para achar uma aproximação de 3 que
esteja exacta até quatro algarismos significativos. Compare o seu resultado e o número de
iterações requerido com a resposta obtida no exercício 4 da secção 2.1.

5. Use um procedimento de iteração de ponto fixo para achar uma aproximação de 3 25 que
esteja exacta até quatro algarismos significativos. Compare o seu resultado e o número de
iterações requerido com a resposta obtida no exercício 3 da secção 2.1.
6. Para cada uma das seguintes equações, determine um intervalo [a,b] em que a iteração do
ponto fixo converge. Estime o número de iterações necessárias para obter aproximações
exactas até 10–5 e efectue os cálculos:
a) x = (2 – ex + x2) / 3
b) x = 4–x
c) x = 5–x
d) x = 6–x
e) x = 1,75 + (4x – 7) / (x – 2)
7. Para cada uma das seguintes equações determine a função g e um intervalo [a,b] em que a
iteração do ponto fixo converge para uma solução positiva da equação e ache as soluções
com uma exactidão de 10–5.
a) 3x2 – ex = 0
b) x – cos x = 0

34
8. Ache todos os zeros de f(x) = x2 + 10 cos x aplicando o método de iteração do ponto fixo para
uma função apropriada de iteração g. Ache os zeros com exactidão até quatro algarismos
significativos e compare o número das iterações requeridas para o número que se pretende
no exercício 8 da secção 2.1.
9. Suponha que g é continuamente diferenciável nalgum intervalo ]c,d[ que contém o ponto fixo
p de g. Mostre que se |g’(p)| < 1, então existe  > 0 tal que a iteração do ponto fixo converge
para qualquer aproximação inicial p0, sempre que |p0 – p|  .
2.3. Métodos de Newton
2.3.1. Método de Newton-Raphson

O método de Newton-Raphson (mais conhecido por de Newton) é um dos métodos numéricos


mais poderosos e melhor conhecidos para o cálculo de raízes de f(x) = 0. Há pelo menos três
maneiras comuns de se introduzir o método de Newton. A maneira mais comum consiste em
considerar a técnica graficamente como se segue e que se encontra resumida no Algoritmo 2.3.

Fig. 2.6

Suponhamos que f’(x) existe num intervalo [a,b] e que f ( x)  0 nesse intervalo. Além disso,
suponhamos que existe um p  [a,b], tal que f(p) = 0. Seja p0  [a,b] arbitrário. Seja p1 o ponto
em que a linha tangente de f em (p0,f(p0)) cruza o eixo dos x. Para cada n  1, seja pn o ponto de
intersecção dessa linha tangente de f no ponto (pn–1, f(pn–1)) com o eixo dos x....

Algoritmo 2.3 (Newton) : (Consulte Burden, p. 67)

35
Outra possibilidade consiste em derivar o método de Newton como uma técnica simples de obter
uma convergência mais rápida do que a obtida por muitos outros tipos de iterações funcionais
(veja secção 2.4). A terceira forma de se introduzir o método de Newton, que será desenvolvido
a seguir, é uma aproximação intuitiva baseada no polinómio de Taylor definido no teorema 1.12:

Suponhamos que a função f é diferenciável duas vezes consecutivas no intervalo [a,b], isto é,
f  C 2 a, b . Seja x  [a,b] uma aproximação de p, tal que f ( x )  0 e | x – p| é “muito
pequeno”. Consideremos um polinómio de Taylor do primeiro grau para f(x), desenvolvido em
(x  x) 2
ordem a x , f ( x)  f ( x )  ( x  x ) f ( x )  f ( ( x)) , onde (x) se encontra entre x e x .
2

( p  x) 2
Uma vez que f(p) = 0, com x = p, isso dá 0  f ( x )  ( p  x ) f ( x )  f ( ( x)) . Uma vez
2
que foi assumido que | x – p| era pequeno, | x – p|2 é ainda mais pequeno, e se esta quantidade é
assumida como desprezível, então 0  f ( x )  ( p  x ) f ( x ) .

Resolvendo esta equação em ordem a p, temos: p  x – f( x ) / f’( x ), que deverá ser uma
aproximação de p melhor do que é x . Isto fixa a plataforma para o método de Newton-Raphson,
f ( p n 1 )
que envolve a criação da sequência (pn) definida por p n  p n 1  , n  1.
f ( p n 1 )

As técnicas de paragem abordadas nas desigualdades (2.1), (2.2) e (2.3) são aplicáveis no método
de Nawton, isto é: escolher uma tolerância  > 0 e construir p1, ... pN, até

(2.1) |pN – pN–1| < , (2.2) |pN – pN–1| / |pN| <  ou (2.3) |f(pN)| < .

O método de Newton é uma técnica de iteração funcional pn = g(pn–1), n  1, para a qual


f ( p n 1 )
g ( p n 1 )  p n 1  , n  1.
f ( p n 1 )

É claro que, a partir desta equação, o método de Newton não pode continuar se f’(pn–1) = 0, para
algum n. Veremos que o método é mais efectivo quando f  está limitado de uma maneira que
situa o ponto fixo p longe de zero. A aplicação deste método é feita em conformidade com o
seguinte quadro:

Tabela 4: Método de Newton (Newton-Raphson)

36
n pn f(pn) f ( p n )
0
1
...
Exemplo 1: Para aproximar a solução da equação x  cos x , seja f ( x)  cos x  x . Então, f(/2)

= –/2 < 0 < 1 = f(0), e, segundo o teorema do valor intermédio, existe um zero de f em [0;/2].
O gráfico pode mostrar que f(x) = 0 tem uma única solução em [0;/2]. Uma vez que f’(x) = –
seno – 1, o método de Newton tem a seguinte forma: Pn = Pn–1 – (co-seno Pn–1 – Pn–1) / (–
seno Pn–1 – 1), para n  1, onde P0 ainda está por se escolher. Para alguns problemas pode se
escolher P0 arbitrariamente, enquanto que para outros é importante escolher uma boa
aproximação inicial. Para o problema em apreço, o gráfico sugere P 0 = /4 como uma
aproximação inicial, que nos fornece a seguinte tabela:

n Pn
0 0.7853981635
1 0.7395361337
2 0.7390851781
3 0.7390851332
4 0.7390851332
O seguinte teorema de convergência para o método de Newton ilustra a importância da escolha
de p0.

Teor 2.6: Seja f  C2[a,b]. Se p[a,b] é tal que f(p) = 0 e f’(p)  0, então  > 0 tal que o
método de Newton gera uma sequência (pn) convergente para p, para qualquer
aproximação inicial p0[p– , p+].

2.3.2. Método de Secantes

O método de Newton é uma técnica extremamente poderosa, mas tem um grande inconveniente:
a necessidade de se conhecer o valor da derivada de g em cada aproximação. Frequentemente
f (x) é mais difícil de determinar e precisa de mais operações aritméticas para se calcular do que
propriamente f(x). Para se contornar o problema de se calcular a derivada no método de Newton,
deduz-se uma pequena variação da mesma. Por definição,

37
f ( x)  f ( Pn1 )
f ( Pn1 )  lim . Sendo x = Pn–2, teremos
x P
n 1
x  Pn1

f ( Pn2 )  f ( Pn1 ) f ( Pn1 )  f ( Pn2 )


f ( Pn1 )   .
Pn2  Pn1 Pn1  Pn2

Aplicando esta aproximação de f ( p n 1 ) na fórmula de Newton obtém-se

f ( Pn1 )(Pn1  Pn2 )


Pn  Pn1  .
f ( Pn1 )  f ( Pn2 )
A técnica que usa esta fórmula chama-se método de secantes e é apresentada de forma resumida
no Algoritmo 2.4. (Consulte Burden, p. 71)

A aplicação deste método é feita em conformidade com o seguinte quadro:

Tabela 5: Método de Newton (Secantes)

n pn f(pn)
0
1
...
E no exemplo anterior a aplicação deste método daria

( Pn1  Pn2 )(cosPn1  Pn1 )


Pn  Pn1  , para n  2, e produziria a seguinte tabela:
(cos Pn1  Pn1 )  (cos Pn2  Pn2 )

n Pn
0 0.5
1 0.7853981635
2 0.7363841388
3 0.7390851392
4 0.7390851493
5 0.7390851332

38
Pode notar-se através deste exemplo que, com a exactidão encontrada dom P5, a convergência do
método de secantes geralmente é mais lenta do que a do método de Newton, em que a mesma
exactidão foi encontrada com P3.

2.3.3. Método de Posição Falsa

Cada par sucessivo de aproximações no método de bissecção acerca-se da raiz p da equação, isto
é, para cada número inteiro positivo n, uma raiz situa-se entre an e bn. Isto implica que para cada
n o método de bissecção satisfaz a desigualdade |Pn – p| < ½|an – bn|, que fornece um limite de
erro simples de calcular para as aproximações. No exemplo anterior foi achada a aproximação da
raiz de x – co-seno x = 0 como sendo 0.7390851332. Note-se que pelo método de Newton esta
raiz não está cercada nem pelo par P0 e P1, nem pelo par P1 e P2. Pelo método de secantes as
aproximações iniciais P0 e P1 começaram cercando a raiz, mas o par de aproximações P3 e P4
não conseguiu fazer o mesmo.

O método de posição falsa (também chamado método Regula Falsi) gera aproximações da
mesma maneira que o método se secantes, mas fornece um teste em cada iteração para garantir
que a raiz está cercada. Embora não seja um método propriamente recomendável, ilustra a
maneira como o cerco da raiz pode ser incorporado.

Escolhem-se duas aproximações iniciais P0 e P1, com f(P0)*f(P1) < 0, isto é f(P0) e f(P1) de sinais
contrários. A aproximação P2 é escolhida da mesma maneira que no método de secantes, como
sendo o ponto de intersecção do eixo dos x com a recta que une os pontos (P0,f(P0)) e (P1,f(P1)).
Para se decidir qual é a linha secante que se deve usar para determinar P3, verificamos se f(P2) e
f(P1) têm sinais contrários. Se sim, então P1 e P2 cercam a raiz e escolhemos P3 como sendo o
ponto de intersecção do eixo dos x com a secante que passa pelos pontos (P1,f(P1)) e (P2,f(P2)).
Se não, então fazemos o mesmo mas com o par P0 e P2. Assim se procede para a determinação
de todos os valores seguintes, até se satisfazer o critério de paragem. Esta técnica encontra-se
resumida no Algoritmo 2.5. A aplicação deste método é feita em conformidade com o seguinte
quadro:

39
Tabela 6: Método de Newton (posição Falsa)

n pn f(pn) f(pn) (<> 0 ?)


0
1
...

Fig. 2.7

Algoritmo 2.5 (Posição falsa) : (Consulte Burden, p. 73)

Exercícios (2.3):
1. Seja f ( x)  x 2  6 e p0 = 1. Use o método de Newton para achar p2.

2. Seja f ( x)   x 3  cos x e p 0  1 . Use o método de Newton para achar p2. Podia p 0  0 ser
usado?
3. Seja f ( x)  x 2  6 e p0  3 e p1  2 . Ache p3, usando:
a) O método de secantes.
b) O método de posição falsa.
c) Qual dos dois aproxima melhor 6 ?

4. Seja f ( x)   x 3  cos x e p 0  1 e p1  0 . Ache p3, usando:


a) O método de secantes.
b) O método de posição falsa.

40
5. Use o método de Newton para achar soluções exactas até 10 4 para os seguintes problemas:
a) x 3  2x 2  5  0 , 1,4 b) x 3  3x 2  1  0 ,  3,2
   
c) x  cos x  0 , 0, 2  d) x  0.8  0.2 sin x  0 , 0, 2 
   
6. Use o método de Newton para achar soluções exactas até 10 5 para os seguintes problemas:
a) x3 – x – 1 = 0, [1,2] b) e x  2  x  2 cos x  6  0 , 1,2
c) ln( x  1)  cos( x 1)  0 , 1.3,2 d) ( x  2) 2  ln x  0 , 1,2 e e,4
e) e x  3x 2  0 , 0,1 e 3,5 f) 2 x cos 2 x  ( x  2) 2  0 , 2,3 e 3,4
g) sin x  e  x  0 , 0,1 , 3,4 e 6,7
7. Repita os exercícios 5 e 6 usando (i) o método de secantes e (ii) o método de posição falsa.
8. O polinómio de 4º grau f ( x)  230 x 4  18x 3  9 x 2  221x  9 tem dois zeros reais, um em
 1,0 e outro em 0,1 . Tente aproximar estes zeros até 10 6 , usando (a) o método de
posição falsa, (b) o método de secantes e (c) o método de Newton, tomando as extremidades
dos intervalos nos casos (a) e (b) e os pontos médios dos intervalos no caso (c) como
primeiras aproximações.
9. Use o método de Newton para aproximar as soluções das seguintes equações com exactidão
até 10–5.
a) x = (2 – ex + x2) / 3
b) 3x2 – ex = 0
c) ex + 2–x + 2 cos x – 6 = 0
d) x2 + 10 cos x = 0

10. Calcule uma aproximação de 3 com exactidão de quatro algarismos significativos, usando
o método de Newton com p0 = 2.

41
2.4. ANÁLISE DE ERROS DOS MÉTODOS ITERATIVOS E TÉCNICAS DE
ACELERAÇÃO DE CONVERGÊNCIA

Esta secção é dedicada à investigação da ordem de convergência dos esquemas de iteração


funcional e funciona como um meio de obtenção de convergência rápida, redescobrindo o
método de Newton. Vamos considerar também outras formas de acelerar a convergência.

Definição 2.7: Suponhamos que p n n 0 é uma sequência que converge para p, com pn  p para

p n 1  p
todos n. Se existirem constantes positivas  e , com lim   , então (pn) converge
n  pn  p

para p da ordem , com um erro assimptótico constante .

Uma técnica iterativa de solução de um problema da forma x = g(x) diz-se ser de ordem  se a

sequência p n n 0 converge para a solução p = g(p) de ordem .


Dois casos de convergência merecem atenção especial.

1. Se  = 1, a sequência diz-se linearmente convergente. Por exemplo, o método do algoritmo


da bissecção dá uma convergência linear.

2. Se  = 2, a sequência diz-se quadraticamente convergente.

O exemplo seguinte mostra que uma iteração do ponto fixo é geralmente linear e também
compara a convergência linear com a quadrática.

Teorema 2.8: Suponhamos que queremos achar uma solução aproximada de g(x) = x, usando o
esquema de iterações do método de ponto fixo pn = g(pn–1), para qualquer n  0. Assumindo que
g aplica o intervalo [a,b] a si próprio e que um número positivo k existe, com |g’(x)|  K < 1 para
todos x  [a,b], o teorema 2.4 implica que g tem um único ponto fixo p  [a,b] e se p0  [a,b],
então a sequência do ponto fixo (pn) com n = 0,..., converge para p. Esta convergência será
linear, se g’(p)  0.

Se n é qualquer número inteiro positivo, então

en+1 = pn+1 – p = g(pn) – g(p) = g’(n)(pn – p) = g’(n)en,

42
onde n está entre pn e p. Uma vez que (pn) com n = 0, ..., converge para p, (n) com n = 0,...,
também converge para p. Assumindo que g’ é contínua em [a,b], teremos limn g’(n) = g’(p).

Assim, limn en+1 / en = limn g’(n) = g’(p) e limn |en+1| / |en| = |g’(p)|.

Deste modo, a iteração do ponto fixo exibe convergência linear se g’(p)  0. Uma
convergência de maior grau só pode ocorrer se g’(p) = 0.

Teorema 2.9: Seja p uma solução de x = g(x). Suponhamos que g’(p) = 0 e g” é


contínua num intervalo aberto contendo p. Então existe um  > 0, tal que para p0  [p–
, p+], a iteração de ponto fixo torna-se num método de segunda ordem. Além disso,
se |g”(x)| / 2  M para p–  x  p+ e M|e0| < 1, então a iteração do ponto fixo
convergirá e a convergência será quadrática.

Para se usar o teorema 2.9 na resolução duma equação da forma f(x) = 0, suponhamos que a
equação f(x) tem uma solução p para a qual f’(p) = 0. Consideremos um esquema de ponto fixo
pn = g(pn–1), n  1, com g da forma g(x) = x – (x)f(x), onde (x) é uma função arbitrária a ser
escolhida mais tarde.

Se (x) é limitada, então g(p) = p, e para que o procedimento iterativo derivado de g seja de
convergência quadrática, é suficiente que g’(p) = 0. Mas g’(x) = 1 – ’(x)f(x) – f’(x)(x) e g’(p) =
1 – f’(p)(p), em virtude de f(p) = 0. Por conseguinte, g’(p) = 0 sse (p) = 1/f’(p).

Em particular, uma convergência quadrática continua válida para o esquema sob condições
viáveis de f. Porém, uma vez que p e consequentemente f’(p) são geralmente desconhecidos, uma
aproximação razoável é (x) = 1/f’(x), para que (p) = 1/f’(p). Então o procedimento torna-se pn
= g(pn–1) = pn–1 – f(pn–1)/f’(pn–1) que pode ser reconhecido como método de Newton.

Na discussão anterior foi necessário que na solução p, f’(p)  0.

Definição 2.10: Uma solução p da equação f(x) = 0, é uma raiz de multiplicidade m de f, se


para x  p, f(x) = (x – p)mq(x), onde q(x) é uma única função tal que limxpq(x)  0 e m é um
número inteiro positivo.

O seguinte teorema dá um meio de se identificar zeros simples de uma função, isto é, aqueles
que têm multiplicidade 1.

43
Teorema 2.11: fC1[a,b] tem um zero simples p em (a,b), se e só se f(p) = 0 e f’(p)  0.

Teorema 2.12 (generalização do teorema 2.11): fCm[a,b] tem um zero p de multiplicidade m


em (a,b), se e só se

0 = f(p) = f’(p) = f’’(p) = … = f(m–1)(p) e f(m)(p)  0.

Um método de segunda ordem que não envolve f’ é uma técnica de aceleração chamada
Processo 2 de Aitken e pode ser usada para acelerar a convergência de qualquer sequência que
é linearmente convergente, independentemente da sua origem.

Suponhamos que (pn) com n = 0,..., é uma sequência linearmente convergente com o limite p,
isto é, para en = pn – p, limn |en+1| / |en| = , com 0 <  < 1.

Para investigar a construção de uma sequência (pn*) com n = 0,...,, que converge mais
rapidamente para p, suponhamos que o caso limitativo ocorre para todos os números inteiros n, e
que todos en têm o mesmo sinal. Neste caso, en+1 = en para cada n  0. Assim, pn+2 = en+2 + p =
en+1 + p, ou p n+2 = ( pn+1– p) + p para cada n  0.

Substituindo nesta última equação (n+1) por n obtém-se pn+1 = ( pn – p) + p e resolvendo estas
duas últimas equações em ordem a p enquanto se elimina  obtém-se

p  (pn+2 pn – pn+12)/(pn+2 – 2pn+1 + pn)

= (pn2 + pn pn+2 + 2pn pn+1 – 2pn pn+1 – pn2 – pn+12)/( pn+2 – 2pn+1 + pn)

= [(pn2 – 2pn pn+1 + pn pn+2) – (pn2 – 2pn pn+1 + pn+12)]/( pn+2– 2pn+1 + pn)

p = p̂ n = pn – (pn+1 – pn)2/( pn+2 – 2pn+1 + pn)

Em geral, a suposição inicial en+1 = en não será verdadeira, porém, é suposto que a sequência (
p̂n ) com n = 0,...,, definida através de p̂n = pn – (pn+1 – pn)2/( pn+2 – 2pn+1 + pn), convirja mais
rapidamente para p do que a sequência original (pn) com n = 0,..,.

Esta técnica de construir uma sequência mais rapidamente convergente é chamada método 2 de
Aitken por causa da seguinte definição:

44
Definição 2.13: Dada uma sequência (pn) com n = 0,..,, define-se a diferença
progressiva: pn = pn+1 – pn para n  0. Potências maiores estão definidas
recursivamente através de kpn = k–1(pn) para k  2. Por causa da definição, tem-se:

2pn = (pn) = ( pn+1 – pn) =  pn+1 – pn

= (pn+2 – pn+1) – (pn+1 – pn) = pn+2 – 2 pn+1 + pn.

Assim, a fórmula de p̂ n pode ser expressa como p̂ n = pn – (pn)2/2pn para todos n  0.

Até este ponto da nossa discussão do método 2 de Aitken afirmamos que a sequência ( p̂ n ) com

n = 0,..., converge mais rapidamente para p do que a sua original (pn) com n = 0,..., mas não
dissemos exactamente o que significava “convergência mais rápida”. O teorema seguinte explica
e justifica esse conceito.

Teorema 2.14: Seja (pn) uma sequência linearmente convergente para o limite p e que
para todos os valores de n suficientemente grandes (pn – p)(pn+1 – p) > 0. Então a
sequência ( p̂ n ) com n = 0,..., converge para p mais rapidamente que (pn) com

n = 0,...,, no sentido em que limn ( p̂ n – p)/( pn – p) = 0.

O método 2 de Aitken acelera a convergência de qualquer sequência linearmente convergente


independentemente da origem da sequência. A aplicação do método 2 de Aitken à iteração do
ponto fixo dá origem ao procedimento conhecido por Método de Steffensen. (Algoritmo 2.6).

Note-se que 2pn pode ser igual a zero. Se tal acontece terminamos a sequência e seleccionamos
p2n-1 como a resposta aproximada, uma vez que de contrário entraria zero no denominador da
iteração seguinte.

Algoritmo 2.6 (Steffensen) : (Consulte Burden, p. 89)

Teorema 2.15: Suponhamos que x = g(x) tem a solução p com g’(p)  1. Se existe um
 > 0 tal que g  C3[ p– , p + ], então o método de Steffensen dá uma convergência
quadrática p0  [p – , p + ].

45
2.5. ZEROS DE POLINÓMIOS REAIS

Uma função da forma P(x) = anxn + an-1xn-1 + ... + a1x + a0, onde ai são constantes e an  0
chama-se polinómio de grau n. Todos os polinómios considerados nesta secção são supostos ser
reais, isto é, ai são números reais. A função zero, ou equação P(x) = 0 para todos os valores de x,
é considerada polinómio mas sem grau.

Teorema 2.16: (Teorema fundamental de Álgebra): Se P é um polinómio de grau n 


1, então P(x) = 0 tem pelo menos uma raiz (possivelmente complexa).

Corolário 2.17: Se P(x) = anxn + an-1xn-1 + ... + a1x + a0 é um polinómio de grau n  1,


então existem constantes únicas x1,x2,...,xk, (possivelmente complexas) e números
inteiros positivos m1, m2, ..., mk, tais que

k
 mi = n e P(x) = an(x – x1)m1(x – x2)m2...(x – xk)mk.
i 1

Se (x – xi)mi é um factor de P(x), xi é raiz de P(x) = 0 (ou zero de P) de multiplicidade mi. O


corolário afirma que os zeros de um polinómio são únicos e que cada zero xi é contado tantas
vezes quanto é a sua multiplicidade mi, então um polinómio de grau n tem exactamente n zeros.

Corolário 2.18: Sejam P e Q polinómios de grau não superior a n. Se x1, x2, ..., xk (k >
n) são números distintos com P(xi) = Q(xi) para i = 1, 2, ..., k, então P(x) = Q(x) para
todos os valores de x.

Para se usar o procedimento de Newton-Raphson na localização de zeros aproximados de um


polinómio P é necessário avaliar P e os seus valores específicos derivados. A avaliação de um
polinómio de grau n na raiz x = x0, dá (2n–1) multiplicações e n adições. O teorema seguinte
apresenta um algoritmo conhecido por método de Horner ou, na sua forma condensada, divisão
sintética. O método de Horner requer apenas n multiplicações e n adições para avaliar um
polinómio e consequentemente é mais eficiente em termos de tempo necessário e é suposto ser
melhor em termos de redução do efeito dos erros de aproximação.

Teorema 2.19 (Método de Horner): Seja P(x) = anxn + an-1xn-1 + ... + a1x + a0 e bn = an.
Se bk = ak + bk+1x0 para k = n – 1, n – 2, ..., 1, 0, então b0 = P(x0). Além disso, se

46
Q(x) = bnxn–1 + bn–1xn–2 + ... + b2x + b1, então

P(x) = (x – x0)Q(x) + b0.

Uma vantagem adicional do método de Horner (ou divisão sintética) é que, uma vez que P(x) =
(x – x0)Q(x) + b0, onde Q(x) = bnxn–1 + bn–1xn–2 + ... + b2x + b1, derivando em ordem a x dá

P’(x) = Q(x) + (x – x0)Q’(x) e P’(x) = Q(x0).

Portanto, quando o método de Newton-Raphson é usado para achar um zero aproximado de um


polinómio P, tanto P como P’ podem ser avaliados da mesma maneira. (Algoritmo 2.7).

O polinómio designado por Q depende da aproximação usada e das mudanças de iteração para
iteração.

Se a N-ésima iteração xN no procedimento de Newton-Raphson é um zero aproximado de P,


então P(x) = (x – xN)Q(x) + b0 = (x – xN)Q(x) + P(xN)  (x – xN)Q(x). Assim, x – xN é um factor
aproximado de P(x). Sendo x̂1 = xN um zero aproximado de P e Q1(x) o factor aproximado, P(x)

 (x – x̂1 )Q1(x), podemos encontrar um segundo zero aproximado de P aplicando o

procedimento de Newton-Raphson para Q1(x). Se P é um polinómio de grau n com n zeros reais,


este procedimento aplicado repetidamente irá eventualmente produzir (n–2) zeros aproximados
de P e uma aproximação quadrática do factor Qn–2(x). Neste passo, Qn–2(x) = 0 pode ser resolvido
pela fórmula resolvente para achar os dois últimos zeros de P. Embora este método possa ser
usado para se achar todos os zeros aproximados de P, o mesmo depende do uso repetitivo
aproximações e por isso pode conduzir a resultados muito incorrectos, à chamada deflação.
Apesar de este método ser útil para achar os zeros Uma forma de eliminar esta dificuldade
consiste em usar equações reduzidas, isto é, os factores aproximados no polinómio original P,
para achar as aproximações x̂1 , x̂ 2 , ..., x̂k , dos zeros de P e depois melhorar essas

aproximações aplicando o método de Newton-Raphson no polinómio inical P.

Foi visto que o sucesso do método de Newton dependia muitas vezes da obtenção de uma boa
aproximação inicial. Uma vez que os polinómios são contínuos para a recta real, um método
básico de achar uma aproximação de um zero de um polinómio é dado pelo teorema do valor
intermédio.

47
A ideia básica é avaliar P nos pontos xi com i = 1, 2, ..., k e j = i + 1. Se P(xi)P(xj) < 0, então P
tem um zero entre xi e xj. O problema torna-se numa simples questão de escolha de xi e x j
suficientemente pequenos, de maneira a minimizar a possibilidade de perder uma mudança de
sinal.

Um método de achar intervalos contendo zeros reais de P(x) é encontrar uma aproximação inicial
de uma raiz real de

0 = P(x) = anxn + an-1xn-1 + ... + a1x + a0, anotando y  ]0,1] precisamente quando 1/y  [1,[ e
y  [–1,0[ quando 1/y  ] –,–1]. Assim, P(1/y) = an(1/y)n + an–1(1/y)n–1 + ... + a1(1/y) + a0 =
1/yn(an + an–1y + ... + a1yn–1 + an).

Deste modo, se Pˆ ( y ) está definido por Pˆ ( y ) = a0yn + a1yn–1 + ... + an–1y + an, então ŷ  0 é um

zero de P̂ se e só se 1/ ŷ é um zero de P.

Para achar aproximações de todos os zeros de P, é suficiente conseguir os intervalos [–1, 0] e [0,

1], avaliando tanto P como P̂ para determinar as mudanças de sinal. Segundo o teorema do
valor intermédio, se P(xi) e P(xj) têm sinais contrários, então P tem zero entre xi e xj. (Se algum

P(xi) = 0, então já foi localizado um zero exacto de P.) Se P̂ (xi) e P̂ (xj) têm sinais contrários,

então P̂ tem um zero entre xi e xj e P tem um zero entre 1/xi e 1/xj. Nós consideramos os

intervalos [–1,0[ e ]0,1] separadamente para evitar confusão no caso em que P̂ (xi) e P̂ (xj) têm
sinais contrários para xi no intervalo [–1, 0[ e xj no intervalo ]0, 1] ou vice-versa.

Algoritmo 2.4 (Horner) : (Consulte Burden, p. 94)

Exercícios (2. 5):


1. Use cada um dos seguintes métodos para achar uma solução, exacta até 10 4 , para a equação
600 x 4  550 x 3  200 x 2  20 x  1  0 , para 0.1  x  1.
a) Método de bissecção; b) Método de Newton;
c) Método de secantes; d) Método de falsa posição.
2. Ache aproximações de todos os zeros reais dos seguintes polinómios, com uma exactidão de
até 10–4, usando método de Newton.
a) f ( x)  x 3  x  1 . b) f ( x)  x 4  2 x 2  x  3 .
c) f ( x)  x 3  3x 2  1 . d) f ( x)  x 5  x 4  2 x 3  3x 2  x  4 .
e) f ( x)  x 3  2 x 2  5 . f) f ( x)  x 3  4.001 x 2  4.002 x  1.101.

48
3. Ache aproximações de todos os zeros reais de cada um dos seguintes polinómios, com uma
exactidão de até 10–5:
a) P(x) = x 4  4 x 2  3x  5. b) P(x) = x4 + 5x3 – 9x2 – 85x – 136.
c) P(x) = x 3  7 x 2  14 x  6. d) P(x) = x4 – 2x3 – 12x2 + 16x – 40.
e) P(x) = x4 + x3 + 3x2 + 2x +2. f) P(x) = x5 + 11x4 – 21x3 – 10x2 – 21x – 5.
g) P(x) = x 4  2 x 3  4 x 2  4 x  4. h) P(x) = 16 x 4  88x 3  159 x 2  76 x  240 .
4. Use o método de Newton para achar os zeros e os pontos críticos das seguintes funções, com
uma exactidão de até 10–3 e use esta informação para fazer o esboço gráfico das funções.
a) P(x) = x 3  9 x 2  12.
b) P(x) = x 4  2 x 3  5 x 2  12 x  5.

2.6. Normas de vectores e de matrizes

Def. 2.20: Uma norma de vector em  é uma função  , de  em  , com as seguintes


n n

propriedades:

(i) ||X||  0 para qualquer X   n ;

(ii) ||X|| = 0 se e só se X = O;

(iii) ||X|| = ||||X|| para quaisquer    e X   n ;

(iv) ||X + Y||  ||X|| + ||Y|| para quaisquer X,Y   n .

Para o nosso curso vamos precisar de duas normas em  específicas, apenas, embora uma
n

terceira norma em  seja apresentada no exercício 2.


n

Uma vez que os vectores em  são matrizes coluna ou vectores (coluna), é conveniente usar a
n

notação de matriz transposta, quando o vector é apresentado através das suas componentes. Por

 x1 
x 
exemplo, X =   = x1 x2  xn  = (x1, x2, , xn)t.
2 t


 
 xn 

Def. 2.21: As normas l2 e l para o vector X = (x1, x2, , xn)t estão definidas como se segue:
n
x2 x
i 1
i
2
e x 
 max xi .
1i  n

49
A norma l2 é chamada norma euclidiana do vector X, uma vez que ela representa a anotação
usual da distância de X da origem, no caso de X estar em    ,  ou  . Exemplo: X =
1 2 3

 1,1,2 .
t
x2= 6 e x 
= 2.

Teor. 2.22 (de Cauchy-Buniakowsky-Schwarz): Para cada X = (x1, x2, , xn)t e Y = (y1, y2, ,

xi yi    xi   yi2   x  y .
 2 
n n n
yn)t em  , XtY =
n

i 1  i 1  i 1 

Uma vez que a norma de um vector dá uma medida da distância entre um vector arbitrário e o
vector zero, a distância entre dois vectores é definida como a norma da diferença dos vectores.

Def. 2.23: Se X = (x1, x2, , xn)t e Y = (y1, y2, , yn)t são vectores em  , as distâncias l2 e l
n

n
entre X e Y são definidas como x y 2  (x i 1
i
 yi ) 2 e x  y 
 max xi  yi .
1i  n

Exemplo: O seguinte sistema de equações lineares

 3,3330 x1  15920 x2  10,333x3  15913



2,2220 x1  16,710 x2  9,6120 x3  28,544 tem como solução x1 , x2 , x3   1,1,1 . Se
t t

1,5611x  5,17910 x  1,6852 x  8,4254


 1 2 3

se aplicarem as eliminações de Gauss com aproximações a cinco dígitos usando a pivotização da

maior coluna, a solução obtida é X  ~ x2   1.2001, 0.999991, 0.92538 . Assim,


~
x1 , ~
x2 , ~
t t

~ ~ ~
as medidas de X  X são dadas por X  X = ... = 0.2001 e por X  X = = ... =
 2

0.21356.

Def. 2.24: A sequência X  k 



k 1 de vectores em  diz-se convergente para X relativamente à
n

k 
norma  , se, dado qualquer  > 0, existe um número inteiro N() tal que X  X   , para
todos k  N().

Teor. 2.25: A sequência X  k 




k 1 converge para X em  relativamente à norma  , se e só se
n

lim
k 
xi k   xi , para todos i = 1, 2, 3, ..., n. Exemplo: Seja X k   4 definida por

50
t
 
X k 
 x1 , x2 , x3 , x4
k  k  k  k 

t 1 3
 1, 2  , 2 , e k sin k  . Assim, a sequência X   
k 
k 1
 k k 
converge para (1,2,0,0)t, relativamente a   .

Teor. 2.26: Para qualquer X  , x  x 2  n x .


n

Def. 2.27: Uma norma de matriz no conjunto de todas as matrizes de ordem n é uma função
real  , definida neste conjunto, com as seguintes propriedades para todas as matrizes A e B de

ordem n e para todos os escalares :

(i) A  0;

(ii) A  0 , se e só se A = O (matriz nula, isto, é, cujos elementos são todos nulos);

(iii) A    A ;

(iv) A  B  A  B ;

(v) AB  A  B .

A distância entre duas matrizes A e B de ordem n, relativamente a esta norma é definida como
A B .

Teor. 2.28: Se  é uma norma de vector em  , então A  max AX é uma norma de


n
X 1

matriz.

Esta chama-se norma de matriz natural ou induzida, associada à norma de vector.

Cor. 2.29: Para quaisquer vector Z  O, matriz A e norma natural  , tem-se AZ  A  Z .

n
Teor. 2.30: Se A = (aij) é uma matriz de ordem nn, então A  max  aij .
1i  n
j 1

51
Exercícios (2.6):

1. Ache || X ||, || X ||2 e || X ||1 para os seguintes vectores:

a) X = (3, –4, 0, 3/2)t;

b) X = (2, 1, –3, 4)t;

c) X = (seno k, cos k, 2k)t, para um k positivo, inteiro e fixo;

d) X = (3, –4, 0, 3/2)t, para um k positivo, inteiro e fixo.

2.
n
a) Verifique que a função  1 definida em  por X
n
1
  X i é uma norma em  n .
i 1

b) Calcule X 1
dos vectores do exercício anterior.

c) Mostre que para qualquer Xn, X 1


 X 2
.

3. Ache os limites das seguintes sequências:


1k
a) X(k) = ( 1 k , e , 2 k 2 ) t ;

k
b) X(k) = (e cos k , k sin 1 k ,3  k 2 ) t ;

k 2 (cos k )
c) X(k) = (ke , k , k 2  k  k )t ;
1 2
1)
d) X(k) = (e k , ( k (1k 2 )
, ( 1 k 2 )(1  3  5  ...  (2k  1)))t .

4. Calcule |||| das seguintes matrizes:

 2 1 0   4  1 7

c)  1 2  1
 
d)  1 4 0

10 15 10 0    
a)   b)    0  1 2   7 0 4
0 1 15 1

52
~
5. Os seguintes sistemas de equações lineares AX = b têm X como solução exacta e X como
~ ~
uma aproximação dessa solução. Calcule || X – X || e ||A X – b||.

 12 1
3
 x1   164  1 2 3  x1   1 
a)        
1  x  b) 2 3 4 x2   1
 1
3 4  2   1168     
3 4 6  x3   2 
X = (1/7, –1/6)
~ ~
X = (0, –7,5)t X =(–0.33, –7.9,5.8)t
X =(0.124, –0.166)

1 2 3  x1   1  0.04 0.01 0.01  x1  0.06


    
c) 2 3 4 x2   1

d) 0.2 0.5 0.2   x2    0.3 
         
3 4 6  x3   2   1 2 4   x3   11 
~ ~
X = (0, –7,5)t X =(–0.2, –7.5,5.4)t X = (1.827586,0.6551724,1.965517)t X
=(1.8,0.64,1.9)t

6. A norma de matriz  1 , definida por ||A||1 = max || AX ||1 , pode ser calculada através da
x 1 1

n
fórmula ||A||1 = max  aij , onde  1 é a norma de vector definida no exercício 2. Calcule
1 j  n i 1

 1 para todas as matrizes do exercício 4.

2.7. Valores e Vectores próprios

Def. 2.31: Se A é uma matriz quadrada de grau n, o polinómio característico de A é definido por
P() = det(A – I).

Não é difícil mostrar que P() é um polinómio de grau n e que, consequente, tem no máximo n
zeros diferentes.

Def. 2.32: Se P é o polinómio característico da matriz A, os zeros de P são valores próprios ou


característicos da matriz A. Se  é um valor próprio de A e X  O satisfaz a igualdade (A –

53
I)X = O, então X é um vector próprio ou característico de A, correspondente ao valor próprio

1 0 2
.

Exemplo: A = 0 1  1

 
 1 1 1 

Def. 2.33: O raio de espectro (A) de uma matriz A está definido como (A) = max||, onde 
é um valor próprio de A.

Teor. 2.34: Se A é uma matriz de ordem n, então

(i) A 2   ( At A) ;

(ii) (A)  ||A||, para qualquer norma natural  .

 1 1 0

Exemplo: A = 1 2 1

 
 1 1 2

Def. 2.35: Uma matriz A de ordem n diz-se convergente se lim ( A ) ij  0 , para quaisquer i =
k
k 

 12 0
1, 2, ..., n e j = 1, 2, ..., n. Exemplo: A = 
1
é uma matriz convergente.
4 2
1

Teor. 2.36: As seguintes proposições são equivalentes:

(i) A é uma matriz convergente.

(ii) lim An  0 , para qualquer norma natural.


n 

(iii) lim An  0 , para todas as normas naturais.


n 

(iv) (A) < 1.

(v) lim An X  O , para qualquer X.


n 

54
Exercícios (2.7):

1. Calcule os valores próprios e os respectivos vectores próprios associados das seguintes


matrizes e ache o raio de espectro para cada uma:

 2  1 0 1 0 12  1 1 
a)   b)   c)   d)  
 1 2  1 1   2  2
1
 2 0

 2 1 0  1 2 0 2 2 1  3 2  1

e) 1 2 0
 
f) 0 3 4
 
g) 2 3 2
 
h) 1  2 3

       
0 0 3  0 0 7  1 1 2 2 0 4 

Quais das matrizes deste exercício são convergentes?

1 0   12 0
2. Mostre que  1 1  não é convergente, mas que  1
o é.
4 2 16 2 

3. Ache ||||2 para as matrizes do exercício 1.

0 0 0 
 
4. Determine os valores próprios de  12 0 0 .
0 13 0

2.8. Técnicas Iterativas de Resolução de Sistemas de Equações

 Método iterativo de Jacobi: AX = b  (D – L – U)X = b  DX = (L + U)X + b 


k 
X = D (L  U ) X  D b  X
1 1
 T j X k 1  C j .

Algoritmo 4.1 (Método iterativo de Jacobi) : (Consulte Burden, p. 440)

 Método iterativo (técnica iterativa) de Gauss-Seidel: AX = b  (D – L – U)X = b

 (D – L)X = UX + b  X = ( D  L) 1UX  ( D  L) 1 b 
X k   Tg X k 1  C g .

Algoritmo 4.2 (Método iterativo de Gauss-Seidel) : (Consulte Burden, p. 442)

55
 Método SOR: AX = b  (D – L – U)X = b  (D – L)X(k) = [(1 – )D + U ]X(k–1)

+ b. Com T = ( D  L) [(1   ) D  U ] e C =


1
 ( D  L) 1 b tem-se
X(k) = T X(k–1) + C.

Algoritmo 4.3 (Método SOR) : (Consulte Burden, p. 450)

Teor. 2.37: Para alguns X(0)n, a sequência X  k 




k 0 definida por X(k) = TX(k-1) + c, para cada

k  1, converge para a única solução de X = TX + c, se e só se (T) < 1.

Teor. 2.38: Se A é estrita e diagonalmente dominante, então para qualquer escolha de X(0), tanto

o método de Jacobi quanto o de Gauss-Seidel geram sequências X  k 




k 0 que convergem para a
única solução de AX = b.
~
Def. 2.39: Suponhamos que X   é uma aproximação da solução do sistema de equações
n

~ ~
definido por AX = b. O vector residual para X relativo a este sistema é r = b – A X .

Nos métodos iterativos de Jacobi e de Gauss-Seidel tratados anteriormente, a cada iteração i está
k 
ligado um vector residual ri  (r1i k  , r2ik  ,, rmik  ) t . Assim, por sua vez os vectores residuais
formam uma sequência de cujo grau de convergência para zero depende a rapidez de
convergência do método e vector inicial escolhidos, para a solução do sistema, gerando uma
nova alternativa de resolução iterativa de sistemas de equações lineares. Em especial, do método

k  rii k 
de Gauss-Seidel deduz-se a fórmula X i  X i k 1   , que, para além das grandezas
aii
conhecidas introduz a constante  > 0.

Os métodos que envolvem esta fórmula são conhecidos como métodos de relaxamento. Para
escolhas de  < 1, os métodos designam-se métodos de sub-relaxamento e podem ser usados
para se obter convergência de alguns sistemas que não são convergentes pelo método de Gauss-
Seidel. Para escolhas de  > 1, os métodos designam-se métodos de sob-relaxamento, que são
usados para acelerar a convergência de alguns sistemas que são (lentamente) convergentes pelo
método de Gauss-Seidel. Estes últimos são mais conhecidos como métodos SOR (successive
over-relaxation) e serão de grande utilidade para o nosso curso, através da fórmula
X(k) = T X(k–1) + C que foi deduzida e desenvolvida no início desta secção.

56
Teor. 2.40 (Ostrowski-Reich): Se A é uma matriz definida positivamente, e  < 2, então o
método SOR converge para qualquer escolha do vector inicial de aproximação X(0).

Teor. 2.41: Se A é uma matriz tridiagonal e definida positivamente, então a escolha óptima de 
2
 (T )    1. Ex.: A = 
4 3 0
para o método SOR é  , com a qual .
1  1  [  (T j )]
2 3 4  1
 
0  1 4 

Exercícios (4.3)

1. Dos seguintes sistemas de equações lineares, processe as duas primeiras iterações, pelo
método de Jacobi e depois pelo método de Gauss-Seidel, para a aproximação das respectivas
soluções, usando X(0) = O.

3  1 1  x1  1 10  1 0   x1  9


a) 3 6 2  x 2   0 b)  1 10  2  x 2   7
3 3 7  x3  4  0  2 10   x3  6

10 5 0 0   x1   6   4 1  1 1   x1   2
 5 10  4 0   x   25  1 4  1  1  x 2    1
c)   2    d)  
 0  4 8  1  x3   11  1  1 5 1   x3   0 
         
 0 0  1 5   x 4   11  1 1 1 3   x4   1 

4 1 1 0 1   x1  6
 1  3 1 1
 0   x 2  6
e)  2 1 5  1  1  x3   6
    
  1  1  1 4 0   x 4  6 
 0 2 1 1 4   x5  6

 4  1 0  1 0 0   x1   0 
 1 4  1 0  1 0   x   5 
  2  
 0  1 4 0 0  1  x3   0 
f)      
 1 0 0 4  1 0   x4   6 
 0  1 0  1 4  1  x5   2
    
 0 0  1 0  1 4   x6   6 

57
2. Resolva os sistemas usando os métodos iterativos de Jacobi e de Gauss-Seidel, com  = 10–3
a norma l.
3. Processe as duas primeiras iterações pelo método SOR, com  = 1.1,  = 1.2 e  = 1.3,
usando X(0) = O e cinco iteracções.
4. Repita o exercício anterior apenas com as matrizes definidas positivamente, usando a escolha
óptima de .

3. APROXIMAÇÃO POR INTERPOLAÇÃO POLINOMIAL


Exemplo: Em cada 10 anos é feito um recenseamento da população dos EUA. A tabela
seguinte fornece a população, em milhares de habitantes, desde 1940 até 1990.

Ano 1940 1950 1960 1970 1980 1990


População (em milhares) 132.165 151.326 179.323 203.302 226.542 249.633
Revendo estes dados, podemos querer saber se podem ser usados para fornecer uma
estimativa da população, digamos, em 1965 ou mesmo em 2010. Previsões deste tipo podem
ser feitas usando uma função que encaixa os dados disponibilizados. Este processo chama-
se interpolação e é o assunto deste capítulo. Este problema da população é estudado ao
longo deste capítulo e nos exercícios 24 da secção 3.1, 14 da secção 3.2 e 24 da secção 3.4.

Uma das classes de funções mais úteis e melhor conhecidas que encaixam o conjunto de
números reais em si mesmo é a classe dos polinómios algébricos, o conjunto de funções do tipo

Pn ( x)  an x n  an1 x n1    a1 x  a0 ,

Onde n é um inteiro não negativo e a0 ,, an são constantes reais.Uma razão para a sua

importância é devida ao facto de aproximarem funções contínuas uniformemente. Dada uma


função qualquer, definida e contínua num intervalo fechado e limitado, sempre existe um
polinómio que é tão próximo da função como se se quiser, tal como vem expresso no seguinte
teorema. (Figura)

Teorema 3.1 (Teorema de aproximação de Weierstrass): Suponhamos que f seja definida e


contínua num intervalo [a , b]. Para qualquer  > 0, existe um polinómio P(x) que satisfaz a
condição

58
f ( x)  P( x)   , para qualquer x em [a , b].

A prova para este teorema pode ser encontrada em textos mais elementares da análise real (veja-
se, por exemplo, [Bart, pp. 165-172]).

Ountra razão importante de considerar a classe dos polinómios na aproximação de funções é que
as derivadas e o integral indefinido de um polinómio são fáceis de calcular e são também
polinómios. Por estas razões, os polinómios são usados com maior frequência para aproximar
funções contínuas.

Os polinímios de Taylor que foram introduzidos na primeira secção deste material são um
exemplo disso, embora não sejam os mais usados pelo facto de servirem para aproximar uma
função com exactidão relativa a um ponto apenas. Um bom polinómio de interpolação precisa de
fornecer uma aproximação relativamente exacta em todo o intervalo e polinómios de Taylor
geralmente não fazem isso. Por exemplo, suponhamos que determinamos os seis primeiros
polinómios de Taylor para f ( x)  e x , em x0  0 . Como as derivadas de f (x) são todas e x ,

cujo valor para x0  0 dá 1, os polinómios de Taylor são P0 ( x)  1 , P1 ( x)  1  x ,

1 2 1 2 1 3 1 2 1 3 1 4
P2 ( x)  1  x  x , P3 ( x)  1  x  x  x , P4 ( x)  1  x  x  x  x e
2 2 6 2 6 24
1 2 1 3 1 4 1 5
P5 ( x)  1  x  x  x  x  x . (Figura)
2 6 24 120

Embora aproximações melhores sejam obtidas para f ( x)  e x com polinómios de Taylor de


maior grau, isto não acontece com todas as funções. Consideremos, como exemplo extremo, o
1
uso de polinómios de Taylor de vários graus para f ( x)  em x0  1 , para aproximar
x
1
f (3)  . Uma vez que f ( x)  x 1 , f ( x)   x 1 , f ( x)  (1) 2 2 x 3 e, em geral,
3
f ( k ) ( x)  (1) k k! x  k 1 , os polinómios de Taylor são

n
f ( k ) (1) n
Pn ( x)   ( x  1) k   (1) k ( x  1) k .
k 0 k! k 0

59
1
Para aproximar f (3)  através de Pn (3) para valores crescentes de n obtém-se os valores
3
tabelados a seguir, que são um erro dramático!

Tabela 3.1

n 0 1 2 3 4 5 6 7
Pn (3) 1 -1 3 -5 11 -21 43 -85

Uma vez que os polinómios de Taylor têm a propriedade de concentrar toda informação usada
num único ponto x 0 , o tipo de dificuldades que ocorre neste exemplo é comum e limita a
aproximação pelo polinómio de Taylor a situações em que são necessárias só nos pontos
próximos de x 0 . Para objectivos de cálculo mais comuns é mais eficiente o uso de métodos que
incluem informações de vários pontos, que passamos a ver no restante deste capítulo. O uso
primário de polinómios de Taylor na análise numérica não é de fazer aproximações, mas sim, a
dedução de técnicas numéricas e estimativa de erros.

3.1. Polinómio Interpolador de Lagrange

Nesta secção encontramos polinómios de aproximação que são determinados apenas com a
especificação de certos pontos do plano onde devem passar.

O problema de determinar um polinómio de primeiro grau, que passa pelos pontos distintos
( x0 , y0 ) e ( x1 , y1 ) é o mesmo que aproximar uma função f para a qual f ( x0 )  y0 e

f ( x1 )  y1 , através de um polinomio de primeiro grau interpolando, ou concordando com, os


x  x1
valores de f nos pontos dados. Em primeiro definimos as funções L0 ( x)  e
x0  x1

x  x0
L1 ( x)  e depois definimos
x1  x0

P( x)  L0 ( x) f ( x0 )  L1 ( x) f ( x1 ).

Uma vez que L0 ( x0 )  0 , L0 ( x1 )  0 , L1 ( x0 )  0 e L1 ( x1 )  1 , temos

P( x0 )  1  f ( x0 )  0  f ( x1 )  f ( x0 )  y0

60
e

P( x1 )  0  f ( x0 )  1  f ( x1 )  f ( x1 )  y1

Assim, P é a única função linear que passa por ( x0 , y0 ) e ( x1 , y1 ) . (Figura)

Para generalizar o conceito de interpolação linear, consideremos a criação de um polinómio de


grau n, no máximo, que passa por n + 1 pontos.

 x0 , f ( x0 )  , x1 , f ( x1 ) , ..., xn , f ( xn ) . (Figura)

Neste caso precisamos de criar para cada k = 0, 1, ..., n, uma função Ln,k ( x) , com a propriedade

de Ln,k ( xi )  0 quando i  k e Ln,k ( xk )  1 . Para Ln,k ( x) satisfazer Ln,k ( xi )  0 para cada i  k

requer que o numerador contenha o termo

( x  x0 )( x  x1 )( x  xk 1 )( x  xk 1 )( x  xn ) .

Para Ln,k ( x) satisfazer Ln,k ( xk )  1 , o denominador deve ser igual a este termo calculado para

x  xk . Assim,

( x  x0 )( x  x1 ) ( x  xk 1 )( x  xk 1 ) ( x  xn )
Ln,k ( x)  .(Figura)
( xk  x0 )( xk  x1 ) ( xk  xk 1 )( xk  xk 1 ) ( xk  xn )

O polinómio interpolador é facilmente descrito, uma vez conhecido Ln,k ( x) . Este polinómio,

chamado o n-ésimo polinómio interpolador de Lagrange é definido no seguinte teorema.

Teorema 3.2: Se x0 , x1 ,  , xn são n+1 números distintos e f é uma função cujos valores são

dados nesses números, então existe um único polinómio P(x) de grau n, no máximo, tal que

f ( xk )  P( xk ) , para qualquer k = 0, 1, ..., n.

Este polinómio é dado pela fórmula


n
P( x)  f ( x0 ) Ln,0 ( x)  f ( x1 ) Ln,1 ( x)    f ( xn ) Ln,n ( x)   f ( xk ) Ln,k ( x) (3.1)
k 0
,
Onde, para cada k = 0, 1, ..., n,

61
( x  x0 )( x  x1 ) ( x  xk 1 )( x  xk 1 ) ( x  xn ) n
( x  xi )
Ln,k ( x)   (3.2
( xk  x0 )( xk  x1 ) ( xk  xk 1 )( xk  xk 1 ) ( x k  xn ) i 0 ( xk  xi )
ik )
.
Vamos simplificar a escrita de Ln,k ( x) para Lk (x) , quando não haja confusão com o seu grau.

Exemplo 1: Usando os números (ou pontos) x0 = 2, x1 = 2,5 e x2 = 4, encontrar o polinómio


1
interpolador de segundo grau para f(x) = requer que determinemos os polinómios dos
x
coeficientes L0(x), L1(x) e L2(x). Na forma sequenciada eles são
( x  2,5)( x  4) ( x  2)( x  4) x(4 x  24)  32
L0 ( x)   x( x  6,5)  10 , L1 ( x)   e
(2  2,5)(2  4) (2,5  2)(2,5  4) 3
( x  2)( x  2,5) x( x  4,5)  5
L2 ( x)   .
(4  2)(4  2,5) 3
Uma vez que f(x0) = f(2) = 0,5, f(x1) = f(2,5) = 0,4 e f(x2) = f(4) = 0,25, temos
2
P( x)   f ( x k ) Lk ( x)
k 0
x(4 x  24)  32 x( x  4,5)  5
P( x)  0,5x( x  6,5)  10  0,4   0,25 
3 3
P( x)  x(0,05x  0,425)  1,15 .
1
Uma aproximação de f(3) =  P(3) = 0,325. (figura)
3
Compare isto com a tabela 3.1, onde nenhum polinómio de Taylor desenvolvido para x0  1
1
podia ser usado para aproximar razoavelmente f(3) = .
3
Teorema 3.3: Suponhamos que x0 , x1 , ... , xn são números distintos no intervalo [a , b] e
f  C n1 a , b . Então, para qualquer x  [a , b], existe um número (x) em ]a , b[, tal que
f ( n 1)  ( x) 
f ( x)  P( x)  ( x  x0 )( x  x1 ) ( x  xn ) ,
(n  1)!
Onde P(x) é o polinómio interpolador dado no teorema 3.2.
Prova: Note primeiro que se x  xk , para qualquer k = 0, 1, ..., n, então escolhendo no intervalo
]a , b[  ( xk ) arbitrariamente obtém-se esta fórmula. Se x  xk , para qualquer k = 0, 1,
..., n, define-se a função g de t em [a , b], através da fórmula
(t  x0 )(t  x1 ) (t  xn ) n
t  xi
g (t )  f (t )  P(t )   f (t )  P(t )   f (t )  P(t )   f (t )  P(t )   .
( x  x0 )( x  x1 ) ( x  xn ) t  0 x  xi

Uma vez que f  C n1 a , b e P  C  a , b , resulta que g  C n1 a , b . Para t  xk , tem-se


n
x  xi
g ( x k )  f ( x k )  P ( x k )   f ( x k )  P( x k )   k  0   f ( x)  P( x)  0  0 .
t 0 x  xi

Além disso,

62
n
x  xi
g ( x)  f ( x )  P ( x )   f ( x)  P( x )    f ( x)  P( x)   f ( x)  P( x)  0 .
t 0 x  xi

Assim, g  C n1 a , b e g é igual a zero em n+2 números distintos x , x0 , x1 , ... , xn . Pelo

Teorema generalizado de Rolle, existe um número (x) em ]a , b[ para o qual g ( n1)  ( x)   0 .

Por fim, ...

Exemplo 2: Suponha que uma tabela deve ser preparada para a função f(x) = e x , para x  0 , 1 .

Vamos supor que o número de casas decimais para cada aproximação seja d  8 e que a
diferença entre valores adjacentes de x é h. Qual deve ser o valor de h para que a interpolação
linear (isto é, o polinómio de Lagrange de grau 1) produza um erro absoluto máximo de 10 6 ?

Sejam x0 , x1 , ... os números em que f é calculada, seja x  0 , 1 e suponhamos que j satisfaz a

relação x j  x  x j 1 . Da fórmula do Teorema 3.3 resulta que o erro na interpolação linear é

f ( 2)  ( x)  f ( 2)  ( x) 
f ( x)  P( x)   ( x  x j )( x  x j 1 )   x  x j  x  x j 1 .
2! 2

Uma vez que a diferença é h, daqui resulta que x j  jh , x j 1  ( j  1)h e

f ( 2)  ( x) 
f ( x)  P( x)   x  jh x  ( j  1)h  .
2

Desta maneira,

max e  max x  jh x  ( j  1)h   e  max x  jh x  ( j  1)h  .


1 1
f ( x)  P( x) 
2  0 , 1 x j  x  x j 1 2 x j  x x j 1

Considerando g ( x)  x  jh x  ( j  1)h, para jh  x  ( j  1)h , e usando o Teorema do Valor


Extremo, encontramos que

h2
max x  jh x  ( j  1)h  x max g ( x)  g ( j  12 )h   .
x j  x  x j 1  x x
j j 1 4

Consequentemente, o erro na interpolação linear está limitado por

eh 2
f ( x)  P( x) 
8

63
e é suficiente para h ser escolhido de maneira que

eh 2
 10 6 , o que implica que h  1,72  10 3 .
8

1 0
Uma vez que n  deve ser um inteiro, uma escolha lógica para o tamanho da diferença é
h
h = 0,001.

O exemplo seguinte ilustra uma interpolação para uma situação em que a porção do erro da
fórmula do Teorema 3.3 não pode ser utilizada.

Exemplo 3: a tabela 3.2 lista valores de uma função em vários pontos. As aproximações de f(1,5)
obtidas por vários polinómios de Lagrange serão comparados.

Tabela 3.2
x 1,0 1,3 1,6 1,9 2,2
f(x) 0,7651977 0,6200860 0,4554022 0,2818186 0,1103623
Uma vez que 1,5 está entre 1,3 e 1,6, o polinómio linear mais apropriado usa x0  1,3 e x1  1,6 .

O valordo polinómio interpolador em 1,5 é

1,5  1,6 1,5  1,3


P1 (1,5)   0,6200860   0,4554022  0,5102968 .
1,3  1,6 1,6  1,3

Dois polinómios de grau 2 podem ser razoavelmente usados, um com os pontos de x0  1,3 ,
(1,5  1,6)(1,5  1,9)
x1  1,6 e x2  1,9 , que dá P2 (1,5)   0,6200860 
(1,3  1,6)(1,3  1,9)

(1,5  1,3)(1,5  1,9) (1,5  1,3)(1,5  1,6)


  0,4554022   0,2818186  0,5112857
(1,6  1,3)(1,6  1,9) (1,9  1,3)(1,9  1,6)

e outro com os pontos de x0  1,0 , x1  1,3 e x2  1,6 , que dá Pˆ2 (1,5)  0,5124715 .

No caso do grau 3 há também 2 escolhas razoáveis para o polinómio. Uma é com os pontos de
x0  1,3 , x1  1,6 , x2  1,9 e x3  2,2 , que dá P3 (1,5)  0,5118302 . Ountra é com os pontos de

x0  1,0 , x1  1,3 , x2  1,6 e x3  1,9 , que dá Pˆ3 (1,5)  0,5118127 .

O polinómio de Lagrange do 4º grau usa todos os pontos da tabela e produz P4 (1,5)  0,5118200
como aproximação.

64
Uma vez que todos os resultados P3 (1,5) , Pˆ3 (1,5) e P4 (1,5) concordam em 4 unidades decimais,

isto é, em 2  10 5 , esperamos este grau de exactidão para esta aproximação. Também esperamos
que P4 (1,5) seja a melhor aproximação, uma vez que ela usa o maior número dos dados.

A função que estamos aproximando é a função de Bessel do primeiro tipo de ordem zero, cujo
valor em 1,5 é conhecido como sendo 0,5118277. Portanto, as verdadeiras exactidões das
aproximações são as seguintes:

P1 (1,5)  f (1,5)  1,53  10 3 ,

P2 (1,5)  f (1,5)  5,42  10 4 ,

Pˆ2 (1,5)  f (1,5)  6,44  10 4 ,

P3 (1,5)  f (1,5)  2,50  10 6 ,

Pˆ3 (1,5)  f (1,5)  1,50  10 5 ,

P4 (1,5)  f (1,5)  7,70  10 6 .

Embora P3 (1,5) seja a aproximação mais exacta, se não tivessemos conhecimento do valor

exacto de f(1,5) iriamos aceitar P4 (1,5) como sendo a melhor aproximação por incluir o maior
número de pontos da função. O termo de erro de Lagrange deduzido no Teorema 3.3 não pode
ser aplicado neste caso, por não se conhecer a quarta derivada de f, infelizmente. 

Uma dificuldade prática da interpolação de Lagrange é que, uma vez que o termo do erro é difícil
de aplicar, o grau do polinómio necessário para a exactidão desejada geralmente é desconhecido,
até que os cálculos já tenham terminado. A prática usual é calcular os resultados produzidos
pelos vários polinómios até que o acordo adequado seja obtido, como foi feito no exemplo
anterior. Porém, o trabalho feito nos cálculos da aproximação pelo segundo polinómio não
diminui o trabalho necessário para calcular a terceira aproximação, tão pouco a quarta
aproximação é mais fácil de se obter depois que a terceira é conhecida, e assim por diante.
Vamos agora deduzir esses polinómios de aproximação de uma maneira que usa os cálculos
anteriores de forma vantajosa.

65
Definição 3.4: Seja f uma função definida em x0 , x1 , x2 , , xn e suponhamos que

m1 , m2 , , mk são k inteiros distintos, com 0  mi  n para qualquer i. O polinómio de

Lagrange que coincide com f(x) nos k pontos de xm1 , xm2 , , xmk denota-se Pm1 , m2 ,, mk ( x) . 

Exemplo 4: Se x0  1 , x1  2 , x2  3 , x3  4 e x4  6 , com f ( x)  e x , então P1, 2, 4 ( x) é o

polinómio que coincide com f(x) em x1  2 , x2  3 e x4  6 , isto é,

( x  3)( x  6) 2 ( x  1)( x  6) 3 ( x  2)( x  3) 6


P1, 2, 4 ( x)  e  e  e . 
(2  3)(2  6) (3  2)(3  6) (6  2)(6  3)

O resultado seguinte descreve um método de geração recursiva de aproximações por polinómios


de Lagrange.

Teorema 3.5: Seja f uma função definida nos pontos de x0 , x1 , x2 , , xk e sejam xj e xi dois

números distintos deste conjunto. Então,

( x  x j ) P0 ,1,, j 1, j 1,, k ( x)  ( x  xi ) P0 ,1, , i 1, i 1, , k ( x)


P( x)  (3.4)
xi  x j

descreve o polinómio de Lagrange de ordem k, que interpola f nos k+1 pontos de


x0 , x1 , x2 , , xk . 

Prova (...) 

Do teorema 3.5 resulta que os polinómios interpoladores podem ser gerados recursivamente. Por
exemplo, eles podem ser gerados da maneira mostrada na tabela 3.3, onde cada linha é
completada antes da seguinte começar.

Tabela 3.3
x0 P0  Q0 , 0
x1 P1  Q1, 0 P0 ,1  Q1,1
x2 P2  Q2 , 0 P1, 2  Q2 ,1 P0 ,1, 2  Q2 , 2
x3 P3  Q3 , 0 P2 , 3  Q3 ,1 P1, 2 , 3  Q3 , 2 P0 ,1, 2 , 3  Q3 , 3
x4 P4  Q4 , 0 P3 , 4  Q4 ,1 P2 , 3 , 4  Q4 , 2 P1, 2 , 3 , 4  Q4 , 3 P0 ,1, 2 , 3 , 4  Q4 , 4

Este procedimento chama-se método de Neville. A notação P usada na tabela 3.3 é pesada por
causa do número de índices usados para representar os valores. Note, entretanto, que enquanto se

66
constrói essa listagem toda, apenas dois índices são necessários. Continuando a tabela para
baixo, isso corresponde ao uso de pontos consecutivos xi com valores de i cada vez maiores e
continuando para direita isso corresponde ao incremento de grau do polinómio interpolador.
Uma vez que os pontos aparecem consecutivamente em cada valor, precisamos de descrever
apenas o ponto de partida e o número de pontos adicionaisusados para construir a aproximação.

Para evitar a multiplicidade dos índices, usa-se Qi,j(x), com 0  j  i, para denotar o polinómio
interpolador de grau j nos j+1 números xi  j , xi  j 1 , , xi 1 , xi , isto é, Qi , j  Pi  j , i  j 1,, i 1, i .

Usando esta notação para o método de Neville resultam as notações de Q contantes na tabela 3.3.

Exemplo 5: Valores de diferentes polinómios interpoladores em x = 1,5 foram gerados no


exemplo 3 usando-se dados mostardos nas duas primeiras colunas da tabela 3.4. Neste exemplo,
aproximamos f(1,5) usando o resultado do Teorema 3.5. Se x0  1,0 , x1  0,3 , x 2  1,6 , x3  1,9 e

x4  2,2 , então Q0 , 0  f (1,0) , Q1, 0  f (1,3) , Q2 , 0  f (1,6) , Q3 , 0  f (1,9) e Q4 , 0  f (2,2) .

Estes são os cinco polinómios de grau zero (constantes) que aproximam f(1,5).

Calculando-se a aproximação do primeiro grau obtém-se

( x  x0 )Q1, 0  ( x  x1 )Q0 , 0 (1,5  1,0)Q1, 0  (1,5  1,3)Q0 , 0


Q1,1 (1,5)   
x1  x0 1,3  1,0
0,5(0,6200860)  0,2(0,7651977)
  0,5233449 .
0,3

Analogamente, Q2 , 1 (1,5)  (1,5  1,3)(0,4554022)  (1,5  1,6)(0,600860)  0,5102968 , Q3 , 1 (1,5)  0,5132634 e


1,6  1,3

Q4 , 1 (1,5)  0,5104270 .

Espera-se que a melhor aproximação linear seja Q2 , 1 (1,5)  0,5102968 , uma vez que 1,5 está entre

x1  0,3 e x 2  1,6 .

De forma semelhante, aproximações usando polinómios de graus mais elevados são dadas por

(1,5  1,0)(0,5102968)  (1,5  1,6)(0,5233449)


Q2 , 2 (1,5)   0,5124715 , Q3 , 2 (1,5)  0,5112857 e
1,6  1,0

Q4 , 2 (1,5)  0,5137361 .

67
Aproximações de maior grau são geradas de maneira similar e são mostradas na tabela 3.4 a
seguir. 
Tabela 3.4
1,0 0,7651977
1,3 0,6200860 0,5233449
1,6 0,4554022 0,5102968 0,5124715
1,9 0,2818186 0,5132634 0,5112857 0,5118127
2,2 0,1103623 0,5104270 0,5137361 0,5118302 0,5118200
2,5 -0,0483838 0,4807699 0,5301984 0,5119070 0,5118430 0,5118277
Se a última aproximação, Q4 , 4 (1,5)  0,5118200 não suficientemente correcta, pode ser escolhido

um outro ponto x5 e acrescentada uma nova linha à tabela.

x5 Q5 , 0 Q5 , 0 Q5 , 0 Q5 , 0 Q5 , 0 Q5 , 0 .

Então, Q4 , 4 , Q5 , 4 e Q5 , 5 podem ser comparados para determinar a exactidão seguinte.

No nosso exemplo, a função é a de Bessel de primeiro tipo de grau zero, cujo valor em 2,5 é
-0,0483838, e a nova linha de aproximações de f(1,5) é

2,5 -00483838 0,4807699 0,5301984 0,5119070 0,5118430 0,5118277.

O último resultado, 0,5118277 está exacto até sete casas decimais.

Exemplo 6: A tabela 3.5 lista valores de f(x) = ln x, exactos até as casas decimais dadas.

Tabela 3.5
i xi ln xi
0 2,0 0,6931
1 2,2 0,7885
2 2,3 0,8329
Vamos usar o método de Neville para a proximar f(2,1) = ln 2,1. Completando a tabela obtém-se
os valores da tabela 3.6.
Tabela 3.6
i xi x  xi Qi 0 Qi1 Qi 2
0 2,0 0,1 0,6931
1 2,2 -0,1 0,7885 0,7410
2 2,3 -0,2 0,8329 0,7441 0,7420

68
Assim, P2 (2,1)  Q22  0,7420 . Uma vez que f(2,1) = ln 2,1 = 0,7419, com exactidão de 4 casas
1
decimais, o erro absoluto é f (2,1)  P2 (2,1)  0,7419  0,7420  10 4 . Porém, f ( x)  ,
x
1 2
f ( x)   2
e f ( x)  3 . Assim, a fórmula (3.3) do erro de Lagrange dá um limite de erro
x x

f ( ) 1
f (2,1)  P2 (2,1)  ( x  x0 )( x  x1 )( x  x2 )  (0,1)(0,1)(0,2)  8, 3  10 5 .
3! 3 3

Note que o erro efectivo, 10-4, excede o erro 8, 3  10 5 . Esta aparentye contradição é uma
consequência do cálculo com um número finito de dígitos. Utilizamos aproximações de 4 dígitos
e a fórmula (3.3) de erro de Lagrange assume uma aritmética de número infinito de dígitos. Isto
fez com que o erro efectivo excedesse a estimativa teórica do erro. 

O algoritmo 3.1 constrói os valores, por linhas, no método de Neville.

Algoritmo 3.1 (de Interpolação iterada de Neville) : (Consulte Burden, p. 118)

O algoritmo pode ser modificado para permitir a adição de novos pontos. Por exemplo, a
desigualdade Qi , i  Qi 1, i 1   pode ser usada como critério de truncatura, onde  é uma

tolerância de erro prescrita. Se a desigualdade for veradeira, Qi , i é uma aproximação rasoável de

f(x). Se a desigualdade for falsa, acrescenta-se um novo ponto interpolador xi 1 .

Exercícios (3.1):
1. Para uma dada função f(x), sejam x0  0 , x1  0.6 e x2  0.9 . Crie polinómios
interopoladores de grau máximo 2, para aproximar f(0.45) e determine o erro daí resultante.

a) f ( x)  cos x b) f ( x)  1  x c) f ( x)  ln( x  1) d) f ( x)  tan x

2. Use o Teorema 3.3 para achar um limite de erro para as aproximações no exercício 1.

3. Use os apropriados polinómios interpoladors de Lagrange de graus um, dois e três para
aproximar cada um dos seguintes casos:
a) f (8.4) , se f (8.1)  16.94410 , f (8.3)  17.56492 , f (8.6)  18.50515 , e
f (8.7)  18.82091
b) f ( 13 ) , se
f (0.75)  0.07181250 , f (0.5)  0.02475000 , f (0.25)  0.33493750 , e
f (0)  1.10100000 .

69
c) f (0.25) , se f (0.1)  0.62049958 , f (0.2)  0.28398668 , f (0.3)  0.00660095 e
f (0.4)  0.24842440 .
d) f (0.9) , se f (0.6)  0.17694460 , f (0.7)  0.01375227 , f (0.8)  0.22363362 e
f (1.0)  0.65809197 .
4. Use o método de Neville para obter as aproximações do execício 3.

5. Use o método de Neville para aproximar 3 com a função f ( x)  3 x e os valores


x0  2 , x1  1, x2  0 , x3  1 e x4  2 .

6. Use o método de Neville para aproximar 3 com a função f ( x)  x e os valores


x0  0 , x1  1, x2  2 , x3  4 e x4  5 . Compare a exactidão com a obtida no execício
5.
7. Os dados do exercício 3 foram gerados com ajuda das seguintes funções. Use a fórmula do
erro para achar um limite do erro e compare-o com o erro obtido nos casos em que n = 1 e n
= 2.
a) f ( x)  x ln x .

b) f ( x)  x 3  4.001x 2  4.002 x  1.101.


c) f ( x)  x cos x  2 x 2  3x  1 .
d) f ( x)  sin(e x  2) .

8. Sejam f ( x)  x  x 2 e P2 ( x) o polinómio interpolador nos pontos x0  0 e x1  x2  1 .


Ache o maior valor de x1 e ]0 , 1[ para o qual f (0.5)  P2 (0.5)  0.25 .
9. Seja P3 ( x) o polinómio interpolador nos pontos (0 , 0), (0.5 , y), (1 , 3) e (2 , 2). Ache o valor
de y, sabendo que o coeficiente de x 3 em P3 ( x) é 6.
10. Use o polinómio interpolador de Lagrange de grau três ou inferior e a aritmética de
truncatura a 4 dígitos para aproximar cos 0.750 servindo-se dos seguintes valores
cos 0.698  0.7661, cos 0.733  0.7432 , cos 0.768  0.7193 e cos 0.803  0.6946 . Ache
um limite de erro para esta aproximação. O valor exacto de cos 0.750 é 0.7317 (até quatro
casas decimais). Explique a discrepância entre o erro real e o limite de erro.

70
3.2 Diferenças Divididas

Interpolação iterada foi usada na secção anterior para gerar sucessivamente aproximações
polinomiais de maior grau num ponto específico. Os métodos de diferenças divididas
introduzidos nesta secção são usados para gerar sucessivamente os próprios polinómios. O nosso
tratamento dos métodos de diferenças divididas serão breves, uma vez que os resultados nesta
secção não serão usados extensivamente no material subsequente. Textos mais velhos de análise
numérica têm tratamento extensivo dos métodos de diferenças divididas. Se um tratamento mais
compreensivo for necessário, o livro de Hildebrand [Hild] é uma referência particularmente boa.

Suponhamos que Pn (x) é o n-ésimo polinómio de Lagrange que coincide com a função f nos

pontos distintos de x0 ,, xn . As diferenças divididas de f com relação a x0 ,, xn são usadas

para exprimir Pn (x) na forma

Pn ( x)  a0  a1 ( x  x0 )  a2 ( x  x0 )( x  x1 )    an ( x  x0 )( x  x1 )( x  xn1 ) , (3.5)

para constantes apropriadas a0 ,, an .

Para determiner a primeira destas constants, a 0 , note-se que se Pn (x) é escrito na forma da Eq.

(3.5), então o valor de Pn (x) em x 0 deixa apenas o termo da constante a 0 , isto é,

a0  Pn ( x0 )  f ( x0 ) .

De forma semelhante, para o valor de Pn (x) em x1 , os únicos termos não nulos de Pn ( x1 ) são as

constantes e os termos lineares

f ( x0 )  a1 ( x  x0 )  Pn ( x1 )  f ( x1 ) .

f ( x1 )  f ( x0 )
Assim, a1  . (3.6)
x1  x0

Agora introduzimos a notação de diferenças divididas, que está relacionada com a notação 2 de
Aitken usada na secção 2.5. A diferença dividida zero da função f em relação a x i , denotada

f [ xi ] , é simplesmente o valor de f em x1 :

f [ xi ]  f ( x i ) . (3.7)

71
As restantes diferenças divididas são definidas inductivamente.

A primeira diferença dividida de f em relação a x i e xi 1 é denotada f [ xi , xi 1 ] e definida

como

f [ xi 1 ]  f [ xi ]
f [ xi , xi 1 ]  . (3.8)
xi 1  xi

A segunda diferença dividida, f [ xi , xi 1 , xi  2 ] está definida como

f [ xi 1 , xi  2 ]  f [ xi , xi 1 ]
f [ xi , xi 1 , xi  2 ]  .
xi  2  xi

De forma semelhane, depois da (k – 1)-ésimas diferenças divididas, f [ xi , xi 1 , xi 2 ,, xi k 1 ] e

f [ xi 1 , xi 2 , , xi k 1 , xi k ] , já foram determinadas, a k-ésima diferença dividida relativamente

a xi , xi 1 , xi  2 ,, xi k é dada por

f [ xi 1 , xi  2 ,, xi  k ]  f [ xi , xi 1 ,, xi  k 1 ]
f [ xi , xi 1 ,, xi  k 1 , xi  k ]  . (3.9)
xi  k  xi

Com esta notação, a Eq. (3.6) pode ser reexpressa como a1  f [ x0 , x1 ] e o polinómio

interpolador da Eq. (3.5) como

Pn ( x)  f [ x0 ]  f [ x0 , x1 ]( x  x0 )  a2 ( x  x0 )( x  x1 )    an ( x  x0 )( x  x1 )( x  xn1 ) .

Como se pode esperar do cálculo de a 0 e a1 , as constantes exigidas para cada k = 0 , 1 , ... , n,

são ak  f [ x0 , x1 , x2 ,, xk ] . Assim, Pn (x) pode ser reescrito como (veja [Hild, pp. 43 – 47])

n
Pn ( x)  f [ x0 ]   f [ x0 , x1 ,, xk ]( x  x0 ) ( x  xn1 ) . (3.10)
k 1

O valor de f [ x0 , x1 ,, xk ] é independente da ordem dos números x0 , x1 ,, xk , como é


mostrado no exercício 17. Esta equação é conhecida como Fórmula Interpoladora de
Diferenças Divididas de Newton. A geração das diferenças divididas está exposta na tabela 3.7.
Duas quartas e uma quinta diferenças podiam ser determinadas ainda a partir destes dados.

72
Tabela 3.7
x f (x) Primeiras diferenças divididas Segundas diferenças divididas Terceiras diferenças divididas .....
x0 f [ x0 ]
f [ x1 ]  f [ x0 ]
f [ x0 , x1 ] 
x1 f [ x1 ] x1  x0 f [ x1 , x2 ]  f [ x0 , x1 ]
f [ x0 , x1 , x2 ]  f [ x1 , x2 , x3 ]  f [ x0 , x1 , x2 ]
f [ x2 ]  f [ x1 ] x 2  x0 f [ x0 , x1 , x2 , x3 ] 
f [ x1 , x2 ] 
x2 f [ x2 ] x2  x1 f [ x2 , x3 ]  f [ x1 , x2 ] x3  x 0
f [ x1 , x2 , x3 ]  f [ x2 , x3 , x4 ]  f [ x1 , x2 , x3 ]
f [ x3 ]  f [ x 2 ] x3  x1 f [ x1 , x2 , x3 , x4 ] 
f [ x 2 , x3 ] 
x3 f [ x3 ] x3  x 2 f [ x3 , x 4 ]  f [ x 2 , x3 ] x4  x1
f [ x 2 , x3 , x 4 ]  f [ x3 , x 4 , x5 ]  f [ x 2 , x3 , x 4 ]
f [ x 4 ]  f [ x3 ] x4  x2 f [ x 2 , x3 , x 4 , x5 ] 
f [ x3 , x 4 ] 
x4 f [ x4 ] x 4  x3 f [ x 4 , x5 ]  f [ x3 , x 4 ] x5  x 2
f [ x3 , x 4 , x5 ] 
f [ x5 ]  f [ x 4 ] x5  x3
f [ x 4 , x5 ] 
x5 f [ x5 ] x5  x 4
A fórmula interpoladora de diferenças divididas de Newton pode ser implementada usando-se o algoritmo 3.2. A forma do resultado pode ser
modificada para produzir todas as diferenças divididas, como foi feito no Exemplo 1.

Algoritmo 3.2 (Fórmula Interpoladora de Diferenças Divididas de Newton)


Para obter os coeficientes das diferenças divididas do polinómio interpolador P nos n+1 pontos distintos de x0 ,, xn para uma função f:
INPUT Números x0 ,, xn ; valores f ( x0 ) , f ( x1 ) , , f ( xn ) como F0 , 0 , F1, 0 , ..., Fn , 0 .

OUTPUT Os números F0 , 0 , F1,1 , ..., Fn , n , onde


n i 1
P( x)   Fi ,i  ( x  x j )
i 0 j 0

Passo 1 Para i = 1, 2, ..., n


Para j = 1, 2, ..., i.
Fi , j 1  Fi 1, j 1
Faça Fi , j 
xi  xi  j
Passo 2 OUTPUT ( F0,0 , F1,1 , , Fn,n ) ; ( Fi ,i is f [ x0 , x1 , , xi ) );

STOP.

73
Exemplo 1: No exemplo 3 da secção 3.1 foram usados vários polinómios interpoladores para
aproximar f(1,5), com base nos dados das três primeiras colunas da tabela 3.8. Os valores
restantes da referida tabela contêm diferenças divididas calculadas com ajuda do algoritmo 3.2.

Os coeficientes da forma da diferença dividida progressivamente de Newton no polinómio


interpolador estão na diagonal da tabela. O polinómoi em causa é

P4 ( x)  0,7651877  0,4837057( x  1,0)  0,1087339( x  1,0)( x  1,3) 


 0,0657784( x  1,0)( x  1,3)( x  1,6)  0,0018251( x  1,0)( x  1,3)( x  1,6)( x  1,9) .

Note que o valor de P4 (1,5)  0,5118200 , que coincide com o resultado obtido no exmplo 3 da
secção 3.1, como deve ser, dado os polinómios serem os mesmos. 

Tabela 3.8
i xi f [ xi ] f [ xi 1 , xi ] f [ xi 2 , xi 1 , xi ] f [ xi 3 ,, xi ] f [ xi 4 ,, xi ]
0 1,0 0,7651977
-0,4837057
1 1,3 0,6200860 -0,1087339
-0,5489460 0,0658784
2 1,6 0,4554022 -0,0494433 0,0018251
-0,5786120 0,0680685
3 1,9 0,2818186 -0,0118183
-0,5715210
4 2,2 0,1103623
O Teorema do Valor Médio aplicado na Eq. (3.8) quando i = 0,

f ( x1 )  f ( x0 )
f [ x0 , x1 ]  ,
x1  x0

implica que quando f  existe, f [ x0 , x1 ]  f ( ) para algum  entre x0 e x1. O seguinte Teorema

generaliza este resultado.

Teorema 3.6: Suponhamos que f  C n [a , b] e que x0 ,, xn são números distintos em [a , b] .

Então, um número  existe em (a , b) , tal que

f ( n ) ( )
f [ x 0 , , x n ]  . 
n!

Prova (...)

A fórmula interpoladora de diferenças divididas pode ser expressa duma forma simplificada,
quando x0 ,, xn são arranjados de forma consecutiva e igualmente espaçados. Neste caso,

74
introduzimos a notação h  xi 1  xi , para cada i = 0, 1, ..., n – 1 e assumimos x  x0  sh .

Então, a diferença x  xi pode ser escrita como x  xi  (s  i)h . Assim, a Eq. (3.10) torna-se

Pn ( x)  Pn ( x0  sh)  f [ x0 ]  shf [ x0 , x1 ]  s( s  1)h 2 f [ x0 , x1 , x 2 ] 


n
   s( s  1)  ( s  n  1)h n f [ x0 , x1 ,, x n ]   s( s  1)  ( s  k  1)h k f [ x0 , x1 ,, x k ].
k 0

 s  s( s  1)  ( s  k  1)
Usando a notação dos coeficientes binomiais,    , podemos expressar
k  k!

Pn (x) de forma compacta como

n
s
Pn ( x)  Pn ( x0  sh)  f [ x0 ]    k!h k f [ x0 , x1 ,, x k ] . (3.11)
k 0  k 

Esta fórmula chama-se Fórmula de Diferença Dividida Progressivamente de Newton. Ountra


forma, chamada Fórmula de Diferença Progressivaa de Newton, é construída fazendo-se uso
da notação de diferença progressiva  introduzida no método de 2 de Aitken. Com esta notação,

f ( x1 )  f ( x0 ) 1 1  f ( x1 )  f ( x0 )  1
f [ x0 , x1 ]   f ( x0 ) , f [ x0 , x1 , x2 ]     2 2 f ( x0 ) , e,
x1  x0 h 2h  h  2h
1 k
em geral, f [ x0 ,, xk ]   f ( x0 ) . Então, a Eq. (3.11) tem a seguinte fórmula:
k!h k

Fórmula de Diferença Dividida de Newton


n
s
Pn ( x)  f [ x0 ]    k f ( x0 ) . (3.12)
k 0  k 

Se os pontos interpoladores estão reordenados como xn ,, x0 , resulta uma fórmula semelhante
à da Eq. (3.10):

Pn ( x)  f [ xn ]  f [ xn , xn1 ]( x  xn )  f [ xn , xn1 , xn2 ]( x  xn )( x  xn1 )    f [ xn ,, x0 ]( x  xn )( x  x1 )


Se os pontos estão igualmente espaçados, com x  xn  sh e x  xi  (s  n  1)h , então,

Pn ( x)  Pn ( xn  sh)  f [ xn ]  shf [ xn , xn1 ]  s(s  1)h 2 f [ xn , xn1 , xn2 ]    s(s  1)(s  n  1)h n f [ xn ,, x0 ]

75
Esta fórmula chama-se Fórmula de Diferença Dividida Regressivamente de Newton. É usada
para derivar uma fórmula normalmente mais aplicada, conhecida como a Fórmula de Diferença
Regressiva de Newton. Para discutir a fórmula, precisamos da seguinte definição:

Definição 3.7

Dada a sequência pn n0 , define-se a diferença regressiva p n como pn  pn  pn1 , para

n  1. Potências mais altas são definidas recursivamente por  k pn  ( k 1 pn ) , para k  2. 

Desta definição resulta que

1 1 1
f [ x n , x n 1 ]  f ( x n ) , f [ x n , x n 1 , x n 2 ]  2  2 f ( x n ) e, em geral, f [ x n , x n 1 , , x n  k ]   k f ( xn ) .
h 2h k! h k

Consequentemente,

s( s  1) 2 s( s  1)  ( s  n  1) n
Pn ( x)  f [ x n ]  sf ( x n )   f ( xn )     f ( xn ) .
2 n!

Se usamos a notação binomial para exprimir todos os valores reais de s através d da fórmula

  s   s( s  1) ( s  k  1) s( s  1) ( s  k  1)
    (1) k   , então
 k  k! k!

 s  s  s
Pn ( x)  f [ x n ]  (1)1  f ( x n )  (1) 2   2 f ( x n )    (1) n   n f ( x n ) , do qual resulta a
 1   2  n
seguinte fórmula:

Fórmula de Diferenças Divididas de Newton


n
 s
Pn ( x)  f [ x n ]   (1) k   k f ( x n ) (3.13)
k 1  k 
Exemplo 2 A tabela 3.9 de diferenças divididas corresponde aos dados no exemplo 1
Tabela 3.9
Primeiras Segundas Terceiras Quarta
Diferenças Diferenças Diferenças Diferença
Divididas Divididas Divididas Dividida
1,0 0,7651977
-0,4837057
1,3 0,6200860 -0,1087339
-0,5489460 0,0658784
1,6 0,4554022 -0,0494433 0,0018251
-0,5786120 0,0680685
1,9 0,2818186 0,0118183
-0,5715210
2,2 0,1103623

76
Só um polinómio interpolador de grau 4 no máximo usa estes cinco pontos, mas vamos organizar
os dados para obter as melhores aproximações intrpoladas de graus 1, 2 e 3. Isso vai dar-nos um
sentido de exactidão da aproximação do quarto grau para o dado valor de x. Se uma aproximação
de f(1,1) for exigida, a escolha da ordem mais razoável dos pontos deve ser x0 = 1,0, x1 = 1,3, x2
= 1,6, x3 = 1,9 e x4 = 2,2, uma vez que esta escolha faz o uso mais madrugador dos dados mais
próximos de x = 1,1 e faz o uso da quarta diferença dividida. Isto implica que h = 0,3 e s  13 , e,

desta maneira, a fórmula de diferenças divididas progressivamente é usada com as diferenças


sublinhadas a cheio na tabela 3.9:

1 1 2
P4 (1,1)  P4 (1,0  13 (0,3))  0,7651977  (0,3)(0,4837057)    (0,3) 2 (0,1087339) 
3 3 3
1  2  5  1  2  5  8 
     (0,3) 3 (0,0658784)        (0,3) 4 (0,0018251)  0,7196480.
3  3  3  3  3  3  3 

Para aproximar um valor quando x está mais próximo do fim da tabela, por exemplo, x = 2,0,
também quereremos fazer a escolha da ordem que faz o uso mais madrugador dos pontos mais
próximos de x. Isto requer o uso da fórmula de diferenças divididas regressivamente de Newton
com s   23 e as diferenças divididas da tabela 3.9 sublinhadas a tracejado:

P4 (2,0)  P4 2,2  23 (0,3)   0,0,1103623  (0,3)(0,5715210)   (0,3) 2 (0,0118183) 


2 2 1
3 3 3

2 1 4 2 1 4 7
   (0,3) 3 (0,0680685)     (0,3) 4 (0,0018251)  0,2238754.
3 3 3 3 3 3 3

As fórmulas de Newton não sãoapropriadas para aproximar f(x), quando x se encontra no centro
da tabela, uma vez que o uso do método regressivo ou progressivo de maneira a que a diferença
de maior ordem esteja envolvida não irá permitir que x0 esteja perto de x. Existem outras
fórmulas de diferenças divididas para estes casos, cada uma das quais com suas situações em que
pode ser usada de forma mais vantajosa. Esses métodos são conhecidos como fórmulas de
diferenças centradas. Há muitos desses métodos, mas vamos apresentar apenas um, o método
de Stirling, e, de novo, aconselhar aos leitores a consultar [Hild] para uma apresentação mais
completa.

77
Para as fórmulas de diferenças divididas, escolhemos x0 próximo do ponto a ser aproximado e
etiquetamos os pontos abaixo de x0 como x1, x2, ... e os acima como x-1, x-2, .... Com esta
convenção, a fórmula de Stirling é dada por

Pn ( x)  P2 m 1 ( x)  f [ x0 ] 
sh
 f [ x1 , x0 ]  f [ x0 , x1 ]  s 2 h 2 f [ x1 , x0 , x1 ] 
2
s ( s 2  1)h 3
  f [ x2 , x1 , x0 , x1 ]  f [ x1 , x0 , x1 , x2 ]   
2
 s 2 ( s 2  1)( s 2  4)  ( s 2  (m  1) 2 ) h 2 m f [ x  m ,, x m ] 
s ( s 2  1)  ( s 2  m 2 ) h 2 m 1
  f [ xm1 ,, xm ]  f [ xm ,, xm1 ],
2

Se n = 2m+1 é ímpar. Se n = 2m é par, usamos a mesma fórmula, mas eliminando a última linha.
Os valores usados nesta fórmula estão sublinhados na tabela 3.10.

Exemplo 3: Considere a tabela de dados que foram usados nos exemplos anteriores. Para usar a
fórmula de Stirling para aproximar f(1,5) com x0 = 1,6 usamos os valores sublinhados na tabela
de diferenças 3.11.

78
Tabela 3.7

x f (x) Primeiras diferenças divididas Segundas diferenças divididas Terceiras diferenças divididas Quartas diferenças divididas

x2 f [ x2 ]
f [ x2 , x1 ]

x 1 f [ x1 ] f [ x2 , x1 , x0 ]


f [ x1 , x0 ] f [ x2 , x1 , x0 , x1 ]

x0 f [ x0 ] f [ x1 , x0 , x1 ] f [ x2 , x1 , x0 , x1 , x2 ]


f [ x0 , x1 ] f [ x1 , x0 , x1 , x2 ]

x1 f [ x1 ] f [ x0 , x1 , x2 ]
f [ x1 , x2 ]

x2 f [ x2 ]

79
Tabela 3.11
Primeiras Segundas Terceiras Quarta
Diferenças Diferenças Diferenças Diferença
Divididas Divididas Divididas Dividida
1,0 0,7651977
-0,4837057
1,3 0,6200860 -0,1087339
-0,5489460 0,0658784
1,6 0,4554022 -0,0494433 0,0018251
-0,5786120 0,0680685
1,9 0,2818186 0,0118183
-0,5715210
2,2 0,1103623
Aplicando a fórmula, com h = 0,3, x0 = 1,6 e s  13 , tem-se:

  1   1  0,3 
f (1,5)  P4 1,6    (0,3   0,4554022     (0,5489460)  (0,5786120)  
  3   3  2 
1  1   1  
2 2
 1
    (0,3) 2 (0,0494433)         1(0,3) 3 (0,0658784  0,0680685)  0,5118200
 3 2  3   3  

Exercícios (3.2):
1. Use a fórmula interpoladora de diferenças divididas ou o algoritmo 3.2 para criar
polinómios interpoladores de graus um, dois e três, para os seguintes dados e
aproxime os valores especificados com ajuda de cada um desses polinómios.
a) f (8.4) , se f (8.1)  16.94410 , f (8.3)  17.56492 , f (8.6)  18.50515 , e
f (8.7)  18.82091
b) f (0.9) , se
f (0.6)  0.17694460 , f (0.7)  0.01375227 , f (0.8)  0.22363362 e
f (1.0)  0.65809197 .
2. Use a fórmula de diferenças progressivas para criar polinómios de graus um, dois e
três, para os seguintes dados e aproxime os valores especificados com ajuda de cada
um desses polinómios.
a) f ( 13 ) , se f (0.75)  0.07181250 , f (0.5)  0.02475000 ,
f (0.25)  0.33493750 e f (0)  1.10100000 .
b) f (0.25) , se
f (0.1)  0.62049958 , f (0.2)  0.28398668 , f (0.3)  0.00660095 e
f (0.4)  0.24842440 .
3. Use a fórmula de diferenças progressivas para criar polinómios de graus um, dois e
três, para os seguintes dados e aproxime os valores especificados com ajuda de cada
um desses polinómios.
a) f ( 13 ) , se f (0.75)  0.07181250 , f (0.5)  0.02475000 ,
f (0.25)  0.33493750 e f (0)  1.10100000 .

80
b) f (0.25) , se
f (0.1)  0.62049958 , f (0.2)  0.28398668 , f (0.3)  0.00660095 e
f (0.4)  0.24842440 .
4. Considere a seguinte tabela de pontos desigualmente espaçados:
x 0,0 0,1 0,3 0,6 1,0
f (x)  6,00000  5,89483  5,65014  5,17788  4,28172
a) Use o algoritmo 3.2 para criar o polinómio interpolador de grau quatro para os
dados.
b) Adicione f (1,1)  3,99583 à tabela e crie o polinómio interpolador de grau
cinco.
5. Considere a seguinte tabela de pontos desigualmente espaçados:
x 0,0 0,2 0,4 0,6 0,8
f (x) 1,00000 1,22140 1,49182 1,82212 2,22554
c) Aproxime f (0,05) , usando os seguintes dados e a fórmula de Newton de
diferenças divididas progressivamente.
d) Use a fórmula de Newton de diferenças divididas regressivamente para aproximar
f (0,65) .
e) Use a fórmula de Stirling para aproximar f (0,43) .

3.3. Interpolação de Hermite

Polinómios osculadores generalizam tanto os polinómios de taylor quanto os de


Lagrange. Suponhamos que nos foram dados n+1 números distintos x0 ,, xn em [a, b] e

inteiros não negativos m0 ,, mn , e m  maxm0 , m1 , , mn  . O polinómio osculador

que aproxima uma função f  C m [a , b] nos pontos de x i , para i = 0 , ... , n, é o

polinómio de menor grau possível, com a propriedade de que coincide com a função f e
todas as suas derivadas de ordem menor ou igual a mi em x i . O grau deste polinómio é,

no máximo,
n
M   mi  n ,
i 0


n
porque o número de condições a satisfazer é i 0
mi  (n  1) e o polinómio de grau M

tem M+1 coeficientes que podem ser usados para satisfazer assas condições.

81
Definição 3.8: Sejam x0 ,, xn n+1 números distintos x0 ,, xn em [a, b] e mi um

inteiro não negativo associado a x i , para i = 0 , ... , n. Suponhamos que f  C m [a , b] ,

onde m  max 0in mi . O polinómio osculador que apfoxima f é o polinómio P(x) de


menor grau possível, tal que

d k P ( xi ) d k f ( xi )
 , para cada i = 0, 1, ... , n e k = 0, 1, ... , mi. 
dx k dx k

Note-se que, quando n = 0, o polinómio osculador que aproxima f é o polinómio de


Taylor de grau m0 para f em x0. Quando mi = 0 para quanlquer i, o polinómio osculador é
o polinómio interpolador de Lagrange de grau n para a função f nos pontos x0 ,, xn .

Os casos em que mi = 1, para qualquer i = 0, 1, ... , n, produzem os polinómios de


Hermite. Para uma função f dada, estes polinómios coincidem com f nos x0 ,, xn .

Adicionalmente, uma vez que as suas primeiras derivadas também coincidem com as de
f, têm a mesma curvatura que a função em (xi , f(xi)), na medida em que as linhas
tangentes ao gráfico do polinómoio e ao da função coincidem. Vamos restringir o nosso
estudo de polinómios osculadores a eta situação e considerar primeiro um teorema que
descreve precisamente a forma dos polinómios de Hermite.

Teorrema 3.9: Se f  C m [a , b] e x0 ,, xn  [a , b] são distintos, o único polinómio de

menor grau que coincide com f e f  em x0 ,, xn é o polinómio de Hermite de grau

2n+1, no máximo, dado por


n n
H 2 n 1 ( x)   f ( x j ) H n , j ( x)   f ( x j ) Hˆ n , j ( x) ,
j 0 j 0

onde

H n , j ( x)  [1  2( x  x j ) Ln , j ( x j )] L2n , j ( x)

Hˆ n , j ( x)  ( x  x j ) L2n , j ( x) .

82
Neste contexto, Ln , j ( x) denota o j-ésimo polinómio de coeficientes de Lagrange de grau

n definido na Eq. (3.2). Para além disso, se f  C 2n 2 [a , b] , então

( x  x0 ) 2  ( x  x n ) 2
f ( x)  H 2 n1 ( x)   f ( 2 n 2) ( ) , 
(2n  2)!

para algum  com a    b .

Prova (...)

Exemplo 1: Use o polinómio de Hermite que coincide com os dados listados na tabela
3.12, seguinte, para achar uma aproximação de f(15).

k xk f ( xk ) f ( xk )

0 1,3 0,6200860 -0,5220232


1 1,6 0,4554022 -0,5698959
2 1,9 0,2818186 -0,5811571
Em primeiro lugar calculamos os polinómios de Lagrange e suas respectivas derivadas.
Isso da:

( x  x1 )( x  x2 ) 50 2 175 152 100 175


L2,0 ( x)   x  x , L2 ,0 ( x)  x ;
( x0  x1 )( x0  x2 ) 9 9 9 9 9

( x  x0 )( x  x2 ) 100 2 320 247 200 320


L2,1 ( x)   x  x , L2 ,1 ( x)   x ; e
( x1  x0 )( x1  x2 ) 9 9 9 9 9

( x  x0 )( x  x1 ) 50 2 145 104 100 145


L2, 2 ( x)   x  x , L2 , 2 ( x)  x .
( x2  x0 )( x2  x1 ) 9 9 9 9 9

Os polinómios H 2 , j ( x) e Hˆ n , j ( x) são, então

2 2
 50 175 152   50 2 175 152 
H 2 ,0 ( x)  [1  2( x  1,3)(5)]  x 2  x   (10 x  12) x  x  ;
 9 9 9   9 9 9 

83
2 2
 100 2 320 274   50 145 104 
H 2 ,1 ( x)  1    x  x  ; H 2 , 2 ( x)  10(2  x) x 2  x  ;
 9 9 9   9 9 9 
2 2
 50 175 152   100 2 320 274 
Hˆ 2 ,0 ( x)  ( x  1,3) x 2  x  ; Hˆ 2 ,1 ( x)  ( x  1,6)  x  x 
 9 9 9   9 9 9 
2
 50 145 104 
e Hˆ 2 , 2 ( x)  ( x  1,9) x 2  x  .
 9 9 9 

Finalmente,

H 5 ( x)  0,6200860 H 2,0 ( x)  0,4554022 H 2,1 ( x)  0,2818186 H 2, 2 ( x)


 0,5220232 Hˆ 2,0 ( x)  0,5698959 Hˆ 2,1 ( x)  0,5811571Hˆ 2, 2 ( x).

 4   64  5
H 5 (1,5)  0,6200860   0,4554022   0,2818186 
 27   81   81 
 4   32   2 
 0,5220232   0,5698959    0,5811571    0,5118277,
 405   405   405 

Um resultado que é exacto até o número de casas decimais apresentadas. 

Embora o Teorema 3.9 providencie uma descrição completa do polinómio de Hermite,


está claro, através do exemplo 1, que a necessidade de determinar e calcular usando-se o
polinómio de agrange e suas derivadas torna o processo tedioso, mesmo para pequenos
valores de n. Um método elternativo para gerar aproximações de Hermite tem como sua
base a fórmula interpoladora (3.10) de diferenças divididas de Newton para o polinómio
de agrange em x0 , x1 , , xn ,

n
Pn ( x)  f [ x0 ]   f [ x0 , x1 ,, xk ]( x  x0 ) ( x  xn1 ) ,
k 1

e a conecção entre a n-ésima diferença dividida e a n-ésima derivada de f como foi


expresso no Teorema 3.6 da secção 3.2.

Suponhamos que os x0 , x1 , , xn números distintos são dados juntamente com os

valores de f e f’ nesses números. Define-se uma sequência z 0 , z1 , , z 2n1 através de

84
z 2i  z 2i 1  xi , para cada i = 0, 1, ..., n,

e constrói-se a tabela de diferenças divididas na forma da Tabela 3.7 que usa

z 0 , z1 , , z 2n1 .

Uma vez que z 2i  z 2i 1  xi , para cada i, não podemos definir f [ z 2i , z 2i 1 ] pela fórmula
de diferenças divididas. Se assumirmos, baseados no Teorema 3.6, que a substituição
razoável nesta situação é f [ z 2i , z 2i 1 ]  f ( z 2i )  f ( xi ) , podemos usar os valores

f ( x0 ), f ( x1 ), , f ( xn )

no lugar das primeiras diferenças divididas indefinidas

f [ z 0 , z1 ], f [ z 2 , z3 ], , f [ z 2n , z 2n1 ] .

As diferenças divididas restantes são produzidas como de costume e as diferenças


divididas apropriadas são usadas na fórmula interpoladora de diferenças divididas de
Newton. A tabela 3.13 mostra os valores que são usados para as primeiras três colunas de
diferenças divididas quando se determina o polinómio de Hermite H 5 ( x) para x0, x1 e x2.

Os restantes valores são gerados da mesma maneira que na Tabela 3.7. O polinómio de
Hermite é dado pela fórmula
2 n 1
H 2 n1 ( x)  f [ z 0 ]   f [ z 0 , z1 ,, z k ]( x  z 0 )( x  z1 ) ( x  z n1 ) .
k 1

Uma prova deste facto pode se encontrar em [Po, p. 56].

85
Tabela 3.13

1ªs diferenças divididas 2ªs diferenças 3ªs diferenças 4ªs diferenças 5ªs diferenças
z f (z ) divididas divididas divididas divididas
z 0  x0 f [ z 0 ]  f ( x0 )
f [ z 0 , z1 ]  f ( x0 )
z1  x0 f [ z1 ]  f ( x0 ) f [ z 0 , z1 , z 2 ]
f [ z 2 ]  f [ z1 ] f [ z 0 , z1 , z 2 , z 3 ]
f [ z1 , z 2 ] 
z 2  z1
z 2  x1 f [ z 2 ]  f ( x1 ) f [ z1 , z 2 , z3 ] f [ z 0 , z1 , z 2 , z 3 , z 4 ]
f [ z 2 , z 3 ]  f ( x1 ) f [ z1 , z 2 , z 3 , z 4 ] f [ z 0 , z1 , z 2 , z3 , z 4 , z 5 ]
z 3  x1 f [ z 3 ]  f ( x1 ) f [ z 2 , z3 , z 4 ] f [ z1 , z 2 , z 3 , z 4 , z5 ]
f [ z 4 ]  f [ z3 ] f [ z 2 , z3 , z 4 , z5 ]
f [ z3 , z 4 ] 
z 4  z3
z 4  x2 f [ z 4 ]  f ( x2 ) f [ z3 , z 4 , z5 ]
f [ z 4 , z 5 ]  f ( x2 )
z 5  x2 f [ z 5 ]  f ( x2 )
Exemplo 2: Os valores da Tabela 3 usam os dados fornecidos no Exemplo 1. Os valores sublinhados são os fornecidos, enquanto que
os restantes são gerados pela fórmula (3.9) padrão de diferenças divididas.

H 5 (1,5)  0,6200860  (1,5  1,3)(0,5220232)  (1,5  1,3) 2 (0,0897427)  (1,5  1,3) 2 (1,5  1,6)(0,0663657) 
 (1,5  1,3) 2 (1,5  1,6) 2 (0,0026663)  (1,5  1,3) 2 (1,5  1,6) 2 (1,5  1,9)(0,0027738)  0,5118277.

86
1,3 0,6200860
– 0,5220232
1,3 0,6200860 – 0,0897427
– 0,5489460 0,0663657
1,6 0,4554022 – 0,0698330 0,0026663
– 0,5698959 0,0679655 – 0,0027738
1,6 0,4554022 – 0,0290537 0,0010020
– 0,5786120 0,0685667
1,9 0,2818186 – 0,0084837
– 0,5811571
1,9 0,2818186
A técnica usada no Algoritmo 3.3 pode ser extendida para o uso na determinação de outros polinómios osculadores. Uma discussão
concisa dos procedimentos pode ser encontrada em [Po, pp. 53-57].
Algoritmo 3.3 Interpolação de Hermite
Para obter os coeficientes do polinómio interpolador de Hermite H(x) nos n+1 pontos distintos de x0 ,, xn para uma função f:
INPUT Números x0 ,, xn ; valores f ( x0 ) , f ( x1 ) , , f ( xn ) e f ( x0 ) , f ( x1 ) , , f ( xn ) .
2 n 1 i 1
OUTPUT Os números Q0 , 0 , Q1,1 , ..., Q2 n1, 2 n1 , onde H ( x)   Qi,i  ( x  x j )
i 0 j 0

Passo 1 Para i = 1, 2, ..., n executa os passos 2 e 3.


Passo 2 Faça z 2i  xi ; z 2i 1  xi ; Q2i ,0  f ( xi ) ; Q2i 1,0  f ( xi ) ; Q2i 1,1  f ( xi ).
Q2i , 0  Q2i 1, 0
Passo 2 Faça Q2i ,1  .
z 2i  z 2i 1
Passo 4 Para i = 1, 2, ..., 2n+1
Qi , j 1  Qi 1, j 1
Para j = 2, 3, ..., i, faça Qi , j  .
zi  zi j
Passo 4 OUTPUT ( Q0,0 , Q1,1 , , Q2n1, 2n1 ) ; ); STOP.

87
Exercícios (3.3):
1. Use o Teorma 3.9 ou o algoritmo 3.3 para criar um polómio aproximado para os
seguintes dados:
a) b)
x f (x) f (x) x f (x) f (x)
8,3 17,56492 3,116256 0,8 0,22363362 2,1691753
8,6 18,50515 3,151762 1,0 0,65809197 2,0466965

c) d)
x f (x) f (x) x f (x) f (x)
 0,5  0,0247500 0,751000 0,  0,62049958 3,5850208
0 1 2
 0,25 0,3349375 2,189000 0,  0,28398668 3,1403327
0 2 1
0 1,1010000 4,002000 0, 0,00660095 2,6666804
0 3 3
0, 0,24842440 2,1652936
4 6
2. Os dados no exercício 1 foram gerados através das seguintes funções. Use os
polinómios criados no mesmo exercício para os valores de x dados para aproximar
f(x) e calcule o erro efectivamente cometido.
a) f ( x)  x ln x ; aproxime f (8,4) .
b) f ( x)  sin(e x  2) ; aproxime f (0,9) .
c) f ( x)  x 3  4,001x 2  4,002 x  1,101 ; aproxime f ( 13 ) .
d) f ( x)  x cos x  2 x 2  3x  1 ; aproxime f (0,25) .
3. Considere a tabela seguinte:
x f ( x)  sin x f ( x)  cos x
0,30 0,29552 0,95534
0,32 0,31457 0,94924
0,35 0,34290 0,93937
a) Use estes valores com aritmética de arredondamento a cinco dígitos para criar o
polinómio interpolador de Hermite para depois aproximar sin 0,34 .
b) Determine um limite de erro para a aproximação da alínea a) e compare-o com o
erro efectivo.
c) Adicione sin 0,33  0,32404 e cos 0,33  0,94604 aos dados da tabela e refaça os
cálculos da alínea b).
4. Seja f ( x)  3xe x  e 2 x .

88
a) Aproxime f (1,03) através dopolinómio de Hermite de grau 3 no máximo, usando
x0  1 e x1  1,05 . Compare o erro efectivo com o limite de erro.
b) Repita o exercício da alínea a) com o pilonómio interpolador de Hermite de grau
5 no máximo, usando x0  1 , x1  1,05 e x2  1,07 .
5. A seguinte tabela lista dados para a função decrita por f ( x)  e 0,1x . Aproxime
2

f (1,25) usando H 5 (1,25) e H 3 (1,25) , onde H 5 usa os pontos de x0  1 , x1  2 e


x  3 e H usa os pontos de ~
3 3 x 1 e ~
0 x  1,5 . Ache limites de erro para estas
1
aproximações.
x f (x) f (x)
x0  ~
x0  1  0,62049958 3,58502082
~
x  1,5
1
 0,28398668 3,14033271
x1  2 0,00660095 2,66668043
x2  3 0,24842440 2,16529366
6. Um carro andando numa estrada recta foi cronometrado num certo número de pontos.
Os dados da observação são dados na tabela seguinte, onde o tempo é medido em
segundos, a distância em metros e a velocidade em metros por segundo.
Tempo 0 3 5 8 13
Distância 0 225 383 623 993
Velocidade 75 77 80 74 72
a) Use um polinómio de Hermite para prever a posição do carro e a sua velocidade
quando t = 10 s.
b) Use as derivadas do polinómio de Hermite para determinar se o carro chega a
exceder a velocidade de 100 km/h, velocidade limite nessa estrada.
c) Qual é a velocidade máxima prevista para este carro

89
4. DIFERENCIACÃO E INTEGRACÃO NUMÉRICAS
Uma chapa ondulada de cobertura é construída pressionando-se uma chapa lisa de
alumínio nessa ondulação cuja secção transversal tem a forma de uma onda
senoidal.

Uma chapa ondulada de 4 pés de comprimento é produzida, com a altura de cada


onda igual a 1 polegada a partir da linha central e cada onda tem um períodode 2
polegadas aproximadamente. O problema de encontrar o comprimento da chapa
lisa inicial é o mesmo que determinar o comprimento da curva dada por
f ( x)  sin x , de x = 0 para x = 48 polegadas. Do cálculo sabemos que este
comprimento é
48 48
L  1   f ( x)  dx   1  (cos x) 2 dx ,
2

0 0

assim, o problema se reduz ao cálculo deste integral. Embora a função seno seja
uma das funções matemáticas mais comuns, o cálculo do seu comprimento envolve
um integral elíptico do segundo tipo, que não pode ser encontrado pelos métodos
básicos comuns. Neste capítulo são desenvolvidos métodos para aproximar soluções
de problemas deste tipo. Este problema particular é tratado no exercício 21 da
secção 4.4 e exercício 10 da secção 4.5.

Mencionamos na introdução do capítulo 3 que uma razão para o uso de polinómios


algébricos para aproximar um conjunto arbitrário de dados é que, dada qualquer
função contínua definida num intervalo fechado, há um polinómio que é
arbitrariamente próximo da função em todos os pontos do intervalo. Também as
derivadas e os integrais de polinómios são facilmente determinados e aplicados em
qualquer ponto. Não é, pois, de admirar que a maioria dos procedimentos de
aproximação de derivadas e integrais use polinómios que aproximam a função.

90
4.1. Diferenciação Numérica
f ( x 0  h)  f ( x 0 )
A derivada da função f em x 0 é f ( x0 )  lim .
hh 0

Esta fórmula dá-nos uma maneira óbvia de gerar aproximações de f (x) , simplesmente
f ( x 0  h)  f ( x 0 )
calculando para valores pequenos de h. Embora esta maneira seja
h
óbvia, não é muito pouco eficaz por causa do nosso inimigo, erro de arredondamento,
mas é certamente um lugar de começo.
Sendo x0  a , b , com f  C 2 a , b e x1  x0  h para h  0 suficientemente pequeno
para garantir que x1  a , b, tem-se
( x  x 0 )( x  x1 )
f ( x)  P0,1 ( x)  f ( ( x)) 
2!
f ( x 0 )( x  x 0  h) f ( x 0  h)( x  x 0 ) ( x  x 0 )( x  x 0  h)
   f ( ( x)) ,
h h 2
para algum  em [a, b]. Derivando esta função tem-se:
f ( x 0  h)  f ( x 0 )  ( x  x0 )( x  x0  h) 
f ( x)   Dx  f ( ( x))
h  2 
f ( x0  h)  f ( x0 ) 2( x  x0 )  h ( x  x0 )( x  x0  h)
  f ( ( x))   Dx  f ( ( x)) .
h 2 2
f ( x 0  h)  f ( x 0 )
Assim, f ( x)  . Uma dificuldade com esta fórmula é não temos
h
informaçào acerca de Dx f ( ( x)) e assim o erro de truncatura não pode ser estimado.
Porém, quando x  x0 ,
f ( x 0  h)  f ( x 0 ) h
f ( x0 )   f ( ( x)) (4.1)
h 2
Porque Dx  f ( ( x))  0 .
f ( x 0  h)  f ( x 0 )
Para valores pequenos de h, pode ser usado para aproximar f ( x0 )
h
M h
com um erro limitado por , onde M é um limite de f ( ( x)) para x  a , b . Esta
2
fórmula é conhecida como fórmula de diferenças progressivas, se h > 0 e fórmula de
diferenças regressivas se h < 0.

91
Exemplo: f ( x)  ln x e x0  1,8 . A fórmula de diferenças progressivas
f (1,8  h)  f (1,8) hf ( ) h h
é usada para aproximar f (1,8) , com o erro   ,
h 2 2 2 2(1,8) 2
onde 1,8    1,8  h . Os resultados na tabela 4.1 são gerados para h=0,1; 0,01 e 0,001.
1
Uma vez que f ( x)  , o valor exacto de f (1,8) é 0, 5 e os limites de erro são bem
x
próximos do erro actual de aproximação.
Para se obter fórmulas de aproximação de derivadas, supomos que x0 ,  , xn  são (n+1)
números distintos nalgum intervalo I e que f  C n1 ( I ) . Do Teorema 3.3,
n
( x  x0 ) ( x  xn ) ( n1)
f ( x)   f ( xk ) Lk ( x)  f  ( x) , para algum (x) em I, onde
k 0 (n  1)!
Lk (x) denota o k-ésimo polinómio de coeficientes de Lagrange para f em x0 , , xn .
Derivando esta expressão tem-se

 ( x  x0 ) ( x  xn )  ( n1)
 
 ( x)  ( x  x0 )( x  xn ) f ( n1)  ( x) 
n
f ( x)   f ( xk ) Lk ( x)    f
k 0  (n  1)!  (n  1)!
.
De novo, temos um problema de estimar o erro de truncatura, a não ser que x seja um dos

 
números x j da lista. Neste caso, o termo f ( n1)  ( x)  é nulo e a fórmula torna-se
n
f ( n 1)  ( x)  n
f ( x j )   f ( xk ) Lk ( x j )   ( x j  xk ) , (4.2)
k 0 (n  1)! k 0
k j

chamada fórmula de (n+1) pontos para aproximar f ( x j ) . Geralmente, o uso de mais

pontos nesta fórmula gera melhores aproximações, embora o número de cálculos


funcionais e o crescimento dos erros de aproximação desencorage isso de alguma forma.
As fórmulas mais comuns são aquelas que envolvem três e cinco pontos.

Primeiro deduzimos algumas fórmulas úteis de três pontos e consideramos os aspectos


dos seus erros.

( x  x1 )( x  x2 ) 2 x  x1  x2
Uma vez que L0 ( x)  , temos L0 ( x)  . Analogamente,
( x0  x1 )( x0  x2 ) ( x0  x1 )( x0  x2 )
2 x  x0  x 2 2 x  x0  x1
L1 ( x)  e L2 ( x)  . Assim, da equação (4.2), tem-se:
( x1  x0 )( x1  x2 ) ( x2  x0 )( x2  x1 )

92
 2 x j  x1  x 2   2 x j  x0  x 2 
f ( x j )  f ( x0 )    f ( x1 )  
 ( x0  x1 )( x0  x 2 )   ( x1  x0 )( x1  x 2 ) 
(4.3)
 2 x j  x0  x1  1 (3) 2
 f ( x2 )   f ( ) ( x j  x k ),
 ( x 2  x0 )( x 2  x1 )  6 k 0
k j

para cada j = 0, 1, 2, onde a anotação j indica que este ponto depende de xj.

As três fórmulas da equanção (4.3) tornam-se especialmente úteis se os pontos estiverem


igualmente espaçados, isto é, quando x1  x0  h e x2  x0  2h , para algum h  0. Nas

seguintes secções, vamos assumir que que os pontos estão igualmente espaçados.

Usando a equação (4.3), com x j  x0 , x1  x0  h e x2  x0  2h , tem-se

1 3 1  h ( 3)
2
f ( x0 )   f ( x )  2 f ( x )  f ( x )  f ( 0 ) . Fazendo o mesmo para x j  x1
h  2
0 1 2 
2  3
1 1 1  h ( 3)
2
, tem-se f ( x1 )   f ( x0 )  f ( x 2 )  f (1 ) , e para x j  x2 ,
h  2 2  6
1 1 3  h ( 3)
2
f ( x2 )  f ( x )  2 f ( x )  f ( x )  f ( 2 ) . Uma vez que x1  x0  h e
h  2
0 1 2 
2  3
x2  x0  2h , estas fórmulas podem ser expressas também como

1 3 1  h ( 3)
2
f ( x0 )   f ( x )  2 f ( x  h )  f ( x  2 h )  3 f ( 0 ) ,

h  2
0 0 0
2

1 1 1  h ( 3)
2
f ( x0  h)   f ( x )  f ( x  2 h )  6 f (1 ) e

h  2
0 2
2

1 1 3  h ( 3)
2
f ( x2 )  f ( x )  2 f ( x  h )  f ( x  2 h )  3 f ( 2 )

h  2
0 0 0
2

Por uma questão de conveniência, na equação do meio é usada a variável x 0 para

substituir x0  h , mudando, assim, esta fórmula para uma aproximação de f ( x0 ) . Uma

mudança similar ocorre com x 0 para substituir x0  2h na última equação. Isto gera três

fórmulas para aproximar f ( x0 ) :

3
f ( x0 ) 
1
 3 f ( x0 )  4 f ( x0  h)  f ( x0  2h)  h f ( 0 ) ,
2h 3

93
h2
f ( x0 ) 
1
 f ( x0  h)  f ( x0  h)  f (1 ) e
2h 6
h3
f ( x0 ) 
1
 f ( x0  2h)  4 f ( x0  h)  3 f ( x0 )  f ( 2 ) .
2h 3
Finalmente, note-se que a última destas equações pode ser obtida a partir da primeira, por
uma simples substituição de h por –h. Por isso, há apenas duas fórmulas:
3
f ( x0 ) 
1
 3 f ( x0 )  4 f ( x0  h)  f ( x0  2h)  h f ( 0 ) , (4.4)
2h 3

Onde 0 está entre x 0 e x0  2h , e

2
f ( x0 ) 
1
 f ( x0  h)  f ( x0  h)  h f (1 ) (4.5)
2h 6

Onde 1 está entre x0  h e x0  h .

Embora os erros em ambas equações (4.4) e (4.5) sejam O(h2), o erro da equação (4.5) é
aproximadamente metade do erro da equação (4.4). Isto é por causa a equação (4.5) usa
dados de ambos os lados de x 0 e q equação (4.4) usa dados de apenas um lado. Note-se

também que f precisa de ser calculado em dois pontos apenas para a equação (4.5),
enquanto que na equação (4.4) são precisos três pontos. A figura 4.2 faz uma ilustração
da aproximação produzida a partir da equação (4.5). A aproximação através da equação
(4.4) é útil perto das extremidades dos intervalos, uma vez que a informação sobre f pode
não estar disponível fora do intervalo.

Os métodos apresentados nas equações (4.4) e (4.5) são chamadas fórmulas de três
pontos (mesmo que o terceiro ponto f ( x0 ) não apareça na equação (4.5). Da mesma

forma, há fórmulas de cinco pontos, que envolvem o cálculo de valores da função em


mais dois pontos, cujo termo de erro é O(h4). Uma é
4
f ( x0 ) 
1
 f ( x0  2h)  8 f ( x0  h)  8 f ( x0  h)  f ( x0  2h)  h f V (1 ) , (4.6)
12h 30

Onde  está entre x0  2h e x0  2h , cuja dedução encontra-se na secção 4.2. A outra

fórmula de cinco pontos é útil para aproximação de pontos das exptremidades dos

94
intervalos, particularmente no que respeita à interpolação por splines cúbicos fixos, da
secção 3.4 é

h4 v
f ( x0 ) 
1
 25 f ( x0 )  48 f ( x0  h)  36 f ( x0  2h)  16 f ( x0  3h)  3 f ( x0  4h)  f ( 0 ) , (4.7)
12h 5

onde 0 está entre x 0 e x0  4h . Aproximações de pontos da extremidade esquerda são

encontradas usando esta fórmula com h > 0 e de pontos da extremidade direita usando a
mesma fórmula com h < 0.

Exemplo 2: Valores de f ( x)  xe x são dados na tabela 4.2.

x 1,8 1,9 2,0 2,1 1,2


f(x) 10,889365 12,703199 14,778112 17,148957 19,855030
Uma vez que f ( x)  ( x  1) e x , temos f (2,0)  22,167168 . A aproximação de f (2.0)
usando fórmulas de três e de cinco pontos, produz os seguintes resultados:

Fórmulas de três pontos


Usando (4.4) com h  0,1 :
1
 3 f (2,0)  4 f (2,1)  f (2,2)  22,032310 ,
0,2
Usando (4.4) com h  0,1 :
1
 3 f (2,0)  4 f (1,9)  f (1,8)  22,054525 ,
 0,2
Usando (4.5) com h  0,1 :
1
 f (2,1)  f (1,9)  22,228790 ,
0,2
Usando (4,5) com h  0,2 :
1
 f (2,2)  f (1,8)  22,414163 .
0,4
Os erros resultantes da aplicação destas fórmulas são aproximadamente de 1,35  10 1 ,
1,13  10 1 ,  6,16  10 2 e  2,47  10 2 , respectivamente.
Fórmula de cinco pontos
Usando (4.6) com h  0,1 (a única fórmula de cinco pontos aplicável):
1
 f (1,8)  8 f (1,9)  8 f (2,1)  f (2,2)  22,166996 .
1,2
O erro resultante da aplicação desta fórmula é aproximadamente de 1,69  10 4 .
A fórmula de cinco ponto é claramente superior. Note-se também que o erro resultante da
aplicação de (4.5) com h = 0,1 é aproximadamente metade da magnitude do erro
resultante da aplicação de (4.4), tanto com h = 0,1 como com h = –0,1. 

95
Outros métodos podem também ser deduzidos para aproximações de derivadas de ordem
mais elevada de uma função, usando apenas tabela de valores da função em vários
pontos. A dedução é algebricamente tediosa, porém, um procedimento representativo será
dado.

Desenvolv-se uma função f em x 0 usando o polinómio de Taylor do terceito grau e

calcule a função em x0  h e x0  h . Então,

1 1 1
f ( x0  h)  f ( x0 )  f ( x0 ) h  f ( x0 ) h 2  f ( x0 ) h 3  f IV
(1 ) h 4 e
2 6 24
1 1 1
f ( x0  h)  f ( x0 )  f ( x0 ) h  f ( x0 ) h 2  f ( x0 ) h 3  f IV
( 1 ) h 4 , onde
2 6 24
x0  h   1  x0  1  x0  h .

Ao adicionamos estas duas equações, os termos envolvendo potências de f ( x0 ) de

expoente ímpar anulam-se e acabamos tendo

f ( x 0  h)  f ( x 0  h)  f ( x 0 ) 
1
2
f ( x0 ) h 2 
h4
24

f IV
(1 )  f IV
( 1 ) .  Resolvendo-se

esta equação em função de f ( x0 ) tem-se:

f ( x0 ) 
1
h2
 f ( x 0  h )  2 f ( x 0 )  f ( x 0  h )  
h2
24
f  IV
(1 )  f IV

( 1 ) . (4.8)

Suponhamos que f IV
é contúnua em x0  h , x0  h . Uma vez que

1
2
f  IV
(1 )  f IV

( 1 ) está entre  1 e  1 , do Teorema do Valor Intermédio resulta que

existe um número  entre 1 e  1 e ainda em  x0  h , x0  h  , com

f IV
( ) 
1
2

f IV
(1 )  f IV

( 1 ) . Isto permite-nos reescrever a equação (4.8) como

h2
f ( x0 )  2  f ( x0  h)  2 f ( x0 )  f ( x0  h) 
1
f IV
( ) (4.9)
h 12

Para algum , com x0  h    x0  h .

96
Exemplo 3: Conforme os dados fornecidos no Exemplo 2, para f ( x)  xe x , podemos

usar a equação (4.9) para aproximar f (2,0) . Uma vez que f ( x)  ( x  2)e x , o valor
exacto é f (2,0)  29,556224 . Usando (4.9) com h = 0,1 tem-se:

f (2,0) 
1
 f (1,9)  2 f (2,0)  f (2,1)  29,593200 , e usando (4.9) com h = 0,2 tem-
0,01

se f (2,0) 
1
 f (1,8)  2 f (2,0)  f (2,2)  29,704275 .
0,04

Os erros são aproximadamente de  3,70  10 2 e  1,48  10 1 , respectivamente. 

Um assunto particularmente importante no estudo da diferenciação numérica é o efeito


que o erro de aproximação cria na aproximação. Examinemos a equação (4.5),

h2
f ( x0 ) 
1
 f ( x0  h)  f ( x0  h)  f (1 ) ,
2h 6

mais de perto. Suponhamos que ao calcular f ( x0  h) e f ( x0  h) encontramos o erro de


~
aproximação e( x0  h) e e( x0  h) . Então os nossos valores calculados, f ( x0  h) e
~
f ( x0  h) estão relacionados com os valores reais f ( x0  h) e f ( x0  h) através das
~ ~
fórmulas f ( x0  h)  f ( x0  h)  e( x0  h) e f ( x0  h)  f ( x0  h)  e( x0  h) . O erro
~ ~
f ( x0  h)  f ( x0  h) e( x0  h)  e( x0  h) h 2
total de aproximação, f ( x0 )    f (1 ) ,
2h 2h 6
é devido em parte ao erro de aproximação e em parte ao arro de truncatura. Se
assumirmos que os erros de aproximação e( x0  h) estão limitados por algum raio  >0 e

que a terceira derivada de f está limitada por um raio M > 0, então,


~ ~
f ( x 0  h)  f ( x 0  h)  h 2
f ( x0 )    M.
2h h 6

97
h2
Para reduzir o erro de truncatura, M , devemos reduzir h. Mas como h está reduzido,
6

o erro de aproximação cresce. Na prática, então, é pouco vantajoso deixar h ficar
h
demasiadamente pequeno, uma vez que o errod e aproximação irá dominar os cálculos.

Exemplo 3: Considere o uso dos valores da tabela 4.3 para aproximar f (0,900) , onde
f ( x)  sin x . O valor real é cos 0,900  0,62161 .

Tabela 4.3
x 0,800 0,850 0,880 0,890 0,895 0,898 0,899
sin x 0,71736 0,75128 0,77074 0,77707 0,78021 0,78208 0,78270

x 0,901 0,902 0,905 0,910 0,920 0,950 1,000


sin x 0,78395 0,78457 0,78643 0,78950 0,79560 0,81342 0,84147

Usando a fórmula f (0,900) 


1
 f (0,900  h)  f (0,900  h) com valores diferentes
2h
de h, produzem-se as aproximações da tabela 4.4 seguinte:

h 0,001 0,002 0,005 0,010 0,020 0,050 0,100


Aproximação 0,62500 0,62250 0,62200 0,62150 0,62150 0,62140 0,62055
de f (0,900)
Erro 0,00339 0,00089 0,00039 -0,00011 -0,00011 -0,00021 -0,00106
A melhor escolha de h aparece situada entre 0,005 e 0,05. Se fizermos alguma análise ao
 h2
termo do erro e(h)   M , podemos usar o cálculo para verificar que um mínimo de
h 6

3
e ocorre em h  , onde M  max f ( x)  max cos x  cos 0,8  0,028
M x0,800;1, 00 x0,800;1, 00

(veja o Exercício 23 [Burden, 7.th Ed. p.178]).

Uma vez que os valores de f foram produzidos com cinco casas decimais, é razoável
assumir que o erro de aproximação está limitado por um raio do tamanho  = 0,000005.

3 (0,000005 )
Por conseguinte, a escolha óptima de h é de h   0,028 aproximadamente,
0,69671
que é consistente com os resultados da tabela 4.4.

98
Na prática não podemos calcular um h óptimo para usar em aproximações de derivadas,
uma vez que não temos conhecimeto da terceira derivada da função. Mas devemos ficar
alerta que a redução do tamanho dos passos nem sempre irá melhorar a aproximação. 

Exercícios (4.1):
1. Use as fórmulas de diferenças progressivas e regressivas para detrminar cada um dos
valores em falta nas seguintes tabelas.

a) b)

x f(x) f (x) x f(x) f (x)


0.4794
0.5 0.0 0.00000
0.6 0.5646
0.2 0.74140
0.6442
0.7 0.4 1.3718
2. Calcule o erro efectivo e ache as fórmulas dos limites de erro, sabendo que os dados
do exercício 1 foram obtidos a partir das seguintes funções.

a) f ( x)  sin x b) f ( x)  e x  2 x 2  3 x  1
3. Use as fórmulas de três pontos mais correctas para detrminar cada um dos valores em
falta nas seguintes tabelas.

a) b)

x f (x) f (x) x f (x) f (x)

1,1 9,025013 8,1 16,94410


1.2 11,02318 8,3 17,56492
1.3 13,46374 8,5 18,19056
1.4 16,44465 8,7 18,82091

c) d)

x f (x) f (x) x f (x) f (x)

2,9 -4,827866 2,0 3,6887983


3,0 -4,240058 2,1 3,6905701
3,1 -3,496909 2,2 3,6688192
3,2 -2,596792 2,3 3,6245909

99
4. Calcule o erro efectivo e ache as fórmulas dos limites de erro, sabendo que os dados
do exercício 3 foram obtidos a partir das seguintes funções.

a) f ( x)  e 2 x b) f ( x)  x ln x

c) f ( x)  x cos x  x 2 sin x d) f ( x)  2(ln x) 2  3 sin x


5. Use as fórmulas dadas nesta secção para determinar, o mais correctamente possível,
aproximções de cada um dos valores em falta na tabela seguinte.

a) b)

x f (x) f (x) x f (x) f (x)

2,1 -1,709847 -3,0 9,367879


2.2 -1,373823 -2,8 8,233241
2,3 -1,119214 -2,6 7,180350
2,4 -0,9160143 -2,4 6,209329
2,5 -0,7470223 -2,2 5,320305
2,6 -,06015966 -2,0 4,513417
6. Calcule o erro efectivo e ache as fórmulas dos limites de erro, sabendo que os dados
do exercício 5 foram obtidos a partir das seguintes funções.
x
a) f ( x)  tan x b) f ( x)  e 3  x 2
7. Considere a seguinte tabela de dados:

x 0,2 0,4 0,6 0,8 1,0

f (x) 0,9798652 0,9177710 0,8080380 0,6386093 0,3843735

a) Use todas as fórmulas apropriadas dadas nesta secção para aproximar f (0,4) e
f (0,4) .
b) Use todas as fórmulas apropriadas dadas nesta secção para aproximar f (0,6) e
f (0,6) .

8. Seja f ( x)  3xe x  cos x . Use os seguintes dados e a Eq. (4.9) para aproximar
f (1,3) com h = 0,1 e com h = 0,01 e compare os resultados com o valor real de
f (1,3) .
x 1,20 1,29 1,30 1,31 1,40
f (x) 11,59006 13,78176 14,04276 14,30741 16,86187

100
9. Considere a seguinte tabela de dados:
x 0,2 0,4 0,6 0,8 1,0
f (x) 0,9798652 0,9177710 0,8080380 0,6386093 0,3843735
a) Use a Eq. (4.7) para aproximar f (0,2) e f (1,0) .
b) Use Eq. (4.6) para aproximar f (0,6) .
10. No exercício 6 da secção 3.3 foram apresentados dados descrevendo um carro a se
deslocar numa estrada recta. Esse problema pedia para se prever a posição e a
velocidade do carro quando t = 10 s. Use os seguintes tempos e posições para prever a
velocidade (em Km/h) em cada tempo da tabela.

Tempo (s) 0 3 5 8 10 13

Distância (m) 0 225 383 623 742 993

4.2. Extrapolação de Richardson


Extrapolação pode ser usada sempre que se saiba que uma técnica de aproximação tem
um termo de erro com uma forma previsível, que depende de um parâmetro,
normalmente o salto h. Suponhamos que para cada número h  0 temos uma fórmula
N(h) que aproxima um valor desconhecido M e que o erro de truncatura envolvido nessa
aproximação tem a forma

M  N (h)  K1h  K 2 h 2  ... ,

Para alguma colecção de constantes desconhecidas K1, K2, ....

Uma vez que o erro de truncatura é O(h), poderíamos esperar, por exemplo, que

M  N (0.1)  0.1K1 , M  N (0.01)  0.01K1 ,

E, em geral, que M  N (h)  K1h , a não ser que tenha havido uma grande variação da
magnitude entre as constantes K1, K2, ....

O objecto da extrapolação é encontrar um caminho fácil de combinar as aproximações


menos boas numa forma mais apropriada para produzir fórmulas com um erro de
truncatura de maior grau. Suponhamos, por exemplo, que pudéssemos combinar as
fórmulas N(h) de forma a produzirem uma fórmula de aproximação O(h2), Nˆ (h) , para
M, com

101
M  Nˆ (h)  K1h  Kˆ 2 h 2  Kˆ 3 h 3  ... ,

para alguma colecção de constantes Kˆ 1 , Kˆ 2 ,  . Então teríamos

M  N (0.1)  0.01Kˆ 2 , M  N (0.01)  0.0001Kˆ 2 ,

e assim por diante. Se as constantes K1 e K̂ 2 são quase do mesmo tamanho, então as

aproximações Nˆ (h) serão muito melhores do que as correspondentes N (h) . A

extrapolação continua combinando aproximações Nˆ (h) de maneira a se produzirem


fórmulas com erro de truncatura O(h3), e assim por diante.

Para ver especificamente como geramos essas fórmulas de ordem superior, consideremos
a fórmula de aproximação de M na forma

M  N (h)  K1h  K 2 h 2  K 3 h 3  , (4.10)

Uma vez que a fórmula se assume ser válida para todo h > 0, considera-se o resultado
quando se substitui o parâmetro h pela sua metade. Então temos a fórmula

h
2 3
h h h
M  N    K1  K 2  K3  .
2 2 4 8

Subtraindo a equação (4.10) do dobro desta, elimina-se o ramo envolvendo K1 e dá

 h   h2   h3 
M  2 N    N (h)  K 2   h 2   K 3   h 2   
 2   2   4  .
 h  h   h2   h3 
  N     N    N (h)   K 2   h 2   K 3   h 3   
 2  2   2   4 

Para facilitar a discussão, definimos N1 (h)  N (h) e

h  h 
N 2 ( h)  N 1     N 1    N 1 ( h )  .
2  2 

Então temos a fórmula de aproximação de M:

K 2 2 3K 3 3
M  N 2 ( h)  h  h . (4.11)
2 4

Se agora substituímos h por h/2 nesta fórmula teremos

102
h K 3K 3 3
M  N2    2 h2  h  . (4.12)
2 8 32

Isto pode ser combinado com a equação (4.11) para se eliminar o termo de h2.
Especialmente, subtraindo (4.11) do quádruplo da equação (4.12) obtém-se

h 3K 3 3
3M  4 N 2    N 2 (h)  h  ,
2 8

e dividindo por 3 obtém-se uma fórmula de O(h3) para a aproximação de M:

 h 
 N 2    N 2 ( h) 
h 2 3K 3 3
M  N 2     h .
 2 3  8
 
 

h
N 2    N 2 ( h)
Definido N 3 (h)  N 2  h   2 , temos a fórmula de O(h3):
2 3

3K 3 3
M  N 3 ( h)  h  .
8

O processo continua com a construção de uma aproximação de O(h4)

h
N 3    N 3 ( h)
h
N 4 ( h)  N 3     
2
,
2 7

uma aproximação de O(h5)

h
N 4    N 4 ( h)
h 2
N 5 ( h)  N 4    ,
2 15

e assim por diante. Em geral, se M pode ser escrito na forma


m 1
M  N ( h)   K j h j  O ( h m ) , (4.13)
j 1

depois, para cada j = 2, 3, ..., m, temos uma aproximação de O(h j ) na forma

103
h
N j 1    N j 1 (h)
h 2
N j (h)  N j 1    . (4.14)
2 2 j 1  1

Estas aproximações são geradas por linhas na ordem indicada pelo número de valores na
tabela 4.5. Isto é feito para se fazer uso das maiores vantagens das fórmulas de ordem
superior.

O ( h1 ) O( h 2 ) O( h 3 ) O( h 4 )
1: N1 (h)  N (h)
h h
2: N1    N   3: N 2 (h)
2 2
h h h
4: N1    N   5: N 2   6: N 3 (h)
4 4 2
h h h h
7: N1    N   8: N 2   9: N 3   10: N 4 (h)
8 8 4 2
A extrapolação pode ser aplicada sempre que o erro de truncatura para uma fórmula tenha
a forma
m 1

K
j 1
j h  j  O(h  m ) ,

Para uma colecção de constantes Kj e quando 1   2   3     m . No exemplo a

seguir temos  j  2 j .

Exemplo 1: A fórmula de diferenças centradas da equação (4.5) para aproximar f ( x0 )

pode ser expressa com uma fórmula de erro:


2 4
f ( x0 ) 
1
 f ( x0  h)  f ( x0  h)  h f ( x0 )  h f (5) ( x0 )  
2h 6 120

Uma vez que esta fórmula de erro só contém potências de h, a extrapolação é muito mais
eficiente do que foi apresentado no início da discussão. Neste caso, temos a aproximação
O( h 2 )

104
h2 h 4 ( 5)
f ( x0 )  N1 (h)  f ( x0 )  f ( x0 )   , (4.15)
6 120
Onde

N 1 ( h)  N ( h) 
1
 f ( x 0  h)  f ( x 0  h )  .
2h
Substituindo h por h/2 nesta fórmula obtém-se a aproximação
 h  h 
2
h4

f ( x0 )  N1    f ( x0 )  f ( 5) ( x0 )   .
 2  24 1920
Subtraindo-se (4.15) do quádruplo desta equação elimina-se o termo O(h2) que envolve
f ( x0 ) e obtém-se

h h 4 ( 5)
3 f ( x0 )  4 N1    N1 (h)  f ( x0 )   .
2 160
Dividindo por 3 obtém-se uma fórmula O(h4)
h 4 ( 5)
f ( x0 )  N 2 (h)  f ( x0 )   ,
480
h
N 1    N 1 ( h)
Onde N 2 (h)  N1  h    2  .
2 3
Continuando-se com este procedimento obtém-se, para cada j = 2, 3, ..., uma
h
N j 1    N j 1 (h)
h 2
aproximação N j (h)  N j 1    . Note-se que o denominador do
2 4 j 1  1
quociente é 4 j 1  1 e não 2 j 1  1 , porque estamos agora a eliminar potências de h2 em
2
h h2
vez das de h. Uma vez que    , os multiplicadores usados para eliminar as
2 4
potências de h2 são potências de 4 em vez das de 2.
Suponhamos que x0  2,0 , h  0,2 e f ( x)  xe x . Então,

N1 (0,2)  N (0,2) 
1
 f (2,2)  f (1,8)  22,414160 , N1 (0,1)  N (0,1)  22,228786 e
0,4
N1 (0,05)  N (0,05)  22,182564 .
A tabela de extrapolação para este dados é mostrada na tabela 4.6. O valor exacto de
f ( x)  xe x  e x em x0  2,0 , exacto até seis casas decimais, é 22,167168. Assim, todos

105
os dígitos de N 3 (0,2) são exactos, apesar de a aproximação original N1 (0,05) ter apenas

uma casa decimal correcta.

Uma vez que cada coluna depois da primeira na tabela de extrapolação é obtida por um
processo simples de média, a técnica pode produzir aproximaçòes de ordem superior a
um custo mínimo em cálculos. Porém, à medida que k cresce, o erro de aproximação em
N1(h/2k) geralmente irá crescer porque a instabilidade da diferenciação numérica está
relacionada com o tamanho da variação h/2k.

Na secção 4.1 discutimos ambos os métodos de três e de cinco pontos para aproximar
f ( x0 ) , dados vários valores funcionais de f. Os métosdos de três pontos foram
deduzidos pela dirferenciação do polinómio interpolador de Lagrange para f. Os metodos
de cinco pontos podem ser obtidos de forma similar, mas a derivação é tediosa. A
extrapolação pode ser usada para deduzir estas fórmulas de maneira mais fácil.

Suponhamos que desenvolvemos a função f até ao polinómio de Taylor de quarto grau


em x 0 . Então,

1 1 1
f ( x)  f ( x0 )  f ( x0 )( x  x0 )  f ( x0 )( x  x0 ) 2  f ( x0 )( x  x0 ) 3  f IV
( x0 )( x  x0 ) 4
2 6 24
1 V
 f ( )( x  x0 ) 5
120
para algum número  entre x e x0. Calculando f em x0  h e x0  h tem-se
1 1 1 1 V
f ( x0  h)  f ( x0 )  f ( x0 ) h  f ( x0 ) h 2  f ( x0 ) h 3  f IV
( x0 ) h 4  f (1 ) h 5
2 6 24 120
(4.16) e
1 1 1 1 V
f ( x0  h)  f ( x0 )  f ( x0 ) h  f ( x0 ) h 2  f ( x0 ) h 3  f IV
( x0 ) h 4  f ( 2 ) h 5
2 6 24 120
(4.17)
Onde x0  h   2  x0  1  x0  h . Subtraindo a Eq. (4.17) da Eq. (4.16) obtém-se

f ( x0  h)  f ( x0  h)  2h f ( x0 ) 
h3
3
f ( x0 ) 
h5 V
120

f (1 )  f V ( 2 ) .  (4.18)

Se f V é contúnua em x0  h , x0  h , do Teorema do Valor Intermédio resulta que

existe um número  em x0  h ; x0  h , tal que f V ( )  f V (1 )  f V ( 2 ) . Em


~ ~ 1
2
 

106
consequência disso, a Eq. (4.18) pode ser reslvida em ordem a f ( x0 ) para dar a
aproximação de O(h2) seguinte:
2 4
f ( x0 ) 
1
 f ( x0  h)  f ( x0  h)  h f ( x0 )  h f V (~) . (4.19)
2h 6 120

107
Tabela 4.6
N1 (0,2)  22,414160
N1 (0,1)  22,228786 N1 (0,1)  N1 (0,2)
N 2 (0,2)  N1 (0,1)   22,166995
3
N1 (0,05)  22,182564 N (0,05)  N1 (0,1) N 2 (0,1)  N 2 (0,2)
N 2 (0,1)  N1 (0,05)  1  22,167157 N 3 (0,2)  N 2 (0,1)   22,167168
3 15
Embora a aproximação na Eq. (4.19) seja a mesma dada na fórmula de três pontos da Eq. (4.5), o ponto de cálculo desconheciso ocorre
agora em f V em vez de ocorrer em f  . A extrapolação leva vantagem disto atravez da substituição de h na Eq. (4.19) por 2h, para
gerar a fórmula
4h 2 16h 4 V ˆ
f ( x0 ) 
1
 f ( x 0  2 h)  f ( x 0  2 h )   

f ( x0 )  f ( ) (4.20)
4h 6 120
Onde ˆ está entre x0  2h e x0  2h .
Multiplicando a Eq. (4.19) por 4 e subtraindo disso a Eq. (4.20) obtém-se
4
2
 f ( x0  h)  f ( x0  h)  1  f ( x0  2h)  f ( x0  2h)  h f V (~)  2h f V (ˆ) .
3 f ( x0 ) 
h 4h 30 15
Se f V for contínua em x0  2h , x0  2h , um método alternativo pode ser usado para mostrar que f V ( ) e f V (ˆ) podem ser
~

substuídos por um valor comum, f V ( ) . Usando este resultado e dividindo-o por 3 gera-se a fórmula dos cinco pontos
4
f ( x0 ) 
1
 f ( x0  2h)  8 f ( x0  h)  8 f ( x0  h)  f ( x0  2h)  h f V ( ) , que é a fórmula dada como Eq. (4.6). Outras fórmulas
12h 30
para a primeira derivada e outras de ordem superior podem ser deduzidas de maneira similar. Algumas destas são tratadas nos
exercícios.
A técnica de extrapolação é muito usada ao longo desta diasciplina. As aplicações mais proeminentes ocorrem na aproximação de
integrais, na secção 4.5 e na determinação de soluções aproximadas de equações diferenciais, na secção 5.8.

108
Exercícios (4.2):
1. Aplique o processo de extrapolação descrito no Exemplo 1 para determinar N3(h), uma
aproximação de f ( x0 ) , para as seguintes funções e tamanhos dos acréscimos.

a) f ( x)  ln x , x0  1,0 , h  0,4 b) f ( x)  x  e x , x0  0,0 , h  0,4

c) f ( x)  2 x sin x , x0  1,05 , h  0,4 d) f ( x)  x 3 cos x , x0  2,3 , h  0,4


2. Acrescente uma outra linha à tabela de extrapolação do exercício 1 para obter a aproximação
N4(h).
3. Repita o exercício 1 usando a aritmética de arredondamento a 4 dígitos.
4. Repita o exercício 2 usando a aritmética de arredondamento a 4 dígitos.

5. Os seguintes dados fornecem aproximações do integral M   sin x dx .
0

N1 (h)  1,570796 h h h


N1    1,896119 N1    1,974232 N1    1,993570
2 4 8
Assumindo que M  N1 (h)  K1h 2  K 2 h 4  K 3 h 6  K 4 h 8  O(h10 ) , construa uma tabela de
extrapolação para determinar N4(h).
3
2
6. Os seguintes dados podem ser usados para aproximar o integral M   cos x dx
0

N1 (h)  2,356194 h h h


N1    0,4879837 N1    0,8815732 N1    0,9709157
2 4 8
Assuma que existe uma fórmula do tipo da dada no exercício 5 e determinar N4(h).
7. Mostre que a fórmula de cinco pontos na Eq. (4.6) aplicada a f ( x)  xe x em x0  2,0 dá
N2(0,2) na tabela 4.6 quando h = 0,1 e N2(0,1) quando h = 0,05.

109
4.3. Elementos de Integração Numérica
A necessidade muitas vezes ocorre quando se pretende calcular o integral definido de uma
função que não tem uma primitiva explicitam ou cuja primitiva não é fácil de se obter. O método
b
básico envolvido na aproximação de  f ( x) dx chama-se quadratura numérica. Ela usa a soma
a

n b

a
i 0
i f ( xi ) para aproximar  f ( x) dx .
a

Os métodos de quadratura desta seccão são baseados em interpolações polinomiais dadas no


capítulo 3. Primeiro escolhemos um conjunto de pontos distintos x0 , , xn  do intervalo [a, b].
n
Depois integramos o polinómio interpolador de Lagrange Pn ( x)   f ( xi ) Li ( x) e o seu erro de
i 0

truncatura em [a, b] para obter

f ( n 1) ( ( x))
b b n b n

 f ( x) dx    f ( xi ) Li ( x) dx    ( x  xi ) dx
a a i 0 a i 0
(n  1)!
n b
1
  ai f ( xi ) 
(n  1)! a
f ( n 1)
( ( x)) dx
i 0

b
Onde (x) está em [a, b] para qualquer x e ai   Li ( x) dx , para todo i = 0, 1, ..., n.
a

b n
A fórmula de quadratura, por conseguinte, é  f ( x) dx   ai f ( xi ) , com o erro dado por
a i 0

b n
1
E( f )   ( x  xi ) f
(n  1)! a i 0
( n 1)
( ( x)) dx .

Antes de discutir a situação geral das fórmulas de quadraturas, vamos considerar as fórmulas
geradas com auxílio dos polinómios de Lagrange de primeiro e segundo graus, com pontos
igualmente espaçados, que são a regra do trapézio e a regra de Simpson e são introduzidas
normalmente em cursos de cálculo...

Def. 4.1 O grau de exactidão ou precisão de uma fórmula de quadratura é o maior inteiro
positivo n para o qual a fórmula é exacta para xk, com k = 0, 1, ..., n.

110
A definição 4.1 implica que as regras do Trapézio e de Simpson têm graus de precisão um e três,
respectivamente.

Integração e somas são operações lineares, isto é,

b b b

 ( f ( x)   g ( x)) dx    f ( x) dx    g ( x) dx
a a a

e
n n n

 ( f ( xi )   g ( xi ))    f ( xi )    g ( xi ) ,
i 0 i 0 i 0

Para cada par de funções integráveis f e g e cada par de constantes reais  e . Isto implica que
que o grau de precisão de uma fórmula de quadratura é n se e somente se o erro E(P(x)) = 0 para
todos os polinómios P(x) de grau k = 0, 1, ..., n, mas E(P(x))  0 para alguns polinómios de grau
n + 1.

As fórmulas do Trapézio e de Simpson são exemplos de uma classe de métodos conhecida como
fórmulas de Newton-Cotes. Há dois tipos de fórmulas de Newton-Cotes, as abertas e as fechadas.
A fórmula fechada de Newton-Cotes de (n+1) pontos usa xi  x0  ih , para i = 0, 1, ... , n, onde

x0  a , xn  b e h  (b  a) / n . (Vide Figura 4.5) Chama-se fechada porque os pontos das


extremidades de [a, b] estão incluídos nos cálculos. A fórmula assume a forma
b n xn xn n
(x  x j )
 f ( x) dx   ai f ( xi ) , onde ai   Li ( x) dx    (x dx .
a i 0 x0 x0 j 0 i  xj)
j i

Algumas das fórmulas fechadas de Newton-Cotes com os respectivos termos de erro são as
seguintes:

n = 1 (Regra do Trapézio) com x0    x1 :


b x1 3

 f ( x) dx   f ( x) dx 
h
 f ( x0 )  f ( x1 )  h f ( ) . (4.23)
a x0
2 12

n = 2 (Regra de Simpson) com x0    x2 :


b x2 5

 f ( x) dx   f ( x) dx 
h
 f ( x0 )  4 f ( x1 )  f ( x2 )  h f IV ( ) . (4.24)
a x0
3 90

111
n = 3 (Regra Três Oitavos de Simpson), com x0    x3 :
b x3 5

 f ( x) dx   f ( x) dx 
3h
 f ( x0 )  3 f ( x1 )  3 f ( x2 )  f ( x3 )  3h f IV ( ) . (4.25)
a x0
8 80

n = 4 com x0    x3 :
b x3 7

 f ( x) dx   f ( x) dx 
2h
7 f ( x0 )  32 f ( x1 )  12 f ( x2 )  32 f ( x3 )  7 f ( x4 )  8h f VI ( ) . (4.26)
a x0
45 945

As fórmulas abertas de Newton-Cotes usam os pontos xi  x0  ih , para i = 0, 1, ... , n, onde


x0  a  h , xn  b  h e h  (b  a) /( n  2) . Assim, rotulamos os pontos extremos com x1  a e
xn1  b , segundo mostra a Figura 4.6. As fórmulas abertas contém todos os pontos usados para
a aproximação dentro do intervalo ]a, b[...
Algumas das fórmulas abertas de Newton-Cotes com os respectivos termos de erro são as
seguintes:
b x1
h3
n = 0 (Regra do ponto médio): 
a
f ( x) dx   f ( x) dx 2hf ( x0 ) 
x1
3
f ( ) . (4.27)

com x1    x1
b x2 5
n = 1:  f ( x) dx   f ( x) dx 
3h
 f ( x0 )  f ( x1 )  3h f IV
( ) , onde x1    x2 . (4.28)
a x1
2 4
b x3 5
n = 2:  f ( x) dx   f ( x) dx 
4h
2 f ( x0 )  f ( x1 )  2 f ( x 2 )  14h f IV
( ) , com x1    x3 .
a x1
3 45
(4.29)
b x4 5
n = 3:  f ( x) dx   f ( x) dx 
5h
11 f ( x0 )  f ( x1 )  f ( x2 )  11 f ( x3 )  95h f IV
( ) , (4.30)
a x1
24 144

onde x0    x3 .

112
Exercícios (4.3):
1. Aproxime os seguintes integrais usando a regra do Trapézio:
1 0,5 1, 5
2
 x dx 0 x  4 dx x
4 2
a) b) c) ln x dx
0,5 1
1 1, 6 0 , 35
2x 2
x e x 
2 x
d) dx e) dx f) dx
0 1
2
4 0 x 42

 
4 4

 x sin x dx e
3x
g) h) sin 2 x dx
0 0

2. Ache um raio de delimitação do erro no exercício 1, usando a fórmula do erro e compare-o


com o erro efectivo.
3. Repita o exercício 1 usando a regra de Simpson.
4. Repita o exercício 2 usando a regra de Simpson e os resultados do exercício 3.
5. Repita o exercício 1 usando a regra do ponto médio.
6. Repita o exercício 2 usando a regra do pnto médio e os resultados do exercício 5.
2
7. A regra do Trapézio, aplicada a  f ( x) dx
0
dá o valor 4 e a regra de Simpson dá o valor 2.

Qual é o valor de f(1)?


2
8. A regra do Trapézio, aplicada a  f ( x) dx dá o valor 5 e a regra do ponto médio dá o valor 4.
0
Que valor produz a regra de Simpson?
1
9. A fórmula de quadratura  f ( x) dx  c
1
0 f (1)  c1 f (0)  c2 f (1) é exacta para todos os

polinómios de grau igual ou inferior a 2. Determine c0, c1 e c2.


2
10. A fórmula de quadratura  f ( x) dx  c
0
0 f (0)  c1 f (1)  c2 f (2) é exacta para todos os

polinómios de grau igual ou inferior a 2. Determine c0, c1 e c2.


11. Aproxime os seguintes integrais usando as fórmulas de (4.23) e (4.30). As exactidões são
consistentes com as fórmulas de erro? Qual de entre (d) e (e) fornece melhor aproximação?

0 ,1 1, 5
2
 1  x dx
 (sin x) e
x
a) b) 2
dx c) dx
0 0 1,1

10 5, 5 10 1 1
1 1 1
d) 1 x dx e) 1 x dx  5,5 x dx f)  x 3 dx
0

113
4.4 Integração Numérica Composta
As fórmulas de Newton-Cotes geralmente não são exequíveis em intervalos de integração
grandes. São necessárias fórmulas de mais alto grau, cujos coeficientes são difíceis de se obter.
As fórmulas de Newton-Cotes são, também, baseadas em polinómios interpoladores que usam
pontos igualmente espaçados, procedimento incorrecto em intervalos grandes, por causa da
natureza oscilatória dos polinómios de graus mais altos. Nesta secção discutiremos uma
aproximação parcelada da integração numérica que usa fórmulas de Newton-Cotes de ordem
inferior. Estas são as técnicas aplicadas com maior frequência.

4
Consideremos a busca de uma aproximação de  e x dx . A regra de Simpson, com h = 2 dá
0

4
2 0
e dx  (e  4e 2  e 4 )  56,76958
x

0
3

Uma vez que a resposta exacta neste caso é e 4  e 0  53,59815 , o erro –3,17143 é
demasiadamente grande em relação ao que é normalmente aceitável.

Para aplicar uma técnica parcelada para este problema, dividimos [0, 4] em [0, 2] e [2, 4] e
usamos a regra de Simpson duas vezes, com h = 1. Isto dá

4 2 4
1 1 1
e dx   e dx   e x dx  (e 0  4e  e 2 )  (e 2  4e 3  e 4 )  (e 0  4e  2e 2  4e 3  e 4 )  53,863850 .
x x

0 0 2
3 3 3

O erro reduziu para –0,26570. Encorajados pelos nossos resultados, subdividimos os intervalos
[0, 2] e [2, 4] e usamos a regra de Simpson com h = ½, dando
4 1 2 3 4

 e dx   e dx   e dx   e dx   e dx
x x x x x

0 0 1 2 3
1 3 5 7
1 1 1 1
 (e 0  4e  e)  (e  4e  e 2 )  (e 2  4e 2  e 3 )  (e 3  4e 2  e 4 )
2 2
6 6 6 6
1 3 5 7
1
 (e 0  4e 2  2e  4e 2  2e 2  4e 2  2e 3  4e 2  e 4 )  53,61622
6
O erro para esta aproximação é –0,01807.

114
Para generalizar este procedimento, escolhemos um inteiro n. Subdividimos o intervalo [a, b] em
n subintervalos e aplicamos a regra de Simpson em cada para consecutivo de subsintervalos
(vide Figura 4.7). Com h = (b – a)/n e xj = a + jh, para cada j = 0, 1, ..., n, temos

n / 2 x2 j
h 
 
b n/2
h5
 f ( x) dx    f ( x) dx    f ( x2 j 2 )  4 f ( x2 j 1 )  f ( x2 j )  f IV
( j ) ,
a j 1 x2 j  2 j 1  3 90 

Para algum j com x2 j 2   j  x2 j desde que f  C 4 a , b . Usando o facto de que, para cada j

= 1, 2, ..., n/2-1, temos f(x2j) aparecendo no termo correspondente, ao intervalo [x2j–2 , x2j] e
também que o termo correspondente ao intervalo [x2j , x2j+2], podemos reduzir esta soma a

h n / 2 1  h5 n / 2
b n/2

 f ( x) dx  
3
f ( x 0 )  2  f ( x 2j )  4 f ( x 2 j 1 )  f ( x n 
) f IV
( j ) .
a j 1 j 1  90 j 1
h5 n / 2
O erro associado a esta aproximação é E ( f )  f
90 j 1
IV
( j ) , onde x2 j 2   j  x2 j , para cada j

= 1, 2, ..., n/2...
Teorema 4.4 Sejam f  C 4 a , b , n par, h = (b – a)/n e xj = a + jh, para cada j = 0, 1, ..., n.
Então existe um   ]a, b[ para o qual a regra composta de Simpson para n subintervalos pode
ser escrita com o seu termo de erro como

h n / 2 1  ba 4
b n/2

 f ( x) dx   f ( x0 )  2  f ( x2 j )  4 f ( x2 j 1 )  f ( xn )  ( ) . 
IV
h f
a
3 j 1 j 1  180
Teorema 4.5 Sejam f  C 2 a , b , n par, h = (b – a)/n e xj = a + jh, para cada j = 0, 1, ..., n.
Então existe um   ]a, b[ para o qual a regra composta do Trapézio para n subintervalos pode
ser escrita com o seu termo de erro como

h n 1  ba 2
b

 f ( x) dx  
2
f ( a )  2 f ( x j )  f (b)  h f (  ) . 
a j 1  12
Teorema 4.6 Sejam f  C 2 a , b , n par, h = (b – a)/(n+2) e xj = a + (j+1)h, para cada j = 0, 1,
..., n+1. Então existe um   ]a, b[ para o qual a regra composta do Ponto Médio para n + 2
subintervalos pode ser escrita com o seu termo de erro como

ba 2
b n/2

 f ( x) dx  2h f ( x2 j )  h f (  ) . 
a j 0 6

115
Exercícios (4.4):
1. Use a regra do Trapézio composta, com os valores de n indicados, para aproximar os
seguintes integrais:
2 2 2
2
 x ln x dx , n4  x e dx , n4 x n6
3 x
a) b) c) dx ,
1 2 0
2
4
 2 3
x
x n6 e n8 x n8
2
2x
d) cos x dx , e) sin 3x dx , f) dx ,
0 2 1
2
4
5 3
1
g)  dx , n8 8

3 x2  4 h)  tan x dx ,
0
n8

2. Use a regra de Simpson composta, para aproximar os integrais do exercício 1.


3. Use a regra do Ponto Médio composta, para aproximar os integrais do exercício 1.
2

x e
2  x2
4. Aproxime dx , com h = 0,25, usando:
0
a) A regra do Trapézio composta.
b) A regra de Simpson composta.
c) A regra do Ponto Médio composta.
5. Suponha que f (0)  1, f (0,5)  2,5 , f (1)  2 e f (0,25)  f (0,75)   . Ache o valor de
1
, para o qual a regra do Trapézio composta, com n = 4, dá o valor 1,75 para  f ( x) dx .
0

1
6. Na aproximação de  f ( x) dx ,
1
regra do Ponto Médio dá 12, a regra do Ponto Médio

composta, com n = 2, dá 5 e a regra de Simpson dá 6. Use o facto de que f (1)  f (1) e


f (0,5)  f (0,5)  1 para determinar f (1) , f (0,5) , f (0) , f (0,5) e f (1) .

116
4.5. Integração de Romberg
A integração de Romberg usa a regra do Trapézio composta para dar aproximações preliminares
e depois aplica o processo de extrapolação de Richardson para melhorar as aproximações.

Para começar a apresentação do esquema de integração de Romberg, lembremo-nos que a regra


do Trapézio composta para aproximar o integral de uma função f em [a, b], usando m
subintervalos, é

h m 1  ba 2
b

 f ( x) dx  
2
f ( a )  f (b )  2 f ( xi )   h f (  ) ,
a j 1  12

ba
onde a    b , h  e x j  a  jh , para cada j = 0, 1, ..., m.
m

Assim, primeiro obtemos aproximações através da regra do Trapézio composta, com


m1  1, m2  2 , m3  4 ,  e mn  2 n1 , onde n é um inteiro positivo. O tamanho do salto

ba ba
(acréscimo) hk correspondente a mk é hk   k 1 . Com esta anotação, a regra do
mk 2
Trapézio acima torna-se

hk   2 1  b  a 2
b k 1

 f ( x) dx   f (a)  f (b)  2  f (a  ihk )  


 hk f (  k ) , (4.31)
a
2   i 1  12

onde k está em ]a, b[.

Se é introduzida a notação Rk ,1 para designar a porção da Eq. (4.31) usada para a aproximação

trapezoidal, então

R1,1 
h1
 f (a)  f (b)  b  a  f (a)  f (b) ;
2 2

R2,1 
h2
 
 f (a)  f (b)  2 f (a  h2 )  b  a  f (a)  f (b)  2 f  a  b  a   1 R1,1  h1 f (a  h2 ) ;
2 4   2  2

R3,1 
1
2
R2,1  h2  f (a  h3 )  f (a  3h3 );
1 
k 2
2
e, em geral (vide Figura 4.10), Rk ,1   Rk 1,1  hk 1  f (a  (2i  1)hk ) , (4.32)
2 i 1 

117
para cada k = 2, 3, ..., n.
Exemplo 1: Usando a Eq. (4.32) para executar o primeiro passo do esquema de integração de

Ronberg de aproximação de  sin x dx , com n = 6, obtém-se as seguintes equações:
0


R1,1  sin 0  sin    0 ;
2
1 
R2, 1   R1, 1   sin   1,57079633 ;
2 2

1   3 
R3,1   R2, 1   sin  sin   1,89611890 ;
2 2 4 4 

1   3 5 7 
R4 , 1   R3,1   sin  sin  sin  sin   1,97423160 ;
2 4 8 8 8 8 
R5,1 = 1,99357034 e R6,1 = 1,99839336.
Uma vez que o valor correcto para o integral do exemplo 1 é 2, a convergência é lenta. A
extrapolação de Richardson será usada para acelerar a convergência.

Pode mostrar-se, embora não tão facilmente (vide [RR, pp. 136 – 138]), que se f  C  a , b , a
regra do Trapézio composta pode ser escrita com um termo de erro alternativo na forma

b  

 f ( x) dx  Rk ,1   K i hk2i  K1 hk2   K i hk2i , (4.33)


a i 1 i 2

Onde cada Ki é independente de hk e depende só de f ( 2i1) (a) e f ( 2i1) (b) .


Com a regra do Trapézio composta nesta forma, podemos eliminar o termo que envolve hk2 ,
h2
combinando esta equação com a sua contraparte que tem hk substituído por hk 1  , dando
2
 
b
K i hk2i K1hk2  K i hk2i
 f ( x) dx  R k 1, 1   Ki h 2i
k 1   2i   . (4.34)
a i 1 i 1 2 4 i 2 4

Subtraindo Eq. (4.33) do quádruplo da Eq.(4.34) e simplificando obtém-sea fórmula O(hk4 )


b
 Rk 1,1  Rk ,1   K i  hk2i   K  1  4 i 1  2i
 f ( x) dx   Rk 1,1    i 1  hk2i    i  i 1 hk .
a  3  i 2 3 4  i 2 3  4 

118
Mais uma extrapolação pode ser aplicada a esta fórmula para se obter um resultado O(hk6 ) e

Rk ,1  Rk 1,1
assim por diante. Para simplificara anotação definimos Rk , 2  Rk ,1  , para cada k
3
= 2, 3, ..., n, e aplicamos o procedimento da extrapolação de Richardson para esses valores.
Continuando esta anotação, temos, para cada k = 2, 3, ..., n e j = 2, 3, ..., k, uma fórmula de
aproximação O(hk2 j ) definida por

Rk , j 1  Rk 1, j 1
Rk , j  Rk , j 1  (4.35)
4 j 1  1

Os resultados gerados a partir destas fórmulas são mostrados na Tabela 4.9


Tabela 4.9
R1,1

R2,1 R2 , 2

R3,1 R3, 2 R3,3

R4,1 R4 , 2 R4 , 3 R4 , 4

    
Rn ,1 Rn , 2 Rn , 3 Rn , 4  Rn , n

A técnica de Romberg tem a característica desejável e adicional que é de permitir que uma linha
inteiramente nova possa ser calcula e acrescida à tabela através de mais uma aplicação da regra
do Trapézio composta. Depois faz-se uma média dos valores previamente calculados para se
obter os valores seguintes na linha. O método usado para construir uma tabela deste tipo calcula
os valores linha por linha, isto é, na ordem R1,1 , R2,1 , R2, 2 , R3,1 , R3, 2 , R3, 3 , etc.

Algoritmo 4.2 (Romberg) : (Consulte Burden, p. 210)



Exemplo 2 No exemplo 1, os valores de R1,1 a R6,1 foram obtidos para aproximar  sin x dx .
0

Com o Algoritmo 4.2, a tabela de Romberg é mostrada é ilustrada pela tabela 4.10 a seguir.

Embora sejam 21 valores na tabela, apenas os seis da primeira coluna requerem o uso da função
para o seu cálculo, uma vez serem os únicos valores gerados pela técnica de integração. Os
outros valores são obtidos por um processo de mediação.

119
Tabela 4.10
0
1,57079633 2,09439511
1,89611890 2,00455976 1,99857073
1,97423160 2,00026917 1,99998313 2,00000555
1,99357034 2,00001659 1,99999975 2,00000001 1,99999999
1,99839336 2,00000103 2,00000000 2,00000000 2,00000000 2,00000000

Exercícios (4.5):
1. Use a integração de Romberg para calcular R3,3 para os seguintes integrais:
1, 5 1 0 , 35 
2
x x e 
2 2 x
a) ln x dx b) dx c) dx 4
x 4 x
2 2
1 0 0
d) sin x dx
0
 1, 6 3, 5 
2x x
4 f) 1 x 2  4 dx g)  dx 4

 e sin 2 x dx  (cos x)
3x 2
e) 3 x 4
2 h) dx
0 0

2. Calcule R4, 4 para os integrais do Exercício 1.


3. Use a integração de Romberg para aproximar os integrais do Exercício 1 com erro inferior a
10 6 . Calcule a tabela de Romberg até Rn1,n1  Rn,n  10 6 ou n = 10. Compare os seus
resultados com os valores exactos dos respectivos integrais.
4. Aplique a integração de Romberg aos seguintes integrais até que Rn1,n 1 e Rn ,n sejam
exactos até 10 4 :
1


3
a) x dx
0

0,3
b)  f ( x) dx , onde
0

 x 3  1, 0  x  0,1

f ( x)   1,001  0,03( x  0,1)  0,3( x  0,1)  2( x  0,1) , 0,1  x  0,2
2 3

1,009  0,15( x  0,2)  0,9( x  0,2) 2  2( x  0,2) 3 , 0,2  x  0,3



5
5. Use os seguintes dados para aproximar  f ( x) dx o mais correctamente possível.
1

x 1 2 3 4 5
f(x) 2,4142 2,6734 2,8974 3,0976 3,2804

120
1
x2
6. A integração de Romberg foi usada para aproximar  dx . Se R1,1  0,250 e
0 1 x
3

R2, 2  0,2315 , qual é o valor de R2,1 


3
7. A integração de Romberg foi usada para aproximar  f ( x) dx .
2
Se f (2)  0,51342 ,

f (3)  0,36788 e R3,1  0,43687 e R3,3  0,43662 , ache o valor de f (2,5) .


1
1
8. A integração de Romberg para aproximar  f ( x) dx dá R
0
1,1  4 e R2, 2  5 . Ache f   .
2
b
16 16
9. A integração de Romberg para aproximar  f ( x) dx dá
a
R1,1  8 , R2, 2 
3
e R2 , 2 
3
e

208
R3,3  . Ache R3,1 .
45

4.6. Métodos de Quadratura Adaptativa


As fórmulas compostas requerem o uso de pontos igualmente espaçados. Isto não é adequado
quando se integra uma função num intervalo que contém zonas tanto com grande variação como
com pequena variação funcionais. Se o erro de aproximação tem que ser uniformemente
distribuído, um salto mais pequeno será necessário para as zonas de grande variação do que para
as de pequena variação funcional. Uma técnica eficiente para este tipo de problemas deve prever
o número de variações funcionais e adaptar os tamanhos dos saltos para as necessidades de
variação. Estes métodos são chamados métodos de quadratura adaptativa. O método que
discutimos é baseado na regra de Simpson composta, mas a técnica pode modificar-se facilmente
para usar outros procedimentos compostos.

b
Suponhamos que queremos aproximar  f ( x) dx até uma certa tolerância є > 0. O primeiro passo
a

ba
no procedimento é aplicar a regra de Simpson com o salto do tamanho h  (Fig. 4.11).
2
b
h5
 f ( x) dx  S (a, b)  (  ) , para algum  em (a,b),
IV
f
a
90
(4,36)

Onde S (a, b) 
h
 f (a)  4 f (a  h)  f (b).
3

121
O passo a seguir é determinar uma aproximação da exactidão que não requer f(  ) . Para fazer IV

ba h
isto, aplicamos a regra de Simpson Composta com n = 4 e o salto do tamanho h1   ,
4 2
para ter a equação (4.37) seguinte.

h  h ba
4
 h  3h 
b

a f ( x) dx  6  f (a)  4 f  a  2   2 f (a  h)  4 f  a  2   f (b)   2  180 f ( ~) , (4.37)


IV

para algum ~ em (a,b). Para simplificar esta anotação, sejam

 ab h  h  ab  h  3h  
S a ,   f ( a )  4 f  a    f ( a  h)  e S  , b   f (a  h)  4 f  a    f (b) .
 2  6  2   2  6  2 
Então a equação (4.37) pode ser reescrita como

 ab  a  b  1  h  IV ~
b 5

a f ( x) dx  S  a , 2   S  2 , b   16  90  f ( ) .
 (4.38)

A estimativa do erro é deduzida assumindo-se que   ~ ou, mais precisamente, que


f IV ( )  f IV (~) e o sucesso da técnica depende da exactidão desta assumpção. Se for correcta,
então equacionar os integrais nas Eq. (4.36) implica que
 ab  a  b  1  h  IV ~
5
h5
S a ,  + S , b     f (  )  S (a, b)  f IV
( ) ,
 2   2  16  90  90
assim,
h 5 IV 16   ab  a  b 
f (  )   S ( a, b)  S  a,   S , b  .
90 15   2   2 
Usando esta estimativa na Eq. (4.38) produz-se a estimativa do erro.
 ab ab  1  ab ab 
b

 f ( x) dx  S  a,
a
  S
2   2
,b 
 15
S ( a, b )  S  a ,

  S
2   2
,b .

 ab ab 
b
Este resultado significa que S  a ,

  S
2   2
, b  aproxima

 f ( x) dx cerca de 15 vezes
a
melhor do que a exactidão obtida com o valor S (a, b) . Assim, se
 ab ab  1
S ( a , b)  S  a ,   S ,b   , (4.39)
 2   2  15
 ab ab 
b
esperamos ter  f ( x) dx  S  a,
a
  S
2   2
,b  

(4.40)

 ab ab 
e assume-se que S  a ,   S , b  seja uma aproximação suficientemente correcta de
 2   2 
b

 f ( x) dx .
a

122
Exemplo1: Para verificar a exactidão da estimativa do erro dada nas equações (4.39) e (4.40)

2
consideramos a sua aplicação no integral  sin x dx  1 . Neste caso,
0

   
S  0 ,   sin 0  4 sin  sin  
 
 
2 2  1  1.002279878 e
 2 4 4 2  12
         3 
S  0 ,   S  ,   8 sin 0  4 sin  2 sin  4 sin  sin   1.000134585 , Assim,
 4 4 2 3 8 4 8 2
1       
S  0 ,   S  0 ,   S  ,   0.000143020 . Isto está muito perto do erro efectivo de
15  2   4 4 2
aproximação,

2

 sin x dx  1.000134585  0.000134585 , embora sin x  sin x varie significativamente no


IV

 
intervalo 0 ,  .
 2
Quando as aproximações em (4.39) diferem em mais de 15, aplicamos a regra de Simpson de
 a  b a  b 
forma individualizada nos intervalos a , e , b . Depois usamos o procedimento da
 2   2 
estimativa do erro para determinar se a aproximação do integral em cada subintervalo está dentro

da tolerância de . Se sim, adicionamos as aproximações para produzir uma aproximação de
2
b

 f ( x) dx que está dentro da tolerância .


a


Se a aproximação nalgum dos subintervalos falha estar dentro da tolerância , este subintervalo
2
é por sua ves subdividido e o procedicmento é reaplicado nestes dois novos subintervalos, para

determinar se a aproximação em cada subintervalo é correcta dentro da tolerância . Este
4
procedimento de reduzir à metade é repetido até que cada porção esteja dentro da tolerância
desejada. Embora se possa criar problemas para os quais esta tolerância nunca se atinje, é regra
geral que esta técnica seja bem sucedida, porque cada nova subdivisão normalmente aumenta ou
melhora a exactidão da aproximação em 16 vezes, contra as 2 vezes incialmente requeridas pelo
procedimento.
Algoritmo 4.3 (Quadraturas adaptativas) : (Consulte Burden, p. 216)

123
Exercícios (4.5):
 ab ab 
1. Calcule as aproximações de Simpson S (a, b) , S  a ,  e S , b  para os seguintes
 2   2 
integrais e verifique a estimativa dada na fórmula de aproximação.:
1, 5 1 0 , 35 
2
 x ln x dx x e 
2 2 x 4
a) b) dx c) dx
x 4 x
2 2
1 0 0
d) sin x dx
0
 1, 6 3, 5 
2x x
4 f) 1 x 2  4 dx g)  dx 4

e  (cos x)
3x 2
e) sin 2 x dx 3 x 4
2 h) dx
0 0

2. Use a quadraturas adaptativas para achar aproximações correctas até 10 3 para os integrais
do exercício 1. Não use programa de computador para gerar estes resultados.
3. Use a quadraturas adaptativas para achar aproximações dos seguintes integrais, correctas até
10 5 :

 2 x cos 2 x  ( x  2) dx
3 5

e
2x 2
a) sin 3x dx b)
1 0

 4 x cos 2 x  ( x  2) dx
3 5

 e sin 2 x dx
3x 2
c) d)
1 0

4. Use a regra de Simpson Composta com n = 4, 6, 8, …, até que aproximações sucessivas dos
seguintes integrais fiquem correctas até 10 6 . Determine o número de pontos necessário.
Use o algoritmo de quadraturas adaptativas para aproximar o integral com exactidão de até
10 6 e conte o número de pontos. A quadratura adaptativa produz alguma melhoria
   

 x cos x dx  x sin x dx  x cos x dx x


2 2 2 2
a) b) c) d) sin x dx
0 0 0 0

4.7. Quadratura de Gauss


As fórmulas de Newton-Cotes da secção 4.3 foram deduzidas através da integração de
polinómios interpoladores. Uma vez que o termo de erro no polinómio interpolador de grau n
envolve a (n+1)-ésima derivada da função que está sendo aproximada, uma fórmula deste tipo é
exacta quando se aproxima qualquer polinómio de grau igual ou inferior a n.

Todas as fórmulas de Newton-Cotes usam valores da função em pontos igualmente espaçados.


Esta restrição é conveniente quando as fórmulas são combinadas para formar as regras
compostas tratadas na secção 4.4, mas pode baixar significativamente a exactidão da
aproximação. Consideremos, por exemplo, a regra do trapézio aplicada para determinar os
integrais das funções da figura 4.14.

124
A regra do Trapézio aproxima o integral da função integrando à função linear que junta os
pontos das extremidades do gráfico da função. Mas esta não é propriamente a melhor linha para
a aproximação do integral. Linhas do tipo das mostradas na figura 4.15 dão melhores
aproximações na maioria dos casos.

A quadratura de Gauss escolhe pontos para calcular valores da função de forma óptima, em vez
da maneira de espaços iguais. Os pontos x1 , x2 ,, xn do intervalo a , b e os coeficientes

c1 , c2 ,, cn são escolhidos para minimizar o erro esperado da aproximação


b n

 f ( x) dx   ci f ( xi ) . Para medir esta exactidão, assumimos que a melhor escolha destes


a i 1

valores é aquela que produz o resultado exacto com a maior classe de polinómios, isto é, a
escolha que produz a melhor precisão.

Os coeficientes c1 , c2 ,, cn da fórmula de aproximação são arbitrários e os pontos x1 , x2 ,, xn

são restritos apenas pelo facto de que devem situar-se no intervalo de integração a , b . Isto dá-
nos 2n parâmetros para escolher. Se os coeficientes de um polinómio são considerados
parâmetros, a classe de polinómios de grau 2n – 1 no máximo também contém 2n parâmetros.
Esta é, então, a maior classe de polinómios para os quais é razoável esperar que a fórmula seja
exacta. Com a escolha apropriada de valores e constantes pode se conseguir exactidão neste
conjunto.

Para ilustrar o procedimento da escolha dos parâmetros apropriados vamos mostrar como se
seleccionam os coeficientes e os pontos quando n = 2 e o intervalo de integração é  1, 1 .
Depois iremos discutir a situação mais geral para uma escolha arbitrária de pontos e coeficientes
e mostrar como a técnica é modificada quando se intregra num intervalo arbitrário.

Suponhamos que queremos determinar c1 , c2 , x1 e x 2 de maneira que a fórmula de integração


1

 f ( x) dx  c
1
1 f ( x1 )  c 2 f ( x 2 ) dê o resultado exacto sempre que f (x) é um polinómio de grau é

igual ou inferior a 2×2 – 1 = 3, isto é, quando f ( x)  a0  a1 x  a2 x 2  a3 x 3 , para alguma

 (a  a x  a x  a3 x3 ) dx 
2
colecção de constantes a0, a1, a2 e a3 . Porque 0 1 2

a0  dx  a1  x dx  a2  x 2 dx  a3  x 3 dx , isto equivale a mostrar que a fórmula dá resultado

125
exacto quando f (x) é 1, x, x 2 e x 3 . Assim, precisamos de c1 , c2 , x1 e x 2 de maneira que
1 1 1 1
2
c1  c 2   dx  2 , c1 x1  c2 x 2   x dx  0 , c x  c 2 x   x dx  e c1 x13  c 2 x 23   x 3 dx  0
2
1 1
2
2
2

1 1 1
3 1

. Um pouco de álgebra pode mostrar que este sistema de equações tem uma única solução

3 3
c1  c2  1, x1   e x2  , que produz a fórmula de aproximação
3 3
1
 3  3
 f ( x) dx  f 
1

3 
f 
 3
 . Esta fórmula tem o grau de precisão 3, isto é, produz resultados


exactos para qualquer polinómio de grau igual ou inferior a 3.

Esta técnica podia ser usada para determinar os pontos e coeficientes das fórmulas que produzem
resultados exactos para polinómios de grau superior, mas há um método alternativo que os obtém
mais facilmente. Nas secções 8.2 e 8.3 vamos considerar várias colecções de polinómios
ortogonais, funções que têm a propriedade de que um integral definido particular do produto de
quaisquer dois deles é 0. O conjunto relevante para o nosso problema é o dos polinómios de
Legendre, uma colecção P0 ( x) , P1 ( x) , , Pn ( x) , , com as propriedades:

1. Para qualquer n, Pn (x) é um polinómio de grau n.

1
2.  P( x) P ( x) dx  0 sempre que P(x) seja um polinómio de grau inferior a n.
1
n

1
Os primeiros poucos polinómios de Legendre são P0 ( x)  1 , P1 ( x)  x , P2 ( x)  x 2  ,
3
3 6 3
P3 ( x)  x 3  x e P4 ( x)  x 4  x 2  .
5 7 35
Os zeros destes polinómios são distintos, estão no intervalo  1, 1 , são simétricos e, o mais
importante, são a escolha correcta para determinar os parâmetros que resolvem o nosso
problema.

Os pontos x1 , x2 ,, xn necessários para produzir uma fórmula de aproximação do integral que

dá o resultado exacto para qualquer polinómio de grau inferior a 2n são os zeros do polinómio de
Legendre de grau n. Isto é regulado pelo seguinte resultado.

126
Teor. 4.7: Suponhamos que x1 , x2 ,, xn são zeros do polinómio Pn (x) de Legendre de grau n e
1 n x  xj
que para cada i  1, 2, , n , os números c i estão definidos por ci   x
1 j 1 i  xj
dx .
j i

1 n
Se P(x) é qualquer polinómio de grau inferior a 2n, então,  P( x) dx   ci P( xi ) .
1 i 1

As constantes c i necessárias para a regra de quadratura podem ser geradas a partir da equação do
teorema 4.7, mas essas constantes e os zeros dos polinómios de Legendre estão extensivamente
tabelados. A tabela 4.11 lista estes valores para n = 2, 3, 4 e 5. Outros podem ser encontrados em
[StS].

b
Um integral  f ( x) dx num intervalo a , b arbitrário pode ser transformado num integral em
a

 1, 1 usando a mudança de variáveis (vide Fig. 4.16): t  2 x  a  b  x  1 (b  a)t  a  b.


ba 2

Isto permite que a quadratura de Gauss seja aplicada para qualquer intervalo a , b , uma vez que

 (b  a)t  (a  b)  (b  a)
b 1

 f ( x) dx   f 
a 1
2

 2
dt .

(4.42)

Tabela 4.11
n Zeros rn , i Coeficientes c n , i
2 0.5773502692 1.0000000000
-0.5773502692 1.0000000000
3 0.7745966692 0.5555555556
0.0000000000 0.8888888889
-0.7745966692 0.5555555556
4 0.8611363116 0.3478548451
0.3399810436 0.6521451549
-0.3399810436 0.6521451549
-0.8611363116 0.3478548451
5 0.9061798459 0.2369268850
0.5384693101 0.4786286705
0.0000000000 0.5688888889
-0.5384693101 0.4786286705
-0.9061798459 0.2369268850

127
Figura 4.16
1.5

 e dx . A tabela 4.12 lista os


x 2
Exemplo 1: Considere o problema de encontrar aproximações de
1

valores das fórmulas de Newton-Cotes dadas na secção 4.3. O valor exacto para este integral
com exactidão de sete casas decimais é 0.10936.

n 0 1 2 3 4
Fórmulas fechadas 0.1183197 0.1093104 0.1093404 0.1093643
Fórmulas abertas 0.1048057 0.1063473 0.1094116 0.1093971
O procedimento da quadratura de Gauss aplicada neste problema requer que o integral seja
primeiramente transformado num problema cujo intervalo de integração seja  1, 1 . Usando a
equação (4.42) temos

1.5 1
1 (  (t 5) 2 / 16)
 e dx  4 1
x 2
e dt
1

Os valores da tabela 4.11 dão as seguintes aproximações da quadratura de Gauss para este
prroblema:

 
1.5
1 (50.5773502692) 2 / 16
e
 x2
dx   e (50.5773502692) / 16  0.1094003 ;
2
n = 2: e
1
4

n = 3:
1.5
1
1
 x2  ( 5 0.7745966692  ( 5 ) 2 / 16
e dx  [( 0.5555555556) e ) 2 / 16
 ( 0.8888888889) e
4
 (0.5555555556)e (50.7745966692) / 16 ]  0.1093642.
2

Para mais comparações, os valores obtidos usando-se o procedimento de Romberg, com n = 4,


estão listados na tabela 4.13.

Tabela 4.13
0.1183197
0.1115627 0.1093104
0.1099114 0.1093610 0.1093643
0.1095009 0.1093641 0.1093643 0.1093643

Exercícios (4.5):
1. Aproxime os seguintes integrais usando a quadratura de Gauss com n = 2 e compare os seus
resultados com os valores exactos dos integrais.

128
1.5 1

x x e
2 2 x
a) ln x dx b) dx
1 0
0.35 1.6 3.5
2 2x x
c)  x 4
2
dx d) 1 x 2  4 dx e)  x2  4
dx
0 3
 /4  /4  /4

x e  (cos x)
2 3x 2
f) sin x dx g) sin 2 x dx h) dx
0 0 0

2. Repita o exercício 1 com n = 3.


3. Repita o exercício 1 com n = 4.
4. Repita o exercício 1 com n = 5.
5. Determine as constantes a, b, c e d que produzem a seguinte fórmula de quaratura com grau
1
de precisão 3:  f ( x) dx  a f (1)  b f (1)  c f (1)  d f (1) .
1

6. Determine as constantes a, b, c, d e e que produzem a seguinte fórmula de quaratura com


1
grau de precisão 4:
1
 f ( x) dx  a f (1)  b f (0)  c f (1)  d f (1)  ef (1) .
4.8. Integrais Múltiplos
As técnicas discutidas nas secções anteriores podem ser modificadas de uma maneira directa
para uso na aproximação de integrais múltiplos. Considere o integral duplo  f ( x, y )dA , onde
R

R  ( x, y) a  x  b , c  x  d , para algumas constantes a, b, c e d, é uma região rectangular

num plano. Vamos utilizar a regra de Simpson Composta para ilustrar a técnica de aproximação,
embora qualquer outra regra composta pudesse ser usada no seu lugar.

Para se aplicar a regra de Simpson composta, dividimos a região R, particionando tanto [a, b]
como [c, d] num número par de subintervalos. Para simplificar a noção, escolhemos números
pares n e m e particionamos [a, b] e [c, d] com pontos igualmente espaçados x0 , x1 , , xn e

ba
y0 , y1 , , y m respectivamente. Estas subdivisões determinam os tamanhos dos saltos h 
n
d c
e k . Escrevendo o integral duplo como o integral iterado
m
b d
 

R
f ( x, y )da     f ( x, y ) dy  dx , primeiro usamos a regra de Simpson Composta para
ac 

129
d
aproximar  f ( x, y) dy , tratando x como uma constante. Seja
c
y j  c  jk , para cada j = 0, 1, …,

m. Então,

 m
1
m

d  c 4  4 f ( x,  )
d
k 2 2

c f ( x, y) dy  3  f ( x, y0 )  2
j 1
f ( x, y 2 j )  4 f ( x, y 2 j 1 )  f ( x, y m ) 
j 1
 180
k
y 4
, para
 
algum  em (c, d). Assim,
 m
1
m

d  c 4  4 f ( x,  )
b d
k
f ( x, y 0 )  2 f ( x, y 2 j )  4 f ( x, y 2 j 1 )  f ( x, y m ) 
2 2

 f ( x, y ) dy dx 
3 j 1 j 1
 180
k
y 4
A
 
a c

regra de Simpson Composta é utilizada agora para os integrais desta equação. Seja xi  a  ih ,

para cada i = 0, 1, …, n. Então, para cada j = 0, 1, …, m, temos

 n
1
n

  b  a h 4  f ( j , y j )
b 4
h 2 2

a f ( x , y j ) dx 
3
f ( x 0 , y j )  2i 1
f ( x 2i , y j )  4 
i 1
f ( x 2 i 1 , y j )  f ( x n , y )
j 
180 x 4
 
para algum j em (a, b). A aproximação resultante tem a forma

hk  ( n / 2 ) 1

b d n/2

 f ( x, y ) dy dx  
9 
f ( x 0 , y 0 )  2  f ( x 2i , y 0 )  4  f ( x 2i 1 , y 0 )  f ( x n , y 0 )
a c i 1 i 1 
( m / 2) 1 ( m / 2 ) 1 ( n / 2 ) 1 ( m / 2 ) 1 n / 2 ( m / 2 ) 1

 2  f ( x 0 , y 2 j )  2   f ( x 2i , y 2 j )  4   f ( x 2i 1 , y 2 j )   f ( x n , y 2 j 
 j 1 j 1 i 1 j 1 i 1 j 1 
 m / 2 m / 2 ( n / 2 ) 1 m / 2 n / 2 m / 2 
 4  f ( x 0 , y 2 j 1 )  2   f ( x 2i , y 2 j 1 )  4  f ( x 2i 1 , y 2 j 1 )   f ( x n , y 2 j 1 )
 j 1 j 1 i 1 j 1 i 1 j 1 
 ( n / 2 ) 1 n/2

  f ( x 0 , y m )  2  f ( x 2i , y m )  4 f ( x 2i 1 , y m )  f ( x n , y m ) .
 i 1 i 1 

O termo de erro E é dado por


 m
1 4
2  f ( , y )
m
2  f ( , y

 k (b  a)h 4   4 f ( 0 , y 0 )  4 f ( m , y m ) 
4
2 j 1 )
E  2  4  
2j 2j 2j

540  x 4 j 1 x 4 j 1 x 4 x 4 
 
d  c 4  4 f ( x,  )
b
 k  dx.
180 a y 4

130
4 f
Se é contínua, o Teorema do valor Intermédio pode ser repetidamente aplicado para
x 4
mostrar que o cálculo das derivadas parciais em ordem a x pode ser substituído por um valor
comum e que

 k (b  a)h 4  4 f  d  c 4 b  4 f ( x,  )
E 3m ( ,  )  k  dx ,
540  x 4  180 a y 4

4 f
para algum ( ,  )  R . Se é também contínua, do Teorema do valor Médio Ponderado para
y 4
os integrais resulta que

 4 f ( x,  ) 4 f
b

a y 4 dx  (b  a )
y 4
(ˆ, ˆ ) ,

d c
para algum (ˆ, ˆ )  R . Uma vez que m  , o termo de erro tem a forma
k

 k (b  a)h 4  4 f  (d  c)(b  a) 4  4 f
E 3m ( ,  )  k (ˆ, ˆ )
540  x 4  180 y 4
ou
(d  c)(b  a)  4  4 f 4  f
4

E  h ( ,  )  k (ˆ, ˆ ) ,
 x y
4 4
180 
para alguns ( ,  ) e (ˆ, ˆ ) em R.
2 , 0 1, 5
Exemplo 1 A regra de Simpson Composta aplicada para a aproximação de   ln( x  2 y) dy dx ,
1, 4 1, 0

com n = 4 e m = 2 usa os saltos h = 0,15 e k = 0,25. A região de integração R é mostrada na


figura 4.18, juntamente com os pontos (xi , yj), onde i= 0, 1, 2, 3, 4, e j = 0, 1, 2 e os coeficientes
wij de f (xi , yj) = ln(xi + 2yj) na soma. (Figura 4.18)

A aproximação é
2 , 0 1, 5
(0,15)(0,25) 4 2
  ln( x  2 y) dy dx  9

i 0 j 0
wij ln( xi  2 y j )  0,4295524387 .
1, 4 1, 0

131
4 f 6 4 f 96
Uma vez que ( x , y )   e ( x, y )   , e o valor máximo de
x 4
( x  2 y) 4
y 4
( x  2 y) 4
1
em R ocorre em (1,4 ; 1,0), o erro está limitado por
( x  2 y) 4

(0,5)(0,6)  6 96 
E  4
(0,15) ( xmax  (0,25) 4 max 4 
 4,72  10 6 .
180  , y ) em R ( x  2 y) 4 ( x , y ) em R ( x  2 y) 
2 , 0 1, 5
O valor exacto até 10 casas decimais é   ln( x  2 y) dy dx  0,4295545265 ,
1, 4 1, 0
assim, a

aproximação está correcta com um erro inferior a 2,1 10 6 . 


A mesma técnica pode ser aplicada para a aproximação de integrais tríplos, assim como de
ordem ainda superior de funções de mais do que uma variável. O número de cálculos funcionais
necessários para a aproximação é o produto dos números de cálculos funcionais requeridos
quando o método é aplicado a cada variável.

Para reduzir o número de cálculos funcionais há métodos mais eficientes como a quadratura de
Gauss, a integração de Romberg ou quadratura adaptativa que podem ser incorporados no lugar
das fórmulas de Newton-Cotes. O seguinte exemplo ilustra o uso da quadratura de Gauss para o
integral do exemplo 1.

Exemplo 2 Considere o integral duplo dado no exemplo 1. Antes de aplicar a técnica de


quadratura de Gauss para aproximar este integral, transformamos a região de integração
R  ( x, y) 1,4  x  2,0 ; 1,0  y  1,5 em Rˆ  (u, v)  1  u  1 ;  1  v  1. As transformações

2 x  1,4  2,0 2 y  1,0  1,5


lineares que permitem estabelecer esta relação são u  e v , ou
2,0  1,4 1,5  1,0
x  0,3 u  1,7 e y  0,25 v  1,25 , o que é equivalente. Aplicando esta mudança de variáveis
gera-se um integral em que a quadratura de Gauss pode ser aplicada:
2, 0 1, 5 1 1

  ln( x  2 y) dy dx  0,075   ln(0,3u  0,5v  4,2)dvdu .


1, 4 1, 0 1 1

A fórmula de quadratura de Gauss para n = 3 tanto em u quanto em v requer o uso dos pontos
u1  v1  r3, 2  0 , u0  v0  r3,1  0,7745966692 e u 2  v2  r3,3  0,7745966692 .

Os pesos associados são c3, 2  0,8 e c3,1  c3,3  0,5 . Assim,

132
2 , 0 1, 5 3 3

  ln( x  2 y) dy dx  0,075 c3,i c3, j ln(0,3 r3,i  0,5 r3, j  4,2)  0,4295545313 .
1, 4 1, 0 i 1 j 1

Embora este resultado requeira apenas 9 cálculos funcionais, comparadas com as 15 da regra de
Simpson composta usada no exemplo 1, este resultado é correcto até 4,8  10 9 ,

comparativamente à exactidão de 2,1 10 6 conseguida no exemplo 1.

Algoritmo 4.4 (Integral duplo de Simpson)

Algoritmo 4.5 (Integral duplo de Gauss)

Algoritmo 4.6 (Integral triplo de Gauss)

Exercícios (4.8):
1. Calcule as aproximações dos seguintes integrais duplos usando a regra de Simpson
composta com n = m = 4 e compare os resultados com os exactos:

  x 
2 , 5 1, 4 0,5 0,5 2, 2 2 x 1, 5 x

  xy dy dx   e dy dx   ( x  y ) dy dx
yx
a) 2
b) c) 2 3
d) 2
 x dy dx
2 ,1 1, 2 0 0 2 x 1 0

2. Calcule as aproximações dos seguintes integrais duplos usando a regra de Simpson


composta com (i) n = 4, m = 8, (ii) n = 8, m = 4, e (iii) n = m = 6 e compare os resultados
com os exactos:
e x 1 2x 1 2x

  ln xy dy dx   (x  y ) dx dy   (x  y 2 ) dy dx
2 3 3
a) b) c)
1 1 0 x 0 x

 x  x 
d)   cos x dy dx
0 0
e)   cos y dy dx
0 0
f)
4 sin x

 
1
dy dx
0 0 1 y2
3

2 2

  2 y sin x  cos x dy dx   ( y sin x  x cos y) dy dx


4 cos x
g) 2 h)
 0
0 sin x

133
4.9. Integrais Impróprios
Integrais impróprios resultam quando a noção de integração é estendida ou para intervalos de
integração em que a função não está limitada ou para intervalos com um ou mais limites de
integração infinitos. Em qualquer dos casos, os métodos normais de integração devem ser
modificados.

Vamos primeiro considerar a situação em que o integral não é limitado à esquerda. Vamos,
então, mostrar que outros integrais impróprios podem ser reduzidos a problemas desta maneira.

Já foi mostrado no cálculo que o integral impróprio com a singularidade no limite de integração
b
dx
esquerdo,  ( x  a)
a
p
converge se e somente se 0 < p < 1, e, neste caso, define-se

(b  a)1 p
b
dx
a ( x  a) p  1  p .
g ( x)
Se f é uma função que se pode escrever na forma f ( x)  , onde 0 < p < 1 e g é contínua
( x  a) p
b
em [a,b], então o integral impróprio  f ( x) dx
a
também existe. Vamos aproximar este integral

usando a regra de Simpson composta, desde que g  C 5 a, b . Nesse caso, pode se construir o

polinómio de Taylor do quarto grau P4 ( x) , para g em ordem a x0  a

1 1 1
P4 ( x)  g (a)  g (a)( x  a)  g (a)( x  a) 2  g (a)( x  a) 3  g ( 4) (a)( x  a) 4
2 3! 4!
b b
g ( x)  P4 ( x) b
P ( x)
e escrever 
a
f ( x) dx  
a ( x  a) p
dx   4 p dx .
a ( x  a)
(4.45)

Uma vez que P(x) é um polinómio, pode se determinar exactamente o valor de


b 4 b
P4 ( x) g ( k ) (a) 4
g ( k ) (a)
a ( x  a) p dx   
k 0 a k !
( x  a ) k p
dx  
k 0 k ! ( k  1  p )
(b  a) k 1 p . (4.46)

Esta é geralmente a porção dominante da aproximação, especialmente quando o polinómio de


Taylor P4 ( x) quase coincide com g(x) em todo o intervalo [a,b].

134
Para aproximar o integral de f, precisamos de adicionar este valor à aproximação de
b
g ( x)  P4 ( x)
a ( x  a) p dx .
 g ( x )  P4 ( x ) , a  x  b
Para aproximar isto, precisamos primeiro de definir G ( x)   ( x a ) p .
 0 , x  a

Uma vez que 0 < p < 1 e P4( k ) (a) coincide com g ( k ) (a) para k = 0, 1, 2, 3, 4, temos G  C 4 [a, b]
. Isto implica que a regra de Simpson composta pode ser usada para aproximar o integral de G
em [a,b]. Adicionando esta aproximação ao valor da Eq. (4.46) tem-se a aproximação do integral
impróprio de f em [a,b], com uma exactidão da aproximação da regra de Simpson Composta.

Exemplo 1: Vamos usar a regra de Simpson composta com h = 0,25 para aproximar o valor do
1
ex
integral impróprio  dx . Uma vez que o polinómio de Taylor de quarto grau para e x em x =
0 x
x 2 x3 x4
0 é P4 ( x)  1  x    , temos
2 6 24
1
1
P4 ( x)  1 1 1
1
3
1
5
1 2
7
 1 2 3 1 5 1 7 1 2
9

 dx    x 2  x 2  x 2  x 2 
0
2 6
x  dx  lim 2 x 2  x 2  x 3  x 2 
24  a 0 3 5 21
x 
108  a
0 x 
2 1 1 1
 2     2,9235450 .
3 5 21 108

 e  Px4 ( x ) , 0  x  1
x

A tabela 4.14 lista os valores aproximados de G ( x)  



0 , x0

x 0,00 0,25 0,50 0,75 1,00

G(x) 0 0,0000170 0,0004013 0,0026026 0,0099485

Aplicando a regra de Simpson composta com estes dados tem-se


1

 G( x) dx 
0,25
0  4(0,0000170)  2(0,0004013)  4(0,0026026)  0,0099485  0,0017691.
0
3
1
ex
Assim, 
0 x
dx  2,9235450  0,0017691  2,9253141 . Este resultado é correcto com a

exactidão da aproximação pela regra de Simpson composta para a função G. Uma vez que
1 0
G ( 4) ( x)  1 em [0,1], o erro está limitado por (0,25) 4  0,0000217 .
180

Exercícios (4.9):

135
1. Use a regra de Simpson composta e os valores de n dados para aproximar os seguintes
integrais impróprios:
1 1 1 2
 e2x ln x
a) x 4
sin x dx; n  4 b)  5
x2
dx; n  6 c)  ( x  1)
1
1/ 5
dx; n  8
0 0

ex
1 1 1
cos 2 x xe x
d)  1 / 3 dx; n  6
0 x
e) 0 1 x
dx; n  6 f) 
0
3
( x  1) 2
dx; n  6

2. Use a transformação t  x 1 e depois a regra de Simpson composta com os valores de n


dados para aproximar os seguintes integrais impróprios:
 
1 1
a) 1 x 2  9 dx; n  4 b) 1 x
1
4
dx; n  4
 
cos x
 x
4
c) 3
dx; n  6 d) sin x dx; n  6
1 x 1


3. O integral impóprio  f ( x) dx não
0
pode ser convertido num integral com limites de

integração finitos usando-se a transformação t  x 1 porque o limite eme depois a regra de


Simpson composta com os valores de n dados para aproximar os seguintes integrais
impróprios:

136

Você também pode gostar