Runge–Kutta-menetelmät

Runge–Kutta-menetelmät ovat erittäin keskeisiä numeerisen analyysin menetelmiä differentiaaliyhtälöiden ratkaisuun. Menetelmiä kehittivät saksalaiset matemaatikot Carl Runge ja Martin Wilhelm Kutta, joista Kutta julkaisi menetelmän vuonna 1895 artikkelissa Ueber die numerische Auflösung von Differentialgleichungen ja Kutta kehitti tätä edelleen vuonna 1901 julkaisussaan Beitrag zur naherungsweisen Integration von Differentialgleichungen.Hazewinkel, M. Encyclopaedia of Mathematics. volume 8. Kluweir Academic Publisher, 1992 Runge-Kutta-menetelmille on runsaasti sovelluskohteita muun muassa fysiikan ja tilastotieteen alalla. 

Eräs Runge-Kutta-menetelmien hyvistä puolista on se, ettei sen käyttäminen edellytä funktion derivaatan laskemista. Tästä ominaisuudesta on erityisesti hyötyä ratkaistaessa stokastisia differentiaaliyhtälöitä numeerisesti. Korpelainen, E. Stokastisen differentiaaliyhtälön ratkaiseminen runge-kutta-menetelmällä. Tilastotieteen tutkimuksia. Joensuun Yliopisto, Yhteiskuntatieteiden tiedekunta, 1989, sivut 8-9. Runge-Kutta-menetelmät ovat myös asymptoottisesti stabiileja eli hyvin pienillä askeleen arvoilla saadaan häiriön kasvu rajattua tietyn rajan alle. Menetelmää käytettäessä tarvitaan tietoa vain funktion edellisestä arvosta, muttei aiemmista. Tämän vuoksi askelpituuden muuttaminen on helppoa. Runge-Kutta-menetelmän huonoja puolia on se, että apuarvoja ei käytetä kovin hyvin hyödyksi, vaikka näihin voikin joissakin tapauksissa perustaa virhearvioita. Menetelmä on myös laskennallisesti melko raskas, koska se vaatii useiden funktion arvojen laskemisen joka kierroksella, mikä voi olla työlästä, erityisesti, jos funktio on monimutkainen. Mäkelä, M., Nevanlinna, O. ja Virkkunen, J. Numeerinen matematiikka. Gaudeamus, kolmas painos, sivu 229 

Neljännen kertaluvun Runge–Kutta-menetelmä
Menetelmän kuvaus
Tunnetuin Runge–Kutta-menetelmistä on neljännen kertaluvun Runge–Kutta, johon viitataan lyhenteellä "RK4" ja hyvin usein pelkkänä "Runge–Kutta-menetelmänä".

Olkoon alkuarvo-ongelmana

Nyt RK4-menetelmä voidaan kirjoittaa seuraavasti:

jossa h merkitsee käytettyä aika-askelta ja yn+1 on RK4-menetelmän approksimaatio arvosta y(tn+1) ja

Kertoimet ki ovat tulkittavissa mallinnettavan funktion kulmakertoimiksi välin eri pisteissä. Arvo k1 on kulmakerroin välin alkupisteessä, k2 on Eulerin menetelmällä laskettu approksimaatio puolivälin kulmakertoimesta, k3 samoin käyttäen k1:n sijaan k2:a laskuissa ja k4 on k3:a hyödyntäen laskettu kulmakertoimen arvo välin päätepisteessä. Näistä otetaan lopuksi keskiarvo painottaen puolivälin kulmakertoimia.

Tarkkuus
RK4:n tarkkuus on sen nimen mukaisesti neljättä kertalukua, eli menetelmän virhe on verrannollinen käytetyn aika-askeleen h neljänteen potenssiin. Aika-askelta kohti virhe menetelmässä on h5, ja koska askelia tarvitaan 1/h aikayksikköä kohden, on kokonaisvirhe verrannollinen suureeseen h4.

Low Storage Runge–Kutta -menetelmät
Taustaa
Neljännen kertaluvun Runge–Kutta-menetelmässä tarvitaan uutta arvoa laskettaessa vanhan arvon lisäksi neljä aputulosta. Tietokoneella mallintaessa tämä tarkoittaa, että muistinkäyttö menetelmällä on viisi kertaa mallinnettavan systeemin koko. Suurissa mallinnuksissa tämä saattaa merkitä hyvinkin suurta kuormaa jopa nykyisten tietokoneiden muistimäärille. Tällaista varten on kehitetty ns. Low Storage eli pienen tallennuskapasiteetin Runge–Kutta-menetelmät.

Kahden muistipaikan Runge–Kutta
Kahta muistipaikkaa käyttävä Runge–Kutta-menetelmä voidaan esittää seuraavassa muodossa. Aluksi asetetaan
 ja 
Sitten lasketaan 

ja lopuksi saadaan

Algoritmissa esiintyvä m merkitsee vaiheiden määrää ja siitä riippuu myös vakioiden Ai ja Bi arvot. Huomataan, että ohjelmakoodina algoritmissa tarvitaan vakioiden lisäksi ainoastaan muuttujat dyi ja yi. Artikkelissaan  Carpenter ja Kennedy esittelevät vakioiden Ai ja Bi johtamista sekä arvot muun muassa viisivaiheiselle kahden muistipaikan neljännen kertaluvun Runge–Kuttalle eli "(5,4) 2N-Storage RK"

Runge-Kutta-menetelmä tietokoneella

Runge-Kutta-menetelmää voidaan simuloida lähes millä tahansa numeeriseen laskentaan kykenevällä ohjelmalla, jopa Excelillä. Esimerkiksi Matlab-ohjelmassa on valmiita komentoja, joilla voidaan ratkaista differentiaaliyhtälöitä numeerisesti Runge-Kutta-menetelmää käyttäen. Karris, S. T. Numerical Analysis Using MATLAB and Excel. Orchard Publications, kolmas painos, 2007

Katso myös

Eulerin menetelmä
Numeerinen analyysi

Lähteet

 Kirjallisuutta 


Luokka:Numeerinen analyysi