Sunteți pe pagina 1din 21

03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

Página 1

✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 113

Capítulo 5

O problema do valor inicial

para o diferencial ordinário

Equações

Neste capítulo, começamos um estudo de equações diferenciais dependentes do tempo, começando com
o problema do valor inicial (IVP) para uma equação diferencial ordinária (ODE) dependente do tempo.
Os textos introdutórios padrão são Ascher e Petzold [5], Lambert [59], [60] e Gear [33].
Henrici [45] dá os detalhes sobre algumas questões teóricas, embora equações rígidas não sejam
discutido. Butcher [12] e Hairer, Nørsett e Wanner [43, 44] fornecem informações mais recentes.
levantamentos do campo.
O IVP assume a forma

você
.t / D
0 fut /; t / for t> t 0 (5.1)

com alguns dados iniciais


ut 0 / D : (5.2)
Frequentemente, assumimos t 0 D 0 pela simplicidade.
Em geral, (5.1) pode representar um sistema de ODEs, ie, u pode ser um vetor com
s componentes u 1 ; :::; u s e depois fu; t / também representa um vetor com componentes
f 1 .u; t /; ;:::; f s .u; t /, cada um dos quais pode ser uma função não linear de todos os componentes
de u.
Vamos considerar apenas a equação de primeira ordem (5.1), mas na verdade isso é mais geral
do que parece, uma vez que podemos reduzir as equações de ordem superior para um sistema de equações de primeira ordem.
ções.
Exemplo 5.1 Considere o IVP para a ODE,

v 000.t / D v0.t / vt / 2t.v 00 .t // 2para t> 0:

Esta terceira ordem requer três condições iniciais, tipicamente especificadas como

v.0 / D 1 ;
v 0,0
0 /D2; (5.3)
v 00.0 / D 3 :

113

✐ ✐

✐ ✐

https://translate.googleusercontent.com/translate_f 1/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

Página 2
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 114

114 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

Podemos reescrever isso como um sistema da forma (5.1), (5.2), introduzindo as variáveis

u 1 .t / D vt /;
u 2 .t / D v0 .t /;
u 3 .t / D v00 .t /:
Então as equações assumem a forma

u 01.t / D u 2 .t /;
u 02.t / D u 3 .t /;
u 03.t / D u 1 .t / u 2 .t / 2tu32 .t /;
que define a função vetorial fu; t /. A condição inicial é simplesmente (5.2), onde o
três componentes de vêm de (5.3). Mais geralmente, qualquer equação única de ordem
pode ser reduzido para m equações de primeira ordem definindo u j .t / D v .j 1 / .t /, e uma ordem de m
O sistema de equações s pode ser reduzido a um sistema de equações de primeira ordem.
Veja a Seção D.3.1 para um exemplo de como este procedimento pode ser usado para determinar
solução geral de uma equação diferencial linear de ordem r.
Também é útil notar que qualquer dependência explícita de f on t pode ser
eliminado pela introdução de uma nova variável que é simplesmente igual a t. No exemplo acima
nós poderíamos definir
u 4 .t / D t
de modo que
vc.t04/ D 1 e u 4 .t 0 / D t 0 :
O sistema assume então a forma
você
.t / D
0 f .ut // (5.4)
com 3
você 2 1

você 3 7 7 e ut 0 / D 266 4
2 7
7:
fu / D 266
4 u 1 u 2 2u 4 u 2 5 3 5
3
1 t03
A equação (5.4) é dita autônoma, uma vez que não depende explicitamente do tempo. Ele
Muitas vezes é conveniente supor que f é desta forma, pois simplifica a notação.

5.1 Equações diferenciais ordinárias lineares

O sistema de ODEs (5.1) é linear se

f .u; t / D em / u C gt /; (5,5)

onde At / 2 R s s e gt / 2 R s . Um caso especial importante é o coeficiente constante


sistema linear
você
.t / D
0 Au.t / C gt /; (5.6)

✐ ✐

✐ ✐

Página 3
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 115

https://translate.googleusercontent.com/translate_f 2/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

5.1. Equações diferenciais ordinárias lineares 115

onde A 2 R s s é uma matriz constante. Se gt / 0, então a equação é homogênea . O


solução para o sistema homogêneo u 0 D Au com dados (5.2) é

ut / D e A.t t 0 / ; (5,7)

onde o exponencial da matriz é definido como no Apêndice D. No caso escalar, usamos freqüentemente
no lugar de A.

5.1.1 Princípio de Duhamel


Se gt / não é identicamente zero, então a solução para o sistema de coeficientes constantes (5.6) pode
ser escrito como
t
ut / D e A.t t / CZ 0 e A.t / g. / d : (5,8)
t 0

Isso é conhecido como o princípio de Duhamel . A matriz e A.t / é o operador de solução para o
problema homogêneo; ele mapeia dados no momento para a solução no momento t ao resolver o
equação homogênea. O princípio de Duhamel afirma que o termo não homogêneo g. / at
qualquer instante tem efeito na solução no tempo t dado por e A.t / g. /. Note que isto é
muito semelhante à idéia de uma função de Green para o problema do valor limite (BVP).
Como um caso especial, se AD 0, então a ODE é simplesmente

você
.t / D
0 gt / (5,9)

e, claro, a solução (5.8) reduz para a integral de g:

t
ut / D CZ g. / d : (5,10)
t 0

Como outro caso especial, suponha que A seja constante e, portanto, seja gt / g 2 R s . Então (5.8)
reduzir para
t
ut / D e A.t t / C Z 0 e A.t / d g: (5,11)
t 0

Esta integral pode ser calculada, por exemplo, expressando e A.t / como para a série de Taylor como em (D.31)
e, em seguida, integrar termo por termo. Isso dá
Zt
e A.t / d DA 1 Ae A.t t / I 0
(5,12)
t 0

e assim
ut / D e A.t t 0 / CA 1 Ae A.t t / I g: 0
(5,13)

Isso pode ser familiar no caso escalar e vale também para sistemas de coeficientes constantes
(desde que A seja não singular). Esta forma da solução é usada explicitamente em exponencial
métodos de diferenciação de tempo; consulte a Seção 11.6.

✐ ✐

✐ ✐

Página 4
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 116

116 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

5,2 continuidade Lipschitz

Na última seção, consideramos os ODEs lineares, para os quais sempre existe uma solução única.
Na maioria das aplicações, entretanto, estamos preocupados com problemas não-lineares para os quais
geralmente não é uma fórmula explícita para a solução. A teoria padrão para a existência de um
solução para o problema do valor inicial

(5,14)
https://translate.googleusercontent.com/translate_f 3/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
você
.t / D
0 f .u; t /; u.0 / D u
é discutido em muitos textos, por exemplo, [15]. Para garantir que existe uma solução única, é
necessário exigir uma certa quantidade de suavidade na função f .u; t / de (5.14). Nós
diga que a função f .u; t / é Lipschitz contínuo em u em algum domínio

