Métodos de Runge-Kutta
Produzido por Bruno PestanaTeoria
Introdução
Mas que raios de método com nome estranho é esse? Seguinte, vem comigo.
Dos métodos numéricos que nós conhecemos que servem para calcular a solução aproximada de problemas de valor inicial (PVI), os métodos de Runge-Kutta são os mais utilizados.
Isso acontece, devido a sua simplicidade e precisão, bem próximo aos métodos de Taylor. Só que diferença é que ele é mais vantajoso, já que conseguimos fugir daquelas derivadas de ordem elevada, que além de ser mega complicado de resolver, exigiria um esforço gigante computacional.
E muito pelo contrário, é um método baseado em avaliar a função em alguns pontos. Os métodos de Runge-Kutta simplesmente pegam as coisas boas do método de série de Taylor e tiram as derivadas haha. Show de bola né?
E eles tem três propriedades principais:
- São de passo 1;
- Não precisa calcular derivada nenhuma! No lugar, calculamos ou ;
- A fórmula do método concorda com a do método de série de Taylor até os termos da ordem do método.
Pela propriedade deu pra perceber que esse método tem diferentes ordens né? Vamos dar uma olhada nelas!
Métodos de 1ª ordem
O método de Runge-Kutta de primeira ordem é o mais simples. Não tem muitos parâmetros para determinar, e coincide com o método de Euler e também com o de Taylor de ordem 1.
Hmmm... como assim?
A série de Taylor de primeira ordem fica assim:
Como vimos ali encima, a diferença do método de Runge-Kutta (RK) para o método de Taylor é que em RK nós simplesmente tiramos a derivada e trocamos por :
Reconheceu? É o método de Euler! Coisa que nós já conhecemos bem!
Métodos de 2ª ordem
Os métodos de Runge-Kutta de segunda ordem têm a seguinte fórmula geral:
Eita! Ta feio isso né? Podemos substituir aí e . Vai ficar mais ou menos assim:
Não sei pra você.... mas isso me lembra alguma coisa! O método de Euler Aperfeiçoado... pois é, é mais um método de Runge-Kutta que nós conhecemos bem.
Só pra recapitular, tem umas condições pra que nosso atual método (RK) combine com o ex (Série de Taylor de 2ª ordem) hahahahaha.
Vamos precisar que:
Seguindo essas condições, existem infinitos métodos além do de Euler Aperfeiçoado que são métodos de Runge-Kutta de 2ª ordem.
Métodos de ordem superior
Existem métodos de Runge-Kutta para a ordem que quisermos, vamos dar uma olhadinha em 3ª e 4ª ordem:
3ª ordem:
O método de RK de quarta ordem é bem popular, tem uma abordagem parecida com o de Euler modificado, já que ele deseja desenvolver várias estimativas para a inclinação e utiliza a média para melhorar o intervalo.
4ª ordem:
É isso aí, meio ruim de gravar né? Pode ser que seu professor nem cobre ou ensine esses de ordem mais alta, mas é melhor prevenir haha.
O grande problema, é que depois da 4ª ordem aumenta a complexidade computacional.
Considerações finais
Apesar dos métodos de Runge-Kutta corrigirem um problema que é o cálculo de derivadas, eles não são perfeitos. Temos a desvantagem de não existir uma maneira simples de estimarmos o erro, portanto pode ser difícil escolher um .
Para a nossa sorte, 99% das vezes esse é dado e não precisamos entrar nessa parte de estimação de erros 😉
Algoritmo
Então, o que fazemos aqui é simplesmente adicionar mais termos a medida que aumentamos a ordem! Então uma possibilidade pra implementar esses métodos seria pegar o algoritmo do método de Euler Aperfeiçoado e só mudar a função de iteração, sem muito mistério.