Cálculo Numérico
Cálculo Numérico
Cálculo Numérico
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 [email protected]. Serei grato a quem comunicar
os erros de qualquer natureza encontrados no texto.
2
Sumario
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
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
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:
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.
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.
Observe que f (0) = r 1 < 0 e f (1) = r > 0 entao, pelo TVI, existe uma raiz x no intervalo
[0, 1].
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
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:
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.
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.
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| < ,
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)
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:
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
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:
an f (bn ) bn f (an )
xn+1 = . (1.3)
f (bn ) f (an )
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:
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.
Observacao 1.2. Em todos os metodos que seguem aplicamos um dos dois criterios
de parada:
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:
(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
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.
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
12
Por tanto
lim |xn+1 x| lim Mn+2 |x0 x| = 0
n n
Observacao 1.3. Pelo Teorema 1.4 devemos escolher uma que satisfaca:
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:
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
n xn
0 0.5
1 0.08208
2 0.05404
3 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
y f (x0 )
= f 0 (x0 ).
x x0
0 f (x0 )
= f 0 (x0 ).
x1 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 )
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 )
f (x) f 00 (x)
0 (x) =
[ f 0 (x)]2
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:
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.
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 )
x1 f (x2 ) x2 f (x1 )
x3 = .
f (x2 ) f (x1 )
16
Figura 5: O Metodo da Secante.
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:
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.
x
(a) 4 cos(x) e2x = 0; (b) tan(x) = 0;
2
(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?
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.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 .
(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.
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:
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.
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.
Newton, encontre as razes nao nulas de p(x) = 0 com precisao de 6 casas decimais.
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 .
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.
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.
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.
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,
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).
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.
Note que um polinomio esta definido em toda a reta real R e, alem disso, e facil de
derivar e integrar.
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.
P(x) = a0 + a1 x + a2 x2 + ... + an xn .
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
n
Y
Det(A) = (xi x j ) (2.2)
i>j
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
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
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
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
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:
25
O polinomio interpolante e:
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.
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 ],
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,
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
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
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
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.
P(x) = 12.00 + 0.08(x 0) + 0.044(x 0)(x 2) + 0.0003(x 0)(x 2)(x 7)+ (2.4)
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
xi 1 3 4 5
f (xi ) 0 6 24 60
30
(b) Determinar o polinomio de interpolacao usando a Formula de Newton sobre tres
pontos (interpolacao quadratica).
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 .
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.
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:
Exerccio 2.14. Dada a tabela abaixo, calcule e3.1 usando um polinomio de interpolacao
sobre tres pontos:
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
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.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?
33
3 Resolucao Numerica de Sistemas Lineares
3.1 Introducao
Nesta secao estudaremos tecnicas para resolver sistemas lineares:
Ax = b (3.2)
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.
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:
1 2
x2 = (1 x1 )/5 = (1 )/5 = .
3 15
2 2 37
x3 = (3 2x1 + x2 )/2 = (3 + )/2 = .
3 15 30
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
Sao aqueles sistemas Ux = b na qual todos os termos que estao abaixo da diagonal de
U = (ui j ) sao 0:
35
Solucao:
3 3
x2 = (3 + x3 )/4 = (3 + )/4 = .
2 8
9 9 77
x1 = (4 + 3x3 3x2 )/2 = (4 + + )/2 = .
2 8 16
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
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.
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
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.
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.
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
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
38
Observacao 3.4. Da prova do Teorema 3.1 podemos concluir que:
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
39
de U:
l21 u11 = 2, l31 u11 = 6 entao l21 = 2, l31 = 6.
15
l31 u12 + l32 u22 = 3, entao l32 =
2
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
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),
6x1 x2 x3 = 3
6x1 +9x2 +x3 = 40
3x1 +x2 +12x3 = 50
Solucao:
x1 x62 x63 = 1
2
2x1
3 +x2 + x93 = 40
9
x41 x2
+ 12 +x3 = 25
6
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
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:
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:
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
(L + I + R )x = b
(L + I)x(k+1) = R x(k) + b
43
Acostuma-se escreve-lo na forma
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.
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
max{i } < 1
1in
em que
i1
X n
X
i = |ai j | j + |ai j |, i = 1, ..., n.
j=1 j=i+1
44
O metodo de Gauss-Seidel para se atingimos os seguintes erros
Erro Absoluto. Se
(k+1) (k)
max |xi xi | < . (3.14)
1in
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 .
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.
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.
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
x1 + x2 + 2x3 + 4x4 = 7, 12
2x1 + 5x2 + x3 + 2x4 = 14, 90
x1 + x2 + 5x3 + 6x4 = 12, 02
4x1 + 6x2 + 2x3 + x4 = 20, 72
5x1 + 2x2 + x3 = 7
x1 + 4x2 + 2x3 = 3
2x1 3x2 + 10x3 = 1
(b) Se possvel, resolve-lo pelo metodo do item (a), obtendo o resultado com erro
absoluto < 102 .
(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:
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
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.
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
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
Uma vez feita a aproximacao, fica ainda o estudo do erro cometido no processo de
aproximar. Este erro pode ser estudado com a equacao:
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
Repare que pode-se escrever o resto na forma Rn (x) = (x) f [x0 , x1 , ..., xn , x] em que
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)!
xn
f (n+1) ()
Z
En = (x)dx. (4.3)
x0 (n + 1)!
em que
n o
K = max | f (n+1) (x)| : x0 x xn .
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
xi yi ordem 0 ordem 1
x0 y0 y0
y1 y0
h
x1 y1 y1
y1 y0
P1 (x) = y0 + (x 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
h
I( f ) [ f (x0 ) + f (x1 )].
2
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 }.
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
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
13 2
|E1 | (2) = = 0, 16666.
12 12
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.
54
A aproximacao no intervalo Ii e dada por
h
Ai = [ f (xi1 ) + f (xi )].
2
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
h3
|E| E(1) + E(2) + ... + E(n) n max{| f (2) (x)| : x0 x xn }.
12
h2
|E| (xn x0 ) max{| f (2) (x)| : x0 x xn }. (4.9)
12
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
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 ).
56
Figura 15: Aproximacao usando um polinomio de grau 2
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
.
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 .
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 )
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
h5 n o
|E| max | f (4) (x)| : a x b
90
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
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
x0 = a, x1 = a + h, x2 = a + 2h, ..., xn = b.
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
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
h4 n o
|E| (xn x0 ) max | f (4) (x)| : a x b . (4.14)
180
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
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
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 ).
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
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
Utilize a regra 3/8 de Simpson para aproximar a integral e encontre um limitante superior
para o erro.
Solucao:
i 0 1 2 3
46 68
xi 8 3 3 30
f (xi ) 177,2667 372,4629 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
3 22 5
|E| .( ) .(0, 0063889) = 5, 081178. (4.18)
80 3
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
n 3h5 n o
|E| . max | f (4) (x)| : a x b ,
3 80
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
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
3(0, 5)
Q 2. [0 + 3(1, 47495 + 2, 8942 + 5, 5168 + 6, 4105 + 7, 6947 + 8, 4004)+
8
65
4.6 Exerccios
Exerccio 4.1. Aproxime as seguintes integrais usando:
(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:
(b) Regra 1
3 de Simpson generalizada, com h = 1/6.
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.
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)
R1
Exerccio 4.12. Seja a integral I = x
0 1+x2
dx.
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.
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)).
(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.
K = 0 (x0 ).
Mas (x) e solucao do PVI, entao 0 (x0 ) = f (x0 , y0 ). Como no Metodo de Euler a reta
tangente L aproxima temos que:
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 ).
Use N = 4.
Solucao:
10
h= = 0, 25; x0 = 0; x1 = 0, 25; x2 = 0, 5; x3 = 0, 75 e x4 = 1.
4
y1 = 2 + 0, 25(03 2) = 1, 5.
71
Se n = 1, teremos y2 = y1 + 0, 25(x31 y1 ). Substituindo
Continuando
y3 = y2 + 0, 25(x32 y2 ) = 0, 8779
e
y4 = y3 + 0, 25(x33 y3 ) = 0, 7638.
Repare que o PVI do Exemplo 5.1 pode-se resolver analticamente. A sua solucao e
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
y21 x1 1, 12 0, 5
y2 = y1 + 0, 5( ) = 1, 1 + 0, 5 = 1, 171.
5 5
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
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)
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
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
Esta reta pode ser transladada ao ponto (x0 , y0 ) para obter uma reta L2 com inclinacao
K2 .
K c1 K1 + c2 K2 .
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
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
yn+1 = yn + hK2
K1 = f (xn , yn )
(5.11)
K = f (x + h , y + hK1 )
2 n 2 n 2
yn+1 = yn + 2h (K1 + K2 )
K1 = f (xn , yn )
(5.12)
K = f (x + h, y + hK )
2 n n 1
Use N = 4.
Solucao:
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
Por tanto
h 0.25
y1 = y0 + (K1 + K2 ) = 2 + (2 1, 4843) = 1, 5644
2 2
Se n = 1, teremos
Por tanto
h 0.25
y2 = y1 + (K1 + K2 ) = 1, 5644 + (1, 5487 1, 0555) = 1.2388.
2 2
Se n = 2, teremos
Por tanto
h 0.25
y3 = y2 + (K1 + K2 ) = 1, 2388 + (1, 1138 0, 5384) = 1.0322.
2 2
Se n = 3, teremos
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
conclumos que, como visto na figura abaixo, a solucao pelo Metodo Aperfeicoado e
melhor que a obtida pelo Metodo de Euler.
P1 = (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 )
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 ).
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).
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
Da figura abaixo podemos verificar que metodo de Nystrom fornece uma melhor
aproximacao que o metodo de Euler Aperfeicoado.
80
5.4.3 O Metodo de Runge-Kutta de Ordem 4
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 )
K c1 K1 + c2 K2 + c3 K3 + c4 K4 ,
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 .
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
U = (y, z),
Un+1 = Un + hF(xn , Un )
82
ou, equivalentemente
y = x2 y2 + 2z
0
z0 = xy z2
(5.23)
y(0) = 1, z(0) = 2
Solucao:
83
Se n = 0,
y1 = y0 + h(x0 y0 + 2z0 ) = 1 + (1/3)(0 1 + 2(2)) = 2
2 2 2 2
Se n = 1,
y2 = y1 + h(x1 y1 + 2z1 ) = 2 + (1/3)((0.3333) (2) + 2(0.6666)) = 1, 1480
2 2 2 2
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
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).
Solucao:
Substituindo os dados a equacao fica:
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,
Se n = 2,
86
5.6 Exerccios
Exerccio 5.3. Aplique o Metodo de Euler para aproximar as solucoes dos seguintes
problemas de valor inicial:
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
(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:
(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.
(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.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.
(a) Considerando n = 4.
(b) Considerando n = 8.
(a) Calcule aproximacoes para y(1), usando o Metodo de Euler com h = 0, 2 e h = 0, 25.
88
(a) Encontre a solucao aproximada usando o Metodo de Euler com h = 0, 5 e h = 0, 25,
considerando x [0, 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)
(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
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.
ut = uxx
90
Exemplo 6.3. A Equacao de Poisson dada por
uxx + u yy = F(x, y)
f (x + h) f (x)
f 0 (x) = lim
x h
f (x) f (x h)
f 0 (x)
h
f 0 (x + h) f 0 (x)
f 00 (x)
h
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
u(x, t + h) u(x, t h)
ut (x, t) . (6.4)
2h
ut = uxx
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
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
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)
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
94
Se
k
= ,
h2
segue entao que
Para j = 0, , N 1 e i = 1, , N 1
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.
95
O Metodo Explcito e estavel so quando
1
.
2
2k < h2 . (6.13)
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
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.
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
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
Condio Inicial
Figura 30: Condicao inicial e solucoes numericas para a equacao do Exemplo 6.4.
97
6.3.4 O Metodo Implcito
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:
Para j = 1, , M e i = 1, , N 1
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:
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 .
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
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.
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
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.
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
9
25 U1,2 + 43
25 U2,2 = 1, 71352
102
Para j = 1, , M e i = 1, , N 1,
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.
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 )
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:
104
Das condicoes de fronteira
+ 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
+ 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
Condio Inicial
105
6.3.6 Condicoes de Fronteira de Neumann ou com Derivadas
u(0, t) u(L, t)
= f (t), = g(t).
x x
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
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.
u(x1 , t j ) u(x1 , t j )
f (t j ) .
2h
Por tanto
U1,j U1,j
f (t j ) =
2h
o equivalentemente
que expressa o fato que o valor nos pontos fantasma depende do valor nos pontos
interiores da malha.
UN+1,j UN1,j
g(t j ) =
2h
Implicando que
107
UN+1, j = UN1, j + 2hg(t j ). (6.37)
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)
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
108
Solucao:
3 1 2
x0 = 1, x1 = , x2 = 1, t0 = 2, t1 = , t2 = .
2 20 20
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:
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:
1 1 2
x0 = 0, x1 = , x2 = 1, t0 = 0, t1 = , t2 = .
2 40 40
109
E os valores U0,0 = (x0 ) = 1, U1,0 = (x1 ) = 0, 75, U2,0 = (x2 ) = 0, e
f (t0 ) = 0; g(t0 ) = 2.
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
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}.
e no eixo y e:
y0 = 0, y1 = k, , yi = ik, , yM = b.
110
Figura 36: Discretizacao do Domnio para uma equacao elptica.
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,
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):
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.
Simplificando
9U21 26U11 = 26.98148. (6.44)
Substituindo i = 2, j = 1
Simplificando
26U21 + 9U11 = 66.51848 (6.45)
(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
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
1 h 2 i
U2,1 U2,0 = ( ) U2,0 + 81 U3,0 2U2,0 + U1,0 + 3 U3,0 U1,0
20
114
6.6 Exerccios
Exerccio 6.3. Nos domnios especificados, determine o tipo de cada uma das equacoes
diferenciais abaixo:
(c) uxx 2u yy = 0, D = R2
(f) uxy ux = 0, D = R2
(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;
(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.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
(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) 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).
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
(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.
sujeita a:
117
(a) Obtenha o metodo resultante de aproximacao das condicoes de fronteira por
diferencas centrais e da equacao pelo Metodo Explcito.
(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 .
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