Sie sind auf Seite 1von 119

Clculo Numrico

Valentn Mendoza

UFV
Apresentacao
Estas notas de aula de Calculo Numerico foram escritas no semestre 2013-II quando
ministrei esta disciplina para os estudantes da Universidade Federal de Vicosa. Em
princpio foram apresentados em forma de 6 apostilas, cada uma correspondendo a um
captulo do conteudo. Agora serao apresentadas juntas acrescentando os exerccios
de cada topico.
O objetivo ao escreve-las e proporcionar ao aluno os principais conceitos da analise
numerica que lhe permitam resolver os problemas que se lhe apresentarao no decorrer
de sua atividade de trabalho. Tivemos especial interesse em apresentar a deducao dos
metodos, seguindo as ideias gerais nas quais esta baseado cada uma das tecnicas
aqui mostradas.
Nao esta demais dizer que toda a tecnologia de nosso tempo esta muito ligada ao
Calculo Numerico. Sem ele seria impossvel calcular as probabilidades da distribuicao
normal, resolver equacoes de difusao, trabalhar com dinamica de fluidos, governar o
movimento de robots, etc. Pois existem modelos de fenomenos fsicos, economicos,
biologicos, etc, que sao analticamente insoluveis, ou cuja solucao e tao complicada
como para utiliza-la para fins praticos. Nesses casos o Calculo Numerico constitui-se a
unica ferramenta para aborda-los e para obter solucoes aceitaveis. Por isso, se o aluno
sente que a disciplina e um pouco entediante quando utiliza a calculadora para realizar
contas sobre contas num determinado exerccio, deve ser consciente que isso e um
pequeno preco a pagar pelo conhecimento e a praxis que adquirira e que, na hora das
aplicacoes, serao inestimaveis.
Fico devendo a parte computacional sem a qual a potencia do Calculo Numerico
nao e apreciada.
Acredito que este trabalho contenha alguns erros, mas estes seriam muitos mais
se nao fosse pelas correicoes que alguns dos alunos fizeram ao texto inicial. Gostaria
de agradecer a Daniela Abrantes Leal, Beatryz Cardoso Mendes, Gabriel de Rezende
Coelho, Franco Luiz Alves e Marcus Vinicius Miranda, que me indicaram alguns erros
tipograficos ou de conteudo, e do monitor Michael Caneshe quem corrigiu muitos dos
exerccios propostos. Mas a pesar do dedicado esforco deles, escaparam-se algumas
coisas que podem ser melhoradas. Por isso, se o leitor tiver comentarios, crticas e su-
gestoes pode encaminha-las ao email valentin@ufv.br. Serei grato a quem comunicar
os erros de qualquer natureza encontrados no texto.

Vicosa, marco de 2015.


J. Valentn Mendoza M.

2
Sumario

1 Metodos numericos para a solucao de equacoes 5


1.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 O Metodo de Bissecao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Estimativa do numero de iteracoes . . . . . . . . . . . . . . . . . . . 8
1.4 Metodo da Falsa Posicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1 Erro Absoluto no metodo da Falsa Posicao . . . . . . . . . . . . . . 10
1.4.2 Erro Relativo no metodo da Falsa Posicao . . . . . . . . . . . . . . . 10
1.5 O Metodo das Aproximacoes Sucessivas . . . . . . . . . . . . . . . . . . . . 11
1.6 O Metodo de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.1 Convergencia do Metodo de Newton . . . . . . . . . . . . . . . . . 15
1.7 Metodo da Secante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.8 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2 Interpolacao Polinomial 22
2.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3 A Formula de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4 A Formula de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3 Resolucao Numerica de Sistemas Lineares 34


3.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.1 Sistemas Triangulares Inferiores . . . . . . . . . . . . . . . . . . . . 34
3.2.2 Sistemas Triangulares Superiores . . . . . . . . . . . . . . . . . . . . 35
3.3 Metodo Direto: Decomposicao LU . . . . . . . . . . . . . . . . . . . . . . . 36
3.4 Metodo Iterativo: O metodo de Gauss-Seidel . . . . . . . . . . . . . . . . . 41
3.4.1 O Caso Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4.2 Criterios de Convergencia . . . . . . . . . . . . . . . . . . . . . . . . 44
3.4.3 Criterio de Parada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

4 Integracao Numerica 49
4.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.2.1 Estudo do Erro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Regra dos Trapezios. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.3.1 Limitante superior do erro na Regra do Trapezio . . . . . . . . . . . 53
4.3.2 Regra do Trapezio Generalizada . . . . . . . . . . . . . . . . . . . . 54
4.4 Regra 13 de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.4.1 Limitante superior para o Erro E2 na regra 1/3 de Simpson . . . . . 57
4.4.2 Regra 1/3 de Simpson Generalizada . . . . . . . . . . . . . . . . . . 60
4.5 Regra 38 de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.5.1 Limitante superior para o erro na regra 3/8 de Simpson . . . . . . . 63
4.5.2 Regra 3/8 de Simpson Generalizada . . . . . . . . . . . . . . . . . . 64
4.6 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

3
5 Resolucao Numerica de Equacoes Diferenciais Ordinarias 69
5.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.2 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.3 O Metodo de Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.4 Metodos de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.4.1 Metodos de Runge-Kutta de Ordem 2 . . . . . . . . . . . . . . . . . 75
5.4.2 Metodos de Runge Kutta de Ordem 3 . . . . . . . . . . . . . . . . . 78
5.4.3 O Metodo de Runge-Kutta de Ordem 4 . . . . . . . . . . . . . . . . 81
5.5 Sistemas de Equacoes Diferenciais Ordinarias . . . . . . . . . . . . . . . . . 82
5.5.1 Aplicacao a equacoes diferenciais de segunda ordem . . . . . . . . 84
5.6 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

6 Resolucao Numerica de Equacoes Diferenciais Parciais 90


6.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.2 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.2.1 Equacoes Diferenciais Parciais . . . . . . . . . . . . . . . . . . . . . 90
6.2.2 Aproximacoes da primeira e da segunda derivada . . . . . . . . . . 91
6.3 Equacoes Parabolicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.3.1 O modelo de Equacao Parabolica . . . . . . . . . . . . . . . . . . . . 92
6.3.2 Discretizacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.3.3 Metodo Explcito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.3.4 O Metodo Implcito . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.3.5 O Metodo de Crank-Nicolson . . . . . . . . . . . . . . . . . . . . . . 102
6.3.6 Condicoes de Fronteira de Neumann ou com Derivadas . . . . . . 106
6.4 Equacoes Elpticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.4.1 O modelo de Equacao Elptica . . . . . . . . . . . . . . . . . . . . . 110
6.5 Equacoes nao lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.6 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

4
1 Metodos numericos para a solucao de equacoes

1.1 Introducao
Muitos problemas em diferentes areas de conhecimento reduzem-se a solucao da equacao:

f (x) = 0 (1.1)

em que f : [a, b] R e uma funcao contnua. Um valor x que satisfaz f (x) = 0 e chamado
uma raiz ou um zero de f (x).
E conhecido que se f (x) for um polinomio de grau menor ou igual a 4 existe uma
formula algebrica para determinar todas as suas raizes; mas se f (x) for um polinomio de
grau maior ou igual a 5 ou uma funcao envolvendo funcoes transcendentais, nao existe
um metodo geral que permita encontrar exatamente as raizes da equacao f (x) = 0.

Exemplo 1.1. A figura abaixo mostra o sol na origem e a terra no ponto (1, 0). Existem
5 pontos de equilibrio, no plano determinado pela orbita da terra ao redor do sol, nos
quais um satelite permanece imovil em relacao a terra. Estes pontos sao chamados pontos
de Lagrange em honor ao matematico frances Joseph Louis Lagrange quem os descobriu
estudando o problema restrito dos tres corpos. Estes pontos sao obtidos quando as forcas
(gravitacionais, centrpetas ) que agem no satelite se contrabalancearem. Em dezembro
de 2005 o satelite de pesquisa solar SOHO (Solar and Heliospheric Observatory) foi
colocado no ponto L1 . Este ponto L1 e uma boa posicao para monitorar o sol desde que
as correntes de partculas do sol, como o vento solar, atingem L1 aproximadamente uma
hora antes de atingir a terra.
m2
Se m1 e a massa do sol, m2 e a massa da terra e r = m1 +m2 , entao a coordenada x de L1
e a unica raiz da equacao de grau 5:

p(x) = x5 (2 + r)x4 + (1 + 2r)x3 (1 r)x2 + 2(1 r)x + r 1 = 0

Usando o valor aproximado de r 3.04042 106 , encontre a localizacao do ponto


L1 .

Sol Terra

Figura 1: Pontos de Lagrange no sistema Sol-Terra.

5
Muitos problemas de ciencia e tecnologia, como o problema anterior, conduzem a
resolucao de equacoes nao lineares para as quais e difcil ou impossvel encontrar
uma solucao exata.

A solucao do problema anterior so e possvel utilizando um metodo numerico. No


que segue apresentaremos alguns metodos que nos ajudarao a resolver equacoes deste
tipo.

1.2 Preliminares
Um teorema que utilizaremos e o seguinte.

TEOREMA 1.1 (Teorema do Valor Intermediario (TVI)). Seja f (x) e uma funcao contnua
num intervalo [a, b]. Se f (a) f (b) < 0 entao existe pelo menos uma raiz x de f (x) = 0 entre a e b.

Em palavras, podemos garantir ao menos uma solucao da equacao f (x) = 0, desde


que as imagens dos extremos do intervalo [a, b] sejam de signais diferentes. Isto e, se
f (a) > 0 e f (b) < 0, ou se f (a) < 0 e f (b) > 0.

Exemplo 1.2. No exemplo 1.1, a funcao e

f (x) = p(x) = x5 (2 + r)x4 + (1 + 2r)x3 (1 r)x2 + 2(1 r)x + r 1.

Observe que f (0) = r 1 < 0 e f (1) = r > 0 entao, pelo TVI, existe uma raiz x no intervalo
[0, 1].

Outro resultado que precisaremos e o seguinte teorema:

TEOREMA 1.2 (Teorema do Valor Medio (TVM)). Seja f (x) uma funcao contnua em [a, b]
e diferenciavel no intervalo (a, b). Entao existe um ponto c (a, b) tal que

f (b) f (a) = f 0 (c)(b a).

O TVI e a ferramenta principal do primeiro metodo numerico.

1.3 O Metodo de Bissecao


Suponha f (x) contnua e que existe um intervalo [a, b] tal que f (a) f (b) < 0. Sem perda
de generalidade, podemos supor f (a) > 0 e f (b) < 0. Pelo TVI, existe uma raiz x de
f (x) = 0 entre a e b, que pode se qualquer ponto do intervalo [a, b]. Assim, temos pouca
informacao sobre o valor da raiz. A ideia do metodo de Bissecao e diminuir o tamanho
do intervalo [a, b] com o intuito de conseguir um intervalo menor no qual podemos
encontrar a raiz.
Como nao temos ideia da ubicacao da raiz, democraticamente, escolhemos como
primeira aproximacao de x, o ponto medio do intervalo:

a+b
x1 =
2

6
Figura 2: O Metodo da Bissecao.

Se por acaso obtemos que f (x1 ) = 0, entao o problema ficaria resolvido pois neste caso
x = x1 . Se f (x1 ) , 0 entao x encontra-se no interior de [a, x1 ] ou no interior de [x1 , b].
Para determinar em qual destes intervalos esta a raiz, utilizamos o TVI:

(i) Se f (a) f (x1 ) < 0 entao a raiz encontra-se em [a, x1 ],

(ii) Se f (x1 ) f (b) < 0 entao a raiz encontra-se em [x1 , b].

No caso (i), fazemos b = x1 e no caso (ii), fazemos a = x1 . Em qualquer caso, temos


diminuido o tamanho do intervalo a metade. Com este novo intervalo repetimos o
processo o obtemos uma segunda aproximacao x2 com a qual, se nao e a raiz, diminuimos
o intervalo novamente na metade. Dependendo do valor de f (x2 ) teremos a = x2 ou
b = x2 .
Continuando este processo obtemos uma sequencia de aproximacoes xn+1 , para
n = 0, 1, 2, ... que pertencem a intervalos In = [an , bn ] com a0 = a e b0 = b de forma que
f (an ) f (bn ) < 0 e o comprimento de cada Ii+1 e a metade do comprimento de Ii . Assim

bn1 an1 b0 a 0
bn an = = ... = . (1.2)
2 2n

e
an + bn
xn+1 = .
2
O seguinte Teorema mostra a convergencia das aproximacoes xn a raiz x.

TEOREMA 1.3. A sequencia de aproximacoes xn obtidas pelo Metodo da Bissecao converge para
a raiz x.

Demonstracao. Pela equacao (1.2) temos que

b0 a0
lim |bn an | = lim = 0.
n n 2n

Por tanto limn bn = limn an = L onde L e um numero real. Como an < xn+1 <

7
bn temos que limn xn = L. Provaremos que L = x. Observe que f (an ) f (bn ) < 0
entao
lim f (an ) f (bn ) = f (L) f (L) 0,
n

o que implica que ( f (L))2 0. Mas ( f (L))2 0. Assim a unica possibilidade e que
f (L)2 = 0, ou f (L) = 0. Dessa forma L = x. 

1.3.1 Estimativa do numero de iteracoes

Desejamos determinar quantas iteracoes sao necessarias como mnimo, para encontrar
um intervalo [an , bn ], que contenha a aproximacao xn+1 , tal que

|xn+1 x| < ,

em que  e o erro absoluto ao aproximar x. Pela equacao (1.2)

bn a n b0 a 0
|xn+1 x| xn+1 an = = n+1
2 2
Logo para obter a precisao desejada, e suficiente considerar um n tal que

b0 a0
<
2n+1
Assim,
Log(b0 a0 ) Log()
n> 1.
Log(2)

Observacao 1.1. Ao resolver um problema numericamente, nao esqueca de colocar a


calculadora no modo radianos.

Exemplo 1.3. Aplique o metodo de Bissecao para resolver a equacao x3 + cos(x) = 0


obtendo os extremos do intervalo inicial a e b pelo TVI. Encontre um resultado xn tal que
|xn x| < 0.01.

Solucao:

A funcao a avaliar e f (x) = x3 + cos(x). Note que f (1) = 0.45969 e f (0) = 1, assim
podemos considerar a = 1 e b = 0. Observe que precisaremos de

Log(0 + 1) Log(0.01)
n> 1 = 5.64
Log2

8
iteracoes para obter o erro desejado. Assim, e suficiente n = 6. Na seguinte tabela
organizaremos os dados:

n a b xn+1 f (a) f (b) f (xn+1 )


0 -1 0 -0.5 -0.45969 1 0.75258
1 -1 -0.5 -0.75 -0.45969 0.75258 0.309813
2 -1 -0.75 -0.875 -0.45969 0.309813 -0.02892
3 -0.875 -0.75 0 -0.8125 -0.02892 0.309813 0.1513
4 -0.875 -0.8125 -0.84375 -0.02892 0.1513 0.75258
5 -0.875 -0.84375 -.859375 -0.02892 0.75258 0.018240
6 -0.875 -0.859375 -0.8671875 -0.02892 0.018240 -0.00516

Em cada passo fomos utilizando o TVI para escolher os valores de a e b. Repare que

b6 a 6
|x7 x| = 0.00781 < 0.01.
2

Assim uma aproximacao da raiz e x7 = 0.8671875.

1.4 Metodo da Falsa Posicao


O metodo da Falsa Posicao e uma variacao do metodo da Bissecao. Neste metodo mu-
damos a forma de escolher a aproximacao xn+1 . Na Bisecao aproximavamos utilizando
o ponto medio do intervalo. Na Falsa posicao aproximaremos a raiz utilizando a reta L
que passa pelos pontos (a, f (a)) e (b, f (b)). Ou seja, f (x) e aproximada por L e assim x1 ,
a aproximacao de x, sera o ponto onde a ordenada y da reta L e zero.

Figura 3: O Metodo da Falsa Posicao.

A equacao da reta L e:
y f (a) f (b) f (a)
= .
xa ba
Se y = 0, entao x = x1 . Logo
0 f (a) f (b) f (a)
= .
x1 a ba

9
Assim
a f (b) b f (a)
x1 =
f (b) f (a)
Tendo x1 , podemos usar o mesmo criterio da Bissecao para escolher o novo intervalo
[a, b], isto e:

(i) Se f (a) f (x1 ) < 0 entao a raiz encontra-se em [a, x1 ],

(ii) Se f (x1 ) f (b) < 0 entao a raiz encontra-se em [x1 , b].

No caso (i) definimos b = x1 , e no caso (ii) definimos a = x1 . Logo, continuamos o


processo ate obter a precisao desejada, obtendo intervalos [an , bn ] com a0 = a e b0 = b e

an f (bn ) bn f (an )
xn+1 = . (1.3)
f (bn ) f (an )

O Metodo da Bissecao utiliza so a informacao dos valores a e b para encontrar xn+1 ,


entanto que a Falsa Posicao utiliza a informacao de a, b, f (a) e f (b).

1.4.1 Erro Absoluto no metodo da Falsa Posicao

No metodo da Falsa Posicao pode acontecer que an ou bn permanece fixo a partir de um


certo n, entao nao podemos garantir que bn an tende para 0. Por isso utilizaremos o
erro absoluto |xn+1 xn | <  como criterio de parada, onde  e a precisao dada.
Por tanto, o metodo para quando atingimos a desigualdade |xn+1 xn | < .

1.4.2 Erro Relativo no metodo da Falsa Posicao

Em alguns exemplos, o criterio de parada sera estabelecido pelo erro relativo. Se desejar-
mos um erro relativo menor que , o metodo para uma vez que atingimos a desigualdade

xn+1 xn < .

(1.4)
xn+1

Exemplo 1.4. Aplique o metodo da Falsa Posicao para resolver a equacao x3 + cos(x) = 0
com a = 1 e b = 0. Encontre um resultado xn+1 tal que |xn+1 xn | < 0.01.

Solucao:

Como f (x) = x3 + cos(x) e f (1) = 0.45969 e f (0) = 1, consideramos a = 1 e b = 0.


O metodo para se atingimos |xn+1 xn | < 0.01. Na seguinte tabela organizaremos os
dados:

10
n a b xn+1 f (a) f (b) f (xn+1 )
0 -1 0 -0.68507 -0.45969 1 0.45285
1 -1 -0.68507 -0.84135 -0.45969 0.45285 0.07089
2 -1 -0.84135 -0.86254 -0.45969 0.07089 0.00880
3 -1 -0.86254 -0.86512 -0.45969 0.00880 0.00106

Em cada passo, uma vez calculado xn+1 , utilizamos o TVI para escolher o intervalo
[a, b]. Note que
|x4 x3 | 0.00262 < 0.01.

Assim uma aproximacao da raiz e x4 = 0.86512.

Observacao 1.2. Em todos os metodos que seguem aplicamos um dos dois criterios
de parada:

(i) Erro absoluto: se |xn+1 xn | < ;

(ii) Erro relativo: se | xn+1 xn


xn+1 | < .

1.5 O Metodo das Aproximacoes Sucessivas


Seja f (x) : [a, b] R uma funcao contnua. O metodo de Aproximacoes Sucessivas ou
Metodo do Ponto Fixo consiste em escrever a equacao f (x) = 0 na forma

x = (x) (1.5)

em que (x) e uma funcao contnua. Desse modo, achar uma raiz x que satisfaca f (x) = 0
e equivalente a achar um x tal que x = (x).

Exemplo 1.5. Encontre uma funcao (x) tal que a equacao x = (x) seja equivalente a
equacao x3 13 = 0.

Solucao:

Neste exemplo f (x) = x3 13. Existem varias maneiras de resolver o problema:


q
(i) Escreva x3 13 = 0 na forma x2 = 13x e entao isole x na esquerda x = 13
x . Por
q
tanto (x) = 13 x.

(ii) Escreva x3 13 = 0 na forma 3x3 = 2x3 + 13. Divida entre 3x2 para obter

11
2x3 +13 2x3 +13
x= 3x2
. Neste caso (x) = 3x2
.

Do exemplo anterior e claro que existem muitas, na verdade infinitas, maneiras de definir
uma funcao (x). Se temos escolhido uma destas funcoes e um ponto x0 [a, b],
construa a sequencia
xn+1 = (xn ) (1.6)

Se por acaso a sequencia {xn } convergir para um numero x , isto e, limn xn = x , entao
temos que
lim xn+1 = lim (xn ).
n n

Como e contnua,
lim xn+1 = ( lim xn ),
n n

o que implica x = (x ). Pela definicao da , segue que f (x ) = 0, ou seja, x = x .

A analise anterior mostra que podemos encontrar x usando a sequencia {xn } da


equacao (1.6), desde que o limite limn xn exista.

O seguinte Teorema fornece condicoes para que o limite limn xn exista.

TEOREMA 1.4. Seja (x) uma funcao contnua e diferenciavel num intervalo [a, b] no qual
vale
|0 (x)| < 1. (1.7)

tal que a equacao f (x) = 0 seja equivalente a equacao x = (x). Entao, dado x0 [a, b], a
sequencia de iteracoes xn+1 = (xn ) converge para a raiz x de f (x) = 0.

Demonstracao. Seja x satisfazendo x = (x) ou f (x) = 0. Pelo Teorema do Valor


Medio, para cada n existe um cn (x, xn ) tal que

|(xn ) (x)| = |0 (cn )||xn x|.

Como |0 (x)| < 1 para todo x [a, b] temos que |0 (cn )| M, para um certo 0 < M < 1.
Pela definicao xn+1 = (xn ), isto implica que

|xn+1 x| M|xn x|.

Continuando este processo temos:

|xn+1 x| M|xn x| M2 |xn1 x| . . . Mn+2 |x0 x|.

12
Por tanto
lim |xn+1 x| lim Mn+2 |x0 x| = 0
n n

pois M < 1. Entao,


lim |xn+1 x| = 0
n

o que implica limn xn+1 = x. 

Observacao 1.3. Pelo Teorema 1.4 devemos escolher uma que satisfaca:

|0 (x)| < 1. (1.8)

Exemplo 1.6. A funcao f (x) = xex e3 possui exatamente uma raiz x em [0.01, 1].
Encontre esta raiz pelo metodo de Aproximacoes Sucessivas, utilizando um erro absoluto
menor que 0.01.

Solucao:

Escreva a equacao xex e3 = 0 na forma xex = e3 , entao divida entre ex para


obter x = ex3 . Assim (x) = ex3 e 0 (x) = ex3 . Como 0.01 x 1 temos
2.99 x 3 2 e entao
e2.99 ex3 e2 ,

pois ex3 e uma funcao crescente. Logo, |0 (x)| e2 0.1353 < 1. Entao (x)
satizfaz as condicoes do Teorema 1.4. Considere o ponto x0 = 0.5, entao

x1 = (x0 ) = (0.5) = e0.53 = 0.08208.

Continuamos calculando os valores pela formula xn+1 = (xn ) na seguinte tabela:

n xn
0 0.5
1 0.08208
2 0.05404
3 0.052551

Observe que |x3 x2 | = 0.00148 < 0.01. A solucao aproximada e x3 = 0.052551.

13
1.6 O Metodo de Newton
A ideia para encontrar uma raiz da equacao f (x) = 0 em todos os metodos numericos
e comecar com uma (ou mais) aproximacao inicial x0 e entao determinar a seguinte
aproximacao seguindo uma regra dada. No metodo de Newton usa-se a reta tangente
para achar a segunda aproximacao. Isto e feito da seguinte maneira.
Seja f : [a, b] R uma funcao contnua em [a, b] e diferenciavel em (a, b), e seja
x0 (a, b) uma aproximacao inicial da raiz x. A reta tangente no ponto (x0 , f (x0 )) usa-se
para determinar a seguinte aproximacao. Assim a nova aproximacao sera entao o valor
de x1 no qual a ordenada da reta tangente e zero.

Reta tangente

Figura 4: O metodo de Newton.

A equacao da reta tangente no ponto (x0 , f (x0 )) e:

y f (x0 )
= f 0 (x0 ).
x x0

Substituindo as condicoes x = x1 e y = 0 temos:

0 f (x0 )
= f 0 (x0 ).
x1 x0

Isolando x1 , obtemos a formula do metodo de Newton no ponto x0 :

f (x0 )
x1 = x0 .
f 0 (x0 )

Uma vez calculado x1 podemos fazer o mesmo processo para achar outra aproximacao
x2 a partir de x1 . E claro que a formula para x2 e:

f (x1 )
x2 = x1 .
f 0 (x1 )

14
Em forma geral, a aproximacao (n + 1)-esima e dada por

f (xn )
xn+1 = xn . (1.9)
f 0 (xn )

1.6.1 Convergencia do Metodo de Newton

O seguinte Teorema garante a convergencia do Metodo de Newton.

TEOREMA 1.5. Sejam f (x), f 0 (x) e f 00 (x) contnuas num intervalo I = [a, b] que contem a raiz
x e suponha que f 0 (x) , 0. Entao existe um intervalo I I, contendo a raiz x tal que se x0 I ,
entao a sequencia {xn } gerada pela formula