DD fu; t / W ju j em 0 t t 1 g
se houver alguma constante L 0 para que

jf .u; t / fu j (5,15)
; t / j Lju u
para todos. t / e .u ; t / em D. Isto é ligeiramente mais forte que a mera continuidade, que somente
requer que jf .u; t / f .u ; t / j! 0 como você! .você A continuidade de Lipschitz requer que
jf.u; t / fu ; t / j D O.ju u j / como vc! u .
Se fu; t / é diferenciável em relação a u em D e esta derivada f u D @f = @ u é
delimitada então podemos tomar
LD max jf u .u; t / j;
.u; t / 2D
desde
/
fu; t / D fu ; t / C f u .v; t / .u u
para algum valor v entre u e u .
Exemplo 5.2 Para o problema linear.tu /0 D ut / C gt /, f 0.u / e nós podemos
tome LD j j. Este problema, claro, tem uma solução única para qualquer dado inicial dado por
(5.8) com AD .
Em particular, se 0 D 0 então LD 0. Neste caso f .u; t / D gt / é independente de u.
A solução é então obtida simplesmente integrando a função gt /, como em (5.10).

5.2.1 Existência e exclusividade de soluções


A existência básica e a unicidade do teorema afirma que se é Lipschitz contínuo ao longo
alguma região D, então há uma solução única para o problema de valor inicial (5.14), pelo menos até
ao tempo T D min.t 1 ; t 0 C a = S /, onde

SD max jf .u; t / j:
.u; t / 2D
Note que este é o módulo máximo da inclinação que a solução pode alcançar neste
intervalo de tempo, de modo que até o tempo t 0 Ca = S sabemos que ut / permanece no domínio D onde
(5,15) aguenta.

✐ ✐

✐ ✐

Página 5
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 117

5.2. Lipschitz continuidade 117

Exemplo 5.3 Considere o problema do valor inicial

você
.t / D
0 .ut // 2 ; u.0 / D > 0:
A função fu / D u 2 é independente de t e é Lipschitz contínua em u sobre qualquer
intervalo finito ju j a com LD 2. C a /, e o declive máximo ao longo deste intervalo
é SD . C a / 2 . O teorema garante que existe uma solução única pelo menos até o momento
a = . Ca / 2 . Como a é arbitrária, podemos escolher maximizar essa expressão, que gera
um D e assim há uma solução pelo menos até o tempo 1 = 4 .
Na verdade, este problema pode ser resolvido analiticamente e a solução única é
1
ut / d :
1 t
Note que ut /! 1 como t! 1 = . Não há solução além do tempo 1 = .
Se a função não é Lipschitz contínua em qualquer bairro de algum ponto, então
o problema de valor inicial pode deixar de ter uma solução única em qualquer intervalo de tempo se este
valor inicial é imposto.

https://translate.googleusercontent.com/translate_f 4/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
Exemplo 5.4 Considere o problema do valor inicial
você
.t / D
0 pu.t /

com condição inicial


u.0 / D 0:
pu não é Lipschitz contínua perto de você
A função f .u / d D 0 desde f 0 .u / D
1 = .2pu /! 1 como você! 0. Não podemos encontrar uma constante L para que o limite (5.15) se mantenha
todos vocês estão próximos de 0.
Como resultado, esse problema de valor inicial não possui uma solução exclusiva. Na verdade, tem
duas soluções distintas:
ut / 0
e
1
ut / d t 2 :
4
5.2.2 Sistemas de equações
Para os sistemas de s> 1 equações diferenciais ordinárias, ut / 2 R s e fu; t / é uma função
mapeamento R s R! R s. Dizemos que a função é Lipschitz contínua em u em alguma norma
k if k se houver uma constante L tal que
kf.u; t / f .u k (5,16)
; t / k Lku u
para todos. t / e .u ;; t / em algum domínio DD fu; t / W ku k a; t 0 t t 1 g. Por
a equivalência de normas de dimensão finita (Apêndice A), se f for Lipschitz contínua em
uma norma então é Lipschitz contínua em qualquer outra norma, ainda que a constante de Lipschitz
pode depender da norma escolhida.
Os teoremas sobre existência e singularidade são transferidos para sistemas de equações.

✐ ✐

✐ ✐

Página 6
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 118

118 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

Exemplo 5.5 Considere o problema do pêndulo da Seção 2.16,


00
.t / D sin. .t //;
Que pode ser reescrito como um sistema de primeira ordem de duas equações através da introdução de t.t / D. 0 .t /:
d v
D v ; vD sin. / :
dt
Considere a norma max. Nós temos
ku k 1 D max.j j; jv v j /
e
kf .u / fu / k 1 D max.jv v j; j sin. / sin. / j /:
Para ligar kf.u / fu / k 1 , primeiro note que jv v j ku u k 1 . Nós também temos
j sin. / sin. /jj j ku k 1

já que a derivada de sin. / é limitada por 1. Então, temos a continuidade de Lipschitz com LD 1:
kf.u / fu / k 1 ku k 1 :

5.2.3 Significância da constante de Lipschitz


A constante de Lipschitz mede quanto fu; t / muda se nós perturbarmos vc (em algum fixo
tempo t). Desde f .u; t / D u 0 .t /, a inclinação da linha tangente à curva da solução através
o valor u, isso indica como a inclinação da curva da solução irá variar se nós perturbarmos u. O
O significado disso é melhor visto através de alguns exemplos.
Exemplo 5.6 Considere a equação trivial u.t0/ D gt /, que tem Lipschitz con-
https://translate.googleusercontent.com/translate_f 5/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
stant LD 0 e soluções dadas por (5.10). Várias curvas de solução são esboçadas na Fig.
ure 5.1. Note que todas essas curvas são "paralelas"; eles são simplesmente deslocados dependendo
os dados iniciais. As linhas tangentes às curvas em qualquer momento particular são todas paralelas
fu; t / D gt / é independente de u.
Exemplo 5.7 Considere .t você
/ D 0ut / com constante e LD j j. Então ut / d
u.0 / exp. t /. Duas situações são mostradas na Figura 5.2 para valores negativos e positivos de .
Aqui a inclinação da curva da solução varia dependendo de você. A variação na inclinação
com u (em t fixo) dá uma indicação de quão rapidamente as curvas da solução estão convergindo
um para o outro (no caso <0) ou divergindo um do outro (no caso
> 0). Se a magnitude de fosse aumentada, a convergência ou divergência seria claramente
ser mais rápido.
O tamanho da constante de Lipschitz é significativo se pretendemos resolver o problema
numericamente, pois nossa aproximação numérica quase certamente produzirá um valor U n
no tempo t n Isso não é exatamente igual ao verdadeiro valor ut n /. Por isso estamos em um diferente
curva de solução que a verdadeira solução O melhor que podemos esperar no futuro é que permaneçamos
perto da curva de solução em que estamos agora. O tamanho da constante de Lipschitz dá uma
indicação de se as curvas de solução que começam juntas podem permanecer próximas
juntos ou podem divergir rapidamente.

