Logo Passei Direto
Buscar

Métodos de Runge-Kutta

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Resolução Numérica de Equações Diferenciais
Ordinárias
Josuel Kruppa Rogenski
jkrogenski@ufu.br
Faculdade de Matemática
Universidade Federal de Uberlândia
Material de apoio baseado nas notas de aula dos Professores Alessandro Alves Santana e
Rafael Alves Figueiredo
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 2 Estágios
Considere uma aproximação para a solução da equação diferencial como
yn+1 = yn + hc1f (tn, yn) + hc2f (tn + a2h, yn + h a2κ1) (1)
A expansão em Série de Taylor de uma função f (t, y) de duas variáveis
em torno de (tn, yn) é dada por
f (t, y) = f (tn, yn) + ft(tn, yn)(t − tn) + fy (tn, yn)(y − yn) + . . .
Se substituirmos t = tn + α e y = yn + β nessa última equação, teremos
que
f (tn + α, yn + β) = f (tn, yn) + α ft(tn, yn) + β fy (tn, yn) + . . .
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 2 Estágios
Se fizermos α = a2h e β = ha2κ1, a série de Taylor passa a ter a apre-
sentação a seguir.
f (tn + a2h, yn + ha2κ1) = f (tn, yn) + a2h ft(tn, yn) + ha2κ1 fy (tn, yn) + . . . (2)
Substituindo (2) em (1), surge a expressão matemática a seguir:
yn+1 = yn+hc1f (tn, yn)+hc2 [f (tn, yn) + a2h ft(tn, yn) + ha2κ1 fy (tn, yn) + . . . ]
Após algumas manipulações segue que .
yn+1 = yn + (c1 + c2)hf (tn, yn) + h2a2c2 [ft(tn, yn) + κ1fy (tn, yn)] + . . .
Desconsiderando o que vem após o termo que envolve h2 temos a seguinte
expressão
yn+1 = yn + (c1 + c2)hf (tn, yn) + h2a2c2 [ft(tn, yn) + κ1fy (tn, yn)]
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 2 Estágios
Agora vem a parte que permite definir os parâmetros. Isso é feito com-
parando a equação
yn+1 = yn + (c1 + c2)hf (tn, yn) + h2a2c2 [ft(tn, yn) + κ1fy (tn, yn)]
com o MST de segunda ordem
yn+1 = yn + hf (tn, yn) +
h2
2
[ft(tn, yn) + fy (tn, yn)f (tn, yn)] .
Para que haja equivalência entre os termos das duas expressões, devemos
impor
c1 + c2 = 1, a2c2 =
1
2
, e κ1 = f (xn, yn)
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 2 Estágios
Disso, resulta que existem infinitos MRK de segunda ordem. Os mais
conhecidos são:
Método de Euler Modificado (c1 = 0)
Para c1 = 0, temos c2 = 1 e a2 =
1
2 . Logo,
yn+1 = yn + hf (tn +
h
2
, yn +
h
2
f (tn, yn))
Método de Euler Melhorado (c1 = 1/2)
Para c1 = 1/2, c2 = 1/2 e a2 = 1. Logo,
yn+1 = yn +
h
2
f (tn, yn) +
h
2
f (tn + h, yn + hf (xn, yn))
Métodos de Runge-Kutta (MRK)
Definição da Forma Geral dos Métodos de Runge-Kutta
O método geral de Runge-Kutta de R estágios é definido por
yn+1 = yn + h
R∑
r=1
crκr
κ1 = f (tn, yn)
κr = f
(
tn + arh, yn + h
r−1∑
s=1
brsκs
)
r = 2, 3, 4, . . . ,R
ar =
r−1∑
s=1
brs r = 2, 3, 4, . . . ,R
(3)
O que define um Método de Runge-Kutta são os parâmetros ar , brs e cr .
Tais parâmetros são obtidos por comparação com os Métodos da Série de
Taylor (MST).
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 2 Estágios
O MRK de 2 estágios (R=2) é definido como
yn+1 = yn + hc1κ1 + hc2κ2
κ1 = f (tn, yn)
κ2 = f (tn + a2h, yn + h b21κ1)
a2 = b21
(4)
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 2 Estágios
Disso, resulta que existem infinitos MRK de segunda ordem. Os mais
conhecidos são:
Método de Euler Modificado (c1 = 0)
yn+1 = yn + hκ2
κ1 = f (tn, yn)
κ2 = f (tn +
h
2 , yn +
h
2κ1)
Método de Euler Melhorado (c1 = 1/2)
yn+1 = yn +
h
2 (κ1 + κ2)
κ1 = f (tn, yn)
κ2 = f (tn + h, yn + hκ1)
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 3 Estágios
Os dois MRK abaixo são métodos de 3 estágios e de terceira ordem.
Método de Heun
yn+1 = yn +
h
4
[κ1 + 3κ3]
κ1 = f (tn, yn)
κ2 = f (tn +
1
3h, yn +
1
3hκ1)
κ3 = f (tn +
2
3h, yn +
2
3hκ2)
Método de Nystrom
yn+1 = yn +
h
4
[
κ1 +
3
2κ2 +
3
2κ3
]
κ1 = f (tn, yn)
κ2 = f (tn +
2
3h, yn +
2
3hκ1)
κ3 = f (tn +
2
3h, yn +
2
3hκ2)
Métodos de Runge-Kutta (MRK)
Métodos de Runge-Kutta de 4 Estágios
O MRK abaixo é o chamado Método de Runge-Kutta de Quarta Ordem
Clássico. 
yn+1 = yn +
h
6
[κ1 + 2κ2 + 2κ3 + κ4]
κ1 = f (tn, yn)
κ2 = f (tn +
h
2 , yn +
h
2κ1)
κ3 = f (tn +
h
2 , yn +
h
2κ2)
κ4 = f (tn + h, yn + hκ3)
(5)
Resolução Numérica de Equações Diferenciais Ordinárias
Métodos de Runge-Kutta - Exerćıcio
Obtenha uma aproximação para a solução do PVI
y ′ = e−t cos(y2) y(1) = 1
em t = 1.3 utilizando o MRK de Euler Modificado, considerando 3
passos. Trabalhe com 4 casas decimais.
Resolução
Dos dados do problema, temos que
Intervalo:
[tinicial, tfinal] = [1, 1.3]
Função f (t, y) = e−t cos(y2)
Método: Euler Modificado
Número de passos: 3
Condição inicial: y(1)=1
Instante final: tfinal = 1.3
Resolução Numérica de Equações Diferenciais Ordinárias
Métodos de Runge-Kutta - Exerćıcio
Obtenha uma aproximação para a solução do PVI
y ′ = e−t cos(y2) y(1) = 1
em t = 1.3 utilizando o MRK de 4ª Ordem Clássico considerando 3
passos. Trabalhe com 4 casas decimais.
Resolução
Dos dados do problema, temos que
Intervalo:
[tinicial, tfinal] = [1, 1.3]
Função f (t, y) = e−t cos(y2)
Método: MRK de 4ªOrdem
Número de passos: 3
Condição inicial: y(1)=1
Instante final: tfinal = 1.3
Resolução Numérica de Equações Diferenciais Ordinárias
Métodos de Runge-Kutta - Exerćıcio
1Passo : (t0, y0) = (1.0000, 1.0000)

