9. HDV Cauchy ülesannete ligikaudne lahendamine
9. HDV Cauchy ülesannete ligikaudne lahendamine
9. HDV Cauchy ülesannete ligikaudne lahendamine
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>9.</strong> <strong>HDV</strong> <strong>Cauchy</strong> <strong>ülesannete</strong><strong>ligikaudne</strong> <strong>lahendamine</strong>Käesolevas peatükis vaatleme ligikaudseid meetodeid 1. järku harilike diferentsiaalvõrrandite(<strong>HDV</strong>) <strong>Cauchy</strong> <strong>ülesannete</strong> lahendamiseks.1. järku normaalkujulise <strong>HDV</strong> <strong>Cauchy</strong> ülesanne on järgmine:u ′ (t) = f(t, u(t)), t ∈ R , u(t 0 ) = u 0 , (<strong>9.</strong>1)kus t 0 ja u 0 on etteantud arvud ja f(t, u) on mingi kahemuutuja funktsioon.Enamik ligikaudseid meetodeid ülesande (<strong>9.</strong>1) lahendamiseks on üles ehitatudjärgmisel põhimõttel. Fikseeritakse mingid sõlmedt 0 < t 1 < t 2 < t 3 < . . .ja otsitakse ülesande lahendi u lähisväärtusi nendes sõlmedes, st arveu 1 , u 2 , u 3 , . . .nii, et u i ≈ u(t i ). Võib liikuda ka punktist t 0 negatiivses suunas, st fikseeridasõlmed t 0 > t 1 > t 2 > t 3 > . . . ja määrata u i ≈ u(t i ). Viimast juhtu me eraldikäsitlema ei hakka. Negatiivses suunas antud ülesande saab lihtsa muutujavahetusega teisendada positiivses suunas antud ülesandeks.Üldiselt toimub suuruste u i arvutamine rekursiivselt, st u i+1 arvutatakseeelnevate väärtuste u i , u i−1 , . . . põhjal. Siinkohal võib meetodid jagada kaheks.Ühesammuliste meetodite puhul kasutatakse u i+1 arvutamiseks ainult eelnevatväärtust u i . Mitmesammuliste meetodite puhul kasutatakse u i+1 arvutamiseksväärtusi u i , u i−1 , . . . , u i−k+1 , kus k > 1 (k on meetodi samm). Kuna alguses onteada ainult u 0 , tuleb k-sammulise meetodi algväärtuste u 1 , . . . , u k−1 leidmiseksalguses kasutada ühesammulist või k-st väksema sammuga meetodit.Järgnevates alampeatükkides eeldame lihtsuse mõttes, et sõlmed on võrdsetevahedega, st t i − t i−1 = h, kus h > 0.<strong>9.</strong>1. Euleri meetodKirjutame võrrandi (<strong>9.</strong>1) üles punktis t i , stu ′ (t i ) = f(t i , u(t i ))ja asendame seal esineva tuletise diferentsvalemiga sammuga ette, st(valem (6.1)). Saameu ′ (t i ) ≈ 1 h (u(t i+1) − u(t i ))1h (u(t i+1) − u(t i )) ≈ f(t i , u(t i )).43
Siit avaldame u(t i+1 ):u(t i+1 ) ≈ u(t i ) + hf(t i , u(t i )). (<strong>9.</strong>2)Saame järgmise seose otsitava lahendi ligikaudsete väärtuste jaoks:u i+1 = u i + hf(t i , u i ). (<strong>9.</strong>3)Tegemist on ühesammulise meetodiga, mida tuntakse Euleri meetodi nime all.Euleri meetod on 1. järku täpsusega. Absoluutse vea hinnang punktis t i onjärgmine:kus C on konstant.|u i − u(t i )| ≤ Ch,<strong>9.</strong>2. Trapetsvalemi meetod. Prognoosi-korrektsiooniskeem.2. järku Runge-Kutta meetodIntegreerime diferentsiaalvõrranditlõigul [t i , t i+1 ]:u ′ (t) = f(t, u(t))∫ ti+1t iu ′ (t)dt =∫ ti+1t if(t, u(t))dt.Newton-Leibnitzi valemi põhjal kehtib ∫ t i+1t iu ′ (t)dt = u(t i+1 ) − u(t i ). Järelikult∫ ti+1u(t i+1 ) = u(t i ) + f(t, u(t))dt. (<strong>9.</strong>4)t iKasutame selles võrrandis sisalduva integraali jaoks trapetsvalemit (7.10) kahesõlmega t i ja t i+1 :∫ ti+1t if(t, u(t))dt ≈ h 2[]f(t i , u(t i )) + f(t i+1 , u(t i+1 )) . (<strong>9.</strong>5)Asendades integraali ∫ t i+1t if(t, u(t))dt valemi (<strong>9.</strong>5) põhjal avaldisse (<strong>9.</strong>4), saamejärgmise võrduse:u(t i+1 ) ≈ u(t i ) + h 2 f(t i, u(t i )) + h 2 f(t i+1, u(t i+1 )). (<strong>9.</strong>6)Seega tekib järgmine valem lahendi ligikaudsete väärtuste jaoks:u i+1 = u i + h 2 f(t i, u i ) + h 2 f(t i+1, u i+1 ) . (<strong>9.</strong>7)44
See on nn trapetsvalemi meetod.Trapetsvalemi meetod on 2. järku täpsusega, st aboluutse vea hinnang punktist i on järgmine:|u i − u(t i )| ≤ Ch 2 .Tegemist on ühesammulise meetodiga, mis on ilmutamata. Suurus u i+1esineb lisaks vasakule poolele ka paremal pool funktsiooni f all. Seega tulebu i+1 leidmiseks lahendada võrrand. Võrrandi <strong>lahendamine</strong> igal meetodi sammulmuudab selle meetodi töömahukaks.Trapetsvalemi meetodi saab muuta ilmutatuks kasutades nn prognoosi-korrektsiooniskeemi.Selle põhimõte on järgmine. Esmalt arvutame Euleri meetoditkasutades suuruse u i+1 jaoks esialgse lähendi (prognoosi)ū i+1 = u i + hf(t i , u i ). (<strong>9.</strong>8)Seejärel asendame ū i+1 võrrandi (<strong>9.</strong>7) paremasse poolde funktsiooni f alla:u i+1 = u i + h 2 f(t i, u i ) + h 2 f(t i+1, ū i+1 ) . (<strong>9.</strong>9)Valemist (<strong>9.</strong>9) arvutame u i+1 täpsustatud väärtuse (korrektsiooni). Seega koosnebprognoosi-korrektsiooniskeemi iga samm kahest alamsammust. Meetod onteist järku täpsusega nii nagu trapetsvalemi meetodki.Prognoosi-korrektsioonimeetodi kaks alamsammu saab väga lihtsalt kokkuvõtta üheks sammuks. Selleks asendame ū i+1 (<strong>9.</strong>8) põhjal valemisse (<strong>9.</strong>9).Saame järgmise ühesammulise meetodi:u i+1 = u i + h 2 f(t i, u i ) + h )(t2 f i+1 , u i + hf(t i , u i ) . (<strong>9.</strong>10)Tegemist on teist järku Runge-Kutta meetodiga.Runge-Kutta meetodeid on palju ja nad on praktikas väga populaarsed. Olgu siinkohalveel näiteks toodud üks väga sageli kasutatav 4. järku täpsusega Runge-Kutta meetod:u i+1 = u i + 1 6 [F 1 + 2F 2 + 2F 3 + F 4 ] ,F 1 = hf(t i , u i ),()F 2 = hf t i + h 2 , u i + 1 2 F 1 ,()F 3 = hf t i + h 2 , u i + 1 2 F 2 ,F 4 = hf(t i + h, u i + F 3 ).kus<strong>9.</strong>3. Adamsi meetodidÜks võimalus mitmesammuliste meetodite tuletamiseks on asendada funktsioonf tema interpolatsioonipolünoomiga ja seejärel integreerida saadud võrrandit.Sellisel viisil saadud meetodeid nimetatakse Adamsi meetoditeks. Vaatlemesiinkohal konkreetselt Adams-Bashforthi meetodit.45
Tuletame meelde, et võrrandi u ′ (t) = f(t, u(t)) integreerimisel rajades t ikuni t i+1 saime järgmise valemi (vt (<strong>9.</strong>4)):∫ ti+1u(t i+1 ) = u(t i ) + f(t, u(t))dt. (<strong>9.</strong>11)t iOlgu k positiivne täisarv. Konstrueerime ülimalt k-astme polünoomi Φ k , misinterpoleerib funktsiooni f(t, u(t)) sõlmedes t i−k , . . . , t i , st rahuldab tingimusiΦ k (t i−j ) = f(t i−j , u(t i−j )) , j = 0, . . . , k.Kuna interpolatsioonipolünoom lähendab funktsiooni f, siisJärelikult∫ ti+1t if(t, u(t)) ≈ Φ k (t) .f(t, u(t))dt ≈Asendades (<strong>9.</strong>12) valemisse (<strong>9.</strong>11) saame∫ ti+1∫ ti+1u(t i+1 ) ≈ u(t i ) + Φ k (t)dt.t it iΦ k (t)dt . (<strong>9.</strong>12)Lahendi lähisväärtuste jaoks tuleneb siit järgmine valem:∫ ti+1u i+1 = u i + Φ k (t)dt. (<strong>9.</strong>13)t iTegemist on k + 1. järku Adams-Bashforthi meetodiga.On võimalik näidata, et selle meetodi algoritmi saab teisendada järgmiselekujule:u i+1 = u i +k∑γ k,j f(t i−j , u i−j ) , (<strong>9.</strong>14)j=0kus γ k,j on teatavad kordajad.γ k,j arvulisi väärtusi võib leida arvutusmeetodite käsiraamatutest. Näiteks olgu siinkohaltoodud γ k,j väärtused kuni k = 3-ni:k0 h123γ k,0 . . . γ k,k32 h − 1 2 h2312 h − 1612 h 512 h5524 h − 5924 h 3724 h − 9 24 hSeega 1. järku Adams-Bashforthi meetod on järgmine (langeb kokku Euleri meetodiga):u i+1 = u i + hf(t i , u i ),46
teist järku Adams-Bashforthi meetod on järgmine:jne.u i+1 = u i + 3h 2 f(t i, u i ) − h 2 f(t i−1, u i−1 )Meetod on k + 1-sammuline. Tõepoolest, nagu algoritmist (<strong>9.</strong>14) nähtub, onsuuruse u i+1 arvutamiseks vaja suurusi u i , u i−1 , . . . , u i−k .Nagu eespool öeldud, on meetod k + 1. järku. Seega avaldub absoluutse veahinnang punktis t i järgmiselt:|u i − u(t i )| ≤ Ch k+1 .47