✐ ✐

✐ ✐

Página 7
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 119

5.2. Lipschitz continuidade 119

10
9
8
7
6
5
4
3
2
1
00 0,10,20,30,40,50,60,70,80,9 1
Figura 5.1 Curvas de solução para o exemplo 5: 6 , em que LD 0 .

3 5
4
2 3
1 2
1
0 0
-1
-1 -2
-2 -3
-4
(a)-3 0,10,20,30,40,50,60,70,80,9 1
0 (b) -5 0,10,20,30,40,50,60,70,80,9 1
0

Figura 5.2 Curvas de solução para o Exemplo 5: 7 com (a) D 3 e (b) D 3 .

5.2.4 Limitações
Na verdade, a constante de Lipschitz não é a ferramenta perfeita para este propósito, uma vez que não
distinguir entre divergência rápida e convergência rápida de curvas de solução. Em ambos
Figura 5.2 (a) e Figura 5.2 (b) a constante de Lipschitz tem o mesmo valor LD j j D 3.
Mas esperamos que as curvas de solução convergentes rápidas como na Figura 5.2 (a) sejam
mais fácil de manusear numericamente do que rapidamente divergentes. Se cometermos um erro em algum momento,
Então o efeito desse erro deve decair em tempos posteriores, em vez de crescer. Até certo ponto
isso é verdade e, como resultado, erro baseado na constante de Lipschitz pode ser ordens de
magnitude muito grande nesta situação.
No entanto, as curvas de solução convergentes também podem causar sérias dificuldades numéricas.
culties, que não se pode esperar à primeira vista. Isso é discutido em detalhes no Capítulo 8,
que abrange equações rígidas.
https://translate.googleusercontent.com/translate_f 6/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
Deve-se também ter em mente que um pequeno valor da constante de Lipschitz não
basicamente significa que duas curvas de solução começando juntas ficarão juntas
pra sempre
Exemplo 5.8 Considere duas soluções para o problema do pêndulo no Exemplo 5.5,
um com dados iniciais
1 .0 / D ; v 1 .0 / D 0;
e o outro com

✐ ✐

✐ ✐

Página 8
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 120

120 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

2 .0 / D C ; v 2 .0 / D 0:
A constante de Lipschitz é 1 e os dados diferem em 2 , que podem ser arbitrariamente pequenos e
ainda assim as soluções acabam divergindo dramaticamente, enquanto a Solução 1 cai em direção a D 0, enquanto
na solução 2, o pêndulo cai para o outro lado, em direção a D 2 .
Neste caso, o IVP está muito mal condicionado: pequenas alterações nos dados podem levar a ordem
1 mudanças na solução. Como sempre na análise numérica, a solução do mal-condicionado
problemas podem ser muito difíceis de calcular com precisão.

5.3 Alguns métodos numéricos básicos

Começamos listando algumas abordagens padrão para discretizar (5.1). Note que o IVP
difere do BVP considerado antes em que nos são dados os dados no tempo inicial
t 0 D 0 e a partir disso devemos ser capazes de avançar no tempo, aproximando-nos
em tempos sucessivos t 1 ; t 2 ;::. Usaremos k para designar o intervalo de tempo, de modo que n t D para NK
n 0. É conveniente usar o símbolo k, que é diferente do tamanho da grade espacial
h, já que em breve estudaremos os PDEs que envolvem discretizações espaciais e temporais.
Geralmente os símbolos andt e x são usados.
Nós recebemos dados iniciais
U0D (5,17)
e deseja calcular aproximações U 1 ; U 2 ; ::: satisfazendo

U n ut n /:
Usaremos sobrescritos para indicar o índice da etapa de tempo, antecipando novamente a notação de
PDEs onde usaremos índices para índices espaciais.
O método simplet é o método de Euler (também chamado de forward Euler ), baseado em
ing u 0 .t n / com D C U n D .U nC1 U n / = k de (1.1). Isso dá o método

U nC1 U n D fU n /; (5,18)
n D 0; 1; ::::
k
Em vez de ver isso como um sistema de equações simultâneas como fizemos para o BVP, é
possível resolver isso explicitamente para U nC1 em termos de U n :

U nC1 DU n C kf.U n /: (5,19)


Dos dados iniciais U 0 , podemos calcular U 1 , depois U 2 e assim por diante. Isso é chamado de tempo-
método de marcha
O método de Euler para trás é semelhante, mas é baseado em substituir/ com ou 0 .t nC1
D U nC1 :
U nC1 U n D fU nC1 / (5,20)
k
ou
U nC1 DU n C kf.U nC1 /: (5,21)
Mais uma vez podemos avançar no tempo, já que computar o U nC1 requer apenas que saibamos
o valor anterior U n . No método de Euler, no entanto, (5.21) é uma equação que

https://translate.googleusercontent.com/translate_f 7/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

✐ ✐

✐ ✐

Página 9
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 121

5.4. Erros de Truncamento 121

deve ser resolvido para U nC1 e, em geral, é uma função não linear. Podemos ver isso como
procurando por um zero da função

gu / D u kf. u / U n ;
que pode ser aproximado usando algum método iterativo como o método de Newton .
Porque o método de Euler para trás dá uma equação que deve ser resolvida para U nC1 ,
ele é chamado de método implícito , enquanto o método forward de Euler (5.19) é um método explícito.
método
Outro método implícito é o método trapezoidal , obtido pela média dos dois
Métodos de Euler:
U nC1 U n D 1 .f .U n / C fU nC1 //: (5,22)
k 2
Como é de se esperar, essa aproximação simétrica é de segunda ordem, enquanto a
Os métodos de Euler são apenas de primeira ordem.
Os métodos acima são todos métodos de uma etapa , o que significa que U nC1 é determinado a partir de
U valores n sozinho e anteriores do U não são necessários. Uma maneira de obter maior precisão de pedidos
é usar um método de várias etapas que envolve outros valores anteriores. Por exemplo, usando o
aproximação

ut C / k ut / k / D u 0.t / C 1 k 2 u 000
.t / C Ok 3 /
2k 6
produz o método do ponto médio (também chamado de método leapfrog ),

U nC1 U n 1 D fU n / (5,23)
2k
ou
U nC1 DU n 1 C 2kf.U n /; (5,24)
que é um método preciso de 2 passos preciso de segunda ordem. A aproximação D 2 u de
(1.11), reescrito na forma
3u.t Ck / 4u.t / C ut k / D u 0.t C k / C 1 k 2 u 000
.t C k / C ;
2k 12
produz um método implícito de 2 passos de segunda ordem

