Paprastas iteracijos metodas, dar vadinamas metodunuoseklus artinimas yra matematinis algoritmas nežinomo dydžio vertei rasti laipsniškai tobulinant. Šio metodo esmė yra ta, kad, kaip rodo pavadinimas, palaipsniui išreiškiant tolesnius iš pradinio aproksimavimo, gaunami vis tobulesni rezultatai. Šis metodas naudojamas norint rasti kintamojo vertę tam tikroje funkcijoje, taip pat sprendžiant tiesinių ir netiesinių lygčių sistemas.
Apsvarstykime, kaip šis metodas įgyvendinamas sprendžiant SLAE. Paprastas iteracijos metodas turi tokį algoritmą:
vienas.Konvergencijos sąlygos įvykdymo tikrinimas pradinėje matricoje. Konvergencijos teorema: jei pradinė sistemos matrica turi įstrižainės dominavimą (ty kiekvienoje eilutėje pagrindinės įstrižainės elementų modulis turi būti didesnis nei antrinių įstrižainių modulo elementų suma), tada paprastojo metodo pasikartojimai yra kartojami.
2.Pradinės sistemos matrica ne visada turi įstrižainę. Tokiais atvejais sistemą galima konvertuoti. Konvergencijos sąlygą tenkinančios lygtys paliekamos nepažeistos, o su tomis, kurios netenkina, sudaro tiesinius derinius, t. padauginkite, atimkite, sudėkite lygtis kartu, kol bus gautas norimas rezultatas.
Jei gautoje sistemoje pagrindinėje įstrižainėje yra nepatogūs koeficientai, tada formos terminai sui* xaš, kurio ženklai turi sutapti su įstrižainės elementų ženklais.
3. Gautos sistemos pavertimas įprasta forma:
su-= β-+ α * x-
Tai galima padaryti įvairiais būdais, pavyzdžiui, taip: iš pirmosios lygties išreikškite x1 per kitus nežinomus, nuo antrojo - x2, nuo trečio - x3 ir kt. Šiuo atveju mes naudojame formules:
αt= - (at / aii)
i= bi/ aii
Reikėtų dar kartą patikrinti, ar gaunama normalios formos sistema atitinka konvergencijos sąlygą:
∑ (j = 1) | αt| ≤ 1, o i = 1,2, ... n
4. Mes iš tikrųjų pradedame taikyti patį nuoseklių artimųjų metodą.
su(0)yra pradinis aproksimavimas, per jį išreiškiame x(1), tada per x(1) išreikšti x(2)... Bendroji matricos formulė atrodo taip:
sun)= β-+ α * x(n-1)
Skaičiuojame, kol pasieksime reikiamą tikslumą:
maks. | xi(k) -xi(k + 1) ≤ ε
Taigi pritaikykime paprastą kartojimo metodą praktiškai. Pavyzdys:
Išspręskite SLAE:
4,5x1-1,7x2 + 3,5x3 = 2
3,1x1 + 2,3x2-1,1x3 = 1
1,8x1 + 2,5x2 + 4,7x3 = 4 tiksliai ε = 10-3
Pažiūrėkime, ar įstrižainės elementai vyrauja moduliu.
Matome, kad konvergencijos sąlygą tenkina tik trečioji lygtis. Mes transformuojame pirmąjį ir antrąjį, pridėkite antrąjį prie pirmosios lygties:
7,6x1 + 0,6x2 + 2,4x3 = 3
Atimkite pirmąjį iš trečiojo:
-2,7x1 + 4,2x2 + 1,2x3 = 2
Pradinę sistemą pavertėme lygiaverte:
7,6x1 + 0,6x2 + 2,4x3 = 3
-2,7x1 + 4,2x2 + 1,2x3 = 2
1,8x1 + 2,5x2 + 4,7x3 = 4
Dabar grąžinkime sistemą į normalią padėtį:
x1 = 0,3947-0,0789x2-0,3158x3
x2 = 0,4762 + 0,6429x1-0,2857x3
x3 = 0,8511-0,383x1-0,5319x2
Pakartotinio proceso konvergencijos tikrinimas:
0,0789 + 0,3158 = 0,3947 ≤ 1
0,6429 + 0,28857 = 0,9286 ≤ 1
0,383+ 0,5319 = 0,9149 ≤ 1, t.y. sąlyga yra įvykdyta.
0,3947
Pradinis derinimas x(0) = 0,4762
0,8511
Pakeitus šias reikšmes į normalios formos lygtį, gaunamos šios vertės:
0,08835
su(vienas)= 0,486793
0,446639
Pakeisdami naujas vertes, gausime:
0,215243
su(2)= 0,405396
0,558336
Tęsiame skaičiavimus, kol priartėjame prie nurodytą sąlygą tenkinančių verčių.
0,18813
su(7)= 0,441091
0,544319
0,188002
su(aštuoni) = 0,44164
0,544428
Patikrinkime gautų rezultatų teisingumą:
4,5 * 0,1880 -1,7 * 0,441 + 3,5 * 0,544 = 2,0003
3,1 * 0,1880 + 2,3 * 0,441-1,1x * 0,544 = 0,9987
1,8 * 0,1880 + 2,5 * 0,441 + 4,7 * 0,544 = 3,9977
Rezultatai, gauti pakeičiant rastas reikšmes į pradines lygtis, visiškai atitinka lygties sąlygas.
Kaip matome, paprastas iteracijos metodas duoda gana tikslius rezultatus, tačiau šiai lygčiai išspręsti teko skirti daug laiko ir sudėtingų skaičiavimų.