Ir para o conteúdo

Calculadora do Método de Euler

Digite dy/dx = f(x, y), um ponto inicial e um valor final, e obtenha a solução aproximada pelo método de Euler, pelo método de Euler melhorado (Heun) ou pelo Runge–Kutta de quarta ordem, com a tabela completa de passos incluindo cada inclinação, o erro em relação à solução exata (ou a uma referência precisa), o que acontece quando o passo é dividido ao meio e um gráfico do campo de direções com a solução traçada por cima. Grátis, sem cadastro.

Use x para a variável independente e y para a incógnita, com + − * / ^ e parênteses: x + y, x*y, y*(1 − y), sin(x) − y. Funções: sin, cos, tan, exp, ln, sqrt e outras.

Se você conhece a solução exata, digite-a em x para ver o erro verdadeiro; caso contrário, usa-se uma referência RK4 muito precisa.

Resultados

3,1874849

Aproximação de y(1)

3,4365637

y(1) exata

-0,249

Erro

0,1

Tamanho do passo h

10

Passos n

O método

yₙ₊₁ = yₙ + h·f(xₙ, yₙ): segue a inclinação no início de cada passo. O erro global é proporcional a h.

Tabela de passos

nxₙyₙk1y(xₙ) exataErro
001110
10,11,11,21,1103418-0,0103
20,21,221,421,2428055-0,0228
30,31,3621,6621,3997176-0,0377
40,41,52821,92821,5836494-0,0554
50,51,721022,221021,7974425-0,0764
60,61,9431222,5431222,0442376-0,101
70,72,19743422,89743422,3275054-0,13
80,82,48717763,28717762,6510819-0,164
90,92,81589543,71589543,0192062-0,203
1013,18748493,4365637-0,249

Os três métodos com o mesmo passo

Métodoy no fimErro
Método de Euler3,1874849-0,249
Euler melhorado (Heun)3,4281617-0,0084
Runge–Kutta 43,4365595-0,00000417

Dividindo o passo ao meio (Método de Euler)

nhy no fimErro
100,13,1874849-0,249
200,053,3065954-0,13
400,0253,3701277-0,0664
800,01253,4029699-0,0336

Para o método de Euler, o erro cai aproximadamente à metade quando h é dividido ao meio; para o de Heun, cai a um quarto; para o RK4, a um dezesseis avos.

Gráfico

  • Solução exata
  • Método de Euler
Campo de direções de dy/dx = f(x, y) com a solução de Método de Euler de x = 0 até x = 100,20,40,60,81123xy

Como usar a calculadora do método de Euler

  1. 1. Digite a equação. Escreva o lado direito de dy/dx = f(x, y) usando x e y: x + y, y*(1 - y), sin(x) - y.
  2. 2. Informe a condição inicial e o fim. Digite x₀, y₀ = y(x₀) e o valor de x até o qual resolver. O fim pode ficar à esquerda de x₀.
  3. 3. Escolha o passo. Digite um tamanho de passo h ou troque para um número de passos n. Se h não dividir o intervalo exatamente, a calculadora o ajusta e avisa você.
  4. 4. Escolha um método e leia a tabela. Cada linha mostra xₙ, yₙ e as inclinações usadas. Se você conhece a solução exata, digite-a para ver o erro verdadeiro.

Os três métodos

MétodoPassoErro global
Euleryₙ₊₁ = yₙ + h·f(xₙ, yₙ)proporcional a h
Euler melhorado (Heun)yₙ₊₁ = yₙ + (h/2)(k₁ + k₂), com k₁ = f(xₙ, yₙ) e k₂ = f(xₙ + h, yₙ + h·k₁)proporcional a h²
Runge–Kutta 4yₙ₊₁ = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄)proporcional a h⁴

O método de Euler segue a reta tangente no início de cada passo. O método de Heun faz a média entre a inclinação no início e a inclinação no fim previsto, por isso também é chamado de regra do trapézio explícita. O Runge–Kutta 4 amostra a inclinação quatro vezes por passo e pondera essas amostras por 1, 2, 2 e 1. Esses são os métodos de Burden e Faires, Numerical Analysis, capítulo 5.