3U nC1 4U n CU n 1 D fU nC1 /: (5,25)


2k
Este é um dos métodos de fórmula de diferenciação para trás ( BDF ) que serão discutidos
no Capítulo 8.

5.4 Erros de Truncamento

O erro de truncamento para esses métodos é definido da mesma maneira que no Capítulo 2. Escrevemos
a equação da diferença na forma que modela diretamente as derivadas (por exemplo, na forma

✐ ✐

✐ ✐

https://translate.googleusercontent.com/translate_f 8/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

Página 10
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 122

122 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

(5.23) em vez de (5.24)) e, em seguida, insira a solução verdadeira para a ODE na diferença
equação Em seguida, usamos a expansão da série de Taylor e cancelamos termos comuns.
Exemplo 5.9 O erro de truncamento local (LTE) do método do ponto médio (5.23) é
definido por
ut nC1 / ut n 1 / f .ut n //
n D
2k
1
D u 0 .t n / C k 2 u 000 .t n / C Ok 4 / u 0 .t n /
6
1
D k 2 u 000 .t n / C Ok 4 /:
6
Note que uma vez que é / é a verdadeira solução do ODE, u 0 .t n / D f .ut n //. O Ok 3 / termo
desaparece por simetria. O erro de truncamento é Ok 2 / e assim dizemos que o método é o segundo
ordem precisa , embora não seja claro que o erro global terá esse comportamento. Como
sempre, precisamos de alguma forma de estabilidade para garantir que o erro global exibirá
mesma taxa de convergência que o erro de truncamento local. Isso será discutido abaixo.

5.5 Erros de um passo

Em grande parte da literatura referente a métodos numéricos para ODEs, uma definição
A inição do erro de truncamento local é usada com base no formulário (5.24), por exemplo,
em vez de (5.23). Denotando este valor por L n , temos
L n D ut nC1 / ut n 1 / 2kf.ut n // (5,26)
D 1 k 3 u 000 .t n / C Ok 5 /:
3
Como L n D 2k n , este erro local é Ok 3 / em vez de Ok 2 /, mas é claro que o global
erro permanece o mesmo e será Ok 2 /. Usando esta definição alternativa, muitos padrões
resultados na teoria ODE dizem que um método preciso de ordem pth deve ter um LTE que é
Ok pC1 /. Com a notação que estamos usando, um método preciso de ordem pth tem um LTE que é
Ok p . A notação usada aqui é consistente com a prática padrão para PDEs e leads
para uma teoria mais coerente, mas devemos estar cientes dessa possível fonte de confusão.
Neste livro, L n será chamado de erro de uma etapa , pois isso pode ser visto como o erro
que seria introduzido em uma etapa de tempo se os valores passados forem U n ; U n1 ; ::: foram todos tirados
para ser os valores exatos de ut /. Por exemplo, no método do ponto médio (5.24), supomos
que
U n D ut n / e U n 1 D ut n 1 /
e agora usamos esses valores para calcular U nC1 , uma aproximação para/: ut nC1
U nC1 D ut n 1 / C 2kf.ut n //
D ut n 1 / C 2ku 0 .t n /:
Então o erro é
ut nC1 / U nC1 D ut nC1 / ut n 1 / 2ku 0 .t n / DL n :

✐ ✐

✐ ✐

Página 11
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 123

https://translate.googleusercontent.com/translate_f 9/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

5.6. Métodos da série de Taylor 123

De (5.26) vemos que em um passo o erro introduzido é Ok 3 /. Isso é consistente com


precisão de segunda ordem no erro global se pensarmos em tentar calcular uma aproximação
para a solução verdadeira uT / em algum tempo fixo T> 0. Para calcular a partir do tempo t D 0 até
tempo T, precisamos tomar T = k time steps de comprimento k. Uma estimativa aproximada do erro no momento
T pode ser obtido assumindo que um novo erro de tamanho L n é introduzido na enésima vez
passo e, em seguida, é simplesmente levado adiante em etapas de tempo posteriores sem afetar o tamanho do futuro
erros locais e sem crescer ou diminuir-se. Então, esperamos que o resultado
erro global no tempo T para ser simplesmente a soma de todos esses erros locais. Desde cada erro local
é Ok 3 / e estamos somando T = k deles, acabamos com um erro global que é Ok 2 /.
Este ponto de vista é exatamente correto para o simples ODE (5.9), no qual f .u; t / d
gt / é independente de u e a solução é simplesmente a integral de g, mas é um pouco demais
simplista para equações mais interessantes, uma vez que o erro em cada momento retorna ao
computação na próxima etapa no caso em que f .u; t / depende de u. No entanto, é
direito em termos da ordem esperada de precisão, desde que o método seja estável.
Na verdade, é útil pensar na estabilidade como exatamente o que é necessário para tornar essa análise ingênua
correto, garantindo que os erros antigos dos tempos anteriores não cresçam muito rapidamente
etapas do tempo futuro. Isso será investigado em detalhes nos próximos capítulos.

5.6 Métodos da série de Taylor

O método forward de Euler (5.19) pode ser derivado usando uma expansão da série / de Taylor do ut nC1
sobre ut n /:
1
ut nC1 / D ut n / C ku 0 .t n / C k 2 u 00 .t n / C : (5,27)
2
Se descartarmos todos os termos de ordem k 2 e superiores e usarmos a equação diferencial para substituir
u 0 .t n / com fut n /; t n /, obter

ut nC1 / ut n / C kf.ut n /; t n /:
Isso sugere o método (5.19). O erro de 1 passo é Ok 2 / desde que descemos termos deste
encomendar
Um método da série de Taylor de maior precisão pode ser derivado, mantendo mais termos em
a série de Taylor. Se mantivermos os primeiros p C 1 termos da expansão da série de Taylor

ut nC1 / ut n / c ku 0 .t n / C1k 2 u 00 .t n / C C 1 k p u .p / .t n /
2 p!
obtemos um método preciso de ordem pth. O problema é que nos é dado apenas

você
.t / D
0 f .ut /; t /

e devemos calcular as derivadas superiores por diferenciação repetida dessa função.


Por exemplo, podemos calcular

u 00.t / D f u .ut /; t / u.t0 / C f t .ut /; t / (5,28)


D f u .ut /; t / f .ut /; t / C f t .ut /; t /:

✐ ✐

✐ ✐

Página 12
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 124

124 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

Isso pode resultar em expressões muito confusas que devem ser trabalhadas para cada equação,
e como resultado, essa abordagem não é usada com frequência na prática. No entanto, é tão óbvio
abordagem que vale a pena mencionar e, em alguns casos, pode ser útil. Um exemplo
deve ser suficiente para ilustrar a técnica e suas limitações.
Exemplo 5.10. Suponha que nós queremos resolver a equação