f (xn )
xn+1 = xn
f 0 (xn )

convergira para a raiz.

Demonstracao. Observe que o metodo de Newton e um caso particular do


f (x)
metodo das Aproximacoes sucessivas com (x) = x f 0 (x) pois xn+1 = (xn ).
Assim, pelo Teorema 1.4, o metodo convergira se |0 (x)| < 1. Note que

f (x) f 00 (x)
0 (x) =
[ f 0 (x)]2

Como f (x) = 0, temos 0 (x) = 0. Pela continuidade de f, f 0 e f 00 , existe um


intervalo I I contendo x, no qual |0 (x)| < 1 para x I . 

Observacao 1.4. O Teorema anterior diz que se comecarmos com um ponto x0 proximo
da raiz x, entao o Metodo de Newton convergira para x.

Exemplo 1.7. Considere a equacao nao linear x2 ex = 0. Use o metodo de Newton para
resolve-la considerando uma aproximacao inicial de x0 = 2 e um erro absoluto menor
que 0.001.

Solucao:

Dos dados do problema f (x) = x2 ex e f 0 (x) = 2x ex . Usando a formula

f (xn )
xn+1 = xn ,
f 0 (xn )

15
escreveremos as iteracoes na tabela abaixo:

n xn f (xn ) f 0 (xn )
0 -2 3.86466 -4.13533
1 -1.06545 0.79061 -2.47547
2 -0.74607 0.08239 -1.96636
3 -0.70417 0.00133 -1.90285
4 -0.70347 0.000004 -1.90180

Repare que |x4 x3 | = 0.0007 < 0.001. Assim um valor aproximado da raiz e
x4 = 0.70347.

1.7 Metodo da Secante


O Metodo de Newton precisa da avaliacao da derivada f 0 (x) nos pontos xn que, depen-
dendo da funcao f (x), pode ser muito custosa. O Metodo da Secante surgue como uma
alternativa ao metodo de Newton no qual nao e necessario avaliar a derivada da funcao.
A ideia e substituir a expressao f 0 (xn ) na formula de Newton por uma aproximacao
dela. Suponha que conhecemos duas aproximacoes x0 e x1 da raiz x. Pelo metodo de
Newton
f (x1 )
x2 = x1 .
f 0 (x1 )
Se nao querermos derivar f , podemos aproximar a derivada f 0 (x1 ) pela inclinacao da
reta que passa pelos pontos (x0 , f (x0 )) e (x1 , f (x1 )):

f (x1 ) f (x0 )
f 0 (x1 ) .
x1 x0

Dessa forma:
f (x1 )
x2 = x1 h f (x ) f (x ) i
1 0
x1 x0

Simplificando
x0 f (x1 ) x1 f (x0 )
x2 = .
f (x1 ) f (x0 )

Fazendo a mesma analise para x1 e x2 , obteremos uma formula para x3

x1 f (x2 ) x2 f (x1 )
x3 = .
f (x2 ) f (x1 )

Em geral, a aproximacao xn+1 depende de xn1 e xn :

xn1 f (xn ) xn f (xn1 )


xn+1 = . (1.10)
f (xn ) f (xn1 )

16
Figura 5: O Metodo da Secante.

Observacao 1.5. A formula do Metodo da Secante e do metodo da Falsa Posicao e


a mesma. A diferenca entre estes dois metodos e que no Metodo da Secante nao e
necessario que os valores iniciais tenham signais opostos.

Exemplo 1.8. Utilize o Metodo da Secante para determinar uma raiz da equacao x3
9x + 3 = 0, em [0, 1] com erro relativo menor que 103 .

Solucao:

Neste exemplo x0 = 0, x1 = 1 e f (x) = x3 9x + 3. Na tabela abaixo estao os valores


de xn e f (xn ). Em cada passo xn+1 e dado pela formula

xn1 f (xn ) xn f (xn1 )


xn+1 = .
f (xn ) f (xn1 )

n xn1 xn xn+1 f (xn1 ) f (xn ) f (xn+1 )


1 0 1 0.375 3 -5 -0.32226
2 1 0.375 0.33194 -5 -0.32226 0.04911
3 0.375 0.33194 0.33763 -0.32226 0.04911 -0.00018
4 0.33194 0.33763 0.33760 0.04911 -0.00018 -0.00007


O erro relativo para x5xx
5
4
= 0.00088 e menor que o erro procurado e assim uma
aproximacao da raiz e x5 = 0.33760.

17
1.8 Exerccios
Exerccio 1.1. Localize graficamente as raizes da equacao ln(x) + 5x 6 x2 = 0. Separe
cada uma delas em intervalos de comprimento maximo unitario.

Exerccio 1.2. Localize graficamente as razes das equacoes:

x
(a) 4 cos(x) e2x = 0; (b) tan(x) = 0;
2

(c) 1 x ln(x) = 0; (d) 2x 3x = 0.

Exerccio 1.3. Considere a equacao f (x) = xex 1.

(a) Mostre que a equacao possui uma raiz no intervalo [0.5, 1].

(b) Qual e o numero mnimos de iteracoes necessarias para se obter uma aproximacao
da raiz com duas casas decimais corretas, usando o Metodo da Bissecao?

(c) Se (xk ), k = 0, 1, 2, 3, .. e a sequencia de aproximacoes para a solucao da equacao


f (x) = 0 atraves do Metodo da Bisecao, determine o valor aproximado de |x4 x3 |.

Exerccio 1.4. Aplique o Metodo de Bissecao e da Falsa Posicao para calcular a raiz positiva
de x3 15 = 0 com erro absoluto  < 0, 01, partindo do intervalo [2.00, 3.00].

Exerccio 1.5. Aplique o Metodo de Bissecao para resolver:

(a) ex x 3x2 = 0; (b) x3 + cos(x) = 0

obtendo os extremos do intervalo inicial a e b graficamente. Encontre um resultado xn


tal que |x xn | < 0, 01.

Exerccio 1.6. Calcular a raiz de 2x3 cos(x + 1) 3 = 0, pertencente ao intervalo [1, 2],
com precisao de 0.01 usando o Metodo de Bissecao com no maximo 10 passos. Verifique
quantos passos no mnimo sao necessarios para ter uma precisao de 108 .

Exerccio 1.7. Dado o polinomio p(x) = x3 + 2x2 + x 2, faca o que se pede:

(a) Determine o intervalo onde todos os zeros do polinomio devem estar.

(b) Encontre uma aproximacao para uma das razes de p(x) = 0, com precisao de sete
casas decimais, usando o Metodo de Newton com no maximo 10 passos e x0 = 1.

Exerccio 1.8. Faca o exerccio anterior usando o polinomio p(x) = x3 + 4x2 + x 2.

Exerccio 1.9. Considere a funcao f (x) = x3 x 1. Resolva a equacao f (x) = 0 pelo


Metodo de aproximacoes sucessivas usando a funcao de iteracao (x) = 1
x + 1
x2
e x0 = 1.
Justifique seus resultados.

18
Exerccio 1.10. As razes de f (x) = ln(x) x + 2 podem ser determinadas usando o
processo iterativo na forma xk+1 = (xk ), i = 1, 2, .... Encontre as razes considerando:

(a) (x) = 2 + ln(x); (b) (x) = ex2 .

Exerccio 1.11. A funcao f (x) = xex e3 , x R, possui exatamente duas razes reais:
1 [0.01, 1] e 2 [4, 5]. Considere as funcoes 1 (x) = ex3 e 2 (x) = ln x + 3.

(a) 1 pode ser usada para aproximar 1 pelo metodo das aproximacoes sucessivas
com garantia de convergencia? E 2 ?. Justifique.

(b) 1 pode ser usada para aproximar 2 pelo metodo das aproximacoes sucessivas
com garantia de convergencia? E 2 ?. Justifique.

Exerccio 1.12. Mostre que x3 2x2 5 sin(x) = 0 tem apenas uma raiz real e determine
seu valor correto ate 5 casas decimais usando o Metodo de Newton, com no maximo 6
iteracoes. Considere x0 = 2.1.

Exerccio 1.13. Mostre que a formula para determinar a raiz cubica de Q,

1 Q
xn+1 = (2xn + 2 ), n = 0, 1, ....
3 xn

e um caso especial do Metodo de Newton. Aplique o metodo para calcular a raiz cubica
de 2 com precisao de 102 usando o erro relativo. Considere x0 = 1.

Exerccio 1.14. Calcular as duas razes de sin(x) ex 2x2 + 10 = 0 usando o Metodo de


Newton, com a precisao de |xn+1 xn | 105 e no maximo 10 passos.

Exerccio 1.15. Localize os zeros do polinomio p(x) = x5 10


9 x + 21 . Usando o Metodo de
3 5

Newton, encontre as razes nao nulas de p(x) = 0 com precisao de 6 casas decimais.

Exerccio 1.16. Utilizando o Metodo de Newton e chamando de (xk ), k = 0, 1, 2, ... a


sequencia de aproximacoes para a solucao da equacao tan(x) 2x = 0 no intervalo
[1, 1.5], com x0 = 1.3, encontre um valor aproximado de |x5 x4 | 107 .

Exerccio 1.17. Considere a equacao nao-linear x2 ex = 0. Use o Metodo de Newton para


resolve-la considerando uma aproximacao inicial x0 = 2 e precisao menor que  = 101 .
Use arredondamento e 4 casas decimais apos a vrgula.

Exerccio 1.18. Utilizando o Metodo de Newton e chamando de (xk ), k = 0, 1, 2, ... a


sequencia de aproximacoes para a solucao da equacao x3 + x = 0 no intervalo
[1, 2], com x0 = 1.3 e = 3, encontre um valor aproximado de |x5 x4 | 107 .

Exerccio 1.19. Alem da solucao obvia x = 0, a equacao

x sin(x) + 3x cos(x) 2x = 0

19
tem duas solucoes no intervalo [1, 2], sendo uma positiva e a outra negativa. Sejam
(Sk ) e (Pk ), k = 1, 2, ... as sequencias de aproximacoes para as razes de f (x) obtidas pelo
Metodo da Secante e da Falsa Posicao, respectivamente. Considerando S1 = P1 = 1 e
S2 = P2 = 1.5, encontre o valor aproximado de |S5 P5 | 100.

Exerccio 1.20. Utilize o Metodo da falsa posicao para determinar a raiz da equacao x log(x)
1 = 0, em [2, 3] com  = 104 .

Exerccio 1.21. Utilize o Metodo da falsa posicao para determinar a raiz da equacao x3
9x + 3 = 0, em [0, 1] com  = 104 .

Exerccio 1.22. Utilize o Metodo da secante para determinar a raiz da equacao x3 9x+3 = 0,
em [0, 1] com  = 104 .

Exerccio 1.23. Considere um portico em L invertido como na figura onde K e o coefici-


ente de mola torsional. Encontre o valor do angulo de equilibrio quando aplicamos
uma forca P no extremo do portico. Resolva o problema com K = 1, L = 2 e P = 2.

Figura 6: Portico em L.

Exerccio 1.24. Use o Metodo de Newton para determinar o ponto de mnimo global do
polinomio abaixo, se existir tal ponto.

p(x) = x(x 1)(x + 1)(x 2) (1.11)

Atencao: Primeiro verifique se existe ou nao um ponto de mnimo global (isto e, um


ponto R tal que p() p(x), x R). Depois isole os possveis candidatos (se
existirem) e so entao calcule, pelo metodo pedido, o ponto de mnimo global.

Exerccio 1.25. Verifique que a sequencia

p1 A
xn+1 = ( )xn + p1 (1.12)
p pxn

p
4
pode ser utilizada para calcular A. Depois determine 9 com erro menor a 106 .

20
Exerccio 1.26. Na figura, o comprimento da corda AB e de 4 cm e o comprimento do
arco AB e de 5 cm. Encontre o angulo central , em radianos, correto ate a quarta casa
decimal.

Figura 7: Corda e Arco.

Exerccio 1.27. Um tanque tem a forma de um cilindro reto, com raio igual a 1 e compri-
mento l. Sua lateral (circular) e transparente e atraves dela podemos observar o nvel do
liquido no cilindro (deitado). A porcentagem do liquido no fluido pode ser obtida em
funcao do angulo (veja a figura). Por exemplo, o cilindro esta cheio quando = e pela

metade para = 2. Calcule com erro menor de 103 o valor de para o qual o cilin-
dro tem um quarto de seu volume cheio, atraves do metodo de Aproximacoes sucessivas.
Justifique todos os passos de forma a garantir a convergencia.

Figura 8: Lateral do cilindro.

Exerccio 1.28. Um fabrica possui material para confeccao de uma lata cilndrica com
area total de superfcie de 800 cm2 . Deseja-se uma lata com esta area de superfcie e
volume de 1 litro. Determine atraves de um Metodo de Aproximacoes Sucessivas qual o raio
da lata e sua correspondente altura. Efetue 3 iteracoes do metodo e estime o numero
de iteracoes necessarias para um erro menor que 105 . Justifique a convergencia do
metodo. (Obs: deseja-se a lata mais alta...)
Exerccio 1.29. No exemplo (1.1), utilizando o Metodo de Newton , determine a posicao
do Satelite SOHO. Utilize um erro absoluto menor que 1010 !.

21
2 Interpolacao Polinomial

2.1 Introducao
Num sentido amplo, interpolar significa obter informacao sobre um evento ou fenomeno
a partir de dados conhecidos. Em nosso caso, queremos obter informacao sobre uma
certa funcao f (x) para a qual so conhecemos o seu valor yi = f (xi ), i = 0, ..., n em n + 1
pontos denotados
x0 < x1 < .... < xn .

Como nao conhecemos a expressao da f , podemos tentar encontrar uma funcao g(x) que
satisfaca as mesmas condicoes da f (x), ou seja,

g(xi ) = f (xi ) = yi , para todo i = 0, ..., n.

Isto e, desejamos encontrar uma funcao g(x) que coincida com f (x) pelo menos nos
pontos xi . A ideia e que g(x) possa substituir a f (x).

Figura 9: g(x) coincide com f (x) nos pontos xi , i = 0, 1, ..., n.

Existem varias justificativas para procurar uma funcao g(x) que substitua a funcao
f (x):

(a) Pode ser que nao conhecemos f (x) exceto nos pontos xi , entao se encontrar-
mos uma funcao g(x) que coincide com ela nestes pontos, podemos supor g
aproxima f , ou que g comporta-se como f .

(b) Outra razao e quando conhecemos f (x), mas a sua expressao e difcil de
trabalhar, por exemplo, de derivar ou integrar. Entao se g coincide com f pelo
menos nos pontos xi , podemos fazer as contas com g ao inves de com f .

22
Um exemplo no qual podemos usar interpolacao e o seguinte.
Exemplo 2.1. A tabela abaixo mostra a populacao (em milhoes) do Brasil de 1960 a 2010.

Ano 1960 1970 1980 1990 2000 2010


Populacao 72.7759 96.0604 121.7404 149.6483 174.5049 195.2102

Seja f (x) a populacao do Brasil no ano x. O problema a ser resolvido e o seguinte:


Estime a populacao nos anos 1955, 1975 e 2012.

DEFINICAO 2.1. A interpolacao denomina-se Interpolacao Polinomial se a funcao g(x)


e um polinomio.

Note que um polinomio esta definido em toda a reta real R e, alem disso, e facil de
derivar e integrar.

No que segue, a interpolacao sera sempre polinomial.

2.2 Preliminares
A pergunta natural entao e: E possvel encontrar um polinomio que interpola f (x) nos
pontos x0 , x1 , ..., xn ? Ou seja, dados (n + 1)-pontos distintos x0 , x1 , ..., xn e suas respectivas
imagens yi = f (xi ), i = 0, 1, ..., n, existira um polinomio g(x) = P(x) tal que P(xi ) = yi ?
O Teorema abaixo fornece uma resposta a pergunta anterior.
TEOREMA 2.1. Seja f (x) definida em x0 , x1 , ..., xn (n + 1) pontos distintos de um intervalo
[a, b], entao existe um unico polinomio P(x) de grau menor ou igual a n tal que P(xi ) = f (xi ) = yi ,
para todo i = 0, 1, ..., n.

Demonstracao. Considere um polinomio de grau n da forma

P(x) = a0 + a1 x + a2 x2 + ... + an xn .

Sob a hipotese P(xi ) = yi temos:

a0 + a1 x0 + ... + an xn0 = y0
a0 + a1 x1 + ... + an xn1 = y1
.. (2.1)
.
a0 + a1 xn + ... + an xnn = yn

Isto e, se o sistema linear anterior tem solucao entao podemos encontrar um P(x) que

23
interpola f (x) tal que os coeficientes de P(x) sao precisamente os valores da solucao
do sistema. Logo, e suficiente provar que o sistema tem solucao unica.
De fato, a matriz do sistema e:

...

1 x0 xn0
... xn1

1 x1
A = .. .. .. ..

.


. . .

1 xn ... xnn

e, de algebra linear, podemos provar que o determinante do sistema e:

n
Y
Det(A) = (xi x j ) (2.2)
i>j

Como xi , x j , se i , j, Det(A) , 0. Por tanto o sistema tem solucao unica. Dessa


forma o polinomio P(x) que interpola f (x) e unico. 

DEFINICAO 2.2. O polinomio P(x) do Teorema 2.1 e chamado Polinomio Interpolante


de f (x) nos pontos x0 , x1 , ..., xn .

Pelo Teorema 2.1, podemos obter os coeficientes do polinomio interpolante resol-


vendo o sistema linear (2.1). Mas, se n e grande, a resolucao de um sistema linear
n n pode ser muito custosa em relacao ao tempo computacional utilizado. Assim,
e necessario utilizarmos outros metodos para determinar P(x) como a Formula de
Lagrange e a Formula de Newton.

2.3 A Formula de Lagrange


Para definir a formula de Lagrange do polinomio interpolante P(x) precisamos dos
polinomios de Lagrange que sao definidos abaixo.

DEFINICAO 2.3. Sejam x0 , x1 , ..., xn , (n + 1) pontos distintos. Seja k {0, .., n}. O k-esimo
polinomio de Lagrange Lk (x) e definido por:
Y x x 
i (x x0 )(x x1 ) (x xk1 )(x xk+1 ) (x xn )
Lk (x) = =
xk xi (xk x0 )(xk x1 ) (xk xk1 )(xk xk+1 ) (xk xn )
i,k

Os polinomios de Lagrange tem a seguinte propriedade:

24
(A) Lk (xk ) = 1 e Lk (xi ) = 0, se i , k. De fato, substituindo x = xk , o numerador e o
denominados sao iguais e assim Lk (xk ) = 1. Por outro lado, substituindo x = xi
com i , k, vemos que o numerador anula-se no fator (x xi ), e assim Lk (xi ) = 0.

DEFINICAO 2.4. Sejam yi = f (xi ). Entao o polinomio de Lagrange de f (x) e dado por

P(x) = y1 L1 (x) + y2 L2 (x) + + yn Ln (x).

Pela propriedade (A), a avaliacao de P(x) em x = xi e:

P(xi ) = y1 L1 (xi ) + y2 L2 (xi ) + + yn Ln (xi ) = yi Li (xi ) = yi = f (xi ),

para todo i {0, 1, ..., n}. Entao P(x) interpola f (x), e pela unicidade do Teorema 2.1, P(x)
e o polinomio interpolante de f (x) nos pontos x0 , x1 , , xn

Por tanto, a formula de Lagrange:

P(x) = y1 L1 (x) + y2 L2 (x) + + yn Ln (x).

fornece uma maneira direta de calcular o polinomio interpolante.

Exemplo 2.2. A seguinte tabela mostra a populacao (em milhoes) mundial de 1970 a
2000.
Ano 1970 1980 1990 2000
Populacao 3710 4450 5280 6080

Encontre um polinomio interpolador de grau 3 e estime a populacao nos anos 1985


e 1995.

Solucao:
Dos dados, x0 = 1970, x1 = 1980, x2 = 1990 e x3 = 2000; y0 = 3710, y1 = 4450,
y2 = 5280 e y3 = 6080. Definimos os polinomios de Lagrange:

(x x1 )(x x2 )(x x3 ) (x 1980)(x 1990)(x 2000)


L0 (x) = =
(x0 x1 )(x0 x2 )(x0 x3 ) (1970 1980)(1970 1990)(1970 2000)

(x x0 )(x x2 )(x x3 ) (x 1970)(x 1990)(x 2000)


L1 (x) = =
(x1 x0 )(x1 x2 )(x1 x3 ) (1980 1970)(1980 1990)(1980 2000)
(x x0 )(x x1 )(x x3 ) (x 1970)(x 1980)(x 2000)
L2 (x) = =
(x2 x0 )(x2 x1 )(x2 x3 ) (1990 1970)(1990 1980)(1990 2000)
(x x0 )(x x1 )(x x2 ) (x 1970)(x 1980)(x 1990)
L3 (x) = =
(x3 x0 )(x3 x1 )(x3 x2 ) (2000 1970)(2000 1980)(2000 1990)

25
O polinomio interpolante e:

P(x) = 3710L0 (x) + 4450L1 (x) + 5280L2 (x) + 6080L3 (x).

A populacao estimada no ano 1985 sera

P(1985) = 3710L0 (1985) + 4450L1 (1985) + 5280L2 (1985) + 6080L3 (1985).

P(1985) = 3710(0.0625) + 4450(0.5625) + 5280(0.5625) + 6080(0.0625) = 4861.25.

Entao a populacao estimada no ano 1985 e de 4861.25 milhoes.


Dado real: Em 1985 a populacao mundial atingiu os 5000 milhoes de pessoas.

2.4 A Formula de Newton


A Formula de Newton para determinar o polinomio interpolante de f (x) e uma formula
mais eficiente que a de Lagrange, pois precisa de menos custo computacional. A ideia
de Newton foi escrever o polinomio interpolante P(x) na forma

P(x) = b0 + b1 (x x0 ) + b2 (x x0 )(x x1 ) + + bn (x x0 )(x x1 ) (x xn1 ), (2.3)

em que os coeficientes b0 , b1 , , bn devem ser determinados. Esta formula precisa da


definicao das diferencas divididas.
Seja f uma funcao definida em (n + 1)-pontos x0 , x1 , , xn nos quais yi = f (xi ).

DEFINICAO 2.5. As diferencas divididas de ordem 0, sao os valores da propria funcao


f (x), ou seja,
f [xi ] := f (xi ), i = 0, 1, 2, ..., n

As diferencas divididas de ordem k, para 0 k n, sao definidas utilizando as


diferencas de ordem k 1:

f [xi+1 , , xi+k ] f [xi , , xi+k1 ]


f [xi , xi+1 , , xi+k ] = , para 0 i n k
xi+k xi

Por exemplo se n = 3, as diferencas divididas de ordem 0 de f para os valores


x0 , x1 , x2 , x3 sao:

f [x0 ] = f (x0 ), f [x1 ] = f (x1 ), f [x2 ] = f (x2 ), f [x3 ] = f (x3 ),

as de ordem 1:
f [x1 ] f [x0 ] f [x2 ] f [x1 ] f [x3 ] f [x2 ]
f [x0 , x1 ] = , f [x1 , x2 ] = , f [x2 , x3 ] = ,
x1 x0 x2 x1 x3 x2

26
as de ordem 2:
f [x1 , x2 ] f [x0 , x1 ] f [x2 , x3 ] f [x1 , x2 ]
f [x0 , x1 , x2 ] = , f [x1 , x2 , x3 ] = ,
x2 x0 x3 x1

e as de ordem 3:
f [x1 , x2 , x3 ] f [x0 , x1 , x2 ]
f [x0 , x1 , x2 , x3 ] = .
x3 x0
Podemos organizar as diferencas divididas numa tabela, de modo que as diferencas
divididas de ordem 1 sao calculadas a partir das diferencas de ordem 0, as de ordem 2 a
partir das de ordem 1, e assim sucessivamente.

xi yi ordem 0 ordem 1 ordem 2 ordem 3


x0 y0 f [x0 ]
f [x0 , x1 ]
x1 y1 f [x1 ] f [x0 , x1 , x2 ]
f [x1 , x2 ] f [x0 , x1 , x2 , x3 ]
x2 y2 f [x2 ] f [x1 , x2 , x3 ]
f [x2 , x3 ]
x3 y3 f [x3 ]

Observacao 2.1. Uma propriedade facil de verificar das diferencas divididas e que
estas nao se alteram se permutamos dois valores xi e x j , por exemplo:

f [x1 , x2 ] = f [x2 , x1 ],

f [x1 , x2 , x3 ] = f [x2 , x1 , x3 ] = f [x2 , x3 , x1 ]

Como P(x) e o polinomio interpolante:

P(x0 ) = f (x0 ), P(x1 ) = f (x1 ), , P(xn ) = f (xn ).

Pela igualdade (2.3) temos que P(x0 ) = b0 . Entao

b0 = P(x0 ) = f (x0 ) = f [x0 ].

Assim foi provado que o coeficiente b0 deve ser igual a diferenca dividida f [x0 ]. Da
mesma forma, da igualdade (2.3), P(x1 ) = b0 + b1 (x1 x0 ), ou, equivalentemente,