κ1 = f (1.0000, 1.0000) = 0.1988
κ2 = f (1.0500, 1.0099) = 0.1832
κ3 = f (1.0500, 1.0092) = 0.1836
κ4 = f (1.1000, 1.0184) = 0.1693
y1 = 1.0000 +
0.1
6
[(0.1988) + 2(0.1832) + 2(0.1836) + (0.1693)] =
1.0184
2Passo : (t1, y1) = (1.1000, 1.0184)

κ1 = f (1.1000, 1.0184) = 0.1693
κ2 = f (1.1500, 1.0268) = 0.1563
κ3 = f (1.1500, 1.0262) = 0.1567
κ4 = f (1.2000, 1.0340) = 0.1448
y2 = 1.0184 +
0.1
6
[(0.1693) + 2(0.1563) + 2(0.1567) + (0.1448)] =
1.0340
Resolução Numérica de Equações Diferenciais Ordinárias
Métodos de Runge-Kutta - Exerćıcio
3Passo : (t2, y2) = (1.2000, 1.0340)

κ1 = f (1.2000, 1.0340) = 0.1448
κ2 = f (1.2500, 1.0413) = 0.1340
κ3 = f (1.2500, 1.0407) = 0.1342
κ4 = f (1.3000, 1.0475) = 0.1243
y3 = 1.0340 +
0.1
6
[(0.1448) + 2(0.1340) + 2(0.1342) + (0.1243)] =
1.0475
Portanto, a aproximação para a EDO em questão via Método de Runge-
Kutta de Quarta Ordem Clássico em t = 1.3 é aproximadamente 1.0475.
Resolução Numérica de Equações Diferenciais Ordinárias
Métodos de Runge-Kutta - Exerćıcio
Obtenha uma aproximação para a solução do PVI
y ′ = −y + x + 2 y(0) = 2
em x = 0.3 utilizando o método de Euler modificado e considerando 3
passos. Trabalhe com 4 casas decimais. Aplique o método de RK4 de
quarta ordem para resolver também o PVI.

Mais conteúdos dessa disciplina