você
.t / D
0 t 2 sin.ut //: (5,29)

https://translate.googleusercontent.com/translate_f 10/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
Então podemos calcular
u 00.t / D 2t sin.ut // C t 2 cos.ut // u 0 .t /
D 2t sin.ut // C t 4 cos.ut // sin.ut //:
Um segundo método de ordem é dado por
1
U nC1 DU n C kt 2 n sin.U n / C
k 2 Œ2t n sin.U n / nCcos.U
t 4 n / sin.U n / :
2
Obviamente, derivadas de maior ordem podem ser computadas e usadas, mas isso é complicado mesmo para
este exemplo simples Para sistemas de equações, o método se torna ainda mais complicado.
Essa abordagem da série de Taylor é usada em algumas situações, por exemplo,
na derivação do método de Lax-Wendroff para PDE hiperbólicas; veja a Seção 10.3. Ver
também Seção 11.3.

5.7 métodos Runge-Kutta

A maioria dos métodos usados na prática não exige que o usuário calcule explicitamente a ordem superior
derivados. Em vez disso, uma aproximação de diferenças finitas de ordem superior é projetada
modela esses termos automaticamente.
Um método de várias etapas do tipo que estudaremos na Seção 5.9 pode alcançar alta precisão
usando interpolação polinomial de alta ordem através de vários valores anteriores do
solução e / ou seu derivado. Para obter o mesmo efeito com um método de 1 passo, é típico
Basicamente necessário usar um método multiestágio , onde os valores intermediários da solução e
suas derivadas são geradas e usadas dentro de um único passo de tempo.
Exemplo 5.11 Um método Runge-Kutta explícito de dois estágios é dado por
1
U DU n C kf.U n /; (5,30)
2
U nC1 DU n C kf. U /:
No primeiro estágio é gerado um valor intermediário que aproxima ut nC1
/ via
= 2 Euler

método No segundo passo a função é avaliada neste ponto médio para estimar a inclinação
ao longo do tempo total. Como isso agora parece uma aproximação centralizada à derivada
podemos esperar pela precisão de segunda ordem, como veremos agora, computando o LTE.
Combinando os dois passos acima, podemos reescrever o método como

1
U nC1 DU n C kf U n C kf.U n / :
2

✐ ✐

✐ ✐

Página 13
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 125

5.7. Métodos Runge-Kutta 125

Visto desta maneira, isso é claramente para o método explícito de um passo. O erro de truncagem é
1 1 (5,31)
n D .ut nC1 / ut n // f ut n / C kf.ut n // :
k 2
Note que
1 1
f ut n / C kf.ut n // Df ut n / C ku 0 .t n /
2 2
Df .ut n // C 1 ku 0 .t n / f 0 .ut n // 1Ck 2 .u 0 .t n // 2 f 00 .ut n // C :
2 8
Desde fut n // D u 0 .t n / e diferenciação dá f 0 .u / u 0 D u 00 , obter
1 0 .t n / C1 ku 00 .t n / C Ok 2 /:
f ut n / C kf.ut n // D u
2 2
Usando isto em (5.31)
1 1
n D ku 0 .t n / C k 2 u 00 .t n / C Ok 3 /
https://translate.googleusercontent.com/translate_f 11/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
k 2
0 u 0 .t n / C 1 ku 00 .t n / C Ok 2 /
2
D Ok 2 /
e o método é de segunda ordem precisa. (Verifique o Ok 2 / termo para ver que isso não
desaparecer.)
Observação : Outra maneira de determinar a ordem de precisão deste método simples é
aplicá-lo à equação de teste especial u 0 D u, que tem solução para nC1 / D e utk ut n /, e
determine o erro neste problema. Aqui
1
U nC1 DU n C k U n C kUn
2
DU n C .k / U n C 1 .k / 2 U n
2
D e k U n C Ok 3 /:
O erro de um passo é Ok 3 / e, portanto, o LTE é Ok 2 /. É claro que só verificamos
que o LTE é Ok 2 / em uma função particular ut / D e t , não em todas as soluções suaves,
e para métodos gerais Runge-Kutta para problemas não autônomos esta abordagem dá
apenas um limite superior na ordem de precisão do método. Aplicando um método para este especial
A equação é também uma ferramenta fundamental na análise de estabilidade - veja o Capítulo 7.
Exemplo 5.12. O método de Runge-Kutta (5.30) pode ser estendido a métodos não-autônomos.
equações da forma u 0.t / D f .ut /; t /:
1
U DU n C kf.U n ; t n /;
2 (5,32)
k
U nC1 DU n C kf U ; t n C :
2

✐ ✐

✐ ✐

Página 14
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 126

126 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

Isso é novamente de segunda ordem precisa, como pode ser verificado expandindo como acima, mas é
um pouco mais complicado, pois as séries de Taylor em duas variáveis devem ser usadas.
Exemplo 5.13 Um método de Runge-Kutta de ordem superior simples é a quarta ordem
método de quatro etapas dada por
E 1 DU n ;
1
E 2 DU n C kf.Y 1 ; t n /;
2
1 k
E 3 DU n C ;
2kf Y 2 ; t n C 2
k (5,33)
E 4 DU n C kf Y 3 ; t n C ;
2
k k
U nC1 DU n C f .Y 1 ; t n / C 2f Y 2 ; t n C
6 2
k
C2f Y 3 ; t n C C4;tnCk/:
2
Note que se fu; t / D ft / não depende de você, então isso reduz a regra de Simpson para
a integral. Este método foi particularmente popular na era do pré-computador, quando
foram feitas à mão, porque os coeficientes são tão simples. Hoje não há necessidade de
manter os coeficientes simples e outros métodos Runge-Kutta têm vantagens.
Um método Runge-Kutta de estágio geral r tem a forma
Xr
E 1 DU n C k um 1j fY j ; t n c C j k /;
jD1
Xr
E 2 DU n C k a 2j f .Y j ; t n c C j k /;

https://translate.googleusercontent.com/translate_f 12/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
jD1
:::
(5,34)
Xr
E r DU n C k um rj f .Y j ; t n c C j k /;
jD1

Xr
U nC1 DU n C k b j fY j ; t n c C j k /:
jD1
Consistência requer
Xr
um ij D c i ; i D 1; 2; :::; r;
jD1 (5,35)
Xr
b j D 1:
jD1

✐ ✐

✐ ✐

Página 15
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 127

5.7. Métodos Runge-Kutta 127

Se estas condições forem satisfeitas, o método será, pelo menos, de primeira ordem.
Os coeficientes para um método de Runge-Kutta são freqüentemente exibidos em um chamado Açougueiro.
tableau:
c 1 a 11 ::: um primeiro
::: ::: :::
c r para r1::: um rr (5,36)