P(x1 ) b0 f (x1 ) f (x0 ) f [x1 ] f [x0 ]


b1 = = = = f [x0 , x1 ].
x1 x0 x1 x0 x1 x0

Isto e, b1 e a primeira diferenca de ordem 1. Continuando com a mesma ideia, como


f (x0 ) = P(x2 ) = b0 + b1 (x2 x0 ) + b2 (x2 x0 )(x2 x1 ), temos que

f [x2 ] = f [x0 ] + f [x0 , x1 ](x2 x0 ) + b2 (x2 x0 )(x2 x1 )

27
Efetuando algumas operacoes

f [x2 ] f [x0 ]
= f [x0 , x1 ] + b2 (x2 x1 )
x2 x0

Ou
f [x0 , x2 ] f [x0 , x1 ]
b2 =
x2 x1
Pela Observacao (2.1), temos

f [x0 , x2 ] f [x1 , x0 ]
b2 = = f [x1 , x0 , x2 ] = f [x0 , x1 , x2 ]
x2 x1

Ou seja, b2 e a segunda diferenca dividida.


Repetindo o processo para P(xi ), obteremos que os coeficientes do Polinomio Inter-
polante na forma de Newton (2.3) sao dados pelas diferencas divididas:

bi = f [x0 , x1 , , xi ], para i = 0, 1, 2, ..., n.

Observacao 2.2. Resumindo, o polinomio interpolante na forma de Newton e:

P(x) = f [x0 ] + f [x0 , x1 ](x x0 ) + f [x0 , x1 , x2 ](x x0 )(x x1 ) +

+ f [x0 , , xn ](x x0 )(x x1 ) (x xn1 ).

Note que para formar o polinomio devemos tomar as diferencas divididas da parte
superior da tabela.

Exemplo 2.3. Um cabo sob acao do seu proprio peso esta suspenso entre dois pontos
distantes 24 metros.

12 metros

Figura 10: Um cabo sob acao do seu proprio peso.

A parte mais baixa do cabo ficou a 12 metros de altura. Foram medidas diferentes
alturas em varios pontos as quais estao mostradas na tabela abaixo

28
xi yi xi yi
-2 12.16 2 12.16
-7 14.10 7 14.10
-9 15.53 9 15.53
-12 18.51 12 18.51

Estime a altura a uma distancia de 5 metros do centro.

Solucao:
Pela simetria do problema em relacao ao eixo y, e suficiente considerar os dados
x0 = 0, x1 = 2, x2 = 7, x3 = 9 e x4 = 12.

xi yi ordem 0 ordem 1 ordem 2 ordem 3 ordem 4


0 12.00 12.00
0.08
2 12.16 12.16 0.044
0.388 0.0003
7 14.10 14.10 0.0467 0.000049
0.715 0.00089
9 15.53 15.53 0.0556
0.993
12 18.51 18.51

Pela formula de Newton

P(x) = 12.00 + 0.08(x 0) + 0.044(x 0)(x 2) + 0.0003(x 0)(x 2)(x 7)+ (2.4)

+0.000049(x 0)(x 2)(x 7)(x 9).

Substituindo o valor de x = 5 obtemos: P(5) = 13.0618.

29
2.5 Exerccios
Exerccio 2.1. Use uma cubica para determinar uma aproximacao para a unica raiz
positiva da equacao 4 cos(x) ex = 0.

Exerccio 2.2. Considere a funcao f (x) definida nos pontos, conforme tabela. Determine
o polinomio interpolador, usando a Formula de Lagrange, e estime f (0.8).

xi 0 0.5 1.0
f (xi ) 1.3 2.5 0.9

Exerccio 2.3. Considere a funcao f (x) = 3+x


1+x definida nos pontos conforme tabela.
Determine o polinomio interpolador, usando a Formula de Lagrange, e estime f (0.25).

xi 0.1 0.2 0.4


f (xi ) 2.82 2.67 2.43

Exerccio 2.4. Considere a tabela:

xi 1 3 4 5
f (xi ) 0 6 24 60

(a) Determine o polinomio, na forma de Lagrange, sobre todos os pontos.

(b) Calcule f (3.5).

Exerccio 2.5. Construir o polinomio de interpolacao, na forma de Lagrange, para a funcao


y = sin(x), escolhendo os pontos: x0 = 0, x1 = 1
6 e x2 = 12 .
R
Exerccio 2.6. A integral elptica e definida por: K(k) = 0
2 dx
(1k2 sin2 x)1/2
. Por uma tabela
de valores desta integral, encontramos:

K(1) = 1.5708; K(2) = 1.5719; K(3) = 1.5739.

Determine K(2.5), usando o polinomio de interpolacao, na forma de Lagrange, sobre todos


os pontos.

Exerccio 2.7. Dada a funcao tabelada f (x) definida pelos pontos

f (0) = 0, f (1) = 0.5, f (1.5) = 0.4, f (2.5) = 0.285, f (3.0) = 0.25.

(a) Determinar o polinomio de interpolacao usando a Formula de Newton sobre dois


pontos (interpolacao linear).

30
(b) Determinar o polinomio de interpolacao usando a Formula de Newton sobre tres
pontos (interpolacao quadratica).

(c) Calcular f (0.5) usando os items a) e b).

Exerccio 2.8. Seja f (x) uma funcao definida pelos pontos f (1) = 0, f (0) = 1 e f (2) = 1.
Usando a forma de Newton, encontre o polinomio p(x) que interpola a funcao f .

Exerccio 2.9. Considere a funcao f (x) = ln(x) para a qual temos

f (1) = 0, f (2) = 0.6931, f (3) = 1.0986, f (4) = 1.3863.

Usando o Metodo de Newton encontre uma aproximacao de ln(3.7).

Exerccio 2.10. Seja f (x) dadas pelos seguintes valores

f (0.2) = 0.16, f (0.34) = 0.22, f (0.4) = 0.27, f (0.52) = 0.29, f (0.6) = 0.32, f (0.72) = 0.37.

Obter f (0.47) usando o polinomio de grau 2.



Exerccio 2.11. Considere a funcao f (x) = x definida nos pontos conforme tabela.

Determinar o valor aproximado de 1.12 usando o polinomio de Interpolacao de Newton
sobre tres pontos.

xi 1.0 1.1 1.15 1.25 1.3


f (xi ) 1 1.048 1.072 1.118 1.14

Exerccio 2.12. Sabendo-se que a equacao x4 + 6x2 1 = 0 tem uma raiz em [0, 1],
determinar o valor aproximado dessa raiz usando polinomio de Interpolacao de Newton
sobre tres pontos.
R
et
Exerccio 2.13. A funcao y = f (x) = x t dt e dada pela tabela:

xi 0.01 0.02 0.03 0.04 0.05 0.06


f (xi ) 4.0379 3.3547 2.9591 2.6813 2.4679 2.2953

Atraves da Formula de Newton, calcule y para x = 0.0378 usando parabola e uma


cubica.

Exerccio 2.14. Dada a tabela abaixo, calcule e3.1 usando um polinomio de interpolacao
sobre tres pontos:

xi 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8


exi 11.02 13.46 16.44 20.08 24.53 29.96 36.59 44.70

31
Exerccio 2.15. Construa a tabela de diferencas divididas para a funcao f (x) com os
dados:

f (0) = 0, f (0.5) = 2.241, f (1.0) = 1.65, f (1.5) = 0.594, f (2) = 1.34, f (2.5) = 4.564

Estime o valor de f (1.23).


Exerccio 2.16. A raiz de uma funcao contnua pode ser aproximada pela raiz de seu
polinomio. Usando um polinomio de grau dois, encontre x tal que f (x) = 0. Use 5 casas
decimais. Os valores exatos de f , para os valores dados de x, sao:

f (1) = 0.757, f (2) = 0.141, f (3) = 0.842, f (4) = 0.909.


Exerccio 2.17. Uma maneira de se calcular a derivada de uma funcao em um ponto
x0 , quando nao se conhece a expressao da mesma, e usar uma tabela para formar um
polinomio que aproxime a funcao, derivar entao esse polinomio e avaliar sua derivada
em x = x0 . Dados os pontos abaixo, calcule f 0 (0.50) usando um polinomio interpolador de
grau 2:

f (0.40) = 1.51, f (0.45) = 1.49, f (0.50) = 1.47, f (0.55) = 1.44, f (0.60) = 1.42.

Exerccio 2.18. Engenheiros e programadores de computadores usam interpolacao po-


linomial para fazer graficos por computador. Por exemplo, suponha que deseja-se
construir uma curva que passa pelos pontos A = (2, 3), B = (4, 2), C = (5, 0) e D = (3, 2)
como na figura. Para auxiliar estes professionais, usando Interpolacao de Lagrange, en-
contre uma curva que passa por estes 4 pontos. Faca as hipotesis que ache necessario
para a solucao do problema.

Figura 11: Desenho no computador.

Exerccio 2.19. A seguinte tabela mostra a populacao do Brasil de 1960 a 2010. Encontre
um polinomio interpolador de grau 5 e estime a populacao nos anos 1955, 1975 e 2012.

32
A populacao em 2012 foi aproximadamente 198.656 milhoes. Quao precisas voce acha
que sao as aproximacoes nos anos 1955 e 1975?

Ano 1960 1970 1980 1990 2000 2010


Populacao( em milhoes) 72.7759 96.0604 121.7404 149.6483 174.5049 195.2102

33
3 Resolucao Numerica de Sistemas Lineares

3.1 Introducao
Nesta secao estudaremos tecnicas para resolver sistemas lineares:

a11 x1 + a12 x2 + ... + a1n xn = b1


a21 x1 + a22 x2 + ... + a2n xn = b2
.. (3.1)
.
an1 x1 + an2 xn2 + ... + ann xn = bn

Estes sistemas podem ser escritos na forma

Ax = b (3.2)

em que A = (ai j ) e uma matriz n n e b e um vetor coluna n 1. Por algebra linear


sabemos que se Det(A) , 0 entao o sistema tem solucao unica. Alem disso, podemos
resolve-lo usando a reducao de Gauss (ou eliminacao Gaussiana), isto e, convertendo o
sistema a um triangular superior.
Aqui estudaremos dois metodos com os quais podemos resolver um ou mais sistemas
de equacoes lineares: O Metodo da Decomposicao LU e o Metodo de Gauss-Seidel.

3.2 Preliminares
Existem dois tipos de sistemas lineares que sao faceis de resolver: Os sistemas triangu-
lares Inferiores e os sistemas triangulares Superiores.

Usaremos a letra L (de lower=inferior em ingles) para uma matriz triangular inferior
e U (de upper=superior em ingles) para uma matriz triangular superior.

3.2.1 Sistemas Triangulares Inferiores

Sao aqueles sistemas Lx = b na qual todos os termos que estao acima da diagonal de
L = (li j ) sao 0:

l11 x1 = b1
l21 x1 +l22 x2 = b2
.. .. .. . (3.3)
. . . = ..
ln1 x1 +ln2 x2 +lnn xn = bn

34
Exemplo 3.1. Resolva o sistema

3x1 = 1
x1 +5x2 = 1 (3.4)
2x1 x2 +2x3 = 3

Solucao:

Observe que da primeira equacao x1 = 13 . Substituindo na segunda equacao

1 2
x2 = (1 x1 )/5 = (1 )/5 = .
3 15

Agora, na terceira equacao

2 2 37
x3 = (3 2x1 + x2 )/2 = (3 + )/2 = .
3 15 30

Do Exemplo 3.1, podemos fazer a seguinte observacao.

Observacao 3.1. A solucao geral de um sistema triangular inferior como (3.3), e dada
pelas formulas:

bi i1
P
b1 j=1 li j x j
x1 = , e xi = , para todo i = 2, ..., n
l11 lii

3.2.2 Sistemas Triangulares Superiores

Sao aqueles sistemas Ux = b na qual todos os termos que estao abaixo da diagonal de
U = (ui j ) sao 0:

u11 x1 +u12 x2 . . . +u1n xn = b1


+u22 x2 . . . +u2n xn = b2
.. .. . (3.5)
. . = ..
unn xn = bn

Exemplo 3.2. Resolva o sistema

2x1 +3x2 3x3 = 4


4x2 x3 = 3 (3.6)
2x3 = 3

35
Solucao:

Observe que da terceira equacao x3 = 23 . Substituindo na segunda equacao

3 3
x2 = (3 + x3 )/4 = (3 + )/4 = .
2 8

Agora, isolando x1 na primeira equacao

9 9 77
x1 = (4 + 3x3 3x2 )/2 = (4 + + )/2 = .
2 8 16

Do Exemplo 3.2, podemos fazer a seguinte observacao.

Observacao 3.2. A solucao geral de um sistema triangular superior como (3.5), e dada
pelas formulas:
Pn
bn bi j=i+1 ui j x j
xn = , e xi = , para todo i = 1, ..., n 1. (3.7)
unn uii

3.3 Metodo Direto: Decomposicao LU


Quando resolvemos varios sistemas lineares

Ax = b1 , Ax = b2 , ..., Ax = bp ,

por eliminacao Gaussiana, em que todos os sistemas tem a mesma matriz A, teremos que
repetir o metodo da eliminacao para cada vetor coluna b. Isto traz como consequencia o
uso de uma grande quantidade de memoria para armazenar os dados de cada sistema.
Uma maneira de evitar esse consumo de memoria e utilizando o Metodo da De-
composicao LU, que e mais eficiente pois permite calcular a decomposicao sem usar os
vetores coluna b.
Antes de descrever o metodo, apresentaremos um exemplo.

Exemplo 3.3. Resolva o sistema



2 0 3 4 x1 5
= (3.8)
3 3 0 6 x 3
2

36
Solucao:
Repare que o sistema pode-se escrever na forma Ax = b, em que A = LU, sendo L
uma matriz triangular inferior e U uma matriz triangular superior.

2 0 3 4
L = , U = , b = 5


3 3 0 6 3


y1
Fazendo := Ux, concluimos que encontraremos a solucao do sistema se
y2
resolvemos os dois sistemas:

2 0 y1 5
= , e 3 4 x1 = y1


3 3 y 3 0 6 x y
2 2 2

O primeiro sistema tem solucao y1 = 5


2 e y2 = (3 + 3y1 )/3 = 1 + 5
2 = 23 . Tendo
estes valores, podemos encontrar os valores de x1 e x2 no segundo sistema. Assim,
6x2 = y2 = 3
2 entao x2 = 41 , e x1 = (y1 + 4x2 )/3 = ( 52 1)/3 = 12 .

Observacao 3.3. O Exemplo 3.3 mostra que se por acaso podemos decompor a matriz
A como produto de duas matrizes triangulares A = LU (em que L triangular inferior
e U triangular superior), entao a resolucao do sistema Ax = b se reduz a resolucao
de dois sistemas:
Ly = b que e triangular inferior, e


Ux = y

que e triangular superior.

Isto sera o objetivo da decomposicao LU.

Assim, a pergunta natural e: Quando uma matriz A pode ser decomposta como produto
de duas matrizes LU, em que L e triangular inferior e U e triangular superior? ou, toda
matriz A tem decomposicao LU?
Para responder estas questoes, precisamos da seguinte definicao.

DEFINICAO 3.1. Denomina-se menores principais de ordem k de uma matriz A = (ai j ),


com i, j = 1, , n a:
k = Det(Ak )

em que Ak = (ai j ), com i, j = 1, , k, e formada pelas k primeiras linhas e k primeiras


colunas de A.

37
Exemplo 3.4. Encontre os menores principais da matriz:

1 2 3

A = 2 3 5

2 2 4

Solucao:

1 2
Pela definicao 1 = Det(a11 ) = 1, 2 = Det = 1.
2 3

O Teorema abaixo fornece condicoes para a existencia de uma decomposicao LU.

TEOREMA 3.1. Considere A = (ai,j ), i, j = 1, , n. Se os menores principais k sao distintos


de 0, para k = 1, , n 1, entao A se decompoe, de maneira unica, no produto LU em que
L = (li j ) e uma matriz triangular inferior com lii = 1, i = 1, , n e U = (ui j ) e uma matriz
triangular superior.

Demonstracao. Provaremos o Teorema por inducao. Se n = 1, e claro que A =


(a11 ) pode ser decomposta, escrevendo A = LU = (1)(aii ).
Suponha que, se A e de ordem k 1, entao pode ser decomposta na forma

Ak1 = Lk1 Uk1

em que Lk1 e triangular inferior e Uk1 e triangular superior.


Devemos provar que existe uma decomposicao para matrizes de ordem k. Seja
A de ordem k, entao escrevemos

Ak1 s
A =


r akk

em que r e um vetor linha e s e um vetor coluna. Dado que Ak1 e uma matriz de
ordem k 1 que, pela hipotese, pode ser decomposta na forma Ak1 = Lk1 Uk1 .
Defina as matrizes

Lk1 0
, e U = Uk1 L1 s
L =
k1

1
(3.9)
rUk1 1 0 akk rUk1 L1
1
k1
s

Note que L e triangular inferior e U e triangular superior. Alem disso:



Lk1 0 Uk1 L1 s Lk1 Uk1 s
LU = = = A
k1


1
rUk1 1 0 1 L1 s
akk rUk1 r akk
k1

Por tanto A se decompoe como um produto LU em que L e U sao dadas pelas


formulas (3.9). 

38
Observacao 3.4. Da prova do Teorema 3.1 podemos concluir que:

(a) Se a matriz e de ordem nn, e suficiente verificar que os menores determinantes


sao distintos do 0 ate a ordem n 1.

(b) A condicao que usaremos para a matriz L e que lii = 1, i = 1, , n.

Repare que a hipotese lii = 1, i = 1, ..., n, simplifica os calculos para encontrar os


coeficientes das matrizes L e U. Quando usamos esta hipotese, o metodo e chamado
Metodo de Doolittle. Mas podia-se considerar outras hipoteses. Por exemplo, outros
dois metodos de decomposicao LU sao:

(i) Metodo de Crout : Quando uii = 1, i = 1, ..., n, e

(ii) Metodo de Choleski: Quando uii = lii , i = 1, ..., n.

Exemplo 3.5. Resolva o sistema linear



1 3 1 x1 4

2 8 8 x = 2
2

6 3 15 x3 9

Solucao:
Os menores principais sao 1 = 1 e 2 = 2. Como ambos sao distintos do 0, existe
a decomposicao LU.
Sejam

1 0 0 u11 u12 u13

L = l21 1 0 , U = 0 u22 u23



l31 l32 1 0 0 u33
Da equacao A = LU, obtemos

1 3 1 1 0 0 u11 u12 u13

= l
21 1 0 0 u22 u23
2 8 8


6 3 15 l31 l32 1 0 0 u33

Encontraremos a primeira linha de U multiplicando a primeira linha de L por U:

1.u11 = 1, 1.u12 = 3, e 1.u13 = 1, entao u11 = 1, u12 = 3, u13 = 1.

Tambem, encontramos a primeira coluna de L multiplicando L pela primeira coluna

39
de U:
l21 u11 = 2, l31 u11 = 6 entao l21 = 2, l31 = 6.

Trabalharemos agora com a segunda linha de U. Esta e determinada multiplicando


a segunda linha de L por U:

l21 u12 + u22 = 8, l21 u13 + u23 = 8, entao u22 = 2, u23 = 6.

A segunda coluna de L e encontrada multiplicando L pela segunda coluna de U:

15
l31 u12 + l32 u22 = 3, entao l32 =
2

Por ultimo, determinamos a terceira linha de U multiplicando a terceira linha de L:

l31 u13 + l32 u23 + u33 = 15, entao u33 = 54.



y1

Fazendo y = y2 := Ux, obtemos dois sistemas lineares que devem ser resolvidos:

y3

Ly = b, e Ux = y, ou

1 0 0 y1 4 1 3 1 x1 y1

2
1 0 y2 = 2 e 0 2 6
x2 = y2

15

6 1 y3 9 0 0 54 x3 y3

2
15y2
Do primeiro sistema y1 = 4, y2 = (2 2y1 ) = 10, e y3 = (9 + 6y1 2 ) = 108. Por
fim, com os valores dos yi , encontramos a solucao:

108
x3 = = 2, x2 = (y2 6x3 )/(2) = 1, e x1 = (y1 + 3x2 x3 ) = 3.
54

Observacao 3.5. Podemos generalizar as formulas do exemplo anterior:

i1
X
ui j = ai j lik uk j , para i, j = 1, ..., n, i j.
k=1

comecando com i = 1, e
P j1
ai j l u
k=1 ik k j
li j = , para i, j = 1, ..., n, i j.
ujj

comecando com j = 1.

40
3.4 Metodo Iterativo: O metodo de Gauss-Seidel
Assim como nos metodos de resolucao de equacoes nao lineares usavamos metodos
iterativos para encontrar uma solucao aproximada, nesta secao apresentaremos um
metodo iterativo para resolver sistemas lineares. Este metodo e chamado Metodo de Gauss-
Seidel e permite determinar uma solucao aproximada de um sistema linear.
A ideia central por traz dos metodos iterativos e escrever o problema na forma

x = (x),

e entao determinar aproximacoes da solucao utilizando a sequencia x(k+1) = (x(k) ), a


partir de uma aproximacao inicial x(0) . Se a sequencia {x(k) } e convergente, entao conver-
gira para a solucao procurada. Aqui seguiremos esta mesma ideia aplicada a sistemas
lineares.
Apresentaremos o metodo com um exemplo.

Exemplo 3.6. Encontre uma solucao aproximada do sistema linear:

6x1 x2 x3 = 3
6x1 +9x2 +x3 = 40
3x1 +x2 +12x3 = 50

Solucao:

Seja x = (x1 , x2 , x3 )t . Note que o sistema se pode escrever

x1 x62 x63 = 1
2
2x1
3 +x2 + x93 = 40
9
x41 x2
+ 12 +x3 = 25
6

no qual os coeficientes da diagonal sao todos iguais a 1. Dessa forma, isolando as


variaveis da diagonal
x2 x3
x1 = 2 + 6 + 6
1
x3
x2 = 2x31 + 409 9
,
x1 x2
x3 = 4 12 + 6
25

Repare que este sistema tem a forma x = (x). Assim, podemos utilizar o metodo
iterativo
(k) (k)
(k+1) x2 x3
x1 = 2 + 6 + 6
1
(k) (k)
2x x3
x2
(k+1)
= 31 + 40 , (3.10)
9 9
(k) (k)
(k+1) x1 x2
x3 = 4 12 + 6
25

em que estamos utilizando os ndices na parte superior. Suponha que a aproximacao


(0) (0) (0)
inicial, para k = 0, e x(0) = (x0 , x1 , x3 )t = (0, 0, 0)t . Cada aproximacao e um vetor

41
coluna. Da primeira equacao:

(0) (0)
(1) 1 x2 x 1 0 0 1
x1 = + + 3 = + + = .
2 6 6 2 6 6 2
(1)
O ponto central: se ja temos uma aproximacao x1 de x1 , podemos utiliza-la para
(1) (0) (1)
determinar a aproximacao x2 de x2 , substituindo x1 por x1 na segunda equacao
de (3.10):

(1) (0)
(1)
2x1 40 x3 2(1/2) 40 0 37
x2 = + = + = = 4.11111
3 9 9 3 9 9 9
(0) (1) (0) (1)
Seguindo esta ideia, podemos substituir x1 por x1 e x2 por x2 na terceira equacao
de (3.10):
(1) (1)
(1)
x1 x2 25 (1/2) (37/9) 25
x3 = + = + = 3.94907.
4 12 6 4 12 6
Logo, o processo iterativo, na iteracao k, pode ser modificado ao seguinte:

(k) (k)
(k+1) 1 x2 x
x1 = + + 3
2 6 6
(k+1) (k)
(k+1)
2x1 40 x3
x2 = +
3 9 9
(k+1) (k+1)
(k+1)
x1 x2 25
x3 = +
4 12 6
Se k = 1 entao
(1) (1)
(2) 1 x2 x 1 4.11111 3.94907
x1 = + + 3 = + + = 1.84336
2 6 6 2 6 6
(2) (1)
(2)
2x1 40 x3 2(1.84336) 40 3.94907
x2 = + = + = 2.77675
3 9 9 3 9 9
(2) (2)
(2)
x1 x2 25 1.84336 2.77675 25
x3 = + = + = 4.39611.
4 12 6 4 12 6
(3) (3) (3)
Para k = 2 obtemos x1 = 1.69547, x2 = 2.82567 e x3 = 4.35506.

42
3.4.1 O Caso Geral

Tendo como base o Exemplo (3.6), escreveremos as formulas para o caso geral. Considere
um sistema de equacoes lineares:

a11 x1 + a12 x2 + ... + a1n xn = b1


a21 x1 + a22 x2 + ... + a2n xn = b2
.. (3.11)
.
an1 x1 + an2 xn2 + ... + ann xn = bn

que pode ser escrito na forma Ax = b, em que A = (ai j ), b = (bi ). Suponha aii , 0 para
todo i = 1, ..., n, entao podemos dividir cada equacao pelo correspondente elemento da
diagonal. Entao o sistema converte-se a:

