Dom

Runge Kutta metoda za diferencijalne jednadžbe. Numeričke metode rješavanja običnih diferencijalnih jednadžbi. Eulerova metoda i Runge-Kutta metoda za rješavanje diferencijalnih jednadžbi. Izlaz formula za izračun

Pretpostavimo da trebamo pronaći rješenje diferencijalne jednadžbe

g’ = f(t, g),

zadovoljavajući početni uvjet

da(t 0) = g 0 .

Načelo na kojem se temelji Runge–Kutta metoda može se objasniti, kao i načelo na kojem se temelji Eulerova metoda, korištenjem proširenja funkcije u Taylorov red

Da držim Taylorin kurac u redu n-tog reda, potrebno je izračunati n-ti izvod zavisne varijable. Pri korištenju modificirane Eulerove metode, za dobivanje druge derivacije u obliku konačnih razlika, bilo je dovoljno znati nagib krivulje na krajevima promatranog intervala. Za izračun treće derivacije u obliku konačnih razlika potrebno je imati vrijednosti druge derivacije u najmanje dvije točke. Za to je potrebno dodatno odrediti nagib krivulje u nekoj međutočki intervala h, tj. između tn I n 1 t+ . Očito, što je veći red izvedenice koja se izračunava, to će više dodatnih bodova trebati izračunati unutar intervala. Budući da postoji nekoliko načina pozicioniranja unutarnje točke i izbor relativnih težina za pronađene derivacije, tada Runge–Kutta metoda, u biti, kombinira cijelu obitelj metoda rješenja diferencijalne jednadžbe.

Najčešći je metoda četvrtog reda, koji sadrži sve uvjete Taylor serije, uključujući h 4 . Izračuni ovom klasičnom metodom izrađuju se prema formulama:

Eulerova metoda i njezina modifikacija su u biti Runge-Kutta metode prvog i drugog reda. Veća točnost Runge-Kutta metode omogućuje povećanje koraka integracije h. Dopuštena pogreška na koraku određuje njegovu najveću vrijednost. U aplikacijskim softverskim paketima odabir koraka često se vrši automatski. Da biste to učinili, izračuni se prvo provode u koracima h, a zatim - u koracima h/2.

Za procjenu pogreške izračuna s koracima h/2 možemo uzeti približnu formulu

gdje je izračunata vrijednost u inkrementima h/2; y n– izračunata vrijednost u inkrementima h. Primjer: g’ = xy.

Prilikom implementacije Runge-Kutta metode na računalu, dvostruko se broji za svaku točku. Ako vrijednosti dobivene u ovom slučaju zadovoljavaju izraz (5.4), tada za točku t n+1 korak se udvostručuje, inače se prepolovljuje. Međutim, treba imati na umu da je izraz (5.4) približan čak i za nepovoljni uvjeti Možete dobiti potpuno pogrešne rezultate, iako je u većini slučajeva situacija u redu.

Najpopularnije među klasičnim eksplicitnim metodama u jednom koraku su Runge-Kutta metode. Najjednostavnijim predstavnicima ove klase metoda mogu se smatrati Eulerova, Euler-Cauchyjeva metoda i poboljšana Eulerova metoda.

1. Izvođenje formula za izračun.

Objasnimo izvođenje računskih formula Runge-Kutta metode. Neka (kao u § 14.5) rješenje

diferencijalna jednadžba koja zadovoljava uvjet. Jednakost (14.58) zapisujemo u sljedećem obliku:

Ako bi se integral uključen u ovu jednakost mogao točno izračunati, tada bi se dobila jednostavna formula koja bi omogućila sekvencijalno izračunavanje vrijednosti rješenja u čvorovima mreže. Budući da je to u stvarnosti nemoguće, pokušajmo dobiti približnu formulu zamjenom integrala kvadraturnim zbrojem (vidi 13. poglavlje).

Uvedimo pomoćne čvorove na segmentu , Imajte na umu da Zamjenom integrala uključenog u jednakost (14.66) s kvadraturnom sumom s čvorovima, dobivamo približnu jednakost

