You are on page 1of 197

Edson Luiz Frana Senne

(elfsenne@feg.unesp.br)
DEPARTAMENTO DE MATEMTICA
Universidade Estadual Paulista - Unesp
Campus de Guaratinguet
Faculdade de Engenharia
2000
ii
C L C U L O N U M R I C O
S U M R I O
Apresentao
Referncias Bibliogrficas
1. Aritmtica Computacional
1.1 - Nmeros de Ponto Flutuante ........................................................................................ 1
1.2 - Sistemas de Ponto Flutuante........................................................................................ 2
1.3 - Aritmtica de Ponto Flutuante....................................................................................... 5
1.4 - Dgitos Significativos Exatos ......................................................................................... 7
1.5 - Mal-Condicionamento e Instabilidade Numrica ........................................................... 9
Exerccios Resolvidos ......................................................................................................... 11
Exerccios Propostos........................................................................................................... 13
Exerccios de Programao ................................................................................................ 14
2. Soluo de Equaes
2.1 - Introduo................................................................................................................... 17
2.2 - Estimativa de Razes de Equaes Polinomiais ......................................................... 18
Enumerao das Razes............................................................................................. 19
Localizao das Razes Reais .................................................................................... 21
Localizao das Razes Complexas............................................................................ 22
2.3 - Separao das Razes................................................................................................ 23
2.4 - Mtodos Iterativos de Soluo de Equaes .............................................................. 25
Ordem de Convergncia de um Mtodo Iterativo........................................................ 26
Mtodos de Quebra .................................................................................................... 26
Mtodos de Ponto Fixo ............................................................................................... 29
Mtodo de Aitken ........................................................................................................ 31
Mtodo de Newton-Raphson....................................................................................... 32
Mtodo das Secantes (ou das Cordas)....................................................................... 35
Mtodo de Mller......................................................................................................... 36
2.5 - Resoluo de Sistemas de Equaes No-Lineares .................................................. 37
Exerccios Resolvidos ......................................................................................................... 40
Exerccios Propostos........................................................................................................... 43
Exerccios de Programao ................................................................................................ 44
3. Soluo de Sistemas de Equaes Lineares
3.1 - Introduo................................................................................................................... 45
Matrizes Especiais ...................................................................................................... 46
3.2 - Mtodos Diretos .......................................................................................................... 47
Mtodo da Eliminao de Gauss ................................................................................ 48
Determinao de Inversa de Matriz............................................................................. 53
Mtodo de Gauss-Jordan............................................................................................ 54
Refinamento Iterativo da Soluo............................................................................... 56
3.3 - Mtodos Iterativos....................................................................................................... 58
iii
Mtodo de Gauss-Jacobi ............................................................................................ 61
Mtodo de Gauss-Seidel............................................................................................. 61
Estudo da Convergncia dos Mtodos Iterativos........................................................ 64
3.4 - Mtodos de Fatorao ................................................................................................ 67
Exerccios Resolvidos ......................................................................................................... 74
Exerccios Propostos........................................................................................................... 78
Exerccios de Programao ................................................................................................ 80
4. Interpolao
4.1 - Introduo................................................................................................................... 81
4.2 - Interpolao Polinomial ............................................................................................... 82
4.3 - Polinmios de Lagrange ............................................................................................. 87
4.4 - O Erro na Interpolao................................................................................................ 89
4.5 - Diferenas Divididas ................................................................................................... 89
4.6 - Diferenas Simples ..................................................................................................... 92
4.7 - Interpolao de Hermite.............................................................................................. 93
4.8 - Interpolao por "Spline"............................................................................................. 97
Exerccios Resolvidos ....................................................................................................... 102
Exerccios Propostos......................................................................................................... 104
Exerccios de Programao .............................................................................................. 105
5. Aproximao de Funes
5.1 - Introduo................................................................................................................. 107
5.2 - Mtodo dos Quadrados Mnimos .............................................................................. 107
5.3 - Aproximao de Funes Contnuas ........................................................................ 112
5.4 - Polinmios Ortogonais .............................................................................................. 117
5.5 - Mtodo dos Quadrados Mnimos Generalizado ........................................................ 124
Exerccios Resolvidos ....................................................................................................... 130
Exerccios Propostos......................................................................................................... 131
Exerccios de Programao .............................................................................................. 132
6. Integrao Numrica
6.1 - Introduo................................................................................................................. 135
6.2 - Mtodos de Newton-Cotes........................................................................................ 137
Regra dos Retngulos .............................................................................................. 137
Regra dos Trapzios................................................................................................. 139
Regra de Simpson .................................................................................................... 140
Frmula Geral das Quadraturas Newtonianas.......................................................... 142
6.3 - Mtodos de Extrapolao ......................................................................................... 146
6.4 - Quadratura de Gauss................................................................................................ 149
6.5 - Quadraturas Adaptativas .......................................................................................... 153
Exerccios Resolvidos ....................................................................................................... 158
Exerccios Propostos......................................................................................................... 160
Exerccios de Programao .............................................................................................. 162
iv
7. Resoluo Numrica de Equaes Diferenciais Ordinrias
7.1 - Introduo................................................................................................................. 165
7.2 - Mtodo de Euler........................................................................................................ 167
7.3 - Mtodos Baseados na Srie de Taylor ..................................................................... 169
7.4 - Mtodos Baseados em Regras de Quadratura......................................................... 171
7.5 - Mtodos de Runge-Kutta .......................................................................................... 173
7.6 - Mtodos de Passo Mltiplo ....................................................................................... 178
Mtodos Explcitos de Passo Mltiplo....................................................................... 179
Mtodos Implcitos de Passo Mltiplo ....................................................................... 180
7.7 - Mtodos de Previso e Correo.............................................................................. 181
7.8 - Mtodo das Diferenas Finitas.................................................................................. 182
Exerccios Resolvidos ....................................................................................................... 185
Exerccios Propostos......................................................................................................... 187
Exerccios de Programao .............................................................................................. 188
v
C L C U L O N U M R I C O
A P R E S E N T A O
Clculo Numrico foi escrito para servir como material de apoio para a segunda
parte da disciplina Computao e Clculo Numrico, oferecida aos alunos da Faculdade de
Engenharia do Campus de Guaratinguet, da Unesp - Universidade Estadual Paulista. Seu
objetivo apresentar os fundamentos do clculo numrico, ilustrando a aplicao dos
mtodos e algoritmos discutidos com programas de computador escritos na linguagem de
programao apresentada na primeira parte da disciplina.
O Captulo 1 discute a aritmtica dos computadores, chamando a ateno para o
fato de que, como os nmeros representados em um computador no obedecem mesma
estrutura algbrica dos nmeros reais (dada a finitude da mquina), a ocorrncia de erros
, por vezes, inevitvel. No Captulo 2 discute-se a busca de razes de equaes no-
lineares, dando especial ateno aos polinmios, para os quais muitos resultados tericos
so conhecidos. No Captulo 3 discute-se a soluo de sistemas de equaes lineares, um
assunto importante porque a soluo de vrias classes de problemas (como visto nos
captulos seguintes) recaem em sistemas lineares. O Captulo 4 discute como aproximar
uma funo, conhecida apenas em alguns pontos discretos, a um polinmio, atravs da
tcnica de interpolao. O assunto do Captulo 5 tambm a aproximao de funes,
mas com o emprego da tcnica dos mnimos quadrados. Neste caso, no se restringe a
discusso ao caso discreto e tampouco s aproximaes polinomiais, podendo a funo de
aproximao ser definida como uma combinao linear qualquer de funes conhecidas.
No Captulo 6 estuda-se o problema de como calcular o valor de integrais definidas, para
funes conhecidas discretamente ou para as quais no possvel, ou no desejvel, a
aplicao de uma forma analtica de resolver o problema. Finalmente, o Captulo 7 discute
a resoluo numrica de equaes diferenciais ordinrias, apresentando diversos mtodos
para a soluo de problemas de valor inicial e de problemas de valor de contorno.
Este volume apresenta ainda, ao final de cada captulo, vrios exerccios resolvidos
e exerccios propostos. Prope tambm exerccios de programao e, neste particular,
recomenda-se a leitura do volume Introduo Programao de Computadores para
rever os conceitos e construes relativas linguagem de programao discutida na
primeira parte dessa disciplina.
ELFS
vi
REFERNCIAS BIBLIOGRFICAS
Cludio, D.M.; Marins, J.M. Clculo Numrico Computacional - Teoria e Prtica. So Paulo,
SP, Atlas, 1994.
Dahlquist, G.; Bjrck, A. Numerical Methods. Englewood Cliffs, NJ, Prentice-Hall, 1974.
Phillips, C.; Cornelius, B. Computational Numerical Methods. New York, NY, John Wiley &
Sons, 1986.
Ralston, A.; Rabinowitz, P. A First Course in Numerical Analysis. Tokyo, Japan, McGraw-
Hill, 1978.
Ruggiero, M.A.G.; Lopes, V.L.R. Clculo Numrico: Aspectos Tericos e Computacionais.
So Paulo, SP, Makron Books, 1998.
Vandergraft, J.S. Introduction to Numerical Computations. New York, NY, Academic Press,
1978.

Clculo Numrico
1. ARITMTICA COMPUTACIONAL



1.1 Nmeros de Ponto Flutuante

Os nmeros representados em um computador no obedecem mesma estrutura algbrica
dos nmeros reais, isto porque a mquina tem recursos finitos. Os nmeros reais
representveis em um computador so denominados nmeros de ponto flutuante.

Um nmero de ponto flutuante representado como: x m b
e
. , onde:

x - nmero de ponto flutuante
m - mantissa
b - base de numerao
e - expoente

Se b m

<
1
1, ento tem-se um nmero de ponto flutuante normalizado.

Exemplo:

a) b = 10 x = 721.5438

Existem vrias formas no normalizadas para representar x como um valor de ponto
flutuante. Por exemplo:

x = 721.5438 x 10
0
ou x = 72.15438 x 10
1
.

Existe, entretanto, apenas uma forma normalizada: x = 0.7215438 x 10
3
.


b) b = 2 x = 1101.01

Neste caso x corresponde ao valor decimal:

25 . 13 2 1 2 0 2 1 2 0 2 1 2 1
2 1 0 1 2 3
= = + + + + + + + + + +



Forma normalizada: x = 0.110101 x 2
4


No computador os valores de ponto flutuante so representados (na base binria) sempre na
forma normalizada.

Representao de Nmeros de Ponto Flutuante

sinal mantissa
expoente
espao de armazenamento (palavra)




Clculo Numrico 1 Aritmtica Computacional


2

Exemplo:

Considere um computador com o seguinte espao de armazenamento:

palavra = 8 bits
espao para mantissa = 4 bits
espao para expoente = 3 bits

ou seja:


s m e

Neste caso, tem-se:

Valores Possveis da
Mantissa
Valores Possveis do
Expoente
Binrio Decimal Binrio Decimal
0.1111 0.9375 000 -4
0.1110 0.8750 001 -3
0.1101 0.8125 010 -2
0.1100 0.7500 011 -1
0.1011 0.6875 100 0
0.1010 0.6250 101 1
0.1001 0.5625 110 2
0.1000 0.5000 111 3

Notar que a representao do expoente corresponde representao binria de: e + 2
1 n
,
onde n o espao disponvel para o expoente. Por exemplo: expoente = -2. Neste caso, a
representao do expoente -2 ser a representao binria de:

-2 + 2
3 1
= -2 + 4 = 2 ou seja: 010

Observe que neste caso:

o maior nmero representvel (em notao decimal) ser: x = 0.9375 x 2
3
= 7.5
o total de nmeros representveis dado por:

2 (+,-) x 8 (mantissas) x 8 (expoentes) + 1 (zero) = 129


1.2 Sistemas de Ponto Flutuante

Um sistema de ponto flutuante corresponde unio de todos os nmeros de ponto flutuante
representveis e escrito como F(b,m,n), onde:

b - base de numerao
m - nmero de dgitos na mantissa
n - nmero de dgitos para a representao do expoente (incluindo o sinal)

Clculo Numrico 1 Aritmtica Computacional


3
No exemplo anterior, o sistema de ponto flutuante pode ser representado por: F(2,4,3).

Dado um sistema de ponto flutuante F(b,m,n) tem-se:

1. Para qualquer mantissa a, b a

<
1
1
2. x F b m n x F b m n ( , , ) ( , , )
3. A cardinalidade de F (total de nmeros representveis) dado por:

2 (b-1).
( ) b
m1

( ) b
n
+ 1
onde:

2 vezes corresponde a positivo e negativo;
(b-1) so os dgitos possveis na primeira posio da mantissa;

( ) b
m1
so os dgitos restantes da mantissa;

( ) b
n
o total de expoentes possveis;
mais 1 corresponde ao valor zero.

Seja, por exemplo, F(2,3,2).

Logo, as mantissas possveis so: 0.100, 0.101, 0.110, 0.111 e os expoentes representveis
so: -2, -1, 0, 1. Neste caso, os nmeros positivos representveis so:

( . ) ( . )
( . ) ( . )
( . ) ( . )
( . ) ( . )
0100 2 000100 0 2 0 2 0 2 1 2 0 2 0 2
1
8
0101 2 0 00101 0 2 0 2 0 2 1 2 0 2 1 2
5
32
0110 2 000110 0 2 0 2 0 2 1 2 1 2 0 2
3
16
0111 2 0 00111
2
2
0 1 2 3 4 5
2
2
0 1 2 3 4 5
2
2
0 1 2 3 4 5
2
2
+ + + + +
+ + + + +
+ + + + +



0 2 0 2 0 2 1 2 1 2 1 2
7
32
0 1 2 3 4 5
+ + + + +



e assim por diante, at:

( . ) ( . ) 0111 2 111 1 2 1 2 1 2
7
4
1
2
0 1 2
+ +



A tabela a seguir resume os nmeros positivos representveis neste sistema de ponto
flutuante:

mantissa
expoente 0.100 0.101 0.110 0.111
-2 1/8 5/32 3/16 7/32
-1 1/4 5/16 3/8 7/16
0 1/2 5/8 3/4 7/8
1 1 5/4 3/2 7/4

Esquematicamente:

Clculo Numrico 1 Aritmtica Computacional


4

0 1/4 1/8
5/32
3/16 5/16 3/8
7/32
7/16 1/2 3/4 5/8 7/8 1 5/4 3/2
regio de
overflow
7/4


Da figura acima pode-se ver que os nmeros de ponto flutuante representveis no esto
uniformemente distribudos no intervalo [-7/4, 7/4]. Nota-se tambm que entre potncias
sucessivas da base, o nmero de valores representveis uma constante, dada por:

c = (b-1)
( ) b
m1
(cardinalidade da mantissa)

No exemplo acima:

entre 2
2
e 2
1
existem 4 valores: 1/8, 5/32, 3/16 e 7/32
entre 2
1
e 2
0
existem 4 valores: 1/4, 5/16, 3/8 e 7/16
entre 2
0
e 2
1
existem 4 valores: 1/2, 5/8, 3/4 e 7/8

Portanto, pode-se definir a densidade de nmeros representveis entre potncias sucessivas
da base como:

densidade =
( )( ) b b
b b
m
k k

1
1
1
, com k = ..., -1, 0, 1, ...


Para o exemplo acima tem-se:

k densidade

-1
4
1 2 1 4
16
/ /


0
4
1 1 2
8


/


1
4
2 1
4



ou seja, a distncia entre dois nmeros de ponto flutuante representveis consecutivos vai
aumentanto. Portanto, ao se comparar nmeros de ponto flutuante prximos (por exemplo,
para verificar a convergncia de um processo iterativo) conveniente comparar a diferena
em relao ao tamanho dos nmeros.

Para ilustrar, considere os seguintes conceitos:

Erro Absoluto:
E x x
A

*
, onde: x o valor verdadeiro e x* o valor aproximado.

Erro Relativo:

E
x x
x
E
x
R
A

*
* *

Clculo Numrico 1 Aritmtica Computacional


5
No caso de nmeros de ponto flutuante, o erro relativo mais significativo do que o erro
absoluto porque, como comentado acima, a comparao de valores de ponto flutuante deve
ser feita em relao ao tamanho dos nmeros. Por exemplo:

a) Um erro absoluto
6
A
10 E = = em um valor
15
10 * x = = significativo?

Neste caso, E
R


10
10
10
6
15
9
, ou seja, um erro de 10
6
numa quantidade de 10
15
no
significativo (pois 10
9
um valor pequeno).


b) Um erro absoluto 00001 . 0 E
A
= = em um valor x* = 0.00005 significativo?

Neste caso, 2 . 0
00005 . 0
00001 . 0
E
R
= = = = , ou seja, o erro da aproximao de 20% e portanto,
significativo.


1.3 Aritmtica de Ponto Flutuante

Algumas leis da aritmtica que valem em R (conjunto dos nmeros reais) no valem para a
aritmtica em F (conjunto dos nmeros de ponto flutuante). Seja, por exemplo, F(2,3,2).

a) x = 5/4 y = 3/8

x + y = 5/4 + 3/8 = 13/8 F (notar que a representao normalizada de 13/8 =
( . ) 01101 2
1
2
x F, porque requer 4 dgitos na mantissa).

b) x = 5/8 y = 3/8 z = 3/4

(x + y) + z =
(( . ) ( . )) ( . ) 0101 2 0110 2 0110 2
0 1 0
x x x + +

= (0.101 + 0.011) + 0.110 = 1.00


+ 0.110 = ( . ) 111
2


x + (y + z) = ( . ) (( . ) ( . )) 0101 2 0110 2 0110 2
0 1 0
x x x + +

= 0.101 + (0.011 + 0.110) =


0.101 + 1.001 = 1.101 =
( . ) 110
2


(observe que os dgitos assinalados acima precisam ser descartados pois no podem ser
representados em F)

Logo: (x + y) + z x + (y + z)

Estes exemplos mostram que na aritmtica de ponto flutuante, quando um nmero, para ser
representado, precisa de mais dgitos na mantissa do que o mximo permitido, preciso fazer
uma aproximao, o que ir resultar em um erro de arredondamento.


Exemplo:

Seja F(2,3,2)
Clculo Numrico 1 Aritmtica Computacional


6

x = 9/8 F pois 9/8 =
( . ) 01001 2
1
2
x
e portanto possui um dgito a mais na mantissa do que o
mximo permitido. Assim,
( . ) 01001 2
1
2
x
precisa ser arredondado para:
( . ) 0100 2 1
1
x
. ou
para: ( . ) 0101 2
5
4
1
x


valor aproximao erro de arredondamento

9/8 = 1.125
1 = 1.00

5/4 = 1.25
1.00 - 1.125 = -0.125 (erro por falta)

1.25 - 1.125 = 0.125 (erro por excesso)


Sejam:

v1, v2 - valores verdadeiros de dois nmeros positivos.
a1, a2 - valores aproximados de v1 e v2, respectivamente.
Ei = | vi ai | - erro absoluto (i = 1,2)
Ri = Ei/ai - erro relativo (i = 1,2)

Ento, tem-se que:
ai - Ei vi ai + Ei (i = 1,2)

a) SOMA

(a1 - E1) + (a2 - E2) v1 + v2 (a1 + E1) + (a2 + E2)
(a1 + a2) - (E1 + E2) v1 + v2 (a1 + a2) + (E1 + E2)
e portanto:
| (v1 + v2) - (a1 + a2) | (E1 + E2)

ou seja: o erro absoluto da soma menor ou igual soma dos erros absolutos das parcelas.

Para o erro relativo tem-se:

r
v v a a
a a
E E
a a
E
a a
E
a a
a
a a
E
a
a
a a
E
a

+ +
+

+
+

+
+
+

+
+
+

( ) ( ) 1 2 1 2
1 2
1 2
1 2
1
1 2
2
1 2
1
1 2
1
1
2
1 2
2
2


Seja
+
a
a a
1
1 2
. Ento: ( )
( )
1 1
1
1 2
1 2 1
1 2
2
1 2

+

+
+

+

a
a a
a a a
a a
a
a a
.

Logo:
r r r + . ( ).
1 2
1


ou seja: o erro relativo da soma menor ou igual a um valor intermedirio entre os erros
relativos das parcelas.


b) SUBTRAO

O maior valor de (v1 - v2) ocorre quando: v1 = a1 + E1 e v2 = a2 - E2. Analogamente, o menor
valor de (v1 - v2) ocorre quando: v1 = a1 - E1 e v2 = a2 + E2. Portanto, pode-se afirmar que:

(a1 - E1) - (a2 + E2) v1 - v2 (a1 + E1) - (a2 - E2)
Clculo Numrico 1 Aritmtica Computacional


7
(a1 - a2) - (E1 + E2) v1 - v2 (a1 - a2) + (E1 + E2)

e portanto:
| (v1 - v2) - (a1 - a2) | (E1 + E2)

ou seja: o erro absoluto da subtrao menor ou igual soma dos erros absolutos das
parcelas.

Para o erro relativo tem-se:

r
v v a a
a a
E E
a a
E
a a
E
a a
a
a a
E
a
a
a a
E
a


( ) ( ) 1 2 1 2
1 2
1 2
1 2
1
1 2
2
1 2
1
1 2
1
1
2
1 2
2
2


Logo: r
a
a a
r
a
a a
r
a a
a a
a
a a
r
a
a a
r
erro relativo da soma


+
+
+

1
]
1
1
1 2
2
1 2
1 2
1 2
1
1 2
2
1 2
1 2 1 2
1 2 44444 3 44444


ou seja: o erro relativo da subtrao igual ao produto de um fator =
a a
a a
1 2
1 2
+

> 1 pelo erro


relativo da soma (que um valor intermedirio entre os erros relativos das parcelas). Alm
disso, quando a1 a2, o fator
a a
a a
1 2
1 2
+

pode ser muito grande. Ou seja, a subtrao de


nmeros muito prximos resulta em um erro relativo muito maior do que os erros relativos das
parcelas. Este fenmeno conhecido como cancelamento subtrativo.


Exerccio: Mostre que as relaes a seguir, so vlidas para as operaes de multiplicao e
diviso.

2. MULTIPLICAO

E a E a E
r r1 r
+
+
1 2 2 1
2


d) DIVISO

E
a
a
E
a
E
a
r r1 r
+
+
1
2
1
1
2
2
2
( )



1.4 Dgitos Significativos Exatos

Os resultados numricos obtidos atravs do computador so, em geral, valores aproximados.
A questo : Qual o valor exato? Esta questo, geralmente, no pode ser respondida, e
dessa forma fica impossvel calcular o valor do erro absoluto e, consequentemente, o valor do
erro relativo. Entretanto, possvel avaliar o resultado, ou seja, saber o quo exato o valor
aproximado.

Seja x um nmero de ponto flutuante normalizado. Define-se o nmero de dgitos significativos
de x como sendo o nmero de dgitos aps o ponto decimal.
Clculo Numrico 1 Aritmtica Computacional


8

Exemplos:

a) 0.00000014 forma normalizada = 0.14 x 10
6
2 dgitos significativos
b) 30457 forma normalizada = 0.30457 x 10
5
5 dgitos significativos
c) 231000 forma normalizada = 0.231 x 10
6
3 dgitos significativos

A questo agora saber: Todos os dgitos significativos so exatos? Para responder a esta
questo tem-se o seguinte teorema:

Teorema. Se o erro relativo de um nmero for menor ou igual a 05 10 .
k
, ento este nmero
possui k dgitos significativos exatos.

Exemplos:

a) v = 2/3 a = 0.6667

E
R

<

2
3
06667
06667
00000499 0 00005 05 10
4
.
.
. . .

Logo: a = 0.6667 tem os 4 dgitos significativos exatos.

b) v = 2/3 a = 0.66998

E
R

<

2
3
066988
066998
000494 0005 05 10
2
.
.
. . .

Logo: a = 0.66998 tem apenas os 2 primeiros dgitos significativos como exatos.

Na prtica, com a impossibilidade de calcular o erro relativo exatamente, o teorema utilizado
para determinar o nmero de dgitos significativos exatos de um valor aproximado obtido
iterativamente, em relao ao valor aproximado disponvel na iterao anterior. Ou seja, o
nmero m de dgitos significativos exatos calculado aproximadamente como:

x x
x
i i
i
m
+


1
05 10 .
ou seja:
log log( . )
log( . ) log
x x
x
m
m
x x
x
i i
i
i i
i
+
+

_
,

_
,

1
1
05
05


1.5 - Mal-Condicionamento e Instabilidade Numrica
Clculo Numrico 1 Aritmtica Computacional


9

Um problema mal-condicionado se, pequenas alteraes nos seus dados (ou parmetros),
resultam em grandes modificaes em sua soluo.

Exemplo. O sistema de equaes

10 7 8 7 32
7 5 6 5 23
8 6 10 9 33
7 5 9 10 31
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
x x x x
x x x x
x x x x
x x x x
+ + +
+ + +
+ + +
+ + +

'



tem como soluo: x1 = x2 = x3 = x4 = 1. Entretanto, se os valores do lado direito das
equaes forem modificados para: 32.1, 22.9, 32.9, 31.1, a soluo do sistema ir se alterar
para:

x1 = 6, x2 = -7.2, x3 = 2.9, x4 = -0.1

Neste caso, pode-se notar que pequenas alteraes no sistema modificaram radicalmente sua
soluo. Este , portanto, um problema mal-condicionado. importante ressaltar que o mal-
condicionamento uma propriedade do problema em si, e no do mtodo numrico usado
para resolv-lo.

Uma outra situao, quando o mtodo numrico usado para resolver o problema leva a
resultados no confiveis. Neste caso diz-se que existe um fenmeno de instabilidade
numrica. Portanto:

mtodo estvel - o erro final de arredondamento pequeno;
mtodo instvel - os erros de arredondamento individuais se propagam com efeito
crescente, comprometendo o resultado final.

Exemplo. Um mtodo iterativo para calcular os valores de:

I
x
x
dx n
n
n

+
>


0
1
0 01 2 ( ; , , ,...)


dado por:

I
I
n
I n
n n
0
1
1
1
12

_
,

ln
( , ,...)



Considere que existe um erro (de arredondamento) no valor
I
0
. Neste caso, as prximas
aproximaes sero:

Clculo Numrico 1 Aritmtica Computacional


10
I I I
I I I
I
n
I
n n
n
1 0 0
2 1 1
2
1
1
1
1
1
1
2
1
2
1
+
+
+




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


Nota-se, portanto, que se > 1, o erro vai crescendo a cada iterao, levando a resultados
absurdos. O mtodo iterativo acima portanto instvel.

Por vezes possvel reformular o mtodo de maneira a evitar a instabilidade numrica. Para o
problema acima, por exemplo, pode-se escrever:

I
n
I n
n n

_
,

1
1 1
2 1

( ..., , )

Como medida que n aumenta, I
n
diminui, para n suficientemente grande (por exemplo: n =
20) pode-se fazer
I
n
0. Assim, se existir um erro no valor
I
20
, tem-se:

I I I
I I I
19 20 20
18 19 19
2
1 1
20
1 1
20
1
1 1
19
1 1 1
19
1
+

_
,

_
,
+
+

_
,

_
,



( )
( )


e assim por diante.

Portanto, com este outro mtodo, o erro vai diminuindo a cada iterao. Logo, este mtodo
iterativo estvel.

Clculo Numrico 1 Aritmtica Computacional


11
EXERCCIOS RESOLVIDOS

1. Um cilindro tem base com raio R = 1.0 t 0.05 e altura H = 2.0 t
E
H
, onde
E
H
o erro
absoluto em H. Com que erro absoluto deve-se determinar H para que o volume do cilindro
V R H
2
seja calculado com erro absoluto menor ou igual a 0.5? Considere = 3.1416
como valor exato.

Soluo:

R = 1.0 t 0.05 E
R
= 0.05
H = 1.2 t
E
H


V R H ( )
2
E E R H E
V
R H
+
2
2
( ) . Mas como
E

0
, E E
V
R H

2
.
Por outro lado, E R E HE
R H
H
R
2 2
2
+ . Mas: E RE RE RE
R
R R R 2
2 +
Logo: E R E H RE
V H R
+ ( ( ))
2
2 . Portanto, se ( ( )) . R E H RE
H R
2
2 05 + ento
E
V
05 .


Assim, deve-se ter:

05 2 31416 10 12 2 10 005
2 2
. ( ( )) . (( . ) ( . )( . . )) + + R E H RE E
H R H
. Portanto:

E
H

05 31416 012
31416
0 04
. . .
.
.


2. Pelo teorema de Taylor pode-se escrever:

f b f a
b a
f a
b a
f a
b a
n
f a
b a
n
f
n
n
n
n
( ) ( )
( )
!
( )
( )
!
( ) ...
( )
!
( )
( )
( )!
( )
( ) ( ) ( ) ( )
+

+

+ +

+

+
+
+
1 2 1
1
2
2
1
1



onde:

f(x) uma funo definida no intervalo [a, b]
f
(i)
(x) a i-sima derivada de f(x)
(a, b)

Fazendo f(x) = e
x
e considerando o intervalo [a, b] como [0, 1], possvel usar o teorema
de Taylor para estimar o valor de e (base do logaritmo natural). Obtenha esta estimativa
para n = 4, trabalhando com 3 casas decimais. Quais os erros cometidos neste processo?
O resultado obtido confivel com quantas casas decimais?

Soluo:

Fazendo f(x) = e
x
e considerando a = 0 e b = 1 tem-se:

e e e e e e
1 0 0
2
0
3
0
4
0
1 0
1
1 0
2
1 0
3
1 0
4
+

+

+

+

!
( )
!
( )
!
( )
!


Clculo Numrico 1 Aritmtica Computacional


12
ou seja: e + + + + + + + + 1 1
1
2
1
6
1
24
1000 1000 0500 0167 0 042 2 709 . . . . . .

Os erros cometidos no processo so:

erro de truncamento, por no considerar o termo
( )
!
1 0
5
5

, para 0 1 < < .


erro de arredondamento, por trabalhar com 3 casas decimais.

Para determinar quantas casas decimais so confiveis necessrio calcular um limitante o
erro relativo correspondente. Para isto, em primeiro lugar deve-se calcular um limitante para o
erro absoluto, ou seja:

E e E
T T
<

<
( )
!
.
1 0
5
0 023
5
1


Logo:
E
E
R
T
< <

2 709
0023
2 709
0008 05 10
1
.
.
.
. .
. Portanto, como o erro relativo menor do que
05 10
1
.

pode-se confiar no resultado at a 1
a.
casa decimal.


3. Considere um sistema de ponto flutuante com base b = 10, espao de armazenamento de
dgitos da mantissa m = 1, e apenas os expoentes -1, 0 e 1. Quantos nmeros de ponto
flutuante podem ser representados neste sistema? Apresente todos os nmeros positivos
representveis neste sistema. Calcule a densidade de nmeros representveis entre
potncias sucessivas da base para este sistema de ponto flutuante. Quais so os
resultados, neste sistema, das seguintes operaes:

a) 7/4 + 3/8
b) 1/60 - 3/5

Soluo:

Os nmeros positivos representveis neste sistema de ponto flutuante podem ser
mostrados na tabela a seguir:


mantissa
expoente 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
-1 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
1 1 2 3 4 5 6 7 8 9

Portanto, podem ser representados neste sistema:

(zero) + (27 nmeros positivos) + (27 nmeros negativos) = 55 nmeros representveis

As densidades de nmeros positivos representveis entre potncias sucessivas da base
so dadas por:

Clculo Numrico 1 Aritmtica Computacional


13
Entre 10
1
e 10
0
existem 9 nmeros representveis


9
10 10
9
1 01
9
09
10
0 1
. .

Entre 10
0
e 10
1
existem 9 nmeros representveis
d


9
10 10
9
10 1
9
9
1
1 0


Para as operaes tem-se:

a)
{ {
7
4
3
8
1666 0375 2 4
7
4
3
8
2
2
0 4
2
+ + + . . .
.
123


b)
1
60
3
5
0 0166 06 058
1
60
3
5
0 6
002 06

. . . .
. .
123 123



EXERCCIOS PROPOSTOS

1. Uma corrente flui atravs de uma resistncia de 10 ohms que tem exatido de 10% (erro
relativo). A corrente medida como 2.0 A com tolerncia de t 0.1 A. Pela lei de Ohm, a
queda de tenso atravs da resistncia o produto da resistncia pela corrente. Quais
so os erros absoluto e relativo na tenso computada?

2. Considere um sistema de ponto flutuante com base b = 10, espao de armazenamento de
dgitos da mantissa m = 4, e com apenas os expoentes -3, -2, -1, 0, 1, 2, 3, 4. Quantos
nmeros de ponto flutuante podem ser representados neste sistema? Considerando x =
0.7237 10
4
, y = 0.2145 10
3
, z = 0.2585 10
1
, quais so os resultados, neste sistema,
das seguintes operaes:

a) x + y - z

b)
x y
z



3. Considere o sistema de ponto flutuante F(2,4,3). Quais so os nmeros positivos
representveis neste sistema? Quais so os resultados, neste sistema, das operaes:

a) 5.4 + 3.8
b) 3.4 + 5.8

4. Seja x
n
n

1
3
1
Mostre que: x x x
n n n


( ) / 3001 1000 3
1 2
. Trabalhando com 6 casas
decimais, gere os valores de x2, x3, x4 e x5 usando esta relao de recorrncia e os
valores iniciais x0 = 3 e x1 = 1. Comente sobre os resultados obtidos.

5. A equao polinomial x x
3
3 2 0 + tem razes x = 1 (raiz dupla) e x = -2. Comeando
com x0 = 0.9, encontre x1, x2, ..., x7 usando a equao de recorrncia:
( )( )
( )
x x
x x
x
n n
n n
n

+
+

_
,

1
1 1
1
1
3
1 2
1
. Compare os resultados obtidos com os resultados
Clculo Numrico 1 Aritmtica Computacional


14
que se obtm quando se usa a equao de recorrncia
( )( )
( )
x x
x x
x
n n
n n
n

+
+

_
,

1
1 1
1
2
3
1 2
1
.

Clculo Numrico 1 Aritmtica Computacional


15
EXERCCIOS DE PROGRAMAO

1. Para demonstrar o efeito de erros de arredondamento considere os seguintes clculos:

H = 1/2
X = 2/3 - H
Y = 3/5 - H
A = (X+X+X) - H
B = (Y+Y+Y+Y+Y) - H
C = B/A

Procure prever o valor de C. Em seguida implemente estes clculos num programa e
verifique o resultado.

2. Para determinar a preciso de um computador em representar nmeros "reais", pode-se
calcular o valor conhecido como Epsilon da Mquina, definido como sendo o maior nmero
E tal que 1 + E = 1. Para o clculo do Epsilon da Mquina pode-se comear com E igual a
1 e dividir o valor de E ao meio at que 1 + E = 1. Implemente um programa para isto.

3. A equao f(x) = x + ln(x) = 0 possui uma raiz x* prxima a x = 0.55. Considere a seguinte
equao de recorrncia:

x
kx e
k
n
n
x
n

+
+



1
1
1


Implemente um programa para encontrar o valor da raiz usando este mtodo iterativo.
Considere como critrio de parada o seguinte:

x x
n n
<
1


para = 10
-5
. Sugira um valor (real) de k de forma a alcanar uma convergncia rpida.
Mostre o valor de k, o nmero de iteraes, o valor de x* obtido e o valor de f(x*).


4. Implementar o mtodo iterativo:

I
I
n
I n
n n
0
1
1
1
12

_
,

ln
( , ,...)



para calcular os valores de: dx
x
x
I
1
0
n
n
+
com > 0 e n = 0, 1, 2, ..., e verificar que
para > 1, o mtodo instvel. Em seguida, implementar o mtodo na forma:

I
n
I n
n n

_
,

1
1 1
2 1

( ..., , )

e, considerando
30
I = 0, verificar que este mtodo iterativo estvel.

17

Clculo Numrico
2. SOLUO DE EQUAES


2.1 - Introduo

Neste captulo estuda-se como encontrar uma ou mais razes da equao f(x) = 0, ou, em
outras palavras, como encontrar os zeros da funo f(x).

Exemplo:

0.5 1 1.5
x
-0.4
-0.2
0.2
0.4
y
raiz isolada
y = f(x)



-0.4
-0.2
1
y
2 4 6 8 10
0.2
0.4
0.6
0.8
x
y = f(x) mltiplas raizes


A soluo de equaes por um mtodo iterativo requer:

uma estimativa inicial para o valor da raiz;
uma equao de recorrncia para a gerao de uma sequncia de valores que, espera-se,
convirja para a raiz.

So ainda importantes para um mtodo iterativo de soluo de equaes:

a) estabelecer sob que condies a sequncia de iteraes converge para a raiz;
b) sabendo-se que a iterao convergente, estabel ecer um critrio de parada para o
processo iterativo, o que ir depender da preciso que se deseja alcanar.

Alm disto, no caso de haver vrios esquemas iterativos, preciso ter uma medida da
eficincia computacional para escolher o melhor.

Neste captulo sero estudados alguns mtodos iterativos de soluo de equaes. Para a
determinao da estimativa inicial para o valor da raiz, pode-se empregar um mtodo grfico.
Exemplo. Estimar o valor de uma raiz positiva de sin x
x
( )
2
= 0.

Atravs do grfico da funo (ver pgina seguinte) pode-se concluir que a raiz [1.5, 2.0].


Este mtodo para estimativa da raiz muito conveniente, principalmente quando se dispe de
ferramentas computacionais para a construo do grfico da funo (como, por exemplo, o
programa Mathematica). Entretanto, para uma classe especial de funes - os polinmios -
muitos resultados so conhecidos e atravs destes resultados pode-se chegar tambm a uma
estimativa para o intervalo que contm uma raiz.

Clculo Numrico 2 Soluo de Equaes

18

0.5 1 1.5 2 2.5 3
x
-0.6
-0.4
-0.2
0.2
y




2.2 Estimativa de Razes de Equaes Polinomiais

Uma equao polinomial da forma:

f x a x a x a x a a x
n
n
n
n
i
i
i
n
( ) ... + + + +

1
1
1 0
0
0

onde n o grau e a
i
(i = 0,1,...,n) so os coeficientes (reais) do polinmio. Uma equao
polinomial do grau n tem n razes (reais ou complexas).
Um polinmio f(x) = a x
i
i
i
n

0
pode ser escrito na forma:

((... (( ) ) . .. ) ) a x a x a x x a x a
n n n
+ + + + +
1 2 1 0


e esta maneira de escrever o polinmio facilita sua avaliao e a de sua derivada f'(x), pois
minimiza o nmero de operaes aritmticas necessrias.

Escrito desta forma, a avaliao de f() pode ser escrita como:

b a
b a b i n n
f a b
n n
i i i

+ +

+
+
1
1 1
0 0
2 3 0

( , ,..., )
( )


Exemplo. Avaliar f(x) = x x x x
5 3 2
6 7 4 + + no ponto = 2. Neste caso, pode-se escrever:


x
5
x
4
x
3
x
2
x
1
x
0

1 0 -6 1 7 -4
= 2 2 4 -4 -6 2
1 2 -2 -3 1 -2
b
4
b
3
b
2
b
1
b
0

f(2)

Teorema. f x x b x f
i
i
i
n
( ) ( ) ( ) +


0


Clculo Numrico 2 Soluo de Equaes

19
Exemplo. Seja f x x x x x ( ) + +
5 3 2
6 7 4 e = 2. Neste caso, pode-se escrever:

f x x x x x x ( ) ( )( ) ( ) + + + 2 2 2 3 1 2
4 3 2



Se uma raiz de f(x) = 0, ento f() = 0. Neste caso, pelo teorema anterior, pode-se
escrever:

f x x b x
i
i
i
n
( ) ( )

0
0
1

e portanto, g x b x
i
i
i
n
( )

0
1
corresponde a um polinmio de grau n-1 (polinmio reduzido).
Assim, pode-se ter o seguinte esquema para resolver f(x) = 0, equao polinomial de grau n:

determinar x = , uma raiz de f(x) = 0;
determinar coeficientes b
i
(i = n-1, n-2, ..., 0);
repetir o processo para g(x) = 0.

Este processo pode ser muito insatisfatrio devido ao efeito acumulativo dos erros introduzidos
a cada vez que f(x) reduzida para g(x).

Avaliao de f'(x):

f x x b x f x g x f
i
i
i
n
( ) ( ) ( ) ( ) ( ) ( ) + +


0

Logo:
f x x g x g x f g ' ( ) ( ) ' ( ) ( ) ' ( ) ( ) +

Exemplo. Seja f x x x x x ( ) + +
5 3 2
6 7 4 e = 2. Neste caso, pode-se escrever:


x
4
x
3
x
2

x 1
1 2 -2 -3 1
= 2 2 8 12 18
1 4 6 9 19
b
3

b
2

b
1

b
0

g(2) = f'(2)


ENUMERAO DAS RAZES

a) Enumerao das Raizes Reais

Teorema (Descartes). O nmero de razes reais positivas de uma equao polinomial p(x)=0
no maior que o nmero de trocas de sinal na sequncia de seus coeficientes no nulos, e
se for menor, ento sempre por um nmero par.

Exemplo. Seja
p x x x x ( ) +
3 2
2 3 5

Sequncia de sinais: + + - - 1 troca. Logo: p(x) tem 1 raiz real positiva.

Clculo Numrico 2 Soluo de Equaes

20
O Teorema de Descartes pode ser usado para enumerar tambm as razes reais negativas,
calculando-se p(-x)
p x x x x ( ) + +
3 2
2 3 5


Sequncia de sinais: - + + -

2 trocas. Logo: p(x) tem 2 ou 0 raizes reais negativas (se


tiver 0 razes reais negativas, ter 2 razes complexas).


b) Enumerao das Raizes Complexas

Teorema (Huat). Dada uma equao polinomial p(x)=0 de grau n, se para algum k (1 k n)
tem-se:
a a a
k
k k
2
1 1

+
.

ento p(x) = 0 ter razes complexas.

Exemplos:

a)
p x x x x x x ( ) + + + + 2 3 2 5 3
5 4 3 2


Descartes:
p(x) + + + + + 2 trocas
p(-x) + + + + 3 trocas

Portanto, os seguintes casos so possveis:

Raizes
Reais
Positivas
Reais
Negativas

Complexas

Total
0 1 4 5
0 3 2 5
2 1 2 5
2 3 0 5

Mas, pelo teorema de Huat:

a
a a a a
a
2
3 3
2
2 4
4
2
1 1 6
3



ou seja, p(x) possui raizes complexas, o que descarta a ltima linha da tabela acima.


b) p x x x x x x ( ) + + 2 3 2 1
6 5 3 2


Descartes:
p(x) + + + 4 trocas
p(-x) + + + + + + 0 trocas

Huat:
Clculo Numrico 2 Soluo de Equaes

21
a
a a a a
a
3
4 4
2
3 5
5
2
0 0 6
3





ou seja, p(x) possui raizes complexas. Portanto, as possibilidades so as seguintes:

Raizes
Reais
Positivas

Complexas

Total
0 6 6
2 4 6
4 2 6


LOCALIZAO DAS RAZES REAIS

Para dar incio a um processo iterativo preciso uma estimativa para a raiz. Para isto
necessrio conhecer onde as razes esto localizadas.

localizao das razes reais: determinao dos limites a (inferior) e b (superior) de um
intervalo que contenha todas as razes.
localizao das razes complexas: determinao dos raios a (interno) e b (externo) de um
anel que contenha as razes complexas.

Regio das Razes Reais

a b


Regio das Razes Complexas

b
a



Teorema (Laguerre). Dado um polinmio p(x) e um nmero , seja:

p(x) = (x - )q(x) + R

Se os coeficientes de q(x) e R forem todos positivos ou nulos, ento as razes reais positivas
x
i
de p(x) so tais que x
i
< .

Exemplo: p x x x x x x ( ) + +
5 4 3 2
9 20 12

Localizao das razes reais positivas de p(x) = 0

1 1 -9 -1 20 -12
= 1 1 2
1 2 -7
Clculo Numrico 2 Soluo de Equaes

22

1 1 -9 -1 20 -12

= 2 2 6
1 3 -3

1 1 -9 -1 20 -12
= 3 3 12 9 24 132
1 4 3 8 44 120

Logo, pelo teorema de Laguerre, todas as razes reais positivas de p(x) = 0 so menores que
3, ou seja, 3 um limite superior do intervalo das raizes.


Localizao das razes reais negativas

Basta considerar o polinmio p x x x x x x ( ) + +
5 4 3 2
9 20 12. Multiplicando-se por
1 (para que o coeficiente do termo de maior grau seja positivo), tem-se:

1 -1 -9 1 20 12
= 1 1 0
1 0 -9
1 -1 -9 1 20 12
= 2 2 2
1 1 -7

1 -1 -9 1 20 12
= 3 3 6
1 2 -3

1 -1 -9 1 20 12
= 4 4 12 12 52 288
1 3 3 13 72 300

Logo: todas as razes reais negativas de p(x) = 0 so maiores que -4, ou seja, -4 um limite
inferior para as raizes reais.

Portanto, as razes reais de p(x) = 0 pertencem ao intervalo [-4, 3].


LOCALIZAO DAS RAZES COMPLEXAS

Teorema (Kojima). Dado o polinmio
p x a x a x a x a
n
n
n
n
( ) ... + + + +


1
1
1 0
, toda raiz , real
ou complexa, de p(x) = 0 tal que:
| | q1 + q2, onde q1 e q2 so os dois maiores valores de:
a
a
i
n
n i
1

'

(i = n-1, ..., 0)

Exemplo: p x x x x x x ( ) + +
5 4 3 2
9 20 12

Neste caso tem-se:
Clculo Numrico 2 Soluo de Equaes

23
1
1
9
1
1
1
20
1
12
1
1 9 1 20 12
1
1
1
2
1
3
1
4
1
5
1
2
1
4
1
5
, , , , , , , ,

'

'

{1, 3, 1, 2.1147, 1.6437}



Logo: q1 = 3 e q2 = 2.1147. Portanto, toda raiz

de p(x) tal que: |

5.1147. Desta forma,


b = 5.1147 corresponde cota superior da regio que contm as razes. Para determinar a
cota inferior basta considerar o polinmio:

p
x
x x x x
x
1 1 1 9 1 20
12
5 4 3 2

_
,

+ +


Multiplicando por x
5
tem-se:

p
x
x x x x x x x x x x
1
1 9 20 12 12 20 9 1
2 3 4 5 5 4 3 2

_
,
+ + + + +
Assim, tem-se:

20
12
1
12
9
12
1
12
1
12
1
1
1
2
1
3
1
4
1
5

'

, , , , = {1.6667, 0.2886, 0.9085, 0.5372, 0.6083}


ou seja: q1 = 1.6667 e q2 = 0.9085. Portanto a = 1/(1.6667 + 0.9085) = 0.3883. Ento, as
razes (reais ou complexas) de
p x x x x x x ( ) + +
5 4 3 2
9 20 12
so tais que:

0.3883 | | 5.1147


2.3 Separao das Razes

A separao das razes de uma equao corresponde a encontrar uma sequncia de
subintervalos tais que:

cada subintervalo contm exatamente uma raiz real;
cada raiz real est contida em um subintervalo.

Teorema (Bolzano). Se f(x) uma funo contnua num intervalo [a, b] e trocar de sinal nos
extremos deste intervalo, ento existe pelo menos uma raiz real de f(x) = 0 no intervalo [a, b].

Exemplos:

x
y = f(x) f(a)
a
b
f(b)



x
y = f(x)
a
b
f(a)
f(b)



Clculo Numrico 2 Soluo de Equaes

24
Teorema de Bolzano no se aplica: funo descontnua

x
y
a
b



Teorema (Budan). Seja p(x) um polinmio de grau n e
p
k ( )
( )
, o valor da derivada de ordem
k de p(x), calculada para x = . Seja V

o nmero de variaes de sinal da sequncia:



p(), p'(), p"(), ..., p
n ( )
( )

Ento, o nmero de razes de p(x) = 0 no intervalo (a, b) igual ou menor que V V
a b
por
um mltiplo de 2.

Exemplo:
p x x x x ( ) +
3 2
2 2


Descartes: + - - + 2 ou 0 razes reais positivas.
Laguerre:
1 -2 -1 2
1 1
1 -1

1 -2 -1 2
2 1
1 0 -1

1 -2 -1 2
3 3 3 6
1 1 2 8

Portanto: cota superior = 3. Seja o intervalo (0,3).

Derivadas de p(x):
p x x x
p x x
p x
' ( )
"( )
' "( )

3 4 1
6 4
6
2

Ento:
Clculo Numrico 2 Soluo de Equaes

25
p(0) = 2
p'(0) = -1
p"(0) = -4
p'"(0) = 6
p(3) = 8
p'(3) = 14
p"(3) = 14
p'"(3) = 6

Portanto: V V V V
0 3 0 3
2 0 2 . Logo tem-se 2 ou 0 razes reais em (0, 3).

Bisseccionando o intervalo (0, 3) nos intervalos (0, 1.5) e (1.5, 3) e calculando V
15 .
tem-se que
V
15 .
= 1. Pode-se concluir, ento, que os intervalos (0, 1.5) e (1.5, 3) contm, cada um, uma
raiz real.

Assim, para separar as razes pelo teorema de Budan, deve-se conseguir um intervalo (a, b) tal
que V V
a b
= 1.

Exerccio: Separar as raizes de
p x x x x ( ) + +
3 2
9 20 1


importante ressaltar que nesta seo os resultados apresentados se aplicam apenas a
equaes polinomiais. Para funes transcendentes, como comentado anteriormente,
necessrio uma avaliao grfica da funo.

Exemplo: f x e x
x
( )

0

Avaliao Grfica:
1 2
x
y
y = exp(x)
y = x
1
0


Raiz [0, 1]



2.4 Mtodos Iterativos de Soluo de Equaes

Um mtodo iterativo de soluo de equaes requer:

uma estimativa inicial para a raiz (o que pode ser obtida pelo estudo de separao de
razes);

uma frmula de recorrncia, que calcula uma estimativa melhor com base em estimativas
conhecidas;
um critrio de parada;
uma estimativa do erro cometido (preciso do resultado).

Existem quatro maneiras bsicas para estabelecer o critrio de parada de um mtodo iterativo:

Clculo Numrico 2 Soluo de Equaes

26
x x
x
f x
m x x k
i L
i i
i
i
i i
+
+

<
<

>
1
1

( )
( , )

onde:

k
L
tolerncia de erro
nmero de dgitos significativos exatos requeridos
nmero mximo de iteraes

Em geral, o critrio de parada combina um ou mais destes critrios bsicos.


ORDEM DE CONVERGNCIA DE UM MTODO ITERATIVO

Definio. Uma sequncia
x x x
0 1 2
, , ,...
converge para x*, se dado > 0, existe um inteiro I
tal que, qualquer que seja i > I, x x
i
< * . Neste caso, tem-se que:

lim *
i
i
x x



Definio. Seja uma sequncia x x x
0 1 2
, , , ... que converge para x*. Seja e x x
i i
* . Se
existe um nmero > 1 e uma constante 0 tais que:
lim
i
i
i
e
e


, ento
denominado ordem de convergncia e conhecida como constante assinttica de erro.
Quanto maior for o nmero , mais rpida ser a convergncia do mtodo iterativo. Quanto
menor for a constante , mais preciso ser o resultado obtido pelo mtodo.


MTODOS DE QUEBRA

Os mtodos de quebra para soluo de equaes partem de um intervalo [a, b] que contenha
uma raiz e reduz este intervalo a intervalos cada vez menores. Estes tipos de mtodos so
intuitivos geometricamente, mas convergem lentamente. Os principais mtodos de quebra so:
o mtodo da bisseco e o mtodo da falsa-posio.

a) MTODO DA BISSECO

Seja a equao f(x) = 0 e o intervalo [a, b], que contm uma raiz de f(x).

Algoritmo:

1. m = (a + b)/2
2. se f(m) 0 ento:
se f(a)f(m) < 0 ento fazer b = m
caso contrrio, fazer a = m
3. repetir os passos 1 e 2 at satisfazer o critrio de parada.

Clculo Numrico 2 Soluo de Equaes

27
Ilustrao Grfica:
x
y
a
b
m1
m2



Problemas do Mtodo da Bisseco:

pode ser difcil encontrar um intervalo [a, b] tal que f(a) f(b) < 0;
erros de arredondamento podem levar a um intervalo que efetivamente no contm uma
raiz.


Pode-se determinar a ordem de convergncia e a constante assinttica de erro do mtodo da
bisseco. Seja x* uma raiz de f(x) = 0 e seja e x x
i i
* . Como x
x x
i
i i
+

+
1
1
2
, onde
f x f x
i i
( ). ( )

<
1
0 tem-se:

e x x
x x
x
x x x
x x x x e
i i
i i i i
i i i + +


+

+
+
1 1
1 1
1
2
2
2
1
2
1
2
* *
*
( *) ( *)

Logo:
e
e
i
i
+

1
1
2
e, consequentemente: lim
i
i
i
e
e
+

1
1
1
2


Portanto, para o mtodo da bisseco tem-se:


= 1, ou seja, o mtodo possui convergncia linear;
= 1/2, ou seja, a cada iterao o erro reduz-se metade.

Pode-se tambm determinar o nmero de dgitos significativos exatos obtidos por iterao de
um mtodo. Por exemplo, para o mtodo da bisseco tem-se:

m x x m x x
x x
x
x x
x
x x
x
x x
x
i i i i
i i
i
i i
i
i i
i
i i
i
( , ) ( , )
log( . ) log log( . ) log
log log
+
+
+

+
+


_
,
+

_
,

_
,

_
,

1 1
1
1
1
1 1
1
05 05

Fazendo: r x
x x
x
i
i i
i
( )

1
, tem-se: m x x m x x
r x
r x
i i i i
i
i
( , ) ( , ) log
( )
( )
+
+

_
,

1 1
1


Clculo Numrico 2 Soluo de Equaes

28
Como:
e
e
i
i
+

1
1
2
tem-se que:
m x x m x x
i i i i
( , ) ( , ) log( ) .
+

1 1
2 033


Portanto, no mtodo da bisseco, consegue-se cerca de um dgito significativo exato a cada 3
iteraes.


b) MTODO DA FALSA-POSIO

A idia do mtodo da falsa-posio , ao invs de particionar o intervalo [a, b] ao meio a cada
iterao, particionar na interseo da reta que une os pontos (a, f(a)) e (b, f(b)) com o eixo x.

Graficamente:
x
y
a
b m
f(a)
f(b)



Neste caso, o ponto de quebra (por congruncia de tringulos) pode ser escrito como:

b a
f b f a
b m
f b
m b
f b b a
f b f a



( ) ( ) ( )
( )( )
( ) ( ) 0


Assim, dada uma equao f(x) = 0 e um intervalo [a, b] que contm uma raiz de f(x), pode-se
escrever o algoritmo do mtodo da falsa-posio como:

Algoritmo:

1. m b
f b b a
f b f a

( )( )
( ) ( )

2. se f(m) 0 ento:
se f(a)f(m) < 0 ento fazer b = m
caso contrrio, fazer a = m
3. repetir os passos 1 e 2 at satisfazer o critrio de parada.


fcil perceber (como mostram as figuras a seguir) que no mtodo da falsa-posio pode
ocorrer que um dos extremos do intervalo mantenha-se sempre fixo. Isto ir ocorrer sempre
que a funo f(x) for cncava ou convexa no intervalo [a, b].
Clculo Numrico 2 Soluo de Equaes

29

x
y
raiz
a=x0 x1 x2
b
y = f(x)



x
y
raiz
b=x0
x1
x2
a
y = f(x)



Exemplo:
p x x x x ( ) + +
3 2
5 17 21 0
tem uma raiz no intervalo [-1, 0]. A tabela a seguir
ilustra os resultados obtidos pelos mtodos da bisseco e da falsa-posio para este caso.

Mtodo da Bisseco Mtodo da Falsa-Posio
i xi f(xi) xi f(xi)
0 -0.5000 11.125 -0.9130 0.549
1 -0.7500 5.015 -0.9318 0.010
2 -0.8750 1.627 -0.9321 0.000
3 -0.9375 -0.156
4 -0.9063 0.743
5 -0.9219 0.295
6 -0.9297 0.070
7 -0.9336 -0.043
8 -0.9316 0.014
9 -0.9326 -0.014
10 -0.9321 0.000


MTODOS DE PONTO FIXO

Nos mtodos de ponto fixo (ou mtodos de iterao funcional), para determinar a raiz
pertencente ao intervalo [a, b] da equao f(x) = 0, procura-se determinar uma funo g(x) tal
que:

g(x) = x + c(x).f(x)

onde c(x) 0, x [a, b]. Desta maneira, procurar os valores x* para os quais f(x*) = 0,
corresponde a procurar os valores x* tais que:

x* = g(x*) (ponto fixo)

Dependendo da escolha de g(x) tem-se diferentes mtodos de ponto fixo.


Exemplo. f x x x ( ) +
3
3 1 0

Neste caso g(x) pode ser escrita como:

Clculo Numrico 2 Soluo de Equaes

30
g x
x
ou g x
x
( ) ( )
+

3
2
1
3
1
3


O teorema a seguir, estabelece condies para que exista um ponto fixo para uma funo g(x).

Teorema. Seja I = [a, b] e g(x) uma funo tal que:

g contnua em I
g(I) = { g() | I } I

Ento existe pelo menos um x* I tal que x* = g(x*).

O problema saber, no caso de haver vrias funes g(x) possveis, qual a melhor escolha.
Isto importante porque, dependendo desta escolha, podem acontecer os seguintes casos:

Convergncia Monotnica

x0
y = x
y = g(x)
x
y
raiz


Convergncia Oscilante

x0
y = x
y = g(x)
x
y
raiz


Divergncia Monotnica

y
x
y = g(x)
y = x
raiz
x0

Divergncia Oscilante

raiz
y
y = x
y = g(x)
x0



Os teoremas a seguir ajudam na escolha da funo g(x).

Teorema. Seja g(x) uma funo definida em I = [a, b], tal que:

g(i)

I
x I, | g'(x) | L < 1
Clculo Numrico 2 Soluo de Equaes

31

Ento existe exatamente um x* I tal que g(x*) = x*.

Teorema. Seja g(x) uma funo satisfazendo as condies do teorema anterior. Para
x
0

I,
a sequncia x
n+1
= g(x
n
), n = 0,1,2, ... converge para x* e o erro de truncamento cometido
na n-sima iterao tal que:

e x x
L
L
x x
t n n n
<



*
1
1


Exemplo.
f x x x ( )
2
2
I = [0, 2]

Escolha de g(x):

a) g x x ( )
2
2

g'(x) = 2x | g'(x) | > 1 para x >
1
2


b) g x x ( ) + 2

g'(x) =
1
2 2 x +
| g'(x) | < 1 para x > 0

Portanto, o mtodo iterativo mais conveniente : x x
i i +
+
1
2 (i = 0, 1, 2, ...)


Outro exemplo: 0 3 x 3 x ) x ( f
3
+

razes positivas em: [1, 2] e [2, 3]
raiz negativa em: [-1, 0]

Neste caso, podemos ter:

) 3 x (
3
x 3 ) 3 x ( x
2

t

Portanto, se quizermos a raiz negativa podemos considerar
) 3 x (
3
) x ( g

e se quizermos
a raiz positiva em [1, 2] podemos considerar
) 3 x (
3
) x ( g

+ .
Observe que
2
) 3 x (
) 3 x (
3
2
3
) x ( ' g

< 1 para x [-1,0] ou para x [1,2].





MTODO DE AITKEN
Clculo Numrico 2 Soluo de Equaes

32

Teorema (Aitken). Sejam os mtodos iterativos
x x
i i
( ) ( )
( )
1
1
1
1

e
x x
i i
( ) ( )
( )
2
2
1
2

, i = 1, 2,
..., de ordem p, os quais convergem para x = . Com as funes
1
e
2
possvel construir a
funo dada por:

( )
( ( )) ( ) ( )
( ) ( ) ( ( ))
x
x x x x
x x x x


+


1 2 1 2
1 2 1 2


Ento, o mtodo iterativo x
i
= (x
i-1
), i = 1, 2, ... tem ordem de convergncia superior a p,
desde que seja satisfeita a condio:

(
1
() - 1)(
2
() - 1) 0

A aplicao mais simples do Teorema de Aitken quando
1
=
2
= . Neste caso tem-se:

( )
( ( )) ( ) ( )
( ) ( ) ( ( ))
( ) ( )
( )
( )
x
x x x x
x x x x
x x x
x x x
x x x
x x x
i
i i i i
i i i i
i i i
i i i
i i i
i i i


+


+


+
+ +
+ +
+ +
+ +

1 1
2
1 1
2 1
2
1 2
2 2



Exemplo. Seja f(x) = x - e
x
= 0 e I = [0, 1]

Mtodo Iterativo:

x = e
x
(ou seja, (x) = e
x
). Neste caso '(x) = - e
x
. Portanto | '(x) | < 1 para x > 0, ou
seja, o mtodo converge.

A tabela a seguir mostra os valores obtidos diretamente por este mtodo iterativo com x
0
= 0.5
e tambm os valores obtidos atravs do mtodo de Aitken.

i (x
i
) Mtodo de Aitken
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0.50000
0.60653
0.54524
0.57970
0.56006
0.57117
0.56486
0.56844
0.56641
0.56756
0.56691
0.56728
0.56707
0.56719
0.56712
0.56716
0.56714
0.50000
0.60653
0.54524
0.56762
0.56687
0.56730
0.56714




Clculo Numrico 2 Soluo de Equaes

33
MTODO DE NEWTON-RAPHSON

Teorema (Taylor). Seja f(x) uma funo tal que f(x) e suas n derivadas f
(n)
(x) (n > 0) so
contnuas no intervalo [a, b]. Seja f
(n+1)
(x) definida no intervalo (a, b). Ento existe, pelo
menos, um valor (a, b) tal que:

f b f a
b a
f a
b a
f a
b a
n
f a
b a
n
f
n
n
n
n
( ) ( )
!
' ( )
( )
!
"( ) ...
( )
!
( )
( )
( )!
( )
( ) ( )
+

+

+ +

+

+
+
+
1 2 1
2 1
1



Seja x
i
uma aproximao para a raiz de f(x) = 0 e seja = x
i
+ h. Ento, como f() = 0, para o
intervalo [x
i
, x
i
+ h], pelo Teorema de Taylor, pode-se escrever:

0 = f(

) = f(x
i
+ h) = f(x
i
) + hf'(x
i
) + ...

Ignorando os prximos termos da expanso de Taylor, tem-se:

f(x
i
) + hf'(x
i
) = 0 ou seja: h
f x
f x
i
i

( )
' ( )


Portanto, como x
i
+ h deve ser uma nova aproximao para a raiz de f(x), tem-se o mtodo de
Newton-Raphson:

x x
f x
f x
i
i i
i
i
+

1
0 1 2
( )
' ( )
, , , ...


Exemplo. Sejam
f x xe
x
( ) .

02
e
x
0
0
. Neste caso,
f x e x
x
' ( ) ( )

1
. Portanto, pelo
mtodo de Newton-Raphson, tem-se:

x
f
f
1
000000
000000
000000
020000 .
( . )
' ( . )
.
x
f
f
2
0 20000
020000
0 20000
0 25535 .
( . )
' ( . )
.
x
f
f
3
025535
025535
025535
0 25915 .
( . )
' ( . )
.
x
f
f
4
0 25915
025915
025915
0 25917 .
( . )
' ( . )
.
x
f
f
5
025917
025917
0 25917
025917 .
( . )
' ( . )
.

Nota-se, deste exemplo, que a convergncia no mtodo de Newton-Raphson rpida.

Clculo Numrico 2 Soluo de Equaes

34
Interpretao Geomtrica

xi
y = f(x)
x
y
raiz
xi+1
f(xi)
f(xi+1)
a


tg a f x
f x
x x
x x
f x
f x
i
i
i i
i i
i
i
( ) ' ( )
( )
( )
( )
' ( )


+
+
1
1



Uma questo importante : O mtodo converge sempre? As figuras a seguir ilustram algumas
situaes possveis.


x
y
y = f(x)
x0 = x2
x1 = x3



x
y
raiz
y = f(x)
x0
x1


Destas figuras percebe-se claramente que, dependendo da escolha do ponto inicial x
0
, o
mtodo de Newton-Raphson pode no convergir. O teorema a seguir estabelece as condies
necessrias para que ocorra a convergncia do mtodo de Newton-Raphson.

Teorema. Seja f(x) uma funo definida em I = [a, b], tal que:

f(a).f(b) < 0
f'(x)

0, x

[a, b]
f"(x) 0 ou f"(x) 0, x [a, b]

f a
f a
b a e
f b
f b
b a
( )
' ( )
( )
' ( )
< <

Ento, para qualquer
x
0
[a, b] o mtodo de Newton-Raphson ir convergir para a raiz de f(x)
= 0 pertencente ao intervalo [a, b].

Exemplo. f(x) = x x x
3 2
2 3 1 + + I = [0, 1]

Verificando as condies do teorema acima, tem-se:

Clculo Numrico 2 Soluo de Equaes

35
f(0) = -1; f(1) = 5 f(0).f(1) < 0
f'(x) = 3 4 3
2
x x + +

f'(x) > 0 para x

[0, 1]
f"(x) = 6x + 4 f"(x) > 0 para x [0, 1]
f
f
( )
' ( )
0
0
1
3
1
3
1 0

<
f
f
( )
' ( )
1
1
5
10
1
2
1 0 <

Logo, para qualquer
x
0
[0, 1] o mtodo ir convergir.


Ordem de Convergncia do Mtodo de Newton-Raphson

0
2
2
+ +

f x f x x x f x
x x
f
i i i
i
( *) ( ) ( * ) ' ( )
( * )
"( )

com (x
i
, x*).

Dividindo-se por f'(x
i
) tem-se:

f x
f x
x x
x x f
f x
i
i
i
i
i
( )
' ( )
( * )
( * ) "( )
' ( )
+ +

2
2
0



Por outro lado:
x x
f x
f x
i i
i
i
+

1
( )
' ( )
. Portanto:
f x
f x
x x
i
i
i i
( )
' ( )

+11
. Logo:

( ) ( * )
( * ) "( )
' ( )
( * )
( * ) "( )
' ( )
x x x x
x x f
f x
x x
x x f
f x
i i i
i
i
i
i
i
+ +

+
+
1
2
1
2
2
0
2
0



Portanto, como e
i
= x* - x
i
, tem-se:

e e k
e
e
k
e
e
cte
i
i
i
i
i
i
i
+
+

+

1
2 1
2
1
2
1
2
1
2
lim

ou seja: o mtodo de Newton-Raphson tem ordem de convergncia quadrtica.


MTODO DAS SECANTES (OU DAS CORDAS)

Um problema com o mtodo de Newton-Raphson o clculo de derivadas, um problema mal-
condicionado. A idia do mtodo das secantes , partindo-se de duas aproximaes x
0
e x
1
,
substituir a derivada por uma reta que passa pelos pontos (x
0
, f(x
0
)) e (x
1
, f(x
1
)), como no
mtodo da falsa-posio.

Clculo Numrico 2 Soluo de Equaes

36

x
y
raiz
x0
x1
x2
y = f(x)
f(x1)
f(x0)



Da figura acima (por congruncia de tringulos) pode-se escrever:

x x
f x
x x
f x f x
i i
i
i i
i i
+

1 1
1
0 ( ) ( ) ( )


Portanto, o mtodo das secantes pode ser escrito iterativamente como:

x x
x x f x
f x f x
i
i i
i i i
i i
+


1
1
1
1 2
( ) ( )
( ) ( )
, , ...


Deve-se observar que o mtodo das secantes no exige que haja troca de sinal da funo f(x)
no intervalo [x
i-1
, x
i
] como no mtodo da falsa-posio.

medida que se aproxima da raiz, f(x
i
) e f(x
i-1
) devem ser valores muito prximos e
consequentemente, poder ocorrer o fenmeno do cancelamento subtrativo. Para evitar isto,
pode-se escrever o mtodo das secantes como:

x x
x x
f x
f x
f x
f x
i i
i i
i
i
i
i
+

1
1
1
1
1
( )
( )
( )
(
( )
( )
)

com | f(x
i
) | < | f(x
i-1
) | (do contrrio, inverter x
i
e x
i-1
).

Pode-se mostrar que a ordem de convergncia do mtodo das secantes dada por:
+
1
2
5 1 1618 ( ) . , ou seja, converge um pouco mais lentamente que o mtodo de Newton-
Raphson (para o qual = 2).


MTODO DE MLLER

No mtodo das secantes, consideram-se dois pontos x
i-1
e x
i
e por eles traa-se uma reta para
determinar o prximo ponto x
i+1
(interpolao linear). O mtodo de Mller considera trs
pontos: x
i-2
, x
i-1
e x
i
, e por eles passa uma equao do segundo grau (parbola) a fim de
determinar o prximo ponto x
i+1
.

Clculo Numrico 2 Soluo de Equaes

37
Ilustrao Grfica:

x
y
y = f(x)
x0
x1
x2
x3



Da figura pode-se ver que g x x x ( ) + +
0
2
1 2
tal que:




0
0
2
1 0 2 0
0
1
2
1 1 2 1
0 2
2
1 2 2 2
x x f x
x x f x
x x f x
+ +
+ +
+ +

'

( )
( )
( )


Resolvendo-se o sistema tem-se: x
3
2
1 1
2
0 2
2
4


, onde o sinal frente do radical
deve ser escolhido de modo que o denominador tenha o maior valor absoluto possvel.


2.5 Resoluo de Sistemas de Equaes No-Lineares

Considere o seguinte sistema de equaes:

x y
x y
+
+

'

2 3 0
3 7 0
2 2


Neste caso, deseja-se saber os valores de x e de y que satisfazem, simultaneamente, as duas
equaes. Estes valores podem ser vistos no grfico a seguir, onde as funes y = f
1
(x) e y =
f
2
(x) so definidas como: f x x
1
3 2 ( ) ( ) / e f x x
2
2
7 3 ( ) .

-2 -1 1 2
0.5
1
1.5
2
2.5
f1(x)
f2(x)
y
x
raiz
raiz


Clculo Numrico 2 Soluo de Equaes

38
Os mtodos de quebra (bisseco e falsa-posio) no podem ser generalizados para
sistemas pois as trocas de sinal no caracterizam as razes de funes de vrias variveis.
Entretanto os mtodos de ponto fixo e de Newton-Raphson podem ser generalizados
facilmente.

Seja, por exemplo, o mtodo de ponto fixo:

x =
1
(x,y) = 3 - 2y
y =
2
(x,y) = 7 3
2
x

Pelas tabelas abaixo pode-se observar que, partindo-se de uma estimativa inicial (x
0
,y
0
) =
(1.00, 1.00) o mtodo converge para a raiz (-1.00, 2.00) (mostrada esquerda, no grfico
acima). Entretanto, partindo-se da estimativa inicial (x
0
,y
0
) = (0.00, 1.00), aps 3 iteraes, o
mtodo diverge.

i x
i
y
i
i x
i
y
i

0 1.00 1.00 0 0.000 1.000
1 1.00 2.00 1 1.000 2.646
2 -1.00 2.00 2 -2.292 2.000
3 -1.00 2.00 3 -1.000
8 753 .

A convergncia do mtodo de ponto fixo pode ser estabelecida pela generalizao do teorema
de convergncia para funo de uma varivel, onde o intervalo I substitudo por uma regio
circular que contenha a raiz. Para o caso acima, por exemplo, deve-se ter:

1 1 2 2
1
2
2
2
2
x y x y
L

_
,
+

_
,
+

_
,
+

_
,


para o mtodo convergir.


A generalizao do mtodo de Newton-Raphson pode ser obtida atravs da generalizao
do Teorema de Taylor para funes de vrias variveis. Seja, por exemplo, o caso de funes
de duas variveis. Considere ( )
i i
y , x a i-sima aproximao para uma raiz do sistema:
( )
( )

'

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


Uma nova aproximao para a raiz do sistema pode ser estabelecida como:

i i 1 i
i i 1 i
k y y
h x x
+
+
+
+


onde
i
h e
i
k so os valores dos passos a serem determinados. Como
1 i
x
+
e
1 i
y
+
so
aproximaes para uma raiz do sistema, pode-se escrever:

0 ) k y , h x ( f ) y , x ( f
0 ) k y , h x ( f ) y , x ( f
i i i i 2 1 i 1 i 2
i i i i 1 1 i 1 i 1
+ +
+ +
+ +
+ +


Clculo Numrico 2 Soluo de Equaes

39
Pelo Teorema de Taylor pode-se escrever:

0 ... ) y , x (
y
f
k ) y , x (
x
f
h ) y , x ( f ) k y , h x ( f
0 ... ) y , x (
y
f
k ) y , x (
x
f
h ) y , x ( f ) k y , h x ( f
i i
2
i i i
2
i i i 2 i i i i 2
i i
1
i i i
1
i i i 1 i i i i 1
+

+ + +
+

+ + +


Ou seja:

) y , x ( f
y
) y , x ( f
k
x
) y , x ( f
h
) y , x ( f
y
) y , x ( f
k
x
) y , x ( f
h
i i 2
i i 2
i
i i 2
i
i i 1
i i 1
i
i i 1
i



ou ento, em notao vetorial:

) y , x ( f
) y , x ( f
k
h
y
) y , x ( f
x
) y , x ( f
y
) y , x ( f
x
) y , x ( f
i i 2
i i 1
i
i
Jacobiano
i i 2 i i 2
i i 1 i i 1

4 4 4 4 3 4 4 4 4 2 1


Portanto, resolvendo o sistema tem-se os valores de
i
h e
i
k e portanto, as novas
aproximaes
1 i
x
+
e
1 i
y
+
para a soluo do sistema de equaes.

Exemplo.

Seja o sistema de equaes:

f x y e y
f x y x y x
x y
1
2
4 0
4 0
( , )
( , ) cos( )

+ +

'



Para este caso, tem-se:

f
x
e
f
y
e
f
x
x y
f
y
x y
x y x y 1 1
2 2
4
4

+ + +

sen( ) sen( )


Considerando como estimativa inicial para a soluo o ponto ( )
0 0
y , x = (0.0, 0.0), tem-se:

1
1
k
h
0 4
5 1
0
0



Resolvendo o sistema de equaes lineares acima, tem-se os valores de
0
h e
0
k . Neste
caso:
Clculo Numrico 2 Soluo de Equaes

40

20
3
k e
4
1
h
0 0



Portanto, a nova aproximao para a soluo ser:

15 . 0 15 . 0 00 . 0 k y y
25 . 0 ) 25 . 0 ( 00 . 0 h x x
0 0 1
0 0 1
+ +
+ +


Continuando desta forma, a cada iterao do mtodo de Newton-Raphson, determina-se os
novos valores de passo e portanto, novas aproximaes para a soluo do sistema.

Deve-se observar que cada iterao do mtodo de Newton-Raphson aplicado a sistemas de
equaes no-lineares requer a soluo de um sistema de equaes lineares (para determinar
os passos). A resoluo de sistemas de equaes lineares o assunto do captulo seguinte.


EXERCCIOS RESOLVIDOS

1. Enumere, localize e separe as razes reais da equao 2 5 2 0
3 2
x x + . Em seguida
utilize o mtodo do ponto fixo para encontrar uma raiz positiva e o mtodo de Newton-
Raphson para encontrar uma raiz negativa, caso exista, desta equao. Nos mtodos
iterativos trabalhe com 3 casas decimais e utilize o critrio de parada: x x
n n
<
1
001 . ,
onde
x
i
corresponde i-sima aproximao para o valor da raiz.

Soluo:

p(x) = 2 5 2
3 2
x x + p(-x) = + 2 5 2
3 2
x x = 2 5 2
3 2
x x +

Enumerao:

p(x) + + - 1 troca 1 raiz real positiva
p(-x) + - + 2 trocas 0 ou 2 razes reais negativas

Localizao:

Raiz positiva:

2 5 0 -2
1 2 7 7 raiz [0, 1]
2 7 7 5

Razes negativas:

2 -5 0 2
1 2
2 -3

2 -5 0 2
2 4
2 -1
Clculo Numrico 2 Soluo de Equaes

41

2 -5 0 2
3

6 3 9 razes

[-3, 0]
2 1 3 11

Separao das razes negativas:

p x x x ( ) + 2 5 2
3 2

p x x x
p x x
p x
' ( )
"( )
"' ( )
+
+

6 10
12 10
12
2


Seja o intervalo [-3, -2]:

p(-3) = -11 p(-2) = 2
p'(-3) = 24 V
-3
= 3 trocas de sinal p'(-2) = 4 V
-2
= 2 trocas de sinal
p"(-3) = -26 p"(-2) = -14
p'"(-3) = 12 p'"(-2) = 12

Logo, como V V


3 2
1, existe uma raiz no intervalo [-3, -2]. Portanto a outra raiz
negativa est no intervalo [-2, 0].

Clculo da raiz positiva - Mtodo do ponto fixo:

5 x 2
2
x 2 ) 5 x 2 ( x 0 2 x 5 x 2
2 2 3
+
+ +
Assim:
<
+
+


+
] 1 , 0 [ x 1 ) x ( ' g
) 5 x 2 (
5 x 2
1
2
) x ( ' g
5 x 2
2
) x ( g
2
mtodo
converge.

Seja 000 . 0 x
0


632 . 0
5 0 2
2
x
1

+


571 . 0
5 565 . 0 2
2
x
3

+



565 . 0
5 632 . 0 2
2
x
2

+
571 . 0
5 571 . 0 2
2
x
4

+




Clculo de raiz negativa - Mtodo de Newton-Raphson:

p x x x p x x x ( ) '( ) + + 2 5 2 6 10
3 2 2


x x
p x
p x
i i
i
i
+

1
( )
' ( )
. Seja x
0
3
Clculo Numrico 2 Soluo de Equaes

42

x
p
p
1
3
3
3
2542


( )
'( )
.

x
p
p
2
2 542
2 542
2 542
2 352

.
( . )
' ( . )
.

x
p
p
3
2 352
2 352
2 352
2 315

.
( . )
' ( . )
.

x
p
p
4
2315
2 315
2 315
2 313

.
( . )
' ( . )
.

2. Enumere, localize e separe as razes reais da equao x x
3
3 1 0 + . Em seguida utilize
o mtodo do ponto fixo para encontrar uma raiz positiva, caso exista, e o mtodo de
Newton-Raphson para encontrar uma raiz negativa desta equao. Nos mtodos iterativos
trabalhe com 4 casas decimais e utilize o critrio de parada: x x
n n
<
1
001 . , onde x
i

corresponde i-sima aproximao para o valor da raiz.

Soluo:

p(x) = x x
3
3 1 + p(-x) = + + x x
3
3 1 = x x
3
3 1

Enumerao: p(x) + - + 2 trocas 0 ou 2 razes reais positivas
p(-x) - + + 1 troca 1 raiz real negativa

Localizao:

Razes positivas:

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

1 0 -3 1
2 2 4 2 raiz [0, 2]
1 2 1 3

Raiz negativa:

1 0 -3 -1
2 2 4 2 raiz [-2, 0]
1 2 1 1

Separao das razes positivas:
p x x x
p x x
p x x
p x
( )
' ( )
"( )
"' ( )
+

3
2
3 1
3 3
6
6

Clculo Numrico 2 Soluo de Equaes

43
Seja o intervalo [0, 1]:

p(0) = 1
p'(0) = -3 V
0
= 2 trocas de sinal
p"(0) = 0
p'"(0) = 6

p(1) = -1
p'(1) = 0 V
1
= 1 troca de sinal
p"(1) = 6
p'"(1) = 6

Logo, como V V
0 1
1 , existe uma raiz no intervalo [0, 1]. Portanto, o intervalo [0, 2]
deve conter duas razes (e no zero razes). Conclui-se ento que a outra raiz positiva est
no intervalo [1, 2].
Clculo da raiz positiva - Mtodo do ponto fixo:
x x x
x
3
3
3 1 0
1
3
+
+

Assim:
g x
x
g x x g x para x ( ) ' ( ) ' ( )
+
< < <
3
2
1
3
1 0 1
mtodo
converge.

Seja x
0
0 .

x
1
3
0 1
3
03333
+
.
x
2
3
03333 1
3
03457
+

.
.
x x x raiz
3
3
2 3
03457 1
3
0 3471 00014 001 034
+
<
.
. . . .



Clculo de raiz negativa - Mtodo de Newton-Raphson:

p x x x p x x ( ) ' ( ) +
3 2
3 1 3 3


x x
p x
p x
i i
i
i
+

1
( )
' ( )
. Seja
x
0
2


x
p
p
1
2
2
2
2
1
9
18889




( )
' ( )
.
x
p
p
2
18889
18889
18889
18889
00727
7 7038
18795



.
( . )
' ( . )
.
.
.
.
x
p
p
3
18795
18795
18795
18795
00009
75976
18794



.
( . )
' ( . )
.
.
.
.

Portanto: raiz 1.87

Clculo Numrico 2 Soluo de Equaes

44

EXERCCIOS PROPOSTOS

1. Enumere, localize e separe as razes reais das equaes abaixo. Em seguida utilize o
mtodo do ponto fixo para encontrar, caso exista, uma raiz negativa e o mtodo de
Newton-Raphson para encontrar, caso exista, uma raiz positiva destas equaes. Nos
mtodos iterativos trabalhe com 3 casas decimais e utilize o critrio de parada:
x x
n n
<
1
001 . , onde x
n
corresponde n-sima aproximao para o valor da raiz.

a x x x
b x x x
c x x x x
)
)
)
3 2
3 2
4 3 2
6 20 0
5 3 0
6 10 6 9 0
+
+ +
+ +



2. Considerando a equao f x
x
a ( )
1
0
2
mostre que a raiz quadrada de 1/a pode ser
encontrada pela iterao de Newton-Raphson:
( ) x x ax
n n n

1 1
2
3 2 / . Deduza uma
expresso equivalente para encontrar a raiz m-sima (m > 1) de 1/a e use o esquema
iterativo encontrado para calcular a raiz cbica de 2 com 5 casas decimais.


EXERCCIOS DE PROGRAMAO

1. Determinar uma raiz da equao f x sin x
x
( ) ( )
2
0 no intervalo [0, ]. Para identificar
uma aproximao inicial para o valor da raiz utilizar o programa Mathematica com as
seguintes instrues:

f[x_] = Sin[x] - x/2
Plot[f[x], {x, 0.0, Pi},
AxesLabel->{"x","y"},
Ticks->{{0.0,0.5,1.0,1.5,2.0,2.5,3.0},Automatic}]

Utilize o mtodo da bisseco e o mtodo da falsa-posio para determinar o valor da raiz.
Para os mtodos iterativos, considere o seguinte critrio de parada:

<
n 1 n n
x / ) x x (
para
-5
10 . Mostre o nmero n de iteraes, o valor da raiz x* obtida e o valor de f(x*).


2. Determinar uma raiz da equao f x x Ln x ( ) ( ) + 0 no intervalo [0, 1].

Implementar o mtodo de Newton-Raphson para determinar o valor da raiz. O processo
iterativo de Newton-Raphson deve ser implementado como uma funo NRSOLVE com os
seguintes parmetros:

RAIZ = NRSOLVE(X0,EPS,LIM,RAIZ)
onde:
X0 Estimativa inicial da raiz
EPS Preciso desejada
Clculo Numrico 2 Soluo de Equaes

45
LIM Nmero mximo de iteraes
RAIZ Valor encontrado para a raiz

O critrio de parada deve combinar o erro relativo entre aproximaes sucessivas e o limite
de iteraes.

Conferir o valor encontrado para a raiz utilizando o programa Mathematica. Utilizar as
seguintes instrues:

f[x_] = x + Log[x]
FindRoot[f[x] == 0, {x, x0, xmin, xmax}, MaxIterations -> lim]

onde: x0 - estimativa inicial da raiz; xmin - limite inferior do intervalo que contm a raiz; xmax
- limite superior do intervalo que contm a raiz; lim - nmero mximo de iteraes.

47

Clculo Numrico
3. SOLUO DE SISTEMAS DE EQUAES LINEARES


3.1 - Introduo

Neste captulo estuda-se como encontrar a soluo de um sistema de equaes lineares da
forma:
a x a x a x b
a x a x a x b
a x a x a x b
n n
n n
n n nn n n
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
+ + +
+ + +
+ + +

'

...
...
...
...


Neste caso o sistema possui n equaes e n incgnitas (
x x x
n 1 2
, , ...,
). O problema
encontrar os valores de x x x
n 1 2
, , ..., que satisfazem simultaneamente ao conjunto de
equaes.

Exemplo:

'

+
+ +

2 x x 3 x
7 x x 2 x
5 x 2 x x
3 2 1
3 2 1
3 2 1


Neste caso, o problema determinar os valores de
3 2 1
x , x , x
que satisfazem
simultaneamente as trs equaes. Este problema pode ser escrito na forma matricial como:

{
1 1 2
1 2 1
1 3 1
5
7
2
1
2
3

A X
B
x
x
x
1 2 44 3 44 123

onde:

A - matriz dos coeficientes
X - vetor de incgnitas
B - vetor dos termos independentes

Os mtodos numricos de soluo de sistemas de equaes lineares podem ser classificados
em:

Mtodos Diretos. So mtodos que determinam a soluo X de um sistema AX = B realizando
um nmero preestabelecido de operaes aritmticas. A menos de erros de arredondamento
(possivelmente cometidos quando implementa-se o mtodo de soluo no computador), a
soluo obtida por um mtodo direto exata.

Mtodos Iterativos. So mtodos que permitem obter uma soluo aproxi mada X* a partir de
um esquema iterativo para gerar uma sequncia de aproximaes sucessivas ... , X , X
) 2 ( ) 1 (
a
partir de uma aproximao inicial
) 0 (
X e de um critrio de parada.

Os mtodos iterativos de soluo de sistemas de equaes lineares so muito dependentes
da matriz dos coeficientes do sistema. Dependendo do tipo de matriz, um mtodo pode
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

48
convergir ou no. Outro problema, j discutido anteriormente, o mal-condicionamento, tambm
depende da matriz dos coeficientes do sistema. Para os mtodos diretos, existem mtodos
especiais quando a matriz dos coeficientes possui uma forma especial.


MATRIZES ESPECIAIS

Uma matriz A (n x n) :

SIMTRICA: se A
ij
= A
ji
, para i,j = 1, 2, ..., n

BANDA K: se A
ij
= 0 para | i - j | > K (K = 1, 3, 5, ...), para i,j = 1, 2, ..., n

Casos Especiais:

K = 1 Matriz diagonal
K = 3

Matriz tridiagonal

TRIANGULAR:

se A
ij
= 0 para i > j ; i,j = 1, 2, ..., n (Triangular Superior)
se A
ij
= 0 para i < j ; i,j = 1, 2, ..., n (Triangular Inferior)

DIAGONAL DOMINANTE: se | A
ii
|
| | A
ij
j
j i
n

1
, para i = 1, 2, ..., n

ESTRITAMENTE DIAGONAL DOMINANTE: se | A
ii
| >
| | A
ij
j
j i
n

1
, para i = 1,2, ..., n
Exemplos:

Simtrica

1 2 3 4
2 5 6 7
3 6 8 9
4 7 9 10

Tridiagonal

1 2 0 0
3 4 5 0
0 6 7 8
0 0 9 10


Simtrica e Tridiagonal

1 2 0 0
2 3 4 0
0 4 5 6
0 0 6 7

Triangular Superior

1 2 3 4
0 5 6 7
0 0 8 9
0 0 0 10


Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

49
Triangular Inferior

1 0 0 0
2 3 0 0
4 5 6 0
7 8 9 10

Diagonal

1 0 0 0
0 2 0 0
0 0 3 0
0 0 0 4


Triangular Inferior Unitria

1 0 0 0
2 1 0 0
3 4 1 0
5 6 7 1

Diagonal Dominante

10 1 2 4
4 9 0 5
1 1 6 2
1 1 2 5





3.2 Mtodos Diretos

Uma forma de resolver um sistema de equaes lineares eliminar, sucessivamente, as
incgnitas at obter uma equao com uma nica incgnita. Determinar o valor desta incgnita
e substituir de volta seu valor nas outras equaes, para determinar o valor das demais
incgnitas.

Por exemplo, seja o seguinte sistema:

'

+
+

2 x x 3 x ) c (
7 x x 2 x ) b (
5 x 2 x x ) a (
3 2 1
3 2 1
3 2 1


Fazendo: (d) = (b) - (a); (e) = (c) - (a), tem-se as equaes:

'

+
+
7 x x 4 ) e (
12 x 3 x 3 ) d (
3 2
3 2


Fazendo agora: (f) = (e) - (4/3)(d), tem-se:

{ 9 x 3 ) f (
3



Logo, de (f) pode-se determinar que x
3
= 3. Substituindo o valor de x
3
na equao (e) tem-se
que x
2
= 1. Substituindo os valores de x
2
e x
3
na equao (a) tem-se que x
1
= 2.


Portanto nesta classe de mtodo, possvel estabelecer a priori o nmero de operaes
aritmticas elementares requeridas para obter a soluo, em funo do nmero de equaes.
A questo : "Como fazer isto eficientemente e como organizar os clculos de modo a
diminuir os erros de arredondamento?".


Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

50

3.2.1 MTODO DA ELIMINAO DE GAUSS

Seja o sistema a seguir, onde os sobrescritos entre parnteses so usados para indicar os
valores disponveis em cada estgio da soluo:

a x a x a x b
a x a x a x b
a x a x a x b
11
1
1
12
1
2
13
1
3
1
1
21
1
1 22
1
2 23
1
3 2
1
31
1
1 32
1
2 33
1
3 3
1
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
+ +
+ +
+ +



Para eliminar x
1
da segunda equao, deve-se:

substituir a segunda equao por: (2 equao) a a
21
1
11
1 ( ) ( )
/ (1 equao)

Para eliminar x
1
da terceira equao, deve-se:

substituir a terceira equao por: (3 equao) a a
31
1
11
1 ( ) ( )
/ (1 equao)

Aps este passo o sistema pode ser escrito como:

a x a x a x b
a x a x b
a x a x b
11
1
1
12
1
2
13
1
3
1
1
22
2
2 23
2
3 2
2
32
2
2 33
2
3 3
2
( ) ( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
+ +
+
+

onde:
a a
a
a
a i j
b b
a
a
b i
ij ij
i
j
i i
i
( ) ( )
( )
( )
( )
( ) ( )
( )
( )
( )
, ,
,
2 1 1
1
11
1
1
1
2 1 1
1
11
1
1
1
2 3
2 3




O prximo passo ser eliminar x
2
da terceira equao. Para isto deve-se:
substituir a terceira equao por: (3 equao) a a
32
2
22
2 ( ) ( )
/ (2 equao)

Com isto, o sistema passa a ser o seguinte:

a x a x a x b
a x a x b
a x b
11
1
1
12
1
2
13
1
3
1
1
22
2
2 23
2
3 2
2
33
3
3 3
3
( ) ( ) ( ) ( )
( ) ( ) ( )
( ) ( )
+ +
+


onde:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

51
a a
a
a
a
b b
a
a
b
33
3
33
2 32
2
22
2
23
2
3
3
3
2 32
2
22
2
2
2
( ) ( )
( )
( )
( )
( ) ( )
( )
( )
( )




Com estas operaes, transformou-se a matriz dos coeficientes do sistema em uma matriz
triangular superior. Portanto pode-se determinar facilmente o valor da ltima incgnita (
3
x ).
Uma vez determinado este valor, pode-se usar, sucessivamente, as equaes anteriores para
determinar, uma a uma, as demais incgnitas do sistema. Portanto o mtodo da eliminao de
Gauss apresenta duas fases:

(i) fase de eliminao, para transformar a matriz dos coeficientes em matriz triangular
superior, e
(ii) fase de substituio, para determinar, da ltima at a primeira, os valores da incgnitas.

Exemplo. Resolver, pelo mtodo da eliminao de Gauss, o seguinte sistema:

2 3 5
4 4 3 3
2 3 1
1 2 3
1 2 3
1 2 3
x x x
x x x
x x x
+
+
+

'



As operaes de eliminao do mtodo de Gauss se aplicam matriz dos coeficientes (A) e ao
vetor dos termos independentes (B). Assim, para facilitar, pode-se escrever a matriz
aumentada (AB):

2 3 1 5
4 4 3 3
2 3 1 1




No primeiro passo de eliminao, deve-se transformar os elementos
a
21
e
a
31
em zero. Para
fazer
a
21
= 0, basta substituir a segunda linha por: (2 linha)

a
a
21
11
(1 linha). Ou seja:

a
a
21
11
(1 linha) =
( ) ( ) ( )


4
2
2 3 1 5 2 2 3 1 5 4 6 2 10 ( )

(2 linha)

a
a
21
11
(1 linha) = ( ) ( ) ( ) 7 1 2 0 10 2 6 4 3 3 4 4 +

Para fazer
a
31
= 0, basta substituir a terceira linha por: (3 linha)

a
a
31
11
(1 linha). Ou seja:

a
a
31
11
(1 linha) = ( ) ( ) ( )


2
2
2 3 1 5 1 2 3 1 5 2 3 1 5 ( )

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

52
(3 linha)

a
a
31
11
(1

linha) = ( ) ( ) ( ) 6 2 6 0 5 1 3 2 1 1 3 2 +

Assim, ao final deste primeiro passo, a nova matriz aumentada ser:

2 3 1 5
0 2 1 7
0 6 2 6





No segundo passo de eliminao, partindo-se da nova matriz aumentada, deve-se transformar
o elemento
a
32
em zero. Para fazer
a
32
= 0, basta substituir a terceira linha por: (3
linha)

a
a
32
22
(2 linha). Ou seja:

a
a
32
22
(2 linha) =
( ) ( ) ( )


( )
( )
6
2
0 2 1 7 3 0 2 1 7 0 6 3 21

(3 linha)

a
a
32
22
(2

linha) = ( ) ( ) ( ) 15 5 0 0 21 3 6 0 6 2 6 0 +

Assim, ao final do passo de eliminao tem-se a seguinte matriz aumentada:

2 3 1 5
0 2 1 7
0 0 5 15



e portanto, pode-se escrever:

5 15 3
2 1 2 3 7 2
2 3 1 2 6 3 5 1
3 3
2 3 2 2
1 2 3 1 1
x x
x x x x
x x x x x


+ +


ou seja, o vetor soluo do sistema :

X
1
2
3



Exerccio. Resolver o seguinte sistema pelo mtodo da eliminao de Gauss:

x x x x
x x x x
x x x x
x x x x
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
2 3 4 10
2 2 3 7
3 2 2 6
4 3 2 5
+ + +
+ + +
+ + +
+ + +

'




Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

53
Seja o sistema AX = B, com n equaes. O algoritmo do mtodo da eliminao de Gauss pode
ser escrito como:

Fase de Eliminao:

1. Para k variando de 2 at n, fazer:
2. Para i variando de k at n, fazer:
piv =
1 k , 1 k
1 k , i
a
a


1 k i i
b piv b b


0 a
1 k , i


3. Para j variando de k at n, fazer:
j , 1 k j , i j , i
a piv a a



Fase de Substituio:

4. Para i variando de N at 1, fazer:
x b a x a
i i i j j
j i
N
i i

+
( ) /
, ,
1



Observaes:

No mtodo da eliminao de Gauss, o nmero de somas/subtraes e multiplicaes
proporcional a n
3
(ou seja, o esforo computacional cresce com o cubo do nmero de
equaes).

Aps as eliminaes, tem-se:

a x a x a x b
a x a x b
a x b
n n
n n
nn
n
n n
n
11
1
1 12
1
2 1
1
1
1
22
2
2 2
2
2
2
( ) ( ) ( ) ( )
( ) ( ) ( )
( ) ( )
...
...
...
+ + +
+ +



Portanto, o determinante da matriz dos coeficientes A dado por: a a a
nn
n
11
1
22
2 ( ) ( )
( )
...

Em cada estgio i do processo de eliminao, admitiu-se que a
i i
i
,
( )
0. Se a
i i
i
,
( )
= 0, pelo
menos um dos demais coeficientes da coluna i deve ser diferente de zero. Portanto, pode
ser necessrio mudar a ordem das equaes.

Para sistemas de equaes lineares com a mesma matriz dos coeficientes, como por exemplo
em:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

54
1 1 2
1 2 1
1 3 1
5
7
2
1 1 2
1 2 1
1 3 1
1
7
6
1
2
3
1
2
3


x
x
x
e
x
x
x


no preciso resolver os sistemas independentemente (uma vez que as operaes de
eliminao dependem apenas da matriz dos coeficientes). Pode-se aplicar o processo de
eliminao sobre o "sistema expandido":

1 1 2
1 2 1
1 3 1
5
7
2
1
7
6
1
2
3


x
x
x


e para obter os valores de x do primeiro sistema, fazer as retro-substituies considerando os
valores finais da primeira coluna de B. Para obter os valores de x do segundo sistema, basta
considerar a segunda coluna da matriz B. No caso acima, aps a fase de eliminao tem-se:
1 1 2
0 3 3
0 0 3
5
12
9
1
6
3
1
2
3


x
x
x


e portanto, a soluo do primeiro sistema ser:
2
1
3
e a do segundo:
4
1
1
.

Uma observao importante com relao preciso dos resultados obtidos pelo mtodo da
eliminao de Gauss. Em qualquer estgio do processo de eliminao indesejvel ter-se
pivs
a
a
i k
k k
,
,


1
1 1
grandes, pois isto implica que os erros nos dados iniciais (matriz dos
coeficientes e vetor dos termos independentes) e os erros de arredondamento acumulados
sero multiplicados por um valor grande. O ideal rearranjar as equaes de modo a se ter,
em cada estgio, pivs que sejam (em valor absoluto) menores do que 1.

Exemplo:
1 1 2
1 2 1
1 3 1
5
7
2
1
2
3


x
x
x


Neste caso, considerando a primeira coluna para a 1 , 2

e 3 equaes, tem-se que piv =


1. Ento:
1 1 2
0 3 3
0 4 1
5
12
7
1
2
3


x
x
x


Agora, considerando-se a segunda coluna para a 2 e 3 equaes, tem-se que piv = 4/3,
ou seja, para minimizar os erros de aproximao o sistema deve ser rearranjado como:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

55
1 1 2
0 4 1
0 3 3
5
7
12
1
3
2


x
x
x


3.2.2 DETERMINAO DE INVERSA DE MATRIZ

A soluo do sistema AX = B dada por X = A
-1
B. Por outro lado, mostrou-se acima que no
caso de sistemas com mesma matriz dos coeficientes e diferentes vetores dos termos
independentes, pode-se considerar a matriz expandida. Portanto, se inicialmente forem
considerados vrios vetores B, de forma a ter no lado direito do sistema uma matriz identidade,
ao final do mtodo da eliminao de Gauss os vetores soluo sero as colunas da inversa da
matriz dos coeficientes. Em outras palavras, considere os sistemas:

1
...
0
0
AX ...
0
...
1
0
AX
0
...
0
1
AX
n 2 1


As solues destes sistemas sero tais que:

3 2 1 3 2 1 3 2 1
1
1 1
A de
coluna
sima n
1
n
A de
coluna 2
1
2
A de
coluna 1
1
1
1
...
0
0
A X ...
0
...
1
0
A X
0
...
0
1
A X



Exemplo.
Determinar a inversa de A =
1 1 2
1 2 1
1 3 1

.

Seja ento o "sistema expandido":

1 1 2 1 0 0
1 2 1 0 1 0
1 3 1 0 0 1



Aplicando as operaes de eliminao, tem-se:

1 1 2 1 0 0
0 3 3 1 1 0
0 4 1 1 0 1



Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

56
1 1 2 1 0 0
0 3 3 1 1 0
0 0 3 1 3 4 3 1

/ /


Portanto, os "vetores soluo" sero:

X
1
=
9 / 1
9 / 2
9 / 5

X
2
=
9 / 4
9 / 1
9 / 7

X
3
=
3 / 1
3 / 1
3 / 1



ou seja:
A



1
5 9 7 9 1 3
2 9 1 9 1 3
1 9 4 9 1 3
/ / /
/ / /
/ / /


Exerccio.
Determinar a inversa da matriz A =
2 3 1
4 4 3
2 3 1

, pelo mtodo da eliminao de Gauss.




3.2.3 MTODO DE GAUSS-JORDAN

Considere um sistema de n equaes lineares da forma AX = B, cuja soluo X = A B
1
.
Seja a matriz expandida escrita como: A B I , onde I uma matriz identidade de ordem n.
Considere operaes elementares que transformem a matriz A em uma matriz identidade. Tais
operaes correspondem multiplicao de A por sua inversa A
1
, ou seja I A A
1

. Estas
operaes elementares quando aplicadas matriz expandida A B I , portanto, sero tais que:

Operaes Elementares[ A B I ]
A A A B A I
I X
A

1
]
1
1
1 1 1
1
123 123 123
[ I X A
1
]

Assim, no mtodo de Gauss-Jordan parte-se da matriz expandida [ A B ] (ou [ A B I ], caso
deseja-se determinar tambm a inversa da matriz A) e procura-se transformar a matriz A em
matriz identidade. Uma vez concludo este passo, tem-se ao final a matriz expandida
transformada em [ I X ] (ou [ I X A
1
], caso, de incio, a matriz expandida seja [ A B I ]).

Exemplo. Determinar o vetor soluo e a inversa da matriz dos coeficientes para o seguinte
sistema de equaes lineares:

x y z
x y z
x y z
+ +
+ +

'

4
2 3 9
2


Neste caso, a matriz expandida ser:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

57

1 1 1 4 1 0 0
2 3 1 9 0 1 0
1 1 1 2 0 0 1


O mtodo de Gauss-Jordan procura passo-a-passo, transformar a matriz dos coeficientes na
matriz identidade. Assim deve-se, no i-simo passo, dividir a i-sima linha da matriz expandida
por a
ii
e, em seguida, transformar os demais coeficientes da i-sima coluna em zero, atravs
da soma de linhas. Portanto no primeiro passo tem-se:

1 1 1 4 1 0 0
0 1 -1 1 -2 1 0
0 -2 -2 -6 -1 0 1


No segundo passo, tem-se:

1 0 2 3 3 -1 0
0 1 -1 1 -2 1 0
0 0 -4 -4 -5 2 1


Finalmente, no terceiro passo tem-se:

1 0 0 1 0.5 0 0.5
0 1 0 2 -0.75 0.5 -0.25
0 0 1 1 1.25 -0.5 -0.25


Portanto:

X
x
y
z

1
2
1
A



1
05 0 05
075 05 025
125 05 025
. .
. . .
. . .



Exerccio. Determinar o vetor soluo e a inversa da matriz dos coeficientes para os seguintes
sistemas de equaes lineares:

x x x
x x
x x x
1 2 3
1 3
1 2 3
05
2 4
2 35
+
+
+

'

.
.

3 0
0
2 2 6
1 2 3
1 2 3
1 2 3
x x x
x x x
x x x
+
+ +
+

'





Seja o sistema AX = B, com N equaes. Seja M a matriz expandida (M = [ A B], se apenas a
soluo do sistema for desejada, ou M = [ A B I ], caso se queira tambm a inversa da matriz
dos coeficientes). Seja L o nmero de colunas de M (L = N+1, se M = [ A B ], ou L = 2N+1, se
M = [ A B I ]). O algoritmo do mtodo da eliminao de Gauss-Jordan pode ser escrito na
forma de um diagrama de blocos como:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

58

L,M
I <> K?
P = M(K,K)
K = 1,N
CONTINUE
sim
no
I = 1,N
C(I) = M(I,K)
J = K,L
M(K,J) = M(K,J)/P
I = 1,N
M(I,J) = M(I,J) - C(I)*M(K,J)
M(I,N+1), I = 1, 2, ..., N, a soluo do sistema
M(I,J), I = 1, 2, ..., N ; J = N+2, N+3, ..., L, a matriz inversa





3.2.4 Mtodos de Fatorao

A idia dos mtodos de fatorao trabalhar com a matriz dos coeficientes, mantendo o vetor
dos termos independentes inalterado. O mtodo mais usado o da fatorao LU. Seja o
sistema de n equaes lineares:

n
1 j
i j j , i
b x a com i = 1, 2, ..., n. Considere que a matriz A
seja fatorada como o produto de duas matrizes:

uma matriz triangular inferior unitria (L)
uma matriz triangular superior (U)

Com a fatorao A = LU, o sistema de equaes AX = B pode ser escrito como:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

59

(LU)X = B

ou seja: LY = B, com Y = UX.

Neste caso, para determinar o vetor soluo X, ao invs de resolver o sistema original AX = B,
resolve-se dois sistemas:

LY = B (note que como L e B so conhecidos, pode-se determinar Y)

e em seguida:

UX = Y (como U e Y so conhecidos, determina-se X)

A vantagem de resolver o sistema dessa forma que, uma vez feita a fatorao A = LU, o
clculo das solues dos sistemas LY = B e UX = Y muito simples, pois as matrizes dos
coeficientes desses sistemas j est na forma triangular. Alm disso, se for alterado o vetor B,
a fatorao de A pode ser aproveitada e a soluo do sistema continua fcil de ser
determinada.

Exemplo. Seja o sistema AX = B da forma:

1 1 2
1 2 1
1 3 1
5
7
2
1
2
3


x
x
x


Considerando a fatorao:

4 43 4 42 1 43 42 1 43 42 1
U L A
3 0 0
3 3 0
2 1 1
1 3 / 4 1
0 1 1
0 0 1
1 3 1
1 2 1
2 1 1




pode-se reescrever o sistema de equaes como os seguintes sistemas:

a) LY = B, como:

1 0 0
1 1 0
1 4 3 1
5
7
2
1
2
3
/

y
y
y


cuja soluo fcilmente determinada, pois a matriz dos coeficientes j est na forma
triangular inferior. Assim:

1 5 5
1 1 7 12
1
4
3
1 2 9
1 1
1 2 2
1 2 3 3

+
+ +
y y
y y y
y y y y


Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

60
ou seja:
y
y
y
1
2
3
5
12
9



b) UX = Y, como:

1 1 2
0 3 3
0 0 3
5
12
9
1
2
3

x
x
x


cuja soluo novamente pode ser determinada facilmente por retro-substituio, ou seja:


+

3 9 3
3 3 12 1
1 1 2 5 2
3 3
2 3 2
1 2 3 1
x x
x x x
x x x x


Assim, o vetor soluo do sistema de equaes original dado por:

x
x
x
1
2
3
2
1
3



A questo : "Como obter a fatorao A = LU ?"


CLCULO DOS FATORES L e U

As matrizes L e U so obtidas pela fase de triangularizao do mtodo da eliminao de
Gauss:


a matriz L formada a partir dos pivs usados nos passos de eliminao;
a matriz U a matriz triangular resultante do processo de eliminao.

Exemplo:

Seja a seguinte matriz A:
A =
33 32 31
23 22 21
13 12 11
a a a
a a a
a a a


para eliminar
1
x da linha 2 devemos substituir a linha 2 por: (linha 2) p
21
(linha 1), onde
p
21
o piv dessa linha, dado por:
11
21
21
a
a
p .
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

61
para eliminar
1
x da linha 3 devemos substituir a linha 3 por: (linha 3) p
31
(linha 1), onde
p
31
o piv dessa linha, dado por:
11
31
31
a
a
p .

Isso vai resultar em uma matriz da forma:

A =
33 32
23 22
13 12 11
b b 0
b b 0
b b b



para eliminar
2
x da linha 3 devemos substituir a linha 3 por: (linha 3) p
32
(linha 2), onde
p
32
o piv dessa linha, dado por:
22
32
32
b
b
p .

Com isso, a matriz resultante ser a matriz U (triangular superior):

U =
33
23 22
13 12 11
u 0 0
u u 0
u u u


e a matriz L (triangular inferior unitria) ser formada pelos pivs usados para determinar U, ou
seja:
L =
1 p p
0 1 p
0 0 1
32 31
21


Exerccio.
Determinar a fatorao LU para a seguinte matriz A =
4 1 0
1 4 1
0 1 4

.


Este processo de soluo de sistemas de equaes lineares, baseado na fatorao LU,
conhecido como Mtodo de Doolittle. Este mtodo pode ser estabelecido formalmente como o
seguinte algoritmo:

Algoritmo Mtodo de Doolittle

Seja o sistema AX = B.

1. Para determinar as matrizes L e U, fazer:


U A L j N
A
U
i N
j j jj
i
i
1 1
1
1
11
1 1 2
2 3


; ( , , ..., )
( , , ..., ) L

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

62

Para r = 1, ..., N fazer:

U A U j r r N
A U
U
i r r N
rj rj rk
k
r
kj
ir
ir ik kr
k
r
rr
+

+ +

'

L
L
L
1
1
1
1
1
1 2
( , , ..., )
( , , ..., )


2. Com as matrizes L e U determinadas, calcular os vetores Y e X como:

Y B Y i N
X
Y U X
U
i N N
i i ij
j
i
j
i
i ij j
j i
N
ii

L
1
1
1
1 2
1 1
( , , ..., )
( , , ..., )


Outro mtodo que tambm usa a fatorao A = LU, mas com L, matriz triangular inferior e U,
matriz triangular superior unitria, conhecido como Mtodo de Crout.

Exemplo. Resolver o sistema AX = B a seguir pelo mtodo de Crout:

1 1 2
1 2 1
1 3 1
5
7
2
1
2
3


x
x
x


A matriz A pode ser escrita como:

4 43 4 42 1 43 42 1 43 42 1
U L A
1 0 0
1 1 0
2 1 1
3 4 1
0 3 1
0 0 1
1 3 1
1 2 1
2 1 1




Deve-se, em primeiro lugar (como no mtodo de Doolittle), determinar o vetor Y a partir do
sistema LY = B, ou seja:
1 0 0
1 3 0
1 4 3
5
7
2
1
2
3


y
y
y


Deste sistema tem-se:

1 5 5
1 3 7 4
1 4 3 2 3
1 1
1 2 2
1 2 3 3

+
+
y y
y y y
y y y y


Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

63
Com o vetor Y, a soluo do sistema original obtida resolvendo-se o sistema UX = Y, ou
seja:

1 1 2
0 1 1
0 0 1
5
4
3
1
2
3


x
x
x


Portanto:

1 3 3
1 1 4 1
1 1 2 5 2
3 3
2 3 2
1 2 3 1

+

x x
x x x
x x x x



Existem mtodos para casos especiais da matriz dos coeficientes. O mtodo de Choleski, por
exemplo, aplicado em sistemas onde a matriz A simtrica, considerando uma fatorao
A LL
T
, onde L matriz triangular inferior e L
T
a transposta da matriz L.

Um caso de muito interesse prtico quando a matriz dos coeficientes tridiagonal . Uma
matriz A da forma:

A
a c
d a c
d a c
d a
n n n
n n


1 1
2 2 2
1 1 1
0 0 0 0
0 0 0
0 0 0
0 0 0 0
...
...
... ...
...
...


pode ser fatorada como A = LU tal que:


L
d
d
d
n n
n n

1
2 2
1 1
0 0 0 0
0 0 0
0 0 0
0 0 0
...
...
...
...
...
U
n

1 0 0 0
0 1 0 0
0 0 0 1
0 0 0 0 1
1
2
1

...
...
...
...
...


onde:



1 1
1 1 1
1
2 3

a
c
d a i n
i i i
i i i i
( , , ..., )


Neste caso, para um sistema de equaes da forma AX = B, obtm-se facilmente o vetor X
uma vez que os sistemas LY = B e UX = Y so sistemas muito simples. Ou seja, a soluo do
sistema LY = B pode ser calculada como:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

64
y
b
y
b d y
i n
i
i i i
i
1
1
1
1
2 3

( , , ..., )


e, em seguida, a soluo do sistema UX = Y dada por:

x y
x y x i n n
n n
i i i i

1
1 2 1 ( , , ..., )




Exemplo. O problema de valor de contorno dado por:

d y
dx
dy
dx
y x y y
2
2
0 6
4 3
4
9
16419 ; ; .

pode ser resolvido numericamente discretizando-se o espao (x, y) e aproximando-se as
derivadas a diferenas finitas. Considerando-se, por exemplo, os valores de x = {0.05, 0.10,
0.15, 0.20, 0.25}, ou seja, valores de x igualmente espaados com passo h = 0.05, a soluo
do problema um vetor
y y y y y y { , , , , }
1 2 3 4 5
, que pode ser obtido resolvendo-se o
seguinte sistema de equaes lineares:


( ) ( )
( ) ( )
( ) ( )
( ) ( )
( )
( )
+ +
+ +
+ +
+ +
+ +


2 4 3 1 4 0 0 0
1 2 4 3 1 4 0 0
0 1 2 4 3 1 4 0
0 0 1 2 4 3 1 4
0 0 0 1 2 4 3
1 4
2
2
2
2
2
1
2
3
4
5
2
1 0
2
2
2
3
2
4
2
5 6
h h h
h h h
h h h
h h h
h h
y
y
y
y
y
h x y
h x
h x
h x
h x h y



Determinar a soluo do problema pelo mtodo de matrizes tridiagonais.


Neste caso, substituindo-se os valores de h,
y
0
e
y
6
tem-se o seguinte sistema AY = B:

17925 08 0 0 0
1 17925 08 0 0
0 1 17925 08 0
0 0 1 17925 08
0 0 0 1 17925
04445
0 0004
0 0009
00016
13160
1
2
3
4
5
. .
. .
. .
. .
.
.
.
.
.
.
y
y
y
y
y


Para a determinao das matrizes L e U tem-se:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

65




1 1 1
1 1 1 1
2 1 2 2 2
2 2 2 2
17925
08
17925
0 4463
17925 1 04463 13462
08
13462
05943


a
c
d a
c
.
.
.
.
. ( . ) .
.
.
.

d a
c
d a
c
d a
3 2 3 3 3
3 3 3 3
4 3 4 4 4
4 4 4 4
5 4 5 5 5
17925 1 05943 11982
08
11982
06677
17925 1 06677 11248
08
11248
0 7112
17925 1 07112 10813





+


+
. ( . ) .
.
.
.
. ( . ) .
.
.
.
. ( . ) .


ou seja:

L

17925 0 0 0 0
1 13462 0 0 0
0 1 11982 0 0
0 0 1 11248 0
0 0 0 1 10813
.
.
.
.
.


U

1 0 4463 0 0 0
0 1 05943 0 0
0 0 1 06677 0
0 0 0 1 07112
0 0 0 0 1
.
.
.
.


Assim, a soluo do sistema LZ = B dada por:

z
b
z
z
b d z
z
1
1
1
1
2
2 2 1
2
2
04445
17925
02480
0 0004 1 02480
13462
01845

.
.
.
. .
.
.

z
b d z
z
z
b d z
z
z
b d z
z
3
3 3 2
3
3
4
4 4 3
4
4
5
5 5 4
5
5
0 0009 1 01845
11982
01547
0 0016 1 01547
11248
01389
13160 1 01389
10813
13455

. .
.
.
. .
.
.
. .
.
.


e portanto, a soluo do problema dada resolvendo-se o sistema UY = Z, ou seja:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

66
y z y
y z y y
y z y y
y z y y
y z y y
5 5 5
4 4 4 5 4
3 3 3 4 3
2 2 2 3 2
1 1 1 2 1
13455
01389 0 7112 13455 10958
01547 06677 10958 08864
01845 05943 08864 0 7113
0 2480 04463 0 7113 05655





.
. ( . ) . .
. ( . ) . .
. ( . ) . .
. ( . ) . .



Portanto a soluo do sistema AY = B dada por: Y
05655
0 7113
08864
10958
13455
.
.
.
.
.


Observao.

Os mtodos de fatorao so mtodos diretos (ou seja, no iterativos) como o mtodo da
eliminao de Gauss. No caso da fatorao LU para matrizes tridiagonais o nmero de
operaes aritmticas elementares proporcional a n (lembrar que este nmero proporcional
a
3
n para o mtodo de Gauss).


3.3 Mtodos Iterativos

Seja o sistema de equaes lineares:
a x a x a x b
a x a x a x b
a x a x a x b
11 1 12 2 13 3 1
21 1 22 2 23 3 2
31
1
32
2
33
3
3
+ +
+ +
+ +


Supondo que
33 22 11
a e a , a so diferentes de zero, pode-se escrever:

x b a x a x a
1 1 12 2 13 3 11
( ) /

x b a x a x a
2 2 21 1 23 3 22
( ) /

x b a x a x a
3 3 31 1 32 2 33
( ) /

Sejam
) 0 (
3
) 0 (
2
) 0 (
1
x , x , x
aproximaes iniciais para x
1
, x
2
, x
3
. A partir das equaes acima,
pode-se estabelecer o esquema iterativo de Gauss-Jacobi:

33
) 1 k (
2
32
) 1 k (
1
31 3
) k (
3
22
) 1 k (
3
23
) 1 k (
1
21 2
) k (
2
11
) 1 k (
3
13
) 1 k (
2
12 1
) k (
1
a / ) x a x a b ( x
a / ) x a x a b ( x
a / ) x a x a b ( x






k = 1, 2, 3, ...


Do esquema iterativo de Gauss-Jacobi acima, pode-se notar que uma vez determinado o valor
de
) k (
1
x pela primeira equao, no preciso mais usar a aproximao anterior
) 1 k (
1
x

na 2
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

67
e 3 equaes. O mesmo ocorre em relao a
) k (
2
x e o uso de
) 1 k (
2
x

na 3 equao. Com
estas modificaes, tem-se o esquema iterativo de Gauss-Seidel , que faz uso das novas
aproximaes to logo elas se tornem disponveis:

33
) k (
2
32
) k (
1
31 3
) k (
3
22
) 1 k (
3
23
) k (
1
21 2
) k (
2
11
) 1 k (
3
13
) 1 k (
2
12 1
) k (
1
a / ) x a x a b ( x
a / ) x a x a b ( x
a / ) x a x a b ( x



k = 1, 2, 3, ...

Exemplo. Determinar a soluo do sistema:

3 2 2
5 6
4 2
1 2 3
1 2 3
1 2 3
x x x
x x x
x x x
+
+
+


Neste caso, pode-se escrever:
x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
5
6
1
4
2
+
+ +
+
( )
( )
( )



Seja a soluo inicial dada por:
0
0
0
X
) 0 (

. Considere inicialmente a aplicao do mtodo de
Gauss-Jacobi .


1 iterao:
x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
3
2 0 2 0 06667
1
5
6
1
5
6 0 0 12000
1
4
2
1
4
2 0 0 05000
+ +
+ + + +
+ +
( ) ( ) .
( ) ( ) .
( ) ( ) .

5000 . 0
2000 . 1
6667 . 0
X
) 1 (






2 iterao:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

68
x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
3
2 12000 2 05000 0 6000
1
5
6
1
5
6 06667 05000 14333
1
4
2
1
4
2 0 6667 12000 0 6333
+ +
+ + + +
+ +
( ) ( . . ) .
( ) ( . . ) .
( ) ( . . ) .

6333 . 0
4333 . 1
6000 . 0
X
) 2 (






3 iterao:
x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
3
2 14333 2 0 6333 0 6111
1
5
6
1
5
6 0 6000 0 6333 14467
1
4
2
1
4
2 06000 14333 07083
+ +
+ + + +
+ +
( ) ( . . ) .
( ) ( . . ) .
( ) ( . . ) .

7083 . 0
4467 . 1
6111 . 0
X
) 3 (


e assim por diante. A soluo deste sistema : X
11 17
25 17
12 17
06471
14705
07059
/
/
/
.
.
.



Considerando agora a aplicao do mtodo de Gauss-Seidel , tem-se:

1 iterao:

x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
3
2 0 2 0 06667
1
5
6
1
5
6 06667 0 13333
1
4
2
1
4
2 0 6667 13333 06666
+ +
+ + + +
+ +
( ) ( ) .
( ) ( . ) .
( ) ( . . ) .

6666 . 0
3333 . 1
6667 . 0
X
) 1 (



2 iterao:

x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
3
2 13333 2 06666 0 6666
1
5
6
1
5
6 06666 06666 14666
1
4
2
1
4
2 0 6666 14666 07000
+ +
+ + + +
+ +
( ) ( . . ) .
( ) ( . . ) .
( ) ( . . ) .

7000 . 0
4666 . 1
6666 . 0
X
) 2 (


3 iterao:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

69
x x x
x x x
x x x
1 2 3
2 1 3
3 1 2
1
3
2 2
1
3
2 14666 2 0 7000 06444
1
5
6
1
5
6 06444 0 7000 14689
1
4
2
1
4
2 0 6444 14689 07061
+ +
+ + + +
+ +
( ) ( . . ) .
( ) ( . . ) .
( ) ( . . ) .

7061 . 0
4689 . 1
6444 . 0
X
) 3 (




Portanto, nota-se que, aps 3 iteraes, a soluo aproximada obtida atravs do mtodo de
Gauss-Seidel, X
*
.
.
.

06444
14689
07061
est mais prxima da soluo exata X
06471
14705
07059
.
.
.
do que a
soluo obtida com o mtodo de Gauss-Jacobi, X
*
.
.
.

06111
14467
07083
. Em outras palavras, o mtodo
de Gauss-Seidel converge mais rapidamente do que o de Gauss-Jacobi.

Exemplo. Seja o sistema:
4 12
3 3 6
2 2 5 5
1 2 3
1 2 3
1 2 3
x x x
x x x
x x x
+
+ +
+ +


Sejam 0 x x x
) 0 (
3
) 0 (
2
) 0 (
1
. Neste caso, tem-se os seguintes resultados dos mtodos
iterativos de Gauss-Jacobi e Gauss-Seidel:

Gauss-Jacobi Gauss-Seidel
k x1 x2 x3 x1 x2 x3
0 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000
1 3.00000 2.00000 1.00000 3.00000 3.00000 -1.40000
2 2.75000 2.66667 -1.00000 1.90000 3.10000 -1.00000
3 2.08333 3.25000 -1.16667 1.97500 2.99167 -0.98667
4 1.89583 3.08333 -1.13333 2.00542 2.99736 -1.00111
5 1.94583 3.00972 -0.99167 2.00038 3.00050 -1.00035
6 1.99965 2.97917 -0.98222 1.99979 3.00005 -0.99993
7 2.00965 2.99396 -0.99152 2.00000 2.99998 -0.99999
8 2.00363 3.00039 -1.00144 2.00001 3.00000 -1.00000
9 1.99954 3.00169 -1.00161 2.00000 3.00000 -1.00000
10 1.99918 3.00038 -1.00049
11 1.99978 2.99989 -0.99982
12 2.00007 2.99987 -0.99986
13 2.00007 2.99998 -0.99997
14 2.00001 3.00001 -1.00002
15 1.99999 3.00001 -1.00001


As equaes de recorrncia dos mtodos iterativos de Gauss-Jacobi e Gauss-Seidel podem
ser generalizadas, para um sistema com n equaes como:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

70
MTODO DE GAUSS-JACOBI:

n ,..., 2 , 1 i a / ) x a b ( x
i , i
n
i j
1 j
) 1 k (
j
j , i i
) k (
i




MTODO DE GAUSS-SEIDEL:

n ,..., 2 , 1 i a / ) x a x a b ( x
i , i
1 i
1 j
n
1 i j
) 1 k (
j
j , i
) k (
j
j , i i
) k (
i



onde k = 1, 2, ... representa o nmero da iterao e 0 a
ii
(i = 1, 2, ..., n).

Uma observao importante que o nmero de operaes aritmticas elementares em cada
iterao dos mtodos de Gauss-Jacobi e Gauss-Seidel proporcional a
2
n . O esforo
computacional total ser determinado pelo nmero de iteraes necessrias para alcanar a
convergncia.

Teorema (Critrio das Linhas). Seja o sistema de n equaes lineares:

a x b i n
i j j i
j
n
,
, ,...,

1 2
1

e seja:
| a |
| a |
kk
n
k j , 1 j
kj
k


. Se
1 } { Max
n , , 2 , 1 k
k
<
L
ento os mtodos de Gauss-Jacobi e
Gauss-Seidel convergem, independente da escolha da aproximao inicial. Uma matriz que
satisfaz o critrio das linhas denominada matriz estritamente diagonal dominante.


Observe que o teorema acima estabelece uma condio suficiente, mas no necessria, para
a convergncia, ou seja, os esquemas iterativos de Gauss-Jacobi e de Gauss-Seidel podero
tembm convergir para outras classes de sistemas de equaes lineares. Ver, para ilustrar, a
tabela de resultados do exemplo anterior, onde a matriz dos coeficientes no estritamente
diagonal dominante e para o qual o mtodo de Gauss-Jacobi converge aps 15 iteraes e o
mtodo de Gauss-Seidel converge aps 9 iteraes.

A questo importante a seguinte: se a matriz dos coeficientes for estritamente diagonal
dominante, o teorema garante que para qualquer soluo inicial os mtodos iterativos
convergem. No caso da tabela acima, os mtodos convergiram para uma soluo inicial nula.
Ser que iro convergir para uma outra estimativa inicial qualquer? Da a importncia do
teorema acima, que garante que, se a matriz dos coeficientes for estritamente diagonal
dominante os mtodos de Gauss-Jacobi e Gauss-Seidel iro convergir, qualquer que seja a
estimativa inicial escolhida.

Observe que o critrio das linhas pode ser satisfeito aps uma permutao de linhas ou
colunas. Por exemplo, seja o sistema:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

71
6 x 8 x 6
3 x 2 x 2 x 5
2 x x 3 x
3 2
3 2 1
3 2 1
+
+ +
+ +


A matriz dos coeficientes desse sistema no satisfaz o critrio das linhas, pois para a 1 linha
tem-se: 1 4
1
1 3
1
>
+
. Contudo, permutando-se a primeira linha com a segunda, tem-se o
sistema:

6 x 8 x 6
2 x x 3 x
3 x 2 x 2 x 5
3 2
3 2 1
3 2 1
+
+ +
+ +


que equivalente ao sistema original mas que apresenta uma matriz dos coeficientes que
satisfaz o critrio das linhas. Ou seja, aplicando-se um mtodo iterativo a esta nova forma do
sistema a convergncia estar assegurada.


O critrio das linhas assegura a convergncia tanto do mtodo de Gauss-Jacobi como do
mtodo de Gauss-Seidel. Entretanto, para o mtodo de Gauss-Seidel existe um outro critrio
que tambm estabelece condies suficientes para a convergncia, como mostra o teorema a
seguir.

Mtodo de Gauss-Seidel Critrio de Sassenfeld

Teorema. Seja o sistema de n equaes lineares:

a x b i n
i j j i
j
n
,
, ,...,

1 2
1

e sejam:
| a |
| a |
11
n
2 j
j 1
1

e
| a |
| a | | a | | a | | a | | a |
jj
jn 1 jj 1 j 1 jj 2 2 j 1 1 j
j
+ + + + + +

+
L L
.

Se 1 } { Max
n , , 2 , 1 k
k
<
L
ento o mtodo de Gauss-Seidel converge, qualquer que seja a
estimativa inicial. Alm disso, quanto menor for o valor de , mais rpida ser a convergncia.

Exemplo. Seja o seguinte sistema:

3 x 3 x
1 x x
9 x 3 x x 2
3 1
3 2
3 2 1
+
+
+ +


Com esta disposio, o critrio de Sassenfeld no satisfeito, pois 1 2
2
3 1
1
>
+
.
Contudo, trocando-se a primeira equao com a terceira, tem-se:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

72

9 x 3 x x 2
1 x x
3 x 3 x
3 2 1
3 2
3 1
+ +
+
+


e, em seguida, trocando-se a 1 coluna pela 3 , tem-se:

9 x 2 x x 3
1 x x
3 x x 3
1 2 3
2 3
1 3
+ +

+


e nesta forma, tem-se:


3
1
1

3
1
1
0
3
1
1
2

+

3
2
2
3
1
1
3
1
3
3

+


Portanto, como 1
3
2
} , , { Max
3 2 1
< , o critrio de Sassenfeld est satisfeito e tem-se
garantida a convergncia do mtodo de Gauss-Seidel.


O mtodos iterativos de Gauss-Jacobi e de Gauss-Seidel devem utilizar algum critrio de
parada. Os critrios mais comuns levam em conta o erro absoluto e o erro relativo de duas
iteraes sucessivas, ou seja, considera-se que o mtodo convergiu aps k iteraes se um
dos critrios a seguir foi satisfeito:

) relativo erro (
x
x x
Max
) absoluto erro ( x x Max
) 1 k (
i
) 1 k (
i
) k (
i
n i 1
) 1 k (
i
) k (
i
n i 1
<

<




onde o valor requerido para a preciso.

Outra forma determinar o vetor resduo:


n
1 j
) k (
j
j , i i
) k (
i
x a b r com i = 1, 2, ..., n

e formular um critrio de parada com base em alguma medida deste vetor, por exemplo,
alguma norma do vetor resduo ser menor que

(preciso). As normas mais comumente


usadas so:

Norma-2 = r
i
i
n
2
1



Norma- = Max r
i n
i
1
| |

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

73


3.3.1 ESTUDO DA CONVERGNCIA DOS MTODOS ITERATIVOS

Seja o sistema AX = B, ou seja, a x b
i j j i
j
n
,

1
, com a
i,i
0 e i = 1, 2, ..., n. A matriz dos
coeficientes A pode ser escrita como: A = L + D + U
onde:

L =
0 0 0
0 0
0
2 1
1 2
...
...
...
...
,
, ,
a
a a
n n
uma matriz estritamente triangular inferior,

D =
a
a
a
n n
11
2 2
0 0
0 0
0 0
,
,
,
...
...
...
...
uma matriz diagonal, e

U =
0
0 0
0 0 0 0
12 1
2
a a
a
n
n
, ,
,
...
...
...
uma matriz estritamente triangular superior.

Ento, o sistema original pode ser escrito como: (L + D + U)X = B. Os termos desta equao
podem ser reestruturados de vrias maneiras, cada uma das quais levando a um mtodo
iterativo. Por exemplo:

DX = -(L + U)X + B

o que leva ao esquema iterativo de Gauss-Jacobi:

B D X ) U L ( D X
1 ) 1 k ( 1 ) k (
+ +

O esquema iterativo de Gauss-Seidel segue do esquema de Gauss-Jacobi, separando-se a
soma (L + U):

B D UX D LX D X
1 ) 1 k ( 1 ) k ( 1 ) k (
+

Neste caso, multiplicando-se todos os termos por D e rearranjando, tem-se:

B UX X ) L D (
) 1 k ( ) k (
+ +


e portanto:

B ) L D ( UX ) L D ( X
1 ) 1 k ( 1 ) k (
+ + +

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

74
Logo, possvel escrever os esquemas iterativos de Gauss-Jacobi e de Gauss-Seidel na
forma: G MX X
) 1 k ( ) k (
+

, onde M e G so as matrizes mostradas na tabela a seguir:

M G
Gauss-Jacobi -D
-1
(L + U) D
-1
B
Gauss-Seidel -(D + L)
-1
U (D + L)
-1
B


Seja
) k ( ) k (
X X E o erro na k-sima iterao, onde X a soluo exata do sistema e
) k (
X
a soluo obtida na k-sima iterao. Ento, como:

G MX X
) 1 k ( ) k (
+



para a soluo exata, deve valer:

X MX G +

Subtraindo estas duas equaes, tem-se:

43 42 1
43 42 1
) 1 k (
) k (
E
) 1 k (
E
) k (
) X X ( M X X


Logo, pode-se escrever que:

) 0 ( k ) 2 k ( 2 ) 2 k ( ) 1 k ( ) k (
E M ... E M ) ME ( M ME E



onde
) 0 (
E o erro na aproximao inicial
) 0 (
X . Portanto o processo iterativo ir convergir se
M
k
tender para a matriz nula medida que k aumentar.

Exemplo. Verificar a convergncia do mtodo iterativo de Gauss-Jacobi para o sistema de
equaes lineares a seguir.

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

'



Neste caso, A =
4 1 0
1 4 1
0 1 4

. Escrevendo A na forma L+D+U, tem-se:



L =
0 0 0
1 0 0
0 1 0

D =
4 0 0
0 4 0
0 0 4
U =
0 1 0
0 0 1
0 0 0


Para o mtodo de Gauss-Jacobi, M = -D
-1
(L + U). Tem-se ento:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

75
M =

_
,

1 4 0 0
0 1 4 0
0 0 1 4
0 0 0
1 0 0
0 1 0
0 1 0
0 0 1
0 0 0
/
/
/
=

=

1 4 0 0
0 1 4 0
0 0 1 4
0 1 0
1 0 1
0 1 0
/
/
/
=
0 1 4 0
1 4 0 1 4
0 1 4 0
/
/ /
/


Determinando-se as potncias de M, tem-se:

M
1
0 1 4 0
1 4 0 1 4
0 1 4 0

/
/ /
/


M
2
1 16 0 1 16
0 0 0
1 16 0 1 16

/ /
/ /


M
3
0 0 0
0 0 0
0 0 0


Portanto o processo iterativo de Gauss-Jacobi ir convergir, qualquer que seja a aproximao
inicial da soluo.


Exerccio. Verificar a convergncia do mtodo de Gauss-Seidel para o sistema do exemplo
acima.


3.4 REFINAMENTO ITERATIVO DA SOLUO

Devido aos erros de aproximao j referidos anteriormente, nem sempre possvel
determinar, em computadores, a soluo do sistema AX = B de forma exata. Seja R = B - AX*,
o vetor resduo da soluo X* encontrada (X* portanto uma aproximao da soluo exata
X). Evidentemente, R representa o quanto a soluo calculada deixa de satisfazer ao sistema
de equaes original ( importante observar que devido ao problema de mal-condicionamento,
o vetor resduo nem sempre um indicador confivel da preciso).

Seja V = X - X*, o vetor diferena entre a soluo verdadeira e a soluo aproximada. Ento:

R = B - AX* = AX - AX* = AV

Portanto, teoricamente, pode-se determinar o vetor V (e, por consequncia, a soluo
verdadeira X = X* + V) resolvendo o sistema AV = R (note que para calcular V, basta aplicar as
equaes de eliminao sobre o vetor R, uma vez que X* foi obtido como soluo do sistema
AX* = B, que tem a mesma matriz dos coeficientes que AV = R). O problema que, como
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

76
novamente preciso resolver um sistema de equaes, ao invs do valor verdadeiro V, ser
obtido um valor aproximado V*. Da a necessidade de um processo iterativo:

1. Dada uma soluo inicial aproximada X*;
2. Enquanto o critrio de convergncia no estiver satisfeito, fazer:
a. Calcular R = B - AX*
b. Resolver o sistema AV = R, para determinar o vetor V*
c. Fazer X* = X* + V*



Exemplo.
Considere que para o sistema:
2 0
3 4 2 1
3 2 4 0
1 2 3
1 2 3
1 2 3
x x x
x x x
x x x

+
+

'

obteve-se a seguinte soluo


aproximada: X
*
.
.
.

015
022
0 03
. Melhorar esta soluo pelo processo de refinamento sucessivo.

Neste caso: R = B - AX* =
0
1
0
2 1 1
3 4 2
3 2 4
015
022
003
0
1
0
005
127
013
005
0 27
013

.
.
.
.
.
.
.
.
.


Resolvendo-se o sistema AV = R, ou seja:

2 1 1
3 4 2
3 2 4
005
027
013
1
2
3

v
v
v
.
.
.

obtem-se:
V* =

0 0500
00367
0 0133
.
.
.


Portanto a nova aproximao da soluo ser:

X* = X* + V* =
015
022
003
00500
00367
0 0133
01000
01833
00167
.
.
.
.
.
.
.
.
.
+


Continuando o processo, tem-se:

R = B - AX* =
0
1
0
2 1 1
3 4 2
3 2 4
01000
01833
00167
0
1
0
0 0000
0 9998
00002
0 0000
00002
0 0002

.
.
.
.
.
.
.
.
.



Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

77
AV = R
2 1 1
3 4 2
3 2 4
00000
00002
00002
1
2
3

v
v
v
.
.
.
V* =
000000
000003
000003
.
.
.


X* = X* + V* =
01000
01833
00167
0 00000
0 00003
000003
010000
018333
001667
.
.
.
.
.
.
.
.
.
+



Assim, a cada passo do refinamento obtm-se melhores aproximaes para a soluo do
sistema:
X =
1 10
11 60
1 60
/
/
/
.



EXERCCIOS RESOLVIDOS


1. Resolver, pelo mtodo da eliminao de Gauss, o seguinte sistema de equaes lineares:

c
c c c
c c c
0
0 1 2
0 1 2
2
2 4 1
5 25 1

+ +
+ +

'



Soluo:

Escrito na forma matricial o sistema acima apresenta-se como:

1 0 0
1 2 4
1 5 25
2
1
1
0
1
2

c
c
c


O mtodo de Gauss utilizado em duas fases: na primeira (denominada fase de
eliminao ou fase de triangularizao), a matriz dos coeficientes transformada em uma
matriz triangular (superior ou inferior); na segunda fase (denominada fase de retro-
substituio ou fase de substituio, dependendo se a matriz dos coeficientes foi
transformada em uma matriz triangular superior ou inferior, respectivamente), determinam-
se os valores das variveis.

No caso acima, como a matriz dos coeficientes A =
1 0 0
1 2 4
1 5 25
, para a triangularizao
basta tornar nulo o elemento A
2 3
4
,
. Isto pode ser feito substituindo-se a 2 linha de A
por: (2 linha -
4
25
(3 linha)). Com isto tem-se o sistema:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

78
1 0 0
21 25 6 5 0
1 5 25
2
29 25
1
0
1
2
/ / /

c
c
c


onde a matriz dos coeficientes triangular inferior.

Portanto, aplicando-se a fase de substituio:


c
c c c
c c c c
0
0 1 1
0 1 2 2
2
21
25
6
5
29
25
71
30
2 367
5 25 1
13
30
0 433

+
+ +
.
.



2. Resolver o sistema de equaes lineares a seguir, pelo mtodo da eliminao de Gauss.

x y z
x y z
x y z
+ +
+ +
+ +

'

0
2 4 3
3 9 14


Soluo:

O sistema acima pode ser escrito como:

1 1 1
1 2 4
1 3 9
0
3
14

x
y
z


Para a aplicao do mtodo de Gauss, pode-se trabalhar apenas com a matriz aumentada:

A =
1 1 1 0
1 2 4 3
1 3 9 14


Fase de eliminao (matriz triangular superior):

Passo 1:

transformar o elemento
21
a em zero: substituir a 2 linha por (2 linha 1 linha)
transformar o elemento
31
a em zero: substituir a 3 linha por (3 linha 1 linha)

Aps este passo, a matriz aumentada apresenta-se como:

Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

79
A =
1 1 1 0
0 1 3 3
0 2 8 14

Passo 2:

transformar o elemento
32
a em zero: substituir a 3

linha por (3 linha - 22 linha)



Aps este passo, a matriz aumentada apresenta-se como:

A =
1 1 1 0
0 1 3 3
0 0 2 8


Fase de retro-substituio:

z
y z y z y
x y z x y z x

+
+ +
8
2
4
3 3 3 3 3 3 4 9
0 9 4 5 ( )



3. Resolver o sistema:
+ +
+
+
+

'

x x x
x x x
x x x
x x x
1 2 4
2 3 4
1 2 3
1 3 4
5 2
2 4 1
8 1
4 2 0
pelo mtodo de Gauss-Seidel, comeando
com
T 0
) 0 , 0 , 0 , 0 ( x .

Soluo:

Para garantir a convergncia do mtodo de Gauss-Seidel, deve-se ter uma matriz de
coeficientes diagonal dominante. Para isto, pode-se reescrever o sistema de equaes
como:

8 1 1 0
1 5 0 1
1 0 4 2
0 1 2 4
1
2
0
1
1
2
3
4



x
x
x
x


Portanto, as equaes de Gauss-Seidel para este sistema so:

x x x
x x x
x x x
x x x
1 2 3
2 1 4
3 1 4
4 2 3
1 8
2 5
2 4
1 2 4
+
+
+
+ +
( ) /
( ) /
( ) /
( ) /


Portanto, partindo-se da estimativa inicial x
0
0 0 0 0 ( , , , ) tem-se:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

80

Passo Clculos Soluo atual
0 (0.000, 0.000, 0.000, 0.000)
1 x
1
1 0000 0000 8 0125 + ( . . ) / .

(0.125, 0.000, 0.000, 0.000)
x
2
2 0 125 0 000 5 0 425 + ( . . ) / .
(0.125, 0.425, 0.000, 0.000)
x
3
0125 2 0000 4 0031 + ( . . ) / .

(0.125, 0.425, -0.031, 0.000)
x
4
1 0 425 2 0 031 4 0 341 + + ( . . ) / .
(0.125, 0.425, -0.031, 0.341)
2 x
1
1 0 425 0031 8 0182 + ( . ( . )) / .

(0.182, 0.425, -0.031, 0.341)
x
2
2 0 182 0 341 5 0 368 + ( . . ) / .
(0.182, 0.368, -0.031, 0.341)
x
3
0182 2 0 341 4 0125 + ( . . ) / .

(0.182, 0.368, 0.125, 0.341)
x
4
1 0368 2 0125 4 0 405 + + ( . . ) / .

(0.182, 0.368, 0.125, 0.405)
3 x
1
1 0368 0125 8 0155 + ( . . )) / .

(0.155, 0.368, 0.125, 0.405)
x
2
2 0155 0 405 5 0350 + ( . . ) / .

(0.155, 0.350, 0.125, 0.405)
x
3
0155 2 0 405 4 0164 + ( . . ) / .
(0.155, 0.350, 0.164, 0.405)
x
4
1 0350 2 0164 4 0420 + + ( . . ) / .

(0.155, 0.350, 0.164, 0.420)
4 x
1
1 0 350 0164 8 0148 + ( . . )) / .
(0.148, 0.350, 0.164, 0.420)
x
2
2 0148 0420 5 0346 + ( . . ) / .

(0.148, 0.346, 0.164, 0.420)
x
3
0148 2 0 420 4 0173 + ( . . ) / .

(0.148, 0.346, 0.173, 0.420)
x
4
1 0346 2 0173 4 0 423 + + ( . . ) / . (0.148, 0.346, 0.173, 0.423)

Para ilustrar, a soluo deste sistema (obtida com o programa Mathematica) corresponde
ao vetor:

(0.146, 0.344, 0.175, 0.424)


4. Decompor a matriz: A
1 2 3
2 8 7
2 16 12
em um produto LU, onde L matriz triangular inferior
unitria e U matriz triangular superior. Em seguida, encontrar a soluo do sistema de
equaes:
x x x
x x x
x x x
1 2 3
1 2 3
1 2 3
2 3 2
2 8 7 7
2 16 12 10
+ +
+ +
+ +

'



Soluo:

Aplicando o algoritmo de Doolittle para determinar a fatorao LU da matriz A, tem-se:

A
1 2 3
2 8 7
2 16 12
fatorada como: LU =
1 0 0
2 1 0
2 3 1
1 2 3
0 4 1
0 0 3


Portanto, o sistema:


1 2 3
2 8 7
2 16 12
2
7
10
1
2
3

x
x
x
pode ser desmembrado nos seguintes sistemas:
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

81


1 0 0
2 1 0
2 3 1
2
7
10
1 2 3
0 4 1
0 0 3
1
2
3
1
2
3
1
2
3

y
y
y
e
x
x
x
y
y
y


Portanto, do primeiro sistema vem:


y
y y y
y y y y
1
1 2 2
1 2 3 3
2
2 7 3
2 3 10 3

+
+ +


e assim o segundo sistema torna-se:


1 2 3
0 4 1
0 0 3
2
3
3
1
2
3

x
x
x


cuja soluo :


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

+
+ +



EXERCCIOS PROPOSTOS


1. Dado o sistema de equaes lineares a seguir:

2 12 8 27
4 7 2 5 4
7 9 5 3 11
12 8 3 6 49
x y z w
x y z w
x y z w
x y z w
+ +
+ +
+ +
+ +

'


pede-se:

a) reescrev-lo em notao matricial
b) resolv-lo utilizando o mtodo da eliminao de Gauss
c) resolv-lo utilizando o mtodo de Gauss-Jacobi


2. Calcular o determinante da matriz A abaixo, utilizando o mtodo da eliminao de Gauss.
A
100 0 67 0 33
0 45 100 055
067 033 100
. . .
. . .
. . .


3. Verifique quais so os valores de k que garantem a convergncia do mtodo de Gauss-
Seidel para o sistema de equaes a seguir. Em seguida, escolha um valor possvel para k
e encontre a soluo do sistema.
Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

82

kx x x
kx x x
x x x
1 2 3
1 2 3
1 2 3
3 1
6 2
6 7 3
+ +
+ +
+ +

'




4. Dado o sistema de equaes lineares:

4 1 0 0
1 4 1 0
0 1 4 1
0 0 1 4
1
1
1
1
1
2
3
4


x
x
x
x


pede-se:

a) obter o vetor soluo atravs do mtodo de Gauss-Jacobi
b) obter o vetor soluo atravs do mtodo de Gauss-Seidel

considerando x
T (
( . , . , . , . )
0)
000 0 00 000 000 , clculos feitos com trs casas decimais, e
preciso <

10
2
.


5. Resolver o sistema de equaes lineares a seguir utilizando o mtodo da fatorao LU.

0 12 8 7
2 4 6 3
6 12 7 7
6 12 1 4
53
35
58
22
1
2
3
4

x
x
x
x



6. Um fazendeiro est criando porcos para vender e deseja determinar as quantidades dos
tipos de alimentos disponveis a ser dada a cada porco para atingir certos requisitos
nutritivos mnimos. O nmero de unidades de cada ingrediente nutritivo bsico contido em
1 kg de cada tipo de alimento disponvel dado pela tabela a seguir:

Ingrediente
Nutritivo
Quilo de
Milho
Quilo de
Mandioca
Quilo de
Alfafa
Requisito
Mnimo
Carboidratos 3 8 6 18
Protenas 9 2 4 20
Vitaminas 1 2 6 15

Resolver o problema usando o mtodo de Gauss-Seidel.
EXERCCIOS DE PROGRAMAO


1. Implementar o mtodo da eliminao de Gauss para a soluo de um sistema de N
equaes lineares AX = B, como uma funo X = ELGAUSS(N,A,B).


Clculo Numrico 3 Soluo de Sistemas de Equaes Lineares

83
2. Implementar o mtodo iterativo de Gauss-Seidel para a soluo de um sistema de N
equaes lineares AX = B, como uma funo X = GSEIDEL(EPS,N,A,B) utilizando como
critrio de parada o erro relativo de duas iteraes sucessivas, ou seja:

Max
x x
x
i n
i
k
i
k
i
k
1
1
1

<
[ ] [ ]
[ ]


Utilize o seguinte algoritmo:

x b a x a x a i n
i
k
i i j
j
k
i j
j
k
j i
n
j
i
i i
[ ]
,
[ ]
,
[ ]
,
( ) / , ,...,


1
1 1
1
1 2


onde k = 1, 2, ... representa o nmero da iterao e a
i,i

0 (i = 1, 2, ..., n).

Conferir a soluo encontrada utilizando o programa Mathematica empregando as
seguintes instrues:

a = { {a11, a12, ..., a1n},
{a21, a22, ..., a2n},
...
{an1, an2, ..., ann} }
b = { b1, b2, ..., bn}
x = LinearSolve[a,b]


3. Implementar o mtodo de Doolittle para resolver um sistema de N equaes lineares da
forma AX = B como uma funo X = DOOLITTLE(N, A, B)

Testar a funo DOOLITTLE na soluo do seguinte problema:

1 1 2
1 2 1
1 3 1
5
7
2
2
1
3
1
2
3
1
2
3


z
z
z
z
z
z



85

Clculo Numrico
4. INTERPOLAO


4.1 - Introduo

Seja { (x
i
, y
i
), i = 0, 1, ..., n } um conjunto de pontos conhecidos y
i
= f(x
i
) para uma funo f(x)
desconhecida ou muito trabalhosa de ser calculada analiticamente. O problema a ser estudado
neste captulo : "Como calcular o valor de f(x*), onde x* um ponto diferente de qualquer
dos pontos x
i
(i = 0, 1, ..., n) conhecidos?"

Exemplo. Dada a tabela de pontos abaixo, representando uma funo y = f(x), calcular f(2.50).

x
i
y
i

1.00 1.500
2.00 2.300
3.00 7.100

Admitindo-se que os valores tabelados so corretos (ou confiveis), o problema como obter,
de forma confivel , valores da funo para pontos no tabelados. Para isto, como f(x) uma
funo conhecida apenas em alguns pontos, o que se desej a construir uma funo (x) tal
que:

(x
i
) = f(x
i
), para i = 0, 1, ..., n
(x*) f(x*), para x* [x
0
, x
n
] e x* x
i
(i = 0, 1, ..., n)

Graficamente:

y
x
x0 x1 x2
x3
y = f(x)
Funo Interpoladora


A funo (x) denomina-se funo interpoladora e, dependendo da forma de (x) tem-se
diferentes tipos de interpolao. Em geral a funo interpoladora pertence a uma das
seguintes classes:

P (Polinmios):
( ) ... x a a x a x
n
n
+ + +
0 1

F (Fourier): ( ) cos( ) sen( ) x a ix b ix
i i
+
E (Exponenciais):
( ) x ae
bx


S (Splines): ( ) x = p
1
(x) + p
2
(x) + ... + p
k
(x)
Clculo Numrico 4 Interpolao

86
No caso geral, pode-se imaginar a funo interpoladora como sendo uma combinao de
funes f
i
(x) (i = 0, 1, ..., n), ou seja:

f(x) ) x ( f c ) x ( f c ) x ( f c ) x (
n n 1 1 0 0
+ + + L

As funes f
i
(x) (i = 0, 1, ..., n) devem ser escolhidas de acordo com a natureza do fenmeno
que resultou na tabela de pontos. O problema, portanto, se resume em determinar os
coeficientes c
i
(i = 0, 1, ..., n). Entretanto, como (x
i
) = f(x
i
) = y
i
(pela definio de funo
interpoladora), os coeficientes c
i
podem ser determinados resolvendo-se o seguinte sistema
de equaes lineares:

c f x c f x c f x y
c f x c f x c f x y
c f x c f x c f x y
n n
n n
n n n n n n
0 0 0 1 1 0 0 0
0 0 1 1 1 1 1 1
0 0 1 1
( ) ( ) ... ( )
( ) ( ) ... ( )
...
( ) ( ) ... ( )
+ + +
+ + +
+ + +

'



ou seja:
f x f x f x
f x f x f x
f x f x f x
c
c
c
y
y
y
n
n
n n n n n n
0 0 1 0 0
0 1 1 1 1
0 1
0
1
0
1
( ) ( ) ... ( )
( ) ( ) ... ( )
...
( ) ( ) ... ( )
... ...



4.2 Interpolao Polinomial

Polinmios so boas funes interpoladoras porque so fceis de calcular, de derivar e de
integrar. O caso mais simples ocorre quando a funo interpoladora um polinmio linear:

( ) ( ) ( ) x c f x c f x c c x + +
0 0 1 1 0 1


ou seja, neste caso: f
0
(x) = 1 e f
1
(x) = x. Portanto, neste caso, pretende-se passar um
polinmio do 1 grau (segmento de reta) a cada par de pontos da tabela, conforme mostra a
figura a seguir.


y
x
x0 x1 x2
x3
y = f(x)




Para um dado valor i (i = 1, 2, ..., n-1) tem-se:
Clculo Numrico 4 Interpolao

87

x c c ) x (
1 0 i
+

passando pelos pontos x
i
e x
i+1
, como ilustra a figura a seguir:



y
x
xi xi+1
y = f(x)
yi
yi+1



Assim, a equao de ) x (
i
dada pelo seguinte sistema de equaes:

1 i
i
1
0
1 i
i
y
y
c
c
x 1
x 1
+ +

ou seja:

i
i i i i
i i
c
i i
i i
c
x
x y x y
x x
y y
x x
x ( )

1
]
1
+

1
]
1
+ +
+
+
+
1 1
1
1
1
0 1
1 2 444 3 444 1 2 4 3 4


Para a tabela toda { (x
i
, y
i
), i = 0, 1, ..., n }, a funo interpoladora (x) ser dada por:

) x ( ) x ( ) x ( ) x (
n 1 0
+ + + L


onde ) x (
i
= 0 se x [x
i
, x
i+1
].

Evidentemente, outros polinmios (de graus 2, 3, ...) poderiam ser considerados.

Exemplo. Dada a tabela abaixo, onde y
i
= f(x
i
) (i = 0, 1, 2, 3), determinar f(2.8) usando
interpolao linear:

x
i
1 2 3 4
y
i
6 5 2 -9

Neste caso, considerando o intervalo [2, 3], o polinmio de interpolao dado por:

( ) x x x
c c

1
]
1
+

1
]
1

3 5 2 2
3 2
2 5
3 2
11 3
0 1
1 2 44 3 44 123


Clculo Numrico 4 Interpolao

88
(notar que, por construo, a funo (x) uma funo interpoladora no intervalo [2, 3], ou
seja: ( x
1
) = (2) = 5 = y
1
e (x
2
) = (3) = 2 = y
2
).

Assim: f(2.8) (2.8) = 11 - 3(2.8) = 2.6


Exemplo. Seja o mesmo problema acima mas considerando um polinmio interpolador de
segundo grau.

Neste caso, o polinmio interpolador ser da forma:

( ) x c c x c x + +
0 1 2
2


e para determinar os coeficientes c
0
, c
1
e c
2
devem ser considerados 3 pontos. Como o
ponto que se deseja interpolar 2.8, tem-se portanto duas escolhas: considerar os pontos do
intervalo [1, 3] ou do intervalo [2, 4]. Seja, por exemplo, o intervalo [1, 3]. Tem-se ento:

( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
1 6 1 1 6
2 5 2 2 5
3 2 3 3 2
0 1 2
2
0 1 2
2
0 1 2
2
+ +
+ +
+ +
c c c
c c c
c c c


ou seja:

2
5
6
c
c
c
9 3 1
4 2 1
1 1 1
2
1
0




Resolvendo o sistema, tem-se:
c
0
= 5,
c
1
= 2 e
c
2
= -1, ou seja, para o intervalo [1, 3] a
funo interpoladora ser:
( ) x x x + 5 2
2


Assim: f(2.8) (2.8) = 5 + 2(2.8) - (2.8)
2
= 2.76


Considerando o intervalo [2, 4] tem-se o seguinte sistema de equaes lineares:

1 2 4
1 3 9
1 4 16
5
2
9
0
1
2
c
c
c



e portanto, a funo interpoladora ser: ( ) x x x + 13 17 4
2
. Neste caso: f(2.8) (2.8) =
2
) 8 . 2 ( 4 ) 8 . 2 ( 17 13 + = 3.24

Uma questo importante neste caso : Qual a melhor escolha para o valor interpolado? Os
teoremas a seguir ajudam na resposta a esta questo.

Clculo Numrico 4 Interpolao

89
4.3 - O Erro na Interpolao

Teorema (Weierstrass). Se f(x) uma funo contnua em [a, b], ento para qualquer >0,
existe um polinmio p
n
(x), com n = g(), tal que | f(x) - p
n
(x) | < para x [a, b].

Este teorema d uma boa razo para usar polinmios como funo interpoladora. Entretanto, o
teorema no indica qual deva ser o grau de um polinmio interpolador para uma tabela de
pontos { (x
i
, y
i
), i = 0, 1, ..., n }.

Teorema (Erro de Truncamento). Seja (x) um polinmio de grau n tal que (x
i
) = y
i
= f(x
i
) (i =
0, 1, ..., n), onde f(x) uma funo definida em [a, b] e x
i
[a, b] (i = 0, 1, ..., n). Se f (n+1)
vezes continuamente diferencivel em [a, b], ento para qualquer x* [a, b] tem-se que:
E(x*) = f(x*) - (x*) = *) x ( G
)! 1 n (
) ( f
) 1 n (
+

+

onde ) x x ( ) x x )( x x ( ) x ( G
n 1 0
L .

Portanto, por este teorema, quanto maior o grau do polinmio interpolador, menor ser o erro
de truncamento. O fator ) x * x ( ) x * x )( x * x ( *) x ( G
n 1 0
L ser tanto menor (em valor
absoluto) quanto mais prximo o ponto x* estiver de um dos x
i
(i = 0, 1, ..., n). Alm disso, o
valor de | G(x) | atinge valores mximos nos extremos do intervalo ] x , x [
n 0
.

Para ilustrar que quando se considera o intervalo
[ ] x x
n 0
, , a funo G(x) atinge valores
mximos (em valor absoluto) nos intervalos
[ ] x x
0 1
, e
[ ] x x
n n 1
, , considere os exemplos a
seguir.

a) G(x) = (x-1)(x-2)(x-3)(x-4)(x-5)

2 3 4 5
-3
-2
-1
1
2
3


b) G(x) = (x-1)(x-2)(x-3)(x-4)(x-5)(x-6)

1 2 3 4 5 6
-15
-10
-5
5

Clculo Numrico 4 Interpolao

90
c) G(x) = (x-0.1)(x-0.2)(x-0.3)(x-0.4)(x-0.5)(x-0.6)(x-0.7)

0.1 0.2 0.3 0.4 0.5 0.6 0.7
-0.00001
-5. 10
-6
5. 10
-6
0.00001


Portanto, para minimizar o valor do erro, deve-se escolher um intervalo [ ] x x
n 0
, de tal forma
que o ponto x* para o qual deseja-se calcular o valor interpolado seja o mais central possvel
no intervalo
[ ] x x
n 0
, (ou seja, o mais longe possvel das extremidades).


Observao.

Se x* estiver fora do intervalo [a, b] (extrapolao), a expresso para o erro de truncamento
ainda vlida mas, neste caso, o fator ) x * x ( ) x * x )( x * x ( *) x ( G
n 1 0
L ser muito
grande (em valor absoluto).


Assim, no caso acima, 2.8 mais central ao intervalo [2, 4] do que ao intervalo [1, 3]. Portanto,
a melhor escolha seria f(2.8) = 3.24.


Para uma tabela de pontos { (x
i
, y
i
), i = 0, 1, ..., n }, fazendo f
i
(x) = x
i
, tem-se o polinmio
interpolador dado por:

n
n
2
2 1 0 n n 1 1 0 0
x c x c x c c ) x ( f c ) x ( f c ) x ( f c ) x ( + + + + + + + L L

cujos coeficientes so determinados pelo sistema:

n
1
0
n
1
0
n
n
2
n n
n
1
2
1
1
n
0
2
0
0
y
...
y
y
c
...
c
c
x ... x x 1
...
x ... x x 1
x ... x x 1


A matriz dos coeficientes deste sistema de equaes conhecida como matriz de
Vandermonde, cujo determinante dado por:

( ) x x
i j
i j

>


Portanto, se x
0
, x
1
, ..., x
n
so pontos distintos, o determinante da matriz dos coeficientes
ser diferente de zero e consequentemente o sistema linear ir admitir uma nica soluo.
Clculo Numrico 4 Interpolao

91
Assim, dada uma tabela { (x
i
, y
i
), i = 0, 1, ..., n }, com fazendo y
i
= x
i
, se x x
j k
,
j k
,
ento ir existir um nico polinmio interpolador de grau n.


Exemplo. Determinar o polinmio interpolador de maior grau para a seguinte tabela de pontos:

x
i
1 2 3 4
y
i
6 5 2 -9

Neste caso, como n = 3 (notar que os ndices i comeam em 0), o polinmio interpolador de
maior grau ter grau 3, ou seja:

3
3
2
2 1 0
x c x c x c c ) x ( + + +

Portanto, tem-se o seguinte sistema de equaes lineares:

9
2
5
6
c
c
c
c
64 16 4 1
27 9 3 1
8 4 2 1
1 1 1 1
3
2
1
0



Resolvendo o sistema, tem-se:
c
c
c
c
0
1
2
3
11
9
5
1


ou seja:
3 2
x x 5 x 9 11 ) x ( +

Notar que, por construo, o polinmio (x) "passa" pelos pontos tabelados. Por exemplo:

5 2 2 5 2 9 11 ) 2 (
3 2
+


4.4 Polinmios de Lagrange

Como viu-se na seo anterior, a determinao de um polinmio interpolador para uma tabela
de pontos requer a resoluo de um sistema de equaes lineares. Isto porque, para
determinar o valor de (x) para um ponto x = x*, preciso, primeiro, determinar qual o
polinmio (x). Com os polinmios de Lagrange evita-se ter de resolver tal sistema.

Os polinmios de Lagrange de grau n so dados por:

L x
x x
x x
k
i
k i
i
k i
n
( )

0
k = 0, 1, ..., n

Clculo Numrico 4 Interpolao

92
Exemplo. Dados os pontos x
0
, x
1
, x
2
e x
3
, os polinmios de Lagrange (de grau 3) so dados
por:

L x
x x x x x x
x x x x x x
0
1 2 3
0 1 0 2 0 3
( )
( )( )( )
( )( )( )





L x
x x x x x x
x x x x x x
1
0 2 3
1 0 1 2 1 3
( )
( )( )( )
( )( )( )





L x
x x x x x x
x x x x x x
2
0 1 3
2 0 2 1 2 3
( )
( )( )( )
( )( )( )





L x
x x x x x x
x x x x x x
3
0 1 2
3 0 3 1 3 2
( )
( )( )( )
( )( )( )





fcil ver que:

L x
se i j
se i j
i j i j
( )
,

'

1
0
(delta de Kronecker)

Portanto, o polinmio:
) x ( L y ) x ( L y ) x ( L y ) x (
n n 1 1 0 0
+ + + L

construdo a partir dos polinmios de Lagrange L
k
(x) (k = 0, 1, ..., n) para uma tabela de
pontos { (x
i
, y
i
), i = 0, 1, ..., n } tal que:

) x ( L y ) x ( L y ) x ( L y ) x ( L y ) x (
n n i i i i 1 1 i 0 0 i
+ + + + + L L

ou seja:
i n i 1 0 i
y 0 y 1 y 0 y 0 y ) x ( + + + + + L L


Logo, o polinmio (x) "passa" pelos pontos tabelados sendo, portanto, um polinmio
interpolador.


Exemplo. Determinar o polinmio interpolador de Lagrange para a seguinte tabela de pontos:

x
i
1 2 3 4
y
i
6 5 2 -9

Neste caso, o polinmio (x) ser:

( ) .
( )( )( )
( )( )( )
.
( )( )( )
( )( )( )
.
( )( )( )
( )( )( )
( ).
( )( )( )
( )( )( )
x
x x x x x x x x x x x x



+


+


+


6
2 3 4
1 2 1 3 1 4
5
1 3 4
2 1 2 3 2 4
2
1 2 4
3 1 3 2 3 4
9
1 2 3
4 1 4 2 4 3


ou seja:

( ) .
( )
.
( )
.
( )
( ).
( )
x
x x x x x x x x x x x x

+
+
+
+

+
+
6
9 26 24
6
5
8 19 12
2
2
7 14 8
2
9
6 11 6
6
3 2 3 2 3 2 3 2


Clculo Numrico 4 Interpolao

93
Logo:
3 2
x x 5 x 9 11 ) x ( +

Notar que, como o polinmio interpolador de grau 3 para esta tabela de pontos unico, o
polinmio interpolador de Lagrange idntico ao polinmio interpolador obtido anteriormente.
Neste caso, entretanto, no foi necessrio resolver um sistema de equaes lineares.

Evidentemente, para calcular um valor interpolado no necessrio ter-se o polinmio de
Lagrange escrito na forma padro. Por exemplo:

f(2.5) (2.5) = -(2.5)
3
+ 5.(2.5)
2
- 9.(2.5) + 11 = 4.125

pode ser calculado, diretamente, como:

( . ) .
( . )( . )( . )
( )( )( )
.
( . )( . )( . )
( )( )( )
.
( . )( . )( . )
( )( )( )
( ).
( . )( . )( . )
( )( )( )
.
25 6
25 2 25 3 25 4
1 2 1 3 1 4
5
25 1 25 3 25 4
2 1 2 3 2 4
2
25 1 25 2 25 4
3 1 3 2 3 4
9
25 1 25 2 25 3
4 1 4 2 4 3
4125



+


+


+




Portanto, vantajoso usar polinmios de Lagrange na interpolao de pontos de uma tabela.
Ou seja, dados: { (x
i
, y
i
), i = 0, 1, ..., n }, para determinar o valor interpolado de y* em um ponto
x*, ao invs de determinar o polinmio de interpolao (x) e, em seguida, o valor de y* = (x*),
pode-se usar, diretamente, o seguinte algoritmo:

1. y* = 0
2. Para j = 0, 1, ..., n fazer:
a) L = 1
b) Para i = 0, 1, ..., n fazer:
Se i j ento L = L*(x* - x
i
)/(x
j
- x
i
)
c) y* = y* + y
j
.L

Observao. Notar que este algoritmo ordem
2
n , enquanto colocar o polinmio interpolador
na forma padro e, em seguida, calcular o valor interpolado ordem
3
n .


4.5 Diferenas Divididas

Uma outra maneira de determinar o polinmio de interpolao para uma tabela de pontos
atravs do uso de diferenas divididas. O polinmio assim obtido denomina-se polinmio de
Newton.

Dada uma tabela de pontos { (x
i
, y
i
), i = 0, 1, ..., n }, onde y
i
= f(x
i
), define-se:

A diferena dividida de ordem zero por:
0
y
i
=
0
f[x
i
] = y
i
i = 0, 1, ..., n

A diferena dividida de ordem k por:
k
y
i
=
k
f[x
i
, x
i+1
, ..., x
i+k
] =

=

k
i i k
k
i i k
i k i
k
i
k
i
i k i
f x x f x x
x x
y y
x x

+ +

+
+

+

+

1
1
1
1
1
1
1
[ ,..., ] [ ,..., ]

com i = 0, 1, ..., n-k.
Clculo Numrico 4 Interpolao

94
Exemplo. Para a tabela de pontos:

i x
i
y
i

0 0.2 1.22
1 0.4 1.49
2 0.6 1.82
3 0.8 2.23
4 1.0 2.72

pode-se determinar as diferenas divididas de ordens 1, 2, 3 e 4 da seguinte maneira:

i
i
x
i
y 1
y
i

2
y
i

3
y
i

4
y
i

0 0.2 1.22 1.35 0.75 0.42 -0.52
1 0.4 1.49 1.65 1.00 0.00 -
2 0.6 1.82 2.05 1.00 - -
3 0.8 2.23 2.45 - - -
4 1.0 2.72 - - - -

Notar que:


1
0
0
1
0
0
1 0
149 122
0 4 02
027
0 2
135 y
y y
x x


. .
. .
.
.
.


1
1
0
2
0
1
2 1
182 149
06 04
033
02
165 y
y y
x x


. .
. .
.
.
.
...


2
0
1
1
1
0
2 0
165 135
0 6 02
0 30
04
0 75 y
y y
x x


. .
. .
.
.
.
...


4
0
3
1
3
0
4 0
0 042
10 0 2
042
08
052 y
y y
x x




.
. .
.
.
.


Para determinar um polinmio interpolador (x) para uma tabela de pontos { (x
i
, y
i
), i = 0, 1, ...,
n }, onde y
i
= (x
i
), tem-se, pela definio de diferenas divididas:

0
0
0
0
0
0
0 0
0
0
0
0
0
1
x x
) x ( ) x (
x x
) x ( y ) x ( y
x x
] x [ ] x [
x x
] x [ ] x [
] x , x [




ou seja: ] x , x [ ) x x ( ) x ( ) x (
0
1
0 0
+ .

Por outro lado,

1
1 0
1
0
1
1
0
1
1 0
1
1 0
2
x x
] x , x [ ] x , x [
x x
] x , x [ ] x , x [
] x , x , x [



Clculo Numrico 4 Interpolao

95
ou seja:


1
0
1
0 1 1
2
0 1
[ , ] [ , ] ( ) [ , , ] x x x x x x x x x +


Mas, pela equao acima,
0
0
0
1
x x
) x ( ) x (
] x , x [



e portanto:

] x , x , x [ ) x x )( x x ( ] x , x [ ) x x ( ) x ( ) x (
1 0
2
1 0 1 0
1
0 0
+ +

Continuando este processo, pode-se escrever:

] x , , x , x , x [ ) x x ( ) x x )( x x (
] x , , x , x [ ) x x ( ) x x )( x x (
] x , x , x [ ) x x )( x x ( ] x , x [ ) x x ( ) x ( ) x (
n 1 0
1 n
n 1 0
n 1 0
n
1 n 1 0
2 1 0
2
1 0 1 0
1
0 0
L L
L L
L
+
+ +
+ + +
+



facil ver que ] x , , x , x , x [
n 1 0
1 n
L
+
= 0, uma vez que com n+1 pontos tem-se diferenas
divididas de at ordem n, sendo as diferenas de ordens mais altas todas nulas. Logo:

] x , , x , x [ ) x x ( ) x x )( x x (
] x , x , x [ ) x x )( x x ( ] x , x [ ) x x ( ) x ( ) x (
n 1 0
n
1 n 1 0
2 1 0
2
1 0 1 0
1
0 0
L L
L
+
+ + +


Mas:

0 0
y ) x (

0
1
1 0
1
y ] x , x [
0
2
2 1 0
2
y ] x , x , x [
...
0
n
n 1 0
n
y ] x , , x , x [ L

Logo, o polinmio de Newton dado por:

0
n
1 n 1 0 0
2
1 0 0
1
0 0
y ) x x ( ) x x )( x x ( y ) x x )( x x ( y ) x x ( y ) x ( + + + +

L L


Observe que (x) um polinmio interpolador, pois:

0
0
n
1 n 0 1 0 0 0 0
2
1 0 0 0 0
1
0 0 0 0
y
y ) x x ( ) x x )( x x ( y ) x x )( x x ( y ) x x ( y ) x (

+ + + +

L L

1 0 1 0 0 1
0 1
0
0
1
0
0 0
1
0 1 0 1
y y y y ) x x (
) x x (
y y
y y ) x x ( y ) x ( +


+ +


Clculo Numrico 4 Interpolao

96
2 2 0 1 1 0
2
0 1
1 2
0 1
0 2
0 1 1 0
0 1
1 2
0 1 1 2
0 1
0 2
0 1 0
0 1
0 1
1 2
1 2
1 2
0 1
0 1
0 2 0
0 2
0
1
1
1
1 2 0 2
0 1
0
0
1
0
0 2 0
0
2
1 2 0 2 0
1
0 2 0 2
y y ) y y ( ) y y (
y
) x x (
) x x (
) x x (
) x x (
) y y ( ) y y (
) x x (
) x x (
) y y ( y y
) x x (
) x x (
) y y ( y
) x x (
y y
) x x (
y y
) x x (
) x x (
y y
) x x ( y
) x x (
y y
) x x )( x x (
) x x (
y y
) x x ( y
y ) x x )( x x ( y ) x x ( y ) x (
+ +
+
1
]
1

1
]
1


+
+ +


e assim sucessivamente.


Exemplo. Dada a tabela a seguir, determinar o valor interpolado para x = 0.4

i x
i
y
i
1
y
i

2
y
i

3
y
i

4
y
i

0 0.1 1.115 1.46 1.60 0.33 -0.50
1 0.2 1.261 1.78 1.73 0.08 -
2 0.3 1.439 2.30 1.77 - -
3 0.5 1.899 2.83 - - -
4 0.6 2.182 - - - -

Neste caso, pelo polinmio de interpolao de Newton tem-se:

f(0.4) (0.4) = 1.115 + (0.4 - 0.1)(1.46) + (0.4 - 0.1)(0.4 - 0.2)(1.60) +
+ (0.4 - 0.1)(0.4 - 0.2)(0.4 - 0.3)(0.33) +
+ (0.4 - 0.1)(0.4 - 0.2)(0.4 - 0.3)(0.4 - 0.5)(-0.50) = 1.651


4.6 Diferenas Simples

No caso de os pontos x
i
(i = 0, 1, ..., n) serem igualmente espaados, o clculo das diferenas
pode ser simplificado. Seja h = x
i+1
- x
i
(i = 0, 1, ..., n-1) o espaamento constante entre os
valores de x. As diferenas simples so definidas como:

Diferena simples de ordem 0:
i i
0
y y
Diferena simples de ordem n:
i
1 n
1 i
1 n
i
n
y y y

+



Pode-se, facilmente, relacionar diferenas simples com diferenas divididas:

1 1
1
1
y
y y
x x
y
h
i
i i
i i
i


+
+


2
1
1
1
2
1
1
1
1
1
1
2
2
2
2
2 2
y
y y
x x
y
h
y
h
h
y y
h
y
h
i
i i
i i
i i
i i i

+
+
+
+



Clculo Numrico 4 Interpolao

97


3
2
1
2
3
2
1
2
2
2
2
1
2
3
3
3
2 2
3
6 6
y
y y
x x
y
h
y
h
h
y y
h
y
h
i
i i
i i
i i
i i i

+
+
+
+




Generalizando, tem-se o seguinte teorema:

Teorema. Seja a funo y = f(x) definida pelos pontos { (x
i
, y
i
), i = 0, 1, ..., n } tais que x
i+1
- x
i

= h, para todo i (i = 0, 1, ..., n-1). Ento:

n
i
n
i
n
y
y
n h


!


Portanto, por este teorema, pode-se escrever o polinmio interpolador (conhecido como
polinmio de interpolao de Gregory-Newton) como:


( ) ( ) ( )( ) ... ( )( )...( )
!
x y x x
y
h
x x x x
y
h
x x x x x x
y
n h
n
n
n
+ + + +
0 0
0
0 1
2
0
2
0 1 1
0
2



Exemplo. Determinar f(0.5) dada a tabela:

i x
i
y
i
1
y
i

2
y
i

3
y
i

4
y
i

0 0.2 0.40 0.39 -0.02 0.01 -0.04
1 0.4 0.79 0.37 -0.01 -0.03 -
2 0.6 1.16 0.36 -0.04 - -
3 0.8 1.52 0.32 - - -
4 1.0 1.84 - - - -

Neste caso, pelo polinmio de interpolao de Gregory-Newton, tem-se:


f( . ) ( . ) . ( . . )
.
.
( . . )( . . )
( . )
( . )
( . . )( . . )( . . )
.
!( . )
( . . )( . . )( . . )( . . )
( . )
!( . )
.
05 05 040 05 02
039
02
05 02 05 0 4
002
2 0 2
05 02 05 04 05 0 6
001
3 02
05 02 05 04 05 0 6 05 08
004
4 0 2
097
2
3
4
+ +

+
+ +
+




A tabela de diferenas pode ajudar a responder seguinte questo: "Dada uma tabela de
pontos { (x
i
, y
i
), i = 0, 1, ..., n }, qual deve ser o grau ( n) do polinmio interpolador?".

Para responder a esta questo, deve-se examinar os valores das diferenas nas vizinhanas
do ponto de interesse. Se nesta vizinhana as diferenas de ordem n so praticamente
constantes (ou, equivalentemente, as diferenas de ordem n+1 so prximas de zero), pode-
se concluir que um polinmio interpolador de grau n uma boa aproximao da funo na
regio considerada.

Clculo Numrico 4 Interpolao

98
Exemplo. A tabela abaixo representa a funo f(x) = x, com 4 casas decimais. Calcular
f(1.025).

x
i
1.00 1.01 1.02 1.03 1.04 1.05
y
i
1.0000 1.0050 1.0100 1.0149 1.0198 1.0247

Neste caso, como n = 5, possvel aproximar f(x) a polinmios de at grau 5. Entretanto,
construindo-se a tabela de diferenas simples tem-se:

i x
i
y
i
1
y
i

2
y
i

0 1.00 1.0000 0.50 0.0
1 1.01 1.0050 0.50 -0.01
2 1.02 1.0100 0.49 0.0
3 1.03 1.0149 0.49 0.0
4 1.04 1.0198 0.49 -
5 1.05 1.0247 - -

Assim, no intervalo [1.00, 1.05] pode-se dizer que um polinmio do grau 1 uma boa
aproximao de f(x). Portanto:

f( . ) ( . )
( . )( . ) ( . )( . )
. .
. .
. .
. . 1025 1025
103 10100 102 10149
103 102
10149 10100
103 102
1025 10124
1




4.7 Interpolao de Hermite

Sejam conhecidos um conjunto de pontos { (x
i
, y
i
), i = 0, 1, ..., n } representando uma funo y
= f(x), e os valores das derivadas de f(x) em cada um dos pontos tabelados, ou seja, f'(x
i
), i =
0, 1, ..., n. Seja o polinmio:

P x x f x x f x
h i i i i
i
n
i
n
( ) ( ) ( ) ( ) ' ( ) +


0 0

com:
[ ]


i i i i
i
i i
i
x x x x x
x x x x i n
( ) ( ) ( ) ( )
( ) ( ) ( ) , , ...,
'


1 2
0 1
2
2


onde:

i
k
i k
k
k i
n
x
x x
x x
( )

0
(polinmio de Lagrange)

Deseja-se mostrar que P x
h
( ) assim definido um polinmio de interpolao (conhecido como
polinmio de Hermite). Para isto preciso mostrar que
P x
h
( )
"passa" pelos pontos tabelados,
ou seja, que
P x f x y
h i i i
( ) ( )
.

Sabe-se que

i j ij
x ( )
(delta de Kronecker). Portanto:
Clculo Numrico 4 Interpolao

99

[ ] [ ]


i j j i i i
i
j j i i i
ij
ij
i j j i
i
j j i
ij
x x x x x x x x
x x x x x x
( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
' '


1 2 1 2
0
2 2
2 2


ou seja:
P x x f x x f x f x
f x f x f x f x f x
h j i j i i j i
i
n
i
n
ij
i
n
i
j j jj j nj n j
( ) ( ) ( ) ( ) ' ( ) ( )
( ) ( ) ... ( ) ... ( ) ( )
+
+ + + + +



0
0
0 0
0 0 1 1
1 2 444 3 444



Assim o polinmio de Hermite P x
h
( ) "passa" pelos pontos tabelados, sendo portanto um
polinmio de interpolao. Mas o polinmio de Hermite possui uma outra caracterstica
importante: a derivada de
P x
h
( )
"passa" pelos pontos f'(x
i
), i = 0, 1, ..., n. Para mostrar isto,
seja a derivada de
P x
h
( )
:

P x x f x x f x
h i i i i
i
n
i
n
' ' '
( ) ( ) ( ) ( ) ' ( ) +


0 0


Mas:

[ ]


i i i i i i i i
i
i i i i
i
x x x x x x x x
x x x x x x i n
' ' ' '
' '
( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) , , ...,

+
1 2 2 2
2 0 1
2
2


ou seja:

[ ]
[ ]



i j j i i i i j i j i i
i
j
j i i i ij i j i i
ij
i j j i i j i j i j j i ij i j ij ij
x x x x x x x x
x x x x x
x x x x x x x x x
' ' ' '
' ' '
' ' '
( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( )


+ +
1 2 2 2
1 2 2 2 0
2 2
2
2
2 2


Logo:
P x x f x x f x f x
f x f x f x f x f x
h j i j i
i
n
i
i
n
j i ij
i
n
i
j j jj j nj n j
' ' ' ' '
' ' ' ' '
( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ... ( ) ... ( ) ( )
+
+ + + + +



0
0
0 0
0 0 1 1
1 2 44 3 44


Exemplo. Seja a tabela de pontos a seguir, para uma funo e sua derivada. Determinar o
polinmio interpolador de Hermite para esta tabela.

x
i
0.0 1.0 2.0
f
i
5.0 3.0 27.0
f
i
'

-7.0 8.0 41.0
Clculo Numrico 4 Interpolao

100

0
2
1 2
0 1 0 2
1
2
3 2 ( )
( )( )
( )( )
( ) x
x x
x x


+

1
2
0 2
1 0 1 2
2 ( )
( )( )
( )( )
x
x x
x x


+

2
2
0 1
2 0 2 1
1
2
( )
( )( )
( )( )
( ) x
x x
x x





0 0 0 0
1
2
2 3 0
3
2
' ' '
( ) ( ) ( ) ( ) x x x




1 1 1 1
2 2 1 0
' ' '
( ) ( ) ( ) x x x +



2 2 2 2
1
2
2 1 2
3
2
' ' '
( ) ( ) ( ) ( ) x x x

Ento:

P x x x x x x x
x x x
x x x x x x x x x
h
( ) [ ( )( )] ( ) [ ( ) ]( )
[ ( ) ] ( )
( ) ( ) ( ) ( )( ) ( ) ( )
+ + + +
+ +
+ + + + +
1 2 0
3
2
1
4
3 2 5 1 2 1 0 2 3
1 2 2
3
2
1
4
27
0
1
4
3 2 7 1 2 8 2
1
4
41
2 2 2 2
2 2
2 2 2 2 2 2


Efetuando os clculos tem-se:

P x x x x x
h
( ) + +
4 3 2
7 7 5


(notar que o polinmio de interpolao de Hermite de grau 2n, para uma tabela com n
pontos). Para verificar que o polinmio e sua derivada passam pelos pontos tabelados, notar
que:

P x x x x x
P
P
P
h
h
h
h
( )
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
+ +
+ +
+ +
+ +
4 3 2
4 3 2
4 3 2
4 3 2
7 7 5
0 0 7 0 0 7 0 5 5
1 1 7 1 1 7 1 5 3
2 2 7 2 2 7 2 5 27

P x x x x
P
P
P
h
h
h
h
'
'
'
'
( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
+
+
+
+
4 21 2 7
0 4 0 21 0 2 0 7 7
1 4 1 21 1 2 1 7 8
2 4 2 21 2 2 2 7 41
3 2
3 2
3 2
3 2



Pelo teorema de Weierstrass vimos que existe uma boa razo para usar polinmios como
funo interpoladora. Vimos tambm que, em princpio, quanto maior o grau do polinmio,
menor ser o erro de truncamento. O teorema de Weierstrass, no entanto, no diz como o
polinmio deve ser construdo.

Clculo Numrico 4 Interpolao

101
Vamos considerar a seguinte forma de obter o polinmio de interpolao para uma funo f(x)
contnua em um intervalo [a,b]. Seja uma discretizao de f(x) para os pontos a = x
0
< x
1
< ... <
x
n
= b. Sabe-se que, para esta discretizao, existe apenas um polinmio de interpolao
p
n
(x). A questo a seguinte: p
n
(x) converge para f(x) em [x
0
, x
n
] quando n ?. A resposta
: nem sempre. Para ilustrar considere o caso a seguir.


4.8 Fenmeno de Runge

Seja a funo:
2
x 25 1
1
) x ( f
+
tabelada no intervalo [-1, 1].
-1 -0.5 0.5 1
0.2
0.4
0.6
0.8
1


As figuras a seguir ilustram as aproximaes da funo de Runge pelos polinmios de
interpolao p
5
(x) e p
10
(x), obtidos pelo seguinte programa Mathematica:

f[x_]=1/(1+25x^2);
n = Input["Grau do polinmio"];
t = Table[{i,f[i]},{i,-1,1,2/n}];
q[x_] = InterpolatingPolynomial[t,x];
g1 = Plot[f[x],{x,-1,1},PlotStyle->RGBColor[1,0,0]];
g2 = Plot[q[x],{x,-1,1}];
Show[g1,g2];

Aproximao por p5(x):
-1 -0.5 0.5 1
0.2
0.4
0.6
0.8
1

Aproximao por p10(x):
-1 -0.5 0.5 1
0.5
1
1.5
2


Note, pela figura a seguir, que considerando o polinmio p
20
(x), a aproximao no intervalo [-
0.5, 0.5] melhora ainda mais. Mas nos extremos do intervalo [-1, 1] ocorrem problemas de
divergncia.
-1 -0.5 0.5 1
-2
-1
1
2
3
4

Clculo Numrico 4 Interpolao

102
Portanto, embora o teorema de Weierstrass garanta que existe um polinmio p
n
(x), para algum
n, que aproxima a funo de Runge, a forma de obter esse polinmio no como a mostrada
acima (interpolao considerando n+1 pontos igualmente espaados).

A seo a seguir apresenta uma outra abordagem para a interpolao por polinmios, visando
evitar problemas de aproxi mao (como o que ocorre com o polinmio p
20
(x) considerado
acima): em vez de considerar um nico polinmio de aproximao de grau alto, considerar
vrios polinmios de baixo grau.


4.9 Interpolao por "Spline"

Pode-se entender o significado da palavra spline como "haste flexvel para desenhar curvas".
A idia da interpolao por spline , ao invs de considerar todos os pontos disponveis de
uma vez para determinar um polinmio interpolador de grau elevado, considerar poucos
pontos de cada vez e construir um polinmio composto por uma sequncia de polinmios de
grau baixo, os quais so vlidos localmente. A figura a seguir ilustra esta idia.

x0 x1 x2 x3
P1(x)
P2(x)
P3(x)
y
x


Definio. Seja uma funo f(x) tabelada nos pontos x
0
< x
1
< ... < x
n
. Uma funo S
p
(x)
denominada spline de grau p para os pontos x
i
(i = 0, 1, ..., n) se satisfaz as seguintes
condies:
em cada subintervalo [x
i
, x
i+1
], (i = 0, 1, ..., n), S
p
(x) um polinmio de grau p: p
i
(x);
S
p
(x) contnua e tem derivada contnua at ordem (p - 1) em [x
0
, x
n
].

Se, alm disso, S
p
(x) tambm satisfaz a condio:

S
p
(x
i
) = f(x
i
), (i = 0, 1, ..., n), ento denominada spline interpolante.

O objetivo da interpolao por spline obter uma aproximao to suave quanto possvel para
os pontos conhecidos. A interpolao por spline mais comum a que utiliza funes splines
cbicas interpolantes.

Para i sto, devemos considerar para cada intervalo [x
i
, x
i+1
], um polinmio de grau 3, p
i
(x).
Como p
i
(x) um polinmio cbico, p x
i
"
( ) uma reta. Vamos considerar a reta que passa pelos
pontos (x
i
,
i
) e (x
i+1
,
i+1
), onde
i
e
i+1
so desconhecidos, como ilustra a figura a seguir:
Clculo Numrico 4 Interpolao

103
x x

i i+1
i+1

i
x
y
h
i
p"(x)
i

i
p"(x )
i i


Ento:
p x
x x
x x
i i
i i i
i i
"
( )
( )( )
+

+
+


1
1


ou seja:

p x
x x x x x x
x x
i
i i i i i i i
i i
"
( )
( ) ( ) ( )


+ +
+

1 1
1

+ +


+ + +
+

i i i i i i i i i i
i i
x x x x x x
x x
1 1 1
1


i i
i
i i
i
x x
h
x x
h
( ) ( )
+ +

+

1 1


Integrando-se a expresso de p x
i
"
( ), obtm-se p x
i
'
( ):

p x
x x
h
c
x x
h
d
i
i i
i
i
i i
i
i
'
( )
( ) ( )


+ +

+
+ +

1
2
1
2
2 2


onde c
i
e d
i
so constantes de integrao.

Integrando-se novamente, tem-se:

p x
x x
h
x x
h
c x x d x x
i
i i
i
i i
i
i i i i
( )
( ) ( )
( ) ( )

+

+
+ +
+

1
3
1
3
1
6 6


Como p
i
(x) deve ser um polinmio de interpolao, deve-se ter:

1 i 1 i i
i i i
y ) x ( p
y ) x ( p
+ +


Logo:
p x
x x
h
c x x y
i i
i i i
i
i i i i
( )
( )
( )


+
+

1
3
1
6

1 i i 1 i i
i
3
i 1 i 1 i
1 i i
y ) x x ( d
h 6
) x x (
) x ( p
+ +
+ +
+
+



ou seja:

Clculo Numrico 4 Interpolao

104

i i
i
i i i i
i
i
i i
h
h
c h y c
y
h
h
3
6 6


+


i i
i
i i i i
i
i
i i
h
h
d h y d
y
h
h
+
+
+ +
+
1
3
1
1 1
6 6


Substituindo os valores de c
i
e d
i
na expresso de
p x
i
'
( )
, tem-se:

p x
h
x x
h
x x
y
h
h y
h
h
i
i
i
i
i
i
i
i
i
i i i
i
i i '
( ) ( ) ( )

+ +

+ +
+
+ + +

2 2 6 6
1
2 1 2 1 1


Consequentemente:

p x
h
x x
h
x x
y
h
h y
h
h
i
i
i
i
i
i
i
i
i
i i i
i
i i


+ +

+ +
1
1
1
2
1
1
2 1
1
1 1
1
1
2 2 6 6
'
( ) ( ) ( )



Como deve-se ter ) x ( p ) x ( p
i
'
1 i i
'
i
segue que:

p x
h y
h
h y
h
h
i i
i i i
i
i i i
i
i i '
( )

+ +
+ +

2 6 6
1 1


+ +

p x
h y
h
h y
h
h
i i
i i i
i
i i i
i
i i
1
1 1
1
1 1
1
1
2 6 6
'
( )



ou seja:

+ + +

_
,

+
+

3 3 6
1 1 1 1 1
1 1
1 1

i i i i i i i i i i i i
i
i
i
i
i
i
i
i
h h h h h h
y
h
y
h
y
h
y
h


Multiplicando por -1 e rescrevendo, tem-se:

h h h h
y y
h
y y
h
i n
i i i i i i i
i i
i
i i
i
+
+

+ + +

_
,

1 1 1 1
1 1
1
2 6 2 3 1 ( ) ( , , ) K

o que representa um sistema de (n-2) equaes lineares com n incgnitas:
1 2
, , , K
n
.

Fazendo a escolha:
1
0 e
n
0 (spline natural) chega-se no seguinte sistema de
equaes lineares:

i h h h
y y
h
y y
h
i h h h h
y y
h
y y
h
i n h h h
y y
h
y y
h
n n n n n
n n
n
n n
n
+ + +

_
,

+ + +

_
,

+ + +

_
,

2 0 2 6
3 2 6
1 2 0 6
2 1 2 2 3
3 2
2
2 1
1
2 2 3 2 3 3 4
4 3
3
3 2
2
2 2 1 2 1
1
1
1 2
2
( )
( )
( )



M M

Clculo Numrico 4 Interpolao

105
Fazendo b
y y
h
i
i i
i

_
,

+
6
1
, tem-se:

2
2
2
2
1 2 2
2 2 3 3
3 3 4 4
4
2 2 1
2
3
4
1
2 1
3 2
4 3
1 2
( )
( )
( )
( )
h h h
h h h h
h h h h
h
h h h
b b
b b
b b
b b
n n n n n n
+
+
+
+


M M M



Este sistema pode ser resolvido atravs do seguinte algoritmo:

Passo 1:

c h h
c h h
h
c
i n
i i i
i
i
2 1 2
1
1
2
1
2
2 3 4 1
+
+

( )
( ) ( , , , ) L


Passo 2:

d b b
d b b
h d
c
i n
i i i
i i
i
2 2 1
1
1 1
1
3 4 1

( ) ( , , , ) L


Passo 3:


n
n
n
i
i i i
i
d
c
d h
c
i n n



1
1
1
1
2 3 2 ( , , , ) L


Substituindo os valores de

i
i n ( , , , ) 1 2 L
na equao de p
i
(x) e rearranjando os termos,
tem-se os seguintes polinmios de interpolao por spline:

p x y x x x x x x
i i i i i i i i
( ) ( ) ( ) ( ) + + +
2 3


onde:


i
i i
i
i
i
i
i
y y
h
h h


+ + 1 1
6 3


i
i


i
i i
i
h
i n


+1
6
1 2 1 ( , , , ) L

Exemplo: Aproximar a funo y = f(x), definida pela tabela a seguir, por uma curva spline.

Clculo Numrico 4 Interpolao

106
x
i
y
i

-2 2
-1 1
0 0
1 1
2 2

Neste caso, n = 5 e o sistema de equaes lineares dado por:

2 0
2
0 2
1 2 2
2 2 3 3
3 3 4
2
3
4
2 1
3 2
4 3
( )
( )
( )
h h h
h h h h
h h h
b b
b b
b b
+
+
+



Substituindo os valores, tem-se:

4 1 0
1 4 1
0 1 4
0
12
0
2
3
4



ou seja:

2
3
4
6 7
24 7
6 7

/
/
/


Com os valores de
i
i ( , , , ) 1 2 5 L pode-se determinar os n-1 polinmios spline
p x i
i
( ) ( , , , ) 1 2 3 4
. Por exemplo:

p x y x x x x x x
4 4 4 4 4 4
2
4 4
3
( ) ( ) ( ) ( ) + + +


com:

7
9
h
3
h
6 h
y y
4
4
4
5
4
4 5
4



7
3
2
4
4


4
5 4
4
6
1
7

h


e portanto:
3 2
4
) 1 x (
7
1
) 1 x (
7
3
) 1 x (
7
9
1 ) x ( p + +

Os outros trs polinmios spline para este caso so mostrados a seguir. As figuras a seguir
ilustram as aproximaes para a funo f(x) = | x | no intervalo [-2, 2] obtidas pelo polinmios
Clculo Numrico 4 Interpolao

107
de interpolao de maior grau possvel neste caso (4 grau) e pelos polinmios de
interpolao spline de 3 grau:

t = {{-2,2},{-1,1},{0,0},{1,1},{2,2}}
f = ListPlot[t,PlotJoined->True]
q[x_] = InterpolatingPolynomial[t,x]
g = Plot[q[x],{x,-2,2}]
Show[f,g]
p1[x_] = 2 - (6/7)*(x+2) - (1/7)*(x+2)^3
p2[x_] = 1 - (9/7)*(x+1) - (3/7)*(x+1)^2 + (5/7)*(x+1)^3
p3[x_] = (12/7)*x^2 - (5/7)*x^3
p4[x_] = 1 + (9/7)*(x-1) - (3/7)*(x-1)^2 + (1/7)*(x-1)^3
s1 = Plot[p1[x],{x,-2,-1}]
s2 = Plot[p2[x],{x,-1,0}]
s3 = Plot[p3[x],{x,0,1}]
s4 = Plot[p4[x],{x,1,2}]
Show[f,s1,s2,s3,s4]
Funo Original
-2 -1 1 2
0.5
1
1.5
2


Aproximao por polinmio de interpolao do 4
grau

-2 -1 1 2
0.5
1
1.5
2


Aproximao por funes spline interpoladoras do
3 grau

-2 -1 1 2
0.5
1
1.5
2




EXERCCIOS RESOLVIDOS

1. Dada a tabela:

x 0 1 2 3
y -1 0 3 14

representando uma funo y = f(x), determine os valores de f(1.2) e f(1.6) atravs de
interpolao polinomial do 2
o
grau, de modo que o erro cometido seja o menor possvel.
Clculo Numrico 4 Interpolao

108
Utilizar o mtodo da eliminao de Gauss para a soluo de sistemas de equaes
lineares.

Soluo:

Neste caso, o polinmio de interpolao tem a forma: ( ) x c c x c x + +
0 1 2
2
. Para
determinar os coeficientes
c c e c
0 1 2
,
deve-se resolver o seguinte sistema de equaes
lineares:

1
1
1
0 0
2
1 1
2
2 2
2
0
1
2
0
1
2
x x
x x
x x
c
c
c
y
y
y


onde
( , ), ( , ), ( , ) x y x y x y
0 0 1 1 2 2
correspondem a 3 pontos tabelados. A escolha dos
pontos tabelados deve ser feita de tal maneira que o ponto x*, para o qual deseja-se o
valor interpolado, seja o mais central possvel . No caso de x* = 1.2 a melhor escolha ser:

x 0 1 2
y -1 0 3

Neste caso, o sistema de equaes lineares correspondente dado por:

1 0 0
1 1 1
1 2 4
1
0
3
0
1
2

c
c
c


Resolvendo este sistema, tem-se: c
0
= -1, c
1
= 0, c
2
= 1. Portanto, para este caso, o
polinmio de interpolao dado por:
( ) x x + 1
2
. Logo:

f(1.2) (1.2) = -1 + (1.2)
2
= 0.44


No caso de x* = 1.6 a melhor escolha dos pontos tabelados ser:

x 1 2 3
y 0 3 14

o que leva ao seguinte sistema de equaes lineares:

1 1 1
1 2 4
1 3 9
0
3
14
0
1
2

c
c
c


Resolvendo este sistema, tem-se: 5 c
0
, 9 c
1
, 4 c
2
. Portanto, para este caso, o
polinmio de interpolao dado por: ( ) x x x + 5 9 4
2
. Logo:

f(1.6) (1.6) = 5-9(1.6) + 4(1.6)
2
= 0.84

2. Dada a tabela:
Clculo Numrico 4 Interpolao

109
x
i
1.2 1.4 1.6
y
i
0.19 0.15 0.11

representando uma funo y = f(x), deseja-se determinar f(1.5) atravs de uma funo de
interpolao da forma:
p x ax be c x
x
( ) ln( ) + +
2
.

a) Montar um sistema de equaes lineares para o problema;
b) Resolver o sistema obtido pelo mtodo da eliminao de Gauss para determinar os
coeficientes a, b, c da funo de interpolao p(x);
c) Determinar f(1.5) p(1.5)

Soluo:

Neste caso, embora a funo de interpolao no seja um polinmio, o problema pode ser
facilmente resolvido, uma vez que existem 3 incgnitas (a, b e c) e 3 pontos tabelados.
Portanto, como toda funo de interpolao deve passar pelos pontos tabelados, tem-se:

p a be c a b c ( . ) . ( . ) ln( . ) . . . . .
.
12 019 12 12 019 144 332 018 019
2 12
+ + + +


p a be c a b c ( . ) . ( . ) ln( . ) . . . . .
.
14 015 14 14 015 196 4 06 0 34 015
2 14
+ + + +


p a be c a b c ( . ) . ( . ) ln( . ) . . . . .
.
16 011 16 16 011 256 4 95 047 011
2 16
+ + + +


Logo, tem-se o seguinte sistema de equaes lineares:

144 332 018
196 4 06 034
256 4 95 047
019
015
011
. . .
. . .
. . .
.
.
.

a
b
c


Resolvendo o sistema pelo mtodo de Gauss, tem-se: a = -0.44, b = 0.25, c = 0.05

Logo, a funo de interpolao dada por:
p x x e x
x
( ) . . . ln( ) + + 044 0 25 0 05
2
. Portanto:

f(1.5) p(1.5) =
+ + 0 44 15 0 25 005 15 015
2 15
. ( . ) . . ln( . ) .
.
e



EXERCCIOS PROPOSTOS


1. Dada a tabela:

x
i
0 2 3 5
y
i
-2 1 4 -1

representando uma funo y = f(x), deseja-se determinar f(2.5) atravs de um polinmio de
interpolao do 2
o
. grau de modo que o erro cometido seja o menor possvel. Para isto:

a) Montar um sistema de equaes lineares para o problema;
b) Resolver o sistema obtido pelo mtodo da eliminao de Gauss para determinar os
coeficientes do polinmio de interpolao p(x);
Clculo Numrico 4 Interpolao

110
c) Determinar f(2.5) p(2.5)


2. Dada a funo f(x) conhecida apenas nos pontos tabelados:

x 1.00 1.20 1.40 1.60 1.80
f(x) 0.2420 0.1942 0.1497 0.1109 0.0790

a) Construir a tabela de diferenas divididas para esta funo.
b) Obter uma aproximao para f(1.25) usando frmula de Newton com interpolao de
grau 3.
c) Estimar o erro cometido no item (b).


3. Seja a seguinte tabela de pontos:

x sen(x) cos(x) tan(x)
1.566 0.9999885 0.0047963 208.49129
1.567 0.9999928 0.0037963 263.41125
1.568 0.9999961 0.0027963 357.61106
1.569 0.9999984 0.0017963 556.69098
1.570 0.9999997 0.0007963 1255.76559

Use estes dados para calcular a tan(1.5695) pelos seguintes caminhos:

a) usando interpolao de Gregory-Newton para os pontos de tan(x) tabelados;
b) usando interpolao de Hermite para calcular sen(1.5695) e cos(1.5695).

Discuta os resultados obtidos.


EXERCCIOS DE PROGRAMAO

1. Dada uma tabela de pontos { (x
i
, y
i
), i = 1, 2, ..., n }, determinar o polinmio interpolador
1 n
n 2 1
x c x c c ) x (

+ + + L . Para determinar os coeficientes do polinmio, montar o
seguinte sistema de equaes lineares:

n
2
1
n
2
1
1 n
n
2
n n
1 n
2
2
2 2
1 n
n
2
2 1
y
y
y
c
c
c
x x x 1
x x x 1
x x x 1
M M
L
M
L
L



Usar a funo ELGAUSS (ver Captulo 3) para resolver o sistema.

Conferir a soluo encontrada utilizando o programa Mathematica, utilizando as seguintes
instrues:

tab = { {x1,y1}, {x2,y2}, ..., {xn,yn} }
Expand[InterpolatingPolynomial[tab,x]]

Clculo Numrico 4 Interpolao

111
Uma vez determinados os coeficientes
n 2 1
c , , c , c L

do polinmio interpolador, estender a
tabela para um novo espaamento h de valores de x. Para isso, escrever uma funo
INTERP(n,C,a) para calcular o valor v de um polinmio de grau n com vetor de coeficientes
C, em um ponto a, utilizando o seguinte algoritmo:

d
n-1
= c
n

para i = n-2 at 1 fazer:
d
i
= c
i+1
+ a*d
i+1

v = c
1
+ a*d
1



2. Dada uma tabela de pontos { (x
i
, y
i
), i = 1, 2, ..., n }, que representa uma funo
y f x
i i
( ) , deseja-se determinar o valor de y* para um novo ponto x* tal que
x x x
n 1
*
. O valor de y* pode ser calculado como:

y y x x x x x x x x x x x x
n n
* ( * ) ( * )( * ) ... ( * )( * ) ... ( * )
, ,2 ,
+ + + +
1 1 11 1 2 1 1 2 1 1 1



onde
i j ,
representa a i-sima diferena dividida de ordem j. Fazer um programa que
calcule e mostre a matriz de diferenas divididas e, em seguida, escreva uma funo
INTERPOLA para calcular valores interpolados.


3. Escreva um programa que determina a matriz dos coeficientes e o vetor independente do
sistema de equaes lineares correspondente a uma aproximao por spline cbico para a
funo sen(2x) usando os pontos {0, 1/2, 1}.


107
Clculo Numrico
5. APROXIMAO DE FUNES
5.1 - Introduo
No captulo anterior viu-se que uma funo y = f(x) conhecida apenas em alguns pontos
} n , , 1 , 0 i ), y , x ( {
i i
L pode ser aproximada a um polinmio interpolador. Esta nem
sempre a melhor maneira de aproximar uma funo e algumas razes para isto so:
erros experimentais nos dados sero incorporados ao polinmio interpolador (que, por
construo, deve passar pelos pontos originais);
em certos casos, embora sem conhecer a funo que originou os dados, pela natureza
do problema, possvel saber o tipo de funo que estabelece a relao entre x e y.
Por exemplo: sabe-se que os pontos da figura abaixo so oriundos de uma curva
exponencial.
x
y
Neste captulo sero estudadas algumas formas de aproximao de funes, inicialmente
para casos discretos, em que a funo conhecida apenas para um conjunto de pontos e,
em seguida, para o caso contnuo.
5.2 Mtodo dos Quadrados Mnimos
Seja o conjunto de pontos { (x
i
, y
i
), i = 0,1, ..., n } correspondentes a uma funo y = f(x),
linear. A figura a seguir ilustra duas retas que aproximam este conjunto de pontos.
x
y
A questo : "Qual a melhor aproximao?"
Clculo Numrico 5 Aproximao de Funes
108
Para responder a esta questo preciso estabelecer um critrio. Para isto, seja p(x) uma
funo de aproximao para f(x) e vamos definir os resduos como: r
i
= p(x
i
) - f(x
i
) = p(x
i
) -
y
i
(i = 0,1, ..., n). Muitos critrios podem ser usados para comparar aproximaes. Por
exemplo:
Min r
i
i
n

0
, ou seja: minimizao da soma dos resduos. Este no um bom critrio
porque resduos positivos podem compensar resduos negativos e ainda assim a
aproximao ser ruim.
Min | | r
i
i
n

0
, ou seja, minimizao da soma dos valores absolutos dos resduos. Neste
caso, embora no exista a compensao de resduos, a funo "mdulo" no sempre
diferencivel e leva a dificuldades em achar o mnimo.
Min r
i
i
n
2
0
, ou seja, minimizao da soma dos quadrados dos resduos. Neste caso,
no h o risco de resduos se anularem reciprocamente e a funo "quadrado"
facilmente diferencivel.
O mtodo dos quadrados mnimos adota este ltimo critrio para determinar a melhor
aproximao. A tcnica de aproximao de funes pelo mtodos dos quadrados mnimos
tambm conhecida como regresso ou suavizao de dados.
Portanto, no mtodo dos quadrados mnimos, dado um conjunto de pontos { (x
i
, y
i
), i = 0,1,
..., n }, deseja-se determinar uma funo de aproximao:
p x c x c x c x
m m
( ) ( ) ( ) ... ( ) + + +
0 0 1 1

onde:
0 1
( ), ( ),..., ( ) x x x
m
so funes escolhidas levando-se em conta a natureza dos
dados, e
m 1 0
c , , c , c L so constantes a serem determinadas de modo a minimizar o valor
de R:
R = r
i
i
n
2
0
= ( ( ) ) ( ( ) ( ) ... ( ) ) p x y c x c x c x y
i
i
n
i i i m m i i
i
n

+ + +
0
2
0 0 1 1
2
0
,
O valor de R como funo de
m 1 0
c , , c , c L atinge um mnimo quando as (m+1) derivadas
parciais de R em funo de
j
c (j = 0,1, ..., m) se anularem simultaneamente, ou seja:

R
c
p x y
p x
c
j
i
i
n
i
i
j

2 0
0
( ( ) )
( )
, (j = 0,1, ..., m)
Mas, como ) x (
c
) x ( p
i j
j
i

, podemos escrever:
0 ) x ( ) y ) x ( p ( 2
c
R
i j i
n
0 i
i
j

(j = 0,1, ..., m)
Observe que os valores de
m 1 0
c , , c , c L que anulam simultaneamente essas equaes
levam mesmo a um ponto de mnimo, pois:
Clculo Numrico 5 Aproximao de Funes
109
)] x (
c
y
) x (
c
) x ( p
[ 2
c
R
i j
j
i
i j
n
0 i
j
i
2
j
2

e como:
0
c
y
j
i

0 )] x ( [ 2 )] x ( ) x ( [ 2 )] x (
c
) x ( p
[ 2
c
R
n
0 i
2
i j i j
n
0 i
i j i j
n
0 i
j
i
2
j
2


>

Portanto o mnimo de R ser obtido quando os valores de


m 1 0
c , , c , c L satisfazem as
equaes:
2 0
0 0 1 1
0
( ( ) ( ) ... ( ) ) ( ) c x c x c x y x
i i m m i i j i
i
n
+ + +

(j = 0,1, ..., m)
ou seja:
( ( ) ( ) ... ( )) ( ) ( ) c x c x c x x y x
i i m m i j i i j i
i
n
i
n
0 0 1 1
0 0
+ + +

(j = 0,1, ..., m)
Isto corresponde ao seguinte sistema de (m+1) equaes lineares (j = 0,1, ..., m) com
(m+1) incgnitas (
m 1 0
c , , c , c L ), denominado sistema normal:




) x ( y
) x ( y
) x ( y
c
c
c
) x ( ) x ( ) x ( ) x ( ) x ( ) x (
) x ( ) x ( ) x ( ) x ( ) x ( ) x (
) x ( ) x ( ) x ( ) x ( ) x ( ) x (
i m i
i 1 i
i 0 i
m
1
0
i m i m i 1 i m i 0 i m
i m i 1 i 1 i 1 i 0 i 1
i m i 0 i 1 i 0 i 0 i 0
L L
L
L
L
L
onde as somatrias correspondem a

n
0 i
) (L . A soluo do sistema normal fornece os
valores dos coeficientes
m 1 0
c , , c , c L da melhor aproximao p(x) para a funo y
i
= f(x
i
),
(i = 0,1, ..., n), segundo o critrio dos quadrados mnimos.
Exemplo.
A tabela a seguir representa o desempenho de uma mquina em funo de sua idade.
Fazer uma projeo da produo que esta mquina ter aos 8 anos.
x (anos) 0.5 1.0 2.0 3.0 4.0 ... 8.0
y (produo) 25 24 20 18 15 ... ?
Seja a aproximao de y = f(x) por uma reta p(x) = c
0
+ c
1
x (ou seja, escolhendo-se as
funes base como:
0
(x) = 1 e
1
(x) = x). Neste caso, o sistema normal ser:
( ) ( ) ( ) c c x x y x
i j i i j i
i i
0 1
0
4
0
4
+

(j = 0,1)
ou seja,
Clculo Numrico 5 Aproximao de Funes
110
para j = 0, como
j i
x ( ) 1 ( ). . c c x y
i i
i i
0 1
0
4
0
4
1 1 +


para j = 1, como
j i i
x x ( ) ( ). . c c x x y x
i i i i
i i
0 1
0
4
0
4
+


ou, em notao matricial:

i i
i
1
0
2
i
i
i
x y
y
c
c
x x
x 1
onde, nas somatrias, i vai de 0 at 4. Portanto, substituindo os valores, tem-se:
5 . 190
0 . 102
c
c
25 . 30 50 . 10
50 . 10 00 . 5
1
0

Resolvendo o sistema:
0
c = 26.47 e
1
c = -2.89, ou seja, a reta que melhor aproxima a
tabela acima, segundo o critrio dos quadrados mnimos, :
p(x) = 26.47 - 2.89 x
Para estimar o valor da produo aos 8 anos, basta calcular p(8) = 3.34, ou seja, aos 8
anos a mquina estar produzindo cerca de 3 peas.
O mesmo problema pode ser resolvido aproximando a funo y
i
= f(x
i
) a um polinmio do
2 grau. Neste caso tem-se:
p
2
(x) = c
0
+ c
1
x + c
2
x
2
o que implica nas escolhas:
0
(x) = 1,
1
(x) = x e
2
(x) = x
2
. Portanto, neste caso o
sistema normal ser:
( ) ( ) ( ) c c x c x x y x
i
i
j i i j i
i i
0 1 2
2
0
4
0
4
+ +

(j = 0,1,2)
ou seja,
para j = 0, como
j i
x ( ) 1 ( ). . c c x c x y
i
i
i
i i
0 1 2
2
0
4
0
4
1 1 + +


para j = 1, como
j i i
x x ( ) ( ). . c c x c x x y x
i
i
i i i
i i
0 1 2
2
0
4
0
4
+ +


para j = 2, como
j i
i
x x ( )
2
( ). . c c x c x x y x
i
i i
i
i
i i
0 1 2
2 2 2
0
4
0
4
+ +


ou, em notao matricial:
Clculo Numrico 5 Aproximao de Funes
111

2
i
i
i i
i
2
1
0
4
i
3
i
2
i
3
i
2
i
i
2
i
i
x y
x y
y
c
c
c
x x x
x x x
x x 1
com i = 0 at 4, nas somatrias. Portanto, substituindo os valores, tem-se:
500 1050 30 25
1050 30 25 10013
30 25 10013 354 03
102 00
19050
512 25
0
1
2
. . .
. . .
. . .
.
.
.
c
c
c

Resolvendo o sistema:
0
c = 26.875, c
1
= -3.434 e c
2
= 0.122, ou seja, o polinmio do 2
grau que melhor aproxima a tabela acima, segundo o critrio dos quadrados mnimos, :
p
2
(x) = 26.875 - 3.434x + 0.122x
2
Neste caso, a produo aos 8 anos dada por: 2 . 7 ) 8 ( p
2

Uma forma de comparar estas duas aproximaes calculando-se o resduo total, dado
por:
R p x y
i i
i
n

( ( ) )
0
2
uma vez que boas aproximaes devem corresponder a valores pequenos de R. Para os
casos acima, tem-se:
R p x y
i i
i
1
2 2 2 2 2 2
0
4
0 025 0 42 0 69 0 20 0 09 + + + +

( ( ) ) ( . ) ( . ) ( . ) ( . ) ( . ) 0.70
R p x y
i i
i
2 2
2 2 2 2 2 2
0
4
0184 0 437 0 495 0 329 0 091 + + + +

( ( ) ) ( . ) ( . ) ( . ) ( . ) ( . ) 0.57
Portanto, para a tabela acima, a aproximao por um polinmio do 2 grau melhor.
Para o caso geral de ajustar um polinmio de grau m a uma tabela de pontos { (x
i
, y
i
), i =0,
1,..., n }, pelo mtodo dos quadrados mnimos (regresso polinomial), tem-se o seguinte
sistema normal:

+
+
m
i
i
i i
i
m
1
0
m 2
i
1 m
i
m
i
1 m
i
2
i
i
m
i
i
x y
...
x y
y
c
...
c
c
x ... x x
...
x ... x x
x ... x 1
onde as somatrias so todas com i = 0 at n. A soluo deste sistema de equaes
lineares ir fornecer os coeficientes do polinmio de grau m que melhor se ajusta (segundo
o critrio dos quadrados mnimos) tabela de pontos dados.
Clculo Numrico 5 Aproximao de Funes
112
Nem sempre um polinmio a melhor funo de aproximao para uma dada tabela de
pontos. Seja por exemplo, a tabela a seguir:
x
i
1 2 4 6
y
i
10 5 2 1
Sejam as funes de aproximao:
(a) p(x) = c
0
+ c
1
x + c
2
x
2
(ou seja:
0
(x) = 1,
1
(x) = x e
2
(x) = x
2
)
(b) q(x) = c
0
+ c
1
/x (ou seja:
0
(x) = 1 e
1
(x) = 1/x)
Para o caso (a) tem-se o seguinte sistema normal:
4 13 57
13 57 289
57 289 1569
18
34
98
0
1
2
c
c
c

cuja soluo leva a:
2
x 51 . 0 x 27 . 5 31 . 14 ) x ( p + , com resduo total R = 1.22
Para o caso (b) tem-se o sistema normal:
4 00 192
192 134
1800
1317
0
1
. .
. .
.
.
c
c

cuja soluo leva a:
x
77 . 10
66 . 0 ) x ( q + , com resduo total R = 0.11
Ou seja, para a tabela acima, a aproximao dada por q(x) melhor que a aproximao
dada por p(x).
5.3 Aproximao de Funes Contnuas
Uma outra situao em que a aproximao de funes importante ocorre quando y = f(x),
mesmo sendo conhecida, difcil e onerosa de ser calculada. Se o clculo dessa funo
ocorre num processo iterativo, por exemplo, pode ser necessrio avaliar a funo um
grande nmero de vezes, com grande esforo computacional. Neste caso, pode ser
vantajoso substituir f(x) por uma outra funo p(x), mais simples de ser manipulada. Uma
maneira de realizar tal aproximao atravs do teorema de Taylor:
Teorema (Taylor). Seja f(x) uma funo contnua sobre um intervalo [a, b] e seja x
0
[a,
b]. Ento se f(x) for suficientemente diferencivel em [a, b] pode-se escrever:
f x f x x x f x
x x
f x
x x
n
f x
x x
n
f
n
n
n
n
( ) ( ) ( ) ' ( )
( )
!
"( ) ...
( )
!
( )
( )
( )!
( )
( ) ( )
+ +

+ +

+

+
+
+
0 0 0
0
2
0
0
0
0
1
1
2 1

onde (x
0
, x).
Ento, se a srie de Taylor for convergente e n for suficientemente grande, o polinmio:
p x f x x x f x
x x
f x
x x
n
f x
n
n
( ) ( ) ( ) ' ( )
( )
!
"( ) ...
( )
!
( )
( )
+ +

+ +

0 0 0
0
2
0
0
0
2
Clculo Numrico 5 Aproximao de Funes
113
pode ser usado como uma aproximao de f(x) nas vizinhanas do ponto
0
x .
Exemplo. Seja f(x) = e
x
e seja [0, 1] o intervalo de interesse. O polinmio de aproximao
de grau 3, para
0
x = 0, dado por:
p x e x e
x
e
x
e x
x x
3
0 0
2
0
3
0
2 3
0
0
2
0
6
1
2 6
( ) ( )
( ) ( )
+ +

+

+ + +
O polinmio de aproximao de grau 4, para
0
x = 0, ser:
p x x
x x x
4
2 3 4
1
2 6 24
( ) + + + +
A tabela a seguir ilustra estas aproximaes para alguns valores do intervalo [0, 1]:
x e
x
p
3
(x) p
4
(x)
0.0 1.00000 1.00000 1.00000
0.2 1.22140 1.22133 1.22140
0.5 1.64872 1.64583 1.64843
1.0 2.71828 2.66667 2.70843
(observe que, como
0
x = 0, medida que x se afasta de
0
x o erro torna-se cada vez
maior).
Para verificar o quo boa a aproximao por srie de Taylor, pode-se utilizar a funo
erro E
n
(x), que dada por:
E x f x p x
x x
n
f
n n
n
n
( ) ( ) ( )
( )
( )!
( )
( )


+
+
+ 0
1
1
1

O valor do erro no possvel calcular porque desconhecido, portanto, interessa saber
um limite superior para E
n
(x). Em geral os limites superiores so pessimistas, garantindo
entretanto que o mtodo seja usado com algum grau de confiana. Seja M
n+1
um valor tal
que:
f x M x a b
n
n
( )
( ) [ , ]
+
+
<
1
1
Ento:
E x
x a
n
f
x a
n
M
n
n
n
n
n
( )
( )
( )!
( )
( )
( )!
( )


+
<

+
+
+
+
+
1
1
1
1
1 1

como: | x - a | (b - a), para x [a, b], pode-se escrever:


E x
b a
n
M
n
n
n
( )
( )
( )!
<

+
+
+
1
1
1
Clculo Numrico 5 Aproximao de Funes
114
Exemplo. Sejam as aproximaes de e
x
em [0, 1] dadas pelos polinmios ) x ( p
3
e ) x ( p
4
acima.
x ) 5 ( ) 4 (
e ) x ( f ) x ( f M
n+1
=
x
1 x 0
e Max

= e
1
= 2.71828
Portanto:
E x
E x
3
4
1
24
2 71828 011326
1
120
2 71828 0 02265
( ) . .
( ) . .
<

_
,

<

_
,

Na verdade o erro bem menor do que estes valores (ver tabela anterior). Esta estimativa
de erro implica em utilizar mais termos da srie do que o necessrio para alcanar uma
certa preciso, ou seja, o esforo computacional maior, mas o resultado estar,
garantidamente, dentro da preciso.
Exemplo. Calcular p
n
(0.5) com 5 casas decimais corretas. Qual deve ser o valor de n?
E x
n
n
n
( )
( )!
. . <
+

_
,
<
1
1
2 71828 0 00001 8
Ento: p x x
x x x
p
8
2 3 8
8
1
2 3 8
05 164872 ( )
!
...
!
( . ) . + + + + + (com 5 casas decimais).
Valor correto, neste caso, dado por: e
0.5
= 1.64872127...
O mtodo dos quadrados mnimos pode tambm ser usado para o caso de aproximao de
funes contnuas. Para isto, necessrio definir a funo residual:
r(x) = p(x) - f(x)
onde p(x) a funo de aproximao de f(x) no intervalo [a, b]. Agora, o critrio dos
quadrados mnimos ser:
Min r x dx Min p x f x dx
a
b
a
b
( ( )) ( ( ) ( ))
2 2

Portanto, se:
p x c x c x c x
m m
( ) ( ) ( ) ... ( ) + + +
0 0 1 1

onde:
0 1
( ), ( ),..., ( ) x x x
m
so funes escolhidas convenientemente, e c
0
, c
1
, ..., c
m
so constantes a serem determinadas de modo a minimizar o valor de:
R = ( ( ) ( )) ( ( ) ( ) ... ( ) ( )) p x f x dx c x c x c x f x dx
a
b
a
b
m m
+ + +
2
0 0 1 1
2
,
Clculo Numrico 5 Aproximao de Funes
115
Como no caso discreto, o valor mnimo de R como funo de
m 1 0
c , , c , c L ser obtido
quando as (m+1) derivadas parciais de R em funo de c
j
(j = 0,1, ..., m) se anularem
simultaneamente, ou seja:

R
c
p x f x
p x
c
dx
j
a
b
j
2 0 ( ( ) ( ))
( )
, (j = 0,1, ..., m)
Mas:


p x
c
x
j
j
( )
( ) , e portanto o mnimo de R ser obtido quando os valores de
m 1 0
c , , c , c L satisfizerem as equaes:
2 0
0 0 1 1
( ( ) ( ) ... ( ) ( )) ( ) c x c x c x f x x dx
a
b
m m j
+ + + (j = 0,1, ..., m)
ou seja:
( ( ) ( ) ... ( )) ( ) ( ) ( )
a
b
m m j j
a
b
c x c x c x x dx f x x dx + + +
0 0 1 1
(j = 0,1, ..., m)
o que corresponde ao sistema normal de (m+1) equaes lineares (j = 0,1, ..., m) com
(m+1) incgnitas (
m 1 0
c , , c , c L ). Novamente, a soluo deste sistema ir fornecer os
valores dos coeficientes
m 1 0
c , , c , c L da melhor aproximao p(x) para a funo f(x),
segundo o critrio dos quadrados mnimos.
Exemplo. Aproximar a funo f(x) = e
x
no intervalo [0, 1] a um polinmio do 2 grau, pelo
mtodo dos quadrados mnimos.
Neste caso, p(x) = c
0
+ c
1
x + c
2
x
2
e o sistema normal ser dado por:
( ) ( ) ( )
0
1
0 1 2
2
0
1
+ + c c x c x x dx x e dx
j j
x
(j = 0,1,2)
ou seja:
(j = 0
0
(x) = 1) ( )
0
1
0 1 2
2
0
1
+ + c c x c x dx e dx
x
(j = 1
1
(x) = x) ( )
0
1
0 1 2
2
0
1
+ + c c x c x xdx xe dx
x
(j = 2
2
(x) = x
2
) ( )
0
1
0 1 2
2 2 2
0
1
+ + c c x c x x dx x e dx
x
Portanto:
Clculo Numrico 5 Aproximao de Funes
116
dx e x
dx xe
dx e
c
c
c
dx x dx x dx x
dx x dx x dx x
dx x dx x dx 1
x 2
x
x
2
1
0
4 3 2
3 2
2

onde os limites de integrao so 0 e 1. Pode-se notar que, no caso geral da funo de


aproximao ser um polinmio de grau m, os elementos da matriz A dos coeficientes so
tais que:
A x dx
i j
i j
a
b
,

+
(i = 0, 1, ..., m; j = 0, 1, ..., m)
ou seja:
A
x
i j
b a
i j
i j
i j
a
b
i j i j
,

+ +

1
]
1
1


+ +
+ + + + + + 1 1 1
1 1
(i = 0, 1, ..., m; j = 0, 1, ..., m)
Logo, para o caso acima, a matriz dos coeficientes ser:
A
i j i j
i j
i j i j
,


+ +

+ +
+ + + +
1 0
1
1
1
1 1
(i = 0, 1, 2; j = 0, 1, 2)
ou seja:
A
1 1 2 1 3
1 2 1 3 1 4
1 3 1 4 1 5
/ /
/ / /
/ / /
O vetor dos termos independentes do sistema normal tal que:
b x e dx
i
i x

0
1
(i = 0, 1, 2)
e portanto:
[ ]
b e dx e e e e
x x
0
0
1
0
1
1 0
1
[ ]
b xe dx e x e e
x x
1
0
1
0
1
1 0
1 1 1 0 1 1 ( ) ( ) ( )
[ ]
b x e dx e x x e e e
x x
2
2 2
0
1
0
1
1 2 0 2
2 2 1 2 1 2 0 2 0 2 2 + + + ( ) ( ) ( )
Logo, o sistema normal ser:
Clculo Numrico 5 Aproximao de Funes
117
1 1 2 1 3
1 2 1 3 1 4
1 3 1 4 1 5
1
1
2
0
1
2
/ /
/ / /
/ / /
c
c
c
e
e

que resolvido resulta em:


p(x) = 1.013 + 0.851x + 0.839x
2
A matriz A dada por A
i j
i j ,

+ +
1
1
(i,j = 0,1, ..., m) conhecida como matriz de Hilbert.
Problemas que envolvem soluo de sistemas de equaes lineares onde a matriz dos
coeficientes uma matriz de Hilbert so problemas mal-condicionados. O mal-
condicionamento torna-se mais pronunciado medida que m aumenta.
5.4 Polinmios Ortogonais
Para evitar o mal-condicionamento das matrizes de Hilbert pode-se empregar polinmios
ortogonais. Dois polinmios distintos P(x) e Q(x) so ortogonais em um intervalo [a, b] se:
P x Q x dx
a
b
( ) ( ) 0
O uso de polinmios ortogonais para o ajuste de funes leva a um sistema de equaes
normais cuja matriz dos coeficientes diagonal, o que no apenas evita o mal-
condicionamento das matrizes de Hilbert, como facilita a soluo do sistema.
Os polinmios de Legendre podem ser escritos, recursivamente, como:
K , 3 , 2 n , ) x ( L
n
1 n
) x ( L ) x (
n
1 n 2
) x ( L
x ) x ( L
1 ) x ( L
2 n 1 n n
1
0


Tais polinmios so ortogonais no intervalo [-1, 1], ou seja:


1
1
m n
m n 0 dx ) x ( L ) x ( L
Alm disto,
( ) K , 1 , 0 n
1 n 2
2
dx ) x ( L
1
1
2
n

+

Exemplo:
x ) x ( L
1 ) x ( L
1
0

( ) 1 x 3
2
1
2
1
x x
2
3
) x ( L
2
1 2
) x ( L ) x (
2
1 2 2
) x ( L
2
0 1 2

Verificando a ortogonalidade:
Clculo Numrico 5 Aproximao de Funes
118
0
2
1
2
1
2
x
xdx dx ) x ( L ) x ( L
1
1
1
1
2
1
1
1 0

1
1
]
1



[ ] [ ] 0 ) 1 1 ( ) 1 1 (
2
1
x x
2
1
dx ) 1 x 3 (
2
1
dx ) x ( L ) x ( L
1
1
1
1
3 2
1
1
2 0
+



0
2
1
4
1
2
1
4
1
2
1
2
x
4
x 3
2
1
dx ) x x 3 (
2
1
dx ) x ( L ) x ( L
1
1
1
1
2 4
3
1
1
2 1

1
]
1

,
_


,
_


1
1
]
1



Considere, ento, a aproximao por quadrados mnimos da forma:
p x c c x c x
2 0 1 2
2
( ) + +
de uma funo contnua f(x) definida no intervalo [-1, 1]. Do polinmio de Legendre de 2
grau tem-se:
( ) 1 x 3
2
1
) x ( L
2
2

ou seja:
( ) ( ) ) x ( L ) x ( L 2
3
1
1 ) x ( L 2
3
1
x
0 2 2
2
+ +
Substituindo em p x
2
( ) tem-se:
( )
{
{
) x ( L c
3
2
) x ( L c ) x ( L ) c
3
1
c ( ) x ( L ) x ( L 2
3
1
c ) x ( L c ) x ( L c ) x ( p
2 2 1 1 0 2 0 0 2 2 1 1 0 0 2
2
1
0

+ + + + + +
43 42 1
Assim, para determinar os coeficientes do polinmio de ajuste pelo critrio dos quadrados
mnimos, deve-se minimizar:

,
_


1
1
2
2
0 i
i i
dx ) x ( L ) x ( f
o que leva ao sistema de equaes normais A = b, onde:
2 , 1 , 0 j , i dx ) x ( L ) x ( L A
1
1
j i j , i

2 , 1 , 0 i dx ) x ( L ) x ( f b
1
1
i i

Da ortogonalidade dos polinmios de Legendre vem que os elementos da matriz A so no


nulos apenas na diagonal principal (i = j). Portanto, a soluo do sistema ser:
Clculo Numrico 5 Aproximao de Funes
119
) 2 , 1 , 0 i ( dx ) x ( L ) x ( f
2
1 i 2
1 i 2
2
dx ) x ( L ) x ( f
1
1
i
1
1
i
i

+

Com os valores de
i
i ( , , ) 0 1 2 pode-se determinar os coeficientes c c c
0 1 2
, , a partir de:
c c
c
c
0 2 0
1 1
2 2
1
3
2
3
+

'

cuja soluo :
c
0 0 2
1
2

c
1 1

c
2 2
3
2

Exemplo: Aproximar a funo e
x
no intervalo [-1, 1].
Neste caso, tem-se:
( )
1
1
1
x
1
1
0
x
0
e e
2
1
dx e
2
1
dx ) x ( L e
2
1




1
1
1
x
1
1
1
x
1
e 3 dx x e
2
3
dx ) x ( L e
2
3




( ) ( )
1
1
1
2 x
1
1
2
x
2
e 7 e
2
5
dx 1 x 3
2
1
e
2
5
dx ) x ( L e
2
5




Portanto:
( ) ( ) ( ) c e e e e e e
0
1 1 1
1
2
1
2
5
2
7
1
4
3 33 0 996 +

.
c e
1
1
3 1104

.
( ) ( ) c e e e e
2
1 1
3
2
5
2
7
15
4
7 0537

.
ou seja, a funo de aproximao por quadrados mnimos dada por:
p x x x
2
2
0 996 1104 0537 ( ) . . . + +
A tabela abaixo ilustra a aproximao obtida:
Clculo Numrico 5 Aproximao de Funes
120
x p x
2
( )
e
x
-1.0 0.429 0.368
0.0 0.996 1.000
0.5 1.682 1.649
1.0 2.637 2.718
Portanto, o uso de polinmios ortogonais na aproximao de funes pelo mtodo dos
quadrados mnimos, do ponto de vista computacional, muito vantajoso, tanto em tempo
de processamento ( necessrio calcular apenas os elementos da diagonal principal da
matriz dos coeficientes), como em espao de memria (no necessrio espao para
armazenar a matriz dos coeficientes).
O uso dos polinmios de Legendre, no entanto, cria um problema: E se o intervalo onde se
deseja a aproximao no for [-1, 1]?. Neste caso, existem duas maneiras de resolver o
problema:
Troca de varivel. Basta substituir a varivel x pela varivel z:
x a b z
x a b
b a

[ , ] [ , ]
2
1 1
Processo de ortogonalizao de Gram-Schmidt. Neste caso procura-se determinar uma
sequncia de polinmios { } Q x i
i
( ), , , 0 1 K com ) x ( Q
i
de grau i, que sejam
ortogonais em [a, b].
Para ilustrar, considere que deseja-se determinar os polinmios ) x ( Q ), x ( Q
1 0
e ) x ( Q
2
,
ortogonais em [a, b]. Pode-se, ento, definir:
2
22 21 20 2
11 10 1
00 0
x c x c c ) x ( Q
x c c ) x ( Q
c ) x ( Q
+ +
+

A ortogonalidade destes polinmios implica em:


Q x Q x dx
a
b
0 1
0 ( ) ( )
Q x Q x dx
a
b
0 2
0 ( ) ( )
Q x Q x dx
a
b
1 2
0 ( ) ( )
o que leva a um sistema de 3 equaes com 6 incgnitas. Escolhendo, arbitrariamente,
1 c c c
02 01 00
, pode-se determinar os demais coeficientes.
Exemplo. Polinmios ortogonais em [0, 1].
( ) Q x Q x dx c x dx x c
x c
0 1 11 11
2
0
1
0
1
0
1
11
1 1
2
1
2
0 ( ) ( ) + +

1
]
1 +
Clculo Numrico 5 Aproximao de Funes
121
ou seja: 2 c
11
.
( ) Q x Q x dx c x c x dx x c
x
c
x c c
0 2 21 22
2
21
2
22
3
0
1
0
1
0
1
21 22
1 1
2 3
1
2 3
0 ( ) ( ) + + + +

1
]
1 + +
( )
( ) Q x Q x dx x c x c x dx
x c
x
c c
x
c
x
c c
1 2
0
1
0
1
21 22
2
21
2
22 21
3
22
4
21 22
1 2 1
2
2
2
3 2
1
6
1
6
0
( ) ( )
( ) ( )
+ +
+ +

1
]
1

ou seja: 6 c , 6 c
22 21
. Portanto, os seguintes polinmios so ortogonais em [0, 1]:
2
2
1
0
x 6 x 6 1 ) x ( Q
x 2 1 ) x ( Q
1 ) x ( Q
+

Uma vez determinados os polinmios ortogonais ) x ( Q


i
, o sistema de equaes normais
para o polinmio de aproximao de quadrados mnimos:
p x Q x Q x Q x
2 0 0 1 1 2 2
( ) ( ) ( ) ( ) + +
obtido de forma anloga ao caso dos polinmios de Legendre, ou seja:
( )

i
i
a
b
i
a
b
f x Q x dx
Q x dx
i

( ) ( )
( )
, ,
2
0 1 K
Exemplo. Aproximar e
x
no intervalo [0, 1] a um polinmio do 2 grau.
Neste caso, tem-se:
( )

0
0
0
1
0
2
0
1
0
1
0
1
1

e Q x dx
Q x dx
e dx
dx
e
x x
( )
( )
( )

1
1
0
1
1
2
0
1
0
1
2
0
1
1 2
1 2
3 3

e Q x dx
Q x dx
e x dx
x dx
e
x x
( )
( )
( )
( )
( )
( )

2
2
0
1
2
2
0
1
2
0
1
2 2
0
1
1 6 6
1 6 6
5 7 19
+
+

e Q x dx
Q x dx
e x x dx
x x dx
e
x x
( )
( )
( )
( )
( )
Portanto:
p x x x
2
2
1013 0851 0839 ( ) . . . + +
Clculo Numrico 5 Aproximao de Funes
122
Notar que este polinmio o mesmo obtido anteriormente (ver seo 6.3).
No processo considerado acima, para determinar os polinmios ortogonais
{ } Q x i
i
( ), , , 0 1 K escolheu-se (arbitrariamente) os coeficientes c i
i 0,
0 1 ( , , ) K como
sendo iguais a 1. Evidentemente, existem outras escolhas. Uma escolha possvel fixar as
condies de normalizao, dadas por:
( ) Q x dx i
i
a
b
( ) , ,
2
1 0 1 K
Com as condies de normalizao os polinmios obtidos so denominados ortonormais.
Se o processo de aproximao por quadrados mnimos for expresso em termos de
polinmios ortonormais, a matriz dos coeficientes do sistema de equaes normais ser a
matriz identidade. Portanto, neste caso, os coeficientes
i
i ( , , ) 0 1 K sero calculados
diretamente por:

i i
a
b
f x Q x dx i ( ) ( ) , , 0 1 K
Exemplo. Polinmios ortonormais em [0, 1].
Sejam os polinmios:
2
22 21 20 2
11 10 1
00 0
x c x c c ) x ( Q
x c c ) x ( Q
c ) x ( Q
+ +
+

/
Pela ortogonalidade tem-se:
( ) Q x Q x dx c c c x dx c c
c
0 1 00 10 11
0
1
0
1
00 10
11
0
2
0 ( ) ( ) + +

_
,

( ) Q x Q x dx c c c x c x dx c c
c c
0 2 00 20 21 22
2
0
1
0
1
00 20
21 22
0
2 3
0 ( ) ( ) + + + +

_
,

( ) ( ) Q x Q x dx c c x c c x c x dx
c c
c c
c
c c c
1 2 10 11 20 21 22
2
0
1
0
1
10 20
21 22
11
20 21 22
0
2 3 2 3 4
0
( ) ( ) + + +
+ +

_
,
+ + +

_
,


Tem-se ento:
c
c
c
c c
c c
c c
c
c c c
10
11
20
21 22
10 20
21 22
11
20 21 22
2
0
2 3
0
2 3 2 3 4
0
+
+ +
+ +

_
,
+ + +

_
,

'

Clculo Numrico 5 Aproximao de Funes


123
Pela normalizao tem-se:
( ) ( ) Q x dx c dx c
0
2
00
2
0
1
0
1
00
1 1 ( )
( ) ( ) Q x dx c c x dx c c c
c
1
2
10 11
2
0
1
0
1
10
2
10 11
11
2
1
3
1 ( ) + + +
( ) ( ) Q x dx c c x c x dx
c c c c c
c c c c
2
2
20 21 22
2
2
0
1
0
1
20
2
20 21 20 22
21
2
21 22 22
2
1
2
3 3 2 5
1
( ) + +
+ + + + +

Tem-se ento:
c
c c c
c
c c c c c
c c c c
00
10
2
10 11
11
2
20
2
20 21 20 22
21
2
21 22 22
2
1
3
1
2
3 3 2 5
1

+ +
+ + + + +

'

Resolvendo as seis equaes chega-se aos seguintes valores:


c
c c
c c c
00
10 11
20 21 22
1
3 2 3
5 6 5 6 5



Portanto, os polinmios a seguir so ortonormais em [0, 1]:
2
2
1
0
x 5 6 x 5 6 5 ) x ( Q
x 3 2 3 ) x ( Q
1 ) x ( Q
+

Exerccio. Verificar a ortonormalidade dos polinmios acima, no intervalo [0, 1].


Com os polinmios ortonormais pode-se facilmente determinar o polinmio de aproximao
de quadrados mnimos:
p x Q x Q x Q x
2 0 0 1 1 2 2
( ) ( ) ( ) ( ) + +
ou seja:
A Q x Q x dx
se i j
se i j
i j
i j i j ,
( ) ( ) , , ,

'


0
1
0
1
0 1 2
Clculo Numrico 5 Aproximao de Funes
124
b f x Q x dx i
i i
( ) ( ) , ,
0
1
0 1 2
Portanto, como A matriz identidade:

i i
f x Q x dx i ( ) ( ) , ,
0
1
0 1 2
Exemplo. Aproximar e
x
no intervalo [0, 1] a um polinmio do 2 grau, usando polinmios
ortonormais.
Neste caso, tem-se:

0 0
0
1
0
1
1 e Q x dx e dx e
x x
( )

1 1
0
1
0
1
3 2 3 3 3 e Q x dx e x dx e
x x
( ) ( ) ( )

2 2
0
1 2
0
1
5 6 5 6 5 5 7 19 + e Q x dx e x x dx e
x x
( ) ( ) ( )
Portanto:
p x x x
2
2
1013 0851 0839 ( ) . . . + +
que , evidentemente, o mesmo polinmio de aproximao obtido anteriormente (ver
exemplos anteriores).
5.5 Mtodo dos Quadrados Mnimos Generalizado
Embora existam teoremas, como o de Weierstrass, por exemplo (ver Captulo 4) que
garantem que para um intervalo [a, b] sempre possvel determinar uma boa aproximao
de uma funo contnua f(x) por um polinmio p
n
(x), existem fenmenos que levam a
pensar em outros modelos de aproximao.
Por exemplo, sabe-se (pela natureza do problema) que a funo f(x) peridica em [-, ].
Neste caso natural usar uma funo de aproximao como uma combinao linear de
funes peridicas.
Seja { }
i
x i n ( ), , , , 0 1 K um conjunto de funes linearmente independentes
denominadas funes-base. Seja a funo de aproximao dada por:
L x x x x x
n n i i
i
n
( , , ) ( ) ( ) ( ) ( ) + + +

0 0 1 1
0
K
Notar que a aproximao polinomial um caso particular de L x ( , , ) onde as funes-
base
i
x i n ( ) ( , , , ) 0 1 K correspondem aos monmios x i n
i
( , , , ) 0 1 K ou a
polinmios ortogonais ) x ( P
i
.
Pelo critrio dos quadrados mnimos, uma vez escolhido o conjunto , deve-se determinar
os coeficientes
0 1
, , , K
n
que minimizam a funo:
( ) I f x L x dx
a
b
( ) ( ) ( , , )
2
Clculo Numrico 5 Aproximao de Funes
125
ou, de uma forma generalizada, introduzindo uma funo-peso w(x) para reduzir (ou
reforar) o quadrado do erro em certos trechos do intervalo [a, b], que minimizam a funo:
( ) I f x L x w x dx
a
b
( ) ( ) ( , , ) ( )
2
Os coeficientes
0 1
, , , K
n
que minimizam esta funo so tais que:

I
j n
j
( )
, , , 0 0 1 K
ou seja:


I
f x x x w x dx j n
j
i i
i
n
a
b
j
( )
( ) ( ) ( ) ( ) , , ,

_
,

2 0 0 1
0
K
o que leva ao seguinte sistema de equaes normais:

i i j
a
b
A
i
n
j
a
b
b
x x w x dx f x x w x dx j n
i j j
( ) ( ) ( ) ( ) ( ) ( ) , , ,
,


1 2 4444 3 4444 1 2 4444 3 4444
K
0
0 1
Para o caso discreto as integrais devem ser substitudas por somatrias. Neste caso, tem-
se:
A x x w i j n
i j i k j k k
k
m
,
( ) ( ) ( , , , , )


0
0 1 K
b f x x w j n
j k j k k
k
m

( ) ( ) ( , , , )
0
0 1 K
Exemplo. Seja a tabela abaixo, representando uma funo y = f(x):
x
i
1.0 2.0 4.0 6.0
y
i
10.0 5.0 2.0 1.0
a) Seja a funo de aproximao L x a a x a x ( ) + +
0 1 2
2
Neste caso, w k
k
1 0 1 2 3 ( , , , ) e
0 1 2
2
1 ( ) ; ( ) ; ( ) x x x x x , ou seja:

i
i
x x i ( ) ( , , ) 0 1 2 .
Portanto, para este caso, tem-se:
A x x
k k
k k
0,0 0 0
0
3
0
3
1 1 1 1 1 1 4 + + +

( ) ( )
A x x x
k k k
k k
0,1 0 1
0
3
0
3
1 1 2 4 6 13 + + +

( ) ( )
Clculo Numrico 5 Aproximao de Funes
126
A x x x
k k k
k k
0,2 0 2
2 2 2 2 2
0
3
0
3
1 1 2 4 6 57 + + +

( ) ( )
M
b y x y
k k k
k k
0 0
0
3
0
3
1 10 5 2 1 18 + + +

( )
M
Tem-se, ento, o seguinte sistema normal:
4 13 57
13 57 289
57 289 1569
18
34
98
0
1
2
a
a
a

o que leva funo de aproximao:
L(x) = 14.312 - 5.266 x + 0.513 x
2
Calculando a soma dos quadrados dos resduos tem-se:
R = ( ) f x L x
k k
k
( ) ( )

0
3
2
= (10 - 9.558)
2
+ (5 - 5.829)
2
+ (2 - 1.447)
2
+ (1 - 1.166)
2
= 1.216
b) Considere agora a funo de aproximao L x c
c
x
( ) +
0
1
Neste caso, w k
k
1 0 1 2 3 ( , , , ) e
0 1
1
1
( ) ; ( ) x x
x
.
Portanto, para este caso, tem-se:
A x x
k k
k k
0,0 0 0
0
3
0
3
1 1 1 1 1 1 4 + + +

( ) ( )
A x x
x
k k
k k
0,1 0 1
0
3
0
3
1
1917

( ) ( ) .
M
o que leva ao seguinte sistema normal:
4 000 1917
1917 1340
18 000
13167
0
1
. .
. .
.
.
c
c

Clculo Numrico 5 Aproximao de Funes
127
e funo de aproximao:
L(x) = + 0 658
10 765
.
.
x
Neste caso, a soma dos quadrados dos resduos ser:
R = ( ) f x L x
k k
k
( ) ( )

0
3
2
= (10 - 10.107)
2
+ (5 - 4.724)
2
+ (2 - 2.033)
2
+ (1 - 1.136)
2
= 0.107
Pelos valores do resduo total R conclui-se, portanto, que a aproximao (b) melhor
do que a aproximao (a).
O processo de ortogonalizao de Gram-Schmidt pode ser estendido para gerar uma
sequncia de funes ortogonais a partir de um conjunto { }
i
x i n ( ), , , , 0 1 K de
funes-base linearmente independentes:


0 0
0
1
1 2
( ) ( )
( ) ( ) ( ) , , ,
x x
x x c x i n
i i ij j
j
i

K
Como as funes
i
x ( ) so construdas recursivamente, para que no estgio i as funes
{ }
k
x k i ( ), , , , 0 1 K formem um conjunto ortogonal, deve-se ter:

k i
a
b
k i ij j
j
i
a
b
x x w x dx x x c x w x dx ( ) ( ) ( ) ( ) ( ) ( ) ( )

_
,

0
1

k i ik
a
b
k k
a
b
x x w x dx c x x w x dx ( ) ( ) ( ) ( ) ( ) ( ) 0
ou seja:
c
x x w x dx
x x w x dx
ik
k i
a
b
k k
a
b



( ) ( ) ( )
( ) ( ) ( )
Portanto, as funes ortogonais so obtidas por:





0 0
0
1
1 2
( ) ( )
( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) , , ,
x x
x x
x x w x dx
x x w x dx
x i n
i i
j i
a
b
j j
a
b
j
j
i

K
Clculo Numrico 5 Aproximao de Funes
128
Exemplo. Determinar funes ortogonais em [-1, 1] a partir do conjunto de funes-base
{ }
i
i
x x i ( ) , , , 0 1 K e funo-peso w x
x
( )

1
1
2
.
1 x ) x ( ) x (
0
0 0

x 1
dx
x 1
1
dx
x 1
x
x ) x (
dx ) x ( w ) x ( ) x (
dx ) x ( w ) x ( ) x (
) x ( ) x (
1
1
2
1
1
2
0
1
1
0 0
1
1
1 0
1 1








2 2
0 2
1
1
0 0
1
1
0
1 2
1
1
1 1
1
1
1
2
1
2
( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( )
( ) ( ) ( )
( ) ( ) ( )
( ) x x
x x w x dx
x x w x dx
x
x x w x dx
x x w x dx
x x

e assim por diante.


Os polinmios:
T x i x i
i
( ) cos( cos ( )) , ,
1
0 1 K
so conhecidos como polinmios de Tchebyshev e tambm so ortogonais em [-1, 1] com
relao funo-peso w x
x
( )

1
1
2
. facil verificar isto, pois para i j:
T x T x w x dx i x j x
x
dx
i j
( ) ( ) ( ) cos( cos ( )) cos( cos ( ))

1
1 1
1
1 1
2
1
1
Fazendo a mudana de varivel:
u x

cos ( )
1
tem-se, para os limites de integrao:
x u
x u


1
1 0

e tambm:
du
x
dx

1
1
2
Portanto:
T x T x w x dx i u j u
x
x du
i j
( ) ( ) ( ) cos( ) cos( )

_
,

1
1 0
2
2
1
1
1

Clculo Numrico 5 Aproximao de Funes


129

+ + + +

1
]
1 cos( ) cos( )
sen( ) sen( ) sen( ) sen( )
( )
i u j u du
i iu ju j iu ju i iu ju j iu ju
i j
0 2 2
0
2

+ +


i i j j i j i i j j i j
i j
sen[ ( )] sen[ ( )] sen[ ( )] sen[ ( )]
( )

2
2 2
i j i j
i j
sen[ ] sen[ ] sen[ ] sen[ ]
( )
0 0 0 0
2
0 0 0
2 2
+ +


Sabe-se tambm que:
cos[ cos ( )] cos[( ) cos ( )] cos[( ) cos ( )]cos[cos ( )] , , i x i x i x x i

+
1 1 1 1
2 2 1 0 1 K
ou seja:
T x T x x T x
i i i
( ) ( ) ( ) +
2 1
2
Portanto, os polinmios de Tchebyshev podem ser escritos de forma recursiva, como:
T x x T x T x i
i i i
( ) ( ) ( ) , ,

2 2 3
1 2
K
Os polinmios obtidos desta forma, a menos de um fator, so os mesmos obtidos pelo
processo de ortogonalizao de Gram-Schmidt.
Exemplo. Aproximar a funo e
x
no intervalo [-1, 1] uma funo da forma:
p x T x T x T x T x
3 0 0 1 1 2 2 3 3
( ) ( ) ( ) ( ) ( ) + + +
onde T
i
(x) (i = 0, ..., 3) so polinmios de Tchebyshev.
Do mtodo dos quadrados mnimos generalizado, tem-se que o sistema de equaes
normais A b tal que:
A T x T x w x dx i j n
i j i j
a
b
,
( ) ( ) ( ) , , , , 0 1 K
b f x T x w x dx j n
j j
a
b
( ) ( ) ( ) , , , 0 1 K
e que para polinmios ortogonais o sistema de equaes normais diagonal. Portanto:

i
i
a
b
i i
a
b
f x T x w x dx
T x T x w x dx
i j n

( ) ( ) ( )
( ) ( ) ( )
, , , , 0 1 K
Para o exemplo acima:
Clculo Numrico 5 Aproximao de Funes
130
T x T x
x
dx iu du
para i
para i
i i
( ) ( ) cos [ ]
1
1
0
2
1
2
1
1 2
0

'

Logo:

0
0
2
1
1
1
1
1266

e T x
x
dx
x
( )
.

1
1
2
1
1
2
1
1130

e T x
x
dx
x
( )
.

2
2
2
1
1
2
1
0 271

e T x
x
dx
x
( )
.

3
3
2
1
1
2
1
0044

e T x
x
dx
x
( )
.
Dos polinmios de Tchebyshev tem-se:
T x x
0
1
0 0 1 ( ) cos[ cos ( )] cos[ ]

T x x x
1
1
1 ( ) cos[ cos ( )]

T x x T x T x x x x
2 1 0
2
2 2 1 2 1 ( ) ( ) ( )
T x x T x T x x x x x x
3 2 1
2 3
2 2 2 1 4 3 ( ) ( ) ( ) ( )
Portanto, a funo de aproximao ser:
p x x x x x
3
2 3
1266 1 1130 0 271 2 1 0 044 4 3 ( ) . [ ] . [ ] . [ ] . [ ] + + +
ou seja:
p x x x x
3
2 3
0995 0 998 0542 0176 ( ) . . . . + + +
Portanto, usando polinmios de Tchebyshev a dificuldade est na avaliao das integrais
para o clculo dos coeficientes
i
i n ( , , , ) 0 1 K . Como calcular integrais numericamente
o assunto do captulo a seguir.
EXERCCIOS RESOLVIDOS
1. Aproximar a funo y = f(x) conhecida apenas nos pontos da tabela a seguir a uma
funo da forma y ab
x

2
utilizando o mtodo dos quadrados mnimos.
Clculo Numrico 5 Aproximao de Funes
131
x 1.00 1.20 1.40 1.60 1.80
f(x) 0.24 0.19 0.14 0.11 0.08
Soluo:
Aplicando logaritmo pode-se escrever: ln(y) = ln(a) + x
2
ln(b). Fazendo z = ln(y), c
0
=
ln(a), c
1
= ln(b), o problema reduz-se a a ajustar uma funo z = c x c x
0 0 1 1
( ) ( ) + ,
com
0
1 ( ) x e
1
2
( ) x x , seguinte tabela de pontos:
x 1.00 1.20 1.40 1.60 1.80
z -1.43 -1.66 -1.97 -2.21 -2.53
Portanto, o sistema normal ser:
1
1
5
2
1
5
2
1
5
4
1
5
0
1
1
5
2
1
5
i
i
i
i
i
i
i
i
i
i i
i
x
x x
c
c
z
z x


Substituindo os valores, tem-se:
50 10 2
10 2 239
98
215
097
0 49
0
1
0
1
. .
. .
.
. .

c
c
c
c
Como ln(a) = c
0
e ln(b) = c
1
tem-se:
a = e e
c
0
0 97
0 38
.
.
b = e e
c
1
0 49
0 61
.
.
Portanto a funo de aproximao ser: y = 0.38 0 61
2
.
x
.
EXERCCIOS PROPOSTOS
1. Aproximar a funo y = f(x) conhecida apenas nos pontos da tabela a seguir a uma
funo da forma y a bx + 1
2
utilizando o mtodo dos quadrados mnimos.
x 0.0 1.0 2.0 3.0
y 0.50 0.76 1.24 1.78
2. Dada a funo f(x) conhecida apenas nos pontos tabelados:
x 1.00 1.20 1.40 1.60 1.80
f(x) 0.2420 0.1942 0.1497 0.1109 0.0790
Clculo Numrico 5 Aproximao de Funes
132
Aproxime f(x) a uma funo da forma: c
0
ln(x) + c
1
e
-x
pelo mtodo dos quadrados
mnimos.
3. Encontre os polinmios de grau 1, 2 e 3 que melhor ajustam a tabela abaixo, no sentido
dos quadrados mnimos. Qual deles fornece o menor resduo?
x 0.00 0.15 0.31 0.50 0.60 0.75
f(x) 1.000 1.004 1.031 1.117 1.223 1.422
4. A tabela abaixo fornece o nmero de habitantes do Brasil (em milhes) a partir de 1872.
Obter uma estimativa para a populao brasileira no ano 2000. Comente criticamente o
resultado obtido.
ano 1872 1890 1900 1920 1940 1950 1960 1970 1980
habitante
s
9.9 14.3 17.4 30.6 41.2 51.9 70.9 93.1 130.0
5. O nmero y de bactrias por unidade de volume existente em uma cultura, aps x
horas, apresentado na tabela a seguir. Ajuste aos dados as curvas y ab
x
e y ax
b
.
Qual delas parece ser a melhor aproximao?
x (horas) 0 1 2 3 4 5 6
y (bactrias/volume) 32 47 65 92 132 190 275
6. Encontrar uma aproximao de quadrados mnimos linear para sen(x) no intervalo [0,
/2] pelos seguintes caminhos:
a) diretamente da definio, ou seja, resolvendo o sistema normal;
b) usando polinmios ortogonais em [0, /2];
c) mapeando o intervalo em [-1,1] e usando polinmios de Legendre.
7. Escreva um programa para determinar uma aproximao de quadrados mnimos da
forma ) x cos( ) x sen( ) x , ( L
3 2 1
+ + para a funo
x
e y no intervalo [-, ] (ou
seja, o programa deve determinar os valores de
2 1
, e
3
).
EXERCCIOS DE PROGRAMAO
1. Dada uma tabela { (x
i
, y
i
), i = 1, 2, ..., n }, que representa uma funo y
i
= f(x
i
), pode-
se determinar o polinmio p(x) = c c x c x c x
m
m
1 2 3
2
1
+ + + +
+
... que melhor aproxima
esta tabela, segundo o critrio dos quadrados mnimos, montando e resolvendo o
sistema normal, dado por:
Clculo Numrico 5 Aproximao de Funes
133
1
2
2 3 1
1 2 2
1
2
1


+
+ +
+

x x x
x x x x
x x x x
c
c
c
y
y x
y x
m
m
m m m m
m
m
M
M M
onde as somatrias so todas com i = 1, ..., n. Fazer um programa que:
a) L o nmero de pontos (n) e a tabela { (x
i
, y
i
), i = 1, 2, ..., n };
b) L o grau do polinmio de aproximao (m);
c) Constri e mostra o sistema de equaes normais;
d) Resolve o sistema para determinar os coeficientes do polinmio que melhor
aproxima a tabela de pontos, pelo critrio dos quadrados mnimos;
e) Determina a soma total dos resduos ao quadrado. Lembrar que, uma vez
determinados os coeficientes c
i
(i = 1, 2, ..., m+1), o valor do polinmio em um
ponto xs qualquer pode ser calculado como:
valor = c
m+1
para i = m, m-1, ..., 1 fazer:
valor = valor * xs + c
i
2. Fazer um programa para expandir a funo y = cos(x) em torno de um ponto x = x
0
,
usando o teorema de Taylor, para encontrar um polinmio de aproximao. O grau do
polinmio deve ser tal que o erro de aproximao seja menor que . O programa dever
mostrar o polinmio de aproximao encontrado e testar o resultado da aproximao
para valores de x em um intervalo [a, b] que contenha o ponto x
0
.
Confira o polinmio com o obtido pelo programa Mathematica, utilizando a funo:
Series[Cos[x], {x, x0, n}]
onde n o nmero de termos da srie de Taylor a serem considerados.
Clculo Numrico 5 Aproximao de Funes
134
135
Clculo Numrico
6. INTEGRAO NUMRICA
6.1 - Introduo
Neste captulo estuda-se o problema de calcular, com uma preciso desejada, o valor de:
I f x dx
a
b
( )
Existem vrias funes f(x) para as quais no possvel determinar o valor da integral
analiticamente. Por exemplo:
I e dx
x

2
0
1
Nestes casos, um mtodo numrico (que calcula I de forma aproximada) imprescindvel.
Mas, mesmo que exista uma forma analtica de calcular a integral, o clculo de I pode ser
muito trabalhoso e difcil, sendo prefervel calcular I atravs de um mtodo de integrao
numrica (ou mtodo de quadratura). Outras situaes em que a integrao numrica
importante ocorrem quando:
a funo f(x) conhecida apenas para um conjunto de pontos;
o problema aparece como um subproblema em um mtodo numrico (como no caso de
regresso de funes contnuas, visto no captulo anterior).
Os mtodos de integrao numrica realizam a seguinte aproximao:
I f x dx w f x
a
b
i i
i
n

( ) ( )
0
onde os pontos x
i
[a, b] (i = 0,1, ..., n) e so tais que x
0
< x
1
< ... < x
n
. Os diversos
mtodos de integrao numrica conhecidos provm das escolhas dos pesos w
i
e dos
pontos x
i
(i = 0,1, ..., n).
Exemplo: Determinar I e dx
x

1
1
pelos seguintes mtodos numricos:
a) [ ]
1
3
1 4 0 1 f f f ( ) ( ) ( ) + +
b)
1
9
5 3 5 8 0 5 3 5 [ ( / ) ( ) ( / )] f f f + +
Neste caso, tem-se:
Valor Correto Pela Regra (a) Pela Regra (b)
2.35040 2.36205 2.35034
O erro de truncamento em um mtodo de quadratura dado por E = I - R, onde:
Clculo Numrico 6 Integrao Numrica
136
I f x dx R w f x
a
b
i i
i
n

( ) ( )
0
Em geral, no possvel saber o valor de E, mas pode-se determinar um limite superior
para o valor do erro, ou seja:
| E | M
para um valor M > 0. Diz-se que uma regra de quadratura tem preciso de grau m, se:
E = 0 quando f(x) = 1, x, x
2
, ..., x
m
e
E 0 para f(x) = x
m+1
Exemplo.
I x dx
x
i
i para i par
para i impar
i
i

+

1
]
1
1

+
'

1
1
1
1
1
1
2 1
0
/ ( ),
,
Calculando I pelas regras (a) e (b) acima, tem-se:
Integrando Correto Regra (a) Erro (a) Regra (b) Erro (b)
1 2.00000 2.00000 0.0 2.00000 0.0
x 0.00000 0.00000 0.0 0.00000 0.0
x
2 0.66667 0.66667 0.0 0.66667 0.0
x
3 0.00000 0.00000 0.0 0.00000 0.0
x
4 0.40000 0.66667 -0.26667 0.40000 0.0
x
5 0.00000 0.00000 0.0
x
6 0.28571 0.24000 0.04571
Portanto: A regra (a) tem preciso de grau 3 e a regra (b) tem preciso de grau 5.
Uma regra de quadratura pode ser fixa ou adaptativa, dependendo da escolha dos pesos
w
i
e dos pontos x
i
(i = 0,1, ..., n). Numa regra de quadratura fixa esta escolha no depende
do comportamento de f(x), mas apenas da regra a ser utilizada. J na quadratura
adaptativa a escolha feita de acordo com o comportamento de f(x), de modo que a
densidade dos pontos x
i
seja maior onde a funo varia mais intensamente, como ilustra a
figura a seguir.
y
x
y = f(x)
Neste captulo sero estudados os seguintes mtodos de integrao numrica:
Clculo Numrico 6 Integrao Numrica
137
Frmulas de Newton-Cotes
os pontos
i
x (i = 0,1, ..., m) so igualmente
espaados no intervalo [a, b] de integrao, ou
seja: x
0
= a e h i x x
0 i
+ , com
1 i i
x x h

(i =
1,2, ..., m);
os pesos
i
w (i = 0,1, ..., m) so escolhidos a partir
do polinmio interpolador de grau m que passa
pelos pontos
i
x ;
a regra exata para polinmios de at grau m.
Mtodos de Extrapolao so mtodos que aceleram as frmulas de
Newton-Cotes pela escolha de passos de
integrao convenientes.
Frmulas de Gauss
os pontos
i
x e os pesos
i
w (i = 0,1, ..., m) so
escolhidos de modo que a regra seja exata para
polinmios de at grau p = 2m+1;
os pontos
i
x no so igualmente espaados.
6.2 Mtodos de Newton-Cotes
A idia bsica dos mtodos de Newton-Cotes aproximar a funo f(x) a um polinmio de
grau m que passa por pontos
i
x (i = 0,1, ..., m) tais que a = x
0
< x
1
< ... < x
m
= b.
Dependendo do grau do polinmio, tem-se diversas regras de quadratura de Newton-
Cotes.
O caso mais simples, quando o polinmio tem grau 0, conhecido como regra dos
retngulos.
REGRA DOS RETNGULOS
Nesta regra, para calcular I f x dx
a
b
( ) ,
y
x
a b
I
y = f(x)
tem-se o seguinte procedimento:
Clculo Numrico 6 Integrao Numrica
138
particionar o intervalo [a, b] em n subintervalos iguais tais que a x
0
, b x
n
e
h x x
1 i i


(constante);
aproximar f(x), em cada subintervalo [x
i
, x
i+1
], a um polinmio de grau 0, ou seja, uma
constante, que pode ser:
a) ( ) f x
i
(valor de f(x) no incio do subintervalo),
b) ( ) f x
i +1
(valor de f(x) no fim do subintervalo, ou
c) f
x x
i i +
+

_
,

1
2
(valor de f(x) no meio do subintervalo)
As figuras a seguir ilustram este procedimento para os casos (a) e (b).
(a)
y
x
a = x0 x3 = b
y = f(x)
x1 x2
(b)
y
x
a = x0 x3 = b
y = f(x)
x1 x2
Qualquer que seja o caso, o valor de I aproximado soma das reas dos retngulos de
cada subintervalo, ou seja:
(a) I R = ( ) ( ) ( ) x x f x hf x
i i i i
i
n
i
n
+


1
0
1
0
1
(b) I R = ( ) ( ) ( ) x x f x hf x
i i i i
i
n
i
n
+ + +


1 1 1
0
1
0
1
(c) I R = ( ) ( ) ( ) x x f
x x
hf
x x
i i
i i i i
i
n
i
n
+
+ +

+

1
1 1
0
1
0
1
2 2
Evidentemente, a escolha do passo h importante na preciso do resultado, como ilustram
as figuras a seguir:
y
x
a b
y = f(x)
y
x
a b
y = f(x)
Clculo Numrico 6 Integrao Numrica
139
Ou seja, existe um compromisso entre esforo e preciso: quanto menor o passo h, maior
ser o esforo computacional, mas melhor ser a aproximao.
REGRA DOS TRAPZIOS
A regra dos trapzios uma extenso natural da regra dos retngulos, onde em cada
subintervalo considera-se um polinmio interpolador de grau 1, ou seja, uma reta. Portanto,
na regra dos trapzios tem-se:
y
x
a b
y = f(x)
T1
T2 T3 T4
I f x dx T
i
i
n
a
b

( )
1
Considerando um intervalo [x
i
, x
i+1
] qualquer tem-se:
T
x x
f x f x
h
f x f x
i
i i
i i i i


+ +
+
+ +
1
1 1
2 2
[ ( ) ( )] [ ( ) ( )]
Portanto:
T
h
f x f x
h
f x f x
h
f x f x
i
i
n
n n


+ + + + + +
1
0 1 1 2 1
2 2 2
[ ( ) ( )] [ ( ) ( )] ... [ ( ) ( )]
ou seja:
I
h
f x f x f x f x f x
n n
+ + + + +

2
2 2 2
0 1 2 1
[ ( ) ( ) ( ) ... ( ) ( )]
O erro de truncamento da regra dos trapzios dado por:
| | | "( ) | ( , ) E
b a
h f com a b

12
2

Para estimar o valor do erro deve-se encontrar um valor M tal que | f"(x) | M, x [a, b]. Se
isto for possvel, pode-se escrever:
| | E
b a
h M

12
2
Exemplo: Calcular I e dx
x

1
2
, pela regra dos trapzios, tal que o erro de truncamento seja
menor que
3
10

.
Clculo Numrico 6 Integrao Numrica
140
Neste caso, para determinar qual deve ser o passo de integrao h, tem-se:
x
e ) x ( f
x
e ) x ( ' ' f . Logo, para x [1, 2], M = e
2
= 7.39
Como:
| |
.|
( ).
E
b a
h M h
E|
b a M



12
12
2
Portanto:
h

12 10
2 1 7 39
0 04
3
.( )
( ). .
.
Assim, pela regra dos trapzios os seguintes pontos devem ser considerados:
x f(x) x f(x) x f(x) x f(x)
1.00 2.7183 1.28 3.5966 1.56 4.7588 1.84 6.2965
1.04 2.8292 1.32 3.7434 1.60 4.9530 1.88 6.5535
1.08 2.9447 1.36 3.8962 1.64 5.1552 1.92 6.8210
1.12 3.0649 1.40 4.0552 1.68 5.3656 1.96 7.0993
1.16 3.1899 1.44 4.2207 1.72 5.5845 2.00 7.3891
1.20 3.3201 1.48 4.3929 1.76 5.8124
1.24 3.4556 1.52 4.5722 1.80 6.0496
Com estes pontos obtm-se os seguintes valores:
Valor Correto Regra dos Trapzios Erro
4.6708 4.6714 0.0006
REGRA DE SIMPSON
Na regra de integrao numrica de Simpson, aproxima-se a funo f(x), a cada 3 pontos,
a um polinmio de grau 2, ou seja:
y
x
xi xi+1 xi+2
y = f(x)
Polinmio Interpolador P2(x)
Pelo polinmio de interpolao de Lagrange, tem-se:
p x
x x x x
x x x x
f x
x x x x
x x x x
f x
x x x x
x x x x
f x
i i
i i i i
i
i i
i i i i
i
i i
i i i i
i 2
1 2
1 2
2
1 1 2
1
1
2 2 1
2
( )
( )( )
( )( )
( )
( )( )
( )( )
( )
( )( )
( )(
( )
)



+


+


+ +
+ +
+
+ + +
+
+
+ + +
+
Clculo Numrico 6 Integrao Numrica
141
e ento:
f x dx p x dx
x
x
x
x
i
i
i
i
( ) ( )
+ +

2
2 2
Portanto, como x
i+1
- x
i
= h, tem-se:
f x dx
f x
h h
x x x x dx
f x
h h
x x x x dx
f x
h h
x x x x dx
i
i i
x
x
h
x
x
i
i i
x
x
h
i
i i
x
x
h
i
i
i
i
i
i
i
i
( )
( )
( )( )
( )( )
( )
( )( )
( )( )
( )
( )( )
( )( )

+

+
+ +
+
+

+
+
+ + + +

2 2
1 2
2
3
1
2
4
3
2
1
2
3
2
3
2 2
3
2
3
1 2 44444 3 44444 1 2 4444 3 4444 1 2 4444 3 4444
ou seja:
f x dx
h
f x f x f x
x
x
i i i
i
i
( ) [ ( ) ( ) ( )] + +
+

+ +
2
3
4
1 2
No caso de se ter o intervalo [a, b] dividido em n subintervalos (notar que n deve ser par,
porque consideram-se 2 subintervalos de cada vez), tem-se:
f x dx
h
f x f x f x
h
f x f x f x
i
n
a
b
i i i i i i
i
n
( ) ( [ ( ) ( ) ( )]) [ ( ) ( ) ( )]
,2 ,2
+ + + +

+ + + +


0
1 2 1 2
0
3
4
3
4
+ + + + + + + + +

h
f x f x f x
h
f x f x f x
h
f x f x f x
n n n
3
4
3
4
3
4
0 1 2 2 3 4 2 1
[ ( ) ( ) ( )] [ ( ) ( ) ( )] [ ( ) ( ) ( )] L
+ + + + + +

h
f x f x f x f x f x f x
n n n
3
4 2 2 4
0 1 3 2 1
[ ( ) ( ) ( ) ( ) ( ) ( )] L
Para a regra de Simpson, o erro de truncamento dado por:
| | | ( ) | ( , ) E
b a
h f a b
iv

180
4

Exemplo: Resolver o problema anterior, usando o mtodo de Simpson.
Neste caso, para determinar qual deve ser o passo de integrao h, tem-se:
| |
.|
( ).
E
b a
h M h
E|
b a M



180
180
4
4
Portanto:
h

180 10
2 1 7 39
0 4
3
4
.( )
( ). .
.
Neste caso, o nmero de subintervalos tal que:
n
b a
h

2 1
0 4
2 5
.
.
Ento, como n deve ser par na regra de Simpson, seja n = 4. Portanto:
Clculo Numrico 6 Integrao Numrica
142
h
b a
n

2 1
4
0 25 .
Assim, pela regra de Simpson, suficiente considerar somente os seguintes pontos
(comparar com os pontos necessrios para a regra dos trapzios):
x f(x)
1.00 2.7183
1.25 3.4903
1.50 4.4817
1.75 5.7546
2.00 7.3891
Com estes valores tem-se (comparar com os resultados obtidos pela regra dos trapzios):
Valor Correto Regra de Simpson Erro
4.6708 4.6709 0.0001
FRMULA GERAL DAS QUADRATURAS NEWTONIANAS
Pode-se generalizar os procedimentos anteriores e aproximar f(x) a um polinmio de grau
m. Para isto, cada subintervalo de [a, b] deve conter (m+1) pontos. Considere, sem perda
de generalidade, apenas um subintervalo. Neste caso,
f x dx p x dx
x
x
m
x
x
m m
( ) ( )
0 0

Do polinmio de interpolao de Gregory-Newton (ver Captulo 4), tem-se:
p x y x x
y
h
x x x x
y
h
x x x x x x
y
m h
m m
m
m
( ) ( ) ( )( ) ( )( ) ( )
!
+ + + +
0 0
0
0 1
2
0
2
0 1 1
0
2

L L
onde y
i
= f(x
i
). Seja z
x x
h


0
, com h = x
i+1
- x
i
(i = 0,1, ..., m-1). Portanto, pode-se
escrever:
(x - x
0
) = hz
(x - x
1
) = (x - (x
0
+ h)) = (x - x
0
) - h = hz - h = h(z - 1)
(x - x
2
) = (x - (x
0
+ 2h)) = (x - x
0
) - 2h = hz - 2h = h(z - 2)
...
(x - x
m-1
) = (x - (x
0
+ (m-1)h)) = (x - x
0
) - (m-1)h = h(z - (m-1))
Logo:
p x y hz
y
h
h z z
y
h
h z z z m
y
m h
m
m
m
m
( ) ( ) ( ) ( ( ))
!
+ + + +
0
0 2
2
0
2
0
1
2
1 1

L L
ou seja:
p x y
z
y
z z
y
z z z m
m
y a y
m
m
k
k
k
m
( )
!
( )
!
( ) ( ( ))
!
+ +

+ +

0 0
2
0 0 0
0
1
1
2
1 1
L
L
Clculo Numrico 6 Integrao Numrica
143
onde:
a
z z z k
k
k

( ) ( ( ))
!
1 1 L
Como z
x x
h


0
, ento x = x
0
+ hz e portanto, dx = hdz. Alm disto, nos limites de
integrao tem-se:
para x = x
0
tem-se z
x x
h

0 0
0
para x = x
m
tem-se z
x x
h
x mh x
h
m
m

0 0 0
Portanto:
f x dx p x dx a y hdz h a y dz
m
x
x
x
x
k
k
m
m
k
k
m
k
m
k
m m
( ) ( ) ( )

0 0
0
0
0
0
0
0

onde o erro de truncamento R
m+1
dado por:
R h a f hdz h f a dz com x x
m
m
m
m m m
m
m m
m +
+
+
+ + +
+

1
1
1
1 2 1
1
0 0
0
( ) ( )
( )( ) ( ) ( , )
Exemplo.
Seja m = 1. Neste caso, para o subintervalo [
1 0
x , x ] tem-se:
f x dx h a y dz h a y dz a y dz h y dz y y zdz
k
k
x
x
k
( ) [ ] [ ( ) ] + +

0
1
0
1
0 0
0
1
0
0 1
0
1
1
0 0
0
1
1 0
0
1
0
1
1
Mas:
1 1
0
1
dz
zdz
z
0
1 2
0
1
2
1
2
0
2
1
2

1
]
1
1

Logo:
f x dx h y y y
h
y y
h
f x f x
x
x
( ) [ ( )] [ ] [ ( ) ( )] + + +
0
1
0 1 0 0 1 0 1
1
2 2 2
(regra dos trapzios)
O erro de truncamento neste subintervalo dado por:
E R h a f dz h f
z z
dz
0 1 2
3
2
0
1
3
0
1
1
2
,
"( ) "( )
( )



Mas:
Clculo Numrico 6 Integrao Numrica
144
z z
dz z z dz
z z ( )
( )

1
]
1
1

1
2
1
2
1
2 3 2
1
12
0
1
2
0
1 3
0
1
2
0
1
ou seja:
E
h
f com x x
0 1
3
0 1
12
,
"( ) ( , )
Para todo o intervalo [a, b] tem-se:
f x dx
h
f x f x
h
f x f x
h
f x f x
h
f x f x
i
n
a
b
i i n n
( ) [ ( ) ( )] [ ( ) ( )] [ ( ) ( )] ... [ ( ) ( )] + + + + + + +



2 2 2 2
1
1 0 1 1 2 1
ou seja:
f x dx
h
f x f x f x f x f x
a
b
n n
( ) [ ( ) ( ) ( ) ( ) ( )] + + + + +

2
2 2 2
0 1 2 1
K
e o erro de truncamento total ser dado por:
E E
h
f n
h
f
b a
h
h
f
b a
h f
i i
i
n
i
n



1
1
3
1
3 3
2
12 12 12 12
,
"( ) "( ) "( ) "( )
Exemplo: Determinar o mtodo de Simpson, fazendo m = 2 na frmula geral das
quadraturas newtonianas.
Neste caso, tem-se:
f x dx h a y dz
k
k
k
x
x
( )

0
0
2
0
2
0
2
onde:



0
0 0
1
0
0
1
0
0 1 0
2
0
1
1
1
0 2 1 1 0 2 1 0
2
y y
y y y y y
y y y y y y y y y y


+ ( ) ( )
Logo:
{ {
f x dx h y dz y y zdz y y y
z z
dz
x
x
( ) ( ) ( )
( )
+ + +

1
]
1
1
1
1
1
1

0
0
2
2
1 0
0
2
2
2 1 0
0
2
1
3
1 2
1
2
0
2
1 2 4 3 4
+ + +

1
]
1
h y y y y y y 2 2 2
1
3
2
3
1
3
0 1 0 2 1 0
Clculo Numrico 6 Integrao Numrica
145
[ ]
+ +

1
]
1
+ + h
y y y h
y y y
0 1 2
0 1 2
4
3 3
4 (Regra de Simpson)
Erro de Truncamento:
E R h f a dz h f
z z z
dz
T



3
4
3
0
2
4
0
2
1 2
3
' ' ' ' ' '
( ) ( )
( )( )
!

+ +

1
]
1
h f
z z z dz
h f z
x z
4
3 2
0
2 4 4
3 2
0
2
6
3 2
6 4
0
' ' ' ' ' '
( )
( )
( )
Portanto, o erro de truncamento para a regra de Simpson no depende de
3
R , ou seja,
exata para polinmios de at grau 3 (ver definio de preciso de uma regra de
quadratura).
O erro na regra de Simpson, no intervalo [
2 0
x , x ], dado por:
E R h f a dz
T
iv

4
5
4
0
2
( )
( )
Observar que o limite superior de integrao 2 (e no 3) porque se est considerando o
intervalo [
2 0
x , x ]. Portanto:
E h f
z z z z
dz
h f
z z z z dz
T
iv
iv


+
5
0
2 5
4 3 2
0
2
1 2 3
4 24
6 11 6
( )
( )
( )
( )( )( )
!
( )
( )

Mas: ( ) z z z z dz
z z z z
4 3 2
0
2 5 4 3 2
0
2
6 11 6
5
6
4
11
3
6
2
8
30
+ +

1
]
1

Logo:
E
h f h
f
T
iv
iv



5 5
24
8
30 90
( )
( )
( )
( )

Para todo o intervalo [a, b] tem-se:


f x dx f x dx f x dx f x dx
x
x
a
b
x
x
x
x
m
m
( ) ( ) ( ) ( ) + + +
0
2
2
4
2
L
onde m
b a
h


2
.
Logo:
Clculo Numrico 6 Integrao Numrica
146
f x dx
h
y y y
h
y y y
h
y y y
a
b
m m m
( ) [ ] [ ] [ ] + + + + + + + + +

3
4
3
4
3
4
0 1 2 2 3 4 2 1
L
+ + + + + + + +

h
y y y y y y y y
m m m
3
4 2 4 2 2 4
0 1 2 3 4 2 1
[ ] L
com erro de truncamento:
E mR
b a
h
h
f
b a
h f a b
T
iv iv

_
,



4
5
4
2 90 180
( ) ( )
( )
( )
( ) ( )
Para valores maiores de m tem-se outras regras de quadratura. Por exemplo, para m = 3,
tem-se a regra 3/8 de Simpson, dada por:
] y y 3 y 3 y 2 y 2 y 3 y 3 y 2 y 3 y 3 y [
8
h 3
dx ) x ( f
n 1 n 2 n 3 n 6 5 4 3 2 1 0
b
a
+ + + + + + + + + + +

L
com
h 3
) a b (
n

, e erro de truncamento dado por:
E
b a
h f a b
T
iv



( )
( ) ( )
( )
80
4

6.3 Mtodos de Extrapolao
Os mtodos de extrapolao (ou mtodos de Richardson) baseiam-se em determinar o
valor de I f x dx
a
b
( ) atravs de aproximaes T(h) tais que lim )
h
T(h I

0
. O mtodo de
Romberg aplica tal idia regra dos trapzios, utilizando o Teorema de Euler-MacLaurin
para expressar o erro de truncamento.
Teorema (Euler-MacLaurin). Se T(h) aproximao de I f x dx
a
b
( ) com h
b a
m


, ento o
erro de truncamento pode ser expresso como:
I T(h b h b h b h
m
m
+ + + + ) ... ...
1
2
2
4 2
onde:
[ ]
b
j
f a f b
j
j
j j

2
2 1 2 1
2 ( )!
( ) ( )
( ) ( )
(j = 1,2, ..., m)
e os
2j
(denominados nmeros de Bernoulli) so tais que:
0
1
1 0

_
,


e
n
k
k
n
n k
,
com n = 2,3, ...
Clculo Numrico 6 Integrao Numrica
147
Exemplo. Os primeiros nmeros de Bernoulli so tais que:
n
k
k
k

_
,

_
,

_
,


2
2
0
2
1
2
2
0 2 0
1
2
1
2
2 2 1 2 2 1 0 1

n
k
k
k

_
,

_
,

_
,

_
,

+ +


3
3
0
3
1
3
2
3
3
0 3 3 0
1
6
1
3
3 3 1 3 2 3 3 2 1 0 2

Pode-se observar que na expresso de Euler-MacLaurin, os b
j
(j = 1,2, ..., m) no
dependem de h. Seja ento T
j 0,
uma aproximao para I, obtida pela regra dos trapzios
com h
b a
j
j


2
. Pelo teorema acima tem-se:
I T b h b h b h
j
j j j
+ + +
0 1
2
2
4
3
6
,
... (j = 0,1,2, ...)
Por outro lado, para h
h
j
j
+

1
2
, tem-se:
I T b
h
b
h
b
h
j
j j j

_
,

_
,

_
,

+
+ 0 1 1
2
2
4
3
6
2 2 2
,
... (j = 0,1,2, ...)
onde os b
j
(j = 0,1,2, ...) so os mesmos, pois independem de do valor de h. Portanto,
pode-se escrever:
I T b h b h b h
j
j j j
+ + +
+ 0 1 1
2
2
4
3
6
1
4
1
16
1
64
,
... (j = 0,1,2, ...)
ou seja:
4
1
4
1
16
0 1 1
2
2
4
3
6
( ) ...
,
I T b h b h b h
j
j j j
+ + +
+
(j = 0,1,2, ...)
Subtraindo esta ltima expresso de (I - T
j 0,
) tem-se:
4
1
4
1
16
0 1 0 1
2
2
4
3
6
( ) ( ) ( ...)
, ,
I T I T b h b h b h
j j
j j j
+ + +
+
- ( ...) b h b h b h
j j j
1
2
2
4
3
6
+ + +
(j = 0,1,2, ...). Portanto:
3 4
3
4
15
16
0, 1 0,
2 4 3 6
I T T
b
h
b
h
j j j j
+
+
( ) L
Dividindo por 3:
I
T T
b
h
b
h
j j
c
j
c
j


+

+
+
( ) 4
3
3
12
15
48
0, 1 0,
2 4 3 6
2 3
123 123
L
ou seja:
I
T T
c h c h
j j
T
j j
j


+ +
+
4
3
0, 1 0,
2
4
3
6
1,
1 2 44 3 44
L
Clculo Numrico 6 Integrao Numrica
148
onde: c
b
c
b
2
2
3
3
3
12
15
48


, , L (notar que como b
i
no depende de h, c
i
tambm
no depende de h). Portanto:
T
j 0,
e T
j 0 1 , +
so aproximaes de I com erro da ordem de h
j
2
T
j 1,
, calculado como uma combinao linear de T
j 0,
e T
j 0 1 , +
, uma aproximao de I
com erro da ordem de h
j
4
, ou seja, T
j 1,
uma aproximao melhor que qualquer uma
das aproximaes anteriores T
j 0,
ou T
j 0 1 , +
.
Em outras palavras, este esquema mostra como, a partir de duas aproximaes de ordem
h
j
2
possvel determinar uma aproximao de ordem h
j
4
. Continuando este processo,
pode-se eliminar o termo em h
j
4
e construir uma aproximao de ordem h
j
6
.
Por exemplo:
I T c h c h
j j j
+ +
1 2
4
3
6
,
L
I T c
h
c
h
c h c h
j
j j
j j

_
,

_
,

+ + +
+ 1 1 2
4
3
6
2
4
3
6
2 2
1
16
1
64
,
L L (j = 0,1,2, ...)
ou seja: 16
1
4
1 1 2
4
3
6
( )
,
I T c h c h
j j j
+ +
+
L Subtraindo as duas expresses, tem-se:
16
1
4
1 1 1 2
4
3
6
2
4
3
6
( ) ( ) ( ...) ( ...)
, ,
I T I T c h c h c h c h
j j
j j j j
+ + + +
+
Portanto: I
T T
d h
j j
T
j
j


+
+
16
15
1 1 1
3
6
2
, ,
,
...
1 2 44 3 44
com d
c
3
3
3
4


, L
Em outras palavras, T
T T
j
j j
2
1 1 1
16
15
,
, ,


+
uma aproximao de I com erro da ordem de
h
j
6
.
Continuando desta maneira, pode-se eliminar termos h
j
k
(k = 6,8, ...) e obter aproximaes
cada vez melhores, que so calculadas sempre como combinaes lineares de
aproximaes anteriores.
Assim, o esquema da quadratura de Romberg pode ser escrito como:
Dados T
j 0,
(j = 0,1, ..., m), aproximaes pela regra dos trapzios calculadas com passos
h
b a
j


2
, determinar novas aproximaes por:
Clculo Numrico 6 Integrao Numrica
149
T T T
i j
i
i
i j i j , , ,
( )


+
1
4 1
4
1 1 1
segundo o esquema:
T T T
T T
T
0,0 1 2
0,1 11
0,2
,0 ,0
,
M
M
M
Exemplo: Calcular I e dx
x

0
1
pelo mtodo de Romberg, at que o erro seja menor do que
10
7
.
No mtodo de Romberg o limitante do erro dado por | E | | T T
i j i j +

1, ,
|. Portanto, para
o caso acima tem-se:
i
0 1 2 3
j h T
i, j
0 1.000 1.7272219 1.7182841 1.7182818 1.7182818
1 0.500 1.7205186 1.7182819 1.7182818
2 0.250 1.7188411 1.7182818
3 0.125 1.7184216
6.4 Quadratura de Gauss
Sejam I f x dx

( )
1
1
e ) f(x w ) f(x w G
2 2 1 1
+ . Considere a seguinte questo: "Quais
devem ser os pesos w
i
e os pontos x
i
de avaliao da funo f(x) de forma que G seja uma
aproximao com preciso de grau 3 para I (ou seja, de forma que G seja exata para
3 2
x e x x, 1, f(x) )?". Para responder esta questo, seja o seguinte sistema de equaes
(no lineares):
f x w w dx ( ) +

1 1 2
1 2
1
1
f x x w x w x xdx ( ) +

1 1 2 2
1
1
0
f x x w x w x x dx ( ) +

2
1 1
2
2 2
2 2
1
1
2
3
f x x w x w x x dx ( ) +

3
1 1
3
2 2
3 3
1
1
0
Clculo Numrico 6 Integrao Numrica
150
Resolvendo este sistema, tem-se: w w
1 2
1 e x x
1 2
1
3
. Portanto, a regra de
quadratura:
G f f
2
1
3
1
3
+ ( ) ( )
uma aproximao com preciso de grau 3 para I (quadratura de Gauss de 2 pontos).
Para uma regra de 3 pontos, tem-se:
) f(x w ) f(x w ) f(x w G
3 3 2 2 1 1 3
+ +
onde
3 2 1
w , w , w e
3 2 1
x , x , x so determinados de modo a se ter
3
G exata para
5 4 3 2
x , x , x , x x, 1, f(x) (ou seja, de modo a se ter uma regra com preciso de grau 5).
Neste caso, resolvendo-se o sistema de equaes, tem-se:
w x
w x
w x
1 1
2 2
3 3
5
9
3
5
8
9
0
5
9
3
5



Portanto:
G f f f
3
5
9
3
5
8
9
0
5
9
3
5
+ + ( ) ( ) ( )
uma regra de quadratura com preciso de grau 5 (quadratura de Gauss de 3 pontos).
Estas regras de quadratura so conhecidas como regras de Gauss-Legendre e procedendo
desta forma pode-se determinar regras
4
G (com preciso de grau 7),
5
G (com preciso
de grau 9), e assim sucessivamente.
Como foi visto no Captulo 4, os polinmios de Legendre podem ser definidos
recursivamente, como:
L x
L x x
L x
n
n
xL x
n
n
L x n
n n n
0
1
1 2
1
2 1 1
2 3
( )
( )
( ) ( ) ( ) , ,...


Exemplo. Polinmios de Legendre (x) L
2
e (x) L
3
:
n L x xL x L x x x x


2
2 2 1
2
2 1
2
3
2
1
2
1
1
2
3 1
2 1 0
2
( )
.
( ) ( ) . . ( )
Clculo Numrico 6 Integrao Numrica
151
n L x xL x L x x x x x x


3
2 3 1
3
3 1
3
5
3
1
2
3 1
2
3
1
2
3
3 2 1
2 3
( )
.
( ) ( ) [ ( )] . (5 )
Pode-se notar que:
L x Razes x x
2 1 2
0
1
3
1
3
( ) : ;
L x Razes x x x
3 1 2 3
0
3
5
0
3
5
( ) : ; ;
Teorema. Os pontos x
i
de avaliao de funo para a regra de Gauss G
n
so os zeros do
polinmio de Legendre de grau n. Alm disto, os pesos w
i
so dados por:
w
L x x
i
n i
i

1 2
1
2 2
| ( ) |
.
'
(i = 1,2, ..., n)
Exemplo: Determinar pelo teorema acima a regra de Gauss de 2 pontos.
n L x x L x x
x x
w
w


2
1
2
3 1 3
1
3
1
3
1
3
1
3
2
1
1
3
1
3
2
1
1
3
1
3
2
2
3
1
3
3 1
1
3
1
3
2
1
1
3
1
3
2
1
1
3
1
3
2
2
3
1
3
3 1
2
2
2
1 2
1
2 2
2
2 2
( ) ( ) ( )
;
| . |
.
( )
. . .
| . |
.
( )
. . .
'
Exerccio. Determinar a regra de Gauss de 3 pontos.
O erro de truncamento da quadratura de Gauss G
n
dado por:
E
n
n n
f
n
n
n

+

+
2
2 1 2
1 1
2 1 4
3
2
( )
( )
( !)
( )( !)
( ) ( , )
Exemplo: Calcular I e dx
x

1
1
pela regra de Gauss de 4 pontos, dada por:
f(0.86113) 0.34785 f(0.33998) 0.65214 ) f(-0.33998 0.65214 ) f(-0.86113 0.34785 G
4
+ + +
Clculo Numrico 6 Integrao Numrica
152
Neste caso, tem-se:
3504021 . 2
0.86113 0.33998 -0.33998 -0.86113
4
e 0.34785 e 0.65214 e 0.65214 e 0.34785 G + + +
Por outro lado, analiticamente, tem-se:
[ ]
I e dx e e e
x x

1
1
1
1
1 1
2 3504023 .
Pela expresso do erro de truncamento tem-se:
E f
4
9 4
3
8
2 4
9
1 1
( !)
(8!)
( ) ( , )
( )

Portanto, como f x e
x ( )
( )
8
, f e
( )
( )
8 1
. Com isto pode-se escrever:
E e
4
9 4
3
1
8
14
2 4
9
1698 10
5899 10
2 718 0 0000007


( !)
(8!)
.
.
. .
o que coerente com os resultados acima.
Os pontos x
i
e os pesos w
i
(i = 1, 2, ..., n) para as regras de quadratura gaussiana so
conhecidos e tabelados para vrios valores de n. A tabela a seguir ilustra alguns destes
valores.
n x
i
w
i
2 t0.577350269189626 1.000000000000000
3 0.000000000000000
t0.774596669241483
0.888888888888889
0.555555555555556
4 t0.339981043584856
t0.861136311594053
0.652145154362546
0.347854854137454
5 0.000000000000000
t0.538469310105683
t0.906179745938664
0.568888888888889
0.478628670499365
0.236926885056189
6 t0.238619186083197
t0.661209386466265
t0.932469514203152
0.467913934572691
0.360761573048139
0.171324492379170
7 0.000000000000000
t0.405845151377397
t0.741531185599394
t0.949107912342759
0.417959183673469
0.381830050505119
0.279705391489277
0.129484966168870
8 t0.183434642495650
t0.525532409916329
t0.796666477413627
t0.960289856497536
0.362683783378362
0.313706645877887
0.222381034453374
0.101228536290376
Caso o intervalo de integrao no seja o intervalo [-1, 1], ser preciso fazer uma mudana
de varivel. Para um intervalo [a, b] a mudana necessria pode ser escrita como:
Clculo Numrico 6 Integrao Numrica
153
x
b a
t
b a


+
+
2 2
e consequentemente:
dx
b a
dt

2
Exemplo: Calcular I e dx
x

1
2
usando a regra de quadratura gaussiana de 4 pontos.
Neste caso, a mudana de varivel necessria ser:
x t t

+

+
2 1
2
2 1
2
1
2
3 ( )
dx dt dt

2 1
2
1
2
Portanto I e dx e dt e dt
x
t t
G

+

+
1
2
1
2
3
1
1
1
2
3
1
1
1
2
1
2
( ) ( )
1 2 4 3 4
O valor de G pode ser calculado como:
G e e e e + + +
+ + + +
0 34785 065214 065214 034785
1
2
086113 3
1
2
0 33998 3
1
2
0 33998 3
1
2
0 86113 3
. . . .
( . ) ( . ) ( . ) ( . )
ou seja:
9.341448 2.397870 3.464242 2.465794 1.013542
e 0.34785 e 0.65214 e 0.65214 e 0.34785 G
1.930565 1.66999 1.33001 1.069435
+ + +
+ + +
Assim, I G
1
2
1
2
9 341448 . 4.670724
Para comparar, analiticamente, sabe-se que: I e dx e e
x

1
2
2 1
4 670774 .
Observao:
Existem outras regras de quadratura gaussiana, considerando os pontos x
i
(i = 1, 2, ..., n)
como zeros de polinmios de Tchebyshev (quadratura de Gauss-Tchebyshev), de
polinmios de Laguerre (quadratura de Gauss-Laguerre) ou de polinmios de Hermite
(quadratura de Gauss-Hermite).
6.5 Quadraturas Adaptativas
Seja f(x) uma funo tal que no intervalo [
1 0
x , x ] varia lentamente e no intervalo [
2 1
x , x ]
varia rapidamente. Nos trechos em que esta funo varia lentamente o espaamento h
Clculo Numrico 6 Integrao Numrica
154
pode ser grande (sem comprometer a preciso), mas nos trechos em que a funo varia
muito, um espaamento h grande pode levar a grandes erros.
A idia da Quadratura Adaptativa adaptar-se ao comportamento de f(x) no intervalo [a, b],
usando um passo h pequeno em trechos onde o erro grande e um passo h grande (e
portanto um esforo computacional menor) onde o erro pequeno.
Considere que deseja-se calcular uma aproximao S, pela regra de Simpson, para
I f x dx
a
b
( ) , de forma que:
a) I S <
b) o nmero de avaliaes de f(x) o menor possvel (notar que o nmero de avaliaes
de f(x) depende de h).
Sejam h x x
j j j

+1
e I f x dx
j
x
x
j
j

+
( )
1
. Seja o valor de
j
I calculado pela regra de
Simpson com passo h denominado como S
j
h
.
Assim, pela regra de Simpson com passo
h
j
2
tem-se:
[ ]
S
h
f f f
j
h
j
j j j
j
2
1 2 1
6
4 + +
+ + /
com erro de truncamento dado por:
I S
h
f x x
j j
h
j
iv
j j
j

_
,


+
2
5
1
1
90 2
( )
( ) [ , ]
Considere agora a aproximao obtida pela regra de Simpson com passo
h
j
4
:
[ ]
S
h
f f f f f
j
h
j
j j j j j
j
4
1 4 1 2 3 4 1
12
4 2 4 + + + +
+ + + + / / /
com erro de truncamento dado por:
I S
h
f
h
f
j j
h
j
iv
x x
j
iv
x x
j
j j j j

_
,

_
,


+ + +
4
5
1
5
2
1
90 4
1
90 4
1 1 2 2 1 2 1
( )
[ , ]
( )
[ , ]
( ) ( )
/ /


1 2 444 3 444 1 2 444 3 444
Seja f x M x x x
iv
j j
( )
( ) ( [ , ])
+1
. Ento:
Clculo Numrico 6 Integrao Numrica
155
I S I S
h
M
h
M
h
M
j j
h
j j
h
j j j
j j

_
,

_
,

_
,

1
]
1
1

_
,

_
,

1
]
1
1
2 4
5 5 5
1
90 2
1
90 4
1
90 4
ou seja:
S S
h
M
h
M
h
M
j
h
j
h
j j j
j j
4 2
5 5 5
32
90 4
2
90 4
30
90 4

_
,

1
]
1
1

_
,

1
]
1
1

_
,

ou ento:

_
,

1
]
1
1
1
M
h
S S
j
j
h
j
h
j j
90 4
1
30
5
4 2
Portanto:
I S
M
h
S S
j j
h
j
j
h
j
h
j j j


_
,

_
,

4
5
4 2
2
90 4
1
15
Para todo o intervalo [a, b] sejam os pontos: a x x x x b
n n

1 2 1
, , , , L e seja:
I S
h
b a
j n
j j
h
j
j


4
1 2 1

( )
( , , , ) L
onde corresponde preciso desejada.
Neste caso, o erro de truncamento total ser limitado por:
E I S I S
h
b a b a
h
T j j
h
j
n
j j
h
j
n
j
j
n
j
j
n
b a
j j

_
,


4
1
1
4
1
1
1
1
1
1

( ) ( )
( )
123
ou seja, se para cada intervalo h
j
, a aproximao obtida pela regra de Simpson com passo
h
j
4
tal que: I S
h
b a
j j
h
j
j

4

( )
, ento tem-se para o erro de truncamento total:
E
T
. Em outras palavras, para garantir que o erro de truncamento total esteja limitado
preciso desejada, necessrio que:
1
15
4 2
S S
h
b a
j
h
j
h
j
j j

_
,

( )
para todo subintervalo h
j
( j = 1, 2, ..., n-1).
Clculo Numrico 6 Integrao Numrica
156
Caso esta condio no seja satisfeita para algum subintervalo, divide-se este subintervalo
ao meio e assim sucessivamente.
Exemplo: Calcular I
x
dx
1
1
9
com preciso = 0.001
Pelo grfico a seguir:
1 2 3 4
x
2
4
6
8
y
pode-se notar que no trecho assinalado a funo varia mais rapidamente, o que vai exigir
um passo pequeno. Nos demais trechos, a funo variando mais lentamente, poder
admitir um passo maior.
No caso acima tem-se, inicialmente, ) a - (b h
1 1 1
= 9 - 1 = 8 e deve-se calcular:
S
h
f a f a
h
f b
h
1
2
1
1 1
1
1
1
2
1
3
4
2
8
6
1
1
4
1
5
1
9
254815 + + +

1
]
1
+ +

1
]
1
( ) ( ) ( ) .
S
h
f a f a
h
f a
h
f a
h
f b
h
1
4
1
1 1
1
1
1
1
1
1
1
4
1
3
4
4
2
2
4
3
4
+ + + + + + +

1
]
1
( ) ( ) ( ) ( ) ( )
+ + + +

1
]
1

8
12
1
1
4
1
3
2
1
5
4
1
7
1
9
2 27725 .
Para verificar se esta aproximao satisfaz a preciso tem-se:
1
15
1
15
2 27725 254815 0 01806
1
4
1
2
1 1
S S
h h
. . .
h
b a
1
1 1
0 001

( )
.


e portanto, como
1
15
1
4
1
2
1
1 1
1 1
S S
h
b a
h h
>

( )
, a aproximao S
1
no satisfatria e o
intervalo [1, 9] deve ser dividido nos subintervalos [1, 5] e [5, 9].
Clculo Numrico 6 Integrao Numrica
157
Seja o subintervalo [5, 9], com
2 2 2
a - b h = 9 - 5 = 4. Para este subintervalo tem-se:
S
h
2
2
2
4
6
1
5
4
1
7
1
9
058836 + +

1
]
1
.
S
h
2
4
2
4
12
1
5
4
1
6
2
1
7
4
1
8
1
9
058783 + + + +

1
]
1
.
1
15
1
15
058783 058836 0 0000353
4 0 001
9 5
0001
2
4
2
2
2
2 2
2 2
S S
h
b a
h h
<

. . .
.
.

Portanto:
I
x
dx
1
058783
5
9
.
Seja agora o subintervalo [1, 5]. Tem-se ento:
2 2 2
a - b h = 5 - 1 = 4 e:
S
h
2
2
2
4
6
1
1
4
1
3
1
5
168889 + +

1
]
1
.
S
h
2
4
2
4
12
1
1
4
1
2
2
1
3
4
1
4
1
5
162222 + + + +

1
]
1
.
1
15
1
15
162222 168889 0004 0 001
2
4
2
2
2
2 2
2 2
S S
h
b a
h h
>

. . . .

Portanto, o intervalo [1, 5] precisa ser dividido nos subintervalos [1, 3] e [3, 5] para atingir a
preciso desejada.
Intervalo [1, 3]:
3 3 3
a - b h = 3 - 1 = 2
S
h
3
2
3
2
6
1
1
4
1
2
1
3
111111 + +

1
]
1
.
S
h
3
4
3
2
12
1
1
4
1
15
2
1
2
4
1
2 5
1
3
110000 + + + +

1
]
1

. .
.
1
15
1
15
110000 111111 0 00074 0 001
3
4
3
2
3
3 3
3 3
S S
h
b a
h h
<

. . . .

Clculo Numrico 6 Integrao Numrica


158
Portanto:
I
x
dx
1
110000
1
3
.
Intervalo [3, 5]:
3 3 3
a - b h = 5 - 3 = 2
S
h
3
2
3
2
6
1
3
4
1
4
1
5
051111 + +

1
]
1
.
S
h
3
4
3
2
12
1
3
4
1
35
2
1
4
4
1
4 5
1
5
051084 + + + +

1
]
1

. .
.
1
15
1
15
051084 051111 0 000018 0 001
3
4
3
2
3
3 3
3 3
S S
h
b a
h h
<

. . . .

Portanto:
I
x
dx
1
051084
3
5
.
Logo:
I
x
dx
x
dx
x
dx
x
dx + + + +
1 1 1 1
110000 051084 058783 219867
1
9
1
3
3
5
5
9
. . . .
Para ilustrar, sabe-se que:
[ ] I
x
dx x
1
219722
1
9
1
9
ln( ) .
EXERCCIOS RESOLVIDOS
1. Dada a funo f(x) conhecida apenas para os pontos tabelados:
x 2.0 2.5 3.0 4.0 5.0 6.0 7.0 8.0 9.0 9.5
f(x) 0.21 0.30 0.37 0.45 0.49 0.50 0.49 0.47 0.45 0.40
obter uma aproximao para a integral desta funo no intervalo [2.0, 9.5], usando a
regra de Simpson quando possvel e a regra dos trapzios quando no for possvel
aplicar a regra de Simpson.
Soluo:
Para a aplicao da regra de Simpson preciso ter um nmero par de subintervalos de
mesmo comprimento. Portanto pode-se aplicar a regra de Simpson para os intervalos:
[2.0, 3.0] com passo h = 0.5
Clculo Numrico 6 Integrao Numrica
159
[3.0, 9.0] com passo h = 1.0
Para o intervalo [9.0, 9.5] no possvel aplicar a regra de Simpson (S) devendo,
portanto, ser usada a regra dos Trapzios (T), ou seja:
f x dx ( )
2.0
9.5
ser calculada como: f x dx f x dx f x dx
S h S h T h
( ) ( ) ( )
.
( . )
.
( . ( . )
2.0
3 0
0 5
30
9.0
10)
9.0
9.5
05


+ +
1 2 4 3 4 1 2 4 3 4 1 2 4 3 4
Assim:
[ ] f x dx
h
f f f ( ) ( . ) ( . ) ( . )
.
[ . . . ] .
.
2.0
3 0
3
2 0 4 25 30
05
3
021 4 0 30 037 0 30 + + + +
[ ] f x dx
h
f f f f f f f ( ) ( . ) ( . ) (5. ) ( . ) ( . ) (8. ) ( . )
. 3 0
9.0
3
30 4 4 0 2 0 4 6 0 2 7 0 4 0 9 0 + + + + + +
[ ] + + + + + +
10
3
0 37 4 0 45 2 0 49 4 050 2 0 49 4 0 47 0 45
.
. . . . . . .
[ ] + + + + + +
10
3
0 37 180 0 98 2 00 0 98 188 0 45 2 82
.
. . . . . . . .
[ ] f x dx
h
f f ( ) ( . ) ( . )
.
[ . . ] .
9.0
9.5
3
9 0 95
05
3
045 0 40 014 + +
Logo: f x dx ( ) . . . .
2.0
9.5
0 30 2 82 014 326 + +
2. Calcular I = e x dx
x

sen( ) usando o esquema de extrapolao de Romberg, de modo


que o erro absoluto entre duas aproximaes sucessivas seja menor do que 0.01.
Soluo:
O esquema de Romberg pode ser escrito como:
T T T
T T
T
0,0 1 2
0,1 11
0,2
,0 ,0
,
M
M
M
onde os valores de T
j 0,
so obtidos atravs da regra dos trapzios com passos h =
b a
j

2
, e os demais valores de T
i j ,
so tais que: T T T
i j
i
i
i j i j , , ,
[ ]


+
1
4 1
4
1 1 1
.
Portanto, sendo f x e x
x
( ) sen( )

,
Clculo Numrico 6 Integrao Numrica
160
com h =

0
2
0
, tem-se:
T f f
0,0
2
0 15708 0 0 0 + +

[ ( ) ( )] . [ ]
com h =

0
2
2
1
, tem-se:
T f f f
0,1
4
0 2
2
0 7854 0 0 4158 0 0 3266 + + + +

[ ( ) ( ) ( )] . [ . ] .
por extrapolao, tem-se:
T T T
1 0,1 0,0
1
4 1
4
1
3
4 0 3266 0 0 4354
,0
[ ] [ . ] .


com h =

0
2
4
2
, tem-se:
T f f f f f
0,2
8
0 2
4
2
2
2
3
4
0 3927 0 0 6448 0 4158 01340 0 04691 + + + + + + + +

[ ( ) ( ) ( ) ( ) ( )] . [ . . . ] .
por extrapolao, tem-se:
T T T
11 0,2 0,1
1
4 1
4
1
3
4 0 4691 03266 05166
,
[ ] [ . . ] .


por extrapolao, tem-se:
T T T
2
2
2
11 1
1
4 1
4
1
15
16 05166 0 4354 05221
,0 , ,0
[ ] [ . . ] .


Neste caso, o erro absoluto dado por: E = | 0.5221 - 0.5166 | = 0.0055 < 0.01.
Portanto, o valor aproximado da integral I = 0.5221.
EXERCCIOS PROPOSTOS
1. Dada a funo f(x) conhecida apenas para os pontos tabelados:
x -0.20 -0.10 0.00 0.10 0.20 0.25 0.30 0.35 0.42 0.49
f(x) 1.020 1.005 1.000 1.005 1.020 1.034 1.045 1.061 1.089 1.122
obter uma aproximao para a integral desta funo no intervalo [-0.20, 0.49], usando a
regra de Simpson quando possvel e a regra dos trapzios quando no for possvel
aplicar a regra de Simpson.
2. Dada a funo f(x) conhecida apenas para os pontos tabelados:
x -0.20 -0.15 0.00 0.10 0.20 0.25 0.30 0.35 0.50 0.65
f(x) 0.039 0.022 0.000 0.009 0.039 0.062 0.089 0.122 0.249 0.422
Clculo Numrico 6 Integrao Numrica
161
obter uma aproximao para a integral desta funo no intervalo [-0.20, 0.65], usando a
regra de Simpson quando possvel e a regra dos trapzios quando no for possvel
aplicar a regra de Simpson.
3. Determinar I = x x dx
2
0
2
sen( ) usando a regra de Simpson de modo que o erro seja
menor que 10
4
.
4. Calcular I = x x dx
1
2
ln( ) usando a regra dos trapzios e o esquema de Romberg, de
modo a ter um resultado de ordem h
6
.
5. Calcular os valores das integrais dos exerccios 3 e 4 pela regra de Gauss de 5 pontos.
Compare os resultados obtidos.
6. Os mtodos de integrao numrica vistos podem ser usados tambm no clculo de
integrais duplas. Considere, por exemplo, que deseja-se calcular:
I f x y dx dy
R
( , )
onde R a regio de integrao. Considere uma discretizao da regio R onde os
valores de x esto espaados em m intervalos de tamanho h e os valores de y esto
espaados em n intervalos de tamanho k. A figura a seguir ilustra esta discretizao
para m = 2 e n = 2.
x
y
R
x0 x1 x2
y0
y1
y2
h h
k
k
Nestas condies, I f x y dx dy f x y dy dx
R
y
y
x
x

_
,

( , ) ( , )
0
2
0
2
. Seja ento o mtodo dos
trapzios. Tem-se ento:
Clculo Numrico 6 Integrao Numrica
162
[ ] I f x y dy dx
k
f x y f x y f x y dx
k
f x y dx
k
f x y dx
k
f x y dx
y
y
x
x
x
x
x
x
x
x
x
x

_
,

+ +

_
,

+ +


( , ) ( , ) ( , ) ( , )
( , ) ( , ) ( , )
0
2
0
2
0 1 2
0
2
0
0
2
1
0
2
2
0
2
2
2
2
2
2 2
Mas:
[ ]
[ ]
[ ]
f x y dx
h
f x y f x y f x y
f x y dx
h
f x y f x y f x y
f x y dx
h
f x y f x y f x y
x
x
x
x
x
x
( , ) ( , ) ( , ) ( , )
( , ) ( , ) ( , ) ( , )
( , ) ( , ) ( , ) ( , )
0
0
2
0 0 1 0 2 0
1
0
2
0 1 1 1 2 1
2
0
2
0 2 1 2 2 2
2
2
2
2
2
2

+ +
+ +
+ +
Portanto, o valor de I, calculado pela regra dos trapzios, pode ser escrito como:
[ ] I
k h
f x y f x y f x y f x y f x y f x y f x y f x y f x y + + + + + + + +
2 2
2 2 4 2 2
0 0 1 0 2 0 0 1 1 1 2 1 0 2 1 2 2 2
( , ) ( , ) ( , ) ( , ) ( , ) ( , ) ( , ) ( , ) ( , )
Empregando a abordagem acima, calcular:
a) I xy dx dy
2
1
2
2
3
, com m = n = 3, pela regra dos trapzios.
b) I e dx dy
x y



1
3
0
1
, com m = 4 e n = 2, pela regra de Simpson.
EXERCCIOS DE PROGRAMAO
1. A regra de Simpson para calcular I f x dx
a
b
( ) pode ser escrita como:
I
h
f x f x f x f x f x f x f x f x
n n n
+ + + + + + + +

3
4 2 4 2 2 4
0 1 2 3 4 2 1
[ ( ) ( ) ( ) ( ) ( ) ... ( ) ( ) ( )
com erro dado por: E
b a
h f
iv


180
4
( ) , com (a, b) e n
b a
h


deve ser um inteiro
par.
Fazer um programa para calcular I e sin x dx
x


( )
0

pelo metodo de Simpson, de


forma que o erro seja menor do que 0.0000001
2. Fazer um programa para resolver o problema do exerccio anterior pelo mtodo de
quadratura de Gauss, dada por: I w f x
i i
i
g

( )
1
, onde g a ordem do mtodo. Para a
quadratura de Gauss de ordem 8 tem-se os seguintes valores de abscissas (x
i
) e
pesos (w
i
):
Abscissas Pesos
-0.1834346424 0.3626837833
-0.5255324099 0.3137066458
Clculo Numrico 6 Integrao Numrica
163
-0.7966664774 0.2223810344
-0.9602898564 0.1012285362
+0.1834346424 0.3626837833
+0.5255324099 0.3137066458
+0.7966664774 0.2223810344
+0.9602898564 0.1012285362
Testar o resultado obtido com o programa Mathematica, usando as funes:
f[x_]=Exp[-x]*Sin[x]
NIntegrate[f[x], {x, 0, Pi}]
3. A regra dos trapzios com passo h para resolver o problema: I f x dx
a
b
( ) pode ser
escrita como:
I
h
f x f x f x f x f x
n n
+ + + + +

2
2 2 2
0 1 2 1
[ ( ) ( ) ( ) ... ( ) ( )]
Implementar a regra dos trapzios na forma de uma funo com os seguintes
parmetros:
I = TRAPEZIO(A,B,H)
onde: A e B so os limites de integrao, H o passo e I o valor calculado para a
integral.
A seguir implementar o seguinte algoritmo para o clculo de I com preciso :
1. Determinar a aproximao I1 para o valor da integral chamando a funo
TRAPEZIO com passo h = b-a. Fazer T(1,1) = I1.
2. Fazer i = 1, j = 2 e k = j.
3. Se i = 1 ento determinar a aproximao I2 para o valor da integral chamando a
funo TRAPEZIO com passo h
b a
k

2
1
.
Caso contrrio, determinar a aproximao I2 da seguinte maneira:
I T(i k T(i k
i
i
2
1
4 1
4 1 1 1
1
1

( , ) , )).
4. Fazer T(i,k) = I2.
5. Se | I2 - I1 | < ento o valor I da integral igual a I2 e o algoritmo termina.
Caso contrrio, fazer:
I1 = I2
Se k = 1 ento fazer i = 1, j = j + 1 e k = j. Caso contrrio fazer i = i + 1 e k = k - 1.
Voltar ao passo 3.
Teste o programa na soluo do seguinte problema:

dx ) x ( sin e I
0
x
0.521607
4. A regra de Simpson para resolver o problema I f x dx
a
b
( ) pode ser escrita como:
Clculo Numrico 6 Integrao Numrica
164
I S h
h
f f f f f f
n n n
+ + + + + +

( ) [ ]
3
4 2 2 4
0 1 2 2 1
L
onde:
n um inteiro par;
f
i
representa f(x
i
); e
S(h) indica a aproximao de Simpson com passo h.
Um relacionamento entre aproximaes de Simpson e a preciso desejada para o
valor de I pode ser escrita como:
1
15
4 2 [ ( / ) ( / )] S h S h
h
b a

onde S(h/4) e S(h/2) so aproximaes de Simpson com passo h/4 e h/2,


respectivamente. Com esta relao pode-se estabelecer o seguinte algoritmo para
determinar o valor de I:
1) Fazer inicialmente h = b-a
2) Calcular as aproximaes S(h/4) e S(h/2)
3) Verificar se a relao acima est satisfeita. Caso esteja, o valor de S(h/4) a
aproximao desejada para o valor de I. Se a relao no for satisfeita, dividir h ao
meio e voltar ao passo 2.
Elaborar um programa que implemente este algoritmo. O clculo das aproximaes de
Simpson deve ser feito por uma funo, tendo o passo h como parmetro. Mostrar o
valor de I e o valor do passo usado para obt-lo.
165
Clculo Numrico
7. RESOLUO NUMRICA DE EQUAES DIFERENCIAIS ORDINRIAS
7.1 - Introduo
Muitos fenmenos fsicos podem ser modelados atravs de equaes diferenciais:
equaes que envolvem uma funo e algumas de suas derivadas. Uma equao que
envolve derivadas de at ordem n chamada equao diferencial de ordem n e pode ser
escrita como:
y x F x y x y x y x y x x a b
n n ( ) ( )
( ) ( , ( ), ' ( ), "( ), ..., ( )) [ , ]
1
(7.1)
A soluo desta equao uma funo y = f(x) definida em [a, b], com n derivadas e que
satisfaz a equao (7.1).
Exemplo. A soluo da equao diferencial de 2 ordem:
y '' = - y
a funo y(x) = sen(x) + cos(x), pois:
y(x) = sen(x) + cos(x) y'(x) = cos(x) - sen(x) y"(x) = -sen(x) - cos(x)
Logo: y''(x) = - (sen(x) + cos(x)) = -y(x)
Se a funo de uma s varivel (como no exemplo acima) tem-se uma equao
diferencial ordinria. Do contrrio, tem-se uma equao diferencial parcial.
Exemplos:
a)
2
x y y' +
b)
2
y y'
c) 3 2x y' +
d) 17y 3y' - y" +
e) 0 xy' yy" +
Em casos como o da equao (c), o problema se reduz a um problema de integrao:
y ' = f(x) com f contnua em [a, b]
cuja soluo dada por:
y f x dx c + ( )
integral
indefinida
12 4 3 4
onde c uma constante de integrao. No caso (c), por exemplo, tem-se:
y x dx x x c + + + ( ) 2 3 3
2
Portanto, como c pode ser uma constante qualquer, tem-se uma famlia de solues, como
ilustra a figura a seguir.
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
166
-6 -4 -2 2
5
10
15
20
x
y
c = 1
c = 3
c = 5
Se para a equao (c) for conhecido, por exemplo, que y(0) = 1 (condio inicial), ento a
soluo da equao unvoca, pois desta forma fica estabelecido o valor da constante c
(no caso, c = 1). Em geral, para especificar uma das solues de uma famlia de solues
para a equao (7.1) preciso impor condies adicionais da forma:
y(a) = v
1
; y'(a) = v
2
; ...; y
(n-1)
(a) = v
n
(condies iniciais) (7.2)
A equao (7.1) com as condies (7.2) denominada problema de valor inicial (PVI). Na
soluo de um PVI, portanto, procura-se uma funo y(x) que alm de satisfazer a equao
diferencial para valores de x > a, atenda s condies iniciais pr-estabelecidas.
Outra categoria de problemas associada equao (7.1) a dos problemas de valor de
contorno (PVC). Para um PVC, alm de condies no incio do fenmeno (ou seja,
condies para x = a), tem-se tambm condies a serem satisfeitas no final do fenmeno
modelado pela equao diferencial (ou seja, condies para x = b).
Infelizmente, dispe-se de poucas tcnicas matemticas gerais que possibilitem solues
analticas de tais problemas. Por exemplo, para o problema de valor inicial:
2 2
y x y' + ; y(0) = 1
no se conhece uma tcnica para obter uma soluo analtica. Em casos assim, preciso
ento pensar em tcnicas de aproximao. A soluo aproximada do problema ser uma
tabela de pontos: n} ..., 0,1, i ), y , {(x
i i
representando a funo y = f(x) desconhecida.
Mesmo no caso de uma soluo analtica ser possvel, pode ser difcial avaliar f(x) para um
dado valor de x. Por exemplo, o problema:
2xy 1 y' + ; y(0) = 0
tem como soluo: y x e e dt
x t
x
( )

2 2
0
. Para avaliar y(x) para um dado valor de x ser
necessrio usar uma regra de quadratura para avaliar a integral.
Neste captulo sero estudados mtodos numricos de resoluo de problemas de valor
inicial e problemas de valor de contorno. Para problemas de valor inicial, os
desenvolvimentos e exemplos consideram apenas equaes diferenciais de 1

ordem.
Deve-se, no entanto, observar que como uma equao diferencial de ordem n pode ser
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
167
transformada facilmente em um sistema de n equaes de 1 ordem, utilizando mudanas
de variveis, tais desenvolvimentos podem ser facilmente estendidos a equaes de
ordens mais altas.
Exemplo. Seja a equao: 1] [0, x 1, x y(x) e (x) xy' (x) ' ' y'
2 x
+ + + , com as seguintes
condies iniciais:
1 - (0) ' y' 0 (0) y' 1 y(0)
Fazendo: y(x) (x) y
1
, (x) y' (x) y
2
e (x) ' y' (x) y
3
tem-se o seguinte sistema:
1 x ) x ( y e ) x ( xy ) x ( ' ' ' y ) x ( ' y
) x ( y ) x ( ' ' y ) x ( ' y
) x ( y (x) y' (x) y'
2
1
x
2 3
3 2
2 1
+ + +


Portanto, a equao 1 x y(x) e (x) xy' (x) ' ' y'
2 x
+ + + , 1] [0, x , com as condies iniciais:
-1 (0) ' y' e 0 (0) y' 1, y(0) pode ser vista como um sistema de 3 equaes de 1 ordem:
1 x ) x ( y e ) x ( xy ) x ( ' y
) x ( y ) x ( ' y
) x ( y (x) y'
2
1
x
2 3
3 2
2 1
+ + +

com as condies iniciais: 1 ) 0 ( y , 0 ) 0 ( y 1, (0) y


3 2 1
.
7.2 Mtodo de Euler
Seja a equao y) f(x, y' com
0 0
y ) y(x e com passo de integrao
i 1 i
x - x h
+
(i =
0,1, ...). Pelo Teorema de Taylor pode-se escrever:
y x y x h y x hy x
h
y x x
i i i i i i
( ) ( ) ( ) ' ( ) "( ) ( , )
+ +
+ + +
1
2
1
2

Mas como )) y(x , f(x ) (x y'
i i i
e usando a notao: ) y(x y
j j
, tem-se:
) y , h.f(x y y
i i i 1 i
+
+
(i = 0,1, ... )
Portanto, com esta expresso do mtodo de Euler, conhecido o valor
0
y (condio inicial)
possvel determinar outros valores y
i
(i = 1,2, ...) para a funo y(x) nos pontos x
i
.
Mtodos como o de Euler em que os valores de y
i
podem ser obtidos diretamente so
denominados mtodos explcitos. Alm disto, como y
i
obtido atravs do ponto
imediatamente precedente apenas, tal mtodo conhecido como de passo simples.
A interpretao grfica do mtodo de Euler mostrada na figura a seguir:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
168
y
x
y = f(x)
xi xi+1
yi+1
yi

y x f x y tg
y y
x x
y y
h
y y hf x y
i i i
i i
i i
i i
i i i i
' ( ) ( , ) ( , )



+
+
+
+
+

1
1
1
1
Exemplo. Seja o seguinte problema de valor inicial:
y ' = 2x + 3, x [1.0, 1.5] com y(1.0) = 1.0
Com h = 0.1 tem-se a seguinte soluo numrica pelo mtodo de Euler:
y
0
= 1.00
y
1
= y
0
+ h.f(x
0
, y
0
) = 1.00 + (0.1)f(1.0, 1.00) = 1.00 + (0.1)(2.(1.0)+3) = 1.50
y
2
= y
1
+ h.f(x
1
, y
1
) = 1.50 + (0.1)f(1.1, 1.50) = 1.50 + (0.1)(2.(1.1)+3) = 2.02
y
3
= y
2
+ h.f(x
2
, y
2
) = 2.02 + (0.1)f(1.2, 2.02) = 2.02 + (0.1)(2.(1.2)+3) = 2.56
y
4
= y
3
+ h.f(x
3
, y
3
) = 2.56 + (0.1)f(1.3, 2.56) = 2.56 + (0.1)(2.(1.3)+3) = 3.12
y
5
= y
4
+ h.f(x
4
, y
4
) = 3.12 + (0.1)f(1.4, 3.12) = 3.12 + (0.1)(2.(1.4)+3) = 3.70
Ou seja, neste caso a soluo dada pela seguinte tabela de pontos:
x y(x)
1.0 1.00
1.1 1.50
1.2 2.02
1.3 2.56
1.4 3.12
1.5 3.70
Com h = 0.01, os valores obtidos sero mais precisos. A tabela a seguir mostra tais
valores, onde o valor correto dado por: 3 - 3x x
2
+ .
x y(x) correto
1.0 1.000 1.000
1.1 1.509 1.510
1.2 2.038 2.040
1.3 2.587 2.590
1.4 3.156 3.160
1.5 3.747 3.750
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
169
Para uma equao de ordem n, como comentado anteriormente, pode-se considerar um
sistema de n equaes diferenciais de 1 ordem e aplicar o mtodo de Euler a cada uma
delas.
Exemplo. Seja o seguinte problema de valor inicial:
1 - (0) y' 1; y(0) 0; x y; y"
Fazendo a troca de variveis: y' y y, y
2 1
tem-se o seguinte sistema:
2 2 1 1 1
y ) y , y (x, f y' (0) y
1
1 2 1 2 2
y ) y , y (x, f y' (0) y
2
Considerando h = 0.2, pelo mtodo de Euler tem-se:
1.00 (0.0) y x y
1.00 (0.0) y x y
2
)
0
(
2
1
)
0
(
1


0.80 ) 00 . 1 ( 2 . 0 00 . 1 )) (x (y 2 . 0 00 . 1
)) (x y ), (x y , (x h.f x y (0.2) y x y
0.80 ) 00 . 1 ( 2 . 0 00 . 1 )) (x (y 2 . 0 00 . 1
)) (x y ), (x y , (x h.f x y (0.2) y x y
0 1
0 2 0 1 0 2
)
0
(
2 2
)
1
(
2
0 2
0 2 0 1 0 1
)
0
(
1 1
)
1
(
1
+ +
+
+ +
+

0.64 ) 80 . 0 ( 2 . 0 80 . 0 )) (x (y 2 . 0 80 . 0
)) (x y ), (x y , (x h.f x y (0.4) y x y
0.64 ) 80 . 0 ( 2 . 0 80 . 0 )) (x (y 2 . 0 80 . 0
)) (x y ), (x y , (x h.f x y (0.4) y x y
1 1
1 2 1 1 1 2
)
1
(
2 2
)
2
(
2
1 2
1 2 1 1 1 1
)
1
(
1 1
)
2
(
1
+ +
+
+ +
+

e assim sucessivamente.
Portanto, como y(x) y (x)
1
, os valores de ) x ( y
i 1
(i = 0,1, ...) representam aproximaes
para a soluo da equao diferencial. A tabela abaixo mostra estes valores para 4 casas
decimais, onde o valor correto dado por:
-x
e
i
i
x ) x (
1 i
y ) x (
2 i
y
correto
0 0.0 1.0000 -1.0000 1.0000
1 0.2 0.8000 -0.8000 0.8187
2 0.4 0.6400 -0.6400 0.6703
3 0.6 0.5120 -0.5120 0.5488
4 0.8 0.4096 -0.4096 0.4493
5 1.0 0.3277 -0.3277 0.3678
7.3 Mtodos Baseados na Srie de Taylor
O mtodo de Euler considera na srie de Taylor apenas os termos at a derivada primeira.
Outros mtodos numricos podem ser obtidos considerando-se mais termos da srie. Seja
y ' = f(x,y) com y x y ( )
0 0
, um problema de valor inicial com soluo dada por y = F(x). Se
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
170
a soluo F(x) for suficientemente derivvel, pode-se escrever a expanso de Taylor em
torno de x
0
:
F x F x
x x
F x
x x
F x
x x
n
F x E
n
n
T
( ) ( )
!
' ( )
( )
!
"( ) ...
( )
!
( )
( )
+

+

+ +

+
0
0
0
0
2
0
0
0
1 2
Mas:
' ' y ) x ( ' ' y ) x ( ' ' F
' y ) y , x ( f ) x ( ' y ) x ( ' F
y ) x ( F
0 0 0
0 0 0 0 0
0 0

...
As derivadas y'', y''', ... no so conhecidas, uma vez que F(x) no conhecida. Contudo,
se f(x,y) for suficientemente derivvel tais derivadas podem ser determinadas da seguinte
maneira:
{
{ {
{ {
y f x y x f
y f x y x
f
y
dy
dx
f
x
f f f
y
f f
y
dy
dx
f f
x
f
y
dy
dx
f
x
f f f f f f f f f
f
y
y f f
x
y x
y
f
y
x
f
x
yy y xy x y xx
' ( , ( ))
" ' ( , ( )) .
( )
.
( )
.
'
( )

+ +
+ + + + + + +

3 2 2
2
e assim sucessivamente.
Exemplo:
2
y x y' + com y(0) = 1.
Neste caso tem-se:
1 2yy' 1 ) y 2y(x f f f ' y'
2
x y
+ + + +
2y y' 4y ) 2(y' 0 1.(2y) 2.0.y' y' (2y) ) 2(y' ' ' y'
2 2 2 2
+ + + + + +
Portanto, como 1 y(0) y
0
, tem-se:
1 1 0 ) y , f(x y'
2
0 0 0
+
3 1 2.1.1 1 y' 2y ' y'
0 0 0
+ +
8 2.1 .1 4.(1) 2.(1) 2y y' ) 4(y ) 2(y' ' ' y'
2 2
0 0
2
0
2
0 0
+ + + +
Logo:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
171
3 2
3 2
T 0
3
0
0
2
0
0 0 0
x
3
4
x
2
3
x 1 8 .
6
) 0 x (
3 .
2
) 0 x (
1 ). 0 x ( 1 ) x ( y
E ' ' ' y
! 3
) x x (
' ' y
! 2
) x x (
' y ) x x ( y ) x ( y
+ + +

+ +
+

+ +
Exemplo: O problema de valor inicial
2
y y' ; x [0, 1]; y(0) = 0.25, tem como soluo:
y x
x
( )

1
4
Determinar o valor de y(0.2). Neste caso, pela srie de Taylor pode-se escrever:
y x y xy
x
y
x
y ( )
' "
( )
+ + +
0 0
2
0
3
0
3
2 6
Mas:
0.25 y
0

0.0625 (0.25) ) (y ' y
2 2
0 0

0.03125 0.0625) 2.(0.25).( 0 y' 2y f f f ' ' y
0 0 x y 0
+ +
+ + + + + + + + 0 ) 0.(2y 2.0.y' y' ) (2y ) 2(y' f f f f 2f f f f f ' ' ' y
0 0 0
2
0
2
0 xx y x xy
y
2
yy 0
2
0.0234375 .(0.0625) 0.25) (2. 2.(0.0625)
2 2
+
Portanto:
y(0.2) 0.25 + (0.2)(0.0625) +
( . ) 0 2
2
2
(0.03125) +
( . ) 0 2
6
3
(0.0234375) = 0.263156
O valor correto neste caso seria: y( . )
.
. 0 2
1
4 0 2
0 263157


7.4 Mtodos Baseados em Regras de Quadratura
Muitos mtodos para soluo de problemas de valor inicial podem ser obtidos a partir de
regras de integrao numrica, uma vez que para o problema:
y) f(x, (x) y' com
0 0
y ) y(x
pode-se escrever:
] y x dx y y x y x y y
x
i
x
i
i i i
x
i
x
i
i
' ( ) ( ) ( )

1
1
1
1
Por outro lado, pela regra dos trapzios tem-se:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
172
y x dx
h
y x y x E
x
i
x
i
i i T
' ( ) [ ' ( ) ' ( )] + +

2
1
1
Portanto: y y
h
f x y f x y
i i i i i i
+ +
1 1 1
2
[ ( , ) ( , )] uma aproximao para o valor de y(x)
no ponto x = x
i
.
Deve-se notar que esta aproximao, baseada na regra dos trapzios, constitui um
esquema de passo simples (o valor de y
i
depende de apenas um valor anterior y
i-1
).
Entretanto este esquema implcito, uma vez que o valor de y
i
depende do prprio valor y
i
.
Portanto, neste caso, ser necessrio um processo iterativo para determinar o valor de y
i
(i
= 1,2, ...).
Para que y
i
seja obtido iterativamente necessrio uma estimativa inicial y
i
[0]
. Muitas
escolhas so possveis para a estimativa inicial. Alguns exemplos so:
o valor anterior y
i-1
o valor de y
i
obtido pelo mtodo de Euler: ) y , h.f(x y
1 - i 1 - i 1 - i
+
Dado um valor para y
i
[0]
, tem-se o seguinte esquema iterativo:
y y
h
f x y f x y n
i
n
i i i i i
n [ ] [ ]
[ ( , ) ( , )] ( , ,...) + +


1 1 1
1
2
12
ou seja:
y y onde y y
h
f x y
h
f x y
i
n
i
n
i i i i i i
[ ] [ ]
( ) : ( ) ( , ) ( , ) + +



1
1 1 1
2 2
independe de y
i
1 2 4444 3 4444
Pelo teorema de convergncia para a iterao funcional (ver Captulo 2 - Mtodo de Ponto
Fixo), deve-se ter:
d
dy
i

< 1
para que haja convergncia do processo iterativo. Portanto, deve-se ter que:
d
dy
h f x y
y
i
x x
j
y y
j

<

2
1
( , )
ou seja, para garantir a convergncia do processo iterativo, o passo h dever ser tal que:
h
f x y
y
x x
j
y y
j
<

( , )
Exemplo. Seja
2
y y' ; x [0, 1]; y(0) = 0.25
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
173
Neste caso:

f
y
y h
y
h
y
< < 2
2
2
1
. Tomando y(0) como uma estimativa
para o valor de y, tem-se que h <
1
0 25
4
.
. Assim, a escolha h = 0.2 deve ser suficiente
para garantir a convergncia do processo iterativo. Ento:
0.25 y
0

) y , x ( hf y y
0 0 0
] 0 [
1
+ (estimativa inicial pelo mtodo de Euler) = 2625 . 0 ) 25 . 0 ( 2 . 0 25 . 0
2
+
Seja = 0.00001
263176 . 0 ] ) 263176 . 0 ( ) 25 . 0 [(
2
2 . 0
25 . 0 y
263176 . 0 ] ) 263174 . 0 ( ) 25 . 0 [(
2
2 . 0
25 . 0 y
263174 . 0 ] ) 263141 . 0 ( ) 25 . 0 [(
2
2 . 0
25 . 0 y
263141 . 0 ] ) 2625 . 0 ( ) 25 . 0 [(
2
2 . 0
25 . 0 y
2 2 ] 4 [
1
2 2 ] 3 [
1
2 2 ] 2 [
1
2 2 ] 1 [
1
+ +
+ +
+ +
+ +
Logo: y
1
= 0.263176 (notar que y
1
= y(0.2) cujo valor exato y( . )
.
. 0 2
1
4 0 2
0 263157

).
7.5 Mtodos de Runge-Kutta
Os mtodos numricos de resoluo de equaes diferenciais ordinrias vistos at aqui
tem pouca importncia prtica. O mtodo de Euler requer um passo muito pequeno para
alcanar uma preciso razovel e o mtodo baseado na srie de Taylor (uma extenso do
mtodo de Euler) tem a desvantagem de requerer a forma algbrica de sucessivas
derivadas de f(x,y). J o mtodo baseado na regra dos trapzios, por constituir um
esquema implcito, requer um processo iterativo para determinar cada uma das
aproximaes y
i
.
Os mtodos de Runge-Kutta, ao contrrio, so muito empregados na prtica pois possuem
as seguintes caractersticas:
so auto-inicializveis, ou seja, a partir da condio inicial possvel conhecer os
demais pontos da soluo;
no requerem o clculo de derivadas;
permitem, facilmente, a alterao do tamanho do passo h;
utilizam n avaliaes da funo a cada passo, onde n o grau do mtodo.
Pela srie de Taylor tem-se:
y y x y x h y x hy x
h
y x E
i i i i i i T + +
+ + + +
1 1
2
2
( ) ( ) ( ) ' ( ) "( )
Como y'(x) = f(x,y) tem-se:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
174
y y x hf x y
h df x y
dx
i i i i
x x
i
+

+ +
1
]
1 1
2
2
( ) ( , )
( , )
Para calcular
df x y
dx
( , )
seja o polinmio interpolador de 1 grau no intervalo [x
i
, x
i+1
]:
)] x ( y ) x x ( ) x ( y ) x x [(
h
1
) x ( y .
x x
x x
) x ( y .
x x
x x
) x ( p
i 1 i 1 i i 1 i
h
i 1 i
i
i
h
1 i i
1 i
+ + +
+

+
+

43 42 1 43 42 1
Portanto:
p x
h
y x y x
i i
' ( ) [ ( ) ( )]
+
1
1
Usando este resultado, pode-se escrever:
)] y , x ( f ) y , x ( f [
h
1
dx
) y , x ( df
i i 1 i 1 i

+ +
Ento:
y y x hf x y
h
h
f x y f x y y
h
f x y
h
f x y
i i i i i i i i i i i i i + + + + +
+ + + +
1
2
1 1 1 1
2
1
2 2
( ) ( , ) . [ ( , ) ( , )] ( , ) ( , )
Mas, pelo mtodo de Euler, tem-se: y
i+1
= y
i
+ hf(x
i
,y
i
) e portanto: f(x
i+1
,y
i+1
) = f(x
i+1
,
hf(x
i
,y
i
)). Ento:
y y
h
f x y f x y hf x y
i i i i i i i i + +
+ + +
1 1
2
[ ( , ) ( , ( , ))]
Fazendo:
k hf x y
k hf x y hf x y hf x y k
i i
i i i i i i
1
2 1 1 1

+ +
+ +
( , )
( , ( , )) ( , )
tem-se:
y y k k
i i +
+ +
1 1 2
1
2
[ ] (mtodo de Runge-Kutta de 2 grau)
Exemplo. y' = x - y ; y(0) = 2 ; x [0, 1] ; h = 0.2
i x
i
y
i
k
1
k
2
0 0.0 2.00000 -0.40000 -0.28000
1 0.2 1.66000 -0.29200 -0.19360
2 0.4 1.41720 -0.20344 -0.12275
3 0.6 1.25410 -0.13082 -0.06466
4 0.8 1.15636 -0.07127 -0.01702
5 1.0 1.11222 - -
Exemplo. Usar o mtodo de Runge-Kutta de 2 grau para resolver o seguinte problema:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
175
2 . 0 h 0 . 0 ) 0 ( ' y ; 0 . 1 ) 0 ( y ] 1 , 0 [ x ; y x ' ' y +
Como trata-se de um problema de 2 ordem, devemos transform-lo em um sistema de 2
equaes diferenciais de 1 ordem. Para isso, pode-se usar a seguinte troca de variveis:
' y y e y y
2 1

Com essa troca de variveis, tem-se o seguinte sistema de equaes:
0 ) 0 ( y
1 ) 0 ( y
y x ) y , y , x ( f ' y
y ) y , y , x ( f ' y
y x ' ' y ' y
y ' y
2
1
1 2 1 2 2
2 2 1 1 1
1 2
2 1

'

'

Portanto, os prximos pontos da soluo podem ser calculados como:


para x = 0.2 temos:
) k ) 0 . 0 ( y ( 2 . 0 ) k ) 0 . 0 ( y , k ) 0 . 0 ( y , h 0 . 0 ( hf k
0 ) 0 . 0 ( y 2 . 0 )) 0 . 0 ( y ), 0 . 0 ( y , 0 . 0 ( hf k
) k k (
2
1
) 0 . 0 ( y ) 2 . 0 ( y
2
1 2
2
1 2
1
1 1 1
1
2
2 2 1 1
1
1
1
2
1
1 1 1
+ + + +

+ +
) k ) 0 . 0 ( y 2 . 0 ( 2 . 0 ) k ) 0 . 0 ( y , k ) 0 . 0 ( y , h 0 . 0 ( hf k
2 . 0 ) 1 0 ( 2 . 0 )) 0 . 0 ( y 0 . 0 ( 2 . 0 )) 0 . 0 ( y ), 0 . 0 ( y , 0 . 0 ( hf k
) k k (
2
1
) 0 . 0 ( y ) 2 . 0 ( y
1
1 1
2
1 2
1
1 1 2
2
2
1 2 1 2
2
1
2
2
2
1 2 2
+ + + + +
+ +
+ +
Substituindo os valores conhecidos, tem-se:
02 . 1 ) 04 . 0 0 (
2
1
1 ) k k (
2
1
) 0 . 0 ( y ) 2 . 0 ( y
04 . 0 ) 2 . 0 0 ( 2 . 0 ) k ) 0 . 0 ( y ( 2 . 0 k
0 k
1
2
1
1 1 1
2
1 2
1
2
1
1
+ + + +
+ +

22 . 0 ) 24 . 0 2 . 0 (
2
1
0 ) k k (
2
1
) 0 . 0 ( y ) 2 . 0 ( y
24 . 0 ) 0 1 2 . 0 ( 2 . 0 ) k ) 0 . 0 ( y 2 . 0 ( 2 . 0 k
2 . 0 k
2
2
2
1 2 2
1
1 1
2
2
2
1
+ + + +
+ + + +

para x = 0.4 temos:


) k ) 2 . 0 ( y ( 2 . 0 ) k ) 2 . 0 ( y , k ) 2 . 0 ( y , h 2 . 0 ( hf k
044 . 0 ) 22 . 0 ( 2 . 0 ) 2 . 0 ( y 2 . 0 )) 2 . 0 ( y ), 2 . 0 ( y , 2 . 0 ( hf k
) k k (
2
1
) 2 . 0 ( y ) 4 . 0 ( y
2
1 2
2
1 2
1
1 1 1
1
2
2 2 1 1
1
1
1
2
1
1 1 1
+ + + +

+ +
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
176
) k ) 2 . 0 ( y 4 . 0 ( 2 . 0 ) k ) 2 . 0 ( y , k ) 2 . 0 ( y , h 2 . 0 ( hf k
244 . 0 ) 02 . 1 2 . 0 ( 2 . 0 )) 2 . 0 ( y 2 . 0 ( 2 . 0 )) 2 . 0 ( y ), 2 . 0 ( y , 2 . 0 ( hf k
) k k (
2
1
) 2 . 0 ( y ) 4 . 0 ( y
1
1 1
2
1 2
1
1 1 2
2
2
1 2 1 2
2
1
2
2
2
1 2 2
+ + + + +
+ +
+ +
Substituindo os valores conhecidos, tem-se:
0884 . 1 ) 0928 . 0 044 . 0 (
2
1
02 . 1 ) k k (
2
1
) 2 . 0 ( y ) 4 . 0 ( y
0928 . 0 ) 244 . 0 22 . 0 ( 2 . 0 ) k ) 2 . 0 ( y ( 2 . 0 k
044 . 0 k
1
2
1
1 1 1
2
1 2
1
2
1
1
+ + + +
+ +

4884 . 0 ) 2928 . 0 244 . 0 (


2
1
22 . 0 ) k k (
2
1
) 2 . 0 ( y ) 4 . 0 ( y
2928 . 0 ) 044 . 0 02 . 1 4 . 0 ( 2 . 0 ) k ) 2 . 0 ( y 4 . 0 ( 2 . 0 k
244 . 0 k
2
2
2
1 2 2
1
1 1
2
2
2
1
+ + + +
+ + + +

e assim sucessivamente para os demais valores de x = 0.6, 0.8 e 1.0.


Ou seja, a soluo pode ser resumida na seguinte tabela (observe que como y y
1
, a
soluo numrica corresponde coluna de ) x ( y
i 1
):
i
i
x ) x ( y
i 1
) x ( y
i 2 correto =
i
x
x e
i

0 0.0 1.0000 0.0000 1.0000
1 0.2 1.0200 0.2200 1.0214
2 0.4 1.0884 0.4884 1.0918
3 0.6
4 0.8
5 1.0
Exerccio. Completar a tabela acima.
De uma forma geral, os mtodos de Runge-Kutta so estabelecidos como:
y y w k
i i i
i
n
i +

+
1
1
onde:
k hf x h y k i n
i j i j i p p
p
i
+ +

( , ) ( , ,..., )
,

1
1
12
e os coeficientes w
i
,
i
e
i p ,
(i = 1,2, ..., n; p = 1,2, ..., i-1) so escolhidos de modo que a
expanso de y
i+1
pela srie de Taylor considere at n termos.
Para n = 2 (mtodo de Runge-Kutta de 2 grau) tem-se:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
177
y y w k y w k w k
i i i
i
i i +

+ + +
1
1
2
1 1 2 2
com:
1/2 w w
2 1
; 1 , 0
2 1
; 1
2,1


{
{
{
{
{
y y hf x h y hf x h y k
y hf x y hf x y k
i i
w
i i
k
w
i i p p
p
k
i i i i i
+

+
+ + + + +
+ + +

1
1
1
1
2
2
2
1
2 1
2
1
2 1
1
1
2
0
1
2
1
1
2
1
2
1
( , ) ( , )
( , ) ( , )
,
,

1 2 44 3 44 1 2 44444 3 44444
Para n = 3 (mtodo de Runge-Kutta de 3 grau) tem-se:
y y w k y w k w k w k
i i i
i
i i +

+ + + +
1
1
3
1 1 2 2 3 3
com:
k hf x h y
k hf x h y k
k hf x h y k k
i i
i i
i i
1 1
2 2 2 1 1
3 3 31 1 3 2
+
+ +
+ + +
( , )
( , )
( , )
,
, ,2



onde:
w w w
1 2 3
1 2 3
2 1 31 3
1
6
2
3
1
6
0
1
2
1
1
2
1 2





, , ,2
ou seja:
y y k k k
i i +
+ + +
1 1 2 3
1
6
4 [ ]
com:
k hf x y
k hf x
h
y
k
k hf x h y k k
i i
i i
i i
1
2
1
3 1 2
2 2
2

+ +
+ +
( , )
( , )
( , )
Um dos mtodos Runge-Kutta mais utilizados o de 4 grau, dado por:
y y k k k k
i i +
+ + + +
1 1 2 3 4
1
6
2 2 [ ]
com:
k hf x y
k hf x
h
y
k
k hf x
h
y
k
k hf x h y k
i i
i i
i i
i i
1
2
1
3
2
4 3
2 2
2 2

+ +
+ +
+ +
( , )
( , )
( , )
( , )
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
178
Observao:
Seja y' = f(x) (ou seja, o lado direito da equao diferencial uma funo que no
depende de y(x)). Neste caso, para o mtodo de Runge-Kutta de 3 grau tem-se:
k hf x k hf x
h
k hf x h
i i i 1 2 3
2
+ + ( ) ( ) ( )
e portanto:
y y
h
f x f x
h
f x h
i i i i i +
+ + + + +
1
6
4
2
[ ( ) ( ) ( )]
Por outro lado:
f x dx y x dx y y
i i
x
i
x
i
x
i
x
i
( ) ' ( )
+
+ +

1
1 1
Logo:
f x dx
h
f x f x
h
f x h
x
i
x
i
i i i
( ) [ ( ) ( ) ( )] + + + +
+

6
4
2
1
que corresponde regra de quadratura de Simpson com passo
h
2
.
7.6 Mtodos de Passo Mltiplo
Os mtodos de resoluo de equaes diferenciais ordinrias vistos anteriormente so
todos de passo nico, isto , para calcular y
i+1
leva-se em conta apenas os valores de
f(x,y) em torno do ponto anterior y
i
. Os mtodos de passo mltiplo levam em conta no
apenas o valor de y
i
como tambm pontos anteriores y
i-1
, y
i-2
, ..., y
i-k+1
(mtodo de k-
passos).
A frmula geral de um mtodo de k-passos dada por:
y y h f x y
i j i j
j
k
j i j i j
f
i j
j
k
+ +

+ +
+

+
1 1
1
1 1
1
0
( , )
1 2 444 3 444
Dependendo do valor de
0
tem-se duas classes de mtodos de passo mltiplo: mtodos
explcitos e mtodos implcitos.
Se
0
= 0 ento:
y y h f y y y h f f f
i j i j
j
k
j i j
j
k
i i k i k i i k i k + +

+ +
+ + + + + + + +
1 1
1
1
1
1 2 1 1 1 2 1 1
( ... ) ( ... )
ou seja, para determinar o prximo ponto da soluo, y
i+1
, so necessrios os k valores
anteriores da soluo: y
i
, y
i-1
, y
i-2
, ..., y
i-k+1
, alm dos respectivos valores de f(x
j
, y
j
) (j = i,
i-1, i-2, ..., i-k+1). Portanto, quando
0
= 0 tem-se um mtodo explcito de passo mltiplo.
Se
0
0 ento, alm destes pontos ser necessrio tambm o valor de f
i+1
. Neste caso,
para calcular y
i+1
ser preciso um esquema iterativo levando, portanto, a um mtodo
implcito de passo mltiplo.
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
179
MTODOS EXPLCITOS DE PASSO MLTIPLO
Dada a equao y' = f(x,y(x)) pode-se obter por integrao:
y x y x f x y x dx
i i
x
i
x
i
( ) ( ) ( , ( ))
+
+
+
1
1
Supondo j conhecidos os valores anteriores y
j
(j = i, i-1, ..., i-k+1), pode-se substituir
f(x,y(x)) por um polinmio interpolador que passa por estes pontos anteriores. Neste caso
tem-se uma famlia de mtodos (dependendo da escolha do grau do polinmio) para
resolver a equao diferencial conhecidos como mtodos de Adams-Bashforth.
Para k = 2, o polinmio do 1 grau e tem-se um mtodo de 2 grau:
y y
x x
x x
f
x x
x x
f dx y
h
f x x dx f x x dx
i i
i
i i
x
i
x
i
i
i
i i
i i i i i i
x
i
x
i
x
i
x
i
+


+ +
+

+
1
1
1
1
1
1
1 1
1 1
1
[
( )
( )
.
( )
( )
. ] [ ( ) ( ) ]
Essas integrais podem ser calculadas facilmente. Por exemplo:

+
+

+
+
+

) x x ( x
2
x
2
x
x . x
2
x
dx ) x x (
i 1 i 1 i
2
i
2
1 i
x
x
1 i
x
x
2
x
x
i
1 i
i
1 i
i
1 i
i

+ +

+
+ + + +
+
+
2
x x x x x x x x x x x x
2
x x 2 x x 2 x x
i 1 i i 1 i 1 i 1 i 1 i 1 i i i 1 i 1 i
i 1 i 1 i 1 i
2
i
2
1 i

+ +
+ + + +
2
hx hx hx 2
2
) x x ( x ) x x ( x ) x x ( x
1 i i 1 i 1 i i 1 i i 1 i i 1 i 1 i 1 i
2
h 3
2
) h ( h ) h 2 ( h
2
) x x ( h ) x x ( h
2
hx hx hx hx
2
i 1 i 1 i 1 i 1 i i 1 i 1 i

+

+
+ + + +
Assim:
y y
h
h
f
h
f y
h
f f
i i i i i i i +
+ +
1
2 2
1 1
1 3
2 2 2
3 [ ] [ ]
Notar que, considerando a forma geral vista anteriormente, o mtodo de Adams-Bashforth
de 2 grau pode ser escrito como:
y y y h f f
i i i i i +
+ + +
1 1 2 1 1 2 1
[ ]
onde:
1
= 1 ;
2
= 0 ;
1
= 3/2 ;
2
= -1/2
Para k = 3, o polinmio do 2 grau e tem-se o mtodo de Adams-Bashforth de 3 grau:
y y
h
f f f
i i i i i +
+ +
1 1 2
12
23 16 5 [ ]
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
180
Para k = 4, o polinmio do 3 grau e tem-se o mtodo de Adams-Bashforth de 4 grau:
y y
h
f f f f
i i i i i i +
+ +
1 1 2 3
24
55 59 37 9 [ ]
Para k = 5, o polinmio do 4 grau e tem-se o mtodo de Adams-Bashforth de 5 grau:
y y
h
f f f f f
i i i i i i i +
+ + +
1 1 2 3 4
720
1901 2774 2616 1274 251 [ ]
Observaes Importantes:
Pode-se notar que, medida que aumenta o grau do polinmio interpolador, aumentam
os coeficientes de f
j
(j = i, i-1, i-2, ..., i-k+1) e portanto o mtodo torna-se mais sensvel
a erros de arredondamento.
Os mtodos de Adams-Bashforth no so auto-inicializveis, porque necessitam de um
conjunto de k pontos anteriores da soluo para que possam ser aplicados (de incio,
tem-se apenas um ponto da soluo: a condio inicial). Portanto, para aplicar um
mtodo de Adams-Bashforth preciso, primeiramente, obter este conjunto inicial de k
pontos atravs de um mtodo de passo nico.
MTODOS IMPLCITOS DE PASSO MLTIPLO
Os mtodos implcitos de passo mltiplo so obtidos da mesma forma que os mtodos
explcitos, s que agora,
0
0. Tais mtodos so conhecidos como mtodos de Adams-
Moulton.
Para k = 2 (mtodo de Adams-Moulton de 2 grau):
y y
x x
x x
f
x x
x x
f dx y
h
f x x dx f x x dx
i i
i
i i
i
i
i i
i i
x
i
x
i
i i i i
x
i
x
i
x
i
x
i
+
+
+ +
+
+
+ +
+ +
+

+
1
1
1 1
1
1
1 1
1 1
1
[
( )
( )
( )
( )
] [ ( ) ( ) ]
ou seja:
y y
h
f f
i i i i + +
+ +
1 1
2
[ ]
Para k = 3 (mtodo de Adams-Moulton de 3 grau):
y y
h
f f f
i i i i i + +
+ +
1 1 1
12
5 8 [ ]
Para k = 4 (mtodo de Adams-Moulton de 4 grau):
y y
h
f f f f
i i i i i i + +
+ + +
1 1 1 2
24
9 19 5 [ ]
Para k = 5 (mtodo de Adams-Moulton de 5 grau):
y y
h
f f f f f
i i i i i i i + +
+ + +
1 1 1 2 3
720
251 646 264 106 19 [ ]
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
181
Observao:
Pode-se notar que as frmulas implcitas so menos sensveis a erros de
arredondamento (pois os coeficientes so menores) do que as frmulas explcitas, mas
necessitam iterao.
7.7 Mtodos de Previso e Correo
Os mtodos de passo mltiplo possuem algumas caractersticas interessantes:
Os mtodos implcitos so menos sujeitos a erros de arredondamento e apresentam
limites de erro de truncamento menores que os mtodos explcitos de mesmo grau.
Entretanto, nos mtodos implcitos o clculo de y
i+1
requer o valor de f
i+1
e, portanto,
um processo iterativo.
J os mtodos explcitos tem a vantagem de poder calcular y
i+1
somente com base em
valores anteriores da soluo.
Pode-se, ento, combinar estes dois tipos de mtodos de modo a empregar as vantagens
de cada um. Esta combinao conhecida como mtodo de previso e correo, que
corresponde a:
inicializar o processo por um mtodo de passo nico (por exemplo, Runge-Kutta);
calcular o valor de y
i+1
pelo mtodo de passo mltiplo explcito (valor previsto);
recalcular o valor de y
i+1
usando o mtodo de passo mltiplo implcito de mesmo grau
(valor corrigido).
Portanto, nos mtodos de previso e correo, o mtodo explcito (mtodo de Adams-
Bashforth) usado como frmula previsora e o mtodo implcito (mtodo de Adams-
Moulton) corresponde frmula corretora.
Exemplo: y ' = y
2
; y(0) = 0.25 ; x [0, 1] ; h = 0.2
(a) Inicializao: clculo de y
1
(Runge-Kutta de 2 grau)
y y k k
k hf x y
k hf x y k
Logo y
1 0 1 2
1 0 0
2
2 1 0 1
2
1
1
2
0 2 0 25 0 012500
0 2 0 25 0 012500 0 013781
0 25
1
2
0012500 0013781 0 263141
+ +

+ +
+ +
[ ]
( , ) . ( . ) .
( , ) . ( . . ) .
: . [ . . ] .
(b) Previso: clculo de
2
y (Adams-Bashforth de 2 grau)
y y
h
f f
2 1 1 0
2 2
2
3 0 263141
02
2
3 0 263141 0 25 0 277664 + + [ ] .
.
[ .( . ) ( . ) ] .
(c) Correo: clculo de
2
y (Adams-Moulton de 2 grau)
y y
h
f f
2 1 2 1
2 2
2
0 263141
0 2
2
0 277664 0 263141 0 277775 + + + + [ ] .
.
[( . ) ( . ) ] .
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
182
Neste caso, o valor correto : y y
2
0 4
1
4 04
0 277778

( . )
.
.
Deve-se observar que o passo de correo pode ser executado vrias vezes, at que se
consega um resultado considerado satisfatrio.
7.8 Mtodo das Diferenas Finitas
No Captulo 5 mostrou-se como obter aproximaes de funes a partir do
desenvolvimento em srie de Taylor. Basicamente, para uma funo y(x) em torno do
ponto x = x
i
, pode-se escrever:
y x y x x x y x
x x
y x
i i i
i
i
( ) ( ) ( ) ' ( )
( )
!
"( ) ... + +

+
2
2
(7.3)
Portanto o valor de y(x) no ponto x = x
i +1
= x
i
+ h, pode ser escrito como:
y x y x x x y x
x x
y x
y x hy x
h
y x
i i i i i
i i
i
i i i
( ) ( ) ( ) ' ( )
( )
!
"( ) ...
( ) ' ( ) "( ) ...
+ +
+
+
+ +

+
+ +
1 1
1
2
2
2
2
ou seja:
y x y x
h
y x
h
y x
i i
i i
( ) ( )
' ( ) "( ) ...
+

+ +
1
2
Tem-se, portanto:
y x
y x y x
h
i
i i
' ( )
( ) ( )


+
+1
O(h)
onde O(h) (lido como ordem de h) indica que a magnitude dos termos restantes depende da
ordem de grandeza do valor de h.
Assim, pode-se escrever:
y x
y x y x
h
i
i i
' ( )
( ) ( )


+1
Diz-se, neste caso, que (x) y' aproximada por uma diferena finita ascendente, com erro
da ordem de h.
Se na equao (7.3) substituirmos x por x
i 1
tem-se:
y x y x x x y x
x x
y x
y x hy x
h
y x
i i i i i
i i
i
i i i
( ) ( ) ( ) ' ( )
( )
!
"( ) ...
( ) ' ( ) "( ) ...


+
+ +

+
+
1 1
1
2
2
2
2
e portanto:
y x
y x y x
h
i
i i
' ( )
( ) ( )


1
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
183
e, neste caso, diz-se, que (x) y' aproximada por uma diferena finita descendente, com
erro tambm da ordem de h.
Uma terceira aproximao para (x) y' pode ser obtida subtraindo-se a expresso para
y(x
i 1
) da expresso para y(x
i +1
), ou seja:
y x y x hy x
i i i
( ) ( ) ' ( )
+
+
1 1
2 O(h
3
)
Portanto:
y x
y x y x
h
i
i i
' ( )
( ) ( )


+ 1 1
2
+ O(h
2
)
Logo:
y x
y x y x
h
i
i i
' ( )
( ) ( )


+ 1 1
2
Neste caso, diz-se que (x) y' aproximada por uma diferena finita central. Deve-se
observar, entretanto, que nesta aproximao o erro da ordem de h
2
(menor, portanto,
que o erro das aproximaes anteriores, se h < 1).
Pode-se obter uma aproximao para a derivada segunda, somando-se as expresses
para y(x
i 1
) e y(x
i +1
):
+ + +
+
) x ( " y h ) x ( y 2 ) x ( y ) x ( y
i
2
i 1 i 1 i
O(h
4
)
ou seja:
y x
y x y x y x
h
i
i i i
"( )
( ) ( ) ( )

+
+ 1 1
2
2
Esta expresso aproxima o valor de (x) ' y' com erro da ordem de h
2
. Aproximaes para
derivadas de ordens mais altas podem ser obtidas de forma anloga.
O mtodo das diferenas finitas para soluo de equaes diferenciais decorre da
substituio, na equao, das derivadas da funo pelas suas correspondentes
aproximaes por diferenas finitas. Considerando a notao y
i
para designar o valor de
y(x
i
), tem-se ento:
Derivada Aproximao Ordem do Erro
y
y y
h
i
i i
'

+1
h
Primeira
y
y y
h
i
i i
'

1
h
h 2
y y
' y
1 i 1 i
i
+

2
h
Segunda
2
1 i i 1 i
i
h
y y 2 y
' ' y
+
+

2
h
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
184
Exemplo. Usando o mtodo das diferenas finitas, obter uma soluo aproximada para o
seguinte problema de valor de contorno:

'

+ +
71 . 2 ) 0 . 1 ( y
00 . 0 ) 0 . 0 ( y
] 1 , 0 [ x ) 1 x ( e xy ' y " y
2 x
Para resolver o problema pelo mtodo das diferenas finitas, deve-se inicialmente
discretizar o domnio. Para o caso acima, seja n = 5 o nmero de subintervalos do domnio
[0, 1]. Neste caso:
h
b a
n

1 0
5
02 .
onde:
71 . 2 ) 0 . 1 ( y ) x ( y y
00 . 0 ) 0 . 0 ( y ) x ( y y
5 5
0 0


Portanto, a soluo aproximada consiste em determinar os valores de y
i
, i = 1, ..., 4, como
ilustra a tabela a seguir:
i
i
x
i
y
0 0.0 0.00
1 0.2 ?
2 0.4 ?
3 0.6 ?
4 0.8 ?
5 1.0 2.71
Substituindo, na equao diferencial, as derivadas pelas aproximaes por diferenas
finitas (usando, para a derivada primeira, a diferena central, por ser mais exata) obtm-se:
y y y
h
y y
h
x y e x i
i i i i i
i i
x
i
i
+ +
+


+ +
1 1
2
1 1 2
2
2
1 1 2 3 4 ( ) , , ,
ou seja:
( ) ( ) ( ) ( ) , , , 2 2 4 2 2 1 1 2 3 4
1
2
1
2 2
+ + + +
+
h y h x y h y h e x i
i i i i
x
i
i
Tem-se ento:
i h x y h y h e x h y
x
+ + + 1 2 4 2 2 1 2
2
1 1 2
2
1
1
2
0
( ) ( ) ( ) ( )
i h y h x y h y h e x
x
+ + + + 2 2 2 4 2 2 1
1
2
2 2 3
2
2
2
2
( ) ( ) ( ) ( )
i h y h x y h y h e x
x
+ + + + 3 2 2 4 2 2 1
2
2
3 3 4
2
3
3
2
( ) ( ) ( ) ( )
i h x y h y h e x h y
x
+ + 4 2 4 2 2 1 2
2
4 4 5
2
4
4
2
5
( ) ( ) ( ) ( )
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
185
Deve-se observar que os termos correspondentes a y
0
e y
5
, por serem constantes, foram
deslocados para o segundo membro nas respectivas equaes. Assim, substituindo-se os
valores obtm-se o seguinte sistema de equaes lineares:

3984 18 0 0
2 2 3968 18 0
0 2 2 3952 18
0 0 2 2 3936
0102
0138
0198
4 601
1
2
3
4
. .
. . .
. . .
. .
.
.
.
.
y
y
y
y
Resolvendo o sistema, tem-se os valores correspondentes soluo aproximada. A tabela
a seguir compara os valores obtidos para a soluo aproximada com os valores obtidos
atravs da soluo analtica
x
e x y(x) .
i x
i
y
i
aproximado y
i
exato
0 0.0 0.0000 0.0000
1 0.2 0.2434 0.2443
2 0.4 0.5954 0.5967
3 0.6 1.0917 1.0933
4 0.8 1.7791 1.7804
5 1.0 2.7183 2.7183
EXERCCIOS RESOLVIDOS
1. Resolver o problema de valor inicial:
y
x y
x
'
+ 3 2
; x [1.00, 1.30]; y(1) = 1; h = 0.10
utilizando o mtodo de previso e correo de 2 grau. Para a inicializao utilizar o
mtodo de Runge-Kutta de 2 grau.
Soluo:
A soluo do problema uma tabela da forma:
x x
0
= 1.00 x
1
= 1.10 x
2
= 1.20 x
3
= 1.30
y y
0
= 1.000 y
1
y
2
y
3
Inicializao (clculo de y
1
) com mtodo de Runge-Kutta de 2 grau:
k hf x y f
1 0 0
010 100 1000 010
3 100 2 1000
100
0500
+
( , ) . ( . , . ) . [
. .
.
] .
k hf x y k f
2 1 0 1
010 110 1000 0500 010
3 110 2 0500
110
0 391 +
+
( , ) . ( . , . . ) . [
. ( . )
.
] .
y y k k
1 0 1 2
1
2
1000
1
2
0500 0 391 0555 + + + [ ] . [ . . ] .
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
186
Agora, como j se dispe de dois valores de y, pode-se aplicar o mtodo de previso e
correo para o clculo dos demais valores de y.
Clculo de y
2
Previso: y y
h
f f f f
2 1 1 0
2
3 0555
010
2
3 110 0555 100 1000 0 204 + + [ ] .
.
[ ( . , . ) ( . , . )] .
Correo: y y
h
f f f f
2 1 2 1
2
0555
010
2
120 0 204 110 0555 0188 + + + + [ ] .
.
[ ( . , . ) ( . , . )] .
Clculo de y
3
Previso: y y
h
f f f f
3 2 2 1
2
3 0188
010
2
3 120 0188 110 0555 0109 + + [ ] .
.
[ ( . , . ) ( . , . )] .
Correo: y y
h
f f f f
3 2 3 2
2
0188
010
2
130 0109 120 0188 0119 + + + + [ ] .
.
[ ( . , . ) ( . , . )] .
Logo, a soluo do problema a tabela:
x x
0
= 1.00 x
1
= 1.10 x
2
= 1.20 x
3
= 1.30
y y
0
= 1.000 y
1
= 0.555 y
2
= 0.188 y
3
= -0.119
Para ilustrar, sabe-se que a soluo exata do problema acima conhecida:
y x
x
x ( )
2
2
. A tabela a seguir mostra os valores da soluo exata, para efeitos de
comparao.
x x
0
= 1.00 x
1
= 1.10 x
2
= 1.20 x
3
= 1.30
y y
0
= 1.000 y
1
= 0.553 y
2
= 0.189 y
3
= -0.117
2. Resolver o seguinte problema de valor de contorno utilizando o mtodo das diferenas
finitas:
y '' + 2y ' + y = 30x; y(0) = 0, y(1) = 0; h = 0.25
Soluo:
A soluo do problema uma tabela da forma:
x x
0
= 0.00 x
1
= 0.25 x
2
= 0.50 x
3
= 0.75 x
4
= 1.00
y y
0
= 0.000 y
1
y
2
y
3
y
4
= 0.000
Para encontrar os valores de y y y
1 2 3
, , deve-se substituir as derivadas na equao
diferencial por suas aproximaes por diferenas finitas, ou seja:
y y y
h
y y
h
y x i
i i i i i
i i
+ +
+
+

+
1 1
2
1 1
2
2
2
30 1 2 3 ( , , )
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
187
ou seja:
( ) ( ) ( ) ( , , ) 1 2 1 30 1 2 3
1
2
1
2
+ + +
+
h y h y h y h x i
i i i i
Tem-se, portanto, o seguinte sistema de equaes lineares:
( ) ( )
( ) ( ) ( )
( ) ( )
h h
h h h
h h
y
y
y
h x
h x
h x
2
2
2
1
2
3
2
1
2
2
2
3
2 1 0
1 2 1
0 1 2
30
30
30
+
+


Substituindo os valores, tem-se:

194 125 0
0 75 194 125
0 0 75 194
0 47
0 94
141
1586
2 085
1533
1
2
3
1
2
3
. .
. . .
. .
.
.
.
.
.
.
y
y
y
y
y
y
Logo, a soluo do problema :
x x
0
= 0.00 x
1
= 0.25 x
2
= 0.50 x
3
= 0.75 x
4
= 1.00
y y
0
= 0.000 y
1
= -1.586 y
2
= -2.085 y
3
= -1.533 y
4
= 0.000
EXERCCIOS PROPOSTOS
1. Dado o problema de valor inicial: xy' = x - y com y(2) = 2, obter uma aproximao
para y(2.4) pelo mtodo de previso e correo de 3 grau. Utilize h = 0.1 e o mtodo
de Runge-Kutta de 3 grau para as inicializaes necessrias. Para obter a soluo
analtica do problema e conferir os resultados, utilize as seguintes instrues do
programa Mathematica:
f[x_,y_] = (x y)/x
DSolve[y'[x] ==f[x,y[x]],y[x],x]
2. Resolver o seguinte problema de valor de contorno utilizando diferenas finitas centrais
para a aproximao de derivadas:
d y
dx
dy
dx
sin x x
2
2
+ + ( ( ) cos( )) ; y(0.0) = 2.00; y(1.2) = 0.66; h = 0.4
3. Usar o desenvolvimento em srie de Taylor at os termos de 2 ordem para obter uma
soluo aproximada do problema de valor inicial y x
x
y
x
y ' ( )
1
2
2
, com y(1) = -1,
para x [1, 2] com passo h = 0.25
4. Calcular uma aproximao para y(0.6) pelo mtodo de Runge-Kutta de 3 grau, com
passo h = 0.2, sabendo que y ' = xy + 1 e y(0) = 1.
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
188
5. Seja o problema de valor inicial dado por: y '' = 4y ' - 3y - x, com y(0) = 0.445 e y '(0) =
2.333. Transformar este problema em um conjunto de duas equaes ordinrias de 1
ordem e obter uma soluo aproximada utilizando o mtodo de Runge-Kutta de 2 grau.
6. Usar o mtodo das diferenas finitas para encontrar solues aproximadas para os
seguintes problemas de valor de contorno:
a) 0 y ' ' y + , com: x (0, 1); y(0) = 0, y(1) = 1; h = 0.2
b)
x 2
e ) x 1 ( y 2 ' y ) 1 x ( ' ' y

+ + , com: x (0, 1); y(0) = 0, y(1) = 0; h = 0.2
EXERCCIOS DE PROGRAMAO
1. Implementar um mtodo de previso e correo de 4 grau para a soluo de equaes
diferenciais ordinrias de 1 ordem. Para a inicializao do mtodo, utilizar a frmula de
Runge-Kutta de 4 grau, dada por:
y y k k k k
i i +
+ + + +
1 1 2 3 4
1
6
2 2 [ ]
onde:
k hf x y
k hf x
h
y
k
k hf x
h
y
k
k f x h y k
i i
i i
i i
i i
1
2
1
3
2
4 3
2 2
2 2

+ +
+ +
+ +
( , )
( , )
( , )
( , )
Para o clculo do valor previsto utilizar a frmula de Adams-Bashforth de 4 grau:
y y
h
f f f f
i i i i i i +
+ +
1 1 2 3
24
55 59 37 9 [ ]
Para o clculo do valor corrigido utilizar a frmula de Adams-Moulton de 4 grau, dada
por:
y y
h
f f f f
i i i i i i + +
+ + +
1 1 1 2
24
9 19 5 [ ]
Testar o programa na soluo do seguinte problema:
y
x y
x
'
+ 3 2
com x [1, 2], y(1) = 1 e h = 0.05
Neste caso a soluo exata do problema conhecida: y x
x
x ( )
2
2
. Verificar quo
boa a soluo numrica.
2. Implementar um programa para resolver o problema de valor inicial a seguir,
correspondente convivncia de coelhos e raposas:
Clculo Numrico 7 Resoluo Numrica de Equaes Diferenciais Ordinrias
189
r r rf
f f rf
r f t
'
'
( ) ; ( )

+

'


2 2
0 1 0 3 0 10
onde r(t) e f(t) denotam a densidade de coelhos e de raposas, respectivamente, em
funo do tempo.
Utilizar o programa Mathematica para visualizar os grficos das funes r e f em funo
do tempo t.
3. O problema de valor de contorno (PVC) a seguir:
y y
y
x
xe e
y
y e
x
" '
( )
' ( )
+

'

2
2
0 0
1
2
pode ser modelado por meio do mtodo das diferenas finitas, usando diferena central
para aproximao das derivadas. Elaborar um programa que construa o sistema de
equaes lineares resultante, para um dado valor do passo h, encontre a soluo do
sistema e apresente os resultados.
4. O PVC a seguir:

2
2
2
2
0
0 100 0 0 3 0 2 0
V
x
V
y
V y V x V y V x
+

'

( , ) ; ( , ) ; ( , ) ; ( , )
descreve a distribuio de temperatura em uma placa plana de comprimento 3 e largura
2. Este problema pode ser modelado por meio do mtodo das diferenas finitas, usando
diferena central para aproximao das derivadas, considerando um passo h na
horizontal e um passo k na vertical. Elaborar um programa que construa o sistema de
equaes lineares resultante, para h = 0.5 e k = 0.25, encontre a soluo do sistema e
apresente os resultados.

You might also like