x1 + a12 x2 + ... + a1n xn = b1


a21 x1 + x2 + ... + a2n xn = b2
.. (3.12)
.
an1 x1 + an2 xn2 + ... + xn = bn

aij bi
em que ai j = aii para todo i, j = 1, ..., n e bi = aii , para todo i = 1, ..., n. O sistema
anterior pode-se escrever na forma A x = b , em que A = (ai j ). Esta matriz A pode ser
decomposta na forma
A = L + I + R (3.13)

em que L = (li j ) e uma matriz triangular inferior com os elementos da diagonal iguais a
0, I e a matriz identidade e R = (ri j ) e uma matriz triangular superior com os elementos
da diagonal iguais a 0. Ou seja,
a a
sei > j sei < j
ij ij

li j =

e ri j =

aii
aii

0
se i j 0
se i j

O Sistema Ax = b e agora dado por

(L + I + R )x = b

que e equivalente a equacao (L + I)x = R x + b .

DEFINICAO 3.2. O metodo de Gauss-Seidel e dado pelo processo iterativo:

(L + I)x(k+1) = R x(k) + b

(0) (0) (0)


com condicao inicial x(0) = (x1 , x2 , x3 )t . Cada aproximacao x(k) e um vetor coluna.

43
Acostuma-se escreve-lo na forma

x(k+1) = L x(k+1) R x(k) + b

(k+1) (k+1) (k+1)


para expressar o fato que podemos aproveitar as aproximacoes x1 , x2 , ..., xi1
(k+1)
para calcular a seguinte aproximacao xi , para i = 2, ..., n.

3.4.2 Criterios de Convergencia

So falta fornecer condicoes sobre as quais a sequencia x(k) converge para a solucao do
sistema linear Ax = b. Dois criterios sao os mais utilizados.

O metodo de Gauss-Seidel converge se um dos dois criterios for satisfeito:

(a) O criterio das linhas, isto e, se

max{i } < 1
1in

em que
X i1
X n
X
i = |ai j | = |ai j | + |ai j |, i = 1, ..., n
j,i j=1 j=i+1

e a soma de todos os termos da linha i da matriz A , exceto o termo da diagonal.

(b) O criterio de Sassenfeld, isto e, se

max{i } < 1
1in

em que
i1
X n
X
i = |ai j | j + |ai j |, i = 1, ..., n.
j=1 j=i+1

3.4.3 Criterio de Parada

Precisamos de um criterio para decidir quando parar de realizar as iteracoes no metodo


de Gauss-Seidel. Ao igual que na resolucao de equacoes nao lineares, temos dois criterios
de parada.

44
O metodo de Gauss-Seidel para se atingimos os seguintes erros

Erro Absoluto. Se
(k+1) (k)
max |xi xi | < . (3.14)
1in

ou seja, se cada componente atinge um erro absoluto menor que .

Erro Relativo. Se
(k+1) (k)
|xi xi |
max (k+1)
< . (3.15)
1in |xi |
ou seja, se cada componente atinge um erro relativo menor que .

Exemplo 3.7. Aplique o metodo de Gauss-Seidel para resolver:

9x1 3x2 +x3 = 2


2x1 +5x2 +3x3 = 1
x1 2x2 7x3 = 3

Considerando um erro absoluto de  = 0.04.

Solucao:
Dividindo entre os coeficientes da diagonal obtemos:

x1 13 x2 + 91 x3 = 2
9
25 x1 +x2 + 53 x3 = 51
1
7 x1 72 x2 +x3 = 73

Repare que o metodo das linhas nao e satisfeito, pois os coeficientes sao:

1 1 4 2 3 1 2 3
1 = + = , 2 = + = 1 e 3 = + =
3 9 9 5 5 7 7 7

e entao max1in i = 1. Assim, o criterio das linhas nao fornece informacao sob a
convergencia.
Mas, o criterio de Sassenfeld e satisfeito pois:

1 1 4
1 = + = < 1,
3 9 9

2 4 3 7
2 = ( )( ) + = < 1,
5 9 5 9
1 4 2 7 2
3 = ( )( ) + ( )( ) = < 1.
7 9 7 9 7

45
Dessa forma, o metodo de Gauss-Seidel, dado pelo processo iterativo:

(k) (k)
(k+1) 2 x2 x
x1 = + 3
9 3 9
(k+1) (k)
(k+1)
2x1 1 3x
x2 =+ 3
5 5 5
(k+1) (k+1)
(k+1)
x1 2x2 3
x3 = +
7 7 7
com condicao inicial x(0) = (0, 0, 0), e convergente. As aproximacoes estao tabeladas
abaixo.

(k) (k) (k)


k x1 x2 x3 erro 1 erro 2 erro 3
0 0 0 0
1 0.22222 -0.11111 -0.49206
2 0.23985 0.19117 -0.40821
3 0.33130 0.17744 -0.35760 0.09145 0.01373 0.05061
4 0.32110 0.143 -0.37910 0.0102 0.03444 0.0215

Por tanto, uma solucao aproximada e (0.32110, 0.143, 0.37910).

46
3.5 Exerccios
Exerccio 3.1. Para cada um dos sistemas lineares seguintes, obtenha uma solucao por
meio de um grafico, se possvel for. Explique os resultados do ponto de vista geometrico.

x1 + 2x2 = 3 x1 + 2x2 = 3 x1 + 2x2 = 3 2x1 + x2 + x3 = 1


(a) (b) (c) (d)
x1 x2 = 0 2x1 + 4x2 = 6 2x1 + 4x2 = 6 2x1 + 4x2 x3 = 1

Exerccio 3.2. De a Fatoracao LU de cada matriz e resolva o sistema:

2x1 + 3x2 + x3 x4 = 6, 9 x + y + 2z + 4t = 7, 12
x1 + x2 + x3 = 1
x1 + x2 4x3 + x4 = 6, 6 2x + 5y + z + 2t = 14, 90
(a) 3x1 + 2x2 2x3 = 2 (b) (c)
x1 + x2 + x3 + x4 = 10, 2 x + y + 5z + 6t = 12, 02
4x1 + 3x2 4x3 = 7
4x1 5x2 + x3 2x4 = 12, 3 4x + 6y + 2z + t = 20, 72

Exerccio 3.3. Utilize a Fatoracao LU para resolver o sistema linear a seguir:

x1 + x2 + 2x3 + 4x4 = 7, 12
2x1 + 5x2 + x3 + 2x4 = 14, 90
x1 + x2 + 5x3 + 6x4 = 12, 02
4x1 + 6x2 + 2x3 + x4 = 20, 72

Exerccio 3.4. Considere o sistema linear

5x1 + 2x2 + x3 = 7
x1 + 4x2 + 2x3 = 3
2x1 3x2 + 10x3 = 1

(a) Verificar a possibilidade de aplicacao do metodo de Gauss-Siedel, usando o Criterio


de Sassenfeld.

(b) Se possvel, resolve-lo pelo metodo do item (a), obtendo o resultado com erro
absoluto < 102 .

Exerccio 3.5. Considere os seguintes sistemas de equacoes lineares

9x1 + 5x2 + 6x3 = 11 5x1 + 2x2 + x3 = 12


(I) 2x1 + 3x2 + x3 = 4 (II)x1 + 4x2 + 2x3 = 20
x1 + x2 3x3 = 2 2x1 3x2 + 10x3 = 3

(a) Resolva os sistemas dados usando o metodo de Decomposicao LU.

(b) Caso haja convergencia garantida, resolva os sistemas dados pelo Metodo Iterativo
(0) (0) (0)
de Gauss-Siedel com (x1 , x2 , x3 ) = (0.1, 0.2, 0.5) e  = 0.01.

47
Exerccio 3.6. Dados os sistemas lineares:

4x1 + 2x2 + 6x3 = 1 2x1 + x2 + 3x3 = 9 2x2 + 2x3 = 8


(I) 4x1 + x2 + 3x3 = 2 (II) x2 + x3 = 1 (III) x1 + 3x2 = 6
x1 + 5x2 + 3x3 = 3 x1 + 3x3 = 3 3x1 + x2 + x3 = 4

mostrar que, reordenando as equacoes e incognitas, podemos fazer com que o criterio
de Sassenfeld seja satisfeito, mas nao o criterio das linhas. Resolva-os.

48
4 Integracao Numerica

4.1 Introducao
Cada vez que descrevemos um problema utilizando derivadas podemos inferir que a
solucao do mesmo envolve integrais do tipo
Z b
I( f ) = f (x)dx (4.1)
a

em que f : [a, b] R e uma funcao contnua no intervalo [a, b] com valores nos numeros
reais. Estudando as tecnicas de integracao do Calculo, sabemos que existem funcoes f (x)
para as quais nao existe uma integral em termos de funcoes elementares. Por exemplo,
as seguintes integrais sao difceis de calcular
Z Z
sin(x) 2
dx, ex dx.
x

Assim, e necessario o uso de integracao numerica.


Em outros casos, quando temos pouca informacao sobre a funcao, por exemplo,
quando conhecemos a funcao em um numero finito de pontos, tambem e necessaria
alguma tecnica de integracao numerica. Por exemplo no seguinte problema:

Exemplo 4.1. Um radar foi usado para medir a velocidade de um corredor durante os
primeiros 5 segundos de uma corrida (Veja a tabela ). Estime a distancia que o corredor
cobriu durante aqueles 5 segundos.

t(s) 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5


v(m/s) 0 4.67 7.34 8.86 9.73 10.22 10.51 10.67 10.76 10.81 10.81

Note que so conhecemos a funcao v(t) em 10 pontos, mas mesmo assim, desejamos
determinar o valor aproximado da integral
Z 5
v(t)dt,
0

dado que a distancia e a integral da velocidade em relacao ao tempo.


Numa terceira situacao, pode ser que exista uma formula para integrar f (x) mas tal
vez esta formula nao seja a maneira mais eficiente de calcular I( f ).

49
4.2 Preliminares
Considere uma funcao contnua f : [a, b] R definida num intervalo [a, b].
A ideia basica da integracao numerica e obter I( f ) via interpolacao. Isto e, primeiro
aproximar f (x) por um polinomio interpolante Pn (x) de grau n em [a, b], um polinomio
sobre n + 1 pontos x0 = a, x1 , ..., xn1 , xn = b tais que a separacao entre eles e dada por

ba
h= ,
n

ou xi = x0 + ih, para todo i = 0, 1, ..., n.

Figura 12: Polinomio Pn (x) que interpola f (x).

Entao pode-se aproximar a integral de f (x) usando a integral de Pn (x).

Se Pn (x) interpola f (x) nos pontos x0 = a, x1 , ..., xn = b, entao


Z b Z b
I( f ) = f (x)dx Pn (x)dx.
a a

Assim, aproximar I( f ) reduz-se a determinar a integral de um polinomio, o qual e facil


de realizar.

4.2.1 Estudo do Erro

Uma vez feita a aproximacao, fica ainda o estudo do erro cometido no processo de
aproximar. Este erro pode ser estudado com a equacao:

f (x) = Pn (x) + Rn (x) (4.2)

obtida na interpolacao de Newton, em que Pn (x) e o polinomio interpolante e Rn (x) e o


resto dado por
Rn (x) = (x x0 )(x x1 )...(x xn ) f [x0 , x1 , ..., xn , x]

50
em que f [x0 , x1 , ..., xn , x] e a diferenca dividida de ordem (n + 1).
Integrando a igualdade (4.2) entre a e b:
Z b Z b
I( f ) = Pn (x)dx + Rn (x),
a a

a partir do qual deduzimos que o erro cometido En e dado por


Z b
En = Rn (x).
a

Repare que pode-se escrever o resto na forma Rn (x) = (x) f [x0 , x1 , ..., xn , x] em que

(x) = (x x0 )(x x1 )...(x xn )

Usando o Teorema de Rolle, pode-se mostrar que existe um [a, b] tal que

f (n+1) ()
f [x0 , x1 , ..., xn , x] = .
(n + 1)!

Assim, o erro e dado pela integral

xn
f (n+1) ()
Z
En = (x)dx. (4.3)
x0 (n + 1)!

O primeiro resultado e o seguinte:

PROPOSICAO 4.1. O erro En e limitado pela seguinte expressao:


Z xn
K
|En | |(x)|dx, (4.4)
(n + 1)! x0

em que
n o
K = max | f (n+1) (x)| : x0 x xn .

Demonstracao. Pela Equacao (4.3), obtemos

n f (n+1) () o Z xn K
Z xn
|En | max | |, [x0 , xn ] |(x)|dx |(x)|dx.
(n + 1)! x0 (n + 1)! x0

pela definicao de K. 

51
Observacao 4.1. Pela Proposicao 4.1, e suficiente estudar o comportamento de
Z xn
|(x)|dx (4.5)
x0

para determinar um limitante superior do erro En . Aqui vamos trabalhar dois casos:

(a) Caso 1: Se (x) 0 para todo x [x0 , xn ], ou se (x) 0 para todo x [x0 , xn ].
R xn
(b) Caso 2: Se (x) satisfaz x (x)dx = 0.
0

4.3 Regra dos Trapezios.


A regra dos trapezios e a mais simple das regras de integracao, ou seja, quando con-
sideramos n = 1. Isto e a interpolacao sera dada sobre dois pontos x0 = a e x1 = b
e o polinomio interpolante P1 (x) e uma reta. Definamos h = b a e seja y0 = f (x0 ) e
y1 = f (x1 ). O polinomio P1 (x) pode ser encontrado usando as diferencas divididas:

xi yi ordem 0 ordem 1
x0 y0 y0
y1 y0
h
x1 y1 y1

Figura 13: Aproximacao usando um polinomio de grau 1.

Pela formula de interpolacao de Newton, o polinomio interpolante e

y1 y0
P1 (x) = y0 + (x x0 )
h

Entao a aproximacao de I( f ) sera


Z b Z x1 Z x1 h y1 y0 i
I( f ) = f (x)dx P1 (x)dx = y0 + (x x0 ) dx.
a x0 x0 h

52
Desenvolvendo as contas da ultima integral e fazendo x = x0 + u, obtemos:
Z hh  y1 y0  i h h
I( f ) y0 + u du = [y0 + y1 ] = [ f (x0 ) + f (x1 )].
0 h 2 2

Observacao 4.2. A formula

h
I( f ) [ f (x0 ) + f (x1 )].
2

e denominada Regra do Trapezio porque a area abaixo do polinomio P1 (x) corres-


ponde a area de um trapezio.

4.3.1 Limitante superior do erro na Regra do Trapezio

Note que (x) = (x x0 )(x x1 ), entao (x) 0 para todo x [x0 , x1 ]. Isto implica que
|(x)| = (x) = (x x0 )(x1 x) para todo x [x0 , x1 ]. Pela formula (4.4) para o erro E1
obtemos Z x1
K
|E1 | (x x0 )(x1 x)dx,
(1 + 1)! x0
em que
K = max{| f (2) (x)| : x0 x x1 }.

Fazendo a mudanca x = x0 + u, obtemos

h
h3
Z
K
|E1 | u(h u)du = max{| f (2) (x)| : x0 x x1 }.
(2)! 0 12

Resumindo:
A aproximacao de I( f ) dada pela Regra do Trapezio e

h
I( f ) [ f (x0 ) + f (x1 )]. (4.6)
2

e o limitante superior para o erro E1 e dado por

h3
|E1 | max{| f (2) (x)| : x0 x x1 }. (4.7)
12

Exemplo 4.2. Usando a Regra dos Trapezios, encontre uma aproximacao da integral
Z 2
1
dx
1 x

53
e determine um limitante superior para o erro cometido ao aproximar a integral.

Solucao:
Definimos x0 = a = 1 e x1 = b = 2 e entao h = x1 x0 = 1. Assim, f (x0 ) = f (1) = 1 e
f (x1 ) = f (2) = 0, 5. Por tanto, a aproximacao da integral dada pela formula (4.6) e:

1
I( f ) [1 + 0, 5] = 0, 75.
2

Para determinar o limitante superior do erro precisamos da derivada f (2) (x) = 2


x3
.
Assim
2 2
max{| f (2) (x)| : x0 x x1 } = max{ 3
: 1 x 2} = = 2.
x 1
Por tanto, pela inequacao (4.7),

13 2
|E1 | (2) = = 0, 16666.
12 12

Logo a integral pertence ao intervalo I( f ) [0.75 0.16666, 0.75 + 0.16666] =


[0.58334, 0.91666].

4.3.2 Regra do Trapezio Generalizada

A Regra dos Trapezios Generalizada consiste na subdivisao do intervalo de integracao


[a, b] em n sub-intervalos Ii = [xi1 , xi ] para i = 1, ..., n, cada um de comprimento h = ba
n ,
definidos pelos pontos

x0 = a, x1 = a + h, x2 = a + 2h, ..., xi = a + ih, ..., xn = b,

para logo aplicar a regra dos trapezios em cada sub-intervalo Ii para i = 1, ..., n. Desse
modo, a integral I( f ) sera aproximada pela soma das integrais em cada sub-intervalo
calculadas utilizando a regra do trapezio. A figura abaixo apresenta o caso de 5 sub-
intervalos.

Figura 14: Regra do Trapezio Generalizada.

54
A aproximacao no intervalo Ii e dada por

h
Ai = [ f (xi1 ) + f (xi )].
2

Assim, a aproximacao sera:

I( f ) A1 + A2 + .... + An

Substituindo os valores:

h h h
I( f ) [ f (x0 ) + f (x1 )] + [ f (x1 ) + f (x2 )] + .... + [ f (xn1 ) + f (xn )]
2 2 2

Simplificando

n1
h X
I( f ) [ f (x0 ) + 2 f (xi ) + f (xn )] (4.8)
2
i=1

O erro na Regra do Trapezios Generalizada e limitado pela soma dos erros em cada
subintervalo Ii . Denotemos por E(i) o erro no intervalo Ii , e entao, pela inequacao 4.7,

h3
|E(i)| max{| f (2) (x)| : xi1 x xi }, i = 1, ..., n.
12

Entao o erro total E da regra generalizada e limitado pela expressao:

h3
|E| E(1) + E(2) + ... + E(n) n max{| f (2) (x)| : x0 x xn }.
12

Sabendo que nh = xn x0 , obtemos

h2
|E| (xn x0 ) max{| f (2) (x)| : x0 x xn }. (4.9)
12

Exemplo 4.3. Encontre aproximadamente a integral


Z 2
1 + x2 dx
0

e determine um limitante superior para o erro cometido ao aproxima-la pela Regra do


Trapezio Generalizada com n = 4.

55
Solucao:

Dos dados f (x) = 1 + x2 , h = 20
4 = 0, 5 e x0 = 0, x1 = 0, 5, x2 = 1, x3 = 1, 5, x4 = 2.
Pela formula
Z 2 3
h X
I( f ) = 1 + x dx [ f (x0 ) + 2
2 f (xi ) + f (x4 )]
0 2
i=1

deduzimos
0, 5
I( f ) [ f (x0 ) + 2( f (x1 ) + f (x2 ) + f (x3 )) + f (x4 )].
2
Substituindo os valores dos f (xi ) obtemos:

0, 5
I( f ) [1 + 2(1, 1180 + 1, 4142 + 1, 8027) + 2, 2360] = 2, 9763
2

Observe que f (2) (x) = 1


(1+x2 )3/2
e

1
max{| f (2) (x)| : 0 x 2} = max{ : 0 x 2} = 1
(1 + x2 )3/2

Dessa forma
(0.5)2
|E| (2 0)(1) = 0, 0416.
12

1
4.4 Regra 3
de Simpson
A Regra 1/3 de Simpson ocorre quando o polinomio interpolante Pn (x) tem grau n = 2.
Ou seja, f (x) e aproximada por uma parabola. Definamos

ba
h= , e , x0 = a, x1 = a + h, x2 = b.
2

e
y0 = f (x0 ), y1 = f (x1 ), y2 = f (x2 ).

Encontraremos P2 (x) usando as diferencas divididas dadas na tabela abaixo:

xi yi ordem 0 ordem 1 ordem 2


x0 y0 y0
y1 y0
h
y2 2y1 +y0
x1 y1 y1 2h2
y2 y1
h
x2 y2 y2

56
Figura 15: Aproximacao usando um polinomio de grau 2

Pela formula de Interpolacao de Newton, o polinomio P2 (x) e dado por:

y0 y1 y2 2y1 + y0
P2 (x) = y0 + (x x0 ) + (x x0 )(x x1 ).
h 2h2
Integrando entre x0 e x1 e fazendo a mudanca de variavel x = x0 + u obtemos

x2 2h
y2 2y1 + y0
Z Z
y0 y1
P2 (x)dx = [y0 + u+ u(u h)]du.
x0 0 h 2h2

Desenvolvendo as contas:
Z x1
h
P2 (x)dx = [y0 + 4y1 + y2 ].
x0 3

Logo,
h
I( f ) [ f (x0 ) + 4 f (x1 ) + f (x2 )]
3
.

Observacao 4.3. A Formula


Z b
h
f (x)dx [ f (x0 ) + 4 f (x1 ) + f (x2 )] (4.10)
a 3

e chamada regra 1/3 de Simpson.

4.4.1 Limitante superior para o Erro E2 na regra 1/3 de Simpson

Neste caso (x) = (x x0 )(x x1 )(x x2 ) e desde que x1 = a + h = a+b


2 , segue que
Z x2
(x)dx = 0 (4.11)
x0

57
Procedemos da seguinte maneira para estimar o erro cometido. Acrescentamos um
ponto artificial x3 := x1 ao conjunto de pontos x0 , x1 , x2 e determinaremos o polinomio
interpolante P (x) que e definido pelos pontos

x0 , x1 , x2 , x3 .

A tabela de diferencas divididas para estes 4 pontos e

xi yi ordem 0 ordem 1 ordem 2 ordem 3


x0 y0 y0
y1 y0
h
y2 2y1 +y0
x1 y1 y1 2h2
y2 y1 4y1 3y2 y0
h 2h3
y1 y2
x2 y2 y2 h2
y1 y2
h
x1 y1 y1

Pela formula interpolatoria de Newton,

y0 y1 y2 2y1 + y0 4y1 3y2 y0


P (x) = y0 + (xx0 )+ 2
(xx0 )(xx1 )+ (xx0 )(xx1 )(xx2 ).
h 2h 2h3
Em outras palavras
4y1 3y2 y0
P (x) = P2 (x) + (x).
2h3
R x2
Integrando entre x0 e x2 e como x0
(x)dx = 0 obtemos
Z x2 Z x2 Z x2 Z x2
4y1 3y2 y0
P (x)dx =

P2 (x)dx + (x)dx = P2 (x)dx.
x0 x0 2h3 x0 x0

Inferimos que aproximar I( f ) pela integral de P2 (x) e igual a aproxima-la pela integral
de P (x). Por tanto, o erro cometido usando P2 (x) e igual ao erro cometido usando P (x).
Assim, e suficiente determinar o erro para P (x) que e um polinomio de grau 3 = 2 + 1.
Isto e, devemos realizar a mesma analise da secao (4.2.1) para P (x). Entao definindo a
funcao
(x) = (x x0 )(x x1 )(x x2 )(x x1 ) = (x x0 )(x x1 )2 (x x2 )

obtemos que, existe um [x0 , x2 ] tal que

f (4) ()
f (x) = P (x) +
(x)
4!

Desse modo,
x2 x2 x2
f (4) ()
Z Z Z
K
|E| = |
( f (x) P (x))dx| | || (x)|dx | (x)|dx (4.12)
x0 x0 4! 4! x0

58
n o
em que K = max | f (4) (x)| : x0 x x2 . Como (x) 0 para todo x [x0 , x2 ],
| (x)| = (x) em [x0 , x2 ]. Fazendo a mudanca x = u + x0 e integrando

x2 2h
4h5
Z Z
| (x)|dx = u(u h)2 (u 2h)du =
x0 0 15

Substituindo na equacao (4.12),


K 4h5
|E|
4! 15
ou seja,

O erro na regra 1/3 de Simpson e

h5 n o
|E| max | f (4) (x)| : a x b
90

Exemplo 4.4. Encontre uma aproximacao da integral


Z 2
x2 ln(x)dx
1

pela regra 1/3 de Simpson e determine um limitante superior para o erro cometido ao
realizar a aproximacao.

Solucao:

Neste exemplo h = 21
2 = 0, 5, x0 = 1, x1 = 1, 5, x2 = 2 e

f (x1 ) = 0, f (x1 ) = 0, 91229, f (x2 ) = 2, 77258.

Substituindo na aproximacao dada pela equacao (4.10) da Regra 1/3 de Simpson:


Z 2
0, 5
x2 ln(x)dx [0 + 4(0, 91229) + 2, 77258] = 1, 07029.
1 3

Repare que f (4) (x) = x22 entao

n o n2 o
max | f (4) (x)| : 1 x 2 = max 2 : 1 x 2 = 2.
x
Por tanto, um limitante superior para o erro e dado por

(0, 5)5
|E| (2) = 0, 00069.
90

59
4.4.2 Regra 1/3 de Simpson Generalizada

