| | | |

Matemática numérica II

Ajude a manter o site livre, gratuito e sem propagandas. Colabore!

4.6 Método adaptativo com controle de erro

Em revisão

Consideremos um problema de valor inicia

y′⁢(t)=f⁢(t,y⁢(t)),t>t0, (4.301)
y⁢(t0)=y0. (4.302)

e um método de passo simples

y(1)=y0, (4.303)
y(i+1)⁢(h(i+1))=y(i)+h(i+1)⁢Φ⁢(t(i),y(i);h(i+1)), (4.304)

com t(i)=t0+(i−1)⁢h(i). Nesta seção, discutiremos uma estimava para o maior valor de h(i+1) tal que o erro de discretização global e⁢(t(i+1);h(i+1)) seja controlado por uma dada tolerância T⁢O⁢L, i.e.

|e⁢(t(i+1);h(i+1))|:=|y(i+1)⁢(h(i+1))−y⁢(t(i+1))|≈T⁢O⁢L. (4.305)

Para um método de ordem hp, pode-se mostrar que (veja, [3, Cap. 7, Seç. 7.2])

y(i+1)⁢(h(i+1))=y⁢(t(i+1))+ep⁢(t(i+1))⁢(h(i+1))p, (4.306)

onde e⁢(t(i+1)) é uma função apropriada. Então, assumindo que e⁢(t(i);h(i))=0, temos

ep⁢(t(i+1))=h(i+1)⁢ep′⁢(t(i)) (4.307)

e, portanto, para termos (4.305) impomos que

|(h(i+1))p+1⁢ep′⁢(t(i))|=T⁢O⁢L. (4.308)

Daí, se obtermos uma aproximação para ep′⁢(t(i)) teremos uma aproximação para o passo h(i+1).

Para estimarmos ep⁢(t(i+1)), observamos que de (4.306) temos

y(i+1)⁢(h(i+1)2)=y⁢(t(i+1))+ep⁢(t(i+1))⁢(h(i+1))p2p (4.309)

e, então, subtraindo esta de (4.306) temos

y(i+1)⁢(h(i+1))−y(i+1)⁢(h(i+1)2)=ep⁢(t(i+1))⁢(h(i+1)2)p⁢(2p−1), (4.310)

donde

ep⁢(t(i+1))⁢(h(i+1)2)p=y(i+1)⁢(h(i+1))−y(i+1)⁢(h(i+1)2)2p−1. (4.311)

Daí, de (4.307), obtemos

ep′⁢(t(i))⁢h(i+1)⁢(h(i+1)2)p=y(i+1)⁢(h(i+1))−y(i+1)⁢(h(i+1)2)2p−1, (4.312)

o que nos fornece a seguinte aproximação de ep′⁢(t(i))

ep′⁢(t(i))=1(h(i+1))p+1⁢2p2p−1⁢[y(i+1)⁢(h(i+1))−y(i+1)⁢(h(i+1)2)]. (4.313)

Assim sendo, de (4.308) temos que o passo h(i+1) apropriado é tal que

2p2p−1⁢|y(i+1)⁢(h(i+1))−y(i+1)⁢(h(i+1)2)|≈T⁢O⁢L. (4.314)

Com base nesta estimativa podemos propor o seguinte método de passo adaptativo. Partindo de uma escolha arbitrária de h, computamos y(i+1)⁢(h) e y(i+1)⁢(h/2) de y(i). Então, enquanto

2p2p−1⁢|y(i+1)⁢(h)−y(i+1)⁢(h2)|>T⁢O⁢L, (4.315)

tomamos sucessivas divisões de h por 2, até satisfazermos (4.314). Obtido o h que satisfaz (4.314), temos computado y(i+1) com h(i+1)=h.

Exemplo 4.6.1.

Consideremos o seguinte problema de valor inicial

y′−y=sen⁡(t),t>0 (4.316)
y⁢(0)=12. (4.317)

A Figura 4.4 mostra a comparação entre y⁢(t) e a solução numérica obtida da aplicação do Método de Euler com passo adaptativo. No método, utilizamos o passo inicial h(1)=0,1 e tolerância T⁢O⁢L=10−4. Ao compararmos esta figura com a Figura (4.1) fica evidente o controle do erro.

Refer to caption
Figura 4.4: Resultados referentes ao Exemplo 4.6.1.

4.6.1 Exercícios

Em revisão

E. 4.6.1.

Considere o seguinte problema de valor inicial

y′+e−y2+1=2,t>1, (4.318)
y⁢(1)=−1. (4.319)

Use o Método de Euler com passo adaptativo para computar o valor aproximado de y⁢(2). Para tanto, utilize o passo inicial h=0,1 e a tolerância de T⁢O⁢L=10−4.


−5.99240⁢e−1


Envie seu comentário

Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!

Opcional. Preencha seu nome para que eu possa lhe contatar.
Opcional. Preencha seu e-mail para que eu possa lhe contatar.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a política de uso de dados para mais informações.

Licença Creative Commons
Este texto é disponibilizado nos termos da Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional. Ícones e elementos gráficos podem estar sujeitos a condições adicionais.

Pedro H A Konzen
| | | |