Exemplo prático: y′ = x + y, y(0) = 1

A solução exata é y = 2eˣ − x − 1, portanto y(1) = 2e − 2 ≈ 3,4365637. Com o método de Euler e h = 0,1, os primeiros passos são:

nxₙyₙinclinação f(xₙ, yₙ)y(xₙ) exata
00111
10,11,11,21,1103418
20,21,221,421,2428055
30,31,3621,6621,3997176

Por exemplo, y₁ = 1 + 0,1 × (0 + 1) = 1,1 e y₂ = 1,1 + 0,1 × (0,1 + 1,1) = 1,22. Após dez passos, o método de Euler chega a y(1) ≈ 3,1874849, com erro de −0,2491: ele subestima porque a solução verdadeira é convexa e as retas tangentes ficam abaixo dela.

Passos n (h)Erro de Euler em x = 1Erro de HeunErro do RK4
10 (0,1)−0,2491−0,0084−0,0000042
20 (0,05)−0,1300−0,0022−0,00000027
40 (0,025)−0,0664−0,00056−0,000000017
80 (0,0125)−0,0336−0,00014−0,0000000011

Cada divisão de h pela metade reduz o erro de Euler aproximadamente à metade, o de Heun a um quarto e o do RK4 a um dezesseis avos, como as ordens da tabela preveem. Para igualar o erro do RK4 com n = 10, o método de Euler precisaria de várias centenas de milhares de passos.

Como ler o campo de direções e o erro

Os segmentos curtos no gráfico mostram a inclinação f(x, y) em uma grade de pontos: a solução verdadeira é uma curva tangente aos segmentos em todos os pontos. A solução numérica é desenhada como uma poligonal por cima; se você informar a solução exata, ela é desenhada tracejada ao lado. Sem uma solução exata, a coluna de erro compara com um valor de referência obtido pelo RK4 com pelo menos 2.000 passos, muito mais preciso que qualquer método escolhido aqui. Algumas equações explodem em tempo finito, como y′ = y² com y(0) = 1 em x = 1; a tabela para onde os valores se tornam infinitos.

Perguntas frequentes

Como funciona o método de Euler?
Ele constrói a solução passo a passo. A partir do ponto (xₙ, yₙ), calcula a inclinação f(xₙ, yₙ) pela equação diferencial e avança ao longo dessa reta tangente por uma distância horizontal h, obtendo yₙ₊₁ = yₙ + h·f(xₙ, yₙ). Cada novo ponto é o ponto de partida do passo seguinte.
Quão preciso é o método de Euler?
Seu erro local por passo é proporcional a h², mas os erros se acumulam ao longo de cerca de 1/h passos, então o erro global é proporcional a h. Dividir o passo ao meio reduz o erro à metade. É um bom método para aprender e um método ruim quando se precisa de precisão.
O que é o método de Euler melhorado?
O método de Euler melhorado, ou método de Heun, primeiro dá um passo de Euler para prever o fim do intervalo e depois faz a média entre a inclinação ali e a inclinação no início. Essa correção de segunda ordem torna o erro global proporcional a h² em vez de h, ao custo de duas avaliações de inclinação por passo.
Como escolher o tamanho do passo?
Use a tabela de divisão pela metade: reduza h até que a resposta deixe de mudar nos algarismos que importam para você. O método de Euler precisa de um h pequeno, mas o RK4 alcança a mesma precisão com um h bem maior. Equações rígidas (com componentes que decaem rapidamente) podem exigir um h pequeno em qualquer desses métodos.
Ela resolve equações de segunda ordem ou sistemas?
Não. Ela resolve uma única equação de primeira ordem dy/dx = f(x, y). Uma equação de segunda ordem pode ser reescrita como um sistema de primeira ordem, mas esta ferramenta não resolve sistemas.
Por que a solução para no meio do caminho?
Os valores se tornaram infinitos, o que acontece quando a solução verdadeira explode em tempo finito ou quando o passo é grande demais para uma equação instável. A tabela termina na última linha finita, e a mensagem indica o valor de x próximo ao qual isso aconteceu.

Ferramentas relacionadas

Mais em Calculadoras de matemática