Analogamente que no caso da Regra do Trapezio, a Regra 1/3 de Simpson pode-se


generalizar. Isto e, podemos dividir o intervalo de integracao [a, b] em n sub-intervalos
e aplicar a regra 1/3 de Simpson a cada dois sub-intervalos. Isto so e possvel de fazer
se n e par.
Definimos h = ba
n , os pontos

x0 = a, x1 = a + h, x2 = a + 2h, ..., xn = b.

e os intervalos Ii = [xi1 , xi ]. A figura abaixo mostra a sub-divisao com n = 6 sub-


intervalos.

Figura 16: Regra 1/3 de Simpson Generalizada.

A cada dois intervalos I2j1 e I2j podemos aplicar a Regra 1/3 de Simpson obtendo
uma aproximacao da integral de f (x) no intervalo I2j1 I2 j :
Z x2 j
h
f (x)dx [ f (x2j2 ) + 4 f (x2j1 ) + f (x2j )] = A j , j = 1, ..., n/2.
x2j2 3

Assim a integral I( f ) sera aproximada pela soma das aproximacaos sobre estes intervalos:
Z xn
f (x)dx A1 + A2 + ... + An/2
x0

ou
Z xn
h h h
f (x)dx [ f (x0 )+4 f (x1 )+ f (x2 )]+ [ f (x2 )+4 f (x3 )+ f (x4 )]+...+ [ f (xn2 )+4 f (xn1 )+ f (xn )].
x0 3 3 3

Simplificando, obtemos a Regra 1/3 de Simpson Generalizada


Z xn
h X X
f (x)dx [ f (x0 ) + 4 f (xi ) + 2 f (xi ) + f (xn )]. (4.13)
x0 3
i impar i par

60
Como o erro total e menor que a soma dos n/2 erros individuais, segue que

n h5 n o
|E| . max | f (4) (x)| : a x b
2 90

Sabendo que nh = xn x0 e sustituindo na desigualdade anterior, o erro na Regra 1/3 de


Simpson Generalizada e

h4 n o
|E| (xn x0 ) max | f (4) (x)| : a x b . (4.14)
180

Exemplo 4.5. Encontre uma aproximacao da integral


Z
6
ln(cos x)dx
0

pela Regra 1/3 de Simpson Generalizada e determine o menor numero de sub-intervalos


que sao necessarios para que o erro seja menor que 106 .

Solucao:
Repare que para satisfazer a condicao desejada, e suficiente que:

h4 n o
(xn x0 ) max | f (4) (x)| : a x b < 106 (4.15)
180
/6
Note que h = n = 6n e f (4) (x) = 2(3sec4 (x) 2sec2 (x)). Entao:
n o n o
max | f (4) (x)| : 0 x /6 = max | 2(3sec4 (x) 2sec2 (x))| : 0 x /6 = 2

Substituindo em (4.15),

h4
(/6 0).2 < 106 = h < 0, 11450 = < 0, 11450
180 6n

Logo n > 4, 5729. Como n deve ser par, o menor n e 6.



Com este dado, podemos calcular a integral. Teremos que h = 6n = 36 . Os
pontos estao tabelados abaixo:

i 0 1 2 3 4 5 6
5
xi 0 36 18 12 9 36 6
f (xi ) 0 -0.003812 -0.015308 -0,034668 -0,062202 -0,098376 -0,143841

61
Pela regra 1/3 de Simpson Generalizada

/36
Z
6
ln(cos x)dx [0 + 4(0.003812 0.034668 0, 098376)+
0 3

+2(0, 015308 0, 062202) 0, 143841]

Entao Z
6
ln(cos x)dx 0, 024617.
0

3
4.5 Regra 8
de Simpson
3
Como era de esperarse, a regra 8 de Simpson e obtida aproximando f (x) por um po-
linomio P3 (x) de grau n = 3. Supondo que desejamos aproximar
Z b
I( f ) = f (x)dx,
a

definimos h = ba
3 , os pontos

x0 = a, x1 = a + h, x2 = a + 2h, x3 = b,

e suas imagens
y0 = f (x0 ), y1 = f (x1 ), y2 = f (x2 ), y3 = f (x3 ).

Figura 17: Aproximacao usando um polinomio de grau 3.

Fazendo uma analise similar a aquela feita nos casos anteriores, deduzimos que a
aproximacao de I( f ) e dada por

62
Z b
3h
I( f ) = f (x)dx [ f (x0 ) + 3 f (x1 ) + 3 f (x2 ) + f (x3 )] (4.16)
a 8

tambem chamada Regra 3/8 de Simpson.

4.5.1 Limitante superior para o erro na regra 3/8 de Simpson

Como nos casos anteriores podemos provar que o erro E na regra 3/8 de Simpson e
limitado por

3h5 n o
|E| max | f (4) (x)| : a x b (4.17)
80

Exemplo 4.6. A distancia vertical percorrida por um projetil entre x = 8 e x = 30


segundos e dada pela formula
Z 30  1400 
[2000 ln 9, 8x]dx.
8 1400 21x

Utilize a regra 3/8 de Simpson para aproximar a integral e encontre um limitante superior
para o erro.

Solucao:

Dos dados temos que h = 308


3 = 22
3. Os pontos e suas imagens estao tabelados
abaixo:

i 0 1 2 3
46 68
xi 8 3 3 30
f (xi ) 177,2667 372,4629 608,8976 901,6740

Pela regra 3/8 de Simpson generalizada


Z 30  1400  3(22/3)
[2000 ln 9, 8x]dx [177, 2667 + 3(372, 4629)+
8 1400 21x 8

+3(608, 8976) + 901, 6740]

Entao Z 30  1400 
[2000 ln 9, 8x]dx 11063, 3104.
8 1400 21x

63
Para determinar o limitante superior do erro, precisamos de

2.3.214 .2000
f (4) (x) = .
(1400 21x)4

Assim
n o n 2.3.214 .2000 o
max | f (4) (x)| : 8 x 30 = max : 8 x 30 = f (4) (30) = 0, 0063889
(1400 21x)4

Substituindo no limitante do erro dado pela inequacao (4.17):

3 22 5
|E| .( ) .(0, 0063889) = 5, 081178. (4.18)
80 3

4.5.2 Regra 3/8 de Simpson Generalizada

Para utilizarmos a Regra 3/8 de Simpson Generalizada precisamos que n seja multiplo
de 3. Com isto podemos agrupar cada tres intervalos e aplicar a regra 3/8 de Simpson a
cada grupo. Definindo

ba
h= , x0 = a, ..., xi = a + ih, ..., xn = b
n

entao I( f ) e aproximada pela soma dos n/3 grupos e pode-se mostrar que
Z b
3h X X
f (x)dx [ f (x0 ) + 3 f (xi ) + 2 f (xi ) + f (xn )]. (4.19)
a 8
i,3k i=3k

Ja o calculo do erro da Regra 3/8 de Simpson Generalizada segue considerando que


o erro total e menor que a soma dos erros individuais dos n/3 grupos:

n 3h5 n o
|E| . max | f (4) (x)| : a x b ,
3 80

que simplificando e substituindo nh = xn x0 fica

h4 n o
|E| (xn x0 ) max | f (4) (x)| : a x b , (4.20)
80

Exemplo 4.7. Um fluido atravessa a seccao de um tubo com uma velocidade v(r), sendo r
a distancia radial ao centro da seccao. Determine a quantidade Q do fluido que atravessa

64
esta seccao por unidade de tempo, dada por
Z r0
Q = 2 rv(r)dr
0

em que r0 = 4.5 e o raio da seccao circular do tubo, usando os valores da tabela:

r 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5


v(r) 3 2.9499 2.8942 2.8312 2.7584 2.5642 2.4199 2.1985 2.1001 0

Solucao:
Dos dados h = 0.5 e n = 9. Repare que a funcao a integrar e f (r) := rv(r); a tabela
abaixo corresponde aos valores de f (r):

i 0 1 2 3 4 5 6 7 8 9
ri 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
f (ri ) 0 1,47495 2,8942 4,2468 5,5168 6,4105 7,2597 7,6947 8.4004 0

Pela regra 3/8 de Simpson generalizada,

3(0, 5)
Q 2. [0 + 3(1, 47495 + 2, 8942 + 5, 5168 + 6, 4105 + 7, 6947 + 8, 4004)+
8

+2(4, 2468 + 7, 2597) + 0].

Entao Q 141, 59273.


Neste exemplo nao podemos calcular um limitante superior para o erro pois nao
temos a expressao analtica de f (r).

65
4.6 Exerccios
Exerccio 4.1. Aproxime as seguintes integrais usando:

(a) a regra dos trapezios;

(b) as regras de Simpson;


Z 1 Z 1,6 Z 1,5 Z /2
4 2x 2
(a) x dx; (b) 2
dx; (c) x ln(x)dx; (d) x sin(x)dx.
0.5 1 x 4 1 0

Exerccio 4.2. Aproxime as integrais do exerccio 4.1 usando

(a) a regra dos trapezios com n = 4;

(b) a regra 1
3 de Simpson com n = 6;

(c) a regra 3
8 de Simpson com n = 9.
R2
Exerccio 4.3. Determine o mnimo n de subintervalos para aproximar I = 1
0 x+4
dx com
1
precisao de 105 e calcule a aproximacao. Use (a) a regra dos trapezios, (b) a regra 3 de
3
Simpson, e (c) a regra 8 de Simpson.
R1
Exerccio 4.4. Calcule o valor aproximado da 0
3ex dx usando:

(a) Regra de trapezios generalizada, com h = 1/5.

(b) Regra 1
3 de Simpson generalizada, com h = 1/6.

(c) Regra de Simpson generalizada, com h = 1/6.


3
8
R 2 cos(x)
Exerccio 4.5. Calcule 1 x+2 dx usando 6 subintervalos:

(a) Regra dos trapezios generalizada.

(b) Regra 1/3 de Simpson generalizada.

(c) Regra 3/8 de Simpson generalizada.

Exerccio 4.6. Determine o menor numero de subintervalos em que podemos dividir o


R 0.7
intervalo [0.1, 0.7] para calcular I = 0.1 (e3x + 7x)dx usando a regra dos trapezios com um
erro menor ou igual a 0.1. Para esta divisao calcule o valor aproximado de I.

Exerccio 4.7. Determine o menor numero de subintervalos em que podemos dividir


R 1.8
o intervalo [0.2, 1.8] para calcular 0.2 (x2 + sin(x) + 3)dx com um erro menor a 0.0001
usando:

(a) Regra 1/3 de Simpson generalizada.

(b) Regra 3/8 de Simpson generalizada.


R 5.6
Exerccio 4.8. Calcule o valor aproximado de 1.6
(ln(x + 8) 2x)dx usando a regra 1/3 de
Simpson generalizada com 6 subintervalos e um limitante superior para o erro.

66
R2 2
Exerccio 4.9. Calcule o valor aproximado de 0
ex dx usando n = 6 e (a) a regra dos
trapezios generalizada, (b) a regra 1/3 de Simpson e (c) a regra 3/8 de Simpson. Em cada caso
determine um limitante superior para o erro.

Exerccio 4.10. Um radar foi usado para medir a velocidade de um corredor durante os
primeiros 5 segundos de uma corrida (Veja a tabela ). Use a regra 1/3 de Simpson para
estimar a distancia que o corredor cobriu durante aqueles 5 segundos.

t(s) 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5


v(m/s) 0 4.67 7.34 8.86 9.73 10.22 10.51 10.67 10.76 10.81 10.81

Exerccio 4.11. A figura mostra um pendulo com comprimento L que forma um angulo
maximo de 0 com a vertical. Usando a Segunda Lei de Newton, pode ser mostrado que
o perodo T (o tempo para um ciclo completo) e dado por
s Z
L 2 dx
T=4 (4.21)
g 0
q
1 k2 sin2 (x)

onde k = sin( 20 ) e g e a aceleracao da gravidade. Se L = 1m e 0 = 42o , use a regra 3/8 de


Simpson com n = 6 para encontrar o perodo.

Figura 18: Pendulo.

R1
Exerccio 4.12. Seja a integral I = x
0 1+x2
dx.

(a) Aproxime o integrando por um polinomio de grau 3, p3 , passando pelos pontos


x0 = 0, x1 = 0, 3, x2 = 0, 7 e x3 = 1.

(b) Calcule o valor exato de I.

(c) Calcule o valor aproximado de I usando o polinomio p3 .

Exerccio 4.13. O permetro p de uma elipse de semi-eixos a e b e dado pela formula


Z 2 q
p= a2 sin2 (t) + b2 cos2 (t)dt (4.22)
0

67
Encontre um valor aproximado do permetro de uma elipse com semi-eixos a = 2 e b = 1
usando as Regras de Simpson com n = 6.

Exerccio 4.14. (a) Utilizando a Formula de Simpson, calcule numericamente a integral


definida: Z
3 2 (t)
I= ecos dt (4.23)
3
2 (t)
a partir dos dados da seguinte tabela: onde e = 2.718282 e f (t) = ecos .

t 3 6 0
6

3
1 3 3 1
f (t) e4 e4 e e 4 e4

(b) Delimite o erro cometido na integracao numerica efetuada na parte (a), sabendo
que no intervalo 3 t
3 temos | f (4) (t)| 20e.

68
5 Resolucao Numerica de Equacoes Diferenciais Ordinarias

5.1 Introducao
Muitas leis na ciencia sao baseados em modelos que explicam variacoes de propriedades
e estados de sistemas descritos por equacoes diferenciais. Estas equacoes aparecem em
ciencia e engenharia, mas tambem em economia, ciencias sociais, biologia, negocios,
etc. Por isso, estudar as tecnicas para resolve-las tem-se convertido em uma materia
fundamental, senao obrigatoria, para quem deseja abordar, formular ou resolver os
problemas que estas areas apresentam.

5.2 Preliminares
Uma equacao diferencial ordinaria (edo) de primeira ordem e uma equacao da forma

y0 = f (x, y)

dy
em que f : R2 R e uma funcao contnua, e y0 = dx e a derivada de y em relacao a x.
Resolver esta equacao consiste em determinar uma solucao y = (x), ou seja, encontrar
uma funcao que satisfaz
0 (x) = f (x, (x)).

Exigindo que (x0 ) = y0 , obteremos o problema de valor inicial (PVI)



y = f (x, y)

0
(5.1)
y(x0 ) = y0

A condicao y(x0 ) = y0 e chamada condicao inicial do PVI.


Embora existam tecnicas para resolver certas equacoes diferenciais, para a maioria
delas nao existe uma maneira direta de achar uma expressao analtica da solucao (x).
Nestes casos, so e possvel determinar uma solucao numerica de (x). Resolver numeri-
camente uma equacao diferencial significa obter um conjunto de pontos (xn , yn ) tais que
yn aproxima o valor da funcao em xn ,

(xn ) yn

e supor, entao que os pontos (xn , yn ) definem aproximadamente . Desse modo uma
boa aproximacao de e a funcao que interpola estes pontos.
Seja N + 1 o numero de pontos. Suponha que os pontos xn , n = 0, 1, ..., N sao igual-
mente espacados, isto e

xN x0
xn = x0 + nh, n = 0, 1, ..., N, e h = .
N

Cada metodo numerico para resolver o problema de valor inicial depende da forma

69
Figura 19: Interpretacao geometrica da solucao numerica.

com a qual escolhemos as aproximacoes yn . No que segue apresentaremos o Metodo de


Euler e os Metodos de Runge-Kutta.

5.3 O Metodo de Euler


O Metodo de Euler esta baseado em aproximar os valores dos yn usando a reta tangente
a solucao y = (x). Por exemplo, suponha que desejamos calcular a aproximacao y1 a
partir da aproximacao y0 , em que y0 e o valor inicial. Como sabemos que a derivada e a
inclinacao K da reta tangente no ponto (x0 , y0 ), podemos escrever,

K = 0 (x0 ).

Entao a equacao L(x) da reta tangente e

(y y0 ) = K(x x0 ), ou L(x) = y = y0 + 0 (x0 )(x x0 )

Figura 20: Interpretacao geometrica do Metodo de Euler.

Mas (x) e solucao do PVI, entao 0 (x0 ) = f (x0 , y0 ). Como no Metodo de Euler a reta
tangente L aproxima temos que:

(x1 ) y1 = L(x1 ) = y0 + 0 (x0 )(x1 x0 ) = y0 + f (x0 , y0 )(x1 x0 ). (5.2)

70
Lembrando que h = x1 x0 , concluimos que

y1 = y0 + h f (x0 , y0 ).

Tendo determinado a aproximacao (x1 , y1 ), podemos supor que o PVI possui agora
a condicao inicial (x1 , y1 ). Com ela podemos determinar a seguinte aproximacao y2 .
Fazendo a mesma analise, obtem-se

y2 = y1 + h f (x1 , y1 ).

Em forma geral, a formula para o Metodo de Euler e:

yn+1 = yn + h f (xn , yn ), n = 0, 1, ...., N 1. (5.3)

Exemplo 5.1. Pelo metodo de Euler, determine numericamente uma aproximacao de


y(1) no PVI
y =x y

0 3
(5.4)
y(0) = 2

Use N = 4.

Solucao:

Observe que f (x, y) = x3 y, x0 = 0 e y0 = 2. Como desejamos y(1), x4 = 1 e entao


x [0, 1]. Assim

10
h= = 0, 25; x0 = 0; x1 = 0, 25; x2 = 0, 5; x3 = 0, 75 e x4 = 1.
4

Queremos determinar y4 que aproxima y(1). Pela formula

yn+1 = yn + h f (xn , yn ), n = 0, 1, ...., N 1.

temos que , para n = 0, 1, ..., 3

yn+1 = yn + h f (xn , yn ), ou yn+1 = yn + 0, 25(x3n yn )

Se n = 0, teremos y1 = y0 + 0, 25(x30 y0 ). Substituindo

y1 = 2 + 0, 25(03 2) = 1, 5.

71
Se n = 1, teremos y2 = y1 + 0, 25(x31 y1 ). Substituindo

y2 = 1, 5 + 0, 25(0, 253 1, 5) = 1, 12890

Continuando
y3 = y2 + 0, 25(x32 y2 ) = 0, 8779

e
y4 = y3 + 0, 25(x33 y3 ) = 0, 7638.

Dessa forma, y(1) 0, 7638.

Repare que o PVI do Exemplo 5.1 pode-se resolver analticamente. A sua solucao e

y(x) = x3 3x2 + 6x 6 + 8ex

Na figura abaixo apresentamos a verdadeira solucao e comparamos com as aproximacoes


obtidas pelo metodo de Euler.

Figura 21: Solucao real e solucao aproximada do PVI do Exemplo 5.1.

No Exemplo 5.1 existia uma solucao analtica do PVI. Agora apresentaremos um


exemplo no nao temos uma expressao analtica da solucao. Entao a unica maneira
de acessar a solucao e a analise numerica.

Exemplo 5.2. Determine numericamente uma aproximacao de y(3) no PVI

y2 x

y0 = 5


(5.5)
y(0) = 1

Use N = 6.

72
Solucao:
y2 x
Observe que N = 6, f (x, y) = 5 , x0 = 0 e y0 = 1. Entao

30
h= = 0, 5, e x0 = 0; x1 = 0, 5; x2 = 1; x3 = 1, 5; x4 = 2; x5 = 2, 5; x6 = 3.
6
 y2 x 
Substituindo na equacao yn+1 = yn + h f (xn , yn ) = yn + 0, 5 n 5 n . Se n = 0 entao

 y20 x0   12 0 
y1 = y0 + 0, 5 = 1 + 0, 5 = 1, 1.
5 5

Com este y1 podemos calcular y2 . Se n = 1 entao

y21 x1  1, 12 0, 5 
y2 = y1 + 0, 5( ) = 1, 1 + 0, 5 = 1, 171.
5 5

Continuando este processo, calculamos

 y2 x2   1, 1712 1 
y3 = y2 + 0, 5 2 = 1, 171 + 0, 5 = 1, 2081
5 5

 y23 x3   1, 20812 1, 5 
y4 = y3 + 0, 5 = 1, 2081 + 0, 5 = 1, 3040
5 5
 y24 x4   1, 30402 2 
y5 = y4 + 0, 5 = 1, 3040 + 0, 5 = 1, 2740
5 5
 y25 x5   1, 27402 2, 5 
y6 = y5 + 0, 5 = 1, 2740 + 0, 5 = 1, 1863
5 5

Na figura abaixo mostramos o grafico dos pontos que aproximam a solucao do


Exemplo 5.2.

Figura 22: Solucao aproximada do PVI do Exemplo 5.2.

73
5.4 Metodos de Runge-Kutta
Como no Metodo de Euler, sejam (x0 , y0 ) as condicoes iniciais e (x) a solucao do PVI:

y = f (x, y)

0
(5.6)
y(x0 ) = y0

Repare que a aproximacao dada pelo Metodo de Euler possui um erro pois utilizamos
a reta tangente L1 = L para aproximar o valor de (x1 ), o que nos da somente uma
aproximacao linear. Seja K1 a inclinacao de L1 , ou seja,

K1 = f (x0 , y0 ).

O problema de determinar (x1 ) estaria resolvido se, por acaso, conseguirmos en-
contrar a inclinacao K da reta secante L que passa pelos pontos (x0 , y0 ) e (x1 , (x1 )).
Pois
(x1 ) = y0 + hK . (5.7)

Porem, encontrar K e tao dificil quanto achar (x1 ).

Figura 23: A reta L .

A ideia genial do Carl Runge e o Martin Wilhelm Kutta foi escolher uma aproximacao
de K utilizando a funcao f (x, y) e compara-la com a serie de Taylor de (x). Explica-
remos esta ideia no metodo de Runge-Kutta de Ordem 2 a seguir.

74
5.4.1 Metodos de Runge-Kutta de Ordem 2

Nos metodos de Runge-Kutta de ordem 2, aproximamos K utilizando duas inclinacoes.


Para isso, considere um numero real a2 [0, 1] e defina o ponto

P1 = (x0 + a2 h, yn + a2 hK1 )

que esta sobre a reta tangente L1 e cuja abscissa e x0 + a2 h. Como f (x, y) e a inclinacao
da reta tangente da solucao do PVI, que passa pelo ponto (x, y), podemos definir uma
reta que passa por P1 com inclinacao

K2 = f (P1 ) = f (x0 + a2 h, y0 + a2 hK1 ).

Esta reta pode ser transladada ao ponto (x0 , y0 ) para obter uma reta L2 com inclinacao
K2 .

Figura 24: Interpretacao geometrica do Metodo de Runge-Kutta de ordem 2.

Com estas duas retas L1 e L2 podemos aproximar a inclinacao K . O criterio escolhido


pelo Runge e o Kutta para aproximar K foi considerar a media ponderada de K1 e K2 .
Desse modo, considerando c1 , c2 [0, 1] tal que c1 + c2 = 1, a aproximacao de K e

K c1 K1 + c2 K2 .

Substituindo na equacao (5.7), podemos dizer que (x1 ) e aproximada por y1 :

(x1 ) y1 = y0 + h(c1 K1 + c2 K2 ). (5.8)

Ate este ponto, os valores de a2 , c1 e c2 foram arbitrarios. Mas, substituindo na


serie de Taylor da Solucao (x) e possvel mostrar (depois de algumas contas) que estes
coeficientes estao relacionados pelas seguintes equacoes:

1
c1 + c2 = 1, e a2 c2 = .
2

75
Como este sistema de equacoes tem infinitas solucoes, podemos definir infinitos
metodos de Runge-Kutta de ordem 2, um para cada solucao. Nestes metodos precisamos
de duas inclinacoes para encontrar y1 :

y1 = y0 + h(c1 K1 + c2 K2 )




K1 = f (x0 , y0 )

(5.9)




K = f (x + a h, y + a hK )

2 0 2 0 2 1

Generalizando para os pontos xn , obtemos para todo n = 0, 1, ..., N 1:

yn+1 = yn + h(c1 K1 + c2 K2 )




K1 = f (xn , yn )

(5.10)




K = f (x + a h, y + a hK )

2 n 2 n 2 1

Os metodos de Runge-Kutta de ordem 2 mais utilizados sao:

(a) O Metodo de Euler Modificado. Neste caso c1 = 0, c2 = 1, a2 = 1/2. Para


n = 0, 1, ..., N 1, as formulas sao

yn+1 = yn + hK2




K1 = f (xn , yn )

(5.11)



K = f (x + h , y + hK1 )


2 n 2 n 2

(b) O Metodo de Euler Melhorado ou Aperfeicoado. Neste caso c1 = 1/2, c2 =


1/2, a2 = 1. Para n = 0, 1, ..., N 1, as formulas sao

yn+1 = yn + 2h (K1 + K2 )




K1 = f (xn , yn )

(5.12)




K = f (x + h, y + hK )

2 n n 1

Exemplo 5.3. Pelo Metodo de Euler Aperfeicoado, determine numericamente uma


aproximacao de y(1) no PVI
y =x y

0 3
(5.13)
y(0) = 2

Use N = 4.

Solucao:

Observe que f (x, y) = x3 y, x0 = 0 , y0 = 2 e N = 4. Como antes

