Resolva:
\frac{d y}{d t}=-100 y, \quad y(0)=1
com passo h=0,01 até t=1.
  1. Compare \operatorname{com} y(t)=e^{-100 t}.
  2. Discuta truncamento e erros em equações rígidas.

Passo 1

Enunciado e dados (o que o problema pede).\n
  • Temos a equação diferencial e condição inicial:
\frac{dy}{dt}=-100\,y,\qquad y(0)=1.
  • Queremos “resolver” numericamente com passo \,h=0{,}01 até t=1 (ou seja N=\dfrac{1}{h}=100 passos).\n
  • Pedido 1: comparar o método numérico aplicado com a solução exata \,y(t)=e^{-100t}.\n
  • Pedido 2: discutir truncamento e erros em equações rígidas.\n
    Todos os dados relevantes estão acima: ODE linear simples, \,h=0{,}01, intervalo 0\le t\le1, solução exata conhecida.

Passo 2

Solução exata (para referência).\n
  • Resolvo a ODE exata separando variáveis ou reconhecendo equação linear de 1º ordem:
\frac{dy}{y}=-100\,dt.
Integrando,
\ln|y|=-100t+C.
Usando y(0)=1 obtemos C=0. Portanto a solução exata é
y(t)=e^{-100t}.

Passo 3

Montando o método de Euler explícito (método provavelmente pedido ao dizer "com passo h=0{,}01").\n
  • Regra de Euler explícito:
y_{n+1}=y_n+h\,f(t_n,y_n).
Aqui f(t,y)=-100y. Logo
y_{n+1}=y_n+h(-100y_n)=(1-100h)\,y_n.
  • Com h=0{,}01 obtemos o fator
1-100h=1-100\cdot 0{,}01=1-1=0.
  • Assim, a iteração é
y_1=0\cdot y_0=0,\qquad y_2=0\cdot y_1=0,\\ \ldots
ou seja
y_0=1,\qquad y_n=0\\ \text{para todo }n\ge 1.
  • Número de passos até t=1: N=100. Portanto o valor numérico final em t=1 pelo Euler explícito com esse h é y_{100}=0.

Passo 4

Comparação numérica pontual com a solução exata (valores ilustrativos e erro).\n
  • Valores exatos selecionados:
y(0{,}01)=e^{-100\cdot 0{,}01}=e^{-1}\approx 0{,}3678794412,
y(0{,}02)=e^{-2}\approx 0{,}1353352832,
y(1)=e^{-100}\approx 3{,}720075976\times 10^{-44}.
  • Valores pelo Euler explícito com h=0{,}01:
y_0=1,\qquad y_1=0,\qquad y_n=0\\ \text{para }n\ge1.
  • Erros pontuais:
\text{erro em }t=0{,}01:\quad |y(0{,}01)-y_1| \approx 0{,}3678794412,
\text{erro em }t=1:\quad |y(1)-y_{100}| \approx 3{,}720075976\times 10^{-44}.
Observação: embora o erro em t=1 seja numericamente minúsculo (porque y(1) é extremamente pequeno), o comportamento qualitativo do método é errado desde o primeiro passo (o método anula a solução em t=0{,}01 enquanto a solução exata ainda é \approx0{,}368).

Passo 5

Análise do erro de truncamento (erro local e global) — derivação didática.\n
  • A fórmula de Taylor para y(t+h) é
