# Mètodes de Runge-Kutta

En càlcul numèric, els mètodes de Runge–Kutta són una família de mètodes iteratius implícits i explícits per la integració d'equacions diferencials ordinàries. Aquests mètodes van ser desenvolupats al voltant del 1900 pels matemàtics alemanys Carle David Tolmé Runge i Martin Wilhelm Kutta.

## Descripció

Els mètodes de Runge-Kutta (RK) són un conjunt de tècniques numèriques per a l'aproximació de solucions d'equacions diferencials ordinàries, i concretament, permeten aproximar una solució al problema de valor inicial.
Sigui
    $y'(t)=f(t,y(t))\,$
una equació diferencial ordinària, amb $f:\Omega \subset \mathbb {R} \times \mathbb {R} ^{n}\to \mathbb {R} ^{n}$ on $\Omega \,$ és un conjunt obert, juntament amb la condició que el valor inicial de ƒ sigui
    $(t_{0},y_{0})\in \Omega .$
Llavors el mètode RK (d'ordre s) té la següent expressió, en la seva forma més general:
    $y_{n+1}=y_{n}+h\,\sum _{i=1}^{s}b_{i}k_{i}$,
on h és el pas per la iteració o, cosa que és el mateix, l'increment $\Delta t_{n}$ entre els successius punts $t_{n}$ i $t_{n+1}$. Els coeficients $k_{i}$ són termes d'aproximació intermedis, avaluats en ƒ de manera local
    $k_{i}=f\left(t_{n}+h\,c_{i}\,,y_{n}+h\,\sum _{j=1}^{s}a_{ij}k_{j}\right)\quad i=1,...,s.$
amb $a_{ij},b_{i},c_{i}$ coeficients propis de l'esquema numèric elegit, depenent de la regla de quadratura utilitzada. Els esquemes Runge-Kutta poden ser explícits o implícits depenent de les constants $a_{ij}$ de l'esquema. Si aquesta matriu és triangular inferior amb tots els elements de la diagonal principal iguals a zero; és a dir, $a_{ij}=0$ per a $j=i,...,s$, els esquemes són explícits.

## El mètode de Runge-Kutta clàssic

El mètode més conegut de la família de mètodes de Runge-Kutta és l'anomenat habitualment "RK4" o mètode clàssic de Runge-Kutta.
Com en qualsevol mètode de solució d'equacions diferencials ordinàries l'objectiu és trobar una funció $y(t)$ que compleixi:
    ${\frac {dy}{dt}}=f(t,y),\quad y(t_{0})=y_{0}.$
I igual en altres mètodes numèrics, anem trobant estimacions pel valor de $y(t)$ per successius valors de la variable independent $t$, en passos de mida $h$. O sigui, l'objectiu en cada pas és, donat un valor de $y(t_{i})$, trobar una bona aproximació del valor de $y(t_{i+1})$ on $t_{i+1}=t_{i}+h$.
La derivada ${\frac {dy}{dt}}$ (que és el pendent de la gràfica de $y(t)$) és coneguda a $t_{i}$, perquè sabem el valor de $y$ i $t$ en aquest punt i podem substituir a ${\frac {dy}{dt}}=f(t,y)$, i si el pendent fos constant entre $t_{i}$ i $t_{i+1}$ podríem calcular fàcilment $y(t_{i+1})$. Ara bé, en general, el pendent no serà constant, i tot i que suposar que és constant podria ser una aproximació útil (seria el mètode d'Euler), millorar l'aproximació tenint en compte la variació del pendent milloraria el resultat.
Per això, el mètode RK4 fa servir successivament quatre aproximacions de la derivada entre $t_{i}$ i $t_{i+1}$ (vegeu el gràfic):
* $k_{1}$ és el pendent al principi de l'interval (a $t_{i}$), com faria el mètode d'Euler.
* Fent servir el pendent $k_{1}$ aproximem el valor de $y(t_{i}+{\frac {h}{2}})$, o sigui, al centre de l'interval. $k_{2}$ és el pendent en aquest punt.
* Fent servir el pendent $k_{2}$ tornem a aproximar el valor de $y(t_{i}+{\frac {h}{2}})$, que en general ens donarà una aproximació diferent de l'anterior. El pendent en aquest punt és $k_{3}$.
* Amb el pendent $k_{3}$ aproximem el valor de la funció a $y(t_{i}+h)$, o sigui, al final de l'interval. El pendent en aquest punt és $k_{4}$.
Amb tot això tenim una aproximació a l'inici de l'interval, dues al centre i una al final. La variació del valor de $y(t)$ entre $t_{i}$ i $t_{i+1}$ serà la integral del pendent en aquest interval, que en aquest mètode es calcula numèricament amb la regla de Simpson, que pondera els valors al centre i als extrems de l'interval donant un pes de ${\frac {4}{6}}$ al centre i ${\frac {1}{6}}$ a cada extrem.
    ${\begin{aligned}y_{i+1}&=y_{i}+{\frac {1}{6}}h\cdot \left(k_{1}+2k_{2}+2k_{3}+k_{4}\right),\\t_{i+1}&=t_{i}+h\\\end{aligned}}$
on
    ${\begin{aligned}k_{1}&=\ f(t_{i},y_{i}),\\k_{2}&=\ f\left(t_{i}+{\frac {h}{2}},y_{i}+h\cdot {\frac {k_{1}}{2}}\right),\\k_{3}&=\ f\left(t_{i}+{\frac {h}{2}},y_{i}+h\cdot {\frac {k_{2}}{2}}\right),\\k_{4}&=\ f\left(t_{i}+h,y_{i}+h\cdot k_{3}\right).\end{aligned}}$
i $y_{i}=y(t_{i})$

## Vegeu també

* Mètode d'Euler, un altre mètode numèric per resoldre equacions i diferencials ordinàries, que és més senzill i menys exacte, però té punts en comú amb els mètodes de Runge-Kutta.

## Referències

* ↑ Devries, Paul L.; Hasbun, Javier E. A first course in computational physics. Segona edició. Jones and Bartlett Publishers, 2011, p. 215.
* ↑ E. Boyce, William; C. DiPrima, Richard. Elementary Differential Equation and Boundary Value Problem (en anglès). 10a. JohnWiley & Sons, Inc, 2012, p. 468. ISBN 978-0-470-45831-0.
* ↑ Press et al. 2007, p. 908; Süli & Mayers 2003, p. 328

## Bibliografia

* Runge, Carl David Tolmé «Über die numerische Auflösung von Differentialgleichungen». Mathematische Annalen, Springer, 46, 2, 1895, pàg. 167-178. DOI: 10.1007/BF01446807.
* Kutta, Martin «Beitrag zur näherungweisen Integration totaler Differentialgleichungen». Zeitschrift Für Mathematik Und Physik, 1901, pàg. 499.
* Ascher, Uri M.; Petzold, Linda Ruth. Computer methods for ordinary differential equations and differential-algebraic equations. Primera edició. Philadelphia (USA): SIAM, 1998. ISBN 0898714125.
* Burden, Richard L.; Faires, J. Douglas. Análisis Numérico. Setena edició. Cengage Learning Latin America, 2001. ISBN 9706861343.
* Press, William H.; Teukolsky, Saul A.; Vetterling, William T.; Flannery, Brian P. «Section 17.1 Runge-Kutta Method». A: Cambridge University Press. Numerical Recipes: The Art of Scientific Computing. 3rd, 2007. ISBN 978-0-521-88068-8. . Vegeu també: Section 17.2. Adaptive Stepsize Control for Runge-Kutta Arxivat 2011-08-11 a Wayback Machine..
* Süli, Endre; Mayers, David. Cambridge University Press. An Introduction to Numerical Analysis, 2003. ISBN 0-521-00794-1. .