10
h= = 0, 25; x0 = 0; x1 = 0, 25; x2 = 0, 5; x3 = 0, 75; x4 = 1.
4

76
Queremos determinar y4 que aproxima y(1). Pela formula do Metodo de Euler
Aperfeicoado:
h
yn+1 = yn + (K1 + K2 ), n = 0, 1, ...., N 1.
2
onde


K1 = f (xn , yn )
K2 = f (xn + h, yn + hK1 )

Se n = 0, teremos

K1 = f (x0 , y0 ) = x30 y0 = 03 2 = 2

K2 = f (x0 + h, y0 + hK1 ) = f (0 + 0.25, 2 + 0.25(2)) = f (0.25, 1.5) = 1, 4843.

Por tanto
h 0.25
y1 = y0 + (K1 + K2 ) = 2 + (2 1, 4843) = 1, 5644
2 2
Se n = 1, teremos

K1 = f (x1 , y1 ) = x31 y1 = 0, 253 1, 5644 = 1, 5487

K2 = f (x1 +h, y1 +hK1 ) = f (0.25+0.25, 1.5644+0.25(1.5487)) = f (0.5, 1.1772) = 1.0522

Por tanto

h 0.25
y2 = y1 + (K1 + K2 ) = 1, 5644 + (1, 5487 1, 0555) = 1.2388.
2 2

Se n = 2, teremos

K1 = f (x2 , y2 ) = x32 y2 = 0, 53 1, 2388 = 1, 1138

K2 = f (x2 +h, y2 +hK1 ) = f (0.5+0.25, 1.2388+0.25(1.1138)) = f (0.75, 0.9603) = 0.5384

Por tanto

h 0.25
y3 = y2 + (K1 + K2 ) = 1, 2388 + (1, 1138 0, 5384) = 1.0322.
2 2

Se n = 3, teremos

K1 = f (x3 , y3 ) = x33 y3 = 0, 753 1, 0322 = 0, 6103.

K2 = f (x3 + h, y3 + hK1 ) = f (0.75 + 0.25, 1.0322 + 0.25(0.6103)) = f (1, 0.8796) = 0.1204

Por tanto

h 0.25
y4 = y3 + (K1 + K2 ) = 1, 0322 + (0.6103 + 0, 1204) = 0.9709
2 2

77
De novo, comparando com a solucao verdadeira

y(x) = x3 3x2 + 6x 6 + 8ex

conclumos que, como visto na figura abaixo, a solucao pelo Metodo Aperfeicoado e
melhor que a obtida pelo Metodo de Euler.

Figura 25: Solucao real e solucao aproximada do PVI do Exemplo 5.3.

5.4.2 Metodos de Runge Kutta de Ordem 3

Os metodos de Runge-Kutta de ordem 3 utilizam 3 inclinacoes para aproximar K .


Ao igual que nos metodos de ordem 2, escolhemos a2 [0, 1] e definimos o ponto

P1 = (x0 + a2 h, y0 + a2 hK1 )

Com este ponto definimos a inclinacao

K2 = f (P1 ) = f (x0 + a2 h, y0 + a2 hK1 )

Para determinar uma terceira inclinacao, repetimos o processo anterior para K2 , ou seja,
escolhemos a3 [0, 1] e um ponto P2 dado por

P2 = (x0 + a3 h, y0 + a3 hK2 )

Com este ponto podemos definir a inclinacao K3 dada por

K3 = f (P2 ) = f (x0 + a3 h, y0 + a3 hK2 )

Entao a media ponderada de K1 , K2 e K3 sera a nossa aproximacao de K :

K = c1 K1 + c2 K2 + c3 K3 ,

78
em que c1 + c2 + c3 = 1. Substituindo na equacao (5.7), a aproximacao de (x1 ) e

y1 = y0 + h(c1 K1 + c2 K2 + c3 K3 ).

Generalizando para o ponto (xn , yn ):





yn+1 = yn + h(c1 K1 + c2 K2 + c3 K3 )

K1 = f (xn , yn )




K2 = f (xn + a2 h, yn + a2 hK1 )





K3 = f (xn + a3 h, yn + a3 hK2 )


Comparando com a serie de Taylor de (x) (e depois de muitas contas), segue que
a2 , a3 , c1 , c2 e c3 estao relacionados pelas equacoes:

1 1 1
c1 + c2 + c3 = 1, c2 a2 + c3 a3 = , a3 c3 a2 = , e c2 a22 + c3 a23 = .
2 2 3

Como o sistema anterior tem infinitas solucoes, existirao infinitos Metodos de Runge-
Kutta de ordem 3 (um para cada solucao).

Os metodos de Runge-Kutta de ordem 3 mais utilizados sao:

(a) O Metodo de Heun. Neste caso c1 = 1/4, c2 = 0, c3 = 3/4, a2 = 1/3, a3 = 2/3.


Para n = 0, 1, ..., N 1, as formulas sao



yn+1 = yn + h4 (K1 + 3K3 )

K1 = f (xn , yn )



(5.14)

K2 = f (xn + h3 , yn + hK3 1 )





K3 = f (xn + 2h , yn + 2hK2 )


3 3

(b) O Metodo de Nystrom. Neste caso c1 = 1/4, c2 = 3/8, c3 = 3/8, a2 = 2/3, a3 =


2/3. Para n = 0, 1, ..., N 1, as formulas sao



yn+1 = yn + 8h (2K1 + 3K2 + 3K3 )

K1 = f (xn , yn )



(5.15)

2hK1
K2 = f (xn + 2h
3 , yn + 3 )