b1 ::: br
Por exemplo, o método Runge-Kutta de quarta ordem dado em (5.33) tem as seguintes
tableau (as entradas não mostradas são todas 0):

0
1/2 1/2
1/2 0 1/2
1 0 0 1

1/6 1/3 1/3 1/6

Uma classe importante de métodos Runge-Kutta consiste nos métodos explícitos para
qual ij D 0 para j i. Para um método explícito, os elementos no e acima do
onal na porção a ij do tableau Butcher são todos iguais a zero, como, por exemplo, com
o método de quarta ordem exibido acima. Com um método explícito, cada um dos valores de Y i é
Previamente calculado utilizando apenas o computadorizada Y j.
Método de Runge-Kutta totalmente implícitas, em que cada Y i depende de todo o Y J, pode ser
caro para implementar em sistemas de ODEs. Para um sistema de equações (onde cada Y i é
em R s ), um sistema de equações sr deve ser resolvido para computar os r vetores e simultaneamente.
Uma subclasse de métodos implícitos mais simples de implementar é a diagonal
métodos implícitos de Runge-Kutta (métodos DIRK) nos quais And i depende de Y j para j i, ie,
a ij D 0 para j> i. Para um sistema de equações, os métodos DIRK requerem a resolução de uma sequência
de sistemas implícitos, cada um de tamanho, ao invés de um conjunto de equações como seria
ser exigido em um método Runge-Kutta totalmente implícito. Os métodos DIRK são assim chamados porque
seu quadro tem valores zero acima da diagonal, mas possivelmente elementos diagonais diferentes de zero.
Exemplo 5.14 Um método DIRK preciso de segunda ordem é dado por

E 1 DU n ;
k k
E 2 DU n C fY 1 ; t n / C f Y 2 ; t n C ;
4 2
https://translate.googleusercontent.com/translate_f 13/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

E 3 DU n C k fY 1 ; t n / C f Y 2 ; t n C k C f .e 3; tn Ck / ; (5,37)
3 2
k k
U nC1 DY 3 DU n C f .Y 1 ; t n / C f Y 2 ; t n C C f .e 3; t n C k / :
3 2
Este método é conhecido como o método TR-BDF2 e é derivado de uma forma diferente no
8.5. Seu quadro é

✐ ✐

✐ ✐

Página 16
✐ ✐ "Rjlfdm"
2007/6/1
✐ página
✐ 128

128 Capítulo 5. O Problema do Valor Inicial para Equações Diferenciais Ordinárias

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

1/3 1/3 1/3


Além das condições (5.35), um método Runge-Kutta é de segunda ordem
se
Xr 1
bjcjD ; (5,38)
2
jD1
como está satisfeito para o método (5.37). A precisão de terceira ordem requer duas condições adicionais
ções:
Xr 1
b j cj 2D ;
3
jD1 (5,39)
Xr Xr 1
biacijD :
6
iD1jD1
A precisão de quarta ordem requer quatro condições adicionais nos coeficientes, e maior
Os métodos de pedido exigem um número exponencialmente crescente de condições.
Um método Runge-Kutta explícito para o estágio r pode ter ordem no máximo r, embora para r 5
A ordem é estritamente menor que o número de etapas. Entre os métodos implícitos de Runge-Kutta,
Os métodos do estágio r da ordem 2r existem. Existem muitas maneiras que os coeficientes para ij
e bj pode ser escolhido para obter uma certa precisão, desde que o número de estágios seja suficiente
suficientemente grande Muitas classes diferentes de Runge-Kutta foram desenvolvidas
os anos com várias vantagens. The order conditions are quite complicated for higher-
order methods and an extensive theory has been developed by Butcher for analyzing these
methods and their stability properties. For more discussion and details see, for example,
[13], [43], [44].
Using more stages to increase the order of a method is an obvious strategy. For some
problems, however, we will also see that it can be advantageous to use a large number of
stages to increase the stability of the method while keeping the order of accuracy relatively
low. This is the idea behind the Runge–Kutta–Chebyshev methods , for example, discussed
in Section 8.6.

5.7.1 Embedded methods and error estimation


Most practical software for solving ODEs does not use a fixed time step but rather adjusts
the time step during the integration process to try to achieve some specified error bound.
One common way to estimate the error in the computation is to compute using two different
methods and compare the results. Knowing something about the error behavior of each
method often allows the possibility of estimating the error in at least one of the two results.
A simple way to do this for ODEs is to take a time step with two different methods,
one of order p and one of a different order, say, p C 1. Assuming that the time step is
small enough that the higher order method is really generating a better approximation, then

https://translate.googleusercontent.com/translate_f 14/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

✐ ✐

✐ ✐

Página 17
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐129

5.7. Runge–Kutta methods 129

the difference between the two results will be an estimate of the one-step error in the lower
order method. This can be used as the basis for choosing an appropriate time step for the
lower order approximation. Often the time step is chosen in this manner, but then the higher
order solution is used as the actual approximation at this time and as the starting point for
the next time step. This is sometimes called local extrapolation . Once this is done there is
no estimate of the error, but presumably it is even smaller than the error in the lower order
method and so the approximation generated will be even better than the required tolerance.
For more about strategies for time step selection, see, for example, [5], [43], [78].
Note, however, that the procedure of using two different methods in every time step
could easily double the cost of the computation unless we choose the methods carefully.
Since the main cost in a Runge–Kutta method is often in evaluating the function f .u; t/,
it makes sense to reuse function values as much as possible and look for methods that
provide two approximations to U nC1 of different order based on the same set of function
evaluations, by simply taking different linear combinations of the f .Y j ; t n Cc j k/ values in
the final stage of the Runge–Kutta method (5.34). So in addition to the value U nC1 given
there we would like to also compute a value

Xr
OU nC1 DU n C k Ob j f .Y j ; t n C c j k/ (5.40)
jD1
that gives an approximation of a different order that can be used for error estimation. These
are called embedded Runge–Kutta methods and are often displayed in a tableau of the form

c 1 a 11 ::: a 1r
::: ::: :::
cr a r1 ::: a rr
(5.41)
b1 ::: br
Ob 1 ::: Ob r

As a very simple example, the second order Runge–Kutta method (5.32) could be
combined with the first order Euler method:

Y 1 DU n ;
1
Y 2 DU n C kf.Y 1 ; t n /;
2 (5.42)
k
U nC1 DU n C kf Y 2 ; t n C ;
2
OU nC1 DU n C kf.Y 1 ; t n /:

Note that the computation of OU nC1 reuses the value fY 1 ; t n / obtained in computing Y 2
and is essentially free. Also note that

✐ ✐

✐ ✐

https://translate.googleusercontent.com/translate_f 15/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

Page 18
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐130

130 Chapter 5. The Initial Value Problem for Ordinary Differential Equations

