Upload
alexandre-barreiro-neto
View
191
Download
1
Embed Size (px)
Citation preview
10 – MÉTODOS DE RESOLUÇÃO DE EQUAÇÕES DIFERENCIAIS ORDINÁRIAS
10.1 Introdução
10.2 Notações e Conceitos relativos às Equações Diferenciais Ordinárias
10.3 Métodos Numéricos de Passo Simples
10.4 Método de Euler
10.5 Método de Euler Modificado
10.6 Métodos da Série de Taylor
10.7 Métodos de Runge-Kutta
10.8 Métodos de Numéricos de Passo Múltiplo
10.9 Referências para o Item
10.1 – INTRODUÇÃO
O objetivo geral desta unidade temática é estudar métodos de resolução numérica de
equações diferenciais ordinárias, visto que nas mais diversas áreas do conhecimento
surgem problemas cuja modelagem matemática recai na solução de uma equação
diferencial. Modelos em equações diferenciais são apresentados no exemplo 10.1.
Exemplo 10.1: Modelagem e solução de trajetórias balísticas, trajetória dos satélites,
redes elétricas, curvaturas de vigas, estabilidade de aviões, teoria das vibrações,
reações químicas, etc. Outros exemplos em dinâmica populacional são os modelos
Malthusiano de crescimento populacional, de Verhulst e de Volterra com duas espécies.
No resfriamento de um corpo alguns modelos são os de resfriamento de um corpo sem
e com variação da temperatura do meio ambiente. Em Geometria ou Física alguns
modelos são estudados são da tractriz, catenária, espelho parabólico, curvas de
perseguição, queda livre de corpos sem e com a resistência do ar, movimento de
projéteis sem e com a resistência do ar. Em Psicologia e Biologia têm-se os modelos de
Ebbinghaus, a lei da alometria e modelos epidemiológicos.
Exemplo 10.2: Outros exemplos mais específicos de fenômenos ou problemas escritos
matematicamente em equações diferenciais são:
• A reação química reversível de primeira ordem A B� , descrita pela equação
= −A AdC dt kC , na qual CA é a concentração do reagente A, k a constante da reação e t
o tempo decorrido desde o início da reação.
• A descarga de um circuito elétrico contendo um resistor em série com um capacitor,
descrito pela equação = +0V R(dQ dt) C Q , para a qual V0 é a tensão contínua de
alimentação do circuito, R a resistência, C a capacitância, Q a carga elétrica
acumulada no capacitor e =i dQ dt a corrente do circuito.
Em muitas situações pode ocorrer que a solução exata de uma equação diferencial
ordinária não seja possível ou muito difícil de ser determinada. Um exemplo é:
Exemplo 10.3: Um problema de valor inicial em equações diferenciais ordinárias não
lineares, para um modelo epidemiológico tipo S.I.R., com tempo inicial t0=0 é como:
Para desenvolver metodologias de solução numérica de equações diferenciais é
necessário lembrar de algumas notações e conceitos empregados nessa temática.
10.2 – NOTAÇÕES E CONCEITOS RELATIVOS ÀS EQUAÇÕES DIFERENCIAIS ORDINÁRIAS
Alguns dos conceitos necessários ao mínimo entendimento da temática referem-se às
condições iniciais, condições de contorno, problema de valor inicial, entre outros.
Definição 10.1: Uma equação diferencial ordinária de ordem (EDO) n é uma equação
que pode ser descrita, para função incógnita y de variável independente x , como:
( ) ( )( )n
n n 1
n
d yy f x,y,y',y'',...y
dx−= = (1)
Uma equação diferencial ordinária (EDO) de primeira ordem para as variáveis x
(independente) e y (dependente) é, de (1), como:
( )≡ ='dyy f x,y
dx (2)
No caso particular em que ( ) ( )=f x,y f x , pode-se obter a solução geral para a EDO de
primeira ordem (2) pelo método de separação de variáveis como:
( ) ( ) ( )= = +∴ ∴ =∫ ∫ ∫dy
f x dy f x dx y f x dx cdx
onde c é uma constante de integração da integral indefinida.
Exemplo 10.4: Exemplos de equações diferenciais ordinárias, classificando-as, são:
• =dy
2xdx
(1ª ordem) • + − =d²y dy
3 17y 0dx² dx
(2ª ordem)
• = +2 2dyx y
dx (1ª ordem) •
23 2
3 2
d y d y15 2y 15
dx dx
− + =
(3ª ordem e 2º grau)
Definição 10.2: Obter uma solução de uma EDO é Resolver uma equação diferencial do
tipo (1) obtendo uma expressão que satisfaça a equação original.
Exemplo 10.5: Considere a equação diferencial ordinária =dy dx cos(x) . Então a
expressão ( ) ( )y F x sen x C= = + é uma família de funções que são soluções para a EDO
dada. Com efeito, pois diferenciando ( ) ( )≡ = +y F x sen x C em relação à x obtém-se:
( ) ( )( )
( )( )
d dy F x
dx dxd
sen x c cos(x) 0 cos(x)dx
dy dx cos(x)
≡
= + = + =
∴ =
A figura 10.1 ilustra a trajetória das soluções da EDO para diferentes valores de c.
Figura 10.1: Soluções da equação ( )dy / dx cos x= .
Definição 10.3: As condições a serem impostas à equação diferencial ordinária, inicio da
resolução e nas fronteiras do domínio de definição são designadas, respectivamente,
por condições iniciais e condições de contorno.
Essa conceituação é importante, pois como mostrado na figura 10.1 uma equação
diferencial pode ter infinitas soluções que a satisfaz, o que pode não ser aceitável para
problemas reais sob certo conjunto de dados.
Observação 10.1: Considere a equação do exemplo 10.5, =dy dx cos(x) . Uma solução
geral para ela é ( )= +y sen x c . Para determinar a constante c impõe-se uma condição
inicial ao problema, obtendo o que se designa por Problema de Valor Inicial (PVI).
Quando são impostas condições às fronteiras do domínio de definição obtém-se um
Problema de Valor de Contorno (PVC). Nestas notas de aulas não serão abordados PVC!
Exemplo 10.6: Neste exemplo apresentam-se duas situações, um PVI (EDO com uma
condição inicial) e um PVC (EDO com condição de contorno), respectivamente:
( )dx /dt cos t;t 0
x(0) 0
=≥
= Exemplo de PVI ( )
[ ]=
∈= =
dy / dx cos x;x a,b
y(a) c,y(b) d Exemplo de PVC
A resolução de Problema de Valor Inicial (PVI) enfoca equações diferenciais ordinárias
de primeira ordem, pois uma equação diferencial ordinária de ordem n pode ser
transformada em um sistema de n equações de primeira ordem, através de uma
conveniente mudança de variáveis. O exemplo 10.7 ilustra essa situação.
Exemplo 10.7: Transformar o PVI de terceira ordem em um sistema de primeira ordem
com três equações.
( )( )( )
[ ]
''' x 2
'
''
y xy' e y x 1
y 0 1; x 0,1
y 0 0
y 0 1
= + + +
=∈
= = −
Solução: A seguinte seqüência de cálculos mostra as mudanças de variáveis realizadas e
apresenta os resultados.
{ ( ){{ ( ){{ ( ){
= = =
= = =
= = + + + = −
'1 1 2 1
' '2 2 3 2
'' ' x 23 3 2 1 3
Entao (derivando) :Sej
y y y y ; y 0 1
y y y y ; y 0 0
y y y xy e
a
y x 1 ; y 0
m:
1
Portanto, nestas notas de aulas serão desenvolvidos apenas métodos para equações
diferenciais de primeira ordem do tipo (2) com uma condição inicial =0 0y(x ) y . Ou seja,
somente são tratados PVI como (3):
( ) ≡ = =
'
0 0
dyy f x,y
dxy(x ) y
(3)
E quando for necessário resolver um problema de ordem n , transforma-se o problema
em um sistema de n equações de primeira ordem e aplica-se o método a cada uma
delas, simultaneamente, como se verá em detalhes.
10.3 – MÉTODOS NUMÉRICOS DE PASSO SIMPLES
Como muitas equações diferenciais não admitem soluções por expressões analíticas,
elas deverão ser feitas de forma aproximada. Abordagens tradicionais nesse sentido
são realizar um desenvolvimento em série ou calcular de aproximadamente o valor da
solução num conjunto finito de valores da variável independente. Assim, nessa seção
são estudados métodos numéricos que permitem obter soluções aproximadas de EDOs.
Alguns dos métodos mais usuais para tal são os designados Métodos de Passo Simples
que são caracterizados pelo fato de que + −k 1 ésima iteração da variável de interesse,
+k 1y , depende apenas das informações da solução da −k ésima iteração, ky , e da
equação diferencial no ponto ( )k kx ,y . Métodos usuais dessa classe são os de Euler,
Euler modificado (aperfeiçoado) e Runge-Kutta de 3ª e de 4ª ordens.
10.4 – MÉTODO DE EULER
O Método de Euler, também conhecido como método da reta tangente, é um popular
método de solução de equações diferenciais ordinárias, com intuito acadêmico. Com
efeito, pois embora seja um método simples de desenvolver e de programar, muitos
problemas práticos não devem ser resolvidos utilizando-o, visto que tem baixa precisão
e estabilidade. Para detalhes veja as referências indicadas.
Existem distintos caminhos para deduzir o método, mas seguindo a metodologia por
série de Taylor, ele pode ser obtido considerando o PVI (3). Nesse caso tomando
+ − =i 1 ix x h , ≤ ≤0 i n como sendo a amplitude de subintervalos discretos do domínio de
definição, de um desenvolvimento por série de Taylor para [ ]( )∈ 2y C a,b em torno de
( )+ξ∈ i i 1x ,x obtém-se para ( ) ( )+ ≡ +i 1 iy x y x h que ( ) ( ) ( ) ( )+ = + + ξ2
i 1 i i
hy x y x hy' x y''
2; ( )+ξ∈ i i 1x ,x ,
sendo ( ) ( )( )='i i iy x f x ,y x e truncando a série no segundo termo escreve-se:
( ) ( ) ( )( )+ ≈ +i 1 i i iy x y x hf x ,y x (4)
Que é designada de fórmula de Euler de primeira ordem para solução de PVI tipo (3).
Observação 10.2: No caso em que i o= obtém-se usando (3), tomando = −1 0h x x , que:
( ) ( ) ( )( )≈ +1 0 0 0y x y x hf x ,y x ou seja ( ) ( ) ( )( )−≈1 0
0 0
y x y xf x ,y x
h e, então, ( )−
≈−
1 00 0
1 0
y yf x ,y
x x ou seja,
( )≈ + −1 1 0 0 0y (x x )f x ,y que é a equação da reta que passa pelos pontos ( )0 0x ,y e ( )i 1x , y .
Observe que quando = − →1 0h x x 0 então →1 1y y . Veja a figura 10.2 para uma ilustração.
Figura 10.2: Solução gráfica de EDO pelo Método de Euler ou método da reta tangente.
Assim, pelo método de Euler, a partir da condição inicial ( )0y x é possível calcular
iterativamente ( )iy x ≤ ≤1 i n de modo obter uma aproximação para a função ( )=f y x .
Observação 10.3: Quando valores de =f(x) y são obtidos a partir do conhecimento de
valores nos passos ou iterações anteriores são denominados métodos explícitos. Além
disto, se depender apenas do valor imediatamente precedente o método é conhecido
como de passo simples. Existem métodos em que os valores de =f(x) y podem ser
obtidos somente conhecendo-se concomitantemente vários valores no mesmo passo.
São denominados por métodos implícitos. Em outros, o valor requerido depende de
distintas iterações precedentes. São designados de métodos de passo múltiplo.
Exemplo 10.8: Resolver o PVI especificado por 'y 2x 3
y(1) 1
= +
=, com ∈x [1,1.5] e =h 0,1 .
Solução: De (3) então ( )='y f x,y e do PVI tem-se = +f(x) 2x 3 e =0x 1,0 e = =0 0y y(x ) 1,0 . Da
fórmula de Euler (4) obtêm-se operações e valores como apresentado na tabela 10.1.
Tabela 10.1: Operações realizadas e valores obtidos na solução do PVI do exemplo 10.8.
ix ( ) ( ) ( )( )+ = +i 1 i i iy x y x hf x ,y x , com + = +i 1 ix x h
=0x 1.0 ≡ =00 yy(x ) 1.0
1x 1.1= ( )≡ = + × + == +1 0 0 01 y y hf(x ,y )y(x ) 1.0 0.1 2 1.0 3 1.5
=2x 1.2 ≡ = + = ++ × == +2 1 1 12y(x ) 1.5 0.1(1.1, 1.5) 1.5 0,1(2 1.1y y 3)hf(x ,y ) 2.02
=3x 1.3 ≡ = + = + × == + +3 2 2 23y(x ) 2.02 0.1(1y y hf .2, 2.02) 2.02 0.1(2 1.2 3)(x ,y ) 2.56
=4x 1.4 ≡ = + = + × == + +4 3 3 34y(x ) 2.56 0.1(1y y hf .3, 2.56) 2.56 0.1(2 1.3 3)(x ,y ) 3.12
=5x 1.5 ≡ = + = + × == + +5 4 4 45y(x ) 3.12 0.1(1y y hf .4, 3.12) 3.12 0.1(2 1.4 3)(x ,y ) 3.70
As figuras 10.3 e 10.4 mostram, respectivamente, uma implementação rudimentar em
Scilab do método de Euler e um gráfico dos resultados apresentados na tabela 10.1.
Figura 10.3: Uma implementação para o algoritmo do método de Euler,
( ) ( ) ( )( )+ = +i 1 i i iy x y x hf x ,y x .
Figura 10.4: Gráfico dos resultados obtidos e apresentados na tabela 10.1.
Uma implementação menos rudimentar é como apresentada na figura 10.5.
Figura 10.5: Uma implementação do método de Euler de primeira ordem.
Para executar siga as seguintes instruções:
Exemplo 10.9: Resolver o PVI especificado, considerando ∈x [0,1] e =h 0,2 .
= +
= =
''
'
y x y
y(0) 1, y (0) 0
Solução: Esse PVI é de segunda ordem e para resolvê-lo pode-se transformar ele num
sistema equivalente de duas equações diferenciais de primeira ordem, via mudança de
variáveis. Com efeito, e para isso faz-se:
( )( )
( )( )
'1 2 1 1 2
1
1
'2 1 2 1 2'
2
2
y y f x,y ,yy y
y 0 1
y x y f x,y ,yy y
y 0 0
= ==
=
∴ = + = = =
Sendo resolvidos usando o método de Euler padrão ( ) ( ) ( )( )+ = +i 1 i i iy x y x hf x ,y x como
apresentado na tabela 10.2.
Tabela 10.2: Resultados do método ( ) ( ) ( )( )+ = +i 1 i i iy x y x hf x ,y x com + = +i 1 ix x h na solução do
PVI do exemplo 10.9.
ix ( )( )
= =
=
'1 1 1 2 2
1
y yy f x,y ,
y 0 1 ( )
( ) = = +
=
'2 2 21 1
2
y f x, ,y x
y 0 0
y y
=0x 0.0 =1y (0.0) 1.0 =2y (0.0) 0.0
=1x 0.2 ( )= + ×
= + × =
= +1 1
2
21 1y (0.2) y
1.0 0.2 y (0.0)
1
(0
.0
.0) hf 0.0,y (0),
0.2 (0.0)
y (0)
1.0
( )
= + × +
= + × +
= +
=0 1
12 2 2 2
0.0 0.2 (x y (0.0)
y (0.2)
)
0.0 0
y (0.
.2
0) hf
(0.0
0.0, ,
1.0
y (0) y (0)
) 0.20
• Abra o Scilab, clique em arquivo – executar e procure no diretório o
arquivo Scilab do método de Euler para resolver a EDO.
• Defina a função f, por exemplo: deff(‘[z]=f(x,y)’, ‘z=y’).
• Defina x0, y0, xf e Nmax.
• Execute a função: [y] = Euler(f, x0, y0,xf,Nmax).
=2x 0.4 ( )= +
= + × =
= +
×1
2
1 1 1 2y (0.2)
1.0 0.2 y (0.2)
y (0.4) y (0.2) hf
1.0 0.2 (0
0.
.2
2,y (
0)
0.2),
1.04
( )
= + × +
= + × + =
= +
1 1
2 212 2
0.2 0.2 (x y (0.2
y (0.4) y (0.2) hf 0.2, ,
))
0.2 0.2 (0.2
y (0
1.
y
0
(0.2) . )
)
2
0.44
=3x 0.6 ( )= + ×
= + × =
= +1 1
2
21 1
1.04 0.2
y (0.6)
y (0.4)
y (0.4) hf 0.4,y (0
1.04 0.2 (0.4
.4
4)
y (0.
1
, 4) )
.128
( )
= + × +
= + ×
=
+
+
=2
2
1
2 2 21
0.44 0.2 (x y (0.4))
y (0.6) y
0.4
(0.4) hf 0.4, ,y (0.4)y (0.4)
4 0.2 (0.4 1.04) 0.728
=4x 0.8
( )
= + ×
= + =
= +
×
1 1
2
1 21
1.128 0.2 y (0.6
y (0.8) y (0.6) hf 0.6,y (0.
)
1.128 0.2 (0.728)
y (0.6)
1.
6),
2736
( )
= + × +
= + ×
= +
+ =3
2 2 2
1
2 1
0.728 0.2 (x y (0.
y (0.8)
6))
0.7
y (0.6) hf 0.6, ,y (0.6y (0.6)
28 0.2 (0.6 1.128) 1.
)
0736
=5x 1.0 ( )= + ×
= + ×
= +
=
1 1 1 2
2
1
1.27
y (1.0)
36 0.2 y (0.8)
1.273
y (0.8) hf 0.8,y (0.8),
6 0.2 (1.0736) 1
y (0.8)
.4883
( )
= + × +
= + × + =
= +2 2 2 21
4 11.0736 0.2 (x y (0.8))
1.07
y (1.0) y (0.8) hf 0.8
36 0.2 (0
y
.8 1.2
, ,
73
y
6
(0. (0.8)
) 1.
8)
4883
As figuras 10.6 e 10.7 mostram, respectivamente, uma implementação rudimentar em
Scilab para o método de Euler e um gráfico dos resultados apresentados na tabela 10.2.
Figura 10.6: Uma implementação rudimentar para o algoritmo do método de Euler para
resolver o exemplo 10.9.
Figura 10.7: Gráfico dos resultados obtidos e apresentados na tabela 10.2.
Observação 10.4: O método de Euler é simples e apresenta bons resultados para EDOs
lineares. Para problemas não-lineares, como será mostrado posteriormente, o método
não é suficientemente estável ou acurado. Para essas situações existem outros
métodos que fornecem melhores resultados, quando comparados ao método de Euler,
para o mesmo passo += −k 1 kh x x , ≤ ≤0 k n . Um deles é o método de Euler modificado.
10.5 – MÉTODO DE EULER MODIFICADO (APERFEIÇOADO)
O método de Euler baseia-se no cálculo da solução pela aproximação de uma reta
tangente com origem em 0x para avaliar a solução em 1x , como visto na figura 10.2. O
método de Euler modificado ou método de Heun considera uma correção na estimativa
da solução em 1x calculando o valor de 1y e fazendo a média com o valor 1y .
De modo geral faz-se o cálculo do valor de i 1y + , tomando-se a média entre as inclinações
das retas tangentes nos pontos ix e +i 1x , como ( ) ( ) ( )+ += + médio i i i i i 1 i 1f x ,y 0.5 f x ,y f x , y , no
qual o termo ( )+ = +i 1 i i iy y hf x ,y , designado na literatura como passo preditor, é obtido
usando o método de Euler. Substituindo o coeficiente angular médio ( )médio i if x ,y no
método de Euler, ( ) ( ) ( )( )+ ≈ +i 1 i i iy x y x hf x ,y x , obtém-se para ( )+ +≡i 1 i 1y x y como:
( ) ( ) ( )( ) ( )+ + + ≈ + + i 1 i i i i 1 i 1y x y x 0.5h f x ,y x f x , y (5)
Que é designada de fórmula de Euler modificado de primeira ordem para solução de
PVI tipo (3). A figura 10.8 apresenta uma ilustração geométrica do método.
Figura 10.8: Solução gráfica da EDO pelo método de Euler modificado
Uma forma, também heurística, de deduzir o método (numa notação próxima dos
métodos tipo Runge-Kutta) é considerar + = +i 1 ix x h , ( )=1 i ik hf x ,y e ( )+= +2 i 1 i 1k hf x ,y k , e
então uma forma alternativa de apresentar (5) é para ( ) ( )+ + += +i 1 i 1 i 1 i 1f x , y f x ,y k como:
( ) ( ) [ ]+ ≈ + +i 1 i 1 2y x y x 0.5 k k (5’)
Exemplo 10.10: Resolver o PVI especificado, considerando ∈x [0,1] e =h 0,2 .
= − +
=
'y x y 2
y(0) 2
Solução: Esse PVI é de primeira ordem do tipo (3), que pode ser resolvido diretamente
usando (5’). De (5’) obtém-se operações e valores como apresentado na tabela 10.3.
Tabela 10.3: Operações realizadas e valores obtidos na solução do PVI do exemplo 10.10.
+ = +i 1 ix x h , ( ) ( ) [ ]+ = + +i 1 i 1 2y x y x 0.5 k k
=0x 0.0 = =≡0 0y y(x ) y(0.0) 2.0 − += ='y f(x,y x y) 2
= +
= +
=
1 0x x 0.2
0.0 0.2
0.2
[ ]
( ) ( ) [ ]
+
∴
= +
= + +
1 0 1 2
1 2
y y 0.5 k k
y 0.2 y 0.0 0.5 k k
( ) ( )
( ) ( )( ) ( )
[ ] ( )
= = =
=
= = +
= = − +
=
= + + = + +
=
− +
+
1 0 0
2
1 0 1 2
1 0 1
k hf x ,y 0.2f 0.0,2.0 0.2( )
k hf 0.2f 0.2
0.0
,2 0
0.2f 0.2,2 0.2 0.2 2 2
y y
0.0 2.0 2
x
k k 2 0.
0.
5 0 0.0
,y k
0
.02
4
4
2
0.5
= +
= +
=
2 1x x 0.2
0.2 0.2
0.4
[ ]
( ) ( ) [ ]
+
∴
= +
= + +
2 1 1 2
1 2
y y 0.5 k k
y 0.4 y 0.2 0.5 k k
( ) ( )
( ) ( )( )
[ ] ( )
= = =
=
= = +
= =
=
= + =
+
+ + +
=
1 1 1
2
2 1 1 2
2 1 1
k hf x ,y 0.2f 0.2,2.02 0.2(0.18)
k hf 0.2f 0.4,2.02 0.036
0.2f 0.4,2.056 0.2(0.344)
y y 0.5 k k 2.02 0.5 0.036
0.
0.
036
0.06
0688
88
2.
x ,y k
0724
= +
= +
=
3 2x x 0.2
0.4 0.2
0.6
[ ]
( ) ( ) [ ]
+
∴
= +
= + +
3 2 1 2
1 2
y y 0.5 k k
y 0.3 y 0.2 0.5 k k
( ) ( )
( ) ( )
[ ] ( )
= = =
=
= = +
=
=
= + + = + +
=
+
1 2 2
2
3 2
3
1 2
2 1
k hf x ,y 0.2f 0.4,2.0724 0.2(0.3276)
k hf 0.2f 0.6,2.0724 0.0
0.065
6552
0.2(0.46208)
y y 0.5 k k 2.0724 0.5 0.06552 0.092
x ,y k
416
52
0.092416
2.151368
= +
= +
=
4 3x x 0.2
0.6 0.2
0.8
[ ]
( ) ( ) [ ]
+
∴
= +
= + +
4 3 1 2
1 2
y y 0.5 k k
y 0.8 y 0.6 0.5 k k
( ) ( )
( ) ( )
[ ]
= = =
=
= = +
=
=
= + + = +
+ =
+
+
1 3 3
2
4 3
4 3 1
1 2
k hf x ,y 0.2f 0.6,2.151368 0.2(0.448632)
k hf 0.2f 0.8,2.151368 0.0897264
0.2(0.5589056)
y y 0.5 k k 2.151368 0.5(0.0897264
0
x ,y k
.111
0.0897264
0.11178112
2.25278112) 12176
= +
= +
=
5 4x x 0.2
0.8 0.2
1.0
[ ]
( ) ( ) [ ]
+
∴
= +
= + +
5 4 1 2
1 2
y y 0.5 k k
y 1.0 y 0.8 0.5 k k
( ) ( )
( )
[ ]
= = =
=
= = +
+ =
=
= + + = + +
+ =
+
1 4 4
2
5 4 1 2
5 4 1
k hf x ,y 0.2f 0.8,2.25212176 0.2(0.2779)
k hf 0.2f(1.0,2.52212176
0.1095755648 0.2(0.5589056)
y y 0.5 k k 2.25212176 0.5(0.109575564
0.1095755648
0.12
8
0.127660518
7660518
2.37073
x ,y k
9843
As figuras 10.9 e 10.10 mostram, respectivamente, um algoritmo rudimentar em Scilab do
método de Euler modificado e um gráfico dos resultados apresentados na tabela 10.3.
Figura 10.9: Uma implementação rudimentar para o método de Euler modificado para
resolver o exemplo 10.10.
Figura 10.10: Gráfico apresentando os resultados obtidos e apresentados na tabela 10.3.
Outros populares métodos de resolver EDOs são os provenientes da série de Taylor. E
uma implementação menos rudimentar é como apresentada na figura 10.11.
Figura 10.11: Uma implementação do método de Euler modificado.
10.6 – MÉTODOS DA SÉRIE DE TAYLOR
Para ilustrar o desenvolvimento do método da série de Taylor considere o PVI (3),
( ){ '0 0y f x,y , y(x ) y= = . Aplicando a série de Taylor à função += k 1y y(x ) no ponto kx , supondo
atendidas as hipóteses de diferenciabilidade e continuidade, obtém-se:
( ) ( ) ( ) ( ) ( ) ( )( ) ( ) ( )
( ) ( )( )
( )+
+
+
ξ= + − + − + + − + −
+⋯
n n 1' ''2 n n 1k k k
k 1 k k k k k
y x y x y x yy x y x x x x x x x x x
1! 2! n! n 1 !
Ou, tomando − =n kx x h , obtém-se:
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )( )
++
+
ξ= + + + + +
+⋯
n n 1' ''2 n n 1k k k
k 1 k
y x y x y x yy x y x h h h h
1! 2! n! n 1 ! (6)
Como de (3) pode-se escrever ( ) ( )= 'k k kf x ,y y x pode-se relacionar as derivadas de (6)
com as derivadas totais da função ( )k kf x ,y como:
( ) ( ) = + = + += ='x y x
'y
'' df dx df dyf ff x,y y x y f f
dx dx dy dxf , ( ) ( ) ( )= = + + + +2
y x y yy xy'' '''
xxf f f f f f 2fff y y x fx, , etc.
Assim, pode-se obter uma aproximação para o cálculo do PVI, substituindo relações
desses tipos na série de Taylor. Os métodos são classificados de acordo com o termo de
maior ordem usado na série de Taylor. E o erro de truncamento é definido como:
Definição 10.4: Diz-se que um método para a solução de PVI é de ordem n se este
coincide com a série de Taylor até o n-ésimo termo. O erro local cometido por esta
aproximação é avaliado como ( )( ) ( )( )
++
+
ξ=
+
n 1n 1
loc k 1
yE x h
n 1 !; [ ]+ξ∈ k k 1x ,x .
Observação 10.5: Se =y y(x) tem derivada de ordem +n 1 contínua no intervalo [ ]=I a,b de
definição, então existe ( ) ( )n 1
n 1x I
M máx y x++ ∈
= . Assim, obtém-se um majorante para o erro
de truncamento, pois, nesse caso vale ( ) ( )++ξ ≤n 1
n 1y M , ∀ ∈x I , de modo que o erro local
cometido pode ser avaliado como ( ) ( )( )
n 1 n 1n 1loc k
x I
ME x máx E x h Ch
n 1 !+ ++
∈≤ ≤ =
+, onde
( )+ =
+n 1M
Cn 1 !
.
Definição 10.5: Diz-se que um método é de ordem p, se existe uma constante C tal que
( ) p 1k 1E x Ch ++ < , onde C pode depender das derivadas da função que define o PVI.
Essas conceituações são empregadas para avaliar o erro local cometido no método de
Taylor de ordem =n 1. Com efeito, considere que nesse caso a série de Taylor:
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )( )
++
+
ξ= + + + + +
+⋯
n n 1' ''2 n n 1k k k
k 1 k
y x y x y x yy x y x h h h h
1! 2! n! n 1 !
Reduz-se a + = +
'k
k 1 k
yy y h
1!, donde + = + '
k 1 k ky y hy de modo que o erro local cometido é
( ) ( )( )+
ξ=
''2
loc k 1
yE x h
2 !, +≤ ξ ≤k k 1x x . Verifica-se, além disso, que o método de Taylor de ordem
=n 1 é o método de Euler, pois coincide com a série de Taylor até o primeiro termo e
então seu erro local é dado por ( ) ( ) ( )+ = ξ'' 2loc k 1E x y h 2 ! , com +≤ ξ ≤k k 1x x .
Observação 10.6: Em geral pode-se determinar a ordem de um método pela fórmula do
erro. Se o erro depende da n-ésima derivada diz-se que o método é de ordem −n 1 .
Exemplo 10.11: Seja o PVI 'y y
y(0) 1
=
=. Determine h para avaliar y(0.5) com −< 5erro 5x10 .
Solução: Usando a fórmula de erro local ( ) ( ) ( )+ = ξ'' 2loc k 1E x y h 2 ! com
+≤ ξ ≤k k 1x x e
considerando a solução analítica do PVI, ( ) xy x e= , tem-se da observação 10.5 é avaliado
como ( ) ( )( )
n 1 n 1n 1loc k
x I
ME x máx E x h Ch
n 1 !+ ++
∈≤ ≤ =
+, para
( )+ =
+n 1M
Cn 1 !
.
Assim ( ) ( ) ( )[ ]
( )1 1 '' '' 0.51 1
x I x I x 0,0.5M máx y x máx y x máx y x e 1.6487+
+ ∈ ∈ ∈= = = = = , de modo que
( )''2y M 1.6487ξ ≤ = . Então para [ ]x 0,0.5∀ ∈ ( ) ( )
( )n 1 2n 1
loc kx I
M 1.6487E x máx E x h h
n 1 ! 2++
∈≤ ≤ =
+. E
requerendo que 55x10−ε < faz-se:
5 42 5 21.6487 2x5x10 10
h 5x10 h h 0.000164872 1.6487 1.6487
− −−≤ ∴ ≤ = ∴ ≤ .
• Observe que solução analítica do PVI é como:
'
x c 0 c xc
y y dy dy dyy dx dx ln(y) x c
dx y yy(0) 1
e e y e e y(0) 1 y1 e 1e .
=∴ = ∴ = ∴ = ∴ = +
=
∴ = ∴ = = ∴ = ∴ =
∫ ∫ .
Exemplo 10.12: Utilizar o método de Taylor de segunda ordem para aproximar y(0.5)
usando =h 0.1 , para o PVI especificado por ( )
'y x 2y
y 0 1
= −
=.
Solução: Neste caso se tem que = −f(x,y) x 2y . E da EDO, = −'y x 2y segue-se que:
( ) ( ) x y' '' '
x y
df dff f
dx dy
f f (x 2y)
ddx
dx
(x 2y). 1
y
dxf x,y y x y
d df (x 2y) 2(x 2y
dx d)
y
= + = +
= + − + = −−− −
=
=
Substituindo em (6) com somente os termos de segunda ordem para = kx x , então
= − = −'k k k k ky (x ) x 2y x 2y(x ) , obtém-se:
( ) ( ) ( ) ( ) ( ) ( )( ) ( )( )' ''
2k kk
2
k 1 k k k k k
y x y xy x h h
1! 2
hy x y x h x 2y x 1 2x
!4y x
2+ = = + − + − ++ +
Assim, o método é dado por ( ) ( )+ = + − + − +2k 1 k k k k ky y h x 2y 0.5h 1 2x 4y , para ( )+ +=k 1 k 1y yx e
( )= kky y x . A tabela 10.4 apresenta os resultados ao aproximar y(0.5) usando =h 0.1 .
Tabela 10.4: Operações realizadas e valores obtidos na solução do PVI do exemplo 10.12.
+ = +i 1 ix x h , ( ) ( )2k 1 k k k k ky y h x 2y 0.5h 1 2x 4y+ = + − + − +
=0x 0.0 ==0y y(0.0) 1.0
= +
=
1x 0.0 0.1
0.1
( ) ( )= + − + − +
+ +
=
= − − +21 0 0 0 0 0
21 0.1(0 2.1) 0.5(o.1) (1 2.
y y h x 2y 0.5h
0 4.1
1 2
)
0
x 4y
.825
= +
=
2x 0.1 0.1
0.2
( ) ( )= + −
=
+ − +
=
+ − + − +22 1 1 1 1 1
20.825 0.1(0.1 2(0.825)) 0.5(o.1) (1 2(0.1) 4.(0
y y h x 2
.825)
y 0.5h
)
0.
1 2x 4y
6905
= +
=
3x 0.2 0.1
0.3 ( ) ( )
= + − + − +
+ − + − +
=
= 23 2 2 2 2 2
20.6905 0.1(0.2 2(0.6905)) 0.5(o.1) (1
y y h
2(0.2) 4.(0.6905
x 2y 0.5h 1
))
0.5
2x 4y
8921
= +
=
4x 0.3 0.1
0.4 ( ) ( )
= + −
= + − + −
+ − +
=
+24 3 3 3 3 3
20.58921 0.1(0.3 2(0.
y y h x
58921)) 0.5(o.1) (1 2(0.3) 4.(0.58921))
2y 0
0
.5h 1 2x 4y
.515152
= +
=
4x 0.4 0.1
0.5 ( ) ( )= + − + −
= + − + − +
=
+2
25 4 4 4 4 4
0.515152 0.1(0.4 2(0.5
y y h x
15152)) 0.5(o.1) (1 2(0.4) 4.(0.515152))
2y 0
0
.5h 1 2x 4y
.463425
As figuras 10.12 e 10.13 mostram um algoritmo rudimentar em Scilab do método da série
de Taylor com segunda ordem e um gráfico dos resultados apresentados na tabela 10.4.
Figura 10.12: Uma implementação rudimentar para o método da série de Taylor com
segunda ordem para resolver o exemplo 10.12.
Figura 10.13: Gráfico dos resultados obtidos e apresentados na tabela 10.4.
Exemplo 10.13: Faça um estudo comparativo (fixe alguma condições se necessário)
entre o método de Euler, o método de Euler modificado e o método da série de Taylor
de segunda ordem, aplicando-os aos exemplos 10.9, 10.10 e 10.12.
10.7 – MÉTODOS DE RUNGE-KUTTA
A estratégia dos métodos de Runge-Kutta é aproveitar as qualidades dos métodos da
Série de Taylor, que é poder escolher a precisão, sem ter que calcular as derivadas
totais de ( ) ( )= 'f x,y y x . O método de Runge-Kutta de primeira ordem é equivalente ao
método de Euler, que coincide com o método da série de Taylor de primeira ordem. Já
o método de Runge-Kutta de segunda ordem é análogo ao método de Euler
aperfeiçoado ou método de Heun.
É possível mostrar que a forma geral o método de Runge-Kutta de segunda ordem é
( ) ( )+ = + + + 'k 1 1 k k 2 k 1 k 2 ky a hf x ,y a hf x b h,y b hy . Assim, para o método de Euler modificado tem-
se + = = =1 2 2 1 2 2a a 1, a b 1/2, a b 1/2 , que resolvido fornece = = =1 1 2a 1/2,b 1,a 1/2 e =2b 1
Métodos de Runge-Kutta de ordem superior são obtidos pelo mesmo procedimento.
Abaixo são apresentados sem dedução os métodos de Runge-Kutta de terceira e de
quarta ordem. Veja os detalhes em (CAMPOS FILHO, 2007), (CHAPRA, CANALE, 2008),
(RUGGIERO, LOPES, 2009) e (YOUNG, GREGORY, 1988).
A fórmula de Runge-kutta de terceira ordem para solução de PVI tipo (3) é como:
+ = + + +k 1 k 1 2 3
2 1 4y y k k k
9 3 9 com:
( )( )( )
=
= + +
= + +
1 k k
2 k k 1
3 k k 2
k hf x ,y
k hf x h/2,y k /2
k hf x 3h/ 4,y 3k /4
(7)
E a fórmula de Runge-kutta de quarta ordem para solução de PVI tipo (3) é como:
( )+ = + + + +k 1 k 1 2 3 4
1y y k 2k 2k k
6 com:
( )( )( )
( )
=
= + +
= + +
= + +
1 k k
2 k k 1
3 k k 2
4 k k 3
k hf x ,y
k hf x h/2,y k /2
k hf x h/2,y k /2
k hf x h,y k
(8)
Exemplo 10.14: Dado o PVI estimar ( )y 1 pelos métodos de Euler, Euler modificado e o
Runge-Kutta terceira ordem. Tome diferentes tamanhos para h .
( ) =
=
'y 0.04y
y 0 1000
Solução: Observe que ( ) =f x,y 0.04y e que a solução exata do PVI é, por separação de
variáveis, ( ) 0.04xy x 1000e= , donde, da condição inicial, se tem ( ) 0.04y 1 1000e 1040.8108= = .
• Observe que solução analítica do PVI é como:
( )
'
0.04x c 0 c
c c 0.04 0x 0. 4x
y 0.04y dy dy dy0.04y 0.04dx 0.04 dx
dx y yy 0 1000
ln(y) 0.04x c e e y e e y(0)
1.e y 1000e 1040.81000 e 1000 e 80 00 110 y
= ∴ = ∴ = ∴ =
=
∴ = + ∴ = ∴ =
∴ = ∴ = ∴ = ≈= ∴
∫ ∫
1. Método de Euler: ( ) ( ) ( )k 1 k k k k 1 k k k 1 ky y hf x ,y y y h 0.04y y 1 0.04h y+ + += + ∴ = + ∴ = + , e as
iterações tornam-se como:
( ) ( )
( ) ( )( ) ( )
( ) ( )( ) ( )k
k k
1
k 1
0 1
2
2 2
k
1
1
y 1 0.04h y y 1 0.04h 1000
y 1 0.04h y y 1 0.04h 1 0.04h 1000 1 0
y 1y 1 0.04h y 1 0.04h 100.04h 1 0.04h 100
.04h 1
0
000
00−
− ∴ = +
= + ∴ = +
= + ∴ = + + =
= =
+
++ +
⋱ ⋱
Tomando alguns valores para + − =k 1 kx x h e considerando ( )+ = +k 1 ky 1 0.04h y tem-se:
• Para h=1: ( ) ( )1 0 1y 1 0.04h y y 1 0.04.1 1000 1040= + ∴ = + = .
• Para h=0.5: ( ) ( )= + ∴ = + =2 2
2 2y 1 0.04h 1000 y 1 0.04x0.5 1000 1040.4 .
• Para h=0.25: ( ) ( )= + ∴ = + =4 4
4 4y 1 0.04h 1000 y 1 0.04x0.25 1000 1040.604 .
• Para h=0.1: ( ) ( )= + ∴ = + =10 10
10 10y 1 0.04h 1000 y 1 0.04x0.1 1000 1040.7277 .
2. Método de Euler modificado (Runge-Kutta de segunda ordem): Considerando
( ) =f x,y 0.04y e que o método é ( ) ( )( )k 1 k k k k k k ky y 0.5 hf x ,y hf x h,y hf x ,y+ = + + + + tem-se:
( ) ( )( )( )
( )
+ = + + + +
= + + +
= + +
= + +
k 1 k k k k k k k
k k k k
2k k k
2 2k
y y 0.5 hf x ,y hf x h,y hf x ,y
y 0.5h 0.04y 0.04 y hx0.04y
y 0.5h 0.08y 0.04 hy
1 0.04h 0.5h 0.04 y
E de modo análogo ao Método de Euler, as iterações tornam-se como:
( )= + +k2 2
ky 1 0.04h 0.5h 0.04 1000
• Para h=1: = + + = + + =
12 22 2
1
h 1y 1 0.04h 0.04 1 0.04x1 0.04 1000 1040.8
2 2.
• Para h=0.5: = + + = + + =
2 22 22 2
2
h 0.5y 1 0.04h 0.04 1000 1 0.04x0.5 0.04 1000 1040.808
2 2.
• Para h=0.25: = + + = + + =
4 42 22 2
4
h 0.25y 1 0.04h 0.04 1000 1 0.04x0.25 0.04 1000 1040.8101
2 2.
• Para h=0.1: = + + = + + =
10 102 22 2
10
h 0.1y 1 0.04h 0.04 1 0.04x0.1 0.04 1000 1040.8107
2 2.
Na medida em que o passo diminui, cada método obtém uma melhor aproximação da
solução exata. Como era de se esperar o método de Euler modificado fornece melhores
resultados em relação ao método de Euler.
3. Método de Runge-Kutta de terceira ordem: Considerando ( ) =f x,y 0.04y e que o
método é como k 1 k 1 2 3
2 1 4y y k k k
9 3 9+ = + + + onde:
( )( ) ( )( ) ( )
1 k k
2 k k 1
3 k
1 k
2 k 1
3 k 2k 2
k 0.04y h
k 0.04
k hf x ,y
k hf x h/2,y k /2
k hf x 3h/4,
y k /2 h
k 0.04 y 3y 3k /4 k /4 h
∴ =
∴ =
=
= + +
= ++ ∴+
+
=
• Para h=1: Tem-se: ( ) ≈ = + + +1 0 1 2 3
2 1 4y 1 y y k k k
9 3 9 com = =1k 0.04x1000 40 ,
( )= + =2k 0.04 1000 20/2 40.8 e = + =
3
3k 0.04 1000 40.8 41.224
4. Então se obtém:
( ) 2 1 4y 1 1000 40 40.8 41.224 1040.8107
9 3 9≈ + + + =
Uma implementação em Scilab para o método de Runge-Kutta de quarta ordem é como
apresentado na figura 10.14.
Figura 10.14: Uma implementação do método Runge-Kutta de quarta ordem.
Exemplo 10.15: Utilize o método de Runge-Kutta de quarta ordem para resolver o PVI
com passo =h 0.5 em [ ]∈x 0,3 .
( ) = −
=
'y x y
y 0 2
Solução: Como ( ) = −f x,y x y , usando (8) obtém-se as operações e resultados
apresentados na tabela 10.5.
Tabela 10.5: Operações realizadas e valores obtidos usando o método de Runge-Kutta de
quarta ordem.
+ = +k 1 kx x h , ( )=1 k kk hf x ,y , ( )= + +2 k k 1k hf x h/2,y k /2 , ( )= + +3 k k 2k hf x h/2,y k /2 ,
( )= + +4 k k 3k hf x h,y k , ( )k 1 k 1 2 3 4y y 1 6 k 2k 2k k+ = + + + +
+k 1x 1k 2k 3k 4k +k 1y
0x 0.0= 2.000
1x 0.5= -1.0000 -0.6250 -0.7188 -0.3906 1.3203
=2x 1.0 -0.4102 -0.1826 -0.2395 -0.0404 1.1054
=3x 1.5 -0.0523 0.0858 0.0513 0.1721 1.1702
=4x 2.0 0.1649 0.2487 0.2277 0.3010 1.4067
=5x 2.5 0.2967 0.3475 0.3348 0.3793 1.7467
=6x 3.0 0.3766 0.4075 0.3998 0.4267 2.1497
Exemplo 10.16: Faça um estudo comparativo (fixe as condições) entre os métodos de
Runge-Kutta de terceira e quarta ordens, aplicando-os a um exemplo apropriado.
Observação 10.7: Os métodos de Runge-Kutta são auto-iniciáveis, pois são de passo
simples e não usas derivadas de ( )f x,y . Porém, apresentam a desvantagem de não
terem uma estimativa simples para o erro, que pode ajudar na escolha do passo h .
10.10 – MÉTODOS DE NUMÉRICOS DE PASSO MÚLTIPLO
Métodos de passo simples precisam de informação sobre a solução apenas em kx x=
para achar uma aproximação para ( )ky x h+ . Eles requerem, porém, cálculos de ( )f x,y
ou de suas derivadas em outros pontos. Métodos de passo múltiplo usam informações
sobre a solução em mais de um ponto (no tempo ou no espaço).
Métodos de passo múltiplos são, entre outros, os de Adams-Bashforth e métodos de
Adams-Moulton, que são baseados em integração numérica. A estratégia é integrar a
equação diferencial o intervalo [ ]+k k 1x ,x , isto é, como:
( ) ( )( ) ( ) ( ) ( )( )++ +
+= ∴ = + ∫∫ ∫�������
k 1 k 1
k k
k 1
k
x x'k
x
x1 kx x
Por Integração Numérica
f x,y x dx f x,y x dx xy x y x y x d
A integral sobre a função ( )( )f x,y x é aproximada pela integral de um polinômio
interpolador, que pode utilizar pontos que não pertencem ao intervalo de integração.
Dependendo da escolha dos pontos onde se aproxima a função ( )( )f x,y x os esquemas
de passo múltiplo podem ser classificados como:
•••• Explícito: Quando obtido utilizando os pontos − −⋯k k 1 k px ,x , ,x para interpolar a
função ( )( )f x,y x .
•••• Implícito: Quando obtido considerando no conjunto de pontos, sobre os quais se
interpola a função ( )( )f x,y x , o ponto +k 1x .
Métodos Explícitos Adams-Bashforth:
Considera-se o caso em que a função ( )( )f x,y x é interpolada sobre os pontos ( )k kx ,f e
( )− −k 1 k 1x ,f , onde ( )≡k k kf f x ,y . Usando um polinômio interpolador ( )1p x na forma de
Newton obtém-se que ( ) ( ) [ ]( )− − −≈ = + −1 k 1 k 1 k k 1f x,y p x f f x ,x x x , que integrado sobre o
intervalo [ ]+k k 1x ,x fornece:
( ) [ ]( )
( ) [ ]
( ) ( )( )
( )( )
+ +
− − −
+− + − − + −
−− + +
−− + + +
−− +
= + −
= − + − − +
−
= + − − − + −
−= + − + + −
−= +
∫ ∫k 1 k 1
k k
x x
k 1 k 1 k k 1x x
2 2k 1 k
k 1 k 1 k k 1 k k 1 k 1 k 1 k
n 2k k 1k 1 k 1 k k 1 k k k
n 2k k 1k 1 k 1 k k 1 k k 1 k
k k 1k 1 k
p x f f x ,x x x dx
x xf x x f x ,x x x x x
2 2
f f 1hf x 2 x h x x 2 x h x
h 2f f 1
hf x 2x x x 2h x xh 2
f f 1hf x
h 2( )( )
( )−
− +
= +
2 21 k
k 1 k
x 2h
h2f 3f
2
Substituindo a aproximação da integral em ( ) ( ) ( )( )+
+ = + ∫k 1
kk 1 k
x
xf x,y x dxy x y x obtém-se:
( )+ −= + +k 1 k k 1 k
hy y 2f 3f
2 ou seja ( ) ( )+ − −= + + k 1 k k 1 k 1 k k
hy y 2f x ,y 3f x ,y
2
Que é designada de fórmula de Adams-Bashforth explícita de dois passos para solução
de PVI tipo (3).
Com efeito, pois a solução no passo +k 1 depende do conhecimento nos passos k e
−k 1 . Então se necessita de dois valores para inicial o método. A condição inicial 0y que
provem do PVI e 1y que pode ser obtido por um método de passo simples.
Como é empregado um polinômio interpolador ( )1p x , de grau um, para aproximar a
função, o erro local, cometido por esta aproximação, pode ser avaliado como:
( ) ( )( )( )( )
( )
+ +
−
ξ ξ= − −
= − ξ
∫ ∫k 1 k 1
k k
''x x
1 k 1 kx x
3 '''
f ,yE x dx x x x x dx
2!5
h y12
; [ ]+ξ∈ k k 1x ,x
E com isto se tem a seguinte estimativa para o erro local:
( )[ ]
( )+
+ξ∈
≤ ξk k 1
3 '''loc n 1
x ,x
5E x h máx y
12
Mostrando que o método de Adams-Bashforth explícita de dois passos é de segunda
ordem.
Exemplo 10.17: Obter uma aproximação para y(1.1) pelo método de Adams-Bashforth
explícito de dois passos, usando =h 0.2 , para o PVI:
( ) = −
=
'y 2xy
y 0.5 1
Solução: Do PVI segue que =0x 0.5 e =0y 1.0 e = −k k k kf(x ,y ) 2x y . Como o método é de
dois passos deve-se calcular 1y para iniciar a interação, o que pode ser realizado por um
método de passo simples que tenha ordem igual ou superior ao do Adams-Bashforth.
Nesse caso pode-se usar o método de Euler modificado, que é um método de segunda
ordem. A tabela 10.6 sintetiza as operações e resultados obtidos.
Tabela 10.6 Resultados obtidos usando o método de Adams-Bashforth explícito de
dois passos com condição inicial calculada usando o método de Euler modificado.
+ = +k 1 kx x h , sendo ( ) ( )+ += + + + k 1 k k k k 1 k 1y y 0.5h hf x ,y f x ,y k Euler modificado e
( ) ( )+ − −= + + k 1 k k 1 k 1 k ky y 0.5h 2f x ,y 3f x ,y para Adams-Bashforth
+k 1x +k 1y
=0x 0.5 ==0y y(0.5) 1.0
=1x 0.7 ( ) ( )( )[ ]
[ ]( )
( )
= +
= + − − + −
= + − − − = + − −
=
= + + + + − − + +
≈
1 0 0 0 0 0 0 0
0 0 0 0 0 01 0.5(0.2)
1 0.1 2(0.5)(1) 2(0.7)(1 0.5( 2(0.
y y 0.5h f x ,y
5)(1))
1 0.1 1 (1.4(1 0.5
f x h,y hf x ,y
2x y 2(x h)(y hf(x ,y ))
)) 1 0.1( 1 0.7)
0.83 y 0.7
=2x 0.9 ( ) ( )( )
( )
= + − + −
= ≈
2
0.20.82 2 2 0.51 3 2 0.70.82
20.2756
y
y 0.9
=3x 1.1 ( ) ( )( )
( )
= + − + −
= − ≈
3
0.20.2756 2 2 0.70.82 3 2 0.90.2756
20.1
y
02824 y 1.1
Observação 10.8: Se aproximada a função ( )( )f x,y x por um polinômio de grau três,
sobre os pontos ( )k kx ,y , ( )− −k 1 k 1x ,y , ( )− −k 2 k 2x ,y e ( )− −k 3 k 3x ,y obter-se-ia um método de
quatro passos como k 1 k k k 1 k 2 k 3
hy y 55f 59f 37f 9f
24+ − − − = + − + − , com erro local estimado por
( ) ( ) ( )+ = ξ55loc k 1
251E x h y
720, com [ ]+ξ∈ n n 1x ,x . Nesse caso são necessários quatro valores
iniciais, que podem ser calculados por um método de passo simples de ordem maior ou
igual a quatro como o método de Runge-Kutta de quarta ordem.
( )k kx ,f e ( )− −k 1 k 1x ,f , onde ( )≡k k kf f x ,y .
Métodos Explícitos Adams-Moulton:
Nessa abordagem o ponto ( )+ +k 1 k 1x , f , onde ( )+ + +≡k 1 k 1 k 1f f x ,y , é um dos pontos onde a
função ( )f x,y é interpolada. Considera-se apenas o caso em que a função ( )f x,y é
interpolada sobre os pontos ( )k kx , f e ( )+ +k 1 k 1x , f . Nessa situação o polinômio interpolador
na forma de Newton é como ( ) ( ) [ ]( )+≈ = + −1 k k k 1 kf x,y p x f f x ,x x x , que integrado sobre o
intervalo [ ]+k k 1x ,x fornece a expressão:
( ) [ ]( )
( ) [ ]
( )
( )
( )
+ +
+
++ + +
++ +
++
+
= + −
= − + − − +
−
= + − +
−= + −
= +
∫ ∫k 1 k 1
k k
x x
k k k 1 kx x
2 2k 1 k
k k 1 k k k 1 k k 1 k k
2 2k 1 kk k 1 k k 1 k
2k 1 kk k 1 k
k k 1
p x f f x ,x x x dx
x xf x x f x ,x x x x x
2 2
f f 1hf x 2x x x
h 2f f 1
hf x xh 2
hf f
2
Substituindo a aproximação da integral em ( ) ( ) ( )( )+
+ = + ∫k 1
kk 1 k
x
xf x,y x dxy x y x obtém-se:
( )+ += + +k 1 k k k 1
hy y f f
2 ou seja ( ) ( )+ + += + + k 1 k k k k 1 k 1
hy y f x ,y f x ,y
2
Que é designada de fórmula de Adams-Moulton implícita para solução de PVI tipo (3).
Com efeito, note que o cálculo da solução no passo +k 1 depende do conhecimento de
( )n 1 n n 1f f x ,y+ += nos passos k e +k 1 . E isso significa que a função ( )f x,y não pode ser
resolvida explicitamente isolando +k 1y , requerendo um esquema tipo preditor-corretor.
Com o método explícito encontra-se uma primeira aproximação para +k 1y (passo
preditor) e esse valor será corrigido através do método implícito (passo corretor).
Como é empregado um polinômio interpolador ( )1p x , de grau um, para aproximar a
função, o erro local, cometido por esta aproximação, pode ser avaliado como:
( ) ( )( )( )( )
( )
+ +
+
ξ ξ= − −
= − ξ
∫ ∫k 1 k 1
k k
''x x
1 k 1 kx x
3 '''
f ,yE x dx x x x x dx
2!5
h y12
; [ ]+ξ∈ k k 1x ,x
E com isto se tem a seguinte estimativa para o erro local:
( )[ ]
( )+
+ξ∈
≤ ξk k 1
3 '''loc n 1
x ,x
5E x h máx y
12
Mostrando que o método de Adams-Moulton implícito é de segunda ordem.
Exemplo 10.18: Considerando o PVI dado e usando =h 0.1 encontre uma aproximação
para y(0.2) , usando o método Adams-Moulton com um esquema previsão-correção.
( ) = − −
=
' 2y 2xy y
y 0 1
Solução: Considere que =0x 0 e =0y 1 e o esquema de previsão ( )+ = +k 1 k k ky y hf x ,y , o
método de Euler, e o esquema de correção pelo método de Adams-Moulton
( )+ += + +k 1 k k k 1y y 0.5h f f . Os resultados obtidos são apresentados na tabela 10.7.
Tabela 10.7 Resultados obtidos usando o método de Adams-Moulton implícito e o
método de Euler como etapa preditora.
+ = +k 1 kx x h, sendo ( )+ = +k 1 k k ky y hf x ,y o método de Euler
e ( )+ += + +k 1 k k k 1
hy y f f
2 o método de para Adams-Moulton.
+k 1x +k 1y
=0x 0.0 ==0y y(0.0) 1.0
=0x 0.1 ( ) ( )
( ) ( )( )
= + = + − −
=
= + + = + − − − −
= ≈
20 0 0
2 20 0 1
1
1
y hf x ,y 1 0.1 2.0.1 1
0.9
h 0.1y f f 1 2.0.1 1 2.(0.1)0.9 0.9
2 20.9005
y
y
y 0.1
=0x 0.2 ( ) ( )
( )
( )
= + = + − −
=
= + + = + − −
− −
= ≈
21 1 1
1
2
2
22 1 2
y hf x ,y 0.9005 0.1 2.(0)(0.9005) 0.9005
0.8013
h 0.1y f f 0.9005 ( 2.(0)(0.9005) 0.9005
2 22(0.2)0.8013 0.8013 )
0.8010
y
y
y 0.2
Observação 10.9: Se aproximada a função ( )( )f x,y x por um polinômio sobre os pontos
( )+ +k 1 k 1x ,f , ( )k kx ,f e ( )− −k 1 k 1x ,f obter-se-ia um método como [ ]+ + −= + + −k 1 k k 1 k k 1
hy y 5f 8f f
12, com
erro local ( ) ( ) ( )+ = ξ34loc k 1
1E x h y
24, sendo [ ]+ξ∈ k k 1x ,x . E no caso em que a função é
interpolada sobre os pontos ( )+ +k 1 k 1x ,f , ( )k kx ,f , ( )− −k 1 k 1x ,f e ( )− −k 2 k 2x ,f , tem-se um método
como [ ]+ + − −= + + − +k 1 k k 1 k k 1 k 2
hy y 9f 19f 5f f
24, sendo o erro local ( ) ( ) ( )+ = − ξ55
loc k 1
19E x h y
720.
10.9 – REFERÊNCIAS PARA O ITEM
BARROSO, L. C., BARROSO, M. M. A., CAMPOS FILHO, F. F., MAIA, M. L. Cálculo
Numérico com aplicações. Editora Harbra. São Paulo. 1987. 367 p.
BASSANEZI, R. C., FERREIRA, W. C. Equações Diferenciais com Aplicações. Editora
Harbra. 1988. 572 p.
BORCHE, A. Métodos Numéricos. Editora da UFRG. Série Graduação. 2008. 206 p.
BURDEN, R. L., FAIRES, J. D. Análise Numérica. Editora Cengage Learning. São Paulo.
2008. 736 p.
CAMPOS FILHO, F. F. Algoritmos Numéricos. Editora LTC. São Paulo. 2007. 444 p.
CANTÃO, L. A. P. Cálculo Numérico e computacional. Notas de Aulas. 2012. 88 p.
CHAPRA, S. C., CANALE, R. P. Métodos Numéricos para Engenharia. Editora McGrawHill.
São Paulo. 2008. 809 p.
EDWARDS, C. H. e PENNEY, D. E. Equações Diferenciais Elementares com problemas de
Contorno. Editora PHB. 641 p.
GALVÃO, L. C., NUNES, L. F. Cálculo Numérico – Apostila. Universidade Tecnológica
Federal do Paraná. 94 p. 2009
GILAT, A., SUBRAMANIAM, V. Métodos Numéricos para Engenheiros e Cientistas: Uma
Introdução com Aplicações Usando o MATLAB. Editora Bookman. Porto Alegre.
2008. 480 p.
PORTES, M. F. Cálculo Numérico. Notas de Aulas. Unidade IV. Departamento de
Informática e Ciência da Computação.. IME. UERJ. 2004.
RUGGIERO, M. A. G., LOPES, V. L. R. Cálculo Numérico: Aspectos Teóricos e
Computacionais. Editora Pearson – Makron Books. São Paulo. 2009. 406 p.
SANCHES, I. J., FURLAN, D. C. Métodos Numéricos. Universidade Federal do Paraná.
Departamento de Informática. 46 p. 2007.
SPERANDIO, D., MENDES, J. T., SILVA, L. H. Cálculo Numérico: Características
Matemáticas e Computacionais dos Métodos Numéricos. Ed. Pearson – Makron
Books. São Paulo. 2006.
YOUNG, D. M., GREGORY, R. T. A Survey of Numerical Mathematics. Volume I. Dover
Books on Mathematics. 492 p. 1988.