2hK2
3 , yn + 3 )
K3 = f (xn + 2h


Exemplo 5.4. Pelo Metodo de Nystrom, determine numericamente uma aproximacao


de y(1) no PVI
y =x y

0 3
(5.16)
y(0) = 2

79
Use N = 4.

Solucao:

Do enunciado f (x, y) = x3 y, x0 = 0, y0 = 2, e

10
h= = 0, 25; x0 = 0; x1 = 0, 25; x2 = 0, 5; x3 = 0, 75; x4 = 1.
4

Se n = 0, obteremos
K1 = f (x0 , y0 ) = f (0, 2) = 2
2h 2hK1
K2 = f (x0 + , y0 + ) = f (0.16666, 1.66666) = 1.6620.
3 3
2h 2hK2
K3 = f (x0 + , y0 + ) = f (0.16666, 1.723) = 1.7183
3 3
Por tanto
h
y1 = y0 + (2K1 + 3K2 + 3K3 ) = 1.5424.
8
Continuando este processo, encontramos que

y2 = 1, 2142; y3 = 1, 0025; y4 = 0, 9338.

Assim, o valor procurado e y(1) 0, 9338.

Sabemos que a solucao verdadeira e

y(x) = x3 3x2 + 6x 6 + 8ex

Da figura abaixo podemos verificar que metodo de Nystrom fornece uma melhor
aproximacao que o metodo de Euler Aperfeicoado.

Figura 26: Solucao real e solucao aproximada do PVI do Exemplo 5.4.

80
5.4.3 O Metodo de Runge-Kutta de Ordem 4

Como e claro, os Metodos de Runge-Kutta de Ordem 4 utilizam 4 inclinacoes para


aproximar K . Estas inclinacoes sao as seguintes

K1 = f (xn , yn )

K2 = f (xn + a2 h, yn + a2 hK1 )

K3 = f (xn + a3 h, yn + a3 hK2 )

K4 = f (xn + a4 h, yn + a4 hK3 )

A aproximacao de K sera dada pela media ponderada

K c1 K1 + c2 K2 + c3 K3 + c4 K4 ,

e yn+1 sera dado por

yn+1 = yn + h(c1 K1 + c2 K2 + c3 K3 + c4 K4 )

onde a2 , a3 , a4 [0, 1] e c1 + c2 + c3 + c4 = 1.
Como nos metodos anteriores existem relacoes entre os coeficientes a1 , a2 , a3 e c1 , c2 , c2 , c4 .
Para nossos propositos, so precisamos do metodo de ordem 4 no qual a2 = 12 , a2 = 12 , a3 =
1 e c1 = 16 , c2 = 13 , c3 = 13 , c4 = 61 .

Com os dados anteriores, o metodo de Runge-Kutta de ordem 4 e definido pelas


formulas, n = 0, 1, ..., N 1:




yn+1 = yn + h6 (K1 + 2K2 + 2K3 + K4 )
K1 = f (xn , yn )





hK1
K2 = f (xn + h2 , yn +

2 )
(5.17)



hK2

K3 = f (xn + 2 , yn
h
+ 2 )





K4 = f (xn + h, yn + hK3 )


Exerccio 5.1. Com N = 3, resolva pelo metodo de Runge-Kutta de ordem 4 o seguinte


PVI
y =x y +3

0 2 2
(5.18)
y(0) = 0.5


Determine y(1).

81
5.5 Sistemas de Equacoes Diferenciais Ordinarias
Um sistema de (duas) equacoes diferenciais e um sistema da forma

y0 = f (x, y, z)




z0 = g(x, y, z)

(5.19)




y(x ) = y , z(x ) = z

0 0 0 0

que possui uma variavel independente x e duas variaveis dependentes y e z. As ex-


pressoes y0 e z0 sao as derivadas de y e z em relacao a x e as condicoes y(x0 ) = y0 e
z(x0 ) = z0 sao chamadas condicoes iniciais. Resolver este sistema significa encontrar
duas funcoes y(x) e z(x) que verificam as equacoes (5.19):

y (x) = f (x, y(x), z(x))


0



z (x) = g(x, y(x), z(x))

0



y(x ) = y , z(x ) = z

0 0 0 0

Suponha que desejamos resolve-lo em N + 1 pontos separados igualmente por uma


constante h:
x0 ; x1 = x0 + h; x2 = x0 + 2h; ...; xN = x0 + Nh.
xN x0
Isto e h = N .
Defina uma nova variavel dependente de x

U = (y, z),

e uma funcao de varias variaveis

F(x, U) = F(x, y, z) = ( f (x, y, z), g(x, y, z)).

Assim o sistema (5.19) pode ser escrito na forma




U0 = F(x, U)
(5.20)

U(x0 ) = (y(x0 ), z(x0 )) = (y0 , z0 )

que e um Problema de Valor Inicial de primeira ordem em duas variaveis. O PVI


(5.20) pode ser resolvido usando algum dos Metodos estudados nas secoes anteriores,
aplicando as formulas a funcao F(x, U) ao inves de a funcao f (x, y). Deve-se ter cuidado
que F(x, U) e uma funcao vetorial. Por exemplo, adaptando o Metodo de Euler a este
sistema, as formulas para as aproximacao de y e de z sao:

Un+1 = Un + hF(xn , Un )

82
ou, equivalentemente

(yn+1 , zn+1 ) = (yn , zn ) + hF(xn , yn , zn ) = (yn , zn ) + h( f (xn , yn , zn ), g(xn , yn , zn )).

Isolando yn+1 e zn+1 ,


yn+1 = yn + h f (xn , yn , zn )


(5.21)
zn+1 = zn + hg(xn , yn , zn )

Assim as equacoes do Metodo de Euler para um sistema de duas equacoes diferenciais


sao as seguintes:

Para todo n = 0, 1, ..., N 1,



yn+1 = yn + h f (xn , yn , zn )


(5.22)
zn+1 = zn + hg(xn , yn , zn )

com condicoes iniciais x0 , y0 e z0 .

Exemplo 5.5. Resolva o sistema pelo metodo de Euler

y = x2 y2 + 2z
0



z0 = xy z2

(5.23)




y(0) = 1, z(0) = 2

determinando y(1) e z(1), com N = 3.

Solucao:

Observe que f (x, y, z) = x2 y2 + 2z e g(x, y, z) = xy z2 . Defina U = (y, z) e

F(x, U) = F(x, y, z) = ( f (x, y, z), g(x, y, z)) = (x2 y2 + 2z, xy z2 )

e x0 = 0, y0 = 1 e z0 = 2. Como x [0, 1], h = 10


3 = 1/3. Os pontos xn sao

x0 = 0, x1 = 1/3 = 0.3333; x2 = 2/3 = 0.6666; x3 = 1.

Pelas formulas de Euler, para n = 0, 1, ..., N 1,



yn+1 = yn + h f (xn , yn , zn ) = yn + h(xn yn + 2zn )

2 2

zn+1 = zn + hg(xn , yn , zn ) = zn + h(xn yn z2n )



com condicoes iniciais y0 = 1 e z0 = 2.

83
Se n = 0,

y1 = y0 + h(x0 y0 + 2z0 ) = 1 + (1/3)(0 1 + 2(2)) = 2

2 2 2 2

z1 = z0 + h(x0 y0 z2 ) = 2 + (1/3)((0)(1) (2)2 ) = 0.6666




0

Se n = 1,

y2 = y1 + h(x1 y1 + 2z1 ) = 2 + (1/3)((0.3333) (2) + 2(0.6666)) = 1, 1480

2 2 2 2

z2 = z1 + h(x1 y1 z2 ) = 0.6666 + (1/3)((0.3333)(2) (0.6666)2 ) = 0.7406




1

Se n = 2,

y3 = y2 + h(x2 y2 + 2z2 ) = 1, 1480 + (1/3)(0.6666 1, 1480 + 2(0.7406)) = 1, 3505

2 2 2 2

z3 = z2 + h(x2 y2 z22 ) = 0, 7406 + (1/3)((0.6666)(1, 1480) (0, 7406)2 ) = 0.8128.




Por tanto, as aproximacoes de y(1) e z(1) sao y3 = 1, 3505 e z3 = 0, 8128.

Observacao 5.1. Duas observacoes sao importantes:

(a) Pode-se utilizar a mesma tecnica para resolver numericamente sistemas de n


equacoes.

(b) E possvel adaptar tambem os Metodos de Runge-Kutta para resolver sistemas


de equacoes.

Exerccio 5.2. Encontre as formulas para resolver o sistema de 3 equacoes diferenciais





y0 = f (x, y, z, w)

z0 = g(x, y, z, w)



(5.24)

w0 = h(x, y, z, w)





y(x0 ) = y0 , z(x0 ) = z0 , w(x0 ) = w0

pelo Metodo de Euler Modificado.

5.5.1 Aplicacao a equacoes diferenciais de segunda ordem

A solucao numerica de um sistema de equacoes lineares pode-se aplicar para resolver


equacoes diferenciais ordinarias de segunda ordem da forma

y00 = g(x, y, y0 ) (5.25)

84
sujeito as condicoes iniciais y(x0 ) = y0 e y0 (x0 ) = y00 . A ideia e fazer a mudanca

z = y0

e entao
z0 = y00 = g(x, y, y0 ) = g(x, y, z).

Assim, o sistema (5.25) transforma-se no PVI de primeira ordem com duas equacoes:

y0 = z




z0 = g(x, y, z)

(5.26)




y(x ) = y , z(x ) = y0

0 0 0 0

que tem a forma do sistema (5.19) em que f (x, y, z) = z. Por tanto pode ser resolvido
numericamente pelo metodo de Euler dado pelas equacoes (5.22).

Exemplo 5.6. Resolva pelo metodo de Euler o PVI de segunda ordem

mu00 + ku = au0 b(u0 )3

em que m = 1, k = 1, a = 2, b = 3, u(0) = 1, u0 (0) = 0.5. Determine aproximadamente


u(1) com N = 3.

Solucao:
Substituindo os dados a equacao fica:

u00 = u + 2u0 3(u0 )3 .

Fazendo y = u e z = u0 , entao y0 = u0 = z e z0 = u00 . Logo, obtemos um sistema de


equacoes de primeira ordem



y0 = z
z0 = y + 2z 3z3

com condicoes iniciais y0 = y(0) = u(0) = 1 e z0 = z(0) = u0 (0) = 0.5. Como x [0, 1]
e N = 3 entao
10
h= = 0, 3333.
3
Assim x1 = 0; x2 = 0.3333; x3 = 0.6666; x4 = 1. Pelas equacoes (5.22), as aproximacao
de yn+1 e zn+1 sao



yn+1 = yn + h f (xn , yn , zn ) = yn + hzn
zn+1 = zn + hg(xn , yn , zn ) = zn + h(yn + 2zn 3z3n )

85
Se n = 0,



y1 = y0 + hz0 = 1 + 0.3333(.5) = 0.8333
z1 = z0 + h(y0 + 2z0 3z3 ) = 0.5 + 0.3333(1 + 2(0.5) 3(0.5)3 ) = 1.0416


0

Se n = 1,

y2 = y1 + hz1 = 0.8333 + 0.3333(1.0416) = 0.4861






z2 = z1 + h(y1 + 2z1 3z31 ) =





1.0416 + 0.3333(0.8333 + 2(1.0416) 3(1.0416)3 ) = 0.8837

Se n = 2,

y3 = y2 + hz2 = 0.4861 + 0.3333(0.8837) = 0.1915






z3 = z2 + h(y2 + 2z2 3z32 ) =





0.8837 + 0.3333(0.4861 + 2(0.8837) 3(0.8837)2 ) = 0.9447

Assim, u(1) = y(1) 0.1915 e u0 (1) = z(1) 0.9447.

86
5.6 Exerccios
Exerccio 5.3. Aplique o Metodo de Euler para aproximar as solucoes dos seguintes
problemas de valor inicial:

(a) y0 (x) = 1 + (x y)2 , com 2 x 3, y(2) = 1 e h = 0, 5


y
(b) y0 (x) = 1 + x , com 1 x 2, y(1) = 2 e h = 0, 5

(c) y0 (x) = cos(2x) + sin(3x), com 0 x 1, y(0) = 1 e h = 0, 25

Sabendo-se que as solucoes exatas dos problemas anteriores sao dadas abaixo respecti-
vamente. Compare o erro cometido ao encontrar a solucao numerica:

(a) y(x) = x + 1
1x

(b) y(x) = x ln(x) + 2x

(c) y(x) = 1
2 sin(2x) 13 cos(3x) + 4
3

Exerccio 5.4. Aplique o Metodo de Euler para aproximar as solucoes dos seguintes
problemas de valor inicial:

(a) y0 (x) = x2 + y2 , com 0 x 1, y(0) = 0 e h = 0, 25.

(b) y0 (x) = x y2 , com 0 x 1, y(0) = 1, e h = 0, 20.

Faca o mesmo usando o Metodo de Euler Aperfeicoado.

Exerccio 5.5. Usando o Metodo de Euler, e o Metodo de Euler aperfeicoado, determine a


solucao aproximada do PVI dado por:
y
y (x) = x2 x y

0 1 2
(5.27)
y(1) = 1, x [1, 2]

(a) Considerando h = 1/3 e h = 1/6.

(b) Sabendo-se que a solucao analtica e dada por y(x) = x1 , construa para cada
caso uma tabela com os valores exatos e aproximados e tambem o erro absoluto.
Observe e faca comentarios.

Exerccio 5.6. Usando o Metodo de Runge-Kutta de ordem 3, calcule a solucao aproximada


do seguinte problema de valor inicial:


y0 (x) = xy1/3
(5.28)

y(0) = 1, x [0, 2]

(a) Considerando n1 = 3.

(b) Considerando n2 = 6.

87
3/2
x2 +3

(c) Sabendo-se que a solucao exata e dada por y(x) = 3 , construa para cada
caso uma tabela com os valores exatos e aproximados e tambem o erro absoluto.
Observe e faca comentarios.

Exerccio 5.7. Usando o Metodo de Runge-Kutta de ordem 3 e o Metodo de Runge-Kutta de


ordem 4, calcule a solucao aproximada do seguinte problema de valor inicial:


y0 (x) = xy2
(5.29)

y(1) = 2, x [1, 2]

(a) Considerando h = 1/4.

(b) Considerando h = 1/8.

(c) Sabendo-se que a solucao exata e dada por y(x) = 2


x2
, construa para cada caso uma
tabela com os valores exatos e aproximados e tambem o erro absoluto. Observe e
faca comentarios.

Exerccio 5.8. Aplique o Metodo de Runge-Kutta de quarta ordem para aproximar a solucao
do problema de valor inicial y0 (x) = x y2 , com 0 x 1, y(0) = 1 nos pontos da malha
de pontos igualmente espacados dentro do intervalo dado, cujo comprimento de um
subintervalo e 0, 5.

Exerccio 5.9. Usando o Metodo de Runge-Kutta de ordem 4, calcule a solucao aproximada


do seguinte problema de valor inicial:

y (x) = 1+4x2 + 0, 1y

0 x 2
(5.30)
y(0) = 1, x [0, 2]

(a) Considerando n = 4.

(b) Considerando n = 8.

Exerccio 5.10. Usando os Metodos de Runge-Kutta, calcule a solucao aproximada com


h = 0, 25 do seguinte PVI:

y0 = 2xy2
(5.31)

y(0) = 1, x [0, 1]

Exerccio 5.11. Considere o PVI


y2 1

y0 = x2 +1


(5.32)
y(0) = 1

(a) Calcule aproximacoes para y(1), usando o Metodo de Euler com h = 0, 2 e h = 0, 25.

(b) Repita o item (a), usando agora o Metodo de Euler aperfeicoado.

Exerccio 5.12. Considere o PVI



y (x) = yx y

0 2
(5.33)
y(0) = 1, x [0, 2]

88
(a) Encontre a solucao aproximada usando o Metodo de Euler com h = 0, 5 e h = 0, 25,
considerando x [0, 2];

(b) idem, usando o Metodo de Euler aperfeicoado e o Metodo de Euler modificado;

(c) idem, usando o Metodo de Runge-Kutta de ordem 4;


x3
(d) sabendo que a solucao analtica do problema e y = exp(x + 3 ), coloque num
mesmo grafico a solucao analtica e as solucoes numericas encontradas nos itens
anteriores. Compare os resultados.

Exerccio 5.13. Resolva o problema de valor inicial




y00 2xy + y3 sin(x) = 0
(5.34)

y(1) = 0, y0 (1) = 15; x [1, 1.2], h = 0.1

(a) Reduza-o a um sistema de equacoes de primeira ordem.

(b) Resolva o PVI dado usando um Metodo de Runge-Kutta de ordem 2.

Exerccio 5.14. Determine y(0.3) para y00 3y0 + 2y = 0, com y(0) = 1 e y0 (0) = 0.
Considere h = 0.1. Utilizando o Metodo de Euler modificado e o Metodo de Euler aperfeicoado.

Exerccio 5.15. Determine y(0.4) para y00 + 3y0 + 2y = ex , com y(0) = 1 e y0 (0) = 2.
Considere h = 0.1. Utilizando o Metodo de Runge Kutta de ordem 3.

Exerccio 5.16. Um projetil de massa m = 0.11 kg, lancado verticalmente para acima com
velocidade inicial v(0) = 8 m/s, e detido pela forca gravitacional F g = mg e a resistencia
do ar Fr = kv|v| onde g = 9.8 m/s2 and k = 0.002 kg/m. A equacao diferencial para a
velocidade e dada por
mv0 = mg kv|v|. (5.35)

(a) Encontre a velocidade depois de 0.1s, 0.2s, ..., 1s.

(b) Numericamente, encontre o tempo no qual o projetil comeca a cair (Dica: Use
interpolacao).

Exerccio 5.17. Seja P(t) o numero de individuos de uma certa populacao medido em
anos. Se a taxa de nascimentos e constante b e a taxa de mortalidade d e proporcional ao
tamanho da populacao, entao o crescimento da populacao e dado pela equacao logstica

dP(t)
= bP(t) k(P(t))2 (5.36)
dt

onde d = kP(t). Suponha que P(0) = 50976, b = 2.9 102 e k = 1.4 107 . Encontre a
populacao estimada depois de 5 anos.

89
6 Resolucao Numerica de Equacoes Diferenciais Parciais

6.1 Introducao
As Equacoes Diferenciais Parciais (edps) frequentemente aparecem em fenomenos
fsicos, como transferencia de calor, vibracoes de cordas, dinamica de fluidos, e em
problemas de economia, qumica e biologia. Em geral e difcil resolver uma edp por
tecnicas analticas, mas em alguns casos podemos determinar uma solucao envolvendo
series de potencias. Nesta secao apresentaremos metodos numericos para resolver edps
parabolicas e elpticas.

6.2 Preliminares

6.2.1 Equacoes Diferenciais Parciais

Consideraremos uma equacao diferencial parcial (edp) de segunda ordem da forma

autt + butx + cuxx = f (6.1)

em que u e uma funcao desconhecida dependente de x e t, e a, b, c e f sao funcoes dadas.


Se estas funcoes dependem so de x e t entao a edp e chamada linear. Se a, b, c ou f
dependem tambem de u, ux e ut , entao a edp e chamada quase-linear.
Podemos classificar uma equacao quase-linear de segunda ordem em tres tipos:

(a) Se b2 4ac > 0, a equacao e chamada hiperbolica.

(b) Se b2 4ac = 0, a equacao e chamada parabolica.

(c) Se b2 4ac < 0, a equacao e chamada elptica.

Exemplo 6.1. O primeiro exemplo que apresentaremos e a Equacao da Onda:

utt = 2 uxx + F(x, t)

que governa o movimento de uma onda sobre uma corda de comprimento L. u(x, t) e a
altura da onda no ponto x e no tempo t, e uma constante e F(x, t) uma funcao de duas
variaveis. Como a = 1, b = 0 e c = 2 , obtemos que b2 4ac = 42 > 0 e assim esta
equacao e hiperbolica.

Exemplo 6.2. A Equacao de Difusao do Calor e

ut = uxx

e uma equacao quase-linear parabolica de segunda ordem desde que a = b = 0 e c = ,


e assim b2 4ac = 0. A funcao u(x, t) representa a temperatura de uma barra de metal no
ponto x e no tempo t.

90
Exemplo 6.3. A Equacao de Poisson dada por

uxx + u yy = F(x, y)

e uma equacao elptica desde que a = c = 1, b = 0 e b2 4ac = 4 < 0. Se F(x, y) = 0 a


equacao de Poisson e chamada equacao de Laplace.

6.2.2 Aproximacoes da primeira e da segunda derivada

Precisaremos de algumas formulas para aproximar as derivadas. Suponhamos que


f : I R e uma funcao real. Como

f (x + h) f (x)
f 0 (x) = lim
x h

podemos, se h for pequeno, aproximar a derivada pela formula, denominada diferenca


progressiva:
f (x + h) f (x)
f 0 (x) .
h
Outra maneira de aproximar a derivada e mediante a diferenca regressiva:

f (x) f (x h)
f 0 (x)
h

Finalmente, pode-se aproximar a derivada fazendo a media das diferencas progressivas


e regressivas:
f (x + h) f (x h)
f 0 (x)
2h
chamada aproximacao por diferencas centrais. A derivada segunda de f tambem pode
ser aproximada mediante a formula:

f 0 (x + h) f 0 (x)
f 00 (x)
h

Utilizando diferencas regressivas, segue:

f (x+h) f (x) f (x) f (xh)


h h f (x + h) 2 f (x) + f (x h)
00
f (x) = .
h h2

Observacao 6.1. As formulas anteriores podem ser utilizadas para aproximar as


derivadas de u em relacao a t e a x. Estas aproximacoes sao:

(i) Diferencas Progressivas:

u(x, t + h) u(x, t)
ut (x, t) . (6.2)
h

91
(ii) Diferencas Regressivas:

u(x, t) u(x, t h)
ut (x, t) . (6.3)
h

(iii) Diferencas Centrais:

u(x, t + h) u(x, t h)
ut (x, t) . (6.4)
2h

(iv) Derivadas Segundas:

u(x + h, t) 2u(x, t) + u(x h, t)


uxx (x, t) . (6.5)
h2

6.3 Equacoes Parabolicas

6.3.1 O modelo de Equacao Parabolica

O modelo de equacao parabolica que trabalharemos e a equacao da difusao do calor:

ut = uxx

que governa a evolucao da temperatura de uma barra de metal de tamanho L. Supondo


que esta barra e muito fina, podemos considerar que a temperatura e constante na
secao tranversal situada a uma distancia x. Dessa forma, a funcao u(x, t) representa a
temperatura da barra na secao transversal no ponto x, 0 x L, e no tempo t.

Figura 27: Barra de metal.

Para resolver esta edp precisamos de certas condicoes. Com o intuito de saber
como evolui a temperatura da barra, devemos conhecer a temperatura inicial, ou seja, a
temperatura no tempo t = 0, isto e u(x, 0). Assim, suponhamos que a temperatura inicial
e dada por uma funcao contnua (x):

u(x, 0) = (x), se 0 x L.

A condicao anterior e conhecida como Condicao Inicial. Alem disso, para resolver a
equacao precisamos especificar a temperatura nos extremos da barra em cada tempo t,

92
ou seja, devemos conhecer u(0, t) e u(L, t). Assim, suponhamos que

u(0, t) = f (t) e u(L, t) = g(t),

em que f (t) e g(t) sao funcoes contnuas. Estas condicoes sao conhecidas como Condicoes
de Fronteira. Desejamos conhecer o valor de u(x, t) num certo tempo t = T dado.

Dessa forma, resolver a equacao significa encontrar uma funcao u(x, t) que satisfaz:

ut = uxx (6.6)

sujeita a
u(x, 0) = (x), 0 x L



(Condicao Inicial)
u(0, t) = f (t), 0 t T

(Condicao de Fronteira) (6.7)




u(L, t) = g(t), 0 t T

(Condicao de Fronteira)
Este problema e chamado Problema de Dirichlet.

6.3.2 Discretizacao

Resolver numericamente uma edp significa encontrar aproximacoes da solucao u(x, t)


num conjunto finito de pontos do domnio R = {(x, t) : 0 x L, 0 t T}. Para
isso precisamos discretizar R. Escolhemos dois inteiros positivos N e M e dividimos o
intervalo [0, L] em N sub-intervalos, e o intervalo [0, T] em M sub-intervalos.

Figura 28: Discretizacao do Domnio.

Definindo
L T
h= ek= , (6.8)
N M
o intervalo espacial [0, L] fica dividido em N + 1 pontos

93
xi = ih, para todo i = 0, ..., N; (6.9)

e o intervalo temporal [0, T] fica dividido em M + 1 pontos

t j = jk, para todo j = 0, ..., M. (6.10)

Na Fig. 38 apresentamos a malha no caso N = 4 e M = 3.

6.3.3 Metodo Explcito

Precisamos da seguinte definicao.

Seja Ui, j a aproximacao de u no ponto (xi , t j ):

Ui,j u(xi , t j ). (6.11)

Pelas condicoes (6.7), conhecemos o valor de Ui, j quando j = 0, i = 0 e i = N, isto e:

(C1) Ui,0 = u(xi , t0 ) = u(xi , 0) = (xi ), para todo i = 0, N;

(C2) U0, j = u(x0 , t j ) = u(0, t j ) = f (t j ), para todo j = 0, M;

(C3) UN, j = u(xN , t j ) = u(L, t j ) = g(t j ), para todo j = 0, M.

Em outras palavras conhecemos os valores de u(x, t) nos pontos que estao no bordo do
domnio R, ou seja, os pontos em azul na Fig. 38.
Nosso objetivo sera determinar os valores da aproximacao da temperatura Ui, j nos
pontos internos da discretizacao (os pontos em vermelho na Fig. 38).
No Metodo explcito aproximamos a derivada ut usando diferencas progressivas e
as formulas da observacao 6.1. Assim a discretizacao da equacao

ut = uxx

no ponto (xi , t j ) e a seguinte:

u(xi , t j + k) u(xi , t j ) h u(xi + h, t j ) 2u(xi , t j ) + u(xi h, t j ) i



k h2
ou
u(xi , t j+1 ) u(xi , t j ) h u(xi+1 , t j ) 2u(xi , t j ) + u(xi1 , t j ) i

k h2
Introduzindo as aproximacoes Ui,j , obtemos:

Ui, j+1 Ui,j h Ui+1,j 2Ui,j + Ui1,j i


=
k h2

94
Se
k
= ,
h2
segue entao que

Para j = 0, , N 1 e i = 1, , N 1

Ui,j+1 = Ui+1, j + (1 2)Ui,j + Ui1,j . (6.12)

Da formula anterior, os valores Ui, j+1 nos pontos da linha j + 1 sao uma combinacao de
tres valores Ui+1,j , Ui, j e Ui1, j em pontos da linha j. A Fig. 29 mostra uma molecula
computacional do metodo explcito.

Figura 29: Uma molecula computacional no metodo explcito.

Se, por exemplo, j = 0,

Ui,1 = Ui+1,0 + (1 2)Ui,0 + Ui1,0 , em i = 1, N 1.

Como conhecemos os valores Ui,0 , para i = 0, , N, pelas condicoes C1, C2 e C3,


podemos determinar diretamente todos os valores dos Ui,1 .

A ideia do metodo explcito e encontrar os valores da linha j = 1 por calculo direto


usando os valores da linha j = 0. Procedendo outra vez, obtemos os valores da linha
j = 2 usando os valores da linha j = 1. E assim sucessivamente, ate chegar a linha
j = M que corresponde ao valor de t = T.

DEFINICAO 6.1. Um metodo numerico e chamado estavel quando os erros cometidos


na etapa j nao se incrementam na etapa j + 1.

95
O Metodo Explcito e estavel so quando

1
.
2

Para garantir a estabilidade deste metodo sempre escolheremos h e k de forma que

2k < h2 . (6.13)

Exemplo 6.4. Resolva numericamente a equacao parabolica:

ut = uxx

sujeita a

u(x, 0) = x + 12 sin(2x), 0 x 1



(Condicao Inicial)
u(0, t) = 0, 0 t T

(Condicao de Fronteira)




u(1, t) = 1, 0 t T (Condicao de Fronteira)

Considere N = 5 e k = 1
60 . Determine as duas linhas correspondentes a j = 1 e j = 2.

Solucao:
k
Observe que = 1, h = 1
5 e= h2
= 5
12 e as funcoes

1
(x) = x + sin(2x), f (t) = 0, g(t) = 1.
2

Os valores xi para i = 0, , 5 sao:

1 2 3 4
x0 = 0, x1 = , x2 = , x3 = , x4 = , x5 = 1.
5 5 5 5

Se j = 1, t1 = 1
60 e se j = 2, t2 = 2
60 = 1
30 .
Da condicao C1 obtemos Ui,0 = u(xi , 0) = (xi ). Assim

U0,0 = 0, U1,0 = 0, 67552, U2,0 = 0, 69389, U3,0 = 0, 30610, U4,0 = 0, 32447, U5,0 = 1.

Alem disso, das condicoes C1 e C2 segue

U0,1 = f (t1 ) = 0, U0,2 = f (t2 ) = 0,

U5,1 = g(t1 ) = 1, U5,2 = g(t2 ) = 1.

Se j = 0, obtemos as aproximacoes no tempo t1 = 1


60 . Das equacoes (6.12),

96
obtemos
5 1 5
U1,1 = U2,0 + (1 2)U1,0 + U0,0 = ( )(0, 69389) + ( )(0, 67552) + ( )(0) = 0, 40170
12 6 12

5 1 5
U2,1 = U3,0 + (1 2)U2,0 + U1,0 = ( )(0, 30610) + ( )(0, 69389) + ( )(0, 67552) = 0, 52465
12 6 12

5 1 5
U3,1 = U4,0 + (1 2)U3,0 + U2,0 = ( )(0, 32447) + ( )(0, 30610) + ( )(0, 69389) = 0, 47533
12 6 12

5 1 5
U4,1 = U5,0 + (1 2)U4,0 + U3,0 = ( )(1) + ( )(0, 32447) + ( )(0, 30610) = 0, 59828.
12 6 12

Se j = 1 obtemos as aproximacoes no tempo t2 = 2


60 . Segue, das equacoes (6.12),
que

5 1 5
U1,2 = U2,1 + (1 2)U1,1 + U0,1 = ( )(0, 52465) + ( )(0, 40170) + ( )(0) = 0, 28555
12 6 12

5 1 5
U2,2 = U3,1 + (1 2)U2,1 + U1,1 = ( )(0, 47533) + ( )(0, 52465) + ( )(0, 40170) = 0, 45287
12 6 12

5 1 5
U3,2 = U4,1 + (1 2)U3,1 + U2,1 = ( )(0, 59828) + ( )(0, 47533) + ( )(0, 52465) = 0, 54710
12 6 12

5 1 5
U4,2 = U5,1 + (1 2)U4,1 + U3,1 = ( )(1) + ( )(0, 59828) + ( )(0, 47533) = 0, 71443.
12 6 12

Na Fig. 30 mostramos as solucoes numericas para u(x, t) nos tempos t1 e t2 .

Condio Inicial

Figura 30: Condicao inicial e solucoes numericas para a equacao do Exemplo 6.4.

97
6.3.4 O Metodo Implcito

Consideraremos o mesmo modelo de equacao parabolica:

ut = uxx (6.14)

sujeita a
u(x, 0) = (x), 0 x L



(Condicao Inicial)
u(0, t) = f (t), 0 t T

(Condicao de Fronteira) (6.15)




u(L, t) = g(t), 0 t T

(Condicao de Fronteira)
e utilizaremos a mesma discretizacao do metodo explcito da secao (6.3.2).
O Metodo Implicto e obtido substituindo as diferencas regressivas, da Observacao
6.1, para aproximar ut na equacao (6.14). Assim, a discretizacao da equacao no ponto
(xi , t j ) e:
u(xi , t j ) u(xi , t j k) h u(xi + h, t j ) 2u(xi , t j ) + u(xi h, t j ) i

k h2
Assim
u(xi , t j ) u(xi , t j1 ) h u(xi+1 , t j ) 2u(xi , t j ) + u(xi1 , t j ) i

k h2
Substituindo a aproximacao Ui,j u(xi , t j ) obtemos:

Ui, j Ui,j1 h Ui+1,j 2Ui,j + Ui1,j i



k h2
k
De novo, se = h2
, obtemos

Para j = 1, , M e i = 1, , N 1

Ui,j1 = Ui+1, j + (1 + 2)Ui,j Ui1, j . (6.16)

Neste caso Ui, j1 e uma combinacao linear de tres aproximacoes Ui+1,j , Ui, j e Ui1,j .
Isto e, a linha j 1 depende da linha j. A molecula computacional e:

Figura 31: Uma molecula computacional no metodo implcito.

Repare que nao podemos calcular diretamente os valores Ui,j da linha j pois a equacao

98
(6.16) envolve dois ou tres valores desconhecidos. Porem, fixando j, podemos considerar
as equacoes para i = 1, , N 1,




U1, j1 = U2, j + (1 + 2)U1, j U0,j
U2,j1 = U3,j + (1 + 2)U2,j U1, j .




.. (6.17)

.






UN1,j1 = UN, j + (1 + 2)UN1,j UN2, j .

que constituem um sistema de equacoes lineares.


Supondo que conhecemos os valores de Ui, j1 , para i = 0, , N, podemos substitu-
los no sistema (6.17) para obter um sistema da forma

U2, j + (1 + 2)U1, j = U1, j1 + U0,j






U3, j + (1 + 2)U2,j U1,j = U2,j1




..



. (6.18)




UN1, j + (1 + 2)UN2, j UN3,j = UN2, j1






(1 + 2)U
N1, j UN2,j = UN1,j1 + UN,j

cujas incognitas sao justamente os valores de {U1, j , U2, j , , UN1,j } correspondente a


linha j. Isto e, os valores da linha j dependem implicitamente dos valores na linha j 1
pelas equacoes (6.17).

Lembrando que U0,j = f (t j ) e UN,j = g(t j ), o sistema linear (6.18) pode-se escrever
em forma matricial na forma:

1 + 2 U1, j1 + f (t j )

0 0 U1, j
1 + 2

0 U2, j U2, j1

1 + 2

0 0 U3, j U3, j1
.. .. .. .. .. .. = .. (6.19)

.

. . . . . .



1 + 2

0 0 UN2,j UN2, j1



1 + 2 UN1, j1 + g(t j )

0 0 UN1, j

que e o sistema do Metodo Implcito a ser resolvido em cada estagio.

Uma observacao importante e a seguinte:

Observacao 6.2. O metodo Implcito e estavel para todo valor de , ou seja, e incon-
dicionalmente estavel.

99
Exemplo 6.5. Resolva numericamente pelo Metodo Implcito a equacao parabolica:

ut = uxx (6.20)

sujeita a

u(x, 0) = x + 12 sin(2x), 0 x 1



(Condicao Inicial)
u(0, t) = 0, 0 t T

(Condicao de Fronteira) (6.21)




u(1, t) = 1, 0 t T (Condicao de Fronteira)

Considere N = 5 e k = 1
60 . Determine as duas linhas correspondentes a j = 1 e j = 2.

Solucao:
Os dados sao os mesmos que no Exemplo 6.4. Mudara a forma como calculamos os
valores Ui,j para j = 1 e j = 2.
k
Assim = 1, h = 15 , = h2
= 5
12 e (x) = x + sin(2x), f (t) = 0, g(t) = 1. Tambem

1 2 3 4
x0 = 0, x1 = , x2 = , x3 = , x4 = , x5 = 1.
5 5 5 5

e t1 = 60 , t2
1
= 2
60 = 1
30 .
Os valores na fronteira sao

U0,0 = 0, U1,0 = 0, 67552, U2,0 = 0, 69389, U3,0 = 0, 30610, U4,0 = 0, 32447, U5,0 = 1.

U0,1 = 0, U0,2 = 0, U5,1 = 1, U5,2 = 1.

Substituindo j = 1 no sistema matricial (6.19), obtemos:



1 + 2( 12

U1,1 U1,0 + 12
5 5
5

) 12 0 0
f (t1 )

5
1 + 2( 12 )
5 5

12 12 0 U2,1
U2,0
=



0 5
12 1 + 2( 12 )
5 5
12
U3,1
U3,0

5
1 + 2( 12
5
U4,0 + 12
5

0 0 12 ) U4,1 g(t1 )

Simplificando
11 5

6
12 0 0
U1,1 0, 67552
5 11 5
12 0
U2,1

0, 69389
=
12 6

5 11 5
0
12 6 12
U3,1 0, 30610
5 11

0 0 12 6
U
4,1 0, 74113

Resolvendo este sistema encontramos que

U1,1 = 0, 50176, U2,1 = 0, 58649, U3,1 = 0, 41349, U4,1 = 0, 49822.

100
Substituindo j = 2 no sistema matricial (6.19) obtemos
11
U1,2 U1,1 + 12
5
5

6
12 0 0
f (t2 )
0, 50176
5 11 5
12 0
U2,2 U2,1
0, 58649
= =
12 6

5 11 5
0
12 6 12
U3,2
U3,1
0, 41349
5 11
U4,1 + 12
5

0 0 12 6 U4,2 g(t2 ) 0, 91488

Entao
U1,2 = 0, 39149, U2,2 = 0, 51834, U3,2 = 0, 48163, U4,3 = 0, 60848.

Condio Inicial

Figura 32: Condicao inicial e solucoes numericas para a equacao do Exemplo 6.6.

Exemplo 6.6. Considere a equacao diferencial parcial com as condicoes inicial e de


fronteira seguintes:
ut = 2uxx , com 0 < x < 1, 0 < t < T (6.22)

sujeita a
u(x, 0) = 2x2 , 0 x 1



(Condicao Inicial)
u(0, t) = 0, 0 t T

(Condicao de Fronteira) (6.23)




u(1, t) = 2e2t , 0 t T

(Condicao de Fronteira)

(a) Considerando h = 1/3 e k = 1/50, encontre os valores de Ui, j para j = 1 pelo metodo
explcito.

(b) Usando o metodo implcito e os valores do item (a), encontre os valores de Ui, j
para j = 2.

101
Solucao:
k
(a). Note que = h2
= 9
25 < 21 . Entao o metodo e estavel. Observe que

2 8
U0,0 = 0; U1,0 = ; U2,0 = ; U3,0 = 2.
9 9

Alem disso
U0,1 = 0; U3,1 = 1, 92157; U0,2 = 0; U3,2 = 1, 84623

Desse modo:
U1,1 = U0,0 + (1 2)U1,0 + U2,0 = 0, 3822

U2,1 = U1,0 + (1 2)U2,0 + U3,0 = 1, 04888

(b). Pela formula do metodo implcito:

U1,1 = U0,2 + (1 + 2)U1,2 U2,2

U2,1 = U1,2 + (1 + 2)U2,2 U3,2

Substituindo os valores obtemos duas equacoes lineares:

25 U1,2 25 U2,2 = 0, 38222


43 9

9
25 U1,2 + 43
25 U2,2 = 1, 71352

Resolvendo este sistema encontramos que

U1,2 = 0, 45046; U2,2 = 1, 09051.

6.3.5 O Metodo de Crank-Nicolson

Uma maneira de conseguir melhores resultados na resolucao numerica de EDP Pa-


rabolicas e utilizar uma combinacao do metodo explcito e o metodo implcito. O
metodo resultante e chamado Metodo de Crank-Nicolson.
Do Metodo Explcito para j = 1, , N e i = 1, , N 1

Ui,j = Ui+1, j1 + (1 2)Ui,j1 + Ui1, j1 . (6.24)

Do Metodo Implcito para j = 1, , M e i = 1, , N 1

Ui,j1 = Ui+1, j + (1 + 2)Ui,j Ui1, j . (6.25)

Somando o termo da direita da equacao (6.24) com o termo da esquerda da equacao


(6.25), e o termo da esquerda da equacao (6.24) com o termo da direita da equacao (6.25),
obtemos as equacoes do Metodo de Crank-Nicolson:

102
Para j = 1, , M e i = 1, , N 1,

Ui+1, j + (2 + 2)Ui, j Ui1,j = Ui+1, j1 + (2 2)Ui,j1 + Ui1, j1 (6.26)

Cada equacao deste metodo relaciona tres variaveis desconhecidas Ui+1, j , Ui,j e Ui1, j
com tres variaveis conhecidas Ui+1,j1 , Ui, j1 e Ui1, j1 . Uma molecula computacional e
dada na figura abaixo.

Figura 33: Uma molecula computacional no metodo de Crank-Nicolson.

Fixemos j. Supondo que conhecemos os valores de Ui,j1 , para i = 0, , N, podemos


determinar entao os valores Ui,j da linha j resolvendo N 1 equacoes

U2, j + (2 + 2)U1,j U0, j = U2, j1 + (2 2)U1, j1 + U0,j1






U3, j + (2 + 2)U2, j U1, j = U3, j1 + (2 2)U2, j1 + U1,j1




..



. (6.27)




UN1, j + (2 + 2)UN2, j UN3, j = UN1, j1 + (2 2)UN2, j1 + UN3, j1






U + (2 + 2)U
N1, j UN2, j = UN, j1 + (2 2)UN1, j1 + UN2, j1

N, j

cujas incognitas sao justamente os valores de {U1,j , U2,j , , UN1, j } correspondentes a


linha j. Isto e, os valores da linha j dependem dos valores na linha j 1 pelas equacoes
(6.27).

Lembrando que U0,j = f (t j ) e UN,j = g(t j ), o sistema linear (6.27) pode-se escrever
em forma matricial na forma:

2 + 2

0 0 U1, j
2 + 2

0 U2, j

2 + 2

0 0 U3, j
.. .. .. .. .. .. =

.


. . . .
.

2 + 2


0 0 UN2,j



0 0 2 + 2 UN1, j

103
(U0,j1 + U0, j )

2 2 0 0 U1, j1



2 2 0 U2, j1


0



0 2 2 0 U3, j1 0
.. .. .. .. .. .. + .. (6.28)

.


. . . .
.
.




0 0 2 2 UN2,j1


0

0 0 2 2 UN1,j1 (UN, j1 + UN, j )

que e o sistema do Metodo de Crank-Nicolson a ser resolvido em cada estagio.

No que se refere a estabilidade, o Metodo de Crank-Nicolson e estavel para todo


> 0.

Exemplo 6.7. Resolva numericamente a equacao parabolica pelo Metodo de Crank-


Nicolson :
ut = 2uxx (6.29)

sujeita a
2
u(x, 0) = 1 x3 + 3x2 2x 3 ,0 x 1



(Condicao Inicial)
u(0, t) = 1, 0 t T

(Condicao de Fronteira) (6.30)




u(1, t) = 56 + tet , 0 t T (Condicao de Fronteira)

Considere N = 4 e k = 1
40 . Determine as duas linhas correspondentes a j = 1 e j = 2.

Solucao:

Dos dados h = 1
4 = 0, 25 e = k
h2
= 45 , e as funcoes

3x2 2x 5
(x) = 1 x3 + , f (t) = 1, g(t) = + tet .
2 3 6

Os valores xi e t j sao:

x0 = 0, x1 = 0, 25, x2 = 0, 5, x3 = 0, 75, x4 = 1, 0,

1 2
t0 = 0, t1 = , t2 = .
40 40
Como Ui,0 = u(xi , 0) = (xi ) segue que:

U0,0 = 1, U1,0 = 0, 91145, U2,0 = 0, 91666, U3,0 = 0, 92187, U4,0 = 0, 83333

104
Das condicoes de fronteira

U0,1 = f (t1 ) = 1, U0,2 = f (t2 ) = 1

U4,1 = g(t1 ) = 0, 85771, U4,2 = g(t2 ) = 0, 88089.

Se j = 1 nas equacoes (6.28), segue que

+ U0,1 )
18
54 2 4 4

5 0 U1,1 5 5 0 U1,0 5 (U0,0

4 18
54 U2,1 = 4 2 4 U + 0
5 5 5 5 5 2,0
45 5 (U4,0 + U4,1 )
18 4 2 4

0 5 U3,1 0 5 5 U3,0

Substituindo os valores conhecidos, chegamos ao sistema:


18
45

5 0 U1,1 2, 69790

4 18
45 U2,1 = 1, 83332
5 5
45 18

0 U3,1 2, 45490

5

Resolvendo este sistema: U1,1 = 0, 95341, U2,1 = 0, 91799, U3,1 = 0, 88591.


Se j = 2 nas equacoes (6.28), segue que

+ U0,2 ) 2, 71577
18
45 2 4 4