OU nC1 U nC1 D k f .Y 1 ; t n / f Y 2 ; t n C k
2
k u 0 .t n / u 0 .t nC1=2 / (5.43)
1
k 2 u 00 .t n /;
2
which is approximately the one-step error for Euler's method.
Most software based on Runge–Kutta methods uses embedded methods of higher
order. For example, the ode45 routine in MATLAB uses a pair of embedded Runge-Kutta
methods of order 4 and 5 due to Dormand and Prince [25]. See Shampine and Reichelt [78]
for implementation details (or typeode45 in MATLAB).

5.8 One-step versus multistep methods

Taylor series and Runge–Kutta methods are one-step methods ; the approximation U nC1
depends on U n but not on previous values U n 1 ; U n 2 ; :::. In the next section we will
consider a class of multistep methods where previous values are also used (one example is
the midpoint method (5.24)).
One-step methods have several advantages over multistep methods:
The methods are self-starting : from the initial data U 0 the desired method can be
applied immediately. Multistep methods require that some other method be used
initially, as discussed in Section 5.9.3.
The time step k can be changed at any point, based on an error estimate, for example.
The time step can also be changed with a multistep method but more care is required
since the previous values are assumed to be equally spaced in the standard form of
these methods given below.
If the solution ut/ is not smooth at some isolated point t (for example, because
fu; t/ is discontinuous at t ), then with a one-step method it is often possible to get
full accuracy simply by ensuring that t is a grid point. With a multistep method that
uses data from both sides of t in approximating derivatives, a loss of accuracy may
occur.
On the other hand, one-step methods have some disadvantages. The disadvantage of
Taylor series methods is that they require differentiating the given equation and are cum-
bersome and often expensive to implement. Runge–Kutta methods only use evaluations of
the function f , but a higher order multistage method requires evaluating f several times
each time step. For simple equations this may not be a problem, but if function values
are expensive to compute, then high order Runge–Kutta methods may be quite expensive
as well. This is particularly true for implicit methods, where an implicit nonlinear system
must be solved in each stage.
An alternative is to use a multistep method in which values of f already computed
in previous time steps are reused to obtain higher order accuracy. Typically only one new
f evaluation is required in each time step. The popular class of linear multistep methods
is discussed in the next section.

✐ ✐

✐ ✐

Page 19
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐131

https://translate.googleusercontent.com/translate_f 16/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
5.9. Linear multistep methods 131

5.9 Linear multistep methods

All the methods introduced in Section 5.3 are members of a class of methods called linear
multistep methods (LMMs). In general, an r-step LMM has the form
Xr Xr
˛ j U nCj D kˇ j f .U nCj ; t nCj /: (5.44)
jD0 jD0
The value U nCr is computed from this equation in terms of the previous values U nCr 1 ,
U nCr 2 , :::; U n and f values at these points (which can be stored and reused if f is
expensive to evaluate).
If ˇ r D 0, then the method (5.44) is explicit; otherwise it is implicit. Note that we
can multiply both sides by any constant and have essentially the same method, although
the coefficients ˛ j and ˇ j would change. The normalization ˛ r D 1 is often assumed to
fix this scale factor.
There are special classes of methods of this form that are particularly useful and have
distinctive names. These will be written out for the autonomous case where fu; t/ D fu/
to simplify the formulas, but each can be used more generally by replacing f .U nCj / with
f .U nCj ; t nCj / in any of the formulas.
Example 5.15. The Adams methods have the form
Xr
U nCr DU nCr 1 C k ˇ j f .U nCj /: (5.45)
jD0
These methods all have
˛ r D 1; ˛ r 1 D 1; and ˛ j D 0 for j < r 1:
The ˇ j coefficients are chosen to maximize the order of accuracy. If we require ˇ r D 0
so the method is explicit, then the r coefficients ˇ 0 ; ˇ 1 ;:::; ˇ r 1 can be chosen so that
the method has order r. This can be done by using Taylor series expansion of the local
truncation error and then choosing the ˇ j to eliminate as many terms as possible. Isso
gives the explicit Adams–Bashforth methods .
Another way to derive the Adams–Bashforth methods is by writing
t nCr

ut nCr / D ut nCr 1 / CZ u 0 .t/ dt


t nCr 1
(5.46)
t nCr

D ut nCr 1 / CZ fut// dt
t nCr 1

and then applying a quadrature rule to this integral to approximate


Zt nCr
r1
X
fut// dt k ˇ j fut nCj //: (5.47)
t
nCr 1
jD1
This quadrature rule can be derived by interpolatingf.ut// by a polynomialp.t/ of degree
r 1 at the points t n ; t nC1 ; :::; t nCr 1 and then integrating the interpolating polynomial.
Either approach gives the same r-step explicit method. The first few are given
below.

✐ ✐

✐ ✐

Page 20
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐132

132 Chapter 5. The Initial Value Problem for Ordinary Differential Equations

Explicit Adams–Bashforth methods

1-step: U nC1 DU n C kf.U n / (forward Euler)

2-step: U nC2 DU nC1 C k n / C 3f.U nC1 //


2 . f .U
3-step: U nC3 DU nC2 C k
.5f .U n / 16f.U nC1 / C 23f.U nC2 //
12
https://translate.googleusercontent.com/translate_f 17/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

4-step: U nC4 DU nC3 C k n / C 37f.U nC1 / 59f.U nC2 / C 55f.U nC3 //


24. 9f .U
If we allow ˇ r to be nonzero, then we have one more free parameter and so we can
eliminate an additional term in the LTE. This gives an implicit method of order r C 1
called the r-step Adams–Moulton . These methods can again be derived by polynomial
interpolation, now using a polynomial pt/ of degree r that interpolates f .ut// at the
points t n ; t nC1; :::; t nCr and then integrating the interpolating polynomial.
Implicit Adams–Moulton methods

1-step: U nC1 DU n C k (trapezoidal method)


.f .U n / C fU nC1 //
2
2-step: U nC2 DU nC1 C k n / C 8f.U nC1 / C 5f.U nC2 //
12. f .U
3-step: U nC3 DU nC2 C k
.f .U n / 5f .U nC1 / C 19f .U nC2 / C 9f .U nC3 //
24
4-step: U nC4 DU nC3 C k n / C 106f.U nC1 / 264f.U nC2 /
720. 19f .U
C 646f.U nC3 / C 251f.U nC4 //
Example 5.16. The explicit Nyström methods have the form
r1
X
U nCr DU nCr 2 C k ˇ j f .U nCj /
jD0
with the ˇ j chosen to give order r. The midpoint method (5.23) is a two-step explicit
Nyström method. A two-step implicit Nyström method is Simpson's rule ,
2k
U nC2 DU n C .f .U n / C 4f.U nC1 / C f .U nC2 //:
6
This reduces to Simpson's rule for quadrature if applied to the ODE .t/ Duf 0.t/.
5.9.1 Local truncation error
For LMMs it is easy to derive a general formula for the LTE. We have

