Método de Dormand-Prince
Em análise numérica, Dormand-Prince é um método para resolução de equações diferenciais ordinárias (EDOs). O método é um membro da família de métodos Runge-Kutta para resolvedores de EDOs. Mais precisamente, ele avalia seis vezes a função para calcular soluções acuradas de quarta e quinta ordem. A diferença entre essas soluções é então tomada como o erro da solução (de quarta ordem). Esta estimativa de erro é muito conveniente pra algoritmos de integração adaptativos. Outros métodos de integração parecidos são o método de Runge-Kutta-Fehlberg (RKF) e o método Cash-Karp (RKCK) (tradução correta?).
O método Dormand–Prince tem sete estágios, mas ele usa apenas seis avaliações de função por passo porque ele tem a propriedade "Primeiro igual ao último" (em inglês, First Same As Last - FSAL): o último estágio de um passo é avaliado no mesmo ponto que o primeiro estágio do próximo passo. Dormand and Prince escolheram os coeficientes de seu método para minimizar o erro da solução de quinta ordem. Esta é a principal diferença com relação ao método de Fehlberg, que foi construído de modo que a solução de quarta ordem tenha um erro pequeno. Por essa razão, o método de Dormand–Prince é mais adequado quando a solução de ordem alta é usada para continuar a integração, uma prática conhecida como interpolação local. (Hairer, Nørsett & Wanner 1993).(Hairer, Nørsett & Wanner 1993, pp. 178–179).
Atualmente, Dormand–Prince é o método padrão no resolvedor de EDOs (ode45) do MATLAB e do GNU Octave e é a escolha padrão para o resolvedor Simulink's model explorer. Está disponível também uma implementação livre em Fortran do algoritmo, chamada DOPRI5.[1]
A matriz de Butcher do método é:
0 | ||||||||
1/5 | 1/5 | |||||||
3/10 | 3/40 | 9/40 | ||||||
4/5 | 44/45 | −56/15 | 32/9 | |||||
8/9 | 19372/6561 | −25360/2187 | 64448/6561 | −212/729 | ||||
1 | 9017/3168 | −355/33 | 46732/5247 | 49/176 | −5103/18656 | |||
1 | 35/384 | 0 | 500/1113 | 125/192 | −2187/6784 | 11/84 | ||
5179/57600 | 0 | 7571/16695 | 393/640 | −92097/339200 | 187/2100 | 1/40 | ||
35/384 | 0 | 500/1113 | 125/192 | −2187/6784 | 11/84 | 0 |
A primeira linha de coeficientes b fornece a solução acurada de quinta ordem e a segunda linha tem ordem quatro.
Notas e referências
Referências
[editar | editar código-fonte]- Implementação em software livre no GNU Octave: https://web.archive.org/web/20081007102422/http://octave.sourceforge.net/doc/f/ode45.html
- Dormand J, Prince P. A family of embedded Runge–Kutta formulae. Journal of Computational and Applied Mathematics, Volume 6, pages 19–26 (1980)
- Hairer, Ernst; Nørsett, Syvert Paul & Wanner, Gerhard (1993), Solving ordinary differential equations I: Nonstiff problems, Berlin, New York: Springer-Verlag, ISBN 978-3-540-56670-0