5 0 U1,2 5 5 0 U1,1 5 (U0,1

4 18
45 U2,2 = 4 2 4 U + 0 = 1, 83865
5 5 5 5 5 2,1

54 18 4 2 4
+

0 5 U3,2 0 5 5 U3,1 5 (U4,1 U4,2 ) 2, 49818

Resolvendo as equacoes: U2,1 = 0, 95967, U2,2 = 0, 92382, U2,3 = 0, 89923.

Condio Inicial

Figura 34: Solucoes numericas e condicao inicial da equacao do Exemplo 6.7.

105
6.3.6 Condicoes de Fronteira de Neumann ou com Derivadas

Em certos problemas envolvendo equacoes parabolicas nao conhecemos os valores


u(0, t), u(L, t) de u(x, t) nas fronteiras x = 0 e x = L. Para obter uma solucao neste
tipo de problemas devemos especificar o valor da derivada de u(x, t), em relacao a x, na
fronteira do intervalo. Ou seja, precisamos das condicoes:

u(0, t) u(L, t)
= f (t), = g(t).
x x

Isto leva a formular o problema con condicoes de Neumann:

ut = uxx (6.31)

sujeita a

u(x, 0) = (x), 0 x L



(Condicao Inicial)
u(0,t)
= f (t), 0 t T


x
(Condicao de Fronteira de Neumann) (6.32)
u(L,t)

= g(t), 0 t T (Condicao de Fronteira de Neumann)


x

Pode-se resolver numericamente esta equacao diferencial parcial utilizando a discretizacao


apresentada anteriormente e qualquer um dos tres metodos estudados: explcito, implcito
e/ou Crank-Nicolson. O unico inconveniente e agora os valores U0,j e UN,j , com
j = 1, , M, sao desconhecidos pois somente conhecemos o valor da derivada da
funcao na fronteira, mas nao o valor da funcao. Ou seja, devemos incluir os valores dos
U0, j e UN, j como incognitas de nosso problema.
Supondo, por exemplo, que desejamos utilizar o metodo explcito para resolver a
edp acima. Entao, para cada i = 0, , N, utilizaremos a formula

Ui,j+1 = Ui+1, j + (1 2)Ui,j + Ui1, j . (6.33)

Quando escrevemos esta formula para o ponto U0,j , ou seja i = 0, resulta

U0, j+1 = U1, j + (1 2)U0, j + U1,j . (6.34)

que sao as equacoes contendo U1,j = u(x1 , t j ), os valores da funcao nos pontos (x1 , t j ) =
(h, k j), para j = 0, , N 1. Estes pontos estao fora da malha, e por tanto serao
chamados pontos fantasmas. Similarmente, se i = N, o metodo explcito fornece a
equacoes
UN, j+1 = UN+1, j + (1 2)UN, j + UN1,j (6.35)

as quais contem os pontos fantasmas UN+1,j = u(xN+1 , t j ), o valor de da funcao nos pontos
(xN+1 , t j ) = ((N + 1)h, jk), que nao esta na malha. Na Fig. 35 temos apresentado a malha
e os pontos fantasmas quando N = 4 e M = 3.

106
Figura 35: Discretizacao do Domnio e os pontos fantasmas.

O trabalho com os pontos fantasmas e feito utilizando as condicoes de Neumann. Se


aproximarmos a derivada ux no ponto (x0 , t j ) por diferencas centrais segue que:

u(x0 , t j ) u(x1 , t j ) u(x1 , t j )



x 2h

Comparando com as condicoes de fronteira de Neumann dadas nas equacoes (6.32)

u(x1 , t j ) u(x1 , t j )
f (t j ) .
2h

Por tanto
U1,j U1,j
f (t j ) =
2h
o equivalentemente

U1,j = U1,j 2h f (t j ), (6.36)

que expressa o fato que o valor nos pontos fantasma depende do valor nos pontos
interiores da malha.

Repetindo o mesmo processo no ponto (xN , t j ) obtemos:

u(xN , t j ) u(xN+1 , t j ) u(xN1 , t j )



x 2h

Das condicoes de Neumann

UN+1,j UN1,j
g(t j ) =
2h

Implicando que

107
UN+1, j = UN1, j + 2hg(t j ). (6.37)

Substituindo os valores de U1, j e UN+1, j nas equacoes (6.34) e (6.35):

U0, j+1 = U1, j + (1 2)U0,j + (U1, j 2h f (t j )) = (1 2)U0,j + 2U1, j 2h f (t j )

UN, j+1 = (UN1, j + 2hg(t j )) + (1 2)UN,j + UN1, j = 2UN1, j + (1 2)UN, j + 2hg(t j )

Entao as equacoes (6.33) convertem-se no sistema

U0,j+1 = (1 2)U0,j + 2U1, j 2h f (t j )






Ui,j+1 = Ui+1, j + (1 2)Ui,j + Ui1, j .




..



. (6.38)




Ui,j+1 = Ui+1, j + (1 2)Ui,j + Ui1, j .






N,j+1 = 2UN1,j + (1 2)UN, j + 2hg(t j )

U

com o qual podemos calcular diretamente as incognitas {U0, j+1 , U1,j+1 , , UN, j+1 } a partir
dos valores {U0,j , U1,j , , UN,j }. Em forma matricial


U0,j+1 1 2 2 0 0 U0, j 2h f (t j )


U1,j+1 1 2 0 U1, j 0



U2,j+1 0 1 2 0 U
2, j 0
= +

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

..

.

. . . . . .





UN1, j+1
0 0 1 2 UN1, j

0

UN, j+1 0 0 2 1 2 UN, j 2hg(t j )

(6.39)

Exemplo 6.8. Considere o seguinte problema de Newmann:

ut = uxx

sujeita a
u(x, 0) = sin(x), 1 x 2



(Condicao Inicial)
u(0,t)
= e2t , 0 t T

(Condicao de Neumann)


x
u(L,t)

= et /2, 0 t T (Condicao de Neumann)


x

Pelo metodo explcito, encontre os valores aproximados de Ui,j quando j = 1. Utilize


h= 1
2 ek= 1
20 .

108
Solucao:

Dos dados do problema h = 12 , = k


h2
= 15 .

3 1 2
x0 = 1, x1 = , x2 = 1, t0 = 2, t1 = , t2 = .
2 20 20

(x) = sin(x), f (t) = e2t , g(t) = et /2

E os valores U0,0 = (x0 ) = 0, U1,0 = (x1 ) = 1, U2,0 = (x2 ) = 0, e

f (t0 ) = 1; g(t0 ) = 1/2.

Na equacao dos pontos fantasmas:

U1,0 U1,0
= 1, entao U1,0 = 2
2h

U3,0 U1,0 1 3
= , entao U3,0 = .
2h 2 2
Pelo metodo explcito:

U0,1 = U1,0 + (1 2)U0,0 + U1,0 = 0, 6

U1,1 = U2,0 + (1 2)U1,0 + U0,0 = 0, 6

U2,1 = U3,0 + (1 2)U2,0 + U1,0 = 0, 5.

Exemplo 6.9. Resolva numericamente pelo Metodo explcito a equacao parabolica com
condicoes de Neumann:
ut = 2uxx

sujeita a
u(x, 0) = 1 x2 , 0 x 1



(Condicao Inicial)
u(0,t)
= 0, 0 t T

(Condicao de Neumann)


x
u(L,t) = 2et , 0 t T

(Condicao de Neumann)

x

Considere N = 2 e k = 1
40 . Determine a linha correspondente a j = 1.

Solucao:

Dos dados do problema h = 1


2 = 0, 5, = k
h2
= 51 .

1 1 2
x0 = 0, x1 = , x2 = 1, t0 = 0, t1 = , t2 = .
2 40 40

(x) = 1 x2 , f (t) = 0, g(t) = 2et

109
E os valores U0,0 = (x0 ) = 1, U1,0 = (x1 ) = 0, 75, U2,0 = (x2 ) = 0, e

f (t0 ) = 0; g(t0 ) = 2.

Sustituindo j = 0 nas equacoes (6.39) obtemos:



U0,1 1 2 2 0 U0,0 2h f (t0 )

U = 1 2 U + 0
1,1 1,0

U2,1 0 2 1 2 U2,0 2hg(t0 )

Desse modo
3 2

U0,1 5 5 0 1 0 0, 90

U = 1 3 1 0, 75 + 0 = 0, 65
1,1 5 5 5
2 3
2
U2,1 0 5 5 0 5 0, 1

Exerccio 6.1. Escreva as equacoes do Metodo Implcito e do Metodo de Crank-Nicolson


para uma edp parabolica com condicoes de fronteira de Neumann.

6.4 Equacoes Elpticas

6.4.1 O modelo de Equacao Elptica

O modelo de equacao elptica que usaremos e o seguinte:

2 u 2 u
+ = f (x, y) (6.40)
x2 x2

em que f (x, y) e uma funcao de duas variaveis. Esta edp e chamada Equacao de Poisson
e esta definida no retangulo

R = {(x, y) : 0 x a, 0 y b}.

Note-se que as variaveis independentes sao x e y. De novo encontraremos aproximacoes


de u(x, y) em R. A discretizacao de R e a mesma que no caso das equacoes parabolicas,
isto e, escolhemos dois inteiros positivos N e M e definimos h = a
N ek = b
M. A sub-divisao
no eixo x e
x0 = 0, x1 = h, , xi = ih, , xN = a;

e no eixo y e:
y0 = 0, y1 = k, , yi = ik, , yM = b.

110
Figura 36: Discretizacao do Domnio para uma equacao elptica.

Esta discretizacao esta mostrada na Fig. 36.


Para resolver esta equacao elptica precisamos do conhecimento do valor de u(x, y)
na fronteira de R. Denotaremos a fronteira de R por R. Em outras palavras, precisamos
a condicao:

u(x, y) = g(x, y), se (x, y) R, (6.41)

na qual g(x, y) e uma funcao contnua em R. Esta ultima condicao e conhecida como
condicao de Dirichlet.
Discretizando a equacao (6.40) no ponto generico (xi , y j ) e usando as equacoes da
Observacao 6.1:
uxx (xi , y j ) + u yy (xi , y j ) = f (xi , yi )
u(xi + h, y j ) 2u(xi , y j ) + u(xi h, y j ) u(xi , y j + k) 2u(xi , y j ) + u(xi , y j k)
+ f (xi , y j )
h2 k2
ou para i = 1, , N 1 e j = 1, , M 1,

u(xi+1 , y j ) 2u(xi , y j ) + u(xi1 , y j ) u(xi , y j+1 ) 2u(xi , y j ) + u(xi , y j1 )


+ f (xi , y j )
h2 k2

Seguindo a notacao ja utilizada, seja Ui, j a aproximacao de u(xi , yi ) e fi,j o valor


f (xi , y j ), entao:

Ui+1,j 2Ui,j + Ui1,j Ui, j+1 2Ui, j + Ui,j1


+ = fi, j (6.42)
h2 k2

Da condicao de Dirichlet (6.41) podemos determinar os valores de Ui, j nos pontos da


fronteira R (pontos em azul na Figura (36)):

Ui, j = g(xi , y j ), se i = 0 e N, j = 0, M.

111
Ui, j = g(xi , y j ), se j = 0 e M, i = 0, N.

Logo, os valores desconhecidos sao os valores de Ui,j nos pontos internos da malha
(pontos em vermelho na Fig. 36):

Ui,j , para i = 1, N 1, j = 1, , M 1. (6.43)

Figura 37: Valores de u(x, y) na fronteira R.

Substituindo os pontos (xi , y j ), para i = 1, , N 1, j = 1, M 1 na equacao


(6.42), resultam (N 1) (M 1) equacoes lineares cujas incognitas sao os valores
Ui, j com i = 1, , N 1, j = 1, M 1. Resolvendo estas (N 1) (M 1) equacoes
obteremos os valores de Ui,j nos pontos internos da malha.

Exemplo 6.10. Considere a equacao diferencial

uxx + u yy = 6(x + 1)y + 8, com 0 x 1, 0 < y < 1

sujeita as condicoes de Dirichlet na fronteira:



u(x, 0) = 0, u(x, 1) = (x + 1) + 4, 0 x 1

3

u(0, y) = y + 4y2 , u(1, y) = 8y + 4y2 , 0 < y < 1



Usando h = 1/3 e k = 0.5, encontre os valores aproximados de u(x, y) nos pontos internos
da malha.

Solucao:
Discretizando o domnio:

1 2
x0 = 0, x1 = , x2 = , x3 = 1,
3 3

112
t0 = 0, t1 = 0, 5, t2 = 1.

Das condicoes de Dirichlet, os valores de u(x, y) nos pontos da fronteira sao:

U10 = u(1/3, 0) = 0, U20 = u(2/3, 0) = 0, U01 = u(0, 1/2) = 1.5

U12 = u(1/3, 1) = 6.37037, U22 = u(2/3, 1) = 8.6262, U31 = u(1, 1/2) = 5.

Os valores desconhecidos sao U1,1 e U2,1 . Discretizando a equacao:

Ui+1, j 2Ui, j + Ui1,j Ui, j+1 2Ui,j + Ui, j1


+ = 6(xi + 1)y j + 8
h2 k2
Subtituindo i = 1, j = 1 obtemos:

9(U21 2U11 + U01 ) + 4(U12 2U11 + U10 ) = 6(4/3)(0.5) + 8 = 12

Simplificando
9U21 26U11 = 26.98148. (6.44)

Substituindo i = 2, j = 1

9(U31 2U2,1 + U11 ) + 4(U22 2U21 + U2,0 ) = 6(5/3)(0.5) + 8 = 13

Simplificando
26U21 + 9U11 = 66.51848 (6.45)

Resolvendo as equacoes (6.44) e (6.45):

U21 = 3.314813, U11 = 2.18519.

Exerccio 6.2. Resolva o Exemplo 6.10 com h = 1


3 e k = 13 .

6.5 Equacoes nao lineares


Para resolver Equacoes Diferenciais Parciais em geral, devemos discretizar a equacao
pelas formulas da Observacao 6.1 e logo resolver o sistema de equacoes (lineares ou nao)
obtido mediante esta discretizacao.
Exemplo 6.11. Considere a equacao diferencial parcial:

ut = u + (uxx ) + 2ux , com 0 < x < 1

2

u(x, 0) = 2x, u(0, t) = t2 , u(1, t) = 2 t2



(a) Deduza uma formula para encontrar os pontos internos substituindo diferencas
progressivas para ut e diferencas centrais para ux .

113
(b) Fazendo h = 1/3 e k = 1/20, encontre as aproximacoes obtidas pelo metodo do
item (a) para Ui, j com j = 1.

Solucao:
Os dados da malha sao

1 2
x0 = 0, x1 = , x2 = , x3 = 1
3 3

1
t0 = 0, t1 = .
20
Das condicoes iniciais:

1 2 2 4
U00 = 0, U10 = 2( ) = , U20 = 2( ) = , U30 = 2,
3 3 3 3

Discretizando a equacao

Ui,j+1 Ui, j  Ui+1,j 2Ui,j + Ui1, j 2  Ui+1,j Ui1, j 


= Ui,j + +2
k h2 2h

Se i = 1 e j = 0, obtemos

1 h  2  i
U1,1 U1,0 = ( ) U1,0 + 81 U2,0 2U1,0 + U0,0 + 3 U2,0 U0,0
20

Substituindo os dados segue que U11 = 0, 9.


Se i = 2, j = 0 obtemos

1 h  2  i
U2,1 U2,0 = ( ) U2,0 + 81 U3,0 2U2,0 + U1,0 + 3 U3,0 U1,0
20

Substituindo os dados segue que U21 = 1.6.

114
6.6 Exerccios
Exerccio 6.3. Nos domnios especificados, determine o tipo de cada uma das equacoes
diferenciais abaixo:

(a) xuxx yu yy = 0, com D = {x > 0, y > 0}

(b) x2 uxx + 2(1 y2 )u yy = 0, com D = {1 < x < 1, 1 < y < 1}

(c) uxx 2u yy = 0, D = R2

(d) uxx 2uxy + 4u yy = 0, D = R2

(e) uxx 2uxy + u yy = 0, D = R2

(f) uxy ux = 0, D = R2

Exerccio 6.4. Verifique se a funcao u(x, t) = cos(2t) sin(x) e solucao da equacao da


onda dada abaixo, para algum c > 0:

utt = c2 uxx , onde 0 < x < 1, 0 < t < 0.5






u(0, t) = 0,

(6.46)




u(x, 0) = sin(x)

Exerccio 6.5. Considere a equacao diferencial

ut = auxx + bux , com a > 0, 0 x L, 0 < t < T

com condicao inicial e de fronteira dadas por

u(x, 0) = (x), 0 < x < L






u(0, t) = f (t), 0 < t < T

(6.47)




u(L, t) = g(t), 0 < t < T

Faca o que se pede:

(a) Classifique a EDP dada acima.

(b) Mostre que, discretizando esta equacao pelo Metodo explcito e diferencas centrais
para aproximar ux , obtem-se:

 ka bk   2ka   ka kb 
Ui,j+1 = + Ui+1, j + 1 2 Ui,j + 2 Ui1,j
h2 2h h h 2h

(c) Para a = 2, b = 1, L = 0.5, (x) = 5x, f (t) = 0, g(t) = 2.5, h = 1/10, k = 1/20, calcule
o valor aproximado de u(0.3, 0.05).

Exerccio 6.6. Considere a equacao da onda utt 4uxx = 0 para 0 < x < 1, t > 0,
h = 0.5, k = 0.05, com condicoes de fronteira u(0, t) = u(1, t) = 0 e condicoes iniciais
u(x, 0) = sin(x) e ut (x, 0) = 0.

115
(a) Verifique que u(x, y) = sin(x) cos(2t) e solucao exata da equacao;

(b) Faca o esboco da malha ate o tempo t = 0.25;

(c) Usando aproximacoes obtidas pelo Metodo das Diferencas finitas, trace o esboco de
um grafico para a funcao u(0.5, t) onde 0 t 0.25.

Exerccio 6.7. Considere o problema:

uxx + u yy = cos(x + y) cos(x y), 0 x /2, 0 < y < /2






u(x, 0) = cos(x), u(x, /2) = 0, 0 x /2

(6.48)




u(0, y) = cos(y), u(/2, y) = 0, 0 y 0 2

Utilizando h = /4 e k = /4 no Metodo de diferencas finitas para o problema acima,


calcule o valor aproximado para u(/4, /4).

Exerccio 6.8. Considere a equacao uxx + u yy = xe y para 0 < x < 1.5, 0 < y < 1.5,
h = k = 0.5 e condicoes de fronteira:

u(0, y) = 0, u(1.5, y) = 1.5e

y
(6.49)
u(x, 0) = x, u(x, 1.5) = xe1.5

(a) Verifique que u(x, y) = xe y e solucao exata da equacao;

(b) Encontre o erro relativo para cada uma das aproximacoes obtidas pelo Metodo das
diferencas finitas nos pontos interiores da malha.

Exerccio 6.9. Uma placa de 12 cm de lado tem suas bordas mantidas a temperatura de
100 graus. Sabendo que a temperatura e dada pela funcao u(x, y), faca o que se pede:

(a) Considerando h = 4 e k = 6, faca um esboco da malha que representa a placa.

(b) Utilizando h = 4 e k = 6 no Metodo de Diferencas Finitas e sabendo que uxx + u yy = 0,


encontre os valores das temperaturas no interior da placa.

Exerccio 6.10. Considere a equacao diferencial

ut = uxx , com 1 x 2, 0 < t < T






u(x, 0) = sin(x), 1 x 2

(6.50)



u (1, t) = e2 t , u (2, t) = e2 t , 0 < t < T


x x

(a) Utilize o valor de ux (1, t) para calcular uma aproximacao para u(0.5, 0) quando
h = 0.5.

(c) Considerando h = 1/2 e k = 1/8 no Metodo das diferencas finitas, determine o valor
aproximado para u(1, 1/8).

Exerccio 6.11. Considere a equacao ut = uxx . Estabeleca a condicao necessaria para a


estabilidade de um Metodo Explcito e mostre o que acontece quando = 0.5 e = 103 .

116
Exerccio 6.12. Calcule a solucao aproximada de uxx + u yy + cos(y)ux sin(x)u y = 0 no
retangulo unitario com condicao de Dirichlet na fronteira. Resolva o problema atraves
de uma aproximacao em Diferencas Finitas, utilizando diferencas progressivas para as
derivadas de primeira ordem.

Exerccio 6.13. Resolva o problema anterior utilizando diferencas centrais para as deri-
vadas de primeira ordem. Explique o que ocorre.

Exerccio 6.14. Considere a equacao diferencial ut = uxx , com , 0 x 1 e 0 < t < T com
condicao de fronteira u(0, t) = u(1, t) = 0 para todo t > 0, e com condicao inicial dada

2x
, 0 x < 1/2
u(x, 0) =

(6.51)
2 2x , 1/2 x 1

Faca o que se pede:

(a) Considerando h = 1/4, para que valores de k o Metodo Explcito e estavel?

(b) Se h = 1/4 e k = 1/50, encontre as duas primeiras linhas de solucoes pelo Metodo
Explcito.

(c) Se h = 1/3 e k = 1/50, encontre as duas primeiras linhas de solucoes pelo Metodo
Implcito.

(d) Se h = 1/3 e k = 1/50, encontre as duas primeiras linhas de solucoes pelo Metodo
de Crank-Nicolson.

Exerccio 6.15. Considere o problema quase-linear ut = (ux )2 + u.uxx , com x [0, 1], t > 0
com condicao inicial e de fronteira:
2
u(x, 0) = ( x6 + x 32 ), para todo x [0, 1]




u(0, t) = 2(1+t)
3
, para todo t > 0

(6.52)




u(1, t) = 3(1+t) , para todo t > 0.
1

(a) Obtenha uma formula para as solucoes utilizando o Metodo Explcito e diferencas
centrais para a primeira derivada em relacao a x.

(b) Obtenha as duas primeiras linhas de solucoes usando h = 1/3 e k = 1/40.

Exerccio 6.16. Considere o seguinte problema com condicoes de fronteira de Newmann:

ut = uxx , com > 0, 0 x L, 0 < t < T.

sujeita a:

u(x, 0) = x2 1, para todo x [0, 1]






ux (0, t) = 2(u 1), para todo t > 0

(6.53)




u (1, t) = 3(u 2), para todo t > 0.

x

117
(a) Obtenha o metodo resultante de aproximacao das condicoes de fronteira por
diferencas centrais e da equacao pelo Metodo Explcito.

(b) Obtenha o metodo resultante da aproximacao da fronteira esquerda por diferencas


regressivas, da fronteira direita por diferencas progressivas e da equacao pelo
Metodo Explcito.

(c) Resolva os items (a) e (b) usando h = 1/3 e k = 1/30.

Exerccio 6.17. A resolucao numerica da seguinte equacao diferencial parcial

uxx + u yy = 6xy + 8, com 1 x 2, 0 < y < 1






u(x, 0) = 0, u(x, 1) = x3 + 4, 1 x 2





u(1, y) = y + 4y2 , u(2, y) = 8y + 4y2 , 0 < y < 1

esta representada na figura abaixo com h = 1/30 e k = 1/30.

Figura 38: Resolucao no computador.

Resolva a mesma equacao diferencial considerando h = 1/3 e k = 0.5 e encontre os


valores aproximados de u(x, y) nos pontos internos da malha. Compare com os valores
correspondentes da figura.

Exerccio 6.18. Considere a equacao diferencial parcial com as condicoes inicial e de


fronteira seguintes:
ut = 3uxx , com 0 < x < 1, 0 < t < T


(6.54)
u(x, 0) = x3 , u(0, t) = 0, u(1, t) = e2t

(a) Considerando h = 1/3 e k = 1/40, encontre os valores de Ui,j para j = 1 pelo metodo
explcito.

(b) Usando o metodo implcito e os valores do item (a), encontre os valores de Ui, j
para j = 2.

118
Exerccio 6.19. Considere a equacao diferencial parcial:

ut = u + (uxx ) + 2ux , com 0 < x < 1

3
(6.55)
u(x, 0) = 2x3 , u(0, t) = t2 , u(1, t) = 2 t2

(a) Deduza uma formula para encontrar os pontos internos substituindo diferencas
progressivas para ut e diferencas centrais para ux .

(b) Fazendo h = 1/3 e k = 1/20, encontre as aproximacoes obtidas pelo metodo do


item (a) para Ui, j com j = 1.

Referencias
[1] Arenales, Selma e Darezzo, Arthur: Calculo Numerico: aprendizagem com apoio de
software. Sao Paulo, Thomson Learning, 2008.

[2] Bertoldi, Neide: Calculo Numerico. Sao Paulo, Pearson Prentice Hall, 2006.

[3] Ruggeiro, Marcia e Lopes, Vera Lucia: Calculo Numerico: Aspectos Teoricos e Computa-
cionais . 2a Edicao, Sao Paulo, Pearson Makron Books, 1996.

[4] Steward, James: Calculo . Vol. 1, Cengage Learning, Sao Paulo, 2013.

119

Das könnte Ihnen auch gefallen