1 Xr Xr
.t nCr / D ˛ j ut nCj / k ˇ j u 0 .t nCj /1A :
k 0@
jD0 jD0

✐ ✐

✐ ✐

Page 21
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐133

5.9. Linear multistep methods 133

We have used fut nCj // D u 0 .t nCj


/ since ut/ is the exact solution of the ODE. Assum-
ing u is smooth and expanding in Taylor series gives

ut nCj / D ut n / C jku 0 .t n / C1 .jk/ 2 u 00 .t n / C ;


2
u 0 .t nCj / D u0 .t n / C jku 00 .t n /1
C .jk/ 2 u 000 .t n / C ;
2
and so

1 Xr Xr
.t nCr / D ˛ j 1Au.t n / C 0@ .j˛ j ˇ j /1A u 0 .t n /
k 0@
jD0 jD0 1
X r
C k 0@ A u 00 .t n /
jD0 12j 2 ˛ j jˇ j 1
Xr 1
C C k q1 0 @ j q1 ˇ j A u .q/ .t n / C :
.q 1/!
https://translate.googleusercontent.com/translate_f 18/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
jD0 1q!j q ˛ j
The method is consistent if ! 0 as k ! 0, which requires that at least the first two terms
in this expansion vanish:
Xr Xr Xr
˛jD0 and j˛ j D ˇj: (5.48)
jD0 jD0 jD0
If the first p C 1 terms vanish, then the method will be pth order accurate. Note that
these conditions depend only on the coefficients ˛ j and ˇ j of the method and not on the
particular differential equation being solved.

5.9.2 Characteristic polynomials


It is convenient at this point to introduce the so-called characteristic polynomials . / and
. / for the LMM:
Xr Xr
./D ˛jj and ./D ˇjj: (5.49)
jD0 jD0
The first of these is a polynomial of degree r. So is . / if the method is implicit; otherwise
its degree is less than r. Note that .1/ DP ˛ j and also that 0 . / DP j˛ j j 1 , so that
the consistency conditions (5.48) can be written quite concisely as conditions on these two
polynomials:
.1/ D 0 and 0
.1/ D .1/: (5.50)
This, however, is not the main reason for introducing these polynomials. The location of
the roots of certain polynomials related to and plays a fundamental role in stability
theory as we will see in the next two chapters.

✐ ✐

✐ ✐

Página 22
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐134

134 Chapter 5. The Initial Value Problem for Ordinary Differential Equations

Example 5.17. The two-step Adams–Moulton method


k n / C 8f.U nC1 / C 5f.U nC2 // (5.51)
U nC2 DU nC1 C
12. f .U
has characteristic polynomials
1 (5.52)
./D2; ./D
12. 1 C8 C 5 2 /:
5.9.3 Starting values

One difficulty with using LMMs if r > 1 is that we need the values U 0 ; U 1 ; :::; U r 1
before we can begin to apply the multistep method. The value U 0 D is known from the
initial data for the problem, but the other values are not and typically must be generated by
some other numerical method or methods.
Example 5.18. If we want to use the midpoint method (5.23), then we need to gener-
ate U 1 by some other method before we begin to apply (5.23) with n D 1. We can obtain
U 1 from U 0 using any one-step method, such as Euler's method or the trapezoidal method,
or a higher order Taylor series or Runge–Kutta method. Since the midpoint method is sec-
ond order accurate we need to make sure that the value U 1 we generate is sufficiently
accurate so that this second order accuracy will not be lost. Our first impulse might be
to conclude that we need to use a second order accurate method such as the trapezoidal
method rather than the first order accurate Euler method, but this is wrong. The overall
method is second order in either case. The reason that we achieve second order accuracy
even if Euler is used in the first step is exactly analogous to what was observed earlier for
boundary value problems, where we found that we can often get away with one order of
accuracy lower in the local error at a single point than what we have elsewhere.
In the present context this is easiest to explain in terms of the one-step error. O
midpoint method has a one-step error that is Ok 3 / and because this method is applied
https://translate.googleusercontent.com/translate_f 19/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias
in OT=k/ time steps, the global error is expected to be Ok 2 /. Euler's method has a
one-step error that is Ok 2 /, but we are applying this method only once.
If U 0 D D u.0/, then the error in U 1 obtained with Euler will be Ok 2 /. If the
midpoint method is stable, then this error will not be magnified unduly in later steps and
its contribution to the global error will be only Ok 2 /. The overall second order accuracy
will not be affected.
More generally, with an r-step method of order p, we need r starting values
U 0 ; U 1 ; :::; U r 1
and we need to generate these values using a method that has a one-step error that is
Ok p / (corresponding to an LTE that is Ok p 1 /). Since the number of times we apply
this method (r 1) is independent of k as k ! 0, this is sufficient to give an Ok p / global
engano Of course somewhat better accuracy (a smaller error constant) may be achieved by
using a pth order accurate method for the starting values, which takes little additional work.
In software for the IVP, multistep methods generally are implemented in a form that
allows changing the time step during the integration process, as is often required to ef-
ficiently solve the problem. Typically the order of the method is also allowed to vary,

✐ ✐

✐ ✐

Page 23
✐ ✐ “rjlfdm”
2007/6/1
✐ page✐135

5.9. Linear multistep methods 135

depending on how the solution is behaving. In such software it is then natural to solve the
starting-value problem by initially taking a small time step with a one-step method and then
ramping up to higher order methods and longer time steps as the integration proceeds and
more past data are available.

5.9.4 Predictor-corrector methods


The idea of comparing results obtained with methods of different order as a way to choose
the time step, discussed in Section 5.7.1 for Runge–Kutta methods, is also used with
LMMs. One approach is to use a predictor-corrector method , in which an explicit Adams–
Bashforth method of some order is used to predict a value OU nC1 and then the Adams–
Moulton method of the same order is used to “correct” this value. This is done by using
OU nC1 on the right-hand side of the Adams–Moulton method inside the f evaluation, so
that the Adams–Moulton formula is no longer implicit. For example, the one-step Adams–
Bashforth (Euler's method) and the one-step Adams–Moulton method (the trapezoidal
method) could be combined into
OU nC1 DU n C kf.U n /;
1 (5.53)
U nC1 DU n C kf .U n / C f . OU nC1 //:
2
It can be shown that this method is second order accurate, like the trapezoidal method,
but it also generates a lower order approximation and the difference between the two can
be used to estimate the error. The MATLAB routine ode113 uses this approach, with
Adams–Bashforth–Moulton methods of orders 1–12; see [78].

https://translate.googleusercontent.com/translate_f 20/21
03/05/2018 O problema do valor inicial para equações diferenciais ordinárias

✐ ✐

✐ ✐

https://translate.googleusercontent.com/translate_f 21/21

S-ar putea să vă placă și