y(t+h)=y(t)+h\,y'(t)+\frac{h^2}{2}y''(\xi)
para algum \xi\in(t,t+h). O método de Euler usa só os dois primeiros termos, logo o erro local (erro por um passo, chamado \tau) é, em ordem,
\tau= y(t+h)-\big(y(t)+h\,y'(t)\big)=\mathcal{O}(h^2).
  • Para a nossa ODE temos y'=-100y e y''=(-100)'\,y +(-100)y' = 10000\,y (mais direto: y''=(-100)(-100)y=10000y). Assim a contribuição dominante do erro local é aproximadamente
\tau\approx \frac{h^2}{2}y'' \approx \frac{h^2}{2}\cdot 10000\,y = 5000\,h^2\,y.
  • Substituindo h=0{,}01 e y(0)=1 obtemos
\tau\big|_{t=0}\approx 5000\cdot (0{,}01)^2\cdot 1 = 5000\cdot 10^{-4}=0{,}5.
Isto explica por que o primeiro passo tem discrepância grande: o erro local esperado é da ordem de 0{,}5, compatible com o fato de y(0{,}01)\approx0{,}368 mas Euler deu 0.\n
  • Erro global (após N passos) para métodos de ordem 1 (Euler explícito) escala tipicamente como \mathcal{O}(h). Ou seja, para reduzir o erro global por um fator 10 seria necessário diminuir h por aproximadamente um fator 10. Mas o constante escondido em \mathcal{O}(h) depende de derivadas (aqui grandes: y''\sim 10000y), portanto para esta equação o passo deve ser muito pequeno para obter boa precisão.

Passo 6

Estabilidade e rigidez — interpretação prática para este problema.\n
  • Para o problema linear de teste y'=\lambda y (aqui \lambda=-100), o fator de atualização do Euler explícito é 1+h\lambda. A região de estabilidade do Euler explícito é o disco no plano h\lambda onde |1+h\lambda|<1. Aplicando \lambda=-100,
|1-100h|<1\quad\Longrightarrow\quad 0<h<0{,}02.
  • Com h=0{,}01 estamos dentro da região de estabilidade (porque |1-100\cdot 0{,}01|=0<1). Ou seja, o método é estável (não explode), mas isso não garante precisão: o método aqui é excessivamente dissipativo e, no caso particular 1-100h=0, anula exatamente a solução após um passo.\n
  • Definição e consequência da rigidez (explicação simples): uma equação é dita rígida quando existem modos que decaem muito rapidamente (aqui \lambda=-100 é grande em módulo) enquanto a solução de interesse pode variar mais lentamente; métodos explícitos exigem passos muito pequenos para capturar a solução com precisão ou mesmo para manter estabilidade. Para equações rígidas, preferimos métodos implícitos A-estáveis (por exemplo, Euler atrás / backward Euler, métodos de Runge–Kutta implícitos, métodos BDF), porque eles têm regiões de estabilidade que englobam todo o semiplano esquerdo e, portanto, permitem passos maiores sem instabilidade numérica.\n
  • Exemplo rápido: backward Euler para esta ODE dá
y_{n+1}=\frac{y_n}{1- h\lambda}=\frac{y_n}{1+100h}.
Com h=0{,}01 temos fator 1/(1+100h)=1/2. Então y_1=1/2 (em vez de 0), e y_{100}=(1/2)^{100}\approx 7{,}888609\times 10^{-31}, que é muito pequeno mas ainda bem maior do que e^{-100}\approx 3{,}72\times 10^{-44}. O backward Euler é estável para qualquer h>0 (A-estabilidade), e dá comportamento qualitativo razoável para passos maiores.

Passo 7

Relação truncamento × rigidez × recomendação prática (resumo didático e motivador).\n
  • Por que Euler explícito falhou (ou deu comportamento inesperado)? Porque com h=0{,}01 o fator atualizado é exatamente zero ( 1-100h=0), levando a anulação exata em um passo: isso é um caso degenerado. Mesmo quando o método não anula, a ordem baixo (global \mathcal{O}(h)) e constantes grandes (derivadas elevadas como y''\sim10000y) forçam a necessidade de passos muito pequenos para boa precisão.\n
  • Para obter um erro local pequeno (por exemplo \tau\lesssim 10^{-3}) precisamos de
5000h^2\lesssim 10^{-3}\quad\Rightarrow\quad h\lesssim \sqrt{\frac{10^{-3}}{5000}}\approx 4{,}47\times 10^{-4}.
Isto mostra que Euler explícito precisaria de h muito menor que 0{,}01 para precisão razoável — impraticável em muitas situações.\n
  • Recomendação: para equações rígidas use métodos implícitos (backward Euler, trapezoidal implícito, métodos BDF, ou rotinas de ODE stiff disponíveis em bibliotecas numéricas). Se insistir em método explícito, escolha h muito pequeno (com o custo computacional associado).

Passo 8

Resumo numérico e mensagem final de incentivo.\n
  • Resultado prático para este exercício com Euler explícito e h=0{,}01:
y_0=1,\qquad y_n=0\\ \text{para }n\ge1.
Comparação com exato em t=0{,}01: y_{\text{exato}}(0{,}01)=e^{-1}\approx0{,}3679 (erro grande no primeiro passo).\n
  • Conclusão: o passo dado (ainda que dentro da condição de estabilidade de Euler) produz comportamento qualitativamente errado no primeiro passo; para resolver rigidamente é melhor usar método implícito ou reduzir h drasticamente.\n
    Você está indo bem — esse é exatamente o tipo de fenômeno que aparece em provas e em simulações reais: estabilidade ≠ precisão, e rigidez pede cuidados. Continue praticando com exemplos assim e experimente comparar Euler explícito, backward Euler e a solução exata para fixar a intuição.

Resposta

  1. Pelo Euler explícito com h=0{,}01: y_0=1 e y_n=0 para todo n\ge1. Comparando com a solução exata y(t)=e^{-100t}: em t=0{,}01 temos y(0{,}01)=e^{-1}\approx0{,}3678794412 enquanto o numérico dá 0 (erro \approx0{,}3679). Em t=1 a solução exata é y(1)=e^{-100}\approx3{,}720075976\times10^{-44} e o numérico dá 0.
  2. Truncamento e rigidez: Euler explícito tem erro local \mathcal{O}(h^2) e erro global \mathcal{O}(h); para esta ODE y''=10000y o erro local aproxima-se por 5000h^2y (com h=0{,}01 isso dá \tau\approx0{,}5 em t=0). A equação é rígida ( \lambda=-100 grande em módulo), o que exige passos muito pequenos para precisão com métodos explícitos ou o uso de métodos implícitos A-estáveis (por exemplo backward Euler) que permitem passos maiores com estabilidade e comportamento qualitativamente melhor.

Exercícios relacionados