Međutim, nemoguće je koristiti jednakost (14.67) za izračune, budući da su vrijednosti funkcije y u točkama za nepoznate. Da bismo pronašli te vrijednosti, zapisujemo jednakosti

slično jednakosti (14.66). Zamjenjujući za svaki integral uključen u formulu (14.68) odgovarajuću kvadraturnu formulu s čvorovima, dolazimo do približnih jednakosti

omogućujući sekvencijalno izračunavanje aproksimacija vrijednosti

Označimo sada pomoćnim veličinama koje imaju značenje aproksimacija vrijednosti, neka budu aproksimacije vrijednosti nagib k u točki Tada formule za izračun poprimaju oblik

Često su pomoćne količine isključene iz ovih formula i formule se pišu na sljedeći način:

Imajte na umu da izvedene formule definiraju eksplicitnu metodu obrasca u jednom koraku gdje se vrijednosti desne strane pomoćnih točaka koriste za izračun vrijednosti funkcije. Stoga se ova metoda naziva eksplicitna Runge-Kutta metoda.

Izbor specifičnih vrijednosti parametara temelji se na različitim razmatranjima. Naravno, jedan od glavnih je želja da se redoslijed aproksimacije učini što je moguće većim.

2. Stabilnost i konvergencija.

Sljedeći teorem nam omogućuje da Runge-Kutta metode koje imaju red aproksimacije dalje nazivamo metodama reda točnosti.

Teorem 14.7. Neka desni dio diferencijalna jednadžba zadovoljava uvjet Tada je svaka eksplicitna Runge-Kuttina metoda stabilna na konačnom intervalu

Posljedica. Neka je uvjet zadovoljen. Tada ako eksplicitna -stupnjeva Runge-Kutta metoda ima red aproksimacije, tada konvergira s redom točnosti.

Valjanost korolara slijedi iz teorema 14 4.

3. Obitelj eksplicitnih dvostupanjskih metoda.

Izvedimo formule za izračun za familiju eksplicitnih dvostupanjskih Runge-Kutta metoda drugog reda točnosti. Zapišimo formule eksplicitne dvostupanjske metode

Parametri ove metode su količine Zamislite pogrešku aproksimacije

Rješenje diferencijalne jednadžbe u obliku proširenja u potencije Taylorove formule

uzimajući u obzir jednakosti daje formulu

(izostavljamo argumente funkcije i njezine parcijalne derivacije).

Predstavimo vrijednost funkcije u točki koristeći Taylorovu formulu za funkciju dviju varijabli sa središtem u točki

Tako,

Ako zahtijevamo da uvjeti budu ispunjeni (što je ekvivalentno izboru), tada će prva dva člana u formuli za nestati, pa će stoga metoda imati drugi red aproksimacije.

Dakle (uzimajući u obzir korolar teorema 14.7), to možemo reći za bilo koju metodu

ima točnost drugog reda.

Imajte na umu da s formulom (14.69) daje Euler-Cauchyjevu metodu, a s poboljšanom Eulerovom metodom (vidi § 14.5).

4. Runge-Kutta metoda četvrtog reda točnosti.

Najpoznatija Runge-Kutta metoda je klasična -fazna metoda četvrtog reda točnosti:

Ova metoda je vrlo jednostavna i, kao što pokazuje praksa, prilično učinkovita u običnim izračunima, kada segment nije jako velik i potrebna je relativno niska točnost.

Komentar. Primjena metode (14.70) na rješavanje problema izračuna integrala (14.36) generira Simpsonovu formulu

Dakle, klasična Runge-Kutta metoda četvrtog reda točnosti (14.70) može se smatrati analogom Simpsonove formule, koja odgovara rješenju Cauchyjevog problema.

Primjer 14.15. Demonstriramo rad Runge-Kutta metode četvrtog reda točnosti u odnosu na rješavanje Cauchyjevog problema (14.45). U ovom slučaju, formule za izračun imaju oblik

Približne vrijednosti rješenja pronađene s koracima i njihove pogreške dane su u tablici. 14.4.

Tablica 14.4 (pogledajte sken)

5. Rasprava o metodama Runge-Kutta.

Runge-Kutta metode imaju nekoliko prednosti koje određuju njihovu popularnost među značajnim brojem istraživača. Ove metode je lako programirati. Imaju dovoljna svojstva točnosti i stabilnosti za širok raspon zadataka. Ove metode (kao i sve metode u jednom koraku) pokreću se same od sebe i omogućuju vam jednostavnu promjenu koraka integracije u bilo kojoj fazi izračuna.

Povećanjem broja pomoćnih točaka moguće je konstruirati Runge-Kutta metode bilo kojeg reda točnosti. Međutim, već s

Ove metode se koriste vrlo rijetko. To se objašnjava pretjeranom glomaznošću dobivenih računskih formula i činjenicom da su prednosti metoda visokog reda točnost nad metodama u kojima se očituju ili u onim problemima gdje je potrebna vrlo visoka točnost i koriste se visokobitna računala, ili u onim problemima gdje je rješenje vrlo glatko. Osim toga, Runge-Kutta metode visokog reda točnosti često se pokažu manje učinkovitima u usporedbi s Adamsovim metodama istog reda točnosti (vidi § 14 7).

Napomena i Uz gore opisane klasične eksplicitne Runge-Kutta metode, također se koriste teže implementirane implicitne Runge-Kutta metode:

Ove metode imaju niz prednosti u odnosu na eksplicitne metode, međutim, to se postiže na račun značajne komplikacije računskog algoritma, budući da je u svakom koraku potrebno riješiti sustav nelinearne jednadžbe. Trenutno se implicitne Runge-Kutta metode koriste uglavnom za rješavanje takozvanih teških problema (vidi § 14 11).

6. Automatski odabir koraka.

Imajte na umu da moderni programi koji implementiraju Runge-Kutta metode nužno koriste neki algoritam za automatsku promjenu koraka integracije

Intuitivno je jasno da se u područjima glatkih promjena u otopini brojanje može provesti u prilično velikim koracima. Istovremeno, u onim područjima gdje nagle promjene ponašanje rješenja, potrebno je odabrati mali korak integracije. Obično početnu vrijednost koraka određuje korisnik. Zatim se korak integracije mijenja u skladu s vrijednošću procjene lokalne pogreške dobivene tijekom izračuna. Promjena samog koraka za metode Runge-Kutta (kao i za sve druge metode u jednom koraku) nije teška. Pravi problem je kako procijeniti lokalnu pogrešku i odabrati sljedeći korak integracije.

Jedan uobičajeni pristup je korištenje Ruteova pravila (pravilo dvostruke pretvorbe) Neka vrijednost bude u točki

već je pronađeno rješenje jednadžbe koje zadovoljava uvjet. Označimo aproksimacijom vrijednost dobivenu metodom jednog koraka

Ovdje će dovesti do lokalne pogreške

Oduzimanjem jednakosti (14.73) od jednakosti (14.72) dobivamo formulu

Usporedbom s (14.73) dolazi se do približne jednakosti

Upotreba ove formule za a posteriornu procjenu lokalne pogreške vrijednosti (koja se naknadno uzima kao približna vrijednost rješenja Cauchyjevog problema u točki i naziva se Routeovim pravilom. Imajte na umu da ova metoda kontrole točnosti vodi do povećanja vremena izračuna za približno 50%.

Postoje ekonomičnije metode za procjenu lokalne pogreške, temeljene na upotrebi dviju različitih Runge-Kutta metoda za kontrolu točnosti. Trenutno jedan od naj učinkovite metode Ova vrsta je Runge-Kutta-Fehlberg metoda. Ova metoda koristi formule metode četvrtog reda za procjenu pogreške metode petog reda točnosti, au jednom koraku potrebno je samo šest izračuna vrijednosti desne strane

Nakon što je lokalna pogreška procijenjena na ovaj ili onaj način, program odlučuje hoće li korak integracije ostaviti isti, smanjiti ga za pola ili udvostručiti. To se događa približno na isti način kao u adaptivnim programima dizajniranim za izračunavanje određeni integrali(vidi § 13.5). Poznato je da kada optimalan izbor koraka integracije, apsolutne pogreške koje se mogu pripisati svakom od koraka trebaju biti približno jednake (vidi). Ovaj rezultat se uzima u obzir pri izradi standardnih programa s automatskim odabirom koraka.

7. Utjecaj računske pogreške.

Utjecaj pogrešaka na rezultat izračuna korištenjem eksplicitnih Runge-Kutta metoda približno je isti kao za Eulerovu metodu (vidi § 14.4). Međutim, za njih, osim toga, visoka točnost metoda omogućuje integraciju s relativno velikim korakom i stoga je utjecaj računske pogreške obično beznačajan.

Klasična Runge-Kutta metoda 4 reda

Tema 6.3. Runge-Kutgy metoda

Runge-Kutta metode- važna obitelj numeričkih algoritama za rješavanje (sustava) običnih diferencijalnih jednadžbi. Ove iterativne metode eksplicitnog i implicitnog približnog izračuna razvili su oko 1900. njemački matematičari K. Runge i M. V. Kutta.

Formalno, Runge-Kutta metode su modificirana i ispravljena Eulerova metoda; one predstavljaju sheme točnosti drugog reda. Postoje standardne sheme trećeg reda koje se ne koriste široko. Najčešće se koristi i implementira u razne matematičke pakete (Maple, MathCAD, Maxima) standardna shemačetvrti red (vidi dolje). Ponekad se pri izvođenju izračuna s povećanom točnošću koriste sheme petog i šestog reda.

Runge-Kutta metoda 4. reda toliko je raširena da se često naziva jednostavno Runge-Kutta metoda.

Razmotrimo Cauchyjev problem. Tada se vrijednost u sljedećoj točki izračunava pomoću formule:

Veličina koraka mreže je .

Ova metoda ima 4. red, tj. pogreška u svakom koraku je O(h5), a ukupna pogreška u konačnom intervalu integracije je O(h4).

Obitelj izravnih Runge-Kutta metoda je generalizacija Runge-Kutta metode 4. reda. Daje se formulama

Specifična metoda određena je brojem s i koeficijentima bi,aij i ci. Ovi koeficijenti su često organizirani u tablicu

Bit Eulerove metode je prijelaz s infinitezimalnih inkremenata u jednadžbi na konačne: (1)

oni. u zamjeni derivacije s približnom relacijom konačnih razlika:

gdje je h = ∆x - korak integracije.

Odavde (3)

Uzimajući u obzir približno rješenje u točki kao nove početne uvjete, možemo koristiti formulu (3) za pronalaženje vrijednosti željene funkcije y(x) u sljedećoj točki. U opći slučaj Eulerova formula izgleda ovako: (4)

Eulerovu metodu možemo geometrijski interpretirati na sljedeći način: funkcija y(x) zamijenjena isprekidanom linijom, koja predstavlja segmente tangenti na ovu funkciju u čvorovima (sl. 5.1).

Riža. 5.1. Eulerova metoda

Prednosti Eulerove metode su njezina jednostavnost i preglednost, nedostaci su relativno niska točnost (ima točnost prvog reda) i sustavno gomilanje pogrešaka. Točnost i stabilnost rješenja uvelike ovise o veličini koraka integracije. Za procjenu pogreške i odabir koraka može se primijeniti Rungeova formula .

Runge-Kutta metode drugog reda

Runge-Kutta metode drugog reda temelje se na proširenju funkcije y(x) u Taylorov niz i uzimanju u obzir prva tri člana (do i uključujući drugu derivaciju).

Runge-Kutta metoda drugog reda s punim korakom provodi se prema formuli:

Njegova geometrijska interpretacija (sl. 6.1.) je sljedeća:

1. Približno izračunajte vrijednost funkcije u točki x i +h pomoću Eulerove formule i nagib integralne krivulje u ovoj točki

2. Pronađite prosječni nagib u koraku h:

3. Pomoću ovog nagiba specificirana je vrijednost y i +1 prema formuli (6.1.).


Formula metode Drugi red Runge-Kutta s polukorakom izgleda kao

Runge-Kutta metoda je jedna od najčešće korištenih metoda visoka preciznost. Eulerova metoda može se smatrati kao najjednostavnija opcija Runge-Kutta metoda.

Razmotrimo Cauchyjev problem za diferencijalnu jednadžbu

y"(t) = f(t, y(t))

s početnim stanjem g(t 0) = g 0.

Kao u Eulerovoj metodi, odabiremo korak h= i izgraditi mrežu sa sustavom čvorova t ja = t 0 + ih, ja= 0, 1, …, n.

Označimo sa g ja približna vrijednost željenog rješenja u točki t ja .

Dajmo računske formule metode Runge-Kutta četvrtog reda točnosti:

g ja+ 1 = g ja + h(k+ 2k+ 2k + k),

k = f(t ja , g ja),

k = f(t ja + , g ja + k), (6.17)

k= f(t ja + , g ja + k),

k = f(t ja +h, y ja + hk),

ja= 0, 1, …, n.

Procjena pogreške. Razred pogreške metode Runge-Kutta su teške. Gruba procjena pogreške dana je Rungeovim pravilom (vidi odjeljak 6.2). Budući da metoda Runge-Kutta ima četvrti red točnosti, tj. str= 4, tada će procjena pogreške (6.6) imati oblik

R |y-y|. (6.18)

Koristeći Rungeovo pravilo, moguće je sa zadanom točnošću konstruirati postupak za aproksimativni izračun rješenja Cauchyjevog problema Runge-Kutta metodom četvrtog reda točnosti. . Potrebno je započeti izračune od određene vrijednosti koraka h, uzastopno smanjite ovu vrijednost za pola, svaki put računajući približnu vrijednost g, ja= 0, 1, …, n. Izračuni se zaustavljaju kada se ispuni uvjet:

R |y-y| < . (6.19)

Približno rješenje bile bi vrijednosti g, ja= 0, 1, …, n.

Primjer 6.4.

Runge-Kutta metodom četvrtog reda točnosti pronaći ćemo rješenje na segmentu sljedećeg Cauchyjevog problema.

y"(t) = 2ty, g(0) = 1. (6.20)

Napravimo korak h = 0,1. Zatim n= = 10.

U skladu s (6.17), formule za izračun će imati oblik:

g ja+ 1 = g ja + h(k+ 2k+ 2k + k),

k = 2t ja g ja ,

k = 2(t ja +)(g ja + k), (6.21)

k= 2(t ja +)(g ja + k),

k = 2(t ja +h)(g ja + hk),

ja= 0, 1, …, 10.

Zadatak (6.20) ima točno rješenje: g(t) = e, stoga je pogreška definirana kao apsolutna vrijednost razlike između točne i približne vrijednosti ja = |g(t ja) - g ja |.

Približne vrijednosti rješenja pronađene pomoću formula (6.21) g ja i njihove greške ja prikazani su u tablici 6.5:

Tablica 6.5

t ja

g ja

t ja

g ja

Ciljevi za bodovanje u kolegiju “Računarske metode”

Bilješka. Svaki student prvo mora odrediti parametar svog ispitnog zadatka, s= log 10 (1 +), gdje je k- broj studenta na popisu grupe, k= 1, 2, ... Rješenje zadataka mora biti pažljivo pripremljeno i sadržavati sve međuizračune. Kao uzorak možete uzeti primjere o kojima se govori u relevantnim odjeljcima smjernica.

1. Koristeći metodu dijeljenja segmenta na pola, pronađite korijen jednadžbe

4(1 - x 2) - e x = s s preciznošću = 10 -3 .

2. Seidelovom metodom riješiti sustav jednadžbi s točnošću =10-3.

6.2+s 2.2+s 1.2+s 16.55+s

A = 2.2+s 5.5+s -1.5+s , b = 10.55+s.

1.2+s -1.5+s 7.2 +s 16.80+s

3. Odredite aproksimaciju funkcije f(x) = e sx na segmentu Taylorovim polinomom s točnošću = 10 -3. Izračunati e s .

4. Približno izračunajte integral pri n= 4 i procijenite pogrešku rezultata.

5. Pomoću Eulerove metode pronaći numeričko rješenje Cauchyjevog problema

g" = 2sy; g(0) = 1, na segmentu s korakom h = 0.2.

Usporedite s točnim rješenjem.



Što još čitati