You are on page 1of 176

Univerzitet u Zenici

V
I
UN

ER

ZITET U Z E

N
IC
I

ST

ZE

UDIORUM

Mainski fakultet

Aleksandar Kara

Numerike metode u inenjerstvu

Zenica, 2008.

IC

UNIVER

AEN IS S
T

SI

Predgovor Ovaj udbenik je namijenjen studentima dodiplomskog studija Mainskog fakulteta ...... Poglavlja u udbeniku u potpunosti zadovoljavaju plan i .... Na kraju, autor bi se zahvalio ....

Sadraj
Predgovor Sadraj 1 Uvod 1.1 Osnovne ideje i koncepti u numerikoj analizi . . . . . 1.1.1 Iteracija, konvergencija, rekurzija . . . . . . . . 1.1.2 Linearizacija, aproksimacija, ekstrapolacija . . . 1.2 Znaajne cifre, tanost, greke i predstavljanje brojeva 1.2.1 Znaajne cifre . . . . . . . . . . . . . . . . . . . 1.2.2 Preciznost i tanost . . . . . . . . . . . . . . . . 1.2.3 Greke . . . . . . . . . . . . . . . . . . . . . . . 1.2.4 Predstavljanje brojeva . . . . . . . . . . . . . . 1.3 Taylorov red za funkcije jedne promjenljive . . . . . . . 2 Rjeavanje nelinearnih jednaina 2.1 Osnovne karakteristike u pronalaenju korijena 2.1.1 Lokalizacija nula . . . . . . . . . . . . 2.1.2 Poboljanje rjeenja . . . . . . . . . . . 2.1.3 Ponaanje nelinearnih jednaina . . . . 2.1.4 Neke smjernice u traenju korijena . . 2.2 Metode na zatvorenom intervalu . . . . . . . . 2.2.1 Metoda polovljenja intervala . . . . . . 2.2.2 Metoda regula falsi . . . . . . . . . . . 2.3 Metode na otvorenom intervalu . . . . . . . . 2.3.1 Metoda proste iteracije . . . . . . . . . 2.3.2 Newtonova metoda . . . . . . . . . . . 2.3.3 Modikovana Newtonova metoda . . . 2.3.4 Metoda sjeice . . . . . . . . . . . . .
iii

i iii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 3 4 4 5 5 8 8 11 12 12 12 13 15 16 16 18 21 21 25 28 30

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

2.4 2.5

Problemi u numerikom rjeavanju nelinearnih jednaina . . . . 32 Pitanja i zadaci . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 37 38 38 39 48 49 51 54 55 58 60 61 62 65 66 67 70 72 77 77 78 84 87 87 87 89 92 93 95 101 104 105

3 Rjeavanje sistema linearnih jednaina 3.1 Direktne metode . . . . . . . . . . . . 3.1.1 Cramerovo pravilo . . . . . . . 3.1.2 Metode eliminacije . . . . . . . 3.1.3 Matrina metoda . . . . . . . . 3.1.4 Metode faktorizacije . . . . . . 3.1.5 Nedostaci metoda eliminacije . 3.2 Iterativne metode . . . . . . . . . . . . 3.2.1 Jacobijeva metoda . . . . . . . 3.2.2 Gauss-Seidelova metoda . . . . 3.2.3 Metode relaksacije . . . . . . . 3.3 Ostale metode . . . . . . . . . . . . . . 3.4 Pitanja i zadaci . . . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

4 Interpolacija i aproksimacija funkcija 4.1 Interpolacija polinomima . . . . . . . . . . 4.1.1 Direktna metoda . . . . . . . . . . 4.1.2 Lagrangeov interpolacioni polinom . 4.1.3 Newtonovi interpolacioni polinomi . 4.1.4 Greka interpolacije . . . . . . . . . 4.2 Aproksimacija funkcija . . . . . . . . . . . 4.2.1 Metoda najmanjih kvadrata . . . . 4.3 Pitanja i zadaci . . . . . . . . . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

5 Numeriko diferenciranje i integriranje 5.1 Numeriko diferenciranje . . . . . . . . . . . . . . . . 5.1.1 Diferenciranje pomou priblinih polinoma . . 5.1.2 Formule za diferenciranje . . . . . . . . . . . . 5.2 Numeriko integriranje . . . . . . . . . . . . . . . . . 5.2.1 Integriranje pomou priblinih polinoma . . . 5.2.2 Newton-Cotesove formule . . . . . . . . . . . 5.2.3 Gaussove kvadraturne formule . . . . . . . . . 5.2.4 Numeriko izraunavanje viestrukih integrala 5.3 Pitanja i zadaci . . . . . . . . . . . . . . . . . . . . .
iv

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

6 Rjeavanje obinih diferencijalnih jednaina 6.1 O obinim diferencijalnim jednainama . . . 6.2 Rjeavanje problema poetnih vrijednosti . . 6.2.1 Taylorova metoda . . . . . . . . . . . 6.2.2 Metoda konanih razlika . . . . . . . 6.2.3 Eulerova metoda . . . . . . . . . . . 6.2.4 Runge-Kutta metode . . . . . . . . . 6.2.5 Ostale metode . . . . . . . . . . . . . 6.3 Obine diferencijalne jednaine vieg reda . 6.4 Sistem obinih diferencijalnih jednaina . . . 6.5 Rjeavanje problema graninih vrijednosti . 6.5.1 Metoda gaanja . . . . . . . . . . . . 6.5.2 Metoda ravnotee . . . . . . . . . . . 6.6 Pitanja i zadaci . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

109 . 109 . 111 . 112 . 116 . 117 . 122 . 128 . 129 . 132 . 136 . 137 . 141 . 146 151 . 151 . . . . 152 152 153 153 155 157 159 161 167

7 Ukratko o rjeavanju parcijalnih diferencijalnih jednaina 7.1 Ukratko o parcijalnim diferencijalnim jednainama . . . . . . 7.2 Numerike metode za rjeavanje parcijalnih diferencijalnih jednaina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.1 Metoda konanih razlika . . . . . . . . . . . . . . . . . 7.2.2 Metoda konanih volumena . . . . . . . . . . . . . . . 7.2.3 Metoda konanih elemenata . . . . . . . . . . . . . . . Literatura A Softveri za numeriku analizu B Neke korisne web stranice C Formule za pismeni ispit Popis pojmova

Poglavlje 1

Uvod
U ovom udbeniku predstavljene su metode koje se mogu koristiti u rjeavanju matematikih problema koji se pojavljuju u inenjerskim problemima i nauci, a za koje ne postoje tane metode rjeavanja, ili su iste neekasne. S obzirom na pristupanost veoma brzim raunarima u dananje vrijeme, na ovaj nain je mogue veoma brzo dobiti rjeenja visoke tanosti za mnoge probleme sa kojima se suoavaju dananji inenjeri i naunici. Ovo uvodno poglavlje, pak, objanjava osnovne pojmove sa kojima se susreemo u numerikim proraunima. Pored toga, u posljednjem dijelu je data je i lista najee koritenih komercijalnih softvera za numerike proraune koji su na raspolaganju dananjim inenjerima i naunicima.

1.1

Osnovne ideje i koncepti u numerikoj analizi

U veini numerikih metoda primjenjuje se mali broj optih i relativno jednostavnih ideja. Ove ideje se meusobno povezuju sa nekim dodatnim saznanjima o problemu koji se rjeava. U ovom poglavlju date su neke osnovne opte ideje koje se kriju iza numerikih metoda za rjeavanje jednostavnijih problema, a mogu se pojaviti kao dio nekog veeg problema. 1.1.1 Iteracija, konvergencija, rekurzija

Jedan od najee sretanih pojmova u mnogim kontekstima je pojam iteracije (lat. iteration, ponavljanje) ili sukcesivne aproksimacije. Openito govorei, iteracija predstavlja ponavljanje niza radnji ili postupaka, kao to je ponavljanje nekog numerikog procesa, s ciljem poboljanja prethodno dobivenih rezultata.

Uvod

Kako bismo pojasnili pojam iteracije, posmatrajmo problem rjeavanja nelinearne jednaine, date u obliku: x = g(x) (1.1)

gdje je g(x) diferencijabilna funkcija ija se vrijednost moe izraunati za bilo koju vrijednost realne promjenljive x unutar zadatog intervala. Koristei iteraciju, poinje se sa nekom poetnom aproksimacijom x0 , i izraunava se red: x1 = g(x0 ), x2 = g(x1 ), x3 = g(x2 ), ...... xn+1 = g(xn ),

(1.2)

Svaka jednakost oblika xn+1 = g(xn ) naziva se iteracija. Ako niz xn konvergira ka graninoj vrijednosti tada imamo: = lim xn+1 = lim g(xn ) = g()
n n

(1.3)

pa x = zadovoljava jednainu x = g(x). U cilju je da sa porastom n imamo sve bolju procjenu eljenog korijena (rjeenja) jednaine (1.1). Iteracija se zaustavlja kada se dobije eljena tanost. Posljednja formula u nizu (1.2) xn+1 = g(xn ) (1.4)

naziva se rekurzivna ili rekurentna formula. Ove formule predstavljaju jedan od najvanijih elemenata u pisanju numerikih algoritama, s obzirom da se veliki broj komplikovanih prorauna esto moe svesti na mali broj izraza koji su meusobno povezani. Geometrijska interpretacija iteracije je data na slici 1.1. Korijen jednaine (1.1) je dat kao abscisa (i ordinata) presjene take krive y = g(x) i linije y = x. Koristei ideju iteracije i poinjui sa x0 dobijamo taku A0 sa koordinatama (x0 , g(x0 )). Sada se lako dobija taka B1 , jer ima istu vrijednost ordinate kao taka A0 , tj. y = g(x0 ) = x1 . Postupak se zatim ponavlja dok se ne postigne eljena tanost. Sa slike 1.1a se vidi da niz xn monotono konvergira (stepeniasti prol pribliavanja tanom rjeenju). Slika 1.1b pokazuje sluaj u kojem, takoer, proces konvergira, ali ne monotono (sukcesivne iteracije se smjenjuju s lijeva na desno). Meutim, postoje i sluajevi u kojima iterativni proces divergira (slike 1.1c i d).
2

1.1. Osnovne ideje i koncepti u numerikoj analizi

1.1.2

Linearizacija, aproksimacija, ekstrapolacija

Jo jedna od esto koritenih ideja je da se neka komplikovanija funkcija lokalno, tj. u maloj okolini neke take, aproksimira linearnom funkcijom. Upotreba ove ideje e se pokazati na primjerima rjeavanja jednaine f (x) = 0 koristei razne numerike metode date u poglavlju 2. Na primjer, metoda sjeice je klasini primjer upotrebe linearne aproksimacije. Meutim, treba naglasiti i upotrebu kombinovanja ideja linearizacije i iteracije.
a)
f(x) A1 A0 B1 g(x0) M

b)
f(x) A0 A2 A4 A3 M A1

x0

x1 x2 x3

x0

x2 x4 x3 x1

c)
f(x) M B0 B1 B2 A0 A1

d)
f(x)

B3

A2 x2 x1 x0 x x0=x2 x1=x3 x

x3

Slika 1.1: Geometrijska interpretacija iteracije xn+1 = g(xn )

Ipak, linearizacija (neki autori je nazivaju i linearna aproksimacija) ponekad ne moe da omogui rjeavanje problema sa eljenom tanou ili brzinom (na primjer, numerika integracija elementarnih funkcija za koje ne postoji 2 analitiko rjeenje, kao to je integracija primitivnih funkcija ex ili sin x/x). U takvim sluajevima moe se iskoristiti jedna od sljedee dvije vane ideje: Lokalna aproksimacija polinomom vieg reda, ili nekom drugom funkcijom,
3

Uvod

Ekstrapolacija. Na primjer, trapezno pravilo za numeriku integraciju se primijeni na vie razliitih koraka h, a zatim se ekstrapolira za h = 0 (tzv. Richardsonova ekstrapolacija), koristei opte rezultate sa osvrtom na zavisnost greke od koraka h.

1.2

Znaajne cifre, tanost, greke i predstavljanje brojeva

Numeriki prorauni ukljuuju i razne manipulacije brojevima (sabiranje, mnoenje, itd.), pri emu brojevi mogu biti cijeli (npr. 2, 50, -30, itd.), razlomci (npr. 1/2, -3/5, itd.), ili beskonani nizovi cifara (npr. = 3.1415926535 . . .). Pri radu sa numerikim vrijednostima i numerikim proraunima treba imati na umu sljedee koncepte: 1. Znaajne cifre 2. Preciznost i tanost 3. Greke 4. Predstavljanje brojeva 1.2.1 Znaajne cifre

Pojam znaajnih cifara nekog broja predstavlja cifre tog broja za koje se zna da su tane. Openito, svaki inenjerski ili nauni proraun poinje grupom podataka koji imaju poznat broj znaajnih cifara. Kada se ovakvi brojevi procesiraju u nekom numerikom algoritmu, vrlo je vano moi odrediti koliko znaajnih cifara se nalaze u konano proraunatom rezultatu. Postoje razliita tumaenja pojma znaajnih cifara, ali sva se mogu svesti na sljedeih 5 pravila: (i) Sve cifre razliite od nule su znaajne. Na primjer, broj 142.56 ima pet znaajnih cifara, a broj 123456 ima est znaajnih cifara. (ii) Sve nule koje se nalaze izmeu cifara razliitih od nule su znaajne. Na primjer, broj 3001.378 ima 7 znaajnih cifara. (iii) Sve nule koje se nalaze sa desne strane decimalne take (zareza) su znaajne ako slijede cifru razliitu od nule. Na primjer, broj 5.40 ima tri znaajne cifre, ali i broj 5.400 ima tri znaajne cifre.
4

1.2. Znaajne cifre, tanost, greke i predstavljanje brojeva

(iv) Nule koje se u broju nalaze samo da bi oznaile poziciju decimalnog zareza nisu znaajne. Na primjer, broj 0.516 ima tri znaajne cifre, ali i broj 0.0516 ima tri znaajne cifre. Broj 0.05016 ima etiri znaajne cifre, a broj 0.050160 pet znaajnih cifara. (v) Nule koje se mogu izostaviti bez mijenjanja numerike vrijednosti nekog broja nisu znaajne. na primjer, broj 00315.8 ima etiri znaajne cifre. Ipak, i kod ove grupe pravila postoje neke nejasne situacije, kao to je na primjer broj 2040300000, kod kojeg imamo veliki broj nula kojima zavrava broj. U principu, ne postoji savreno rjeenje za ovakav problem, ali veina autora smatra da u tom sluaju posljednjih pet nula nisu znaajne. 1.2.2 Preciznost i tanost

Pojam preciznosti se odnosi na to koliko je neki broj blizu broja koji predstavlja, tj. koja je pozicija posljednje znaajne cifre na desnoj strani decimalnog zareza. Ako je ta pozicija sa lijeve strane decimalnog zareza, onda se preciznost mjeri u desetinama, stotinama i sl. Pojam tanosti, pak, se odnosi na to koliko dobro se neki broj slae sa tanom vrijednosti broja koji predstavlja, tj. koliko ima znaajnih cifara. Na primjer, broj 320.56 ima tanost od 5 znaajnih cifara, i preciznost na 2 decimalna mjesta. S druge strane, broj 321560 ima tanost od 5 znaajnih cifara i preciznost desetina.Na slian nain, broj 0.00000002 ima tanost od jedne znaajne cifre, i preciznost od 8 decimalnih mjesta, ili broj 325000000, sa tri znaajne cifre, i preciznost u milionima. Preciznost i tanost se u numerikim proraunima kvanticiraju grekama. 1.2.3 Greke

Kao to je reeno u prethodnom dijelu, tanost nekog numerikog prorauna se kvanticira grekom prorauna. Pri tome, treba imati u vidu izvore ovih greaka, njihove vrste, te njihovu propagaciju.
Izvori greaka

Numeriki rezultati mogu biti izloeni mnogim tipovima greaka, pri emu se na neke moe veoma teko utjecati, dok se neke druge mogu potpuno eliminisati. Greke se ire (propagiraju) od njihovog izvora prema veliinama koje se kasnije izraunavaju, ponekad sa velikim pojaanjem ili priguenjem. Pri tome je veoma vano napraviti razliku izmeu greke koja se stvorila pri raunanju neke veliine (izvor greke), i greke koja se naslijedila (propagirala) iz podataka od kojih zavisi veliina koja se rauna.
5

Uvod

Sve greke se, s obzirom na izvore nastanka, mogu podijeliti na sljedei nain: Greke pri unosu podataka. Ulazni podaci mogu biti rezultat mjerenja, koje moe biti pod utjecajem sistemskih greaka ili trenutnih poremeaja. Greke usljed zaokruivanja u toku raunanja. Ogranienje broja znaajnih cifara u raunaru moe ponekad dovesti do gubitka informacije koja moe, a ne mora, biti vana. Dva tipina sluaja su: 1. Kada raunar ne moe da manipulie sa brojevima koji imaju vei broj cifara od, na primjer, s, onda taan proizvod dva broja sa s cifara ne moe da se koristi u naknadnim proraunima. 2. Ako se pri proraunu relativno mali broj a doda broju b, onda e neke vrijednosti broja a biti zanemarene, i nee imati nikakav utjecaj na dalji proraun. Greke usljed prekidanja. Ove greke nastaju kada se neki proces prekine prije nego se dobije neka granina vrijednost. Ova greka se javlja kada se, na primjer, beskonaan niz prekida nakon konanog broja lanova, ili kada se neka funkcija aproksimira linearnom funkcijom. Pojednostavljenja u matematikom modelu. U veini problema sa primjenom (numerike) matematike, prave se idealizacije. Tako se, na primjer, moe pretpostaviti da je teina ueta klatna jednaka nuli, moe se usvojiti princip mehanike kontinuuma (iako se tvari sastoje od atoma), i sl. Ovaj tip greaka je ponekad veoma teko procijeniti. Ljudske greke i greke raunara. Pri numerikom rjeavanju problema, mora se oekivati pojava greaka u runom raunanju ili usljed nesporazuma. Osim toga, mora se paziti i na mogunost greaka u knjigama, tabelama ili formulama koje su na raspolaganju. U ove greke spadaju i greke u samim programima, unosu podataka, greke u koritenim operatorima, greke u raunarskim procesorima, i sl.
Apsolutna i relativna greka

Aproksimacija je centralni koncept u gotovo svim oblastima primjene (numerike) matematike, s obzirom da se vrlo esto moramo zadovoljiti sa priblinim vrijednostima sa kojima radimo. Drugi vid aproksimacije je kada zanemarujemo neke veliine koje su male u odnosu na druge. Ovakve aproksimacije su esto neophodne kako problem koji rjeavamo ne bi postao previe komplikovan sa matematikog i numerikog gledita.
6

1.2. Znaajne cifre, tanost, greke i predstavljanje brojeva

Upravo iz prethodno navedenih razloga, javljaju se pojmovi (denicije) apsolutne i relativne greke. Ako je, na primjer, x priblina vrijednost tane vrijednosti x, onda je: apsolutna greka x = | x| x relativna greka xx x = x x (1.6) (1.5)

Neki autori, meutim, greku deniu kao obinu razlika izmeu tane i pribline vrijednosti, mada neki koriste i obinu razliku pribline i tane vrijednosti. Ipak, vrlo je vano napomenuti neke karakteristike u vezi ove dvije vrste greaka. Posmatrajmo, na primjer, neki iterativni postupak u kojem se trai da je apsolutna greka 0.001. Ako je tano rjeenje 100.000, onda je priblina vrijednost jednaka 100.000 0.001 i ima pet znaajnih cifara. Meutim, ako je tano rjeenje jednako 0.001, onda je priblino rjeenje jednako 0.001 0.001 i nema znaajnih cifara. Ovaj primjer ukazuje na opasnost koritenja apsolutne greke kao kriterija tanosti. No, u sluaju kada se poznaje tano rjeenje, kriterij apsolutne greke se moe koristiti za dobivanje tanosti sa traenim brojem znaajnih cifara. U suprotnom, pogodnije je koristiti relativnu greku. Posmatrajmo sada sluaj iterativnog postupka sa relativnom grekom jednakom 0.00001. Ako je tano rjeenje 100.000, onda apsolutna greka mora biti jednaka 100.000 (0.00001) = 0.001 da bi se zadovoljila relativna greka. Ovo znai da e u priblinom rjeenju biti pet znaajnih cifara. Ako je, na primjer, tano rjeenje 0.001, onda apsolutna greka mora biti jednaka 0.001 (0.00001) = 0.0000001 da bi se zadovoljio kriterij relativne greke. Ovo, takoer, dovodi do pet znaajnih cifara. Dakle, relativna greka dovodi do jednakog broja znaajnih cifara u priblinom rjeenju, bez obzira na veliinu tanog rjeenja.
Propagacija greaka

U naunim proraunima dati ulazni podaci su obino netani. Greke u ulaznim podacima se ire (propagiraju) i poveavaju greke na izlazu. Takoer, greke zaokruivanja u svakom koraku prorauna se mogu iriti i dati greke na izlazu. Ipak, u veini algoritama moe se dati analiza greke zaokruivanja, koja za sluajeve sa malim poremeajima ulaznih podataka, pokazuje da je izraunati rezultat uvijek jednak tanom.
7

Uvod

1.2.4

Predstavljanje brojeva

Brojevi se predstavljaju brojnim sistemima (npr. dekadni, oktalni, heksadecimalni, binarni, itd.), koje ini baza sistema. Nasuprot decimalnom sistemu (sa bazom 10), koji je najei sistem u komunikaciji ljudi, digitalni raunari koriste binarni sistem (sistem sa bazom 2), tj. sistem nula i jedinica. U tom sluaju binarni broj se sastoji od binarnih bita. Broj binarnih bita odreuje preciznost kojom binarni broj predstavlja neki decimalni broj. Najea veliina binarnog broja je 32 binarna bita, koji priblino moe predstaviti realni broj sa sedam decimalnih cifara. Neki raunari imaju 64-bitne binarne brojeve, koji predstavljaju 13 ili 14 decimalnih cifara, a neki ak i 128-bitne. Meutim, u mnogim inenjerskim i naunim proraunima 32-bitni binarni brojevi su sasvim dovoljni, ali je i na njima mogue izvriti 64-bitne i 128-bitne proraune, koristei odreena softverska poboljanja. Ovo se postie koritenjem tzv. dvostruke (eng. double precision) ili etverostruke (eng. quad precision) tanosti, respektivno. No, takvi prorauni mogu zahtijevati i do 10 puta vie raunskog vremena od tzv. jednostruke tanosti (eng. single precision). Treba napomenuti da su osim za cijele brojeve i neke razlomke, sve binarne reprezentacije decimalnih brojeva aproksimacije, s obzirom na konanu duinu binarnog zapisa (na primjer, broj 0.2 u binarnom zapisu ima beskonaan oblik 0.00110011...). Na taj nain, gubitak preciznosti u binarnoj reprezentaciji decimalnih brojeva se ne moe izbjei. Situacija se pogorava kada se izvravaju aritmetike operacije sa takvim binarnim reprezentacijama, jer se taan rezultat ne moe tano predstaviti binarnim brojevima koje digitalni raunar moe predstaviti. Ovdje je rezultat zaokruen na posljednju binarnu cifru na raspolaganju. Ovo zaokruivanje poveava greku zaokruivanja, koja se moe akumulisati sa poveanim brojem kalkulacija.

1.3

Taylorov red za funkcije jedne promjenljive

S obzirom da se e se u tekstu vrlo esto pojavljivati potreba za koritenjem Taylorovog reda, u daljem tekstu je dato objanjene istog za funkciju jedne promjenljive. Moe se pokazati da se svaka neprekidna funkcija f (x) moe tano predstaviti stepenim redom u radijusu konvergencije r, tj.

f (x) =
n=0

an (x x0 )n ,

x 0 r x x0 + r

(1.7)

1.3. Taylorov red za funkcije jedne promjenljive

Ako se koecijenti an u jednaini (1.7) prikau u obliku: a0 = f (x0 ), a1 = 1 1 f (x0 ), a2 = f (x0 ), . . . 1! 2! (1.8)

dobija se Taylorov red funkcije f (x) za x = x0 , odnosno f (x) = f (x0 ) + 1 1 f (x0 )(x x0 ) + f (x0 )(x x0 )2 + . . . 1! 2! (1.9)

ili u jednostavnijoj formi 1 1 (n) f (x) = f0 + f0 x + f0 x2 + . . . + f0 xn + . . . 2 n! 1 (n) n = f x n! 0 n=0

(1.10)

S obzirom da je nepraktino koristiti beskonaan Taylorov red dat prethodnim jednainama, on se moe napisati i kao konaan red, koji se jo naziva i Taylorova formula ili polinom, sa ostatkom, kako slijedi: f (x) = f (x0 ) + 1 1 f (x0 )(x x0 ) + f (x0 )(x x0 )2 + . . . 1! 2! (1.11)

1 + f (n) (x0 )(x x0 )n + Rn+1 n!

gdje je Rn+1 ostatak koji je dat formulom: Rn+1 = 1 f (n+1) ()(x x0 )n+1 , (n + 1)! x0 x (1.12)

Za

x0 = 0 dobija se tzv. MacLaurinov red.

Poglavlje 2

Rjeavanje nelinearnih jednaina


Mnogi problemi u inenjerstvu i nauci zahtijevaju pronalaenje rjeenja neke nelinearne jednaine (traenje korijena). Ovo je jedan od najstarijih problema u matematici. Problem se, u stvari, svodi na sljedee: Za datu neprekidnu nelinearnu funkciju f (x), treba nai vrijednosti x = takvu da je f () = 0. Problem je graki predstavljen na slici 2.1. Pri tome, nelinearna jednaina f (x) = 0 moe biti algebarska, transcedentalna, rjeenje neke diferencijalne jednaine, ili bilo koja nelinearna relacija izmeu ulazne veliine x i izlazne veliine y.

f(x)

f( 1)=0

f( 2)=0

Slika 2.1: Rjeenje nelinearne jednaine

Rjeavanje nelinearnih jednaina

2.1

Osnovne karakteristike u pronalaenju korijena

U postupku rjeavanja nelinearnih jednaina moemo razlikovati dvije faze, i to: lokalizacija nula, poboljanje rjeenja 2.1.1 Lokalizacija nula

Lokalizacija nula predstavlja grubo (priblino) pronalaenje rjeenja koje moe posluiti kao poetna aproksimacija u nekoj sistematskoj proceduri pronalaenja, koja poboljava rjeenje do odreene tanosti. Ako je to mogue, najbolje je nai granice intervala u kojima se nalazi korijen i u kojima funkcija ima razliit znak. U ovu svrhu se mogu koristiti razliite metode od kojih su najee: crtanje graka funkcije, inkrementalno pretraivanje, prola iskustva sa istim ili slinim problemom, rjeenje pojednostavljenog modela, prethodno rjeenje u nizu dobijanja rjeenja, itd. Crtanje graka funkcije izvodi se u intervalu koji nas interesuje. Ako, na primjer, rjeenje neke jednaine predstavlja pozitivnu veliinu, kao to je preeni put ili vrijeme, neemo crtati negativne vrijednosti funkcije. Kako danas mnogi kalkulatori imaju mogunost crtanja graka funkcija, ovaj postupak je znatno olakan. Uz to, postoje mnogi softverski paketi koji uz sve ostale mogunosti mogu da se koriste i za crtanje graka funkcija (na primjer, Excel, Matlab, MathCAD, Mathematica, itd.) Inkrementalno pretraivanje se sastoji u izraunavanju vrijednosti funkcije od poetne do krajnje take intervala koji se posmatra, sa nekim malim korakom. U trenutku kada funkcija promijeni znak, pretpostavi se da korijen date jednaine lei u tom podintervalu (naravno, uz uslov da je funkcija neprekidna na datom intervalu). Ove dvije vrijednosti mogu se koristiti kao poetne aproksimacije za neku od procedura poboljanja rjeenja. Treba napomenuti da je vrlo vano nai dobre poetne aproksimacije kako bi procedura za poboljanje korijena jednaine uopte konvergirala, ali i da bi konvergirala prema tanom rjeenju. 2.1.2 Poboljanje rjeenja

Poboljanje rjeenja predstavlja odreivanje rjeenja do eljene tanosti pomou neke od sistematskih procedura. U tu svrhu mogu se koristiti:
Vie

o ovim softverima bie rijei u A

12

2.1. Osnovne karakteristike u pronalaenju korijena

Metode na zatvorenom intervalu Metode na otvorenom intervalu. Metode na zatvorenom intervalu su metode koji poinju sa dvije vrijednosti x, na primjer a i b, izmeu kojih se nalazi rjeenje x = , i koje sistematski smanjuju poetni interval (a, b) na podintervale u kojima se, takoer, mora nalaziti korijen jednaine. U ove metode spadaju metoda polovljenja intervala i regula falsi. Treba napomenuti da su ove metode veoma sigurne, jer je dobijanje eljenog rjeenja zagarantovano. Ipak, mogu veoma sporo konvergirati do traene tanosti. Metode na otvorenom intervalu ne zahtijevaju da se korijen nalazi u nekom intervalu. Kao posljedica, ove metode nisu tako sigurne, a mogu i divergirati. Meutim, kako se u ovim metodama pri procjeni korijena koriste informacije o samoj funkciji koja se posmatra, one su mnogo ekasnije od metoda na zatvorenom intervalu. U ovom kursu obradie se sljedee metode na otvorenom intervalu: metoda proste iteracije, Newtonova metoda, modikovana Newtonova metoda, te metoda sjeice. 2.1.3 Ponaanje nelinearnih jednaina

Nelinearne jednaine se mogu razliito ponaati u blizini korijena. Algebarske i transcedentalne jednaine mogu imati razliite (jednostavne) realne, viestruke, te kompleksne korijene. Polinomi mogu imati realne i kompleksne korijene, pri emu se u sluaju svih realnih koecijenata polinoma, kompleksni korijeni javljaju u konjugovanim parovima (u sluaju kompleksnih koecijenata mogui su i pojedinani kompleksni korijeni). Slika 2.2 pokazuje nekoliko sluajeva razliitog ponaanja nelinearnih funkcija u blizini korijena. Slika 2.2a pokazuje sluaj sa jednim realnim korijenom (jednostavan korijen). Slika 2.2b pokazuje sluaj bez realnih korijena. U tom sluaju mogu postojati kompleksni korijeni. Situacija sa dva ili tri jednostavna sluaja pokazana je na slikama 2.2c i d, respektivno, dok su na slikama 2.2e i f dati primjeri mnogostrukih korijena. Situacija sa dva mnogostruka i jednim jednostavnim korijenom data je na slici 2.2g. Opti sluaj, u kojem se pojavljuje vie jednostavnih i mnogostrukih korijena, dat je na slici 2.2h (i u ovom sluaju mogu se pojaviti kompleksni korijeni). Mnogi inenjerski problemi imaju jednostavne korijene, kao to je pokazano na slici 2.2a. Takvi korijeni se mogu nai gotovo svakom od metoda za rjeavanje nelinearnih jednaina, ako imamo dobru poetnu aproksimaciju. Ipak, postoje sluajevi kod kojih je neophodna panja kako bi se dolo do eljenog rjeenja.
13

Rjeavanje nelinearnih jednaina

a)

b)

f(x)

f(x)

c)

d)

f(x)

f(x)

e)

f)

f(x)

f(x)

x
1

= 2=

x
3

g)

h)

f(x)

f(x)

Slika 2.2: Korijeni nelinearnih jednaina: a) jednostavan korijen, b) bez realnih korijena, c) dva jednostavna korijena, d) tri jednostavna korijena, e) dva viestruka korijena, f) tri viestruka korijena, g) jedan jednostavan i dva viestruka korijena, e) opti sluaj

14

2.1. Osnovne karakteristike u pronalaenju korijena

2.1.4

Neke smjernice u traenju korijena

I pored toga to postoji veliki broj metoda za rjeavanje nelinearnih jednaina, treba znati da neke od metoda ne mogu nai neke od korijena, te da brzina konvergencije, tj. utroenog rada i vremena, moe biti od presudnog znaaja. Neke od vanih smjernica pri rjeavanju jednaina su: Proces lokalizacije bi trebao ograniiti korijen. Dobra poetna aproksimacija je veoma vana. Metode sa zatvorenim intervalom su sigurnije nego one sa otvorenim, jer zadravaju rjeenje u zatvorenom intervalu. Metode sa otvorenim intervalom, kada konvergiraju, openito konvergiraju bre od metoda sa zatvorenim intervalom. Za funkcije bez naglih promjena u ponaanju, veina algoritama uvijek konvergira ako je poetna aproksimacija dovoljno blizu. Za ove sluajeve unaprijed je mogue procijeniti brzinu konvergencije. Mnogi, ako ne i veina, inenjerski problemi su jednostavni i dobro se "ponaaju". U takvim sluajevima se jednostavne metode, kao to je Newtonova metoda, mogu primijeniti bez bojazni da se radi o nekom specijalnom sluaju. Ako se neki problem treba rijeiti samo jednom, ili mali broj puta, ekasnost nije u prvom planu. Nasuprot tome, ako se rjeavanje neke jednaine obavlja veliki broj puta, veoma vano je koristiti ekasnije metode. Metode za rjeavanje nelinearnih jednaina bi trebale imati sljedee osobine: Treba biti poznat maksimalan broj iteracija. U sluaju da metoda koristi prvi izvod funkcije, f (x), mora se paziti da ova vrijednost u toku prorauna ne bude jednaka nuli. Test konvergencije oblika |xi+1 xi |, te apsolutna vrijednost funkcije |f (xi+1 )| se moraju uzeti u obzir. Kada se dostigne konvergencija, konana procjena korijena bi se trebala uvrstiti u funkciju f (x), kako bi se zagarantovalo da je f (x) = 0 u granicama eljene konvergencije.
15

Rjeavanje nelinearnih jednaina

2.2
2.2.1

Metode na zatvorenom intervalu


Metoda polovljenja intervala

Metoda polovljenja intervala ili bisekcije (eng. interval halving, bisection) je jedna od najjednostavnijih metoda za traenje korijena nelinearnih jednaina. U ovoj metodi, prvo se odrede dvije procjene korijena, i to lijevo, za x = a, i desno, x = b, od korijena. Ove procjene ograniavaju korijen, kao to je prikazano na slici 2.3. Oigledno je da korijen x = lei u intervalu (a, b). Ovaj interval se moe prepoloviti usrednjavanjem vrijednosti a i b, tako da se dobije c = (a + b)/2. Na taj nain dobiju se dva intervala:(a, c) i (c, b). Koji interval sadri korijen zavisi od vrijednosti f (c). Ako je f (a) f (c) < 0, kao to je to sluaj na slici 2.3, korijen se nalazi u intervalu (a, c). Tada se postavi da je b = c, i postupak ponovi. Ako je, pak, f (c) f (b) < 0, postavi se da je a = c i postupak polovljenja nastavi. U sluaju da je f (a) f (c) = 0, korijen jednaine jednak je c.
f(x)

f(b) a2 a1 a=a0 c=a3 f(a) f(c)

c=b2

c=b1

b=b0 x

Slika 2.3: Graka interpretacija metode polovljenja intervala

Prema tome, metoda polovljenja intervala je iterativna metoda, sa sljedeim algoritmom: a+b 2 Ako je f (a) f (c) < 0 : Ako je f (c) f (b) < 0 : Ako je f (a) f (c) = 0 : c= (2.1a) a = a, b = c a = c, b = b dobiva se rjeenje = c (2.1b) (2.1c) (2.1d)

Iterativni postupak se nastavlja sve dok se ne postigne eljena tanost, tj. dok veliina intervala ne postane manja od eljene tolerancije 1 (|bi ai | 1 ),
16

2.2. Metode na zatvorenom intervalu

ili veliina f (x) ne postane manja od eljene tolerancije 2 (|f (ci )| 2 ), ili oboje. Metoda polovljenja intervala ima nekoliko prednosti: Korijen jednaine se nalazi unutar granica nekog intervala, tako da je konvergencija zagarantovana. Maksimalna greka metode je |bn an |. S obzirom da se svakom iteracijom interval polovi, (maksimalan) broj iteracija n, a time i broj raunanja funkcije, koji je potreban da se prvobitni interval (b0 , a0 ) smanji na odreeni interval (bn , an ), dobiva se iz (bn an ) = 1 (b0 a0 ) 2n b0 a0 bn an (2.2)

Na taj nain, n je dato sa: n= 1 log log(2) (2.3)

Osnovni nedostatak ove metode je spora konvergencija, odnosno veliki broj iteracija radi postizanja eljene tanosti. Primjer 2.1 Metodom polovljenja intervala nai pozitivni korijen jednaine f (x) = x2 2=0. Postupak rjeavanja zaustaviti kada apsolutna vrijednost razlike izmeu dvije uzastopne iteracije, , bude manja od 104 , tj. |xi+1 xi | < . Rjeenje Kao to je u prethodnim poglavljima reeno, prvi korak u numerikom rjeavanju jednaina predstavlja lokalizacija nula. Ovo moemo na najlaki nain postii crtanjem graka funkcije i utvrivanjem intervala u kojem se dato rjeenje nalazi. Sa slike 2.4 se jasno vidi da se pozitivno rjeenje zadate jednaine nalazi u intervalu (a, b) = (1, 2). U krajnjim takama intervala funkcija f (x) ima vrijednosti razliitog predznaka, tj. f (1) = 1 < 0 i f (2) = 2 > 0, pa se u datom intervalu nalazi bar jedan korijen date jednaine. Sada se vri podjela intervala na dva jednaka podintervala i provjerava koji od podintervala sadri korijen jednaine. Dakle, slijedei algoritam za metodu polovljenja intervala, imamo: c= 1+2 a+b = = 1.5 2 2
17

Rjeavanje nelinearnih jednaina


5 4 3

f x =x 2 1 0
1 2

-1 -2 -3 -5

-4

-3

-2

-1

Slika 2.4: Graki prikaz funkcije f (x) = x2 2

f (c) = f (1.5) = 0.25 > 0 S obzirom da je f (c) > 0 i f (a) < 0 rjeenje se nalazi u podintervalu (a, c) = (1, 1.5), i stavljamo da je b = c. Postupak ponavljamo na novom intervalu (a, b) = (1, 1.5), tj. a+b 1 + 1.5 = = 1.25 2 2 f (c) = f (1.25) = 0.4375 < 0 c= pa je novi podinterval u kojem se nalazi korijen zadate jednaine (a, c) = (1.25, 1.5). Postupak se ponavlja dok se ne postigne eljena tanost. U Tabeli 2.1 sumarno su dati rezultati prorauna. Konano, rjeenje je = 1.41425.

2.2.2

Metoda regula falsi

Kao to se moglo vidjeti, u sluaju metode polovljenja intervala korijen jednaine se aproksimira kao srednja vrijednost intervala u kojem se korijen nalazi. U metodi regula falsi (to u prevodu znai metoda netanog poloaja), nelinearna funkcija f (x) se aproksimira linearnom funkcijom g(x) u intervalu (a, b),
18

2.2. Metode na zatvorenom intervalu

Tabela 2.1: Iteracija 1 2 3 4 . . . 13 14

Uz primjer 2.1 a f (a) 1 -1 1 -1 1.25 -0.4375 1.375 -0.109375 . . . . . . 1.41406 1.41418 -0.000427 -0.000008

b 2 1.5 1.5 1.5 . . . 1.41431 1.41431

f (b) 2 0.25 0.25 0.25 . . . 0.000263 0.000263

c 1.5 1.25 1.375 1.4375 . . . 1.41418 1.41425

|xi xi1 | 0.25 0.125 0.0625 . . . 0.000122 0.000061

a korijen te linearne funkcije g(x), x = , se uzima kao sljedea aproksimacija korijena nelinearne jednaine f (x) = 0. S obzirom na linearnu interpolaciju nelinearne funkcije, ova metoda se jo naziva i linearna interpolaciona metoda.

f(x)

f(b) f(c) a f(a) c=x2 c=x1 b

Slika 2.5: Graka interpretacija metode regula falsi

Graka interpretacija metode regula falsi data je na slici 2.5. Kao to se sa slike vidi, linearna funkcija g(x), koja aproksimira funkciju f (x), ima korijen u taki c = x1 . Na taj nain, poetni interval (a, b) se dijeli na dva podintervala (a, x1 ) i (x1 , b). Vrijednost take x1 se moe lako odrediti pomou jednaine g(x) i uslova g(x1 ) = 0, tj. g(b) g(x1 ) = g(b) g(a) (b x1 ) ba (2.4)
19

Rjeavanje nelinearnih jednaina

S obzirom da je g(a) = f (a) i g(b) = f (b), te g(x1 ) = 0, slijedi: f (b) = i konano: x1 = b ba f (b) f (b) f (a) (2.6) f (b) f (a) (b x1 ) ba (2.5)

Koji od ova dva intervala,(a, x1 ) i (x1 , b), sadri korijen jednaine, odreuje se na isti nain kao u metodi polovljenja intervala, a zatim se proces ponavlja. Algoritam metode regula falsi moe se predstaviti na sljedei nain: ba f (b) f (b) f (a) Ako je f (a)f (xi ) < 0 : Ako je f (xi )f (b) < 0 : Ako je f (a)f (xi ) = 0 : xi = b |b a| 1 i/ili (2.7a) a = a, b = xi a = xi , b = b dobiva se rjeenje = xi (2.7b) (2.7c) (2.7d)

Proces se nastavlja dok se ne postigne eljena tanost, tj. |f (xi )| 2 (2.8)

Metoda regula falsi je neto bra od metode polovljenja intervala, ali ne daje unaprijed veliinu greke. Ipak, i ova metoda je mnogo sporija od metoda koje slijede. Primjer 2.2 Problem iz primjera 2.1 rijeiti metodom regula falsi. Postupak rjeavanja zaustaviti kada apsolutna vrijednost razlike izmeu dvije uzastopne iteracije, , bude manja od 104 , tj. |xi+1 xi | < . Rjeenje Postupak rjeavanja metodom regula falsi je vrlo slian rjeavanju metodom polovljenja intervala, s tom razlikom to se sljedea aproksimacija rjeenja neke jednaine ne izraunava kao srednja vrijednost krajeva intervala, nego pomou jednaine (2.6). Ako kao poetni interval, u kojem se nalazi korijen jednaine f (x) = x2 2, uzmemo (a, b) = (1, 2), bie: x1 = b
20

21 ba f (b) = 2 2 = 1.333333 f (b) f (a) 2 (1)

2.3. Metode na otvorenom intervalu

f (x1 ) = f (1.333333) = 0.222222 < 0 S obzirom da je f (x1 ) < 0 i f (b) > 0 rjeenje se nalazi u podintervalu (x1 , b) = (1.333333, 2), i stavljamo da je a = x1 . Postupak ponavljamo na novom intervalu (a, b) = (1.333333, 2), tj. ba 2 1.333333 f (b) = 2 2 = 1.4 f (b) f (a) 2 (0.222222) f (x2 ) = f (1.4) = 0.04 < 0 x2 = b pa je novi podinterval u kojem se nalazi korijen zadate jednaine (a, c) = (1.4, 2). Postupak se ponavlja dok se ne postigne eljena tanost. U Tabeli 2.2 sumarno su dati rezultati prorauna.
Tabela 2.2: Iteracija 1 2 3 4 5 6 Uz primjer a 1 1.333333 1.4 1.41176 1.41379 1.41414 2.2 f (a) -1 -0.222222 -0.04 -0.00692 -0.0011891 -0.000204

b 2 2 2 2 2 2

f (b) 2 2 2 2 2 2

c 1.333333 1.4 1.41176 1.41379 1.41414 1.4142

|xi xi1 | 0.066667 0.011765 0.002028 0.000348 0.00006

Konano, rjeenje je = 1.4142.

2.3
2.3.1

Metode na otvorenom intervalu


Metoda proste iteracije

Metoda proste iteracije (jo se naziva i iteracija pomou ksirane take) rjeava jednainu f (x) = 0 preureivanjem u oblik x = g(x), a zatim traenjem vrijednosti x = takvom da je = g(), to je ekvivalentno jednakosti f () = 0. Vrijednost x za koju je x = g(x) se naziva ksna taka relacije x = g(x) odakle i proizilazi drugo ime metode. U principu, ova metoda simultano rjeava dvije funkcije: x(x) i g(x). Taka presjecita ove dvije funkcije predstavlja rjeenje jednaine x = g(x), a time i jednaine f (x) = 0. Metoda je graki predstavljena na slici 2.6. Poto je funkcija g(x) takoer nelinearna, rjeenje se mora nai iterativno. Poetna aproksimacija x1 se odreuje intuitivno, a zatim se uvrtava u funkciju
21

Rjeavanje nelinearnih jednaina

xi

xi+1

Slika 2.6: Graka interpretacija metode proste iteracije

g(x) kako bi se dobila vrijednost sljedee aproksimacije. Algoritam je dat sljedeom rekurzivnom formulom: xi+1 = g(xi ) (2.9)

Procedura se ponavlja dok se ne zadovolji kriterij konvergencije, kao na primjer: |xi+1 xi | 1 i/ili |f (xi+1 )| 2 (2.10)

Problem konvergencije ove metode moe se posmatrati na sljedei nain. Neka je x = rjeenje neke jednaine f (x) i e = x greka rjeenja. Oduzimajui izraz = g() od jednaine (2.9) dobija se: xi+1 = ei+1 = g(xi ) g() Funkcija g() izraena Taylorovim redom oko take xi ima oblik: g() = g(xi ) + g ()( xi ) + . . . (2.12) (2.11)

gdje je xi . Zanemarujui lanove vieg reda u jednaini (2.12), te rjeavajui za [g(xi ) g()] i uvrtavajui dobijeni rezultat u jednainu (2.11), dobija se: ei+1 = g ()ei
22

(2.13)

2.3. Metode na otvorenom intervalu

Ova jednaina se moe koristiti za ocjenu da li je metoda konvergentna ili ne, i ako jeste koja ja brzina konvergencije. Da bi bilo koji iterativni postupak bio konvergentan treba biti ispunjen sljedei uslov: ei+1 = |g ()| < 1 ei (2.14)

Dakle, metoda proste iteracije je konvergentna samo ako je |g ()| < 1. Ako ovaj uslov nije ispunjen procedura divergira. U sluaju kada je uslov ispunjen, a vrijednost |g ()| blizu 1.0, konvergencija je veoma spora. S obzirom da metoda nekada radi, a nekada ne, nije preporuljiva za rjeavanje nelinearnih jednaina. Iz jednaine (2.14) se, takoer, vidi da je konvergencija linearna, tj. prvog reda tanosti . Primjer 2.3 Na primjeru rjeavanja jednaine f (x) = x2 x 2 = 0 pokazati upotrebu metode proste iteracije - traiti pozitivno rjeenje jednaine. Rjeenje Kao to je reeno u prethodnom poglavlju, metoda iteracije se zasniva na algoritmu koji je dat jednainom (2.9). Na taj nain, jednaina f (x) = x2 x 2 = 0 se moe prikazati na jedan od sljedeih naina: x = x2 2 (2.15a) x= x+2 (2.15b) 2 x=1+ (2.15c) x x2 x 2 x=x+ (2.15d) 2x 1 Svaka od ovih jednaina prolazi kroz traeno rjeenje, kao to je pokazano na slici 2.7. Meutim, sljedea analiza pokazuje da svaka od jednaina ne konvergira prema datom rjeenju. Posmatrajmo prvo jednainu (2.15a). S obzirom da je metoda proste iteracije metoda na otvorenom intervalu, potrebna je samo jedna poetna aproksimacija, na primjer x0 = 3. Prvih nekoliko iteracija daje: x1 = g(x0 ) = 32 2 = 7
Za

konvergentnu metodu se kae da je k-tog reda tanosti ako vrijedi en+1 = const. = 0 ek n

23

Rjeavanje nelinearnih jednaina


5
g x =x -

4 3 2 1 0
1

fx

=x

x -x-x gx=

/ 2x-

gx= x-

g x = + /x

-1 -2 -3

Slika 2.7: Mogui oblici jednaine f (x) = x2 x 2 pri raunanju metodom proste iteracije

x2 = g(x1 ) = 72 2 = 47 x3 = g(x2 ) = 472 2 = 2207 ... Vidi se da iterativni postupak divergira, s obzirom da je svaka sljedea vrijednost vea od prethodne. Ako se pogleda vrijednost prvog izvoda funkcije g(x), dobija se: |g (x)| = 2|x| > 1 za |x| > 1 2

Dakle, uslov za konvergenciju (2.14) nije ispunjen. Ako sada ponovimo postupak sa jednainom (2.15b), imamo: x1 = g(x0 ) = 3 + 2 = 2.236 x2 = g(x1 ) = 2.236 + 2 = 2.058 x3 = g(x2 ) = 2.058 + 2 = 2.0014 x4 = g(x3 ) = 2.014 + 2 = 2.0004 ... Kako se moe vidjeti, iterativni postupak konvergira ka rjeenju = 2, to je
24

2.3. Metode na otvorenom intervalu

bilo i za oekivati s obzirom da je uslov konvergencije (2.14) ispunjen, tj. 1 <1 |g (x)| = 2 x+2 za x> 7 4

Na slian nain mogu se analizirati i preostale dvije jednaine (2.15c) i (2.15d).

2.3.2

Newtonova metoda

Newtonova metoda (naziva se i Newton-Raphsonova metoda) je jedna od najpoznatijih i najekasnijih procedura u cijeloj numerikoj analizi. Metoda uvijek konvergira ako je poetna aproksimacija dovoljno blizu rjeenju. Za razliku od prethodne metode, konvergencija Newtonove metode je kvadratna. Graka interpretacija metode data je na slici 2.8. Prvi korak metode je lokalna aproksimacija funkcije f (x) pomou linearne funkcije g(x) koja predstavlja tangentu funkcije f (x) u taki M0 . Rjeenje jednaine g(x) = 0, x1 , predstavlja sljedeu aproksimaciju rjeenja jednaine f (x) = 0.
f(x)
M0

M1 M2 x0 x1 x2

Slika 2.8: Graka interpretacija Newtonove metode

Kako bismo izveli algoritam za Newtonovu metodu, postavimo sljedeu relaciju: f (x) =
Newtonova

f (xi+1 ) f (xi ) xi+1 xi

(2.16)

metoda se ponekad naziva i metoda tangente.

25

Rjeavanje nelinearnih jednaina

Rjeenje ove jednaine za xi+1 , pri emu je f (xi+1 ) = 0, daje: xi+1 = xi f (xi ) f (xi ) (2.17)

to predstavlja rekurzivnu formulu za Newtonovu metodu. Jednaina (2.17) se ponavlja dok se ne zadovolji jedan od ili oba kriterija konvergencije: |xi+1 xi | 1 i/ili |f (xi+1 )| 2 (2.18)

Newtonova metoda se moe dobiti i direktno iz Taylorovog niza, ako se zanemare lanovi vieg reda, tj. f (xi+1 ) = f (xi ) + f (xi )(xi+1 xi ) + . . . i konano xi+1 = xi f (xi ) f (xi ) (2.19)

Konvergencija Newtonove metode se moe odrediti na sljedei nain. Jednaina (2.17) predstavlja jednainu oblika: xi+1 = g(xi ) pri emu je funkcija g(x) data sa: g(x) = x f (x) f (x) (2.21) (2.20)

Stoga, Newtonova metoda predstavlja specijalni sluaj metode proste iteracije i konvergira ako je ispunjen uslov |g ()| 1 xi f (x)f (x) f (x)f (x) f (x)f (x) = 2 [f (x)] [f (x)]2 (2.22)

Diferenciranjem jednaine (2.21) dobijamo: g (x) = 1 (2.23)

Kako za korijen jednaine vrijedi x = i f () = 0, time je i g (x) = 0, pa je uslov (2.22) zadovoljen, a metoda je konvergentna. Brzina konvergencije se moe odrediti ako se od obje strane jednaine (2.17) oduzme , i sa e = x oznai greka. Na taj nain se dobija: xi+1 = ei+1 = xi
26

f (xi ) f (xi ) = ei f (xi ) f (xi )

(2.24)

2.3. Metode na otvorenom intervalu

Razvojem funkcije f (x) u Taylorov red, i zanemarujui lanove iznad drugog reda, za x = vrijedi: 1 f () = f (xi ) + f (xi )( xi ) + f ()( xi )2 = 0 xi (2.25) 2 Ako sada izraz (2.25) uvrstimo u jednainu (2.24), pri emu je f () = 0, dobijamo: ei+1
1 f (xi )ei 2 f ()e2 1 f () 2 i = ei = e f (xi ) 2 f (xi ) i

(2.26)

S obzirom da za i , xi ,f (xi ) f (),f (xi ) f () imamo: ei+1 = 1 f () 2 e 2 f () i (2.27)

Posljednja jednaina jasno pokazuje da je Newtonova metoda metoda tanosti drugog reda, tj. kvadratna, to u praksi znai da se sa svakom iteracijom udvostruava broj znaajnih cifara. Ipak, veoma je vano da uslov (2.22) bude ispunjen, te da poetna aproksimacija bude to blie rjeenju, poto se moe dogoditi da procedura konvergira prema nekom drugom korijenu (rjeenju). Ova metoda ima odline osobine za lokalnu konvergenciju, ali globalna konvergencija moe biti slaba zbog zanemarivanja viih lanova Taylorovog reda. Meutim, Newtonova metoda ima i nedostataka, jer je za neke funkcije vrlo teko analitiki izraunati prvi izvod, a za neke funkcije to uopte nije mogue. Osim toga, moe se desiti da u toku iterativnog procesa prvi izvod bude jednak nuli, ime ne bi bilo mogue nastaviti postupak rjeavanja. U takvim sluajevima koriste se neke druge metode, kao to je modikovana Newtonova metoda ili metoda sjeice. Primjer 2.4 Problem iz primjera 2.1 rijeiti Newtonovom metodom. Postupak rjeavanja zaustaviti kada apsolutna vrijednost razlike izmeu dvije uzastopne iteracije, , bude manja od 104 , tj. |xi+1 xi | < . Rjeenje Algoritam za rjeavanje neke nelinearne jednaine Newtonovom metodom dat je jednainom (2.16). Ako se u datu jednainu uvrsti da je f (x) = 2x, dobija se poznata jednaina za izraunavanje korijena broja 2: xi+1 = xi x2 2 f (xi ) = xi i f (xi ) 2xi
27

Rjeavanje nelinearnih jednaina

xi+1 =

1 2

xi +

2 xi

(2.28)

Slino metodi proste iteracije, i za Newtonovu metodu je potrebna samo jedna poetna aproksimacija. Ako sada kao poetnu aproksimaciju uzmemo x0 = 3 za prve dvije iteracije imamo: 1 2 1 x2 = 2 x1 = 2 x0 2 x1 + x1 x0 + 1 2 1 = 2 = 3+ 2 3 = 1.83333 2 1.83333 = 1.46212

1.83333 +

Tabela 2.3 daje rezultate svih iteracija.


Tabela 2.3: Iteracija 0 1 2 3 4 5 Uz primjer 2.4 xi |xi xi1 | 3 1.83333 1.16667 1.46212 0.371212 1.415 0.047123 1.41421 0.000785 1.41421 2.18e-7

Iz tabele se vidi da je rjeenje koje zadovoljava zadatu tanost, = 1.41421, dobiveno ve u petoj iteraciji, ali i tanost od 106 se postie u istoj iteraciji. Ovo pokazuje koliko je, u stvari, Newtonova metoda brza. Jedini problem je konvergencija prema traenom rjeenju, poto se moe desiti da rjeenje konvergira prema nekom drugom korijenu. U ovom sluaju bilo koja poetna vrijednost x0 < 0 konvergirala bi prema drugom korijenu zadate jednaine, tj. 2 = 2.

2.3.3

Modikovana Newtonova metoda

U sluajevima kada izraunavanje prvog izvoda funkcije uzima mnogo raunskog vremena, moe se koristiti modikovana Newtonova metoda. Ovdje su umjesto izraunavanja prvog izvoda funkcije u svakoj iteraciji, moe uzeti da je vrijednost prvog izvoda u svim iteracijama jednaka vrijednosti prvog izvoda iz prve iteracije, tj. f (xn ) = f (x0 )
28

(n = 1, 2, . . .)

(2.29)

2.3. Metode na otvorenom intervalu

pa jednaina (2.17) dobija oblik: xi+1 = xi f (xi ) f (x0 ) (2.30)

Graka interpretacija modikovane Newtonove metode data je na slici 2.9. Iz slike se jasno vidi da je nagib funkcije g(x) jednak za sve take Mi (i = 0, 1, . . .).
f(x)
M0

M1 M2 x0 M2

x1 x2 x3 x3

Slika 2.9: Graka interpretacija modikovane Newtonove metode

Primjer 2.5 Problem iz primjera 2.1 rijeiti modikovanom Newtonovom metodom. Postupak rjeavanja zaustaviti kada apsolutna vrijednost razlike izmeu dvije uzastopne iteracije, , bude manja od 104 , tj. |xi+1 xi | < . Rjeenje Ova metoda se ni u emu ne razlikuje od prethodne osim to se umjesto raunanja vrijednosti f (x) za novu aproksimaciju, koristi ona iz poetne iteracije, tj. u jednaini (2.16) uvijek je f (x) = f (x0 ). Na taj nain, rekurzivna formula glasi: xi+1 = xi x2 2 i 2x0 (2.31)

I u ovom sluaju koristimo samo jednu poetnu aproksimaciju, na primjer


29

Rjeavanje nelinearnih jednaina

x0 = 3, uz f (x0 ) = 2x0 = 6. Za prve dvije iteracije dobija se: x2 2 32 2 0 = 1.83333 =3 2x0 6 x2 2 1.833332 2 x 2 = x1 1 = 1.83333 = 1.60648 2x0 6 x 1 = x0 Tabela 2.4 daje rezultate svih iteracija.
Tabela 2.4: Iteracija 0 1 2 3 . . . 12 13 Uz primjer 2.5 xi |xi xi1 | 3 1.83333 1.16667 1.60648 0.226852 1.50968 0.096797 . . . . . . 1.41437 1.41429 0.000136 0.000072

Rjeenje se dobiva u 13. iteraciji i iznosi = 1.41429.

2.3.4

Metoda sjeice

U sluajevima kada je nemogue analitiki odrediti prvi izvod neke funkcije, metoda sjeice (sekante) predstavlja alternativu Newtonovoj metodi. Metoda je graki data na slici 2.10. Nelinearna funkcija f (x) se lokalno aproksimira pomou linearne funkcije g(x), koja je sjeica funkcije f (x), a njen korijen se koristi kao poboljana aproksimacija korijena funkcije f (x). S obzirom da je sjeica prava linija koja prolazi kroz dvije take krive f (x), za iniciranje metode neophodne su prve dvije aproksimacije, x0 i x1 . Pri tome se izmeu njih moe ali i ne mora nalaziti korijen jednaine f (x) = 0. Vrijednost prvog izvoda u jednaini (2.17) je dat sa: f (x) = pri emu je f (xi+1 ) = 0
30

f (xi ) f (xi1 ) xi xi1

(2.32)

(2.33)

2.3. Metode na otvorenom intervalu

f(x)
M0

M1 M2 x0 x1 x2 M3 x3

Slika 2.10: Graka interpretacija metode sjeice

Uvrtavajui prethodne jednakosti u jednainu 2.17, dobija se: xi+1 = xi xi xi1 f (xi ) f (xi ) f (xi1 ) (2.34)

Jednaina (2.34) se koristi dok se ne zadovolji jedan od ili oba kriterija konvergencije (2.18). Moe se pokazati da je brzina konvergencije reda 1.62, to je mnogo bre od linearne konvergencije proste iteracije, ali i neto sporije od kvadratne brzine konvergencije Newtonove metode. Iz jednaina (2.17) i (2.34) se, takoer, vidi da je za proraun Newtonovom metodom neophodno izraunati vrijednosti f (x) i f (x), dok je za metodu sjeice potrebno izraunati samo f (x). Takoer se moe pokazati da ako je vrijeme potrebno za izraunavanje vrijednosti f (x) oko 43% vee od onog za proraunavanje vrijednosti f (x), metode sjeice je ekasnija od Newtonova metode. Primjer 2.6 Problem iz primjera 2.1 rijeiti metodom sjeice. Postupak rjeavanja zaustaviti kada apsolutna vrijednost razlike izmeu dvije uzastopne iteracije, , bude manja od 104 , tj. |xi+1 xi | < .

31

Rjeavanje nelinearnih jednaina

Rjeenje I pored toga to predstavlja varijantu metode proste iteracije, za ovu metodu su potrebne dvije poetne aproksimacije rjeenja, pri emu se rjeenje moe ali i ne mora nalaziti izmeu njih. Ako kao poetne aproksimacije uzmemo x0 = 4 i x1 = 3, i koristimo jednainu (2.34), za prve dvije iteracije se dobija (koriste se indeksi 2 i 3, s obzirom da su indeksi 0 i 1 rezervisani za poetne aproksimacije): x1 x0 f (x1 ) = 3 f (x1 ) f (x0 ) x2 x1 f (x2 ) = 2 x 3 = x2 f (x2 ) f (x1 ) x2 = x1 Tabela 2.5 daje rezultate svih iteracija.
Tabela 2.5: Iteracija 1 2 3 4 5 6 7 Uz primjer 2.6 xi1 f (xi1 ) 4 14 3 7 2 2 1.6 0.56 1.44444 0.086412 1.41606 0.005221 1.41423 0.000055

34 7=2 7 14 23 2 = 1.6 27

xi 3 2 1.6 1.444444 1.41606 1.41423 1.41421

f (xi ) 7 2 0.56 0.086412 0.005221 0.000055 3.6e-8

|xi xi1 | 1 1 0.4 0.155556 0.028386 0.001825 0.00002

Konano, rjeenje je = 1.41421.

2.4

Problemi u numerikom rjeavanju nelinearnih jednaina

I pored dobrih osobina, metode koje su opisane u prethodnim poglavljima imaju i neke zajednike nedostatke. Neki od tih nedostataka su: 1. Nedovoljno dobra poetna aproksimacija - jedan od najeih nedostataka ovih metoda. Ona moe da dovede do pronalaenja pogrenog korijena, spore konvergencije, pa ak i divergencije. Jedini nain da se rijei ovaj problem je dobra poetna aproksimacija. Jedan od naina da se to postigne je ocjena rjeenja pomou grakog prikaza funkcije, ili inkrementalno pretraivanje sa malim korakom.
32

2.5. Pitanja i zadaci

2. Konvergencija prema pogrenom korijenu 3. Korijeni koji su blizu jedan drugom - Korijeni koji su blizu jedan drugom mogu da predstavljaju problem pri numerikom rjeavanju, s obzirom da interval u kojem se nalaze moe biti suvie mali da bi se moglo odrediti u kojem intervalu se nalaze. Dilema se moe rijeiti ako se povea graf funkcije, ili se smanji korak pri inkrementalnom traenju korijena. 4. Mnogostruki korijeni - Iako se u prethodnom tekstu nije pominjalo njihovo traenje, mnogostruki korijeni se mogu nai koristei Newtonovu metodu, ali je problem u tome to se ne zna da li i gdje isti postoje. Grako prikazivanje i inkrementalno traenje korijena mogu pomoi, ali to nije zagarantovano. 5. Take ineksije - Korijeni u taki ineksije mogu odvesti procedure traenja daleko od traenog korijena, mada dobra poetna aproksimacija moe pomoi. 6. Kompleksni korijeni - Kompleksni korijeni ne predstavljaju nikakav problem ako se zna da isti postoje. Na primjer, Newtonova i metoda sjeice lako mogu nai kompleksne korijene, koristei kompleksnu aritmetiku i kompleksnu poetnu aproksimaciju. Meutim, ako se kompleksni korijeni ne oekuju, i koristi se samo aritmetika sa realnim brojevima, kompleksni korijeni se ne mogu nai. Jedan od rjeenja ovog problema je koritenje Bairstowove metode kvadratnih faktora. 7. Loe postavljena nelinearna jednaina - Loe postavljena jednaina moe predstavljati veliki problem prilikom traenja korijena jednaine. Najbolji pristup ovom problemu je koritenje raunara sa veom tanou. 8. Spora konvergencija - Problem spore konvergencije se moe rijeiti boljom poetnom aproksimacijom ili promjenom metode traenja korijena. Bez obzira na nedostatke i mogue probleme, veina problema u inenjerstvu se moe rijeiti nekom od opisanih metoda bez veih potekoa, tako da se svakom problemu moe pristupiti sa optimizmom.

2.5

Pitanja i zadaci

1. Objasniti postupak lokalizacije nula! 2. Kako se izvodi inkrementalno pretraivanje?


33

Rjeavanje nelinearnih jednaina

3. Objasniti koncept poboljanja rjeenja! 4. Navesti metode na zatvorenom intervalu! 5. Navesti metode na otvorenom intervalu! 6. Objasniti metodu polovljenja intervala! Navesti prednosti i mane. 7. Objasniti metodu regula falsi! Navesti prednosti i mane. 8. Objasniti postupak koritenja metode proste iteracije! Dati uslov za konvergenciju metode proste iteracije. 9. Objasniti Newtonovu metodu, te navesti njene prednosti i mane! 10. Objasniti modikovanu Newtonovu metodu! Procijeniti brzinu konvergencije. 11. Objasniti metodu sekante! 12. Metodom polovljenja intervala rijeiti sljedee jednaine: a) b) c) d) f (x) = x cos(x) = 0 poetni interval (0.5, 1), f (x) = ex sin(x/3) = 0 poetni interval (3.5, 2.5), f (x) = ex 2x 2 = 0 poetni interval (1, 2), f (x) = x3 2x2 2x + 1 = 0 poetni interval (0, 1).

Proraun u ovom i ostalim zadacima zaustaviti kada apsolutna vrijednost razlike izmeu dvije uzastopne iteracije bude manja od 104 , ako to drugaije ne bude zadato. 13. Jednaine iz zadatka 12 rijeiti metodom regula falsi. 14. Jednainu f (x) = ex (3x + 2) = 0, rijeiti metodom proste iteracije za sljedea tri oblika date jednaine: x = ex (2x + 2), x = (ex 2)/3 i x = ln(3x + 2). Kao poetnu iteraciju koristiti x0 = 1. 15. Jednainu a) iz zadatka 12 rijeiti Newtonovom metodom. Za poetnu aproksimaciju uzeti x0 = 1. 16. Newtonovom metodom nai najvei pozitivni korijen jednaine f (x) = x3 5x + 1. Ispitati ovisnost rjeenja o izboru poetne aproksimacije. 17. Jednainu b) iz zadatka 12 rijeiti modikovanom Newtonovom metodom. 18. Rijeiti jednainu d) zadatka 12 koristei metodu sjeice. Kao prve dvije aproksimacije koristiti x0 = 0 i x1 = 1.
34

2.5. Pitanja i zadaci

19. U nekom od programskih jezika napisati program za rjeavanje nelinearnih jednaina koristei: a) b) c) d) e) f) metodu polovljenja intervala, metodu regula falsi, metodu proste iteracije, Newtonovu metodu, modikovanu Newtonovu metodu, metodu sjeice.

20. Newtonova metoda se moe koristiti i za traenje kompleksnih korijena polinoma. U ovom zadatku potrebno je nai sva korijene jednaine f (x) = x4 1 ako se kao poetne aproksimacije uzmu sljedee vrijednosti: 2, 2, 2i i 2i. 21. Ispitati ovisnost rjeenja o izboru poetne aproksimacije za sluaj iz prethodnog zadatka. Rezultate prikazati u kompleksnoj ravni. Dozvoljeno je koristiti i komercijalne softvere (MathCAD, MATLAB, Mathematica, itd.) 22. Van der Valsova jednaina za stanje vodene pare glasi: a P + 2 (v b) = RT v

(2.35)

gdje je P pritisak u Pa, v specina zapremina u m3 /kg, T temperatura u K, R gasna konstanta (R=461.495 J/kgK), a a i b su empirijske konstante sa sljedeim vrijednostima za vodenu paru: a=1703.28 Pa(m3 /kg)2 i b=0.00169099 m3 /kg. Jednaina (2.35) se moe prikazati u obliku: P v 3 (P b + RT )v 2 + av ab = 0 (2.36)

Izraunati specinu zapreminu v za P =10000 kPa i T =800K. Kao poetnu aproksimaciju koristiti zakon za idealni gas P v = RT . Zadatak rijeiti bilo kojom od metoda za rjeavanje nelinearnih jednaina. 23. Jednaina pada pritiska pri proticanju tenosti kroz cijev krunog poprenog presjeka data je sljedeom empirijskom formulom: P = 0.5f V 2 L D (2.37)

gdje je P pad pritiska u Pa, specina gustoa u kg/m3 , V brzina u m/s, L i D duina i prenik cijevi, a f koecijent trenja. Postoji veliki
35

Rjeavanje nelinearnih jednaina

broj formula za izraunavanje koecijenta trenja u zavisnosti od Raynoldsovog broja za razliite reime proticanja tenosti. Pri tome Raynoldsov broj je dat izrazom Re=DV /, gdje je viskoznost tenosti u Pas. Za proticanje u turbulentnom reimu za sluajeve od potpuno glatke do vrlo grube povrine cijevi razvijena je sljedea formula: 1 = 2 log f /D 2.51 + 3.7 Re f (2.38)

gdje je hrapavost povrine cijevi. Rijeiti f za cijev sa /D = 0.001, te Re=10n i n = 4, 5, 6. Kao poetnu aproksimaciju koristiti jednakost: f = 0.16Re0.16 (2.39)

Zadatak rijeiti bilo kojom od metoda za rjeavanje nelinearnih jednaina. 24. Problem raunanja kritinog optereenja grede izloene izvijanju pri emu je donji dio ukljeten, a gornji sa pokretnim osloncem, svodi se na rjeavanje jednaine: tg(pl) = pl (2.40)

Nai vrijednost kritine duine lkr , u zavisnosti od l, ako za kritino optereenje vrijedi: Pkr 2 EI = p EI = 2 lkr
2

tj.

lkr =

(2.41)

S obzirom da jednaina (2.40) ima beskonano mnogo rjeenja, nai najmanje od njih. Zadatak rijeiti bilo kojom od metoda za rjeavanje nelinearnih jednaina. 25. Plovak u obliku sfere radijusa r, izraen od materijala specine gustoe p , pluta u tenosti specine gustoe t . Izraunati do koje dubine e plovak potonuti, ako je p /t = k = 0.6 i r = 5.5 cm. Zadatak se svodi na rjeavanje nelinearne jednaine: x3 3rx2 + 4kr3 = 0 (2.42)

gdje je x traena dubina (izvesti jednainu (2.42)). Zadatak rijeiti bilo kojom od metoda za rjeavanje nelinearnih jednaina.

36

Poglavlje 3

Rjeavanje sistema linearnih jednaina


Problem rjeavanja sistema jednaina je jedan od najeih problema sa kojima se susreu inenjeri i naunici. Pri tome jednaine mogu biti algebarske, transcedentalne, obine ili parcijalne diferencijalne jednaine. Takoer, one mogu biti i linearne ili nelinearne. Ipak, ovdje e se obraditi samo (numeriko) rjeavanje sistema linearnih jednaina. Sistem od n linearnih jednaina sa n nepoznatih se moe napisati u obliku : a11 x1 + a12 x2 + . . . + a1n xn = b1 a21 x1 + a22 x2 + . . . + a2n xn = b2 ..................... an1 x1 + an2 x2 + . . . + ann xn = bn

(3.1)

gdje xi (i = 1, 2, . . . , n) predstavljaju nepoznate promjenljive, aij (i, j = 1, 2, . . . , n) konstantne koecijente, a bi (i = 1, 2, . . . , n) nehomogene lanove. Sistem jednaina (3.1) se moe napisati i u matrinoj formi: Ax = b gdje je A matrica koecijenata (matrica odnosno: a11 a12 . . . a1n a21 a2 2 . . . a2n A= . . .. . ,x = . . . . . . . an1 an2 . . . ann
Broj

(3.2) sistema), a x i b su vektori kolone, x1 x2 . ,b = . . xn b1 b2 . . . bn

(3.3)

jednaina moe biti i drugaiji od n, ali je u veini inenjerskih problema jednak broju nepoznanica.

Rjeavanje sistema linearnih jednaina

Rijeiti sistem (3.1), odnosno (3.2) znai nai vrijednosti xi (i = 1, . . . , n) koje istovremeno zadovoljavaju sve jednaine sistema. Pri tome, mogu se desiti 4 sluaja: Jedinstveno rjeenje - sistem je odreen. Nema rjeenja - sistem je protivrjean. Beskonaan broj rjeenja - sistem ima nedovoljan broj jednaina, tj. neodreen je. Trivijalno rjeenje - sistem je homogen i xi = 0 (i = 1, . . . , n) U rjeavanju sistema linearnih algebarskih jednaina postoje dva fundamentalno razliita pristupa: Direktne metode Iterativne metode Direktne metode predstavljaju sistematske procedure koje se zasnivaju na principu eliminacije. Za razliku od njih, iterativne metode asimptotski dovode do rjeenja pomou neke iterativne procedure u kojoj se pretpostavi neko rjeenje, ono se uvrsti u sistem jednaina kako bi se dobilo odstupanje, ili greka, a zatim se na osnovu tog odstupanja, odnosno greke, dobije poboljano rjeenje.

3.1
3.1.1

Direktne metode
Cramerovo pravilo

Posmatrajmo sistem linearnih algebarskih jednaina, Ax=b, sa n jednaina. Cramerovo pravilo kae da je rjeenje takvog sistema dato sa xj = det(Aj ) det(A) (j = 1, 2, . . . , n) (3.4)

gdje je (Aj ) matrica n n koja se dobija zamjenom kolone j matrice A sa kolonom vektora b. Na primjer, za sistem sa dvije algebarske jednaine: a11 x1 + a12 x2 = b1 a21 x1 + a22 x2 = b2 rjeenje je: x1 = b1 a12 b2 a22 a11 a12 a21 a22 i x2 = a11 b1 a21 b2 a11 a12 a21 a22 (3.6) (3.5)

38

3.1. Direktne metode

U ovom sluaju determinante se vrlo lako izraunaju pomou pravila dijagonala. Meutim, za sisteme sa vie jednaina to pravilo ne vai i neophodno je koristiti metodu kofaktora. Broj mnoenja i dijeljenja pri koritenju metode kofaktora jednak je (n 1)(n + 1)!, pri emu je n dimenzija kvadratne matrice. Lako je izraunati da je za sluaj 10 jednaina, koji predstavlja mali sistem jednaina, broj operacija jednak 360,000,000, a za samo 100 jednaina ovaj broj je reda 10157 . Oigledno je da Cramerovo pravilo nije ekasno u rjeavanju velikih sistema jednaina, tako da je neophodno koristiti neke druge metode. 3.1.2 Metode eliminacije

Metode eliminacije rjeavaju sistem linearnih algebarskih jednaina rjeavajui jednu jednainu, na primjer prvu, za jednu nepoznanicu, na primjer x1 , u odnosu na ostale nepoznanice, x2 , ..., xn , a zatim se vri zamjena izraza za x1 u ostalih n 1 jednaina. Procedura se nastavlja n 1 puta, tj. dok se ne doe do jednaine koja sadri samo nepoznanicu xn . itav proces se naziva eliminacija. Vrijednost nepoznanice xn se moe dobiti iz posljednje jednaine procesa eliminacije. Nakon toga se moe dobiti vrijednost nepoznanice xn1 iz modikovane (n 1)-ve jednaine, koja sadri samo nepoznanice xn i xn1 . Zatim se rjeava (n 2)-ga jednaina, koja sadri nepoznanice xn , xn1 i xn2 , za xn2 , i tako redom do prve jednaine. Ovaj proces se naziva zamjena unazad. Metode eliminacije, u principu, koriste osnovne operacije sa redovima neke matrice: bilo koji red (jednaina) se moe pomnoiti konstantom. Ova operacija se najee koristi za skaliranje jednaina, ako je to neophodno. redovi (jednaine) mogu zamijeniti mjesta. Operacija se koristi kako bi se izbjeglo dijeljenje sa nulom i smanjile greke zaokruivanja. bilo koji red (jednaina) moe se zamijeniti linearnom kombinacijom tog reda (jednaine) i bilo kojeg drugog reda (jednaine). Ova operacija se najee koristi kako bi se implementirao proces sistematske eliminacije. Ove operacije, iako mijenjaju vrijednosti elemenata matrice A i b, ne mijenjaju rjeenje sistema. Primjer 3.1 Radi ilustracije procesa eliminacije i procesa zamjene unazad rijeimo sljedei sistem jednaina: 80x1 20x2 20x3 = 20 (3.7a)
39

Rjeavanje sistema linearnih jednaina

20x1 + 40x2 20x3 = 20 20x1 20x2 + 130x3 = 20 Rjeenje

(3.7b) (3.7c)

Postupak rjeavanja poinje rjeavanjem jednaine (3.7a) za nepoznanicu x1 . Na taj nain imamo: x1 = [20 (20)x2 (20)x3 ]/80 (3.8)

Uvrtavajui jednainu (3.8) u jednaine (3.7b) i (3.7c) dobiva se, respektivno: 20[20 (20)x2 (20)x3 ]/80 + 40x2 20x3 = 20 20[20 (20)x2 (20)x3 ]/80 20x2 + 130x3 = 20 koje se mogu pojednostaviti na oblik: 35x2 25x3 = 25 25x2 + 125x3 = 25 Ako sada rijeimo jednainu (3.10a) za x2 , dobijamo: x2 = [25 (25)x3 ]/35 (3.11) (3.10a) (3.10b) (3.9a) (3.9b)

Uvrtavajui posljednju jednainu u jednainu (3.10b) nakon pojednostavljenja dobija se: 750 300 x3 = 7 7 Na taj nain, sistem jednaina (3.7) se svodi na sistem jednaina: 80x1 20x2 20x3 = 20 35x2 25x3 = 25 750/7x3 = 300/7 (3.13a) (3.13b) (3.13c) (3.12)

ime je zavren proces eliminacije. Sada se vrlo lako moe dobiti rjeenje sistema zamjenom unazad, tj.: x3 = 300/750 = 0.40 x2 = [25 (25)(0.40)]/35 = 1.00 x1 = [20 (20)(1.00) (20)(0.40)]/80 = 0.60
40

(3.14a) (3.14b) (3.14c)

3.1. Direktne metode

Prethodno opisani primjer predstavlja sluaj jednostavne eliminacije (nema potrebe za zamjenom reda redova i sl.), te se moe rjeavati u pogodnijem obliku ako se matrica koecijenata sistema A proiri vektorom b. Na taj nain imamo: 80 20 20 20 40 20 20 [A|b] = 20 (3.15) 20 20 130 20 Sve informacije se sada mogu 80 20 20 (a) 40 20 (b) 20 (c) 20 20 130 (a) 80 20 20 (b) 0 35 25 (c) 0 25 125 i konano (a) 80 20 20 0 (b) 35 25 (c) 0 0 750/7 pisati sa strane sistema, pa imamo: (20/80)+(b),(20/80)+(c) 20 20 20 20 25 (25/35)+(c) 25 20 x1 = 0.60 x2 = 1.00 25 300/7 x3 = 0.40

(3.16)

(3.17)

(3.18)

Postupak rjeavanja na ovakav nain je veoma pogodan u sluajevima kada imamo vei broj vektora b, jer se rjeenje sistema za sve vektore b moe dobiti simultano. Prilikom rjeavanja sistema jednaina, treba voditi rauna o dva problema koji se mogu javiti: 1. U toku izvoenja metode eliminacije moe se desiti da je elemenat na glavnoj dijagonali modikovane matrice A, koji se jo naziva i glavni elemenat, jednak nuli, nakon ega nije mogue nastaviti proceduru zbog dijeljenja sa nulom. Kako bi se izbjegla ova situacija, prethodno opisana metoda eliminacije mora se modikovati. Ovaj postupak dovodi do metoda sa djeliminim i potpunim izborom glavnog elementa. Metode sa potpunim izborom glavnog elementa obuhvataju zamjenu i redova i kolona, i postupak je prilino komplikovan. Zbog toga se najee koristi procedura sa djeliminim izborom glavnog elementa, kod koje se samo zamjenjuju mjesta redova.
41

Rjeavanje sistema linearnih jednaina

2. U sluaju da su elementi po dijagonalama mnogo manji od ostalih elemenata u jednainama, moe doi do znaajne greke zaokruivanja, to, pak, moe dovesti do pogrenih rjeenja. U tom sluaju vri se skaliranje glavnog elementa, odnosno matrica se podesi da glavni elemenat bude po apsolutnoj vrijednosti vei od ostalih elemenata u toj koloni. I ovaj postupak se izvodi za zamjenom mjesta redova. Primjer 3.2 Rijeiti sljedei sistem jednaina, prikazan u matrinoj formi: 5 x1 0 2 1 4 1 1 x2 = 3 5 2 3 3 x3 Rjeenje Kao to se moe vidjeti, prvi elemenat jednak je nuli, tako da je zamjena redova neophodna. Najvei elemenat po apsolutnoj vrijednosti u prvoj koloni, ispod glavnog elementa, nalazi se u drugom redu, tako da vrimo zamjenu prvog i drugog reda. (a) 4 1 1 3 (0/4)+(b),(2/4)+(c) (b) 0 2 1 5 (3.20) (c) 2 3 3 5 pa se dobija proirena matrica: 4 1 1 3 0 2 1 5 0 7/2 7/2 7/2

(3.19)

(3.21)

Iako u ovom sluaju elemenat na glavnoj dijagonali druge jednaine nije jednak nuli, on je po apsolutnoj vrijednosti manji od elementa ispod njega, tako da je opet neophodno izvesti zamjenu redova. Treba napomenuti da se zamjena redova vri samo na redovima ispod trenutnog glavnog elementa, jer bi se u suprotnom mogao naruiti proces eliminacije koji je do tada obavljen. Nakon zamjene drugog i treeg reda imamo: (a) 3 4 1 1 (b) 0 7/2 7/2 7/2 (4/7)+(c) (3.22) (c) 5 0 2 1
42

3.1. Direktne metode

i konano 4 1 1 0 7/2 7/2 0 0 3

3 x1 = 1 x2 = 2 7/2 3 x3 = 1

(3.23)

Prethodno opisani proces eliminacije, ipak, moe da proizvede greke zaokruivanja, pa se u tu svrhu koristi proces skaliranja jednaina. To se deava kada je glavni elemenat po apsolutnoj vrijednosti manji od ostalih elemenata u istom redu. Skaliranje se, u tom sluaju, izvodi samo kako bi se odabrao glavni elemenat. Sljedei primjer pokazuje upotrebu procesa skaliranja u svrhu izbora glavnog elementa. Primjer 3.3 Provjeriti prednosti procesa skaliranja na sistemu jednaina: 3 2 105 x1 104 2 3 103 x2 = 98 1 1 3 x3 3

(3.24)

ije je rjeenje: x1 = 1, x2 = 1 i x3 = 1, pri emu proraun vriti na tri znaajne cifre. Rjeenje Prvo emo rijeiti sistem jednaina koristei do sada objanjene metode, bez dodatnih objanjenja. (a) 3 2 105 104 (0.667)+(b),(0.333)+(c) 2 3 103 (b) 98 (3.25) (c) 1 1 3 3 (a) 3 2 105 104 (b) 2 4.33 33 28.6 (0.077)+(c) (3.26) (c) 0 0.334 32 31.6 3 2 105 104 2 4.33 33 28.9 (3.27) 0 0 29.5 29.4 Iz posljednje jednaine se zamjenom unazad dobija rjeenje: x3 = 0.997, x2 = 0.924 i x3 = 0.884, to se ne slae dobro sa tanim rjeenjem. Rjeenje je pogreno zbog greke zaokruivanja na tri znaajne cifre.
43

Rjeavanje sistema linearnih jednaina

Kao to je ranije reeno, ove greke se mogu znatno smanjiti ako se primijeni proces skaliranja. Prije izvrenja prvog koraka u procesu eliminacije (izjednaavanje elemenata ispod glavnog elementa sa nulom), potrebno je skalirati sve elemente prve kolone sa najveim elementom u njihovom redu, uzimajui u obzir samo elemente matrice sistema (A), pa je: 3/105 0.0286 a1 = 2/103 = 0.0194 (3.28) 1/3 0.3333 gdje se vektor a1 sastoji od skaliranih elemenata prve kolone. Jasno je da je trei elemenat vektora a1 najvei po apsolutnoj vrijednosti, to znai da prva i trea jednaina datog sistema trebaju zamijeniti mjesta, Na taj nain imamo: 3 (2/1)+(b),(3/1)+(c) 1 1 3 (a) 2 3 103 98 (b) (3.29) 3 2 105 104 (c) (a) 1 1 3 3 (b) 0 5 97 92 (1/5)+(c) (3.30) (c) 0 1 96 95 Ponovnim skaliranjem, imamo da je: a2 = 5/97 = 0.0516 1/96 0.0104

(3.31)

pa nije potrebna nova zamjena redova, nego se iz jednaine (3.30) dobija: 1 1 3 3 0 5 97 92 (3.32) 0 0 76.6 76.6 odakle se dobiva tano rjeenje: x3 = 1, x2 = 1 i x3 = 1.

Gaussova metoda eliminacije

Prethodno opisana metoda eliminacije se naziva i Gaussova metoda eliminacije. Ona je najvanija i najkorisnija direktna metoda za rjeavanje sistema linearnih algebarskih jednaina. Sve ostale direktne metode, kao na primjer,
44

3.1. Direktne metode

Gauss-Jordanova, matrina, metode faktorizacije, Thomasov algoritam za tridijagonalne sisteme, itd., predstavljaju modikacije ili proirenja Gaussove metode. Broj mnoenja i dijeljenja koji koristi Gaussova metoda eliminacije priblino je jednak N = (n3 /3 n/3) za matricu A i n2 za vektor b, to za sistem od 10 jednaina iznosi 430, a za sistem od 100 jednaina 343,000. Dakle, Gaussova metoda eliminacije je daleko bra nego Cramerovo pravilo. Algoritam za Gaussovu metodu eliminacije (sa djeliminim izborom glavnog elementa), koji je prikladan za programiranje, imao bi oblik: 1. Denisati koecijente matrice A, vektora b, te pomonog vektora o . 2. Poevi od prve kolone, treba normalizirati kolone k (k = 1, 2, . . . n 1) i traiti po veliini najvei elemenat u koloni k te zamijeniti redove kako bi se taj koecijent postavio u poziciju glavnog elementa akk . U optimalnom algoritmu, ne vri se zamjena vrijednosti svih koecijenata, tj. zamjena jednaina, nego se samo u pomonom vektoru o oznai/markira data promjena. 3. Za kolonu k (k = 1, 2, . . . , n 1) se primijeni procedura eliminacije na redove i (i = k + 1, k + 2, . . . , n) kako bi se stvorile nule ispod glavnog elementa, akk . Na taj nain se dobija: aij = aij bi = bi aik akk aik akk akj akj (i, j = k + 1, k + 2, . . . , n) (i = k + 1, k + 2, . . . , n) (3.33) (3.34)

Nakon to se primijeni ovaj korak na svih k kolona, originalna matrica A postaje gornja trougaona. 4. Rijeiti nepoznanice x koristei zamjenu unazad, tako da je: xn = bn ann
n

(3.35) aij xj
j=i+1

bi xi = aii

(i = n 1, n 2, . . . , 1)

(3.36)

Pomoni elemenat se koristi u sluajevima izbora glavnog elementa kako bi se izbjegla zamjena koecijenata matrice, i time utedilo vrijeme raunanja.

45

Rjeavanje sistema linearnih jednaina Gauss-Jordanova metoda eliminacije

Gauss-Jordanova metoda eliminacije je varijacija Gaussove metode eliminacije, u kojoj se i elementi iznad kao i elementi ispod glavne dijagonale eliminiu (izjednaavaju sa nulom). Na taj nain se matrica A transformie u dijagonalnu matricu. Redovi se obino skaliraju kako bi se dobili jedinini dijagonalni elementi, pa se matrica A pretvara u jedininu matricu. Tada vektor b postaje vektor rjeenja x. Gauss-Jordanova metoda je, na taj nain, pogodna za vie vektora b, tj. kada je neophodno simultano rijeiti vie sistema sa razliitim vektorima b, i direktno oitavati rjeenja svih sistema. Broj mnoenja i dijeljenja za Gauss-Jordanovu metodu eliminacije je priblino jednak N = (n3 /2 n/2) + n2 , to je za oko 50% vie nego za Gaussovu metodu eliminacije. Primjer 3.4 Primjer 3.1 rijeiti Gauss-Jordanovom metodom. Rjeenje Prvi korak u procesu rjeavanja Gauss-Jordanovom metodom predstavlja skaliranje prve jednaine, odnosno dijeljenje svih elemenata jednaine sa glavnim elementom, tj. (a) 80 20 20 20 /80 20 (b) 40 20 20 (3.37) (c) 20 20 130 20 pa se dobija: (a) 1 0.25 0.25 20 (b) 40 20 (c) 20 20 130 0.25 20 20

(20)+(b),(20)+(c)

(3.38)

Primjenjujui proces eliminacije i naknadnim skaliranjem druge jednaine dobijamo: (a) 1 0.25 0.25 0.25 (b) 0 35 25 25 /35 (3.39) (c) 0 25 125 25 (a) 1 0.25 0.25 0.25 (b) 0 5/7 (0.25)+(a),(25)+(c) 1 5/7 (3.40) (c) 25 0 25 125
46

3.1. Direktne metode

Sada se vri reda, tj. (a) (b) (c) (a) (b) (c) i konano 1 0 0

eliminacija iznad i ispod glavnog elementa i vri skaliranje treeg 1 0 3/7 0 1 5/7 0 0 750/7 1 0 3/7 0 1 5/7 0 0 1 0.6 1.0 0.4 3/7 5/7 300/7 /(750/7) 3/7 5/7 215 (3/7)+(a),(5/7)+(b)

(3.41)

(3.42)

se dobija: 0 0 1 0 0 1 (3.43)

Matrica A je na taj nain transformisana u jedininu matricu, a vektor b je postao vektor rjeenja, x, odnosno xT = [ 0.6 1.0 0.4 ].

Inverzija matrica metodom eliminacije

Gauss-Jordanova metoda se moe koristiti za dobijanje inverzne matrice matrice koecijenata sistema, A, tako da se matrica sistema A poroiri jedininom matricom, a zatim primijeni Gauss-Jordanov algoritam. Proces se moe shematski prikazati sljedeom relacijom: [A|I] [I|A1 ] Primjer 3.5 Nai inverznu matricu koecijenata sistema iz primjera 3.1 koristei GaussJordanovu metodu. Rjeenje Proirivanjem matrice koecijenata iz jednaine (3.7) jedininom matricom, dobijamo: 80 20 20 1 0 0 40 20 0 1 0 [A|I] = 20 (3.45) 20 20 130 0 0 1
47

(3.44)

Rjeavanje sistema linearnih jednaina

Primjenjujui Gauss-Jordanovu (3.45) se moe svesti na oblik: 1 0 0 2/125 1/100 0 1 0 1/100 1/30 0 0 1 1/250 1/150

metodu eliminacije, desna strana jednaine 1/250 1/150 7/750

(3.46)

odakle se direktno dobija A1 : 2/125 1/100 1/250 A1 = 1/100 1/30 1/150 1/250 1/150 7/750 3.1.3 Matrina metoda

(3.47)

Sistem linearnih jednaina moe se rijeiti koritenjem inverzne matrice, A1 na sljedei nain. Ako dati sistem linearnih jednaina napiemo u matrinoj formi: Ax = b A1 Ax = Ix = x = A1 b i konano x = A1 b (3.50) Dakle, ako je poznata inverzna matrica matrice A, A1 , rjeenje x se dobija jednostavnim mnoenjem te inverzne matrice sa vektorom b. Meutim, treba imati na umu da sve matrice ne moraju imati inverznu matricu (mogu biti singularne), pa tada sistem nema jedinstveno rjeenje. Primjer 3.6 Primjer 3.1 rijeiti matrinom metodom. Rjeenje Koristei rjeenje iz prethodnog primjera, iz jednaine (3.50) se direktno dobija: 2/125 1/100 1/250 20 0.6 x = A1 b = 1/100 1/30 1/150 20 = 1.0 (3.51) 1/250 1/150 7/750 20 0.4
48

(3.48) (3.49)

mnoenjem date jednaine inverznom matricom A1 sa lijeve strane, dobijamo

3.1. Direktne metode

3.1.4

Metode faktorizacije

Metode faktorizacije zasnivaju se na injenici da se matrice (kao i skalarne veliine), mogu faktorizirati (razloiti) u proizvod neke dvije matrice na beskonano mnogo naina. Kada su takve dvije matrice donja trougaona, L (od engleske rijei lower ), i gornja trougaona, U (od engleske rijei upper ), tj. A=LU (3.52) dobija se tzv. LU faktorizacija, koja je jedinstvena. Metoda faktorizacije kod koje su elementi po dijagonali donje trougaone matrice jednaki jedinici naziva se i Doolittleova metoda, a ona kod koje su elementi dijagonale gornje trougaone matrice jednaki jedinici metoda Crouta. Kod metode Doolittlea, matrica U se dobija procesom Gaussove eliminacije (predstavlja prvi dio proirene matrice prije primjene procesa zamjene unazad), dok matrica L predstavlja zapis mnoitelja u procesu eliminacije (brojevi u zagradama sa strane jednaina, koji mnoe jednainu sa glavnim elementom u procesu eliminacije). Moe se pokazati da kada se odrede matrice L i U, rjeavanje se sastoji iz dva koraka: prvo se vektor b transformie u vektor b koristei izraz (zamjena unaprijed): Lb = b a zatim se vektor rjeenja dobiva sa (zamjena unazad): Ux = b Sljedei primjer pokazuje upotrebu Doolittleove metode. Primjer 3.7 Primjer 3.1 rijeiti metodom Doolittlea. Rjeenje Kao to je u prethodnom tekstu reeno, matrica L predstavlja matricu koja se sastoji od mnoitelja nastalih u procesu eliminacije Gaussovom metodom, a matrica U gornju tridijagonalnu matricu u koju se transformie matrica koecijenata A pomou Gaussove metode. Na taj nain, koristei rjeenje iz primjera 3.1 u pogodnijem obliku, dobija se: 1 0 0 80 20 20 1 0 U = 0 35 25 L = 0.25 (3.55) 0.25 5/7 1 0 0 750/7
49

(3.53)

(3.54)

Rjeavanje sistema linearnih jednaina

Dakle, matrica L se generie na sljedei nain. Elementi prve kolone jednaki su mnoiteljima iz prvog koraka pri rjeavanju Gaussovom metodom eliminacije (jednaina (3.16)) element L12 jednak je mnoitelju koji ide uz jednainu (b) (tj. 20/80 = 0.25), dok je element L13 jednak mnoitelju koji ide uz jednainu (c) (tj. 20/80 = 0.25). Treba napomenuti da ispred mnoitelja treba da stoji znak minus (), poto se u procesu eliminacije od jednaina oduzima trenutno glavna jednaina pomnoena mnoiteljem. Analogno, elementi druge kolone su jednaki mnoiteljima iz drugog koraka procesa eliminacije (jednaina (3.17)), odnosno element L23 jednak je mnoitelju koji ide uz jednainu c) (tj. 5/7). Po deniciji, elementi na dijagonali jednaki su 1, a ostali, iznad dijagonale, jednaki 0. Kako je ranije reeno, matrica U u metodi Doolittlea jednaka je gornjoj trougaonoj matrici u koju se transformie matrica sistema A u toku postupka Gaussove metode eliminacije u ovom sluaju radi se o matrici iz jednaine (3.18). Sada se koristei jednainu (3.53) dobija: 1 0 0 b1 20 0.25 1 0 b2 = 20 (3.56) 0.25 5/7 1 b3 20 i zamjenom unaprijed: b1 = 20 b2 = 20 (1/4)20 = 25 b3 = 20 (1/4)20 (5/7)25 = 300/7 Uvrtavajui dobijeni vektor b u jednainu (3.54) dobija se: 80 20 20 x1 20 0 35 25 x2 = 25 0 0 750/7 x3 300/7 i zamjenom unaprijed: x3 = 300/750 = 0.40 x2 = 25 [(25)0.4]/35 = 1.0 x1 = 20 20 [(20)1.0 + (20)0.4]/80 = 0.60 (3.59a) (3.59b) (3.59c) (3.57a) (3.57b) (3.57c)

(3.58)

Osnovna prednost metoda faktorizacije je u tome to je broj operacija mnoenja i dijeljenja, kada su poznate matrice L i U, jednak n2 , to je mnogo
50

3.1. Direktne metode

manje nego to to zahtijeva metoda Gaussove eliminacije. To naroito dolazi do izraaja kada se treba izraunati sistem jednaina za veliki broj razliitih vrijednosti vektora b. Na slian nain se moe izvesti i algoritam za Croutovu metodu. 3.1.5 Nedostaci metoda eliminacije

Svi nesingularni sistemi linearnih jednaina imaju rjeenje. Teoretski gledano, to rjeenje se uvijek moe nai nekom od metoda eliminacije. Meutim, postoje dva osnovna problema koja se javljaju u primjeni metoda eliminacije: (i) prisustvo greaka zaokruivanja, i (ii) slaba podeenost sistema.
Greke zaokruivanja

Kao to je to u uvodnim poglavljima reeno, greke zaokruivanja nastaju kada se neki beskonano dugi brojevi aproksimiraju brojevima konane tanosti. Primjer 3.3 pokazuje kako greka zaokruivanja moe da utjee na rezultat. Greke zaokruivanja u rjeavanju sistema jednaina se mogu smanjiti pogodnim razmjetajem jednaina, kao to je to i pokazano u pomenutom primjeru. U ove svrhe se moe, takoer, koristiti i poseban iterativni postupak, tzv. metoda iterativnog poboljanja. Meutim, treba napomenuti da se greke zaokruivanja nikada ne mogu u potpunosti eliminisati.
Podeenost sistema

Svi dobro podeeni nesingularni numeriki problemi imaju tano rjeenje. Ovo rjeenje se, teoretski, uvijek moe ostvariti koritenjem razlomaka ili beskonano dugih brojeva. Meutim, svi praktini prorauni se ostvaruju sa konanim brojevima, koji kao posljedicu sadre greke zaokruivanja. Na taj nain, greke zaokruivanja, mogu promijeniti rezultat prorauna. Dobro podeen sistem je onaj kod kojeg male promjene bilo kojeg elementa sistema uzrokuju male promjene u rezultatu problema. Nasuprot tome, slabo podeen sistem je onaj kod kojeg male promjene nekog elementa uzrokuju velike promjene u rjeenju sistema. S obzirom da su slabo podeeni sistemi veoma osjetljivi na male promjene elemenata problema, oni su osjetljivi i na greke zaokruivanja. Primjer 3.8 Pokaimo ponaanje jednog slabo podeenog sistema na sljedeem primjeru: x1 + x 2 = 2 (3.60a)
51

Rjeavanje sistema linearnih jednaina

x1 + 1.0001x2 = 2.0001

(3.60b)

Primjenom Gaussove eliminacije na sistem jednaina (3.60) dobija se: (a) (b) 1 1 1 1.0001 2 2.0001
(1)+(b)

(3.61) (3.62)

1 1 0 0.0001

2 0.0001

to dovodi do rjeenja x2 = 1 i x1 = 1. Posmatrajmo sada sistem kod kojeg smo koecijent a22 promijenili sa 1.0001 na 0.9999. Imamo: (a) (b) 1 1 1 0.9999 2 2.0001
(1)+(b)

(3.63) (3.64)

1 1 1 0.0001

2 0.0001

to dovodi do rjeenja x2 = 1 i x1 = 3, koje je potpuno drugaije od onog prethodnog. Slino ponaanje bi se desilo ako bismo elemenat b2 promijenili za neku malu veliinu. Dakle, male promjene u koecijentima sistema dovele su do znatnih promjena u rjeenju sistema, to pokazuje da je sistem slabo podeen. Jedini pravi lijek protiv problema slabe podeenosti je koritenje beskonano dugih brojeva. Kako to nije mogue ostvariti, ostaje samo pokuaj da se skaliranjem i zamjenama redova pobolja podeenost sistema. Podeenost sistema se procjenjuje koritenjem norme matrice sistema i broja podeenosti . Postoji vie denicija norme matrice sistema, kao:
n

A A A A

= max

1jn

|aij |
i=1 n

maksimalan zbir kolone

(3.65a) (3.65b) (3.65c) (3.65d)

= max

1jn

|aij | maksimalan zbir reda


j=1

= min i
n n

spektralna norma a2 ij Euklidska norma

=
i=1 j=1

52

3.1. Direktne metode

Za razliku od norme, broj podeenosti predstavlja mjeru osjetljivosti sistema na male promjene njegovih elemenata. Broj podeenosti matrice A dat je izrazom: C(A) = A A1 (3.66)

Velike vrijednosti broja podeenosti pokazuju i veliku osjetljivost na promjene u vektoru b, pa je takav sistem slabo podeen. Primjer 3.9 Pokaimo na primjeru 3.8 upotrebu norme i broja podeenosti. Rjeenje Matrica sistema jednaina (3.60) ima oblik: A= 1 1 1 0.0001 (3.67)

pa bi Euklidska norma imala vrijednost:


n n

=
i=1 j=1

a2 ij

12 + 12 + 12 + 1.00012 = 2.00005

(3.68)

Nasuprot tome, inverzna matrica i njena Euklidska norma su: A1 = 10001 10000 10000 10000
n n

(3.69)

=
i=1 j=1

a2 ij

= 20000.5

(3.70)

Dakle, broj podeenosti je: C(A) = A


e

A1

= 2.00005 20000.5 = 40002

(3.71)

to pokazuje da je sistem slabo podeen. Treba napomenuti da u sluaju kada je sistem dobro podeen, a postoje znatne greke u rjeenju, osnovni uzrok je tanost raunanja.

53

Rjeavanje sistema linearnih jednaina

3.2

Iterativne metode

Za mnoge velike sisteme linearnih jednaina, koji proistiu iz inenjerskih problema, matrica koecijenata A je rijetka, tj. veina elemenata jednaka je nuli. U tom sluaju mnogo je ekasnije za njihovo rjeavanje koristiti iterativne nego direktne metode. Iterativne metode, kao i kod rjeavanja nelinearnih jednaina, poinju sa pretpostavkom poetnog rjeenja x(0) . Ovo rjeenje se zatim koristi za dobivanje boljeg rjeenja x(1) na osnovu neke strategije smanjenja razlike izmeu x(0) i stvarnog rjeenja x. Postupak se nastavlja do postizanja eljene tanosti. Procedura je konvergentna ako se sa poveanjem broja iteracija aproksimacija rjeenja pribliava tanom rjeenju. Iterativne metode ne konvergiraju uvijek za sve jednaine u datom sistemu, niti za sve mogue rasporede jednaina nekog sistema. Dovoljan uslov za konvergenciju iterativnih metoda opisanih u ovom poglavlju za bilo koji poetni vektor rjeenja x je dijagonalna dominantnost matrice sistema. Pri tome, matrica je dijagonalno dominantna ako je apsolutna vrijednost svakog elementa na glavnoj dijagonali jednaka ili vea od zbira apsolutnih vrijednosti svih ostalih elemenata u tom redu, pri emu je za bar jedan red apsolutna vrijednost dijagonalnog elementa vea od odgovarajueg zbira apsolutnih vrijednosti ostalih elemenata, ili
n

|aii |
j=1 j=i

|aij |

(i = 1, 2, . . . , n)

(3.72)

pri emu znak > vrijedi za bar jedan red. Neki sistemi koji nisu dijagonalno dominantni mogu se preurediti (na primjer zamjenom redova i sl.) i uiniti dijagonalno dominantnim. S druge strane, neki, sistemi, koji nisu dijagonalno dominantni, mogu konvergirati ka rjeenju za odreena poetna rjeenja, ali im konvergencija nije osigurana. U praksi se iterativne metode ne koriste u sluajevima kada dijagonalna dominantnost ne moe da se osigura. Kada ponovljena primjena iterativne metode ne proizvodi znaajne razlike u rjeenju, algoritam treba zaustaviti, odnosno algoritam se zaustavlja kada se postigne odreeni kriterij konvergencije. Broj iteracija neophodan za postizanje konvergencije zavisi od: Dominantnosti dijagonalnih koecijenata. Sa poveanjem dijagonalne dominantnosti, smanjuje se broj iteracija neophodnih za postizanje kriterija konvergencije.
54

3.2. Iterativne metode

koritene metode poetnog vektora rjeenja zahtijevanog kriterija konvergencije. 3.2.1 Jacobijeva metoda

Posmatrajmo opti sistem linearnih algebarskih jednaina Ax=b, koji u indeksnoj notaciji ima oblik:
n

aij xj = bi
j=1

(i = 1, 2, . . . , n)

(3.73)

U Jacobijevoj iteraciji, svaka jednaina sistema se rjeava po komponenti vektora rjeenja koja se odnosi na dijagonalni element, tj. xi . Na taj nain imamo: 1 xi = aii
i1 n

bi
j=1

aij xj
j=i+1

aij xj

(i = 1, 2, . . . , n)

(3.74)

Neka je x(0) vektor poetnog rjeenja, gdje indeks u zagradi oznaava broj iteracije. Prva aproksimacija se dobija pomou ovog vektora na osnovu jednakosti:
(1) xi

1 = aii

i1

n (0) aij xj

bi
j=1

j=i+1

aij xj

(0)

(i = 1, 2, . . . , n)

(3.75)

a analogno se moe dobiti i rekurzivna formula Jacobijevog algoritma: xi


(k+1)

1 aii

i1

bi
j=1

aij xj
j=i+1

(k)

aij xj

(k)

(i = 1, 2, . . . , n) (3.76)

ili u neto prikladnijem obliku: xi


(k+1)

= xi +

(k)

1 aii

bi
j=1

aij xj

(k)

(i = 1, 2, . . . , n)

(3.77)

Jednaina (3.77) se moe napisati i u optem obliku:


(k+1) xi

(k) xi

R + i aii

(k)

(i = 1, 2, . . . , n)

(3.78)
55

Rjeavanje sistema linearnih jednaina

gdje
n (k) Ri

= bi
j=1

aij xj

(k)

(i = 1, 2, . . . , n)

(3.79)

predstavlja ostatak (rezidual) i-te jednaine. Kao i u ostalim iterativnim postupcima, formule (3.77) ili (3.78) se koriste dok se ne postigne eljena tanost. Jacobijeva metoda se ponekad naziva i metoda simultanih iteracija, jer se sve vrijednosti xi iteriraju simultano. Iz formule (3.77) se vidi da vrijednost (k+1) (k) zavisi samo o xi , tj. o vrijednostima iz prethodne iteracije, pa red xi procesiranja jednaina nije nebitan. Primjer 3.10 Rijeiti sljedei sistem linearnih jednaina: 4 1 0 1 0 x1 1 4 1 0 1 x2 0 1 4 1 0 x3 = 1 0 1 4 1 x4 0 1 0 1 4 x5 (3.80)

100 100 100 100 100

Proraun zaustaviti kada najvea apsolutna razlika rjeenja dvije uzastopne iteracije bude manja od 10 6. Rjeenje Na osnovu elemenata matrice sistema lako se zakljuuje da je uslov konvergencije (3.72) ispunjen za sve jednaine, pa se moe pristupiti rjeavanju pomou Jacobijeve iterativne metode. Jednaina (3.80) se moe prikazati u proirenom obliku: 4x1 x2 + x4 x1 + 4x2 x3 + x5 x2 + 4x3 x4 x1 x3 + 4x4 x5 x2 x4 + 4x5 = = = = = 100 100 100 100 100 (3.81a) (3.81b) (3.81c) (3.81d) (3.81e)

tako da se, koristei jednainu (3.77), dobija: x1 = 25 + 0.25x2 0.25x4 x2 = 25 + 0.25x1 + 0.25x3 0.25x5
56

(3.82a) (3.82b)

3.2. Iterativne metode

x3 = 25 + 0.25x2 + 0.25x4 x4 = 25 0.25x1 + 0.25x3 + 0.25x5 x5 = 25 0.25x2 + 0.25x4 Ako se za poetno rjeenje uzme da je x(0)T = [ 0.0 0.0 0.0 0.0 0.0] i uvrsti u prethodnu jednainu, lako se dobiva da je x(0)T = [ 25.0 25.0 25.0 25.0 25.0]

(3.82c) (3.82d) (3.82e)

Postupak se ponavlja na slian nain za x(2) , itd. Rezultati su sumirani u tabeli 3.1.
Tabela 3.1: Uz primjer 3.10 k x1 x2 0 0.000000 0.000000 1 25.000000 25.000000 2 25.000000 31.250000 3 25.000000 34.375000 4 25.000000 35.156250 . . . . . . . . . 17 18 25.000000 25.000000 35.714285 35.714285

x3 0.000000 25.000000 37.500000 40.625000 42.187500 . . . 42.857142 42.857143

x4 0.000000 25.000000 31.250000 34.375000 35.156250 . . . 35.714285 35.714285

x5 0.000000 25.000000 25.000000 25.000000 25.000000 . . . 25.000000 25.000000

Lako je uoiti da je sistem jednaina, odnosno matrica koecijenata jednaine (3.80), simetrian, tako da vrijedi da je x1 = x5 , i x2 = x4 . Do istih rezultata se moglo doi i koristei opti oblik, tj. jednainu (3.78). Prvo se na osnovu jednaine (3.79) odrede reziduali: R1 R2 R3 R4 R1 = = = = = 100 4x1 + x2 x4 100 + x1 4x2 + x3 x5 100 + x2 + 4x3 + x4 100 x1 + x3 4x4 + x5 100 x2 + x4 4x5 (3.83a) (3.83b) (3.83c) (3.83d) (3.83e)

a nakon toga se uvrtenjem u jednainu (3.78) dobivaju vrijednosti xi . Postupak se ponavlja dok se ne dostigne eljena tanost.

57

Rjeavanje sistema linearnih jednaina

3.2.2

Gauss-Seidelova metoda
(k+1) (k)

Za razliku od Jacobijeve metode, kod koje sve veliine xi ovise samo o xi (rjeenju iz prethodne iteracije), Gauss-Seidelova metoda manipulie sa tek izraunatim vrijednostima. Algoritam za Gauss-Seidelovu metodu se dobija iz Jacobijevog algoritma, jednaina (3.76), tako to se u sabiranju od j = 1 do (k+1) (k) i 1 koriste vrijednosti xi , a za j = i + 1 do n vrijednosti xi , odnosno u indeksnoj notaciji:
(k+1) xi

1 = aii

i1

n (k+1) aij xj

bi
j=1

j=i+1

aij xj

(k)

(i = 1, 2, . . . , n) (3.84)

ili u optem obliku:


(k+1) xi (k) Ri

(k) xi

R + i aii

(k)

(i = 1, 2, . . . , n)
n

(3.85) (i = 1, 2, . . . , n) (3.86)

i1

= bi
j=1

(k+1) aij xj

j=i

aij xj

(k)

Upravo zbog toga to se koriste tek izraunate vrijednosti pojedinih nepoznanica, Gauss-Seidelova metoda se naziva i metoda sukcesivne iteracije. Primjer 3.11 Rijeiti problem iz zadatka 3.10 koristei Gauss-Sedelovu metodu. Rjeenje Postupak rjeavanja Gauss-Seidelovom je vrlo slian Jacobijevoj metodi, s tom razlikom to se u proraunu koriste najnovije vrijednosti rjeenja. Na taj nain, jednaina (3.82) ima oblik: x1
(k+1)

= 25 + 0.25x2 0.25x4 = 25 + = 25 + = 25 = 25
(k+1) 0.25x1 (k+1) 0.25x2 (k+1) 0.25x1 (k+1) 0.25x2

(k)

(k)

(3.87a) (3.87b) (3.87c) (3.87d) (3.87e)

(k+1) x2 (k+1) x3 (k+1) x4 (k+1) x5

+ + + +

(k) (k) 0.25x3 0.25x5 (k) 0.25x4 (k+1) (k) 0.25x3 + 0.25x5 (k+1) 0.25x4

gdje je k korak iteracije. Uzimajui da je poetna aproksimacija jednaka x(0)T = [ 0.0 0.0 0.0 0.0 0.0]
58

3.2. Iterativne metode

lako se na osnovu jednaine (3.87) dobivaju sljedee aproksimacije : x1


(1)

= 25 + 0.25x2 0.25x4 = 0 = 25 + = 25 + = 25 = 25
(1) 0.25x1 (1) 0.25x2 (1) 0.25x1 (1) 0.25x2

(0)

(0)

(3.88a) = 31.25 = 26.953125 (3.88b) (3.88c) (3.88d) (3.88e)

(1) x2 (1) x3 (1) x4 (1) x5

+ + + +

(0) 0.25x3 (0) 0.25x4 (1) 0.25x3 (1) 0.25x4

(0) 0.25x5

= 32.8125
(0) 0.25x5

= 23.925781

Postupak se ponavlja dok se ne postigne traena tanost. Ostali rezultati prorauna su sumirani u tabeli 3.2.
Tabela 3.2: Uz primjer 3.11 k x1 x2 0 0.000000 0.000000 1 25.000000 31.250000 2 26.074219 33.740234 3 24.808502 34.947586 . . . . . . . . . 14 15 25.000001 25.000000 35.714286 35.714286

x3 0.000000 32.812500 40.173340 42.363453 . . . 42.857143 42.857143

x4 0.000000 26.953125 34.506226 35.686612 . . . 35.714285 35.714286

x5 0.000000 23.925781 25.191498 25.184757 . . . 25.000000 25.000000

Iz tabele je jasno da se ista tanost dostie neto bre koristei Gauss-Seidelovu metodu. Do istih rezultata se moglo doi i koristei opti oblik (jednaina (3.85)), tj. u ovom sluaju imali bismo: R1
(k+1)

= 100 4x1 + x2 x4 = 100 + = 100 + = 100 = 100


(k+1) x1 (k+1) x2 (k+1) x1 (k+1) x2

(k)

(k)

(k)

(3.89a) +
(k+1) x5

(k+1) R2 (k+1) R3 (k+1) R4 (k+1) R1

+ + +

(k) (k+1) 4x2 + x3 (k) (k) 4x3 + x4 (k+1) (k) x3 4x4 (k) (k+1) x4 4x5

(3.89b) (3.89c) (3.89d) (3.89e)

(k) x5

Dakle, prvo se izraunava vrijednost R1 , pa na osnovu nje x1 , zatim R2 , pa x2 , itd.

59

Rjeavanje sistema linearnih jednaina

3.2.3

Metode relaksacije

Iterativne metode se esto same po sebi nazivaju relaksacionim metodama, poto iterativnu proceduru moemo posmatrati kao relaksaciju vektora rjeenja x(0) za rjeenje x. Ipak, termin relaksacija vezan je za tzv. Southwellovu metodu relaksacije, kod koje se kombinuju dva procesa kako bi se ubrzala konvergencija: (i) red relaksacije se odreuje traenjem po veliini najveeg reziduala |Ri |max i (ii) relaksira se odgovarajua jednaina tako da bude (Ri )max = 0. Ipak, proces traenja najveeg reziduala za velike sisteme je veoma spor, tako da nije ekasan. Zato se esto primjenjuje malo drugaija metoda koja se naziva i metoda sukcesivne nadrelaksacije (tzv. SOR metoda). (k) Metoda sukcesivne nadrelaksacije ukljuuje mnoenje reziduala Ri sa relaksirajuim faktorom , pa bi za Gauss-Seidelovu metodu, na primjer, imala oblik:
(k+1) xi (k) Ri

(k) xi

R + i aii

(k)

(i = 1, 2, . . . , n)
n

(3.90) (3.91)

i1

= bi
j=1

(k+1) aij xj

j=i

aij xj

(k)

(i = 1, 2, . . . , n)

Iz gornje jednakosti se vidi da za = 1 dobijamo originalnu Gauss-Seidelovu metodu. Moe se pokazati da za 0 < 2 sistem konvergira, pri emu je za 0 < 1 sistem jednaina podrelaksiran, a za 1 < 2 nadrelaksiran. Podrelaksacija je pogodna kada se iterativnom metodom udaljava od rjeenja, to je karakteristika nelinearnih sistema jednaina. Treba napomenuti da relaksirajui faktor ne mijenja konano rjeenje, s obzirom da mnoi rezidual, koji sa konvergencijom ka tanom rjeenju tei nuli. Osnovni nedostatak relaksirajuih metoda je odreivanje optimalne vrijednosti faktora . Na alost, ne postoji dobra opta procedura za odreivanje ove vrijednosti. Ipak, dobrim izborom faktora , kompjutersko vrijeme se moe smanjiti za ak 10-50 puta, to je u svakom sluaju vrijedno pomena radi mogueg koritenja. Optimalna vrijednost se moe nai eksperimentisanjem, ali nije preporuljiva ako se problem rjeava samo jednom. Ako se, pak, problem rjeava esto nad istim vrijednostima matrice sistema A sa razliitim vrijednostima b, onda je to pogodno uraditi. Vrijedno je pomenuti da Jacobijeva i Gauss-Seidelova metoda uz ispunjenje dijagonalne dominantnosti matrice sistema konvergiraju, dok metoda relaksacije za = 1 moe, ali i ne mora konvergirati.
eng.

Successive-Over-Relaxation

60

3.3. Ostale metode

Primjer 3.12 Rijeiti problem iz zadatka 3.10 koristei metodu relaksacije Gauss-Sedelove metode. Uzeti da je = 1.10. Rjeenje Metode relaksacije pogodno je raditi kada se algoritam za Gauss-Seidelovu metodu prikae jednainom (3.85), odnosno kada se koristi jednaina (3.90). Uzimajui da je poetna aproksimacija jednaka x(0)T = [ 0.0 0.0 0.0 0.0 0.0] prema jednaini (3.89) se dobija rezidual R1 = 100.00 pa je: 100.00 = 27.50 4 Uvrtavajui dobijenu vrijednost u jednainu (3.89b) dobija se: x1 = 0 + 1.1
(1) (1) (0)

(3.92)

R2 = 100 + 27.50 = 127.70 pa je:


(1)

(3.93)

127.50 = 35.0625 (3.94) 4 Nakon raunanja vrijednosti x3 , x4 i x5 , prelazi se na sljedeu iteraciju, i postupak se nastavlja do postizanja eljene tanosti. U tabeli 3.3 date su ostale vrijednosti prorauna. Jasno vidi da je broj iteracija manji nego koristei prethodne dvije metode. x2 = 0 + 1.1

3.3

Ostale metode

Pored prethodno opisanih metoda, postoji jo niz metoda koje se koriste za rjeavanje sistema linearnih jednaina. Naroito mjesto zauzimaju tzv. nestacionarne metode, koje ukljuuju informacije koje se mijenjaju u svakoj iteraciji. One su izuzetno ekasne, ali im je primjena i razumijevanje neto kompliciranija. Najpoznatije metode u ovoj grupi su metoda konjugovanih gradijenata, koja se koristi za simetrine matrice sistema, te metoda bikonjugovanih gradijenata, za asimetrine matrice sistema.
61

Rjeavanje sistema linearnih jednaina

Tabela 3.3: Uz primjer 3.12 k x1 x2 0 0.000000 0.000000 1 27.500000 35.062500 2 26.100497 34.194375 3 24.419371 35.230346 . . . . . . . . . 11 12 13 24.999996 25.000000 25.000000 35.714285 35.714286 35.714286

x3 0.000000 37.142188 41.480925 42.914285 . . . 42.857145 42.857143 42.857143

x4 0.000000 30.151602 35.905571 35.968342 . . . 35.714287 35.714286 35.714286

x5 0.000000 26.149503 25.355629 25.167386 . . . 25.000000 25.000000 25.000000

3.4

Pitanja i zadaci

1. Objasniti koja su mogua rjeenja sistema linearnih jednaina! 2. Koje su osnovne razlike izmeu direktnih i iterativnih metoda? 3. Objasniti osnovni koncept direktnih metoda eliminacije! 4. Objasniti Gaussovu metodu eliminacije! 5. Objasniti postupke zamjene redova i skaliranja! Iz kojih razloga se koriste ovi postupci? 6. Objasniti Gauss-Jordanovu metodu eliminacije! 7. Na koji nain se koristei Gauss-Jordanovu metodu eliminacije moe odrediti inverzna matrica? 8. Objasniti matrinu metodu! 9. Objasniti koncept metode faktorizacije! Koje metode faktorizacije razlikujemo? 10. Koji su nedostaci direktnih metoda? 11. Objasniti utjecaj greke zaokruivanja na numeriki algoritam! 12. Objasniti utjecaj broja podeenosti na neku matricu! 13. Objasniti koncept koritenja iterativnih metoda! 14. Objasniti Jacobijevu metodu! 15. Objasniti Gauss-Seidelovu metodu!
62

3.4. Pitanja i zadaci

16. Objasniti metode relaksacije! 17. U nekom programskom jeziku, napisati program za rjeavanje sistema linearnih jednaina koristei: a) b) c) d) e) Gaussovu metode eliminacije Gauss-Jordanovu metodu! Jacobijevu metodu! Gauss-Seidelovu metodu! metode relaksacije.

18. Sljedee sisteme jednaina rijeiti Gaussovom metodom: a) 2x1 + 3x2 + x3 = 9 3x1 + 4x2 5x3 = 0 x1 2x2 + x3 = 4 b) x1 + 3x2 + 2x3 x4 4x1 + 2x2 + 5x3 + x4 3x1 3x2 + 2x3 + 4x4 x1 + 2x2 3x3 + 5x4 c) 1 2 1 x1 1 2 1 2 x2 = 3 1 1 3 x3 8 d) 2 2 2 1 x1 2 4 x2 1 3 1 3 4 2 x3 2 4 3 2 x4 7 10 = 14 1 = = = = 9 27 19 14

19. Primjere iz zadatka 18 rijeiti Gauss-Jordanovom metodom! 20. Primjere iz zadatka 18 rijeiti matrinom metodom!
63

Rjeavanje sistema linearnih jednaina

21. Primjere iz zadatka 18 rijeiti metodom faktorizacije, odnosno metodom Doolittlea! 22. Sljedee sisteme jednaina rijeiti Jacobijevom iterativnom metodom: a) 2 1 0 0 b) 3 2 0 0 c) 2 1 0 0 x1 1 2 x2 1 0 0 1 2 1 x3 0 0 1 2 x4 d) 2 1 0 0 x1 1 2 1 0 x2 0 1 2 1 x3 0 0 1 2 x4 5 1 = 0 8 1 2 = 7 1 2 3 2 0 0 2 3 2 0 x1 0 x2 2 x3 3 x4 12 17 = 14 7 1 2 1 0 0 1 2 1 0 x1 0 x2 1 x3 2 x4 4 8 = 12 11

23. Primjere iz zadatka 22 rijeiti Gauss-Seidelovom metodom! 24. Primjere iz zadatka 22 rijeiti metodom relaksacije sa = 1.27! 25. Nai optimalnu vrijednost faktora relaksacije za primjer 3.12. Rezultat predstaviti graki - kao koordinatne ose koristiti broj iteracija i vrijednost . U tu svrhu napisati program u nekom od programskih jezika, ili komercijalnih softvera.

64

Poglavlje 4

Interpolacija i aproksimacija funkcija


U mnogim inenjerskim problemima, podaci koji se posmatraju su poznati samo za niz diskretnih taaka, a ne kao kontinuirana funkcija. Na primjer, moe se desiti da je (kontinuirana) funkcija y = f (x) poznata samo u n diskretnih vrijednosti x, tj.: yi = y(xi ) (i = 1, 2, . . . , n) (4.2) (4.1)

Meutim, veliine diskretnih podataka nisu uvijek ono to nama treba, nego nam ponekad trebaju i vrijednosti funkcije u nekim drugim takama (interpolacija, ekstrapolacija). Takoer, mogu nam trebati izvodi takve zavisnosti (diferenciranje), ili integral (integriranje). Ovo i sljedee poglavlje su u uskoj vezi sa interpolacijom, diferenciranjem i integriranjem diskretnih podataka. Svi ovi procesi se izvravaju aproksimiranjem diskretnih podataka pomou neke pribline funkcije, i izvrenjem eljenog procesa. Postoji veliki broj razliitih funkcija koje se mogu koristiti kao pribline funkcije. U stvari, svaka algebarska funkcija se moe koristiti u tu svrhu. Ipak, najee koritene funkcije su: 1. polinomi, a naroito linearne aproksimacione funkcije, 2. trigonometrijske funkcije, 3. eksponencijalne funkcije. Pri tome, ove funkcije trebaju imati sljedee osobine:

Interpolacija i aproksimacija funkcija

1. lako odreivanje, 2. lako izraunavanje, 3. lako diferenciranje, 4. lako integriranje. Postoje dva fundamentalno razliita pristupa za odreivanje priblinih funkcija koje se koriste za opisivanje zavisnosti grupe podataka: 1. interpolacija, ili tano poklapanje 2. aproksimacija, ili priblino poklapanje. Interpolacija dovodi do funkcija koje tano prolaze kroz sve zadate take, kao to je to pokazano na slici 4.1a. Interpolacija se obino koristi za mali broj podataka. Nasuprot tome, aproksimacijom se dolazi do funkcija koje prolaze kroz grupu podataka na najbolji mogui nain, bez obaveze da tano prou kroz zadate take (slika 4.1b). Aproksimacija je veoma pogodna za velike grupe podataka, lijepo grupisane podatke, te male i velike grupe razbacanih podataka.
a) y b) y

Slika 4.1: Priblino predstavljanje podataka funkcijama: a) interpolacija, b) aproksimacija

4.1

Interpolacija polinomima
Pn (x) = a0 + a1 x + a2 x2 + . . . + an xn (4.3)

Opta formula polinoma n-tog reda ima oblik:

gdje n predstavlja red polinoma, a ai (i = 0, 1, . . . , n) su konstantni koecijenti. Dakle, imamo n + 1 koecijenata, pa je za dobijanje jedinstvenih vrijednosti koecijenata neophodno n + 1 diskretnih taaka.
66

Diskretne ta ke

Diskretne ta ke

4.1. Interpolacija polinomima

Za proces interpolacije pomou polinoma veoma su bitne sljedee dvije teoreme: Weierstrassov aproksimacioni polinom: Ako je funkcija f (x) neprekidna na intervalu [a, b], tada za svako proizvoljno malo > 0 postoji polinom Pn (x), kod kojeg vrijednost n zavisi od vrijednosti , tako da za svako x u intervalu [a, b] vrijedi |Pn (x) f (x)| < Teorem o jedinstvenosti rjeenja: Polinom n-tog reda koji prolazi kroz tano n + 1 diskretnih taaka je jedinstven. Dakle, bilo koja funkcija se moe interpolirati do eljene ili traene tanosti polinomom dovoljno velikog reda. S obzirom da se u praksi koriste polinomi nieg reda, treba paziti na postizanje tanosti. U narednim poglavljima date su neke od metoda koje se koriste za izraunavanje koecijenata polinoma. 4.1.1 Direktna metoda

Posmatrajmo optu proceduru za interpolaciju niza taaka sa jednakim ili nejednakim razmakom pomou polinoma. Neka je dato n + 1 taaka [x0 , f (x0 )], [x1 , f (x1 )], . . . ,[xn , f (xn )], koje moemo pisati i u obliku (x0 , y0 ), (x1 , y1 ), . . . ,(xn , yn ). Problem se svodi na odreivanje jedinstvenog polinoma n-tog reda, Pn (x) (jednaina (4.3)), koji prolazi kroz sve date take. Uvrtavajui svaki podatak u jednainu (4.3) dobija se sistem od n + 1 jednaina sa n + 1 nepoznatih koecijenata ai (i = 0, 1, . . . , n), tj.: y0 = a0 + a1 x0 + a2 x2 + . . . + an xn 0 0 y1 = a0 + a1 x1 + a2 x2 + . . . + an xn 1 1 y2 = a0 + a1 x2 + a2 x2 + . . . + an xn 2 2 ..................... yn = a0 + a1 xn + a2 x2 + . . . + an xn n n Glavna determinanta sistema jednaka je: 1 x0 1 x1 1 x2 . . . . . . 1 xn x2 0 x2 1 x2 2 . . . x2 n . . . xn 0 . . . xn 1 . . . xn 2 . .. . . . . . . xn n (4.4)

(4.5)

67

Interpolacija i aproksimacija funkcija

i naziva se Vandermondova determinanta. Moe se pokazati da je vrijednost determinante za razliite take xi (i = 0, 1, . . . , n) razliita od nule, tako da sistem (4.4) ima jedinstveno rjeenje. Dati sistem jednaina moe se rijeiti nekom od metoda koje su objanjene u prethodnom poglavlju. Rezultujui polinom je jedinstveni polinom koji prolazi kroz svih n + 1 taaka. Glavna prednost direktne metode je to se kao rezultat dobija eksplicitni oblik funkcije, to znai da se vrijednost za bilo koju taku dobija jednostavnim izraunavanjem vrijednosti funkcije za tu taku. Prednost je i u tome to se moe koristiti za podatke koji nemaju jednak razmak. Glavni nedostatak metode je u tome to se u sluaju dobivanja nekih novih podataka, ime se poveava i red polinoma, postupak dobijanja koecijenata polinoma mora ponoviti. Rezultat dobijen prethodno, sa polinomom nieg reda, nema nikakve veze sa onim koji se dobiju u ponovljenom postupku. Primjer 4.1 Primjenu procesa interpolacije pomou direktne metode prikazati na primjeru jednostavne funkcije f (x) = 1/x, koristei podatake u tabeli 4.1. Interpolirati vrijednost za x = 3.44, koristei linearnu, kvadratnu i kubnu aproksimaciju.
Tabela 4.1: Uz primjer 4.1 x 3.35 3.40 f (x) 0.298507 0.294118

3.50 0.285714

3.60 0.277778

Rjeenje Tana vrijednost funkcije je: f (3.44) = 1 = 0.290698 3.44 (4.6)

Prvo pokaimo proces interpolacije koristei kvadratnu funkciju: P2 (x) = a + bx + cx2 (4.7)

i tri (n + 1 = 2 + 1 = 3) take date u prethodnoj tabeli. Ako polinom (4.7) primijenimo na svaku od datih taaka, dobijamo sljedei sistem jednaina: 0.298507 = a + b (3.35) + c (3.35)2 0.294118 = a + b (3.40) + c (3.40)2 0.285714 = a + b (3.50) + c (3.50)2
68

(4.8)

4.1. Interpolacija polinomima

Jednaina (4.8) se moe rijeiti nekom od metoda pokazanih u prethodnom poglavlju (npr. Gaussova metoda eliminacije), tako da se dobije sljedei polinom: P2 (x) = 0.876561 0.256080x + 0.0249333x2 Uvrtavajui vrijednost x = 3.44 u prethodni polinom dobijamo: P2 (3.44) = 0.876561 0.256080 3.44 + 0.0249333 3.442 = 0.290697 (4.10) (4.9)

U sluaju linearnog polinoma, uzimamo dvije take (drugu i treu, jer se zadata taka nalazi izmeu njih), tj. x = 3.40 i x = 3.50, pa se dobija sljedei sistem: 0.294118 = a + b (3.40) 0.285714 = a + b (3.50) to dovodi do polinoma: P1 (x) = 0.579854 0.08404x Uvrtavajui vrijednost x = 3.44 u prethodni polinom dobijamo: P1 (3.44) = 0.579854 0.08404 3.44 = 0.290756 (4.13) (4.12) (4.11)

U sluaju kubnog interpolacionog polinoma, neophodne su nam sve etiri zadate take, pa se dobija sljedei sistem jednaina: 0.298507 = a + b (3.35) + c (3.35)2 + d (3.35)3 0.294118 = a + b (3.40) + c (3.40)2 + d (3.40)3 0.285714 = a + b (3.50) + c (3.50)2 + d (3.50)3 0.277778 = a + b (3.60) + c (3.60)2 + d (3.60)3 sa konanim rjeenjem u obliku kubnog polinoma: P3 (x) = 1.121066 0.470839x + 0.0878x2 0.00613333x3 odnosno, uvrtavajui vrijednost x = 3.44 P3 (3.44) = 0.290698 (4.16) (4.15) (4.14)

Poredei dobivene rezultate sa tanim rjeenjem dobivaju se sljedee veliine greaka: P (3.44) =0.290756 linearni Greka = 0.000058
69

Interpolacija i aproksimacija funkcija

=0.290697 =0.290698

kvadratni kubni

=0.000001 = 0.000000

ime se pokazuje prednost koritenja polinoma vieg reda.

4.1.2

Lagrangeov interpolacioni polinom

Kao to se moglo vidjeti u prethodnom dijelu, direktna metoda je veoma jednostavna po svom principu, ali ima mnogo nedostataka, meu kojima prednjai znatno vrijeme za odreivanje koecijenata polinoma. Osim toga, za polinome vieg reda (n > 4) sistem jednaina moe biti slabo podeen, to moe da uzrokuje veliku greku u procjeni koecijenata interpolacionog polinoma. Jedan od jednostavnijih postupaka, koji se vrlo esto koristi za interpolaciju, je upotreba Lagrangeovih interpolacionih polinoma. Ovaj postupak se, takoer, moe koristiti za interpolaciju podataka sa jednakim i nejednakim razmacima. Posmatrajmo, na primjer, sluaj sa dva podatka [a, f (a)] i [b, f (b)]. Linearni Lagrangeov polinom koji tano prolazi kroz obje take dat je jednainom: P1 (x) = (x b) (x a) f (a) + f (b) (a b) (b a) (4.17)

to je lako pokazati. U sluaju tri zadate take, [a, f (a)], [b, f (b)] i [c, f (c)], polinom ima oblik: P2 (x) = (x b)(x c) (x a)(x c) f (a) + f (b) (a b)(a c) (b a)(b c) (x a)(x b) + f (c) (c a)(c b)

(4.18)

Slino prethodnom sluaju, lako je pokazati da dobijeni polinom prolazi kroz sve tri zadate take. Openito, gore sprovedena procedura moe se primijeniti za bilo koji skup od n + 1 taaka, koji e dati polinom n-tog reda. U tom sluaju, za n + 1
70

4.1. Interpolacija polinomima

taaka [a, f (a)], [b, f (b)], . . . , [k, f (k)], imamo: Pn (x) = (x b)(x c) . . . (x k) f (a) (a b)(a c) . . . (a k) (x a)(x c) . . . (x k) + f (b) (b a)(b c) . . . (b k) (x a)(x b) . . . (x j) + ... + f (k) (k a)(k b) . . . (k j)

(4.19)

ili u neto drugaijem obliku: Pn (x) = L0 (x)f (x0 ) + L1 (x)f (x1 ) + . . . + Ln (x)f (xn )
n

=
k=0

Lk (x)f (xk )

(4.20)

gdje Lk (x) = =
i=0 i=k

(x x0 ) . . . (x xk1 )(x xk+1 ) . . . (x xn ) (xk x0 ) . . . (xk xk1 )(xk xk+1 ) . . . (xk xn )


n

x xi xk xi

(k = 0, 1, . . . , n)

(4.21)

predstavljaju tzv. Lagrangeove polinome. Vidi se da za odreivanje Lagrangeovog interpolacionog polinoma nema potrebe za rjeavanjem sistema jednaina, ali je neophodno znatno raunarsko vrijeme za dobijanje njegovih koecijenata. Nain odreivanja Lagrangeovog interpolacionog polinoma je znatno drugaiji od onog dobivenog direktnom metodom, ali po teoremu jedinstvenosti rjeenja, obje metode daju isto, tano rjeenje. Prednosti i nedostaci ove metode su slini kao i u prethodnom sluaju. Ipak, problem ponovnog rjeavanja za drugaiji red polinoma, moe se prevazii koritenjem odreenih procedura, koje se mogu nai u literaturi (Nevillov algoritam, razlika dividendi). Primjer 4.2 Primjer 4.1 rijeiti pomou Lagrangeovog interpolacionog polinoma koristei linearnu, kvadratnu i kubnu interpolaciju. Rjeenje
71

Interpolacija i aproksimacija funkcija

Najprije emo odrediti interpolacioni polinom prvog reda, koristei drugu i treu taku iz tabele 4.1. Prema jednaini (4.17) imamo: P1 (x) = (x 3.50) (x 3.40) 0.294118 + 0.285714 (3.40 3.50) (3.50 3.40) = 0.579854 0.08404x (4.22)

Za polinom drugog reda, koristimo prve tri take iz tabele 4.1 i jednainu (4.18), pa je: P2 (x) = (x 3.40)(x 3.50) 0.298507 (3.35 3.40)(3.35 3.50) (x 3.35)(x 3.50) + 0.294118 (3.40 3.35)(3.40 3.50) (x 3.35)(x 3.40) + 0.285714 (3.50 3.35)(3.50 3.40) = 0.876561 0.256080x + 0.0249333x2

(4.23)

Za dobijanje polinoma treeg reda koristimo optu formulu (4.20), pri emu je n = 3. U tu svrhu, koriste se sve etiri take iz tabele 4.1. Moe se pokazati da je konano rjeenje: P3 (x) = 1.121066 0.470839x + 0.0878x2 0.00613333x3 (4.24)

Vidi se da su sva rjeenja jednaka onim dobivenim u primjeru 4.1, to se i moglo oekivati s obzirom na teorem jedinstvenosti polinoma.

4.1.3

Newtonovi interpolacioni polinomi

Jedan od oblika polinoma ntog reda koji prolazi kroz n + 1 taaka je i: Pn (x) = f0 + s s s n f0 2 f0 + . . . + f0 + n 2 1 (4.25)

gdje je parametar s, tzv. interpolaciona promjenljiva, dat izrazom: s=


72

x x0 h

ime je

x = x0 + sh

(4.26)

4.1. Interpolacija polinomima

gdje je h korak, tj. h = xi xi1 , a razlike f0 , 2 f0 , . . . , su date izrazima: f0 = f1 f0 2 f0 = f1 f0 = f2 2f1 + f0 ......


n

(4.27) n fi i

n f0 = n1 f1 n1 f0 =
i=0

(1)i

Ove razlike se mogu dobiti i pomou tzv. tabele podijeljenih razlika. Jedna takva tabela za etiri vrijednosti funkcije data je na slici 4.2, pri emu vrijednost svakog lana tabele predstavlja razliku dvije vrijednosti sa lijeve strane, kao to je to dato i izrazima (4.27).
xi x1 x2 x3 x4 fi
(0) (0)

fi

(1)

fi

(2)

fi

(3)

f1 f2 f3 f4

f1
(0)

(1)

f1 f2
(1)

(2)

f1 f2
(2)

(3)

(0)

f3
(0)

(1)

Slika 4.2: Tabela podijeljenih razlika

Polinom predstavljen jednainom (4.25) naziva se prvi Newtonov interpolacioni polinom, ili Newtonov interpolacioni polinom za diferenciranje unaprijed. Ovaj polinom uopte ne lii ni na jedan od polinoma koji su dati u poglavlju o aproksimacionim funkcijama, ali ipak ima osobinu da prolazi kroz svih n + 1 zadatih taaka. Imajui u vidu teorem o jedinstvenosti rjeenja, on predstavlja eljeni jedinstveni aproksimacioni polinom. Najvea prednost ovog polinoma je to, osim jednostavnosti, poveani red polinoma, a time i njegovu tanost, dobijamo dodavanjem dodatnog lana na prethodni polinom manjeg reda, tako da nije potrebno dodatno raunanje koecijenata. Time se rad koji je uinjen prethodno, sa manjim brojem podataka, ne mora ponavljati. Primjer 4.3 Koristei prvi Newtonov interpolacioni polinom izraunati vrijednost funkcije
73

Interpolacija i aproksimacija funkcija

f (x) = 1/x u taki za x = 3.44. U tu svrhu koristiti Tabelu 4.3. U tabeli su, takoer, date i podijeljene razlike za date vrijednosti funkcije.
xi 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 fi
(0)

fi

(1)

fi

(2)

fi

(3)

fi

(4)

0.322581 -0.010081 0.312500 -0.009470 0.303030 -0.008912 0.294118 -0.008404 0.285714 -0.007936 0.277778 -0.007508 0.270270 -0.007112 0.263158 -0.006748 0.256410 Slika 4.3: Tabela podijeljenih razlika za primjer 4.3 0.000364 0.000396 -0.000032 0.000428 -0.000032 0.000000 0.000468 -0.000040 0.000008 0.000508 -0.000040 0.000000 0.000558 -0.000050 0.000010 0.000611 -0.000053 0.000003

Rjeenje Prema tabeli 4.3, imamo da je x0 = 3.40, te h = 0.1, pa je: s= x x0 3.44 3.40 = = 0.4 h 0.1 (4.28)

Iz jednaine (4.25) se direktno dobija: P (3.44) = f (3.4) + sf (3.4) + s(s 1) 2 f (3.4) 2!

s(s 1)(s 2) 3 f (3.4) + . . . + 3!


74

(4.29)

4.1. Interpolacija polinomima

te uvodei brojne vrijednosti u jednainu (4.29): P (3.44) = 0.294118 + 0.4(0.008404) 0.4(0.4 1) + (0.000468) (4.30) 2 0.4(0.4 1)(0.4 2) (0.00040) + . . . + 3! Uzimajui u obzir samo prva dva lana dobija se linearna aproksimacija. Dodavajui i trei lan dobija se kvadratna, a uzmajui u obzir prva etiri lana polinoma u jednaini (4.30) dobija se kubna aproksimacija. Dakle, imamo: P (3.44) =0.290756 =0.290700 =0.290698 linearni kvadratni kubni Greka =0.000058 =0.000002 =0.000000

Rjeenje za linearnu aproksimaciju je potpuno isto kao i u primjerima 4.1 i 4.2, dok je u sluaju kvadratne aproksimacije rezultat neto drugaiji, s obzirom da se u razmatranje nisu uzele iste vorne take. No, i ovdje se vidi da se poveanjem reda polinoma znatno poveava tanost. U prethodnom primjeru smo kao poetnu taku uzeli taku x0 = 3.4, tako da traena vrijednost pada u zadati opseg (x = 3.44 (3.4, 3.5)) i imamo proces interpolacije. Ako, pak, elimo izraunati vrijednost funkcije za x = 3.44, pri emu poetna taka x0 = 3.2 ne ulazi u opseg vornih taaka koje su date, imamo ekstrapolacije, i rezultati su manje tani. U tom sluaju, ako je x0 = 3.2 i s = 2.4, dobija se: P (3.44) =0.289772 =0.290709 =0.290698 linearni kvadratni kubni Greka =0.000926 = 0.000011 = 0.000000

Vidimo da je greka za linearnu i kvadratnu ekstrapolaciju znatna, dok kubna dovodi do interpolacionog polinoma. Prvi Newtonov interpolacioni polinom koristi se za poetnu grupu podataka, ili grupu podataka koja se nalazi u sredini itave grupe. U sluaju kada je neophodno primijeniti ovu metodu na posljednju grupu podataka, neophodne razlike unaprijed ne postoje, pa se koristi tzv. drugi Newtonov interpolacioni polinom, ili Newtonov interpolacioni polinom za diferenciranje unazad koji je dat izrazom: s+ s+ s+ Pn (x) = f0 + f0 + 2 f0 + . . . + n f0 (4.31) 1 2 n
75

Interpolacija i aproksimacija funkcija

pri emu je: s+ i = s(s + 1)(s + 2) (s + [i 1]) i! (4.32)

a ostale oznake su kao u prethodnom sluaju. Primjer 4.4 Koristei drugi Newtonov interpolacioni polinom izraunati vrijednost funkcije f (x) = 1/x u taki za x = 3.44 (tano rjeenje je x = 0.290698 . . .). Kao poetnu vrijednost uzeti x0 = 3.5 iz tabele 4.3. Rjeenje Prema tabeli 4.3, h = 0.1 i sa x0 = 3.5, imamo: s= x x0 3.44 3.50 = = 0.6 h 0.1 (4.33)

Iz jednaine (4.31) se direktno dobija: P (3.44) = f (3.5) + sf (3.5) + s(s + 1) 2 f (3.5) 2!

s(s + 1)(s + 2) 3 + f (3.5) + . . . 3! te uvodei brojne vrijednosti u jednainu (4.34): P (3.44) = 0.285714 + (0.6)(0.008404) (0.6)(0.6 + 1) + (0.000508) 2 (0.6)(0.6 + 1)(0.4 + 2) + (0.00050) + . . . 3!

(4.34)

(4.35)

Uzimajui u obzir samo prva dva lana dobija se linearna aproksimacija. Dodavajui i trei lan dobija se kvadratna, a uzmajui u obzir prva etiri lana polinoma u jednaini (4.35) dobija se kubna aproksimacija. Dakle, imamo: P (3.44) =0.290756 =0.290695 =0.290698 linearni kvadratni kubni Greka = 0.000058 =0.000003 = 0.000000

76

4.2. Aproksimacija funkcija

4.1.4

Greka interpolacije

Kao to je poznato, interpolacioni polinom se sa datom funkcijom poklapa u svim vornim takama. Meutim, to ne znai da se i vrijednosti funkcije izmeu vornih taaka dobro poklapaju sa interpolacionim polinomom. Razlika izmeu vrijednosti polinoma i funkcije, koju dati polinom interpolira, predstavlja greku interpolacije. Moe se pokazati da je ova greka interpolacije, Rn (x), za neku neprekidnu i diferencijabilnu funkciju do reda n+1 na intervalu [a, b] data izrazom: Rn (x) = f (x) Pn (x) = (x) gdje je:
n

f (n+1) () (n + 1)!

(4.36)

(x) =
i=0

(x xi )

(a, b)

(4.37)

Meutim, formula (4.36) ima ogranienu praktinu vrijednost, s obzirom da se rijetko poznaje f (n+1) , a gotovo nikada . Ipak, formula ima teoretsku vrijednost u procjeni greke kod numerikog diferenciranja i integriranja.

4.2

Aproksimacija funkcija

U prethodnom poglavlju opisane su interpolacione funkcije koje su pogodne za mali uzorak diskretnih podataka. U sluaju kada se radi o velikom broju podataka, ili podataka koji nisu lijepo grupisani, krive sa tanim poklapanjem nije mogue ostvariti, te su neophodna priblina poklapanja - proces aproksimacije. Posmatrajmo, na primjer, grupu diskretnih taaka [xi , Y (xi )] = (xi , Yi ) i aproksimacioni polinom y(x) koji je izabran da predstavi ove podatke, kao to je prikazano na slici 4.4. Vidi se da diskretne take ne lee na polinomu y(x). Osnovna ideja odreivanja aproksimacione funkcije zasniva se na minimiziranju devijacija (razmaka) taaka od aproksimacionog polinoma. Pri tome, moe se pretpostaviti da su vrijednosti nezavisne promjenljive xi tane, a da devijacija zavisi od zavisno promjenljive Yi . Tada je devijacija ei razlika izmeu Yi i yi = f (xi ), tj. ei = Yi yi (4.38)

Proces minimizacije se moe izvriti na razliite naine, ali se u tu svrhu najee koristi metoda najmanjih kvadrata.
77

Interpolacija i aproksimacija funkcija

y(x) Yi(xi) Yi ei y(x)

Diskretne ta ke

xi

Slika 4.4: Graka interpretacija aproksimacije

4.2.1

Metoda najmanjih kvadrata

Metoda najmanjih kvadrata zasniva se na minimiziranju zbira kvadrata razlika ei = Yi yi , tj. na minimiziranju funkcije S, koja je zavisna od parametara aproksimacione funkcije:
N N

S=
i=1

(ei ) =
i=1

(Yi yi )2

(4.39)

Pri tome, aproksimaciona funkcija y(x) moe biti linearna ili nelinearna (pri tome se naziv linearan odnosi na linearnost po parametrima, a ne nezavisnim veliinama). Primjer linearne funkcije je polinom n-tog reda, dok su logaritamska ili eksponencijalna funkcija primjeri nelinearnih aproksimacionih funkcija.
Aproksimacija polinomom

Neka je dato N taaka (xi , Yi ) koje treba aproksimirati polinomom n-tog reda: y = a0 + a1 x + a2 x2 + . . . + an xn Zbir kvadrata devijacija prema jednaini (4.39) je:
N N

(4.40)

S(a0 , a1 , a2 , . . . , an ) =
i=1 N

(ei ) =
i=1

(Yi yi )2 (4.41)

=
i=1

(Yi a0 a1 xi . . . an xn )2 i

78

4.2. Aproksimacija funkcija

Potreban uslov za postojanje ekstrema (time i minimuma) ove funkcije sa vie nepoznatih je: S = ak
N

2(Yi a0 a1 xi . . .an xn )(xk ) = 0 i i


i=1

(k = 0, 1, . . . , n) (4.42)

Na taj nain se dobija sistem od n + 1 linearnih jednaina koji nakon preureivanja ima oblik:
N N N

a0 N + a1
i=1 N

xi + . . . + an
i=1 N

xn i
N

=
i=1

Yi
N

a0
i=1

xi + a1
i=1

x2 i

+ . . . + an
i=1

xn+1 i

=
i=1

xi Yi

(4.43)

..............................
N N N N

a0
i=1

xn i

+ a1
i=1

xn+1 i

+ . . . + an
i=1

x2n i

=
i=1

xn Yi i

Sistem jednaina (4.43) moe se rijeiti nekom od metoda za rjeavanje sistema jednaina. Na osnovu jednaine 4.43, lako je pokazati da se u sluaju aproksimacije linearnom funkcijom y = a + bx dobija sljedei sistem jednaina:
N N

aN + b
i=1 N

xi =
i=1 N

Yi
N

(4.44) xi Yi

a
i=1

xi + b
i=1

x2 = i
i=1

koji se vrlo lako moe rijeiti. Aproksimacija polinomom prvog reda se najee koristi u praksi. Pri koritenju polinoma vieg reda mogu se pojaviti problemi, jer sistem jednaina (4.43) moe biti slabo podeen. Ipak, normalizovanjem jednaina i koritenjem dvostruke preciznosti ovi problemi se mogu prevazii. Polinomi do 6-tog reda obino daju vrlo dobre rezultate, dok vrijednosti za n od 6 do 10 mogu, ali i ne moraju dovesti do dobrih rezultata. Vrijednosti n > 10 openito vode loim rezultatima. Slaba podeenost sistema jednaina moe se prevazii koritenjem nekih drugih oblika linearne aproksimacije, kao to su, na primjer. ebievljevi polinomi i mogu se nai u literaturi.

79

Interpolacija i aproksimacija funkcija

Primjer 4.5 U tabeli 4.2 data je zavisnost specine toplote zraka pri konstantnom pritisku (za niske temperature), Cp , od temperature zraka, T . Koristei metodu najmanjih kvadrata potrebno je odrediti aproksimacioni polinom prvog reda u obliku: Cp = a + bT (4.45)

Tabela 4.2: Uz primjer 4.5 T, K 300 400 500 600 700 800 900 1000 Cp , J/mK103 1.0045 1.0134 1.0296 1.0507 1.0743 1.0984 1.1212 1.1410 Cp ,J/mK103 0.9948 1.0153 1.0358 1.0564 1.0769 1.0974 1.1180 1.1385 Greka, % -0.97 0.19 0.61 0.54 0.24 -0.09 -0.29 -0.22

Rjeenje Koristei jednainu (4.44) dobija se sljedei sistem jednaina:


8 8

8a + b
i=1 8

Ti =
i=1 8

Cp,i
8

(4.46) Ti Cp,i

a
i=1

Ti + b
i=1

Ti 2 =
i=1

koji nakon uvrtavanja vrijednosti iz tabele ima oblik: 8a + 5200b = 8.5331 5200a + 3800000b = 5632.74 (4.47)

Koristei neku od metoda za rjeavanje sistema linearnih jednaina dobija se: Cp = 0.933194 + 0.205298 103 T
80

(4.48)

4.2. Aproksimacija funkcija

U tabeli 4.2 date su i vrijednosti dobivene jednainom (4.48), Cp , te greke aproksimacije. Primjer 4.6 U tabeli 4.3 data je zavisnost specine toplote zraka pri konstantnom pritisku (za visoke temperature), Cp , od temperature zraka, T . Koristei metodu najmanjih kvadrata potrebno je odrediti aproksimacioni polinom drugog reda u obliku: Cp = a + bT + cT 2 (4.49)

Tabela 4.3: Uz primjer 4.6 T, K 1000 1500 2000 2500 3000 Cp , J/mK103 1.1410 1.2095 1.2520 1.2782 1.2955 Cp , J/mK103 1.1427 1.2059 1.2522 1.2815 1.2938 Greka, % 0.15 -0.29 0.02 0.26 -0.13

Rjeenje Koristei jednainu (4.43) za n = 3 dobija se sljedei sistem jednaina:


5 5 5

5a + b
i=1 5

Ti + c
i=1 5 2

Ti =
i=1 5 3

Cp,i
5

a
i=1 5

Ti + b
i=1 5

Ti + c
i=1 5

Ti =
i=1 5

Ti Cp,i Ti 2 Cp,i
i=1

(4.50)

a
i=1

Ti 2 + b
i=1

Ti 3 + c
i=1

Ti 4 =

koji nakon uvrtavanja vrijednosti iz tabele ima oblik: 5a + 10 103 b + 22.5 106 c = 6.1762 10 103 a + 22.5 106 b + 55 109 c = 12.5413 103 22.5 106 a + 55 109 b + 142.125 1012 c = 288.5186 106
81

(4.51)

Interpolacija i aproksimacija funkcija

Koristei neku od metoda za rjeavanje sistema linearnih jednaina dobija se: Cp = 0.965460 + 0.211197 103 T 0.0339143 106 T 2 (4.52)

U tabeli 4.3 date su i vrijednosti dobivene jednainom (4.52), te greke aproksimacije.

Nelinearna aproksimacija

U mnogim inenjerskim problemima zikalne osobine nekih procesa navode nas na koritenje nekih drugih aproksimacionih funkcija, kao to su na primjer logaritamske, eksponencijalne, i sl. U tim sluajevima, metoda najmanjih kvadrata vodi do sistema jednaina koji je nelinearan, pa je traenje koecijenata takvih jednaina oteano. Ipak, ponekad je nelinearni aproksimacioni problem mogue svesti na linearan koristei pogodne smjene. Posmatrajmo stepenu funkciju koja se esto koristi za opisivanje zikalnih procesa: y = axb Logaritmiranjem gornjeg izraza dobija se: ln(y) = ln a + b ln(x) (4.54) (4.53)

i uvoenjem smjena Y = ln(y), A = ln(a), X = ln(x) i B = b, problem se svodi na aproksimaciju polinomom prvog reda: Y = A + Bx (4.55)

Pored prethodne, esto se koristi i eksponencijalna funkcija (na primjer, kriva napon-naprezanje za nelinearne materijale): y = aebx koja se moe nakon logaritmiranja svesti na oblik linearne funkcije: ln(y) = ln a + bx Y = A + bx (4.57) (4.56)

Postoji i niz drugih funkcija koje se mogu koristiti u ovu svrhu. Koja od njih je najpodesnija, zavisi od prirode zikalnog procesa koji se opisuje. U tu svrhu nam moe pomoi i grako predstavljanje podataka u Descartesovom ili nekom specijalnom koordinatnom sistemu (logaritamski, polulogaritamski, . . . ).
82

4.2. Aproksimacija funkcija

Primjer 4.7 Podatke date u tabeli 4.4 aproksimirati pomou nelinearne relacije date jednainom: y = aebx (4.58)

Tabela 4.4: Uz primjer 4.7 x 0 1 y 3 6 Y = ln(y) 1.098612 1.791759

2 12 2.484907

3 24 3.178053

4 48 3.871201

Rjeenje Prema jednaini (4.57), trebamo prvo odrediti ln(y) (dato u tabeli 4.4), a onda problem svesti na odreivanje aproksimacione funkcije Y = A + bx, pri emu je Y = ln(y) i A = ln(a). Na taj nain dobijamo sistem jednaina:
5 5

5A + b
i=1 5

xi =
i=1 5

Yi
5

(4.59) xi Yi

A
i=1

xi + b
i=1

xi 2 =
i=1

koji nakon uvrtavanja vrijednosti iz tabele ima oblik: 8A + 10b = 12.424533 10A + 30b = 31.780538 (4.60)

Koristei neku od metoda za rjeavanje sistema linearnih jednaina dobija se: Y = A + bx = 1.09861 + 0.69315x odnosno, koristei smjene: y = aebx = eA ebx = e1.09861 e0.69315x = 3e0.69315x Posljednja jednakost se moe predstaviti i u obliku: y = 3e0.69315x = 3(e0.69315 )x = 3 2x (4.63) (4.62) (4.61)

83

Interpolacija i aproksimacija funkcija

4.3

Pitanja i zadaci

1. Objasniti razliku izmeu aproksimacije i interpolacije! 2. Navesti metode interpolacije! 3. Objasniti prednosti i mane direktne metode! 4. Objasniti Lagrangeov interpolacioni polinom. Navesti njegove prednosti i mane! 5. Navesti osnovne prednosti Newtonovih interpolacionih polinoma! 6. Greka interpolacije, i njena upotrebna vrijednost. 7. Navesti metode koje se koriste za aproksimaciju funkcija! 8. Objasniti metodu najmanjih kvadrata! 9. Objasniti metodu najmanjih kvadrata koritenjem linearne aproksimacije! 10. Objasniti metodu najmanjih kvadrata koritenjem nelinearne aproksimacije! 11. Tabela 4.5 daje zavisnost specine toplote zraka pri konstantnom pritisku, Cp i entalpije, h, od temperature, T .
Tabela 4.5: Uz zadatak 11 T, K 1000 1100 1200 1300 Cp ,kJ/kgK 1.1410 1.1573 1.1722 1.1858 h,kJ/kg 1047.248 1162.174 1278.663 1396.578 T, K 1400 1500 1600 Cp ,kJ/kgK 1.1982 1.2095 1.2197 h,kJ/kg 1515.792 1636.188 1757.657

Koristei direktnu metodu, nai: a) vrijednost Cp (1120) koristei dvije take, b) vrijednost Cp (1120) koristei tri take, c) vrijednost Cp (1480) koristei dvije take, d) vrijednost Cp (1480) koristei tri take. Kao poetnu taku koristiti onu koja je najblia traenoj vrijednosti.
84

4.3. Pitanja i zadaci

12. Zadatak 11 rijeiti za h(T ) umjesto Cp (T )! 13. Zadatak 11 rijeiti koristei Lagrangeov interpolacioni polinom! 14. Zadatak 12 rijeiti koristei Lagrangeov interpolacioni polinom! 15. Zadatke 11 i 12 rijeiti koritenjem prvog Newtonovog interpolacionog polinoma! 16. Koristei podatke za specinu toplotu zraka pri konstantnom pritisku, Cp , iz tabele 4.5 za 1000 T 1400, nai najbolju aproksimaciju polinomom prvog reda. Dati greku za svaku vornu taku. 17. Prethodni zadatak rijeiti uzimajui u obzir sve podatke iz tabele 4.5. Rezultate uporediti sa onim iz prethodnog primjera. 18. Nai polinom etvrtog reda kao aproksimaciju podataka za specinu gustinu zraka pri konstantnom pritisku, i dati greku za svaku vornu taku. 19. Napisati program za izraunavanje kvadratne interpolacione funkcije za date podatke, koristei direktnu metodu! 20. Napisati program koji interpolira vrijednost grupe podataka, koristei Lagrangeov interpolacioni polinom! 21. Napisati program sa metodom najmanjih kvadrata za sluaj polinoma prvog reda! 22. Koecijent trenja za laminarno teenje se moe povezati sa Raynoldsovim brojem, Re, koristei sljedeu relaciju: f = aReb (4.64)

Koristei podatke iz tabele 4.6, nai a i b koristei metodu najmanjih kvadrata.


Tabela 4.6: Uz zadatak 22 Re f 500 0.0320 1000 0.0160 1500 0.0107 2000 0.0080

85

Poglavlje 5

Numeriko diferenciranje i integriranje


5.1 Numeriko diferenciranje

U mnogim inenjerskim problemima zahtijeva se izraunavanje izvoda (na primjer, odreivanje brzine ili ubrzanja na osnovu podataka o preenom putu, i sl.). Pri tome, funkcija koja se eli diferencirati moe biti poznata, ali moe biti i niz diskretnih podataka o nekom procesu. Openito, poznate funkcije se lako mogu diferencirati, dok je za niz diskretnih podataka neophodno koristiti numeriko diferenciranje. Niz diskretnih podataka se moe diferencirati diferenciranjem priblinih funkcija koje su izvedene u prethodnom poglavlju, ili koritenjem formula za diferenciranje. U prvom sluaju, najprije se odredi priblina funkcija za zadati niz taaka (podataka), a zatim se izvri njeno diferenciranje, tj. vrijedi: d d (f (x)) (Pn (x)) = dx dx S druge strane, diferenciranje se moe izvesti pomou formula za diferenciranje, koje se izvode iz Newtonovih interpolacionih polinoma, denicije izvoda ili pomou Taylorovog reda. Ovaj nain se esto koristi i za aproksimiranje tanih derivacija pri numerikom rjeavanju diferencijalnih jednaina. 5.1.1 Diferenciranje pomou priblinih polinoma

U prethodnom poglavlju opisane su metode za odreivanje priblinih polinoma. Kao rezultat interpolacije ili aproksimacije, dobija se, polinom oblika: Pn (x) = a0 + a1 x + a2 x2 + . . . + an xn

Numeriko diferenciranje i integriranje

tako da je postupak diferenciranja veoma lagan. Za prve dvije derivacije, na primjer, imamo: f (x) P (x) = a1 + 2a2 x + 3a3 x2 + . . . + nan xn1 = f (x) P (x) = 2a2 + 6a3 x + . . . + n(n 1)an xn2 = (5.1) (5.2)

Ipak, treba napomenuti da je takav proces diferenciranja veoma nestabilan i netaan, i da mala odstupanja aproksimacione funkcije od stvarne, |f (x) Pn (x)|, ne znae i mala odstupanja derivacija, |f (x) Pn (x)|, kao to je to prikazano na slici 5.1.
Pn(x) f (x)

f (x)

f (x) Pn(x) x0 x1 x2

Slika 5.1: Greka diferenciranja koritenjem aproksimacionog polinoma

Zbog toga se ovaj nain diferenciranja veoma rijetko koristi, a daleko pogodnije je diferenciranje koritenjem formula za diferenciranje. Primjer 5.1 Za podatke u Tabeli 5.1, izraunati vrijednost prvog izvoda u taki x = 3.5, koristei polinom drugog reda. Rjeenje Kao i u prethodnom poglavlju, zadate vrijednosti predstavljaju vrijednosti funkcije f (x) = 1/x, a tana vrijednost prvog izvoda u taki x = 3.5 je: f (3.5) = 1 1 = 2 = 0.081633 . . . 2 x 3.5

Koecijenti polinoma drugog reda, koje prolaze kroz sve tri zadate take, mogu se dobiti nekom od metoda opisanih u prethodnom poglavlju (direktna,
88

5.1. Numeriko diferenciranje

Tabela 5.1: Uz primjer 5.1 x f (x) 3.40 0.294118 3.50 0.285714 3.60 0.277778

Lagrangeovi polinomi, Newtonovi interpolacioni polinomi). Na primjer, koristei direktnu metodu, imamo sistem: 0.294118 = a + b (3.40) + c (3.40)2 0.285714 = a + b (3.50) + c (3.50)2 0.277778 = a + b (3.60) + c (3.60)
2

(5.3)

Koristei neku od metoda za rjeavanje sistema linearnih jednaina, dobija se: a = 0.858314, b = 0.2455 i c = 0.0234, odnosno: P2 (x) = 0.858314 0.2455x + 0.0234x2 Sada je lako odrediti i prvi izvod: P2 (x) = 0.2455 + 0.0468x pa je: P2 (3.5) = 0.2455 + 0.0468 3.5 = 0.0817 Na osnovu greke, |f (3.5)Pn (3.5) = 0.000067|, moemo zakljuiti da dobijeni polinom dobro aproksimira funkcija i u pogledu njenog prvog izvoda.

5.1.2

Formule za diferenciranje

Formule za diferenciranje se mogu dobiti iz denicije izvoda neke funkcije f (x) u taki x = xi : f (xi ) = lim f (xi + h) f (xi ) h0 h (5.4)

gdje je h razmak izmeu dvije susjedne take. Ako se sada uzme priblina vrijednost gornjeg izraza, dobija se: f (xi ) f (xi + h) f (xi ) h (5.5)
89

Numeriko diferenciranje i integriranje

to predstavlja aproksimaciju prvog izvoda funkcije f (x). Ako se, pak, umjesto h u jednaini (5.5) uzme vrijednost h dobija se formula: f (xi ) f (xi h) (5.6) h Izrazi (5.5) i (5.6) predstavljaju formule za diferenciranje unaprijed i unazad, respektivno. Na slici 5.2 data je graka interpretacija ovih formula, pri emu nagib linije t odgovara tanom izvodu funkcije f (x) u taki C. Dakle, nagib linije koja prolazi kroz take A i C, t , odgovara formuli za diferenciranje unazad, a nagib linije koja prolazi kroz take C i B, t+ , formuli za diferenciranje unaprijed. f (xi )
f (x)
A tc B t+ f (xi-h) f (xi) f (xi+h) tC t

xi-1

xi

xi+1

Slika 5.2: Graka interpretacija formula za diferenciranje

Iz slike se vidi da bi linija koja prolazi kroz take A i B bila bolja aproksimacija izvoda funkcije f (x). Njen nagib jednak je: f (xi + h) f (xi h) (5.7) 2h Ovaj izraz predstavlja formulu za centralno diferenciranje. Do istih izraza, ali uz mogunost procjene greke, moe se doi i razvojem funkcije f (x) u Taylorov red u okolini take xi : f (xi ) f (x) = f (xi ) + f (xi )(x xi ) + f (xi ) (x xi )2 + . . . 2 (5.8)

f (n) (xi ) (x xi )n + . . . + n! odnosno zanemarivanjem lanova vieg reda (za xi < < xi + h) imamo f (x) = f (xi ) + f (xi )(x xi ) +
90

f () 2 h 2

(5.9)

5.1. Numeriko diferenciranje

Iz izraza (5.9) direktno se za x xi = h (diferenciranje unaprijed) i x xi = h (diferenciranje unazad) dobija, respektivno: f (xi ) f (xi ) f (xi + h) f (xi ) h f () h 2 (5.10)

f (xi ) f (xi h) h f () (5.11) h 2 Za centralno diferenciranje, pak, greka se dobija ako se uzmu u obzir prva tri lana u jednaini (5.8), tj. za xi < 1 < xi + h f (xi + h) = f (xi ) + f (xi )h + za xi h < 2 < xi f (xi h) = f (xi ) f (xi )h + f (xi ) 2 f (1 ) 3 h h 2 3! f (xi ) 2 f (1 ) 3 h + h 2 3!

pa se oduzimanjem druge jednaine od prve dobija: f (xi + h) f (xi h) h2 = f (xi ) + [f (1 ) + f (2 )] 2h 12 odnosno za (1 , 2 ): f (xi ) = f (xi + h) f (xi h) h2 = f (xi ) f () 2h 6 (5.13) (5.12)

Na osnovu prethodnih izraza moemo zakljuiti da je greka diskretizacije diferenciranjem unaprijed i unazad proporcionalna koraku h, dok je kod centralnog proporcionalna kvadratu koraka h, to pokazuje da greka kod centralnog diferenciranja opada mnogo bre nego je to sluaj sa ostala dva postupka. To je i razlog zbog kojeg se centralno diferenciranje treba koristiti gdje je god to mogue. Posljednji nain odreivanja formula za diferenciranje se esto koristi i za izvoenje aproksimacija tanih izvoda (i totalnih i parcijalnih), koji se javljaju u diferencijalnim jednainama. Takoer, metoda se moe koristiti i za numeriko diferenciranje funkcija vie promjenljivih. Na kraju, treba naglasiti da postoji niz drugih formula za diferenciranje, koje se mogu izvesti na slian nain kao formule za diferenciranje unaprijed, unazad i centralno diferenciranje.
91

Numeriko diferenciranje i integriranje

Primjer 5.2 Koristei podatke iz primjera 5.1 izraunati vrijednost prvog izvoda u taki x = 3.5, koristei formule za diferenciranje unaprijed, unazad i centralno diferenciranje. Rjeenje Kao i u prethodnom primjeru, tana vrijednost prvog izvoda u taki x = 3.5 je: f (3.5) = 1 1 = 2 = 0.081633 . . . 2 x 3.5

Na osnovu formula (5.5), (5.6) i (5.7) dobija se: diferenciranje unaprijed: f (3.5) = f (3.6) f (3.5) 0.277778 0.285714 = = 0.07936 3.6 3.5 0.1

sa grekom | 0.081633 (0.07936)| = 0.002273 diferenciranje unazad: f (3.5) = f (3.5) f (3.4) 0.285714 0.294118 = = 0.08404 3.5 3.4 0.1

sa grekom | 0.081633 (0.08404)| = 0.002407 centralno diferenciranje: f (3.5) = f (3.6) f (3.4) 0.277778 0.294118 = = 0.0817 3.6 3.4 0.2

sa grekom | 0.081633 (0.0817)| = 0.000067 Na osnovu dobijenih rezultata, vidi se da formula za centralno diferenciranje daje najbolju aproksimaciju.

5.2

Numeriko integriranje

Slino numerikom diferenciranju, veoma vano mjesto u mnogim inenjerskim problemima zauzima i numeriko integriranje (npr. izraunavanje preenog puta na osnovu zavisnosti brzine kretanja od vremena, i sl.). Numerika
92

5.2. Numeriko integriranje

integracija, ili kvadratura (izraz dolazi od injenice da vrijednost odreenog integrala predstavlja povrinu ispod funkcije, kao to je prikazano na slici 5.3), predstavlja izraunavanje integrala:
b

I=
a

f (x)dx

(5.14)

koristei neku od formula koje aproksimiraju funkciju f (x). Pri tome, funkcija moe biti zadata eksplicitno ili predstavljati niz taaka. U narednim poglavljima date su neke poznatije formule koje se koriste u ovu svrhu.
f ( x)

I
a

f(x)dx

Slika 5.3: Graka interpretacija integrala

5.2.1

Integriranje pomou priblinih polinoma

Slino numerikom diferenciranju, najlaka procedura za numeriku integraciju, koja se moe koristiti i za podatke sa jednakim i nejednakim razmacima, je pomou priblinih polinoma. U tom sluaju, funkcija f (x) za koju je teko ili nemogue izraunati integral, ili niz taaka, mogu da se predstave u obliku: f (x) Pn (x) = a0 + a1 x + a2 x2 + . . . (5.15)

gdje se dati polinom moe dobiti koritenjem neke od metoda za interpolaciju ili aproksimaciju. Nakon dobijanja polinoma, i integriranja dobija se:
b b

I=
a

f (x)dx
a

Pn (x)dx =

x2 a0 x + a1 + . . . 2

(5.16)
a

93

Numeriko diferenciranje i integriranje

Primjer 5.3 Izraunati vrijednost odreenog integrala


3.9

I=
3.1

1 dx x

koristei podatke u Tabeli 5.2 i polinom drugog reda.


Tabela 5.2: Uz primjer 5.3 x f (x) 3.10 0.32258065 3.50 0.28571429 3.90 0.25641026

Rjeenje Kao i u prethodnom poglavlju, zadate vrijednosti predstavljaju vrijednosti funkcije f (x) = 1/x, a tana vrijednost integrala je:
3.9

I=
3.1

1 dx = ln(x) x

3.9

= ln(
3.1

3.9 ) = 0.22957444 3.1

Koecijenti polinoma drugog reda koji prolazi kroz sve tri zadate take, mogu se dobiti nekom od metoda opisanih u prethodnom poglavlju (direktna, Lagrangeovi polinomi, Newtonovi interpolacioni polinomi). Na primjer, koristei direktnu metodu, imamo: 0.32258065 = a + b (3.10) + c (3.10)2 0.28571429 = a + b (3.50) + c (3.50)2 0.25641026 = a + b (3.90) + c (3.90)
2

(5.17)

Koristei neku od metoda za rjeavanje sistema linearnih jednaina, dobija se: a = 0.86470519, b = 0.24813896 i c = 0.02363228, odnosno: P2 (x) = 0.86470519 0.24813896x + 0.02363228x2 Sada je lako odrediti i integral:
3.9

I=
3.1

P2 (x)dx
3.9 3.1

= 0.86470519x 0.1240698x2 + 0.0078776x3 I = 0.22957974


94

5.2. Numeriko integriranje

Na osnovu greke, |0.22957974 0.22957444| = 0.0000053, moemo zakljuiti da dobijeni polinom dobro aproksimira funkcija i u pogledu vrijednosti integrala.

5.2.2

Newton-Cotesove formule

Kao to je poznato, odreivanje aproksimacionih funkcija zahtijeva jako mnogo kompjuterskih resursa kada je neophodno odrediti veliki broj koecijenata polinoma. Kada se, pak, radi o funkciji ili nizu podataka sa jednakim razmacima h (ekvidistantne take) onda je mogue koristiti neke druge, mnogo ekasnije metode, kao to su Newton-Cotesove formule. Do ovih formula se moe doi na razliite naine. Jedan od naina je koritenjem Newtonovog aproksimacionog polinoma za diferenciranje unaprijed (4.25): Pn (x) = f0 + s s s f0 + 2 f0 + . . . + n f0 + greka 1 2 n (5.18)

gdje je h korak, s interpolaciona promjenljiva data izrazom: s= x x0 h ime je x = x0 + sh i dx = s dh

a ostali parametri, f0 , 2 f0 , itd. su objanjeni u poglavlju 4.1.3. Greka je data izrazom: greka = s hn+1 f (n+1) () n+1
b s(b)

(5.19)

Smjenom se sada dobija:


b

I=
a

f (x)dx
a

Pn (x)dx = h
s(a)

Pn (s)ds

(5.20)

Prethodni izraz se moe predstaviti u jo pogodnijem obliku, ako se promjene granice integracije, tako da donja bude jednaka 0, a gornja jednaka s. Konaan izraz je:
b b s

I=
a

f (x)
a

Pn (x)dx = h
0

Pn (x0 + sh)ds

(5.21)

Zavisno od stepena polinoma n, mogu se dobiti razliite Newton-Cotesove formule. U inenjerskoj praksi najee se za n koriste vrijednosti 0, 1, 2, 3,
95

Numeriko diferenciranje i integriranje

to odgovara tzv. pravilu pravougaonika, trapeznom pravilu, Simpsonovom 1/3 pravilu i Simpsonovom 3/8 pravilu, respektivno. U narednim dijelovima bie objanjene neke od ovih metoda (Pravilo pravougaonika, koje ima veliku greku, nee se razmatrati, jer nije od praktine vanosti.)
Trapezno pravilo

Trapezno pravilo za pojedinani interval se dobija kada se u izraz (5.20) uvrsti polinom prvog reda (n = 1), tj. imamo:
x1 1

I=
x0

f (x)dx h
0

(f0 + sf0 )ds


1 0

(5.22)

= h sf0 +

s2 f0 2

1 1 I = h(f0 + f0 ) = h[f0 + (f1 f0 )] 2 2 pa izraz za trapeznu formulu za pojedinani interval ima oblik: h (f0 + f1 ) (5.23) 2 Opti oblik trapezne formule koja se primjenjuje na itav interval posmatranja (a, b) koji se dijeli na n jednakih dijelova ima oblik: I=
b n1

I=
a

f (x)dx
i=0

1 hi (fi + fi+1 ) 2

(5.24)

ili u proirenom obliku, za ekvidistantne take (h = hi = (b a)/n za i = 0, 1, . . . , n 1):


b

I=
a

ba 1 f (x)dx (f0 + fn ) + n 2
n1

n1

fi
i=1

ba I= f0 + fn + 2 2n

(5.25)

fi
i=1

Do slinih izraza moglo se doi i preko grake interpretacije trapeznog pravila, koja je data na slici 5.4. Osjeneni dio predstavlja aproksimaciju stvarnog odsjeka pomou trapeza. Na taj nain, ukupna povrina ispod krive f (x) aproksimira se zbirom povrina trapeza pojedinih segmenata. Koristei izraz (5.19) dobija se i greka trapeznog pravila:
96

5.2. Numeriko integriranje

f (x)
D

C
f (x )

I
a

f(x)dx

Slika 5.4: Graka interpretacija integrala

za pojedinani interval:
1

greka = h
0

s(s 1) 2 h f ()ds 2

1 = h3 f () = O(h3 ) 12 za opti interval (a, b)


n1

(5.26)

greka =
i=0

1 3 1 h f () = n[ h3 f ()] 12 12

(5.27)

1 = (b a)h2 f () = O(h2 ) 12 Dakle, greka opteg trapeznog pravila je drugog reda. Primjer 5.4 Izraunati vrijednost odreenog integrala
3.9

I=
3.1

1 dx x

pomou trapeznog pravila koristei jedan, dva, i etiri intervala. Rjeenje S obzirom da je funkcija data jednainom (f (x) = 1/x), podatke koji su neophodni za proraun dobijamo kreiranjem tabele 5.3.
97

Numeriko diferenciranje i integriranje

Tabela 5.3: Uz primjer 5.4 x f (x) 3.10 0.32258065 3.30 0.30303030 3.50 0.28571429 3.70 0.27027027 3.90 0.25641026

Kao i u prethodnom poglavlju, zadate vrijednosti predstavljaju vrijednosti funkcije f (x) = 1/x, a tana vrijednost integrala je:
3.9

I=
3.1

1 dx = ln(x) x

3.9

= ln(
3.1

3.9 ) = 0.22957444 3.1

U sluaju jednog intervala (izraz (5.23)) imamo:


3.9

I=
3.1

1 ba dx (f0 + f1 ) x 2n

0.8 = (0.32258065 + 0.25641026) 21 I = 0.23159636 Koristei izraz (5.25) za dva intervala dobijamo:
3.9

I=
3.1

1 ba dx (f0 + 2f1 + f2 ) x 2n

0.8 = (0.32258065 + 2 0.28571429 + 0.25641026) 22 I = 0.23008389 a za etiri:


3.9

I=
3.1

1 ba dx (f0 + 2(f1 + f2 + f3 ) + f4 ) x 2n

0.8 = (0.32258065 + 2(0.30303030 + 0.28571429 24 + 0.27027027) + 0.25641026) I = 0.22970206 Imajui u vidu da je tano rjeenje I = 0.22957444, vidimo da se poveanjem broja intervala poveava i tanost izraunavanja.

98

5.2. Numeriko integriranje Simpsonovo 1/3 pravilo

Simpsonovo 1/3 pravilo se dobije kada se tri ekvidistantne take aproksimiraju polinomom drugog reda, tj. kada se u jednaini (5.20) uvrsti n = 2. Dakle, za pojedinani interval koji se sastoji od tri take imamo:
2

I=h
0

f0 + sf0 +

s(s 1) 2 f0 ds 2

(5.28)

Nakon izvravanja integracije, te zamjene za vrijednosti f0 i 2 f0 , za pojedinani interval se dobija: 1 I = h(f0 + 4f1 + f2 ) 3 pa je opti izraz za Simpsonovo 1/3 pravilo:
b n1 n1

(5.29)

I=
a

ba f (x)dx f0 + f2n + 4 6n
n1 n1

f2i+1 + 2
i=0 i=1

f2i (5.30)

h = f0 + f2n + 4 3

f2i+1 + 2
i=0 i=1

f2i

Analogno proraunu za trapezno pravilo, greka za Simpsonovo 1/3 pravilo za pojedinani interval je:
2

greka = h
0

s(s 1)(s 2) 3 iii h f ()ds = 0 6

(5.31)

Ovo, meutim, ne znai da je greka jednaka nuli, nego da je kubni lan jednak nuli, pa se stvarna greka za pojedinani interval dobija preko sljedeeg, etvrtog, lana reda:
2

greka = h
0

s(s 1)(s 2)(s 3) 4 iv h f ()ds 24

1 = h5 f iv () = O(h5 ) 90 a za opti interval (a, b)


n1

(5.32)

greka =
i=0

1 5 iv h f () = 90

(5.33)

1 = (b a)h4 f iv () = O(h4 ) 180


99

Numeriko diferenciranje i integriranje

Dakle, opta greka Simpsonovog 1/3 pravila je etvrtog reda, pa se ova metoda i najee koristi u praksi. Primjer 5.5 Koristei podatke u Tabeli 5.3 izraunati vrijednost odreenog integrala
3.9

I=
3.1

1 dx x

pomou Simpsonovog 1/3 pravila za jedan i dva intervala. Rjeenje Tana vrijednost integrala je:
3.9

I=
3.1

1 dx = ln(x) x

3.9

ln(
3.1

3.9 ) = 0.22957444 3.1

U sluaju jednog intervala (jedan interval sadri 2n + 1 =tri take) imamo prema izrazu (5.29):
3.9

I=
3.1

h 1 dx (f0 + 4f1 + f2 ) x 3

0.4 = (0.32258065 + 4 0.28571429 + 0.25641026) 3 I = 0.22957974 Koristei izraz (5.30) za dva intervala (dva intervala sadre 2n+1 =pet taaka) imamo:
3.9

I=
3.1

1 h dx (f0 + 4(f1 + f3 ) + 2f2 + f4 ) x 3

0.2 = (0.32258065 + 4(0.30303030 + 0.27027027) 3 + 2 0.28571429 + 0.25641026) = 0.22957478 Ve na prvi pogled je jasno da je tanost Simpsonovog 1/3 pravila daleko vea od trapeznog. Takoer, tanost se poveava sa poveanjem broja intervala, i ve za etiri intervala iznosi 106 .

100

5.2. Numeriko integriranje

5.2.3

Gaussove kvadraturne formule

Metode za numeriko integriranje koje su opisane u prethodnim poglavljima daju najbolje mogue rjeenje za sluajeve sa jednakim razmacima izmeu taaka (ekvidistantne take). Na taj nain, za n datih taaka, dobija se polinom n + 1 stepena koji na najbolji nain aproksimira datu funkciju ili niz taaka, a ima oblik:
b n

I=
a

f (x)dx =
i=1

Ci f (xi )

(5.34)

gdje su xi lokacije taaka u kojima je integrand poznat, a Ci su teinski faktori. Meutim, u sluajevima kada se treba integrirati poznata funkcija (za koju je teko ili nemogue izraunati integral), javljaju se dodatni stepeni slobode lokacije xi u kojima se izraunava vrijednost funkcije. Na taj nain, ako se koristi n taaka, imamo na raspolaganju 2n parametara: n parametara xi i n parametara Ci (i = 1, 2, . . . , n). Sa ovih 2n parametara mogue je nai polinom 2n 1 stepena, pri emu je neophodno odrediti pomenute parametre. Kao posljedica, dobivaju se daleko tanije metode za numeriku integraciju, a Gaussove kvadraturne formule predstavljaju jednu takvu metodu. U daljem tekstu pokazae se primjena Gaussovih kvadraturnih formula treeg reda, tj. za n = 2. Da bismo pojednostavili dobijanje Gaussovih kvadraturnih formula, posmatrajmo prvo integral funkcije F (t) sa granicama -1 i 1:
1 n

I=
1

F (t)dt =
i=1

Ci F (ti )

(5.35)

i n = 2. Problem se svodi na izraunavanje parametara t1 , t2 , C1 i C2 , tako da je I tano za polinom treeg reda (2n 1 = 3). Ovo je ispunjeno ako integral vrijedi za sljedee polinome : F (t) = 1, t, t2 i t3 . Na taj nain dobijamo sistem jednaina:
1

I[F (t) = 1] =
1 1

1dt = 2 = C1 + C2 tdt = 0 = C1 t1 + C2 t2
1 1 1

(5.36a) (5.36b) (5.36c)

I[F (t) = t] = I[F (t) = t2 ] =

t2 dt =

2 = C1 t2 + C2 t2 1 2 3

Potreban i dovoljan uslov da jednakost 5.35 vrijedi za sve algebarske polinome stepena ne vieg od m je da vrijedi za sve funkcije f (x) = 1, t, t2 , . . . , tm

101

Numeriko diferenciranje i integriranje

I[F (t) = t3 ] = ije je rjeenje : C1 = C2 = 1

1 1

t3 dt = 0 = C1 t3 + C2 t3 1 2

(5.36d)

1 t1 = 3

1 t2 = 3

(5.37)

Dakle, rjeenje izraza (5.35) je:


1

I=
1

F (t)dt = F

1 3

+F

1 3

(5.38)

Sada je potrebno dobiveno rjeenje iskoristiti za rjeavanje izraza:


b

I=
a

f (x)dx

(5.39)

Ovo se vrlo lako moe uraditi transformisanjem iz prostora t u prostor x pomou sljedee transformacije: x = mt + c odnosno funkcija f (x) se transformie u funkciju F (t) i vrijedi: F (t) = f (mt + c) (5.41) (5.40)

Na osnovu izraza 5.40 imamo da je za x = a, t = 1, za x = b, t = 1, i dx = mdt, pa se lako pokae da je: m= ba 2 i c= b+a 2 (5.42)

i jednaina (5.39) postaje:


b 1

I=
a

f (x)dx =
1

f (mt + c)m dt = +F 1 3

ba 2

F [t]dt
1

ba = 2

1 3

(5.43)

Sline jednaine se mogu izvesti i za druge vrijednosti n.


Parametri t predstavljaju korijene Legendreovih polinoma, s obzirom da se metoda zasniva na aproksii maciji istih.

102

5.2. Numeriko integriranje

Primjer 5.6 Slino prethodnim primjerima, i u ovom treba izraunati vrijednost odreenog integrala
3.9

I=
3.1

1 dx x

ali pomou Gaussove kvadraturne formule za n = 2. Proraun izvriti za jedan i dva intervala. Tano rjeenje je I = 0.22957444. Rjeenje Na osnovu formula (5.42) i (5.43) dobija se: m= pa je: x = 0.4t + 3.5 i F (t) = Konano je ba 1 F (t)dt = 0.4 F 2 1 I = 0.22957092 I= 1 3 +F 1 3 (5.46) 1 1 = mt + c 0.4t + 3.5 (5.45) ba b+a = 0.4 i c = = 3.5 2 2 (5.44)

Vidi se da je ve za samo jednu podjelu intervala tanost ove metode uporediva sa tanou Simpsonovog pravila za h = 0.4. Ako bismo eljeli koristiti vie intervala, postupak bi se sastojao u podjeli intervala i primjeni metode za svaki interval pojedinano, tj. za dva intervala imamo:
3.9

I=
3.1

1 dx = x

3.5 3.1

1 dx + x

3.9 3.5

1 dx = I1 + I2 x

Za prvi integral, I1 , je: m= pa je: x = 0.2t + 3.3 i F (t) = 1 0.2t + 3.3 (5.48)
103

ba b+a = 0.2 i c = = 3.3 2 2

(5.47)

Numeriko diferenciranje i integriranje

i ba 1 F (t)dt = 0.2 F I1 = 2 1 I1 = 0.12136071 Analogno, za integral I2 je: m= ba b+a = 0.2 i c = = 3.7 2 2 1 x = 0.2t + 3.7 i F (t) = 0.2t + 3.7
1

1 3

+F

1 3

(5.49)

(5.50) (5.51) 1 3

i I2 = 0.2
1

F (t)dt = 0.2 F

1 3

+F

(5.52)

I2 = 0.10821350 Sada je: I = I1 + I2 = 0.12136071 + 0.10821350 = 0.22957421 (5.53) Na osnovu rezultata se moe zakljuiti da je u ovom sluaju metoda uporediva sa Simpsonovim pravilom za h = 0.2.

5.2.4

Numeriko izraunavanje viestrukih integrala

Metode numerike integracije pokazane u prethodnim poglavljima na primjerima izraunavanja jednostrukih integrala, mogu se koristiti i za izraunavanje viestrukih integrala. Posmatrajmo, na primjer, dvostruki integral:
d b

I=
c a

f (x, y) dx dy

(5.54)

Jednakost (5.54) moe se predstaviti u obliku:


d b d

I=
c a

f (x, y) dx

dy =
c

F (y) dy

(5.55)

gdje je:
b

F (y) =
a

f (x, y) dx

y = const.

(5.56)

Dakle, dvostruki integral se izraunava u dva koraka:


104

5.3. Pitanja i zadaci

1. Izraunavanje funkcije F (y) u izabranim vrijednostima za y pomou bilo koje od prethodno opisanih metoda 2. Izraunavanje integrala I = meriku integraciju.
d c

F (y) dy pomou bilo koje formule za nu-

5.3

Pitanja i zadaci

1. Objasniti postupak diferenciranja pomou priblinih polinoma! 2. Navesti i objasniti razlike izmeu formula za diferenciranje! 3. Tabela 5.4 daje vrijednosti funkcije f (x) = ex za zadate vrijednosti x. Treba izraunati vrijednost f (1.0) pomou interpolacionog polinoma. Pri tome koristiti take: a) 1.0, 1.01 b) 1.0, 1.01, 1.02 c) 1.0, 1.01, 1.02, 1.03 Interpolacioni polinom dobiti jednom od metoda objanjenih u prethodnom poglavlju. 4. Za podatke iz Tabele 5.4 izraunati f (1.0) pomou interpolacionog polinoma. Pri tome koristiti take: a) 0.99, 1.00 b) 0.98, 0.99, 1.00 c) 0.97, 0.98, 0.99, 1.00
Tabela 5.4: Uz zadatak 4 x 0.94 0.95 0.96 0.97 f (x) 2.55998142 2.58570966 2.61169647 2.63794446 x 0.98 0.99 1.00 1.01 f (x) 2.66445624 2.69123447 2.71828183 2.74560102 x 1.02 1.03 1.04 1.05 f (x) 2.77319476 2.80106584 2.82921701 2.85765112

5. Nai vrijednost f (1.0) za podatke iz zadatka 4 koristei: a) formulu za diferenciranje unaprijed,


105

Numeriko diferenciranje i integriranje

b) formulu za diferenciranje unazad, c) formulu za centralno diferenciranje. 6. Pri kretanju tenosti preko neke povrine S, za tangencijalni napon (N/m2 ) na povrini, vrijedi jednakost: = du dy

gdje je (Pas) viskozitet, u (m/s) brzina paralelna povrini, i y (cm) okomita udaljenost od povrine. U tabeli 5.5 date su vrijednosti brzina za razliite udaljenosti, dobivene pomou LDV (eng. laser-Doppler velocitymetre) brzinomjera. Na sobnoj temperaturi vrijedi = 0.00024 Pas. Treba izraunati vrijednost tangencijalnog napona na povrini, ako se koristi polinom prvog, drugog i treeg reda. Izraunati tangencijalnu silu koja djeluje na povrinu, ako je S = 50 cm2 .
Tabela 5.5: Uz zadatak 6 y u 0.0 0.00 1.0 55.56 2.0 88.89 3.0 100.00

7. Pri kretanju tenosti preko neke povrine A, za brzinu prenosa toplote q (J/s) na povrinu vrijedi jednakost: q = kA dT dy

gdje je k (J/s-m-K) viskozitet, T (K) temperatura, i y (cm) okomita udaljenost od povrine. U tabeli 5.6 date su vrijednosti temperature za razliite udaljenosti, dobivene pomou termopara. Na umjerenim temperaturama vrijedi k = 0.0030 J/s-m-K. Treba izraunati vrijednost q/A na povrini, ako se koristi polinom prvog, drugog i treeg reda. Izraunati toplotu koja se prenese na povrinu, ako je A = 50 cm2 . 8. Napisati program za odreivanje vrijednosti prvog i drugog izvoda pomou interpolacionih polinoma! 9. Napisati program za odreivanje vrijednosti prvog izvoda pomou formula za diferenciranje!
106

5.3. Pitanja i zadaci

Tabela 5.6: Uz zadatak 7 y T 0.0 1000.00 1.0 533.33 2.0 355.56 3.0 300.00

10. Objasniti osnovne karakteristike numerikog integriranja! 11. Objasniti postupak numerikog integriranja koristei pribline funkcije! 12. Izvesti formulu za trapezno pravilo! 13. Izvesti formulu za Simpsonovo 1/3 pravilo! 14. Izvesti Gaussove kvadraturne formule za n = 2! 15. Koristei podatke iz tabele 5.7 izraunati integral:
2.0

I=
0.4

f (x)dx

pomou trapeznog pravila. Pri tome koristiti dvije i etiri podjele intervala.
Tabela 5.7: Uz zadatak 15 x 0.4 0.6 0.8 1.0 f (x) 5.1600 3.6933 3.1400 3.0000 x 1.2 1.4 1.6 1.8 f (x) 3.1067 3.3886 3.8100 4.3511 x 2.0 2.2 2.4 2.6 f (x) 5.0000 5.7491 6.5933 7.5292

16. Zadatak 15 rijeiti pomou Simpsonovog 1/3 pravila koristei dvije i etiri podjele intervala. 17. Koristei Gaussove kvadraturne formule (za n = 2) rijeiti integral:
2.5

ln(x)dx
1.5

sa jednim i dva podintervala.


107

Numeriko diferenciranje i integriranje

18. Izraunati integral 2 I= e x+y dxdy


S

pri emu je S povrina kruga sa jednainom x2 + y 2 = 1.

108

Poglavlje 6

Rjeavanje obinih diferencijalnih jednaina


Diferencijalne jednaine se javljaju u svim oblastima inenjerstva i nauke, s obzirom da se njima opisuju mnogi stvarni ziki procesi. Openito, veina zikih procesa ukljuuje vie od jedne nezavisne promjenljive, pa su odgovarajue diferencijalne jednaine parcijalne diferencijalne jednaine. Ipak, u mnogim sluajevima, ove jednaine se mogu svesti na obine diferencijalne jednaine. Veinu diferencijalnih jednaina koje opisuju zike procese nije mogue rijeiti, tj. nije mogue nai rjeenje u zatvorenom obliku. Meutim, sve one se, sa manjim ili veim potekoama, mogu priblino rijeiti koristei za tu svrhu razvijene numerike metode.

6.1

O obinim diferencijalnim jednainama

Obine diferencijalne jednaine daju zavisnost izmeu funkcije sa jednom nezavisnom promjenljivom i njenih totalnih izvoda u odnosu na tu nezavisnu promjenljivu. Pri tome, nezavisna promjenljiva zavisi od zikog procesa, ali se najee radi o vremenu t (vremenskoj koordinati) ili prostoru x (prostornim koordinatama; x, y, z za trodimenzionalan prostor). Red obine diferencijalne jednaine je odreen najveim izvodom u diferencijalnoj jednaini. Na primjer, opti oblik diferencijalne jednaine ntog reda dat je izrazom: an y (n) + an1 y (n1) + . . . + a2 y + a1 y + a0 y = F (t) (6.1)

Rjeavanje obinih diferencijalnih jednaina

gdje je: y (n) = dn y dtn (6.2)

izvod n-tog reda, a ai (i = 0, 1, . . . , n) su koecijenti. U sluaju kada koecijenti diferencijalne jednaine (6.2) ne zavise od zavisne promjenljive y, i kada se izvodi javljaju u linearnom obliku, radi se o linearnoj diferencijalnoj jednaini (na primjer y + ay = F (t)). Kada koecijenti zavise od nezavisno promjenljive t jednaina je linearna sa promjenljivim koecijentima (na primjer y + aty = F (t)). Ako koecijenti zavise od zavisne promjenljive, diferencijalna jednaina je nelinearna (na primjer yy + ay = 0 ili (y )2 + ay = 0). Zavisno od postojanja funkcije F (t) u jednaini (6.2), razlikujemo homogene (F (t) = 0) i nehomogene diferencijalne jednaine. Opte rjeenje neke diferencijalne jednaine sadri jednu ili vie konstanti integracije. Na taj nain se dobija familija rjeenja za tu diferencijalnu jednainu, a partikularno rjeenje se dobija koristei pomone uslove, pri emu je broj pomonih uslova jednak broju konstantni integracije, odnosno redu diferencijalne jednaine. Dakle, rjeenje neke obine diferencijalne jednaine je ona partikularna funkcija f (t) ili f (x) koja identiki zadovoljava tu diferencijalnu jednainu u njenoj domeni rjeavanja, te zadovoljava pomone uslove koji su specicirani na granicama domene. Zavisno od tipa pomonih uslova, razlikujemo dvije vrste ili klase obinih diferencijalnih jednaina: 1. diferencijalne jednaine sa poetnim vrijednostima pomoni uslovi su specicirani za istu vrijednost nezavisne promjenljive i rjeenje se prostire naprijed od te poetne take. Klasian primjer takve jednaine je opta nelinearna diferencijalna jednaina prvog reda: y = f (t, y) y(t0 ) = y0 (6.3)

Ovaj problem se naziva i Cauchyjev problem. Ovaj tip jednaina se najee rjeava pomou marirajuih numerikih metoda. 2. diferencijalne jednaine sa graninim vrijednostima pomoni uslovi su specicirani za dvije razliite vrijednosti nezavisne promjenljive, na krajnjim takama ili granicama domene. Primjer diferencijalne jednaine sa graninim vrijednostima je opta diferencijalna jednaina drugog reda: y + P (x, y)y + Q(x, y)y = F (t, y) y(x1 ) = y1 i y(x2 ) = y2
110

(6.4)

6.2. Rjeavanje problema poetnih vrijednosti

Ovaj tip diferencijalnih jednaina se moe rijeiti marirajuim, te numerikim metodama ravnotee. Slino podjeli diferencijalnih jednaina, i ziki problemi se mogu podijeliti na tri opte klasikacije, i to: problemi kretanja (propagacije, irenja), problemi ravnotee, i problemi sopstvenih vrijednosti. Svaki od prethodno pomenutih problema ima svoje specinosti, svoj odreeni tip obine diferencijalne jednaine, svoje pomone uslove, i svoje numerike metode za rjeavanje. Problemi kretanja (propagacije) su problemi poetnih vrijednosti u otvorenim domenama, u kojima poznata informacija (poetna veliina) marira naprijed u vremenu ili prostoru od poetnog stanja. Poznate informacije, tj. poetne vrijednosti, se speciciraju za jednu veliinu nezavisne promjenljive. Ovi problemi se opisuju obinim diferencijalnim jednainama sa poetnim vrijednostima, pri emu red jednaine moe biti jednak jedan ili vie, a broj poetnih vrijednosti mora odgovarati redu jednaine. Problemi irenja mogu biti nestacionarni u vremenu ili stacionarni u prostoru. Problemi ravnotee su problemi graninih vrijednosti u zatvorenim domenama u kojima se poznate informacije (granine vrijednosti) speciciraju za dvije razliite vrijednosti nezavisne promjenljive, na krajnjim takama (granicama) domene rjeavanja. Ovi problemi se opisuju obinim diferencijalnim jednainama sa graninim vrijednostima. Red ovih diferencijalnih jednainama moe biti najmanje dva ili vie, a broj graninih vrijednosti mora biti jednak redu diferencijalne jednaine. Problemi ravnotee su stacionarni problemi u zatvorenoj domeni. Problemi sopstvenih vrijednosti su posebni problemi u kojima rjeenje postoji samo za specine veliine nekog parametra posmatranog problema (tzv. sopstvene ili eigen veliine). U narednim poglavljima bie objanjene prve dvije grupe problema,dok se o problemima sa sopstvenim vrijednostima vie moe nai u literaturi.

6.2

Rjeavanje problema poetnih vrijednosti

Postoji jako veliki broj numerikih metoda koje se mogu koristiti za rjeavanje problema poetnih vrijednosti. Njihova podjela je razliita od autora do
111

Rjeavanje obinih diferencijalnih jednaina

autora. Jedna takva podjela je, na primjer, na jednokorane, ekstrapolacione i viekorane metode. Jednokorane metode rjeavaju jednainu od take do take koristei podatke samo jedne take. U ove metode spadaju Eulerova metoda (i njene varijacije), te nejpoznatija meu njima, Runge-Kutta metoda. Ekstrapolacione metode (na primjer, ekstrapolirana modicirana metoda srednje vrijednosti) izraunava vrijednost u nekoj taki domene za razliite veliine razmaka izmeu taaka, a zatim ekstrapolira ove vrijednosti kako bi se dobilo tanije rjeenje. Viekorane metode trae rjeenje koristei podatke nekoliko taaka (na primjer, Adamsova metoda). Sve tri gore navedene vrste metoda za rjeavanje obinih diferencijalnih jednaina spadaju u tzv. metode konanih razlika. No, prije nego se opiu neke od njih, data je Taylorova metoda. 6.2.1 Taylorova metoda

Ova metoda koristi injenicu da se Taylorov red moe koristiti za izraunavanje vrijednosti funkcije ako se zna njen izvod i vrijednost u nekoj taki. Taylorov red za funkciju y(t) u taki t = t0 dat je sa: y(t) = y(t0 ) + y (t0 )(t t0 ) + y (n) (t0 ) + (t t0 )n + . . . n! ili y (t0 ) y (n) (t0 ) (t)2 + . . . + (t)n + . . . (6.6) 2 n! Ova jednaina se moe koristiti za izraunavanje vrijednosti y(t), ako se mogu odrediti vrijednosti y0 i izvod u taki t0 . Vrijednost y0 se naziva poetna vrijednost (vidi jednainu (6.3)). Prvi izvod se moe lako odrediti, s obzirom da predstavlja vrijednost funkcije f (t, y), dok se ostali izvodi moraju izraunati sukcesivnim diferenciranjem prve od jednaina (6.3), kao na primjer za drugi izvod: d(y ) y = (y ) = dt y y y y dy d(y ) = d(y (t, y)) = dt + dy = dt + (6.7) t y t y dt y y dy d(y ) = + = yt + yy y y = dt t y dt y(t) = y(t0 ) + y (t0 )t +
112

y (t0 ) (t t0 )2 + . . . 2

(6.5)

6.2. Rjeavanje problema poetnih vrijednosti

ili za trei izvod: y = (y ) = d(y ) dy = (yt + yy y ) + (yt + yy y ) dt t y dt 2 2 y = ytt + 2yty y + yt yy + (yy ) y + yyy (y ) (6.8)

Izvodi vieg reda postaju znatno komplikovaniji, tako da ih nije praktino koristiti. Upravo zbog toga se Taylorov red mora skratiti, pa ostaje krajnji lan: Ostatak = 1 y (n+1) ( )tn+1 (n + 1)! (6.9)

gdje je t0 t. Poto je vrijednost nepoznata, procjenu greke je teko izraunati. Primjer 6.1 Prenos toplote zraenjem sa tijela mase m u okolinu se opisuje Stefan-Boltzmanovim zakonom zraenja:
4 qr = A T 4 Ta =

dE d(mcp T ) = dt dt

(6.10)

gdje je qr brzina prenosa toplote u J/s, A povrina tijela mase m u m2 , Stefan-Boltzmanova konstanta (5.67 108 J/(m2 K4 s)), bezdimenzionalna konstanta emisije tijela koja predstavlja odnos stvarnog zraenja sa zraenjem crnog tijela, T je unutranja temperatura mase u K, Ta temperatura okoline, a cp specina toplota materijala tijela u J/(kg K). Ako se usvoji da su masa m i specina toplota cp konstantni, jednaina (6.10) se moe prikazati u obliku: dT 4 = T = T 4 Ta dt gdje je: = A mcp (6.12) (6.11)

Koristei Taylorovu metodu rijeiti jednainu (6.11). Uzeti da je = 4 1012 (K3 /s)1 , Ta = 250 K i T (0) = T0 = 2500 K.

113

Rjeavanje obinih diferencijalnih jednaina

Rjeenje Tano rjeenje jednaine (6.11) moe se dobiti razdvajanjem promjenljivih. Koristei poetni uslov T (0) = T0 , dobija se: arctg T arctg Ta 3 = 2Ta t T0 Ta + (T0 Ta )(T0 + Ta ) 1 ln 2 (T Ta )(T + Ta ) (6.13)

Uvrtavajui zadate veliine dobija se: arctg 1 T 6187500 + ln 250 2 (T 250)(T + 250) 12 = 2(4 10 )2503 t + arctg(10) (6.14)

Sada se za razliite vrijednosti vremena t pomou neke od metoda za rjeavanje nelinearnih jednaina dobija vrijednost temperature T . Na slici 6.1 dato je tano rjeenje za prvih 10 sekundi.
3000

2500

Temperatura T, K

2000

1500

1000 0 2 4 6 8 10

Vrijeme t, s

Slika 6.1: Tano rjeenje problema zraenja

Rijeimo sada zadatak koristei Taylorovu metodu. Prema jednaini (6.6), Taylorov red za T (t) je dat izrazom 1 1 1 T (t) = T0 + T |0 t + T |0 t2 + T |0 t3 + T (4) |0 T 4 + . . . 2 6 24
114

(6.15)

6.2. Rjeavanje problema poetnih vrijednosti

gdje je t = t t0 = t. Koristei sada jednainu (6.11) dobijamo vrijednosti za izvode u poetnoj taki kako slijedi:
4 T |0 = (T 4 Ta )|0

= (4 1012 )(25004 2504 ) = 156.234375 T |0 = (T ) = T T + T = 0 4T 3 T t T T |0 = 4(4 1012 )25003 (156.234375) = 39.058594


4 T = 42 (T 7 T 3 Ta )

(6.16)

(6.17)

T |0 = (T ) =

T T + T t T 4 = 0 + 42 (7T 6 3T 2 Ta )T

T |0 = 4(4 1012 )2 (7 25006 3 25002 2504 )(156.234375) T |0 = 17.087402 T


4 8 = 43 (7T 10 10T 6 Ta + 3T 2 Ta )

(6.18)

T (4) |0 = (T ) =

T T + T t T 4 = 0 43 (70T 9 60T 5 Ta + 6T t8 )T a

T (4) |0 = 4(4 1012 )3 (70 25009 60 25005 2504 + 6 2500 2508 )(156.234375) T (4) |0 = 10.679169

(6.19)

Uvrtavajui prethodno dobivene vrijednosti u jednainu (6.15) dobija se: T (t) = 2500 156.284375t + 19.52929t2 2.8479t3 + 0.444965t4 (6.20)

Tano rjeenje i rjeenja dobivena jednainom (6.20) (uzimajui u obzir samo jedan, dva, tri i etiri lana Taylorovog reda) data su graki na slici 6.2. Na osnovu ovih podataka je jasno da se tanost rjeenja poveava sa poveanjem broja lanova Taylorovog reda. Meutim, ve za t > 2 s rjeenje je veoma netano, tako da je potrebno koristiti mnogo vie lanova Taylorovog reda, zbog ega je Taylorova metoda neekasna u rjeavanju obinih diferencijalnih jednaina sa poetnim vrijednostima. Treba naglasiti da i pored injenice to Taylorova metoda nije ekasna u rjeavanju obinih diferencijalnih jednaina sa poetnim vrijednostima, ona predstavlja osnovu za mnoge ekasne numerike metode. Kako se vidi iz slike
115

Rjeavanje obinih diferencijalnih jednaina


3000

2500

Temperatura T, K

2000

1500

tacno rjesenje Taylor 1. reda Taylor 2. reda Taylor 3. reda Taylor 4. reda
0 2 4 6 8 10

1000

Vrijeme t, s

Slika 6.2: Rjeenje problema zraenja Taylorovom metodom

6.2 ona je vrlo tana za male vrijednosti t, i to upravo predstavlja osnovu za mnoge druge metode u rjeavanju obinih diferencijalnih jednaina; metoda se moe koristiti za mali vremenski korak u blizini poetne take, a zatim se mogu izvriti ponovne kalkulacije koecijenata za novu taku. 6.2.2 Metoda konanih razlika

Sutina metode konanih razlika u svrhu rjeavanja obinih diferencijalnih jednaina lei u transformaciji sa problema rjeavanja diferencijalne jednaine na algebarski problem, a sastoji se od sljedeih koraka: 1. Neprekidna zika oblast (domena) se prekrije numerikom mreom. 2. Tani izvodi diferencijalne jednaine sa poetnom vrijednou se aproksimiraju algebarskim aproksimacijama konanih razlika. 3. Algebarske aproksimacije konanih razlika se smjenom uvrste u diferencijalnu jednainu kako bi se dobila algebarska jednaina konanih razlika. 4. Rjeava se rezultujua jednaina konanih razlika. Numerika mrea se dobija diskretiziranjem, tj. podjelom, oblasti rjeavanja na niz vornih taaka. U ovim vornim takama se postavljaju jednaine konanih razlika, koje predstavljaju zadate diferencijalne jednaine.
116

6.2. Rjeavanje problema poetnih vrijednosti

Aproksimacija izvoda se vri pomou neke od formula za numeriko diferenciranje, kao to je to pokazano u poglavlju 5. 6.2.3 Eulerova metoda

Eulerova metoda (ili metode) predstavlja najjednostavnije metodu za rjeavanje Cauchyjevog problema. Razlikujemo eksplicitnu i implicitnu Eulerovu metodu.
Eksplicitna Eulerova metoda

Formula sa eksplicitnu Eulerovu metodu se moe jednostavno dobiti iz jednaine Cauchyjevog problema, ako se prvi izvod aproksimira pomou formule za diferenciranje unaprijed, tj. y = f (t, y) yn+1 yn = f (tn , yn ) h pri emu je h = xn+1 xn i konano yn+1 = yn + h f (tn , yn ) Osnovne karakteristike eksplicitne Eulerove metode su: Metoda je eksplicitna, jer f (n) ne zavisi od yn+1 . Potrebna je samo jedna poznata vorna taka, pa metoda spada u jednokorane metode (metode jedne poznate take). Potrebno je samo jedno izraunavanje izvoda funkcije po koraku (iteraciji). Greka izraunavanja vrijednosti y(n+1) , tzv. lokalna greka, je drugog reda, O(t2 ). Globalna greka, koja se akumulira nakon N koraka, je prvog reda, O(t). Primjer 6.2 Primjer 6.1 rijeiti eksplicitnom Eulerovom metodom. Koristiti vremenske korake od 1 i 2 sekunde.
117

(6.21) (6.22)

(6.23)

(6.24)

Rjeavanje obinih diferencijalnih jednaina

Rjeenje Koristei jednainu (6.24) dobija se:


4 4 Tn+1 = Tn t(Tn Ta )

(6.25)

pri emu n predstavlja indeks vremenskog koraka. Za t = 2 i koristei podatke iz zadatka 6.1 imamo:
4 4 T1 = T0 t(T0 Ta )

T1 = 2500 2(4 1012 )(25004 2504 ) = 2187.53125


4 4 T2 = T1 t(T1 Ta )

T2 = 2187.53125 2(4 1012 )(2187.531254 2504 ) = 2004.37027 ... Postupak rjeavanje je isti i za vremenski korak od 1 sekunde, s tim da se uzima da je t = 1 s. Svi rezultati su dati u tabeli 6.1 sa odgovarajuim grekama.
Tabela 6.1: Uz primjer 6.2 t = 1 s t, s 0 1 2 3 4 5 6 7 8 9 10 T 2500.00 2360.83 2248.25 2154.47 2074.61 2005.42 1944.62 1890.58 1842.09 1798.23 1758.26 T 2500.00 2343.77 2223.08 2125.40 2043.79 1974.01 1913.29 1859.70 1811.87 1768.78 1729.64 T T -17.06 -25.17 -29.07 -30.82 -31.40 -31.33 -30.88 -30.22 -29.45 -28.62 1696.74 -61.52 1776.37 -65.72 1875.27 -69.34 2004.37 -70.24 2187.53 -60.72 t = 2 s T 2500.00 T T -

118

6.2. Rjeavanje problema poetnih vrijednosti Implicitna Eulerova metoda

Formula za implicitnu Eulerovu metodu se dobija ako se posmatra taka n + 1 i u njoj primijeni formula za diferenciranje unazad, tj. y = f (t, y) yn+1 yn = f (tn+1 , yn+1 ) h pri emu je h = xn+1 xn Konano se dobija: yn+1 = yn + h f (tn+1 , yn+1 ) (6.29) (6.28) (6.26) (6.27)

Dakle, vrijednost yn+1 zavisi od vrijednosti fn+1 , pa je metoda implicitna. Slino eksplicitnoj metodi, i implicitna Eulerova metoda je jednokorana, zahtijeva samo jedno izraunavanje izvoda po iteraciji, a lokalna i globalna greka su drugog, O(t2 ), i prvog, O(t), reda tanosti, respektivno. Treba napomenuti da je implicitna Eulerova metoda bezuslovno stabilna, dok je eksplicitna metoda uslovno stabilna. To znai da stabilnost implicitne metode ne zavisi od izbora koraka t, dok kod eksplicitne zavisi. Primjer 6.3 Primjer 6.1 rijeiti implicitnom Eulerovom metodom. Koristiti vremenske korake od 1 i 2 sekunde. Rjeenje Koristei jednainu (6.29) dobija se:
4 4 Tn+1 = Tn t(Tn+1 Ta )

(6.30)

pri emu n predstavlja indeks iteracije (u vremenu). Jasno je da jednaina (6.30) predstavlja nelinearnu jednainu, tako da je istu neophodno rijeiti nekom od numerikih metoda za rjeavanje nelinearnih jednaina kako bi dobili vrijednost Tn+1 i preli na sljedeu iteraciju. Dakle, za prvu iteraciju, uzimajui da je t = 1, se dobija:
4 4 T1 = T0 t(T1 Ta ) 4 T1 = 2500 1 (4 1012 )(T1 2504 )

(6.31)
119

Rjeavanje obinih diferencijalnih jednaina

pa jednainu treba rijeiti po T1 . Ovo se moe uraditi bilo kojom metodom za rjeavanje nelinearnih jednaina (na primjer Newton-Raphsonova metoda). Na kraju se dobija: T1 = 2373.14596 Nakon toga se prelazi na drugi vremenski korak i dobija jednaina:
4 4 T2 = T1 t(T2 Ta ) 4 T2 = 2373.14596 1 (4 1012 )(T2 2504 )

(6.32)

ijim se rjeavanjem dobija: T2 = 2267.431887 Postupak se nastavlja do zadatog vremena. U tabeli 6.2 su dati rezultati za prvih 10 sekundi za oba zadata vremenska koraka.
Tabela 6.2: Uz primjer 6.3 t = 1 s t, s 0 1 2 3 4 5 6 7 8 9 10 T 2500.00 2360.83 2248.25 2154.47 2074.61 2005.42 1944.62 1890.58 1842.09 1798.23 1758.26 T 2500.00 2373.15 2267.43 2177.52 2099.77 2031.64 1971.26 1917.23 1868.49 1824.21 1783.73 T T 12.32 19.18 23.05 25.16 26.23 26.64 26.65 26.39 25.98 25.47 1806.72 48.46 1891.93 49.84 1994.39 49.78 2120.93 46.32 2282.79 34.54 t = 2 s T 2500.00 T T -

O stabilnosti Eulerovih metoda

U prethodnom dijelu reeno je da je implicitna Eulerova metoda bezuslovno, dok je njena eksplicitna verzija uslovno stabilna. Pri tome se za neku jednainu konanih razlika kae da je stabilna ako za stabilnu obinu diferencijalnu
Pored stabilnosti, vrlo vano mjesto u prouavanju numerikih metoda za rjeavanje diferencijalnih jednaina zauzimaju i osobine konzistentnost, red, i konvergencija.

120

6.2. Rjeavanje problema poetnih vrijednosti

jednainu daje ogranieno rjeenje, odnosno nestabilna ako daje neogranieno rjeenje. Osobinu stabilnosti Eulerovih metoda emo pokazati na primjeru homogene linearne diferencijalne jednaine prvog reda: y = y y(0) = 1 (6.33)

za koju je f (t, y) = y, a ije tano rjeenje iznosi y(t) = et . Koristei jednainu (6.24) za eksplicitnu metodu se dobija: yn+1 = yn + tf (t, yn ) = yn + t(yn ) yn+1 = (1 t)yn a prema jednaini (6.29) izraz za implicitnu metodu: yn+1 = yn + tf (t, yn+1 ) = yn + t(yn+1 ) yn yn+1 = 1 + t (6.35) (6.34)

Koristei prethodno dobivene izraze mogu se dobiti graci dati na slici 6.3lijevo i desno, za eksplicitnu i implicitnu Eulerovu metodu, respektivno (na gracima je dato i tano rjeenje). Pri tome, vremenski korak t je variran od 0.25 do 3 sekunde za eksplicitnu i 0.5 do 5 sekundi za implicitnu metodu.
2 1

0.8 1 0.6

y(t)

0 tacno t=0.25 s t=0.50 s t=0.75 s t=1.00 s t=1.50 s t=2.00 s t=3.00 s 0 2 4


v

y(t)
0.4 tacno t=0.50 s t=1.00 s t=2.00 s t=5.00 s 0 2 4
v

-1

0.2

-2

0 10

Vrijeme t, s

Vrijeme t, s

10

Slika 6.3: Problem stabilnosti Eulerovih metoda za razliite vrijednosti t: lijevo eksplicitna, desno implicitna metoda

Sa slike 6.3-lijevo se vidi da se numeriko rjeenje ponaa korektno u zikom smislu (monotono opada) za t 1.0, a za t se pribliava tanom rjeenju y() = 0. Za t = 1 numeriko rjeenje dostie tano asimptotsko rjeenje u jednom koraku.
121

Rjeavanje obinih diferencijalnih jednaina

Za sluaj kada je 1 t 2, numeriko rjeenje osciluje oko tanog asimptotskog rjeenja, i u priguenom obliku se pribliava istom kada t . Za t = 2, numeriko rjeenje stabilno osciluje oko tanog rjeenja i nikada se ne pribliava asimptotskom rjeenju. Na taj nain se moe zakljuiti da su rjeenja stabilna kada je t 2. U sluajevima za t > 2, numeriko rjeenje osciluje oko tanog asimptotskog rjeenja ali na nestabilan nain eksponencijalno se udaljava izvan zikih granica. Ovo predstavlja numeriku nestabilnost. Dakle, moe se zakljuiti da je eksplicitna Eulerova metoda uslovno stabilna, poto je stabilna samo za t 2. Ipak, treba naglasiti da je i oscilatorno ponaanje numerikih metoda nepoeljno, s obzirom da ne predstavlja ziku realnost. Zbog toga se openito usvaja vremenski korak za 50% krai od graninog za koji je metoda stabilna. S druge strane, iz slike 6.3-desno se jasno vidi da se rjeenja u sluaju implicitne Eulerove metode uvijek, tj. za sve vrijednosti t ponaaju ziki korektno i asimptotski pribliavaju tanom rjeenju. Ovaj jednostavan primjer pokazuje u emu je osnovna prednost implicitne metode u odnosu na eksplicitnu, s obzirom na injenicu da su obje metode istog reda tanosti, a dobijanje rezultata implicitnom metodom znatno oteano. U oba sluaja se, takoer, moe primijetiti da se greka poveava sa poveanjem vremenskog koraka, ali u tom sluaju se ne radi o stabilnosti nego o tanosti. 6.2.4 Runge-Kutta metode

Runge-Kutta metode predstavljaju grupu jednokoranih metoda kod kojih se y = yn+1 yn izraunava kao teinski zbir nekoliko razlika yi (i = 1, 2, . . .), pri emu se svako yi izraunava kao proizvod t i izvoda funkcije f (t, y) u nekoj taki iz intervala tn t tn+1 . Na taj nain imamo: yn+1 = yn + y y = C1 y1 + C2 y2 + C3 y3 + . . . gdje su Ci (i = 1, 2, . . .) teinski faktori (koecijenti).
Runge-Kutta drugog reda

(6.36) (6.37)

Za Runge-Kutta metodu drugog reda, y se dobija kao teinski zbir dvije razlike y, tj. yn+1 = yn + C1 y1 + C2 y2
122

(6.38)

6.2. Rjeavanje problema poetnih vrijednosti

gdje je razlika y1 data eksplicitnom Eulerovom formulom (6.24): y1 = t f (tn , yn ) = t fn (6.39)

a y2 se rauna na osnovu vrijednosti funkcije f (t, y) negdje na intervalu tn t tn+1 , tj.: y2 = t f [(tn + (t), yn + (y1 )) (6.40)

Moe se pokazati da postoji beskonano mnogo rjeenja za izbor parametara C1 , C2 , i , a jedno od takvih rjeenja je C1 = C2 = 1/2 i = = 1. Na ovaj nain se dobija metoda koja se jo naziva i modikovana Eulerova metoda, ili prva modikacija Eulerove metode, a formule imaju oblik: y1 = hf (tn , yn ) = hfn (6.41a) y2 = hf (tn + t, yn + y1 ) = hfn+1 (6.41b) 1 1 h yn+1 = yn + y1 + y2 = yn + (fn + fn+1 ) (6.41c) 2 2 2 Iz prethodnog se vidi da je za ovu metodu neophodno dva puta izraunati vrijednost funkcije izvoda u svakom vremenskom koraku. Modikovana Eulerova metoda je drugog reda tanosti (globalno), i uslovno je stabilna. Primjer 6.4 Primjer 6.1 rijeiti modikovanom Eulerovom metodom. Koristiti vremenske korake od 1 i 2 sekunde. Rjeenje Kao i u prethodnim primjerima imamo funkciju izvoda jednaku f (t, T ) = 4 (T 4 Ta ), pa se prema jednaini (6.41a) za prvi vremenski korak uz t = 2 dobija:
4 4 y1 = tf (t0 , T0 ) = 2[(T0 Ta )]

= 2[4 1012 (25004 2504 )] y1 = 312.46875 Sada je prema jednaini (6.41b):


4 y2 = tf (t0 + t, T0 + y1 ) = 2[((T0 + y1 )4 Ta )]

(6.42)

= 2[4 1012 ((2500 312.46875)4 2504 )] y2 = 183.16098

(6.43)

123

Rjeavanje obinih diferencijalnih jednaina

Vrijednost T0 + y1 se jo naziva i prediktor vrijednost, a njeno raunanje prediktor faza ili prediktor jednaina konanih razlika . Konano se na osnovu jednaine (6.41c), dobija rjeenje, koje se jo naziva i korektor rjeenje, i to: 1 T1 = T0 + (y1 + y2 ) 2 1 = 2500 + (312.46875 183.16098) 2 T1 = 2252.18513

(6.44)

Rezultati za vremenske korake jednake 1 i 2 sekunde dati su u tabeli 6.3.


Tabela 6.3: Uz primjer 6.4 t = 1 s t, s 0 1 2 3 4 5 6 7 8 9 10 T 2500.00 2360.83 2248.25 2154.47 2074.61 2005.42 1944.62 1890.58 1842.09 1798.23 1758.26 T 2500.00 2361.54 2249.26 2155.59 2075.76 2006.55 1945.71 1891.63 1843.09 1799.17 1759.16 T T 0.71 1.01 1.12 1.15 1.13 1.09 1.05 1.00 0.94 0.90 1761.86 3.60 1846.08 3.99 1948.97 4.35 2079.15 4.54 2252.19 3.94 t = 2 s T 2500.00 T T -

Jo jedno esto koriteno rjeenje je za C1 = 0, pa se za ostale koecijente dobija: C2 = 1 i = = 1/2. Na ovaj nain dobija se tzv. modikovana metoda srednje vrijednosti, poboljana Eulerova metoda, ili druga modikacija Eulerove metode. Metoda je data sljedeim rekurzivnim formulama: y1 = hf (tn , yn ) = hfn h y1 y2 = hf tn + , yn + = hfn+1/2 2 2 yn+1 = yn + 0 y1 + 1 y2 = yn + hfn+1/2
Ovakav

(6.45a) (6.45b) (6.45c)

postupak rjeavanja je poznat pod imenom prediktor-korektor metoda.

124

6.2. Rjeavanje problema poetnih vrijednosti

I ova metoda predstavlja prediktor-korektor metodu za koju je u svakom vremenskom koraku neophodno dva puta izraunati vrijednost funkcije izvoda. Slino prethodnoj, i ova metoda je drugog reda tanosti (globalno) i uslovno je stabilna. Primjer 6.5 Primjer 6.1 rijeiti modikovanom metodom srednje vrijednosti. Koristiti vremenske korake od 1 i 2 sekunde. Rjeenje Prema jednaini (6.45a) za prvi vremenski korak uz t = 2 dobija se:
4 4 y1 = tf (t0 , T0 ) = 2[(T0 Ta )]

= 2[4 1012 (25004 2504 )] y1 = 312.46875 Sada se prema jednaini (6.45b) dobija: t y1 , T0 + ) 2 2 y1 4 4 = 2[((T0 + ) Ta )] 2 = 2[4 1012 ((2500 312.46875/2)4 2504 )] y2 = 241.37399 y2 = tf (t0 +

(6.46)

(6.47)

I u ovom sluaju se vrijednost T0 + (y1 )/2 naziva prediktor vrijednost. Konano se na osnovu jednaine (6.45c), dobija rjeenje (korektor rjeenje): T1 = T0 + y2 = 2500 + (241.37399) T1 = 2258.626001 Rezultati za vremenske korake jednake 1 i 2 dati su u tabeli 6.4. (6.48)

Runge-Kutta etvrtog reda

Ipak, najpoznatija Runge-Kutta metoda je ona etvrtog reda. Kao i u prethodnom sluaju, postoji beskonano mnogo rjeenja za izbor parametara , ali je
Ukupno je potrebno odraditi osam parametara - etiri C parametra (i = 1, 2, 3, 4) i etiri preostala (, i , i )

125

Rjeavanje obinih diferencijalnih jednaina

Tabela 6.4: Uz primjer 6.5 t = 1 s t, s 0 1 2 3 4 5 6 7 8 9 10 T 2500.00 2360.83 2248.25 2154.47 2074.61 2005.42 1944.62 1890.58 1842.09 1798.23 1758.26 T 2500.00 2362.40 2250.46 2156.91 2077.09 2007.85 1946.96 1892.82 1844.22 1800.24 1760.17 T T 1.57 2.21 2.44 2.48 2.43 2.34 2.24 2.13 2.01 1.91 1767.12 8.86 1852.00 9.91 1955.59 10.97 2086.27 11.66 2258.63 10.38 t = 2 s T 2500.00 T T -

najpoznatija tzv. standardna Runge-Kutta metoda data sljedeim formulama: 1 yn+1 = yn + (y1 + 2y2 + 2y3 + y4 ) 6 y1 = hf (tn , yn ) h y1 tn + , yn + 2 2 y2 h y3 = hf tn + , yn + 2 2 y4 = hf (tn + h, yn + y3 ) y2 = hf Osnovne karakteristike Runge-Kutta metode etvrtog reda su: 1. Aproksimirane jednaine su eksplicitne i zahtijevaju etiri izraunavanja izvoda funkcije u jednom koraku (iteraciji) 2. Jednaine su konzistentne, sa lokalnom grekom reda O(t5 ) i globalnom reda O(t4 ) 3. Jednaine su uslovno stabilne (za t 2.785)
126

(6.49)

(6.50a) (6.50b) (6.50c) (6.50d)

6.2. Rjeavanje problema poetnih vrijednosti

4. S obzirom da su jednaine konzistentne i uslovno stabilne, one su i konvergentne. Primjer 6.6 Primjer 6.1 rijeiti Runge-Kutta metodom etvrtog reda. Koristiti vremenske korake od 1 i 2 sekunde. Rjeenje Na osnovu jednaina (6.49) i (6.50) dobija se: 1 Tn+1 = Tn + (y1 + 2y2 + 2y3 + y4 ) 6 y1 = tf (tn , Tn ) t y1 y2 = tf tn + , Tn + 2 2 y2 t , Tn + y3 = tf tn + 2 2 y4 = tf (tn + t, Tn + y3 ) (6.51)

(6.52a) (6.52b) (6.52c) (6.52d)

4 Ako se sada uzme da je funkcija izvoda jednaka (T 4 Ta ) i vremenski korak t = 2, imamo za prvu iteraciju, T1 : 4 4 y1 = tf (t0 , T0 ) = 2[(T0 Ta )]

= 2[4 1012 (25004 2504 )] y1 = 312.46875

(6.53)

t y1 , T0 + ) 2 2 y1 4 4 = 2[((T0 + ) Ta )] 2 = 2[4 1012 ((2500 312.46875/2)4 2504 )] y2 = 241.37399 y2 = tf (t0 +

(6.54)

127

Rjeavanje obinih diferencijalnih jednaina

y3 = tf

t y2 , Tn + 2 2 y2 4 4 = 2[((T0 + ) Ta )] 2 = 2[4 1012 ((2500 241.37399/2)4 2504 )] y3 = 256.355925 tn +

(6.55)

y4 = tf (tn + t, Tn + y3 )
4 = 2[((T0 + y3 )4 Ta )]

= 2[4 1012 ((2500 256.355925)4 2504 )] y4 = 202.693063

(6.56)

Uvrtavajui prethodno dobivene vrijednosti u jednainu (6.51) dobija se: 1 T1 = T0 + (y1 + 2y2 + 2y3 + y4 ) 6 1 = 2500 + [312.46875 + 2(241.37399) (6.57) 6 + 2(256.355925) 202.69306] T1 = 2248.229723 Rezultati za prvih 10 sekundi za oba vremenska koraka dati su u tabeli 6.5. Na osnovu greke raunanja moe se pokazati da je Runge-Kutta metoda ak 110000 puta tanija od eksplicitne Eulerove metode, i oko 3500 puta tanija od prve modikacije Eulerove metode. Na taj nain se pokazuje osnovna prednost koritenja metoda vieg reda.

6.2.5

Ostale metode

U prethodnim dijelovima su date najee koritene jednokorane metode za numeriko rjeavanje obinih diferencijalnih jednaina. Meutim, postoji i niz drugih metoda kao to su ekstrapolacione, te viekorane metode. Kod ekstrapolacionih metoda se proraun vri za vie razliitih vremenskih koraka, a onda se na osnovu greaka za pojedine vremenske korake, pomou ekstrapolacije dolazi do numerikog rjeenja. S druge strane, viekorane metode koriste vie taaka sa kojima se kree prema rjeenju. Postoji itav niz ovih metoda meu kojima su najpoznatije Adamsova, opta Adamsova metoda i druge.
128

6.3. Obine diferencijalne jednaine vieg reda

Tabela 6.5 t = 1 s t, s 0 1 2 3 4 5 6 7 8 9 10 T 2500.00000 2360.83000 2248.24730 2154.47080 2074.61190 2005.41640 1944.61840 1890.58290 1842.09450 1798.22790 1758.26340 T 2500.00000 2360.82956 2248.24681 2154.47030 2074.61144 2005.41595 1944.61804 1890.58252 1842.09420 1798.22758 1758.26311 T T -0.00044 -0.00049 -0.00050 -0.00046 -0.00045 -0.00036 -0.00038 -0.00030 -0.00032 -0.00029 1758.25452 -0.01 1842.08395 -0.01 1944.60559 -0.01 2074.59623 -0.02 2248.22972 -0.02 t = 2 s T 2500.00 T T -

U svrhu rjeavanja optih diferencijalnih jednaina prvog reda sa poetnim vrijednostima kod kojih je funkcija izvoda nelinearna (kao to je problem prenosa toplote zraenjem), koriste se i procedure za rjeavanje nelinearnih implicitnih jednaina konanih razlika. Najpoznatije meu njima su procedure vremenske linearizacija, te Newtonova metoda, i mogu se nai u literaturi.

6.3

Obine diferencijalne jednaine vieg reda

U prethodnim poglavljima obraene su metode rjeavanja obinih diferencijalnih jednaina prvog reda (Cauchyjev problem). Meutim, veliki broj prirodnih procesa, problema u inenjerstvu i sl. opisuje se diferencijalnim jednainama vieg reda (jednaine dinamike kretanja, . . . ). Kao to je poznato, diferencijalne jednaine vieg reda se openito mogu svesti na sistem obinih diferencijalnih jednaina prvog reda. U sluaju kada se radi o sistemu jednaina vieg reda, svaka od tih jednaina se moe svesti na sistem obinih diferencijalnih jednaina prvog reda, a kuplovani sistem diferencijalnih jednaina vieg reda se tada svodi na kuplovani sistem diferencijalnih jednaina prvog reda. Posmatrajmo, na primjer, optu diferencijalnu jednainu ntog reda sa poetnim vrijednostima: y (n) = f (t, y, y , y , . . . , y (n1) ) (6.58)
129

Rjeavanje obinih diferencijalnih jednaina

y(t0 ) = y0

i y (i) (t0 ) = y0

(i)

(i = 1, 2, . . . , n 1)

(6.59)

Ova jednaina se moe zamijeniti ekvivalentnim sistemom od n kuplovanih diferencijalnih jednaina prvog reda, pri emu se denie n pomonih promjenljivih: y1 = y y2 = y = y1 y3 = y = y2 ......... yn = y (n1) = yn1 Diferenciranjem posljednje jednaine dobija se: yn = y (n) (6.61)

(6.60)

Preureenjem sistema jednaina (6.60), i uvrtavajui rezultate u jednainu (6.61), dobija se sljedei sistem od n kuplovanih diferencijalnih jednaina prvog reda: y1 = y2 y2 = y3 ......... yn1 = yn y1 (0) = y0 y2 (0) = y0 (6.62) yn1 (0) =
(n2) y0

yn = F (t, y1 , y2 , . . . , yn )

yn (0) = y0

(n1)

gdje je posljednja jednaina u nizu poetna diferencijalna jednaina n-tog reda (6.58), izraena pomou pomonih promjenljivih yi (i = 1, 2, . . . , n). Na taj nain se dobija sistem od n kuplovanih diferencijalnih jednaina prvog reda, koji se moe rijeiti nekom od metoda opisanih u narednom poglavlju. Ovakva redukcija se gotovo uvijek moe ostvariti. Primjer 6.7 Na primjeru diferencijalne jednaine koja opisuje vertikalni let rakete, opisati postupak svoenja diferencijalne jednaine vieg reda na sistem diferencijalnih jednaina prvog reda.

130

6.3. Obine diferencijalne jednaine vieg reda

Rjeenje

mg

F T y (0) 0 y (t ) ?

mg D
i

ma

mv

my

v (0) 0 v (t ) ?

T
Slika 6.4: Vertikalni let rakete

Fizikalni sistem koji opisuje problem vertikalnog leta rakete dat je na slici 6.4. Za takav sistem moe se postaviti jednaina drugog Newtonovog zakona kako slijedi: F = T mg D = ma = mv = my (6.63)

pri emu je T sila koju proizvodi motor rakete, m trenutna masa rakete (m(t) = t m0 0 mdt), g gravitaciono ubrzanje koje openito zavisi od nadmorske visine y, D aerodinamiki uzgon, a ubrzanje rakete, a v brzina rakete. Poetna brzina rakete jednaka je v(0, 0) = v0 = 0, a poetna visina y(0, 0) = y0 = 0. Ako se pretpostavi da je promjena mase konstantna (m =const.), gravi taciono ubrzanje konstantno, te aerodinamiki uzgon zanemariv, dolazi se do sljedee diferencijalne jednaine drugog reda sa poetnim uslovima: y = T g m0 mt y(0, 0) = 0 y (0, 0) = 0 (6.64)

Ova jednaina se moe svesti na sistem diferencijalnih jednaina prvog reda na sljedei nain. Ako uzmemo pomonu promjenljivu v i stavimo da je y = v, direktno se dobija sljedei sistem sa odgovarajuim poetnim uslovima: y =v v = y(0, 0) = 0 y (0, 0) = 0 (6.65) T g m0 mt

131

Rjeavanje obinih diferencijalnih jednaina

Jednaine (6.65) predstavljaju kuplovani sistem dvije diferencijalne jednaine prvog reda, koje se mogu rijeiti jednom od metoda za numeriko rjeavanje obinih diferencijalnih jednaina prvog reda sa poetnim uslovima, kako je objanjeno u daljem tekstu.

6.4

Sistem obinih diferencijalnih jednaina

Mnogi problemi u praksi ukljuuju nekoliko zavisno promjenljivih, od kojih je svaka od njih funkcija jedne te iste nezavisne promjenljive i jedne ili vie zavisnih promjenljivih, i od kojih se svaka moe opisati obinom diferencijalnom jednainom. Ovakav kuplovani set obinih diferencijalnih jednaina se naziva sistem obinih diferencijalnih jednaina, kao na primjer: y = f (t, y, z) z = f (t, y, z) (6.66a) (6.66b)

U prethodnom poglavlju smo vidjeli da se i diferencijalne jednaine vieg reda mogu svesti na sistem kuplovanih diferencijalnih jednaina prvog reda. Na taj nain, obje vrste problema se mogu numeriki rijeiti na isti nain, tj. koritenjem istih metoda. Svaka od diferencijalnih jednaina u sistemu jednaina se moe rijeiti kao pojedinana diferencijalna jednaina koristei metode opisane u prethodnim poglavljima. Jedina razlika je u tome to se mora voditi posebna panja pri kuplovanju rjeenja. Takoer, veliina koraka mora biti jednaka za sve jednaine. Primjer 6.8 Sistem obinih diferencijalnih jednaina prvog reda (6.65) dobijen u primjeru 6.7 rijeiti koristei Runge-Kutta metodu. Uzeti da je T = 10000 N, m0 = 100 kg, m = 5 kg/s i g = 9.8 m/s2 , te t = 1. Rjeenje Tano rjeenje sistema (6.65), tj. y = f (t, y, v) = v v = g(t, y, v) =
132

y(0, 0) = 0 y (0, 0) = 0 (6.67)

T g m0 mt

6.4. Sistem obinih diferencijalnih jednaina

je dato jednainama: T mt ln 1 gt m m0 m0 T mt mt y(t) = 1 ln 1 mm m0 m0 v(t) = odnosno v(t) = 1000 ln (1 0.05t) 9.8t y(t) = 10000 (1 0.05t) ln (1 0.05t) + 2000t 4.9t2 (6.69)

Tt 1 2 gt + m 2

(6.68)

Rijeimo sada zadatak koristei Runge-Kutta metodu. Uvrtavajui zadate vrijednosti u sistem jednaina (6.67), dobija se sistem diferencijalnih jednaina: y(0, 0) = 0 10000 v = 9.8 100 5t y =v (6.70)

y (0, 0) = 0

Prvo sa yi (i = 1, 2, 3, 4) oznaimo inkremente funkcije y(t), a sa vi (i = 1, 2, 3, 4) inkremente funkcije v(t), pa prema jednaini (6.49) dobijamo: 1 yn+1 = yn + (y1 + 2y2 + 2y3 + y4 ) 6 1 vn+1 = vn + (v1 + 2v2 + 2v3 + v4 ) 6 gdje su odgovarajui inkrementi dati formulama: y1 = tf (tn , yn , vn ) v1 = tg(tn , yn , vn ) t y1 v1 y2 = tf tn + , yn + , vn + 2 2 2 y1 v1 t , yn + , vn + v2 = tg tn + 2 2 2 t y2 v2 y3 = tf tn + , yn + , vn + 2 2 2 t y2 v2 v3 = tg tn + , yn + , vn + 2 2 2 y4 = tf (tn + t, yn + y3 , vn + v3 ) v4 = tg(tn + t, yn + y3 , vn + v3 ) (6.72a) (6.72b) (6.72c) (6.72d) (6.72e) (6.72f) (6.72g) (6.72h)
133

(6.71)

Rjeavanje obinih diferencijalnih jednaina

Vrlo vano je napomenuti da se algoritam rjeavanja sastoji u tome da se prvo izraunavaju vrijednosti y1 i v1 , pa tek onda ide na izraunavanje vrijednosti y2 i v2 , zatim na rjeavanje vrijednosti inkremenata y3 i v3 , itd. Takoer, vrijednost vremenskog inkrementa mora biti isti za sve jednaine. Funkcije f (t, y, v) i g(t, y, v), a time i inkrementi dati jednainama (6.72), openito zavise od promjenljivih t, y i v, ali se s obzirom na jednaine (6.67) i uvrtavajui zadate vrijednosti, inkrementi mogu svesti na sljedei oblik: y1 = tvn v1 = t y2 v2 y3 v3 y4 v4 10000 9.8 100 5tn v1 = t vn + 2 10000 = t 9.8 100 5(tn + t/2) v2 = t vn + 2 10000 9.8 = t 100 5(tn + t/2) = t(vn + v3 ) 10000 = t 9.8 100 5(tn + t) (6.73a) (6.73b) (6.73c) (6.73d) (6.73e) (6.73f) (6.73g) (6.73h)

Sada, za prvi vremenski korak i t = 1 imamo: y1 = 1 0 = 0 10000 v1 = 1 9.8 = 90.2 100 5 0 90.2 y2 = 1 0 + = 45.1 2 10000 v2 = 1 9.8 = 92.7641 100 5(0 + 1/2) 95.463158 y3 = 1 0 + = 46.382 2 10000 v3 = 1 9.8 = 92.7641 100 5(0 + 1/2) y4 = 1(0 + 95.463158) = 92.7641
134

(6.74a) (6.74b) (6.74c) (6.74d) (6.74e) (6.74f) (6.74g)

6.4. Sistem obinih diferencijalnih jednaina

v4 = 1

10000 9.8 = 95.4631 100 5(0 + 1)

(6.74h)

pa uvrtavajui dobivene vrijednosti u jednaine (6.71) dobijamo rjeenje za prvi vremenski korak: 1 y1 = 0 + [0 + 2(45.1 + 46.382) + 95.4631] = 45.9547 6 1 v1 = 0 + [90.2 + 2(92.7641 + 92.7641) + 95.4631] = 92.7866 6

(6.75)

U tabeli 6.6 data su rjeenja za y i v za prvih deset sekundi sa tanim rjeenjima, y i v .


Tabela 6.6: Uz primjer 6.8 t, s 0 1 2 3 4 5 6 7 8 9 10 y 0.0000 45.9548 187.4214 430.2564 781.0064 1247.0378 1836.7016 2559.5442 3426.5850 4450.6860 5647.0564 y 0.0000 45.9547 187.4212 430.2560 781.0058 1247.0370 1836.7004 2559.5426 3426.5829 4450.6832 5647.0525 v 0.0000 92.7866 191.1210 295.6379 407.0871 526.3641 654.5499 792.9658 943.2512 1107.4740 1288.2944 v 0.0000 92.7866 191.1210 295.6379 407.0871 526.3642 654.5500 792.9660 943.2514 1107.4743 1288.2947

Treba naglasiti da je prethodni primjer jednostavna verzija problema vertikalnog leta rakete. U realnosti sve veliine mogu biti zavisne od sve tri promjenljive, t, y i v, tako da se mogu dobiti komplikovaniji oblici jednaine (6.64) No, i u ovom sluaju postupak rjeavanja je potpuno isti, s tim da je potrebno prije proraunavanja, na primjer, veliine y2 , koja ovisi o tn +t/2, yn + y1 /2 i vn + v1 /2, izraunati sve veliine koje su zavisne od navede Na

primjer, T (t, y) m0
t 0

y =

mdt

g(y)

cD (, V, y) 1 (y)Av 2 2 m0
t 0

mdt

y(0, 0) = 0

y (0, 0) = 0

(6.76)

gdje je cD empirijski koecijent uzgona, specina gustina atmosfere, a A popreni presjek rakete.

135

Rjeavanje obinih diferencijalnih jednaina

nih promjenljivih (na primjer, T , m, i cD , prema boliku jednaine datom u fosnoti).

6.5

Rjeavanje problema graninih vrijednosti

Slino diferencijalnim jednainama sa poetnim vrijednostima, i diferencijalne jednaine koje pripadaju problemima graninih vrijednosti opisuju mnoge inenjerske probleme. Mogu da budu zavisne od samo jedne promjenljive, ali se moemo sresti i sa sistemom ovakvih jednaina. Mogu biti linearne i nelinearne, drugog i viih redova, te homogene i nehomogene. Ovdje e se, ipak, obraditi samo neki problemi graninih vrijednosti za diferencijalne jednaine drugog reda. Opti oblik diferencijalne jednaine drugog reda sa graninim vrijednostima ima oblik: y + P (x, y)y + Q(x, y)y = F (x) y(x1 ) = y1 i y(x2 ) = y2 ili y + P y + Qy = F (x) y(x1 ) = y1 i y(x2 ) = y2 (6.78) (6.77)

Rjeenje ove jednaine je funkcija f (x), koja zadovoljava dva granina uslova na dvije granice oblasti (domene) rjeavanja. Oblast rjeavanja je zatvorena (x1 x x2 ). Ovo je sluaj sa graninim uslovima u kojima su date vrijednosti funkcije na granicama domene. Ovaj granini uslov se jo naziva i Dirichletov granini uslov, po terminologiji koritenoj u numerikom rjeavanju parcijalnih diferencijalnih jednaina. U sluaju kada je na granici denisanosti data vrijednost izvoda funkcije, radi se o Neumannovom graninom uslovu. Pored ova dva, javlja se i sluaj kombinacije prethodna dva uslova tzv. mjeoviti granini uslov. U svrhu rjeavanja jednaina tipa (6.77) mogu se koristiti dvije fundamentalno razliite metode konanih razlika: 1. Metoda gaanja, ili metoda poetnih vrijednosti, 2. Metoda ravnotee, ili metoda graninih vrijednosti. Osim ovih metoda postoji i niz drugih metoda koje se zasnivaju na aproksimaciji rjeenja pomou linearnih kombinacija funkcija i sl, u koje spadaju:
136

6.5. Rjeavanje problema graninih vrijednosti

Rayleigh-Ritzova metoda, metoda kolokacija, Galerkinova metoda, metoda konanih elemenata, metoda konanih volumena, itd ali se ove metode najee koriste za numeriko rjeavanje parcijalnih diferencijalnih jednaina. 6.5.1 Metoda gaanja

Metoda gaanja transformie diferencijalnu jednainu sa graninim uslovima na sistem diferencijalnih jednaina prvog reda sa poetnim vrijednostima, koje se mogu rijeiti koristei metode iz prethodnog poglavlja (problemi poetnih vrijednosti). Tako se granini uslovi na jednoj strani mogu koristiti kao poetni uslovi, a granini uslovi na drugoj strani ostaju neiskoriteni. Dodatni poetni uslovi se pretpostave, rijei se problem poetnih vrijednosti, a tako dobijeno rjeenje se uporedi sa poznatim graninim uslovom na drugoj granici. Ukoliko rjeenje nije tano, (iterativni) proces se nastavlja promjenom dodatnog graninog uslova. Obino se u prve dvije aproksimacije pretpostave poetni granini uslovi, a zatim se upotrebom metode sekante dolazi do sljedeih aproksimacija. U gurativnom smislu, pokuava se gaanjem doi do tanog rjeenja, odakle i ime metode. Primjena metode gaanja je pokazana u sljedeem primjeru. Primjer 6.9 Stacionarni problem jednodimenzionalnog prenosa toplote sastoji se od toplotne difuzije, odnosno kondukcije, uzdu ipke sa konstantnim poprenim presjekom i toplotne konvekcije na okolinu. Moe se pokazati da se ovaj problem opisuje sljedeom obinom diferencijalnom jednainom drugog reda sa graninim vrijednostima: T 2 T = 2 Ta T (x1 ) = T (0) = T1 T (x2 ) = T (L) = T2 (6.79)

gdje je T temperatura u ipki, = hP/kA, h koecijent prenosa toplote, P perimetar ipke, k toplotna provodljivost, A i L popreni presjek i duina ipke, respektivno, Ta temperatura okoline, a T1 i T2 temperature na granicama. Izvod T odnosi se na duinsku promjenljivu x.
137

Rjeavanje obinih diferencijalnih jednaina

Uzeti da je: L = 0.01 m, T1 = 0 C, T2 = 100 C, = 400 m1 , Ta = 0 C, i x = 0.0025 m. Rjeenje Tano rjeenje jednaine (6.79) dato je jednainom: T (x) = Aex + Bex + Ta T (x) = (Aex Bex ) gdje je: (T2 Ta ) (T1 T2 )eL eL ex (T1 T2 )eL (T2 Ta ) B= eL ex Uzimajui u obzir zadatke podatke, dobija se rjeenje: A= T (x) = 1.832179(e400x e400x ) T (x) = 732.8716(e400x + e400x ) (6.80)

(6.81)

(6.82)

Rijeimo sada jednainu (6.79) koristei metodu gaanja. Prvo, zadatu diferencijalnu jednainu drugog reda, (6.79), svodimo na sistem od dvije obine diferencijalne jednaine prvog reda, kao to je to objanjeno u prethodnom poglavlju. Dobija se: T = u T (0) = 0 u = 2 (T Ta ) u(0) = T (0) (6.83)

Iz prethodne jednaine se vidi da se diferencijalna jednaina drugog reda sa graninim uslovima svodi na sistem diferencijalnih jednaina prvog reda sa poetnim vrijednostima, pri emu se drugi uslov na poetnoj granici, u(0) = T (0), pretpostavi. Pretpostavimo da je za prvu aproksimaciju u(0) = T1 (0) = 1000 C/m, i rijeimo sistem koristei Runge-Kutta metodu, kao to je pokazano u prethodnom poglavlju. U tabeli 6.7 sumarno su dati rezultati za T i T . Na osnovu tabele se vidi da je vrijednost temperature na drugoj granici jednaka T2 (L) = 67.22934 C, to je manje od zadate vrijednosti na istoj granici, tj. T2 (L) = 100 C. Sada pretpostavimo drugu aproksimaciju uslova T1 na poetnoj granici, na primjer T1 (0) = 2000 C/m, te ponovimo postupak rjeavanja jednaine (6.79) sa novim poetnim uslovima. U tabeli 6.7 sumarno su dati rezultati za T i T sa rjeenjem za prethodnu aproksimaciju.
138

6.5. Rjeavanje problema graninih vrijednosti

Tabela 6.7: Uz primjer 6.9 T (0) = 1000 C/m x, m 0 0.0025 0.0050 0.0075 0.0100 T 0.0000 2.9167 8.9931 24.7664 67.22934 T 1000.0000 1541.6667 3737.8472 9959.2737 26911.50957 T (0) = 2000 C/m T 0.0000 5.8333 17.9861 49.5327 134.45867 T 2000.0000 3083.3333 7475.6944 19918.5475 53823.01915

Ovaj put rjeenje na drugoj granici, T2 (L) = 134.45867 je vee od zadatog, T2 (L) = 100 C, pa postupak treba ponoviti sa sljedeom aproksimacijom. U tu svrhu se najee koristi metoda sekante, pri emu su prve dvije aproksimacije jednake onim koje smo pretpostavili pri rjeavanju sistema diferencijalnih jednaina, tj. T1 (0) = 1000 C/m i T1 (0) = 2000 C/m. Dakle, za sljedeu aproksimaciju koristimo formulu: T1
(n+1)

= T1

(n) (n) (n)

T2 T2 nagib
(n1) (n1)

(n)

nagib =

T2 T1

T2 T1

(6.84)

pri emu indeks (n) oznaava broj iteracije. U naem sluaju imamo: nagib = T1
(3)

134.45867 67.22934 = 0.06722933 2000 1000 100 134.45867 = 2000 + = 1487.4459 0.06722933

(6.85)

Koristei dobiveno rjeenje za T (0) ponovimo postupak rjeavanja sistema (6.79). Rezultati su dati u tabeli 6.8 uz tano rjeenje prema izrazima (6.80). Na osnovu tabele, lako se zakljuuje da se radi o tanom rjeenju, s obzirom da je T (L) = 100 C. Ovo se moglo i oekivati u ovoj iteraciji (linearna aproksimacija vrijednosti), s obzirom da se radi o linearnom problemu. Postupak rjeavanja obine diferencijalne jednaine sa graninim vrijednostima sa Neumannovim graninim uslovom na drugom kraju domene bio bi analogan prethodnom, s tim da bi se umjesto "gaanja" vrijednosti funkcije na kraju intervala "gaala" vrijednost prvog izvoda na tom kraju.
139

Rjeavanje obinih diferencijalnih jednaina

Tabela 6.8: Uz primjer 6.9 x, m T 0 0.0025 0.0050 0.0075 0.0100 0 4.3064 13.2901 36.7091 100.0000

T 0

T 1465.74 2261.76 5514.41 14756.60 40026.85

T 1487.45 2293.15 5559.85 14813.88 40029.42

4.3384 13.3767 36.8386 100.0000

Primjer 6.10 Rijeiti primjer 6.9, s tim da je na drugom kraju ipka izolirana, tako da je T (L) = 0, te T1 (0) = 100 C. Rjeenje U ovom sluaju treba rijeiti diferencijalnu jednainu sa graninim uslovima: T 2 T = 2 Ta T (x1 ) = T (0) = T1 T (x2 ) = T (L) = 0 odnosno sistem diferencijalnih jednaina: T = u T (0) = 0 u = 2 (T Ta ) u(0) = T (0) Analitiko rjeenje je dato izrazom: T (x) = Aex + Bex + Ta T (x) = (Aex Bex ) s tim da je: (T1 Ta ) 1 + e2L (T1 Ta )e2L B= 1 + e2L A= odnosno za zadate podatke: T (x) = 0.03353501(e4x + 99.96646499e4x )
140

(6.86)

(6.87)

(6.88)

(6.89)

(6.90)

6.5. Rjeavanje problema graninih vrijednosti

Slino prethodnom primjeru, prvo pretpostavimo dvije vrijednosti za T (0), a onda koristei metodu sekante odreujemo sljedeu aproksimaciju za T (0), i gaamo vrijednost T (L) = 0. Pretpostavimo da je T1 (0) = 40000 i T2 (0) = 35000 i rijeimo zadatak koristei neku od metoda za rjeavanje sistema obinih diferencijalnih jednaina sa poetnim vrijednostima. U tabeli 6.9 su dati rezultati prorauna.
Tabela 6.9: Uz primjer 6.10 T (0) = 40000 C/m x, m 0 0.0025 0.0050 0.0075 0.0100 T 100.0000 37.5000 14.0625 5.2734 1.97754 T -40000.0000 -15000.0000 -5625.0000 -2109.3750 -791.01563 T (0) = 35000 C/m T 100.0000 52.0833 59.0278 129.1052 338.12422 T -35000.0000 -7291.6667 13064.2361 47686.9936 133766.5322

Vidi se da je vrijednost T (L) za T1 (0) = 40000 jednaka 791.01563, dok je za T1 (0) = 35000 jednaka 133766.5322, pa sljedeu aproksimaciju traimo koristei metodu sekante, tj. T1
(n+1)

= T1

(n) (n) (n)

T2 T2 nagib
(n1) (n1)

(n)

nagib = nagib =

T2 T1

T2 T1

(6.91)

133766.5322 (791.01563) = 26.912 35000 (40000) (6.92) 0 133766.5322 (3) T1 = 35000 + = 39970.6068 26.912 Koristei dobiveno rjeenje za T (0) ponovimo postupak rjeavanja sistema (6.86). Rezultati su dati u tabeli 6.10 uz tano rjeenje prema izrazima (6.88).

6.5.2

Metoda ravnotee

Metoda ravnotee primijenjena na problem rjeavanja obine diferencijalne jednaine drugog reda sa graninim vrijednostima, se ostvaruje kroz sljedee korake:
141

Rjeavanje obinih diferencijalnih jednaina

Tabela 6.10: Uz primjer 6.10 x, m T T 0 0.0025 0.0050 0.0075 0.0100 100 36.8668 13.7768 5.6506 3.6619 100 37.5857 14.3268 6.0014 3.9536

T -39973.17 -14673.78 -5312.48 -1721.39 0.00

T -39970.6068 -14954.6855 -5515.1327 -1816.6401 -0.0002

1. Neprekidna oblast (domena) se prekrije numerikom mreom, tj. podijeli na odreeni broj pod-domena. 2. Tani izvodi diferencijalne jednaine sa graninim vrijednostima se aproksimiraju algebarskim aproksimacijama konanih razlika. 3. Algebarske aproksimacije konanih razlika se smjenom uvrste u diferencijalnu jednainu kako bi se dobila algebarska jednaina konanih razlika. 4. Rjeava se rezultujua jednaina konanih razlika. Kada se jednaina konanih razlika primijeni na svaku taku u numerikoj mrei, dobija se sistem kuplovanih diferentnih jednaina, koji se mora rijeiti simultano. Primjena metode je pokazana na sljedeem primjeru. Primjer 6.11 Primjer 6.9 rijeiti pomou metode ravnotee. Domenu rjeavanja podijeliti na etiri jednaka dijela. Rjeenje Jednaina koju treba rijeiti ima oblik (6.79): T 2 T = 2 Ta T (x1 ) = T (0) = T1 T (x2 ) = T (L) = T2 (6.93)

Prvi korak u rjeavanju je podjela domene na odreeni broj dijelova. Prema zadatku, domena je podijeljena na etiri jednaka dijela, kao to je prikazano na slici 6.5. Sljedei korak je aproksimacija izvoda izrazima za konane razlike. Koristei metodu centralnog diferenciranja, drugi izvod T ima oblik: T =
142

Ti+1 2Ti + Ti1 x2

(6.94)

6.5. Rjeavanje problema graninih vrijednosti

x T1 1 2 L
Slika 6.5: Domena rjeavanja i numerika mrea za problem kondukcije

5 T2

pri emu je i indeks take (pod-domene) u numerikoj mrei u ovom sluaju i = 2, 3, 4, dok indeksi 1 i 5 predstavljaju granice domene. Uvrtenjem izraza (6.94) u jednainu (6.93), nakon sreivanja, dobija se diferentna jednaina: Ti1 (2 + 2 x2 )Ti + Ti+1 = 2 x2 Ta odnosno, sa uvrtenim zadatim veliinama: Ti1 3Ti + Ti+1 = 0 (6.96) (6.95)

Sada se jednaina primijeni na svaku unutranju taku domene (i = 2, 3, 4), tj. mrene take za x = 0.25, 0.5 i 0.75 cm, pa se dobija: x = 0.25 T1 3T2 + T3 = 0 x = 0.50 T2 3T3 + T4 = 0 x = 0.75 T3 3T4 + T5 = 0 (6.97a) (6.97b) (6.97c)

Uvrtenjem vrijednosti za T1 = 0 i T5 = 100 u jednaine (6.97a) i (6.97c), respektivno, dobija se sistem, koji se moe prikazati u matrinom obliku na sljedei nain: 3 1 0 T2 0 (6.98) 1 3 1 T3 = 0 0 1 3 T4 100 Sistem je mogue rijeiti bilo kojom metodom opisanom u poglavlju 3. U tabeli 6.11 dato je rjeenje sa tanim rjeenjem. Treba napomenuti da se sa poveanjem broja mrenih vorova poveava i tanost rjeavanja, sistem postaje rijedak (za jednodimenzionalne probleme maksimalno tri elementa u svakom redu su razliita od nule), obino je i dijagonalno dominantan, pa se u tu svrhu najee koriste iterativne metode za rjeavanje sistema jednaina.
143

Rjeavanje obinih diferencijalnih jednaina

Tabela 6.11: Uz primjer 6.11 x, m T T 0 0.0025 0.0050 0.0075 0.0100 0 4.3064 13.2901 36.7091 100.0000 0 4.7619 14.2857 38.0952 100.0000

Postupak rjeavanja obine diferencijalne jednaine sa graninim vrijednostima sa Neumannovim graninim uslovom na drugom kraju domene pomou metode ravnotee je neto drugaiji od onog sa Dirichletovim graninim uslovima na oba kraja, s obzirom da ne poznajemo vrijednost funkcije na kraju intervala na kojoj se nalazi Neumannov granini uslov. Zbog toga je neophodno napisati dodatnu jednainu za vornu taku na granici sa Neumannovim graninim uslovom, a koja se dobija iz zadate vrijednosti prvog izvoda za tu granicu. Primjer 6.12 Primjer 6.10 rijeiti pomou metode ravnotee. Domenu rjeavanja podijeliti na etiri jednaka dijela. Rjeenje Kao to je to u primjeru 6.10 reeno, treba rijeiti diferencijalnu jednainu sa graninim uslovima: T 2 T = 2 Ta T (x1 ) = T (0) = T1 T (x2 ) = T (L) = 0 (6.99)

Slino prethodnom primjeru, data diferencijalna jednaina se za unutranje take moe svesti na diferentnu jednainu oblika: Ti1 (2 + 2 x2 )Ti + Ti+1 = 2 x2 Ta (6.100)

Za razliku od prethodnog primjera, u kojem su na granicama dati Dirichletovi uslovi, u ovom sluaju na desnoj granici imamo Neumannov granini uslov, to znai da vrijednost temperature na granici nije poznata. Zbog toga se i
144

6.5. Rjeavanje problema graninih vrijednosti

za ovu taku postavlja diferentna jednaina, koja za sluaj podjele na etiri jednaka podintervala ima oblik: T 2 T = 2 Ta T6 2T5 + T4 2 T5 = 2 Ta x2 (6.101)

S obzirom da taka 6 ne postoji, moe se smatrati ktivnom kao to je prikazano na slici 6.6 (izvan domene), a dodatna jednaina se dobija tako to se vrijednost prvog izvoda za taku 5, koja je zadata zadatkom, aproksimira koristei formulu za centralno diferenciranje: T5 = T (L) = T6 T4 2x
x x x T1 1 2 L
Slika 6.6: Domena rjeavanja i numerika mrea za problem kondukcije - Neumannov granini uslov

(6.102)

5 T

Uvrtavajui jednainu (6.102) u jednainu (6.101), nakon sreivanja, dobija se sljedea jednaina: 2T4 (2 + 2 x2 )T5 = 2xT (L) 2 Ta x2 odnosno, nakon uvrtavanja zadatih veliina: 2T4 3T5 = 0 (6.104) (6.103)

Dakle, uzimajui u obzir unutranje take, i taku na granici sa Neumannovim graninim uslovom, dobijamo sistem jednaina: x = 0.25 x = 0.50 x = 0.75 x = 1.00 T1 3T2 + T3 = 0 T2 3T3 + T4 = 0 T3 3T4 + T5 = 0 2T4 3T5 = 0 (6.105a) (6.105b) (6.105c) (6.105d)
145

Rjeavanje obinih diferencijalnih jednaina

to se sa T1 (0) = 100 moe prikazati u matrinom obliku kao: 3 1 0 0 T2 100 1 3 1 0 T3 0 = 1 3 1 T4 0 0 0 0 2 3 T5 0

(6.106)

Sistem je mogue rijeiti bilo kojom metodom opisanom u poglavlju 3. U tabeli 6.12 dato je rjeenje sa tanim rjeenjem.
Tabela 6.12 x, m 0 0.0025 0.0050 0.0075 0.0100 T 100 36.8668 13.7768 5.6506 3.6619 T 100 38.298 14.8940 6.3830 4.2550

6.6

Pitanja i zadaci

1. Nabroj metode za numeriko rjeavanje obinih diferencijalnih jednaina sa poetnim vrijednostima! 2. Opii Taylorovu metodu! 3. Objasni upotrebu metoda konanih razlika u rjeavanju diferencijalnih jednaina! 4. U emu se sastoji Eulerova metoda! 5. U emu je razlika izmeu implicitne i eksplicitne Eulerove metode? 6. ta su to Runge-Kutta metode i na koji nain se izvode njihove jednaine! 7. Objasni razlike izmeu prve i druge modikacije Eulerovih metoda, odnosno Runge-Kutta metoda drugog reda). 8. Na koji nain se rjeavaju diferencijalne jednaine sa poetnim vrijednostima vieg reda?
146

6.6. Pitanja i zadaci

9. Na koji nain se rjeavaju sistemi diferencijalnih jednaina sa poetnim vrijednostima? 10. Koje metode se koriste za rjeavanje diferencijalnih jednaina sa graninim vrijednostima? 11. Objasni postupak rjeavanja obinih diferencijalnih jednaina sa graninim vrijednostima pomou metode gaanja! 12. Objasni postupak rjeavanja obinih diferencijalnih jednaina sa graninim vrijednostima pomou metode ravnotee! 13. Koristei neki od programskih jezika, napisati program za: Eulerovu eksplicitnu metodu Eulerovu implicitnu metodu prvu modikaciju Eulerove metode drugu modikaciju Eulerove metode Runge-Kutta metodu metodu ravnotee.

14. Rast populacije neke (bioloke) vrste se esto modelira obinom diferencijalnom jednainom oblika: dN = aN bN 2 dt N (0) = N0 (6.107)

gdje je N populacija, aN predstavlja natalitet, a bN 2 mortalitet usljed svih uzroka (bolest, borba za hranu, . . . ). Ako je N0 = 100000, a = 0.1, i b = 0.0000008, izraunati N(t) za period od 0 do 20 godina. Koristiti neku od metoda za numeriko rjeavanje obinih diferencijalnih jednaina sa poetnim vrijednostima. 15. Tijelo mase m sa poetnom temperaturom T0 se hladi konvekcijom na temperaturu okoline Ta . Na osnovu Newtonovog zakona hlaenja moe se dobiti: qkonv = hA(T Ta ), gdje je h koecijent hlaenja konvekcijom i A povrina tijela mase m. Kako je unutranja energija tijela E = mcp T , gdje je cp specina toplota, na osnovu odranja energije (brzina promjene unutranje energije E je jednaka brzini hlaenja usljed konvekcije qkonv ), dobija se: hA dT = (T Ta ) dt mC T (0) = T0 (6.108)
147

Rjeavanje obinih diferencijalnih jednaina

Uzeti da je tijelo sferinog oblika, prenika r = 0.01 m, izraeno od legure sa koju je = 3000 kg/m3 i cp = 1000 J/(kgK), h = 500 J/(sm2 K), T (0) = 500 C, Ta = 50 C. Koristei neku od metoda za numeriko rjeavanje obinih diferencijalnih jednaina sa poetnim vrijednostima, rijeiti T (t) za vrijeme od 0 do 10 sekundi, sa korakom od 2 sekunde. 16. Prethodni zadatak kombinovati sa primjerom 6.1 kako bi uzeli u obzir simultano hlaenje konvekcijom i zraenjem. 17. Jaina struje i(t) u serijskom RLC kolu data je jednainom: 1 di + Ri + q = U (t) dt C i(0) = i0 q(0) = q0 L (6.109)

gdje je i jaina struje u A, q naboj u C, dq/dt = i, L induktivitet u H, R otpor u , C konduktivitet u F, a U je napon u V. Za podatke: L = 100 mH, R = 10 , C = 1 mF, U = 10 V, i0 = 0 i q0 = 0, treba izraunati i(t) za vrijeme od 0 do 0.05 sekundi. Koja je maksimalna vrijednost struje, i kada se javlja? 18. Ugaono odstupanje klatna bez trenja (t) dato je jednainom: d2 g + sin = 0 2 dt L (0) = 0 (0) = 0 (6.110)

gdje je g gravitaciono ubrzanje a L duina klatna. Za male otklone , jednaina (6.110) se svodi na jednostavniji oblik: d2 g + =0 2 dt L (0) = 0 (0) = 0 (6.111)

Koristei neku od metoda za numeriko rjeavanje obinih diferencijalnih jednaina sa poetnim vrijednostima, rijeiti (t) za jedan period oscilacija za tanu i pojednostavljenu jednainu klatna. Uzeti da je (0) = 0.1 i (0) = 0.5 radijana uz L = 0.1, 1 i 10 m, te (0) = 0. 19. Populacija dvije (bioloke) vrste koje se natjeu za isti izvor hrane moe se modelirati sistemom obinih diferencijalnih jednaina: dN1 = N1 (A1 B1 N1 C1 N2 ) N1 (0) = N1,0 dt (6.112) dN2 = N2 (A2 B2 N2 C2 N1 ) N2 (0) = N2,0 dt
148

6.6. Pitanja i zadaci

gdje AN predstavlja natalitet, BN 2 mortalitet usljed bolesti, a CN mortalitet usljed borbe za hranu. Ako je N1 (0) = N2 (0) = 100, A1 = 0.1, B1 = 0.0000008, C1 = 0.000001, A2 = 0.1, B2 = 0.0000008, C1 = 0.0000001. Izraunati N1 (t) i N2 (t) za vrijeme od 0 do 10 godina. 20. Raspodjela temperature u zidu cijevi kroz koju protie vrua tenost data je sljedeom diferencijalnom jednainom: d2 T 1 dT + =0 dr2 r dr T1 (1) = 100 C (6.113) T (2) = 0 C

Odrediti temperaturni prol u zidu cijevi. 21. Ako se cijev iz prethodnog primjera hladi konvekcijom na spoljanjoj povrini, toplotna kondukcija na spoljanjem zidu, qkond jednaka je toplotnoj konvekciji sa okolinom, tj: dT = qkonv = hA(T Ta ) (6.114) dr gdje je toplotni konduktivitet k = 100 J/(smK), koecijent hlaenja konvekcijom h = 500 J/(sm2 K) i Ta = 0 C temperatura okoline. Odrediti temperaturni prol u zidu cijevi. qkond = kA 22. Ugib slobodno oslonjene grede optereene kontinuiranim optereenjem za male ugibe, dat je diferencijalnom jednainom: EI d2 y qLx qx2 = + dx2 2 2 y(0) = 0 y(L) = 0 (6.115)

gdje je q kontinuirano optereenje po jedinici duine, L duina grede, I moment inercije poprenog presjeka grede, i E modul elastinosti. Ako se uzme da je I = bh3 /12, te L = 5 m, b = 0.05 m, h = 0.1 m, E = 200 GPa, i q = 1500 N/m, izraunati ugib y(x). 23. Zadatak 22 rijeiti ako se greda optereti kontinuiranim optereenjem po visini h, tj. I = b3 h/12. U tom sluaju ugibi e biti veliki, pa se ne moe koristiti jednaina (6.115), nego jednaina: EI 1+ y(0) = 0
d2 y dx2 3/2 dy 2 dx

qLx qx2 + 2 2

(6.116)

y(L) = 0
149

Rjeavanje obinih diferencijalnih jednaina

Uporediti dobivena rjeenja.

150

Poglavlje 7

Ukratko o rjeavanju parcijalnih diferencijalnih jednaina


Parcijalne diferencijalne jednaine se javljaju u svim oblastima nauke i inenjerstva, a veina realnih zikih procesa se moe opisati pomou njih. U mnogim sluajevima koriste se pojednostavljene aproksimacije, pa se parcijalne diferencijalne jednaine mogu svesti na obine diferencijalne jednaine, a ponekad i na algebarske jednaine. Meutim, u dananje vrijeme su neophodni taniji modeli mnogih zikalnih procesa, pa je neophodno pristupiti numerikom rjeavanju parcijalnih diferencijalnih jednaina koji opisuju te probleme.

7.1

Ukratko o parcijalnim diferencijalnim jednainama

Parcijalne diferencijalne jednaine su jednaine koje daju vezu izmeu (zavisne) funkcije dvije ili vie promjenljivih i parcijalnih izvoda ove funkcije u odnosu na njene nezavisne promjenljive. U veini inenjerskih problema nezavisne promjenljive su ili prostorne (x, y, z) ili prostorne i vremenske (x, y, z, t), a zavisna promjenljiva zavisi od procesa koji se modelira. Rjeenje neke parcijalne diferencijalne jednaine je ona funkcija koja zadovoljava parcijalnu diferencijalnu jednainu u itavom domenu posmatranja, pri emu moraju biti ispunjeni poetni i/ili granini uslovi. U vrlo malom broju sluajeva rjeenje parcijalnih jednaina moe se prikazati u zatvorenom obliku, pa se gotovo uvijek rjeenje mora traiti koristei numerike metode. Klasikacija parcijalnih diferencijalnih jednaina se moe izvriti na razliite naine (prema redu, homogenosti, linearnosti koecijenata, itd.), ali posebno mjesto zauzima ona koja ih dijeli na eliptike, hiperbolike i parabolike. Pomou ovih jednaina je mogue opisati sve tri vrste zikih problema koji se

Ukratko o rjeavanju parcijalnih diferencijalnih jednaina

mogu pojaviti problemi ravnotee, problemi kretanja (propagacije) i problemi sopstvenih veliina (vidi dio 6.1). Problemi ravnotee su problemi koji opisuju stacionarna stanja, kao to je raspodjela temperature u ipki, ravnotea raspodjele napona u krutom tijelu usljed vanjskog optereenja, te mnoga stacionarna teenja uida. Ovi i mnogi drugi stacionarni problemi predstavljeni su eliptikim jednainama. Prototip eliptike jednaine su Laplaceova jednaina, koja opisuje nerotaciono teenje nestiljivog uida, te stacionarni prenos toplote kondukcijom. Za razliku od problema ravnotee, problemi kretanja (propagacije) ili irenja se opisuju parabolikim ili hiperbolikim parcijalnim diferencijalnim jednainama. U ovu grupu spadaju problemi prenosa toplote, nestacionarna teenja, prostiranje talasa, i dr. Treba, ipak, napomenuti da se i neka stacionarna teenja opisuju parabolikim ili hiperbolikim jednainama. Klasini primjer parabolike parcijalne diferencijalne jednaine je nestacionarna toplotna kondukcija. Hiperbolike jednaine dominiraju analizom problema vibracija. Openito se javljaju u vremenski zavisnim procesima sa zanemarljivom koliinom rasipanja, a prototip ove vrste jednaina je talasna jednaina.

7.2

Numerike metode za rjeavanje parcijalnih diferencijalnih jednaina

Svaki od oblika parcijalnih diferencijalnih jednaina (eliptike, parabolike i hiperbolike) zahtijeva posebnu panju pri njihovom rjeavanju. U tu svrhu mogu se koristiti razliite numerike metode, kao to su metode konanih razlika, metoda konanih elemenata, metoda konanih volumena, metoda graninih elemenata, metoda paria, bezmrena metoda, metode karakteristika, i dr. U daljem tekstu date su osnovne ideje metode konanih razlika, metode konanih elemenata, te metode konanih volumena, s obzirom na njihovu estu upotrebu u rjeavanju mnogih inenjerskih problema. 7.2.1 Metoda konanih razlika

O metodi konanih razlika je ve bilo rijei u dijelu 6.2.2, gdje se pokazala njihova upotreba u numerikom rjeavanju obinih diferencijalnih jednaina. Ova metoda predstavlja i najstariju metodu za numeriko rjeavanje parcijalnih diferencijalnih jednaina (vjeruje se da ju je koristio Euler u XVIII vijeku) i postupak primjene na parcijalne diferencijalne jednaine je isti onom koji je objanjen u dijelu 6.2.2.
152

7.2. Numerike metode za rjeavanje parcijalnih diferencijalnih jednaina

Ova metoda je veoma jednostavna i ekasna, ali ima manu to zakoni odranja nisu obezbijeeni osim ako se ne poduzmu neke specijalne mjere. 7.2.2 Metoda konanih volumena

Metoda konanih volumena koristi integralni oblik jednaina odranja (mase, koliine kretanja, momenta koliine kretanja, energije, . . . ) kao poetni korak. Domena rjeavanja se podijeli na konaan broj meusobno povezanih kontrolnih volumena, pa se jednaine odranja primijene na svaki od njih. U teitu svakog kontrolnog volumena nalazi se numeriki vor u kojem se proraunavaju vrijednosti promjenljivih. Vrijednosti promjenljivih na povrinama kontrolnih volumena se dobivaju interpolacijom preko vrijednosti promjenljivih u vornim takama. Povrinski i zapreminski integrali se aproksimiraju pomou odgovarajuih kvadraturnih formula, a na kraju se kao rezultat dobija algebarska jednaina za svaki vor, u kojima se javljaju i vrijednosti iz susjednih vorova. Metoda konanih volumena je vjerovatno najjednostavnija metoda za razumijevanje i programiranje, s obzirom da svi lanovi koje treba aproksimirati imaju ziko znaenje. Upravo zbog toga je vrlo popularna kod inenjera. Nedostatak ove metode u odnosu na metodu konanih razlika je u tome to je metode vieg reda od drugog vrlo teko primijeniti na trodimenzionalne proraune. Ovo je zbog toga to metoda konanih volumena ima tri nivoa aproksimacije: interpolaciju, diferenciranje i integraciju. 7.2.3 Metoda konanih elemenata

Metoda konanih elemenata je u mnogome slina metodi konanih volumena. Domena rjeavanja se podijeli na odreeni broj diskretnih ili konanih elemenata; za dvodimenzionalne probleme obino se koriste trougaoni ili etverougaoni elementi, dok se za trodimenzionalne probleme najee koriste tetraedri i heksaedri. Osnovna razlika u odnosu na metodu konanih volumena je u tome to se jednaine pomnoe sa tzv. teinskom funkcijom prije nego se izvri integracija. Kod najjednostavnijih metoda konanih elemenata rjeenje se aproksimira funkcijom linearnog oblika unutar svakog elementa na nain koji garantuje kontinuitet rjeenja preko granica elemenata. Ova aproksimacija se zatim zamijeni u teinski integral zakona odranja, pa se kao rezultat dobiju nelinearne algebarske jednaine. Osnovna prednost metode konanih elemenata je sposobnost da rjeava probleme sa razliitom, ponekad vrlo kompleksnom, geometrijom. Ove metode se vrlo lako analiziraju matematiki, a moe se pokazati da za neke vrste (diferencijalnih) jednaina imaju optimalne osobine. Osnovna mana ove, kao i veine
153

Ukratko o rjeavanju parcijalnih diferencijalnih jednaina

ostalih metoda koje koriste nestruktuirane mree, je to matrice lineariziranih rjeenja nisu dobro struktuirane, pa je teko nai ekasnu metodu za njihovo rjeavanje. Pored ovog, treba pomenuti i tzv. metodu konanih elemenata koja se zasniva na kontrolnim volumenima (eng. control-volume-based nite element method ), kod koje se koriste funkcije oblika kako bi se opisale promjene promjenljivih u nekom elementu. Kontrolni volumeni se formiraju oko svakog vora tako to se povezuju teita elemenata, pa se na svaki ovako formirani kontrolni volumen primijene jednaine odranja na isti nain kao kod metode konanih volumena.

154

LITERATURA

[1] Bertolino, M. Numerika Analiza. Nauna knjiga, Beograd, 1981. [2] Buchnan,J.L. i Turner,P.R. Numerical Methods and Analysis. McGrawHill, Inc., 1992. [3] Chapra, S. i Canale, R. Numerical Methods for Engineers. McGraw-Hill Book Company, 5th edition, 2006. [4] Collins, G.W. Fundamental Numerical Methods and Data Analysis. Internet Edition, 2003. [5] Dahlquist, G., Bjorck,A. Numerical Methods in Scientic Computing, volume I-III. Cambridge University Press, 2008. [6] Demirdi, I. Numerika matematika. Univerzitet u Sarajevu, 1996. [7] Drma,Z. i dr. Numerika Analiza. Sveuilite u Zagrebu, 2003. [8] Ferziger, J.H., Peri, M. Computational Methods for Fluid Dynamics. Springer-Verlag, 3th edition, 2002. [9] Hjorth-Jensen, M. Computational Physics. University of Oslo, 2003. [10] Homan, J.D. Numerical Methods for Engineers and Scientists. Marcel Dekker, Inc., 2001. [11] Schfer, M. Computational Engineering - Introduction to Numerical Methods. Springer-Verlag, 2006. Osim navedene literature, koja je koritena u toku pisanja ovog udbenika, itaoci se upuuju i na sljedee naslove, koji po svom sadraju ne samo da zadovoljavaju potrebe kursa (pojedini naslovi su vrlo korisni za vjebu, naroito pri koritenju raznih softvera), nego i ire, a u pojedinim su obuhvaene i druge oblasti iz primjene numerikih metoda. Uz to, znaajan broj navedenih naslova daje i gotove numerike programe koji se mogu korisiti za rjeavanje odgovarajuih problema iz numerikog inenjerstva.
155

LITERATURA
[1] E. Billo. Excel for Scientists and Engineers - Numerical Methods. John Wiley & Sons, Inc., 2007. ISBN 978-0-47 1-38734-3. [2] D. Conte, S and C. de Boor. Elementary Numerical Analysis - An Alghoritmic Approach. McGraw-Hill Book Company, 3rd edition, 1997. ISBN 0-521-43108-5. [3] D. Dubin. Numerical and Analytical Methods for Scientists and Engineers Using Matematica. John Wiley & Sons, Inc., 2003. ISBN 0-471-26610-8. [4] J. Kiusalaas. Numerical Methods in Engineering with MATLAB. Cambridge University Press, 2005. ISBN 978-0-521-85288-3. [5] J. Manassah. Elementary Mathematical and Computational Tools for Electrical and Computer Engineers using MATLAB. CRC Press LLC, 2001. [6] Mari-Dedijer, M. Zbirka rijeenih zadataka iz Numerike Analize. Nauna knjiga, Graevisnki fakuktet,Beograd, 1992. [7] J. Pao. Engineering Analysis - Interactive Methods and Programs with FORTRAN, QuickBASIC, MATLAB and Mathematica. CRC Press LLC, 2001. [8] W. Press. Numerical Recipes in C. Cambridge University Press, 2nd edition, 1997. ISBN 0-521-43108-5. [9] S. Salleh, A. Zomaya, and S. Bakar. Computing for Numerical Methods Using Visual C++. John Wiley & Sons, Inc., 2008. ISBN 978-0-47012795-7. [10] L. Shampine, R. Allen Jr., and P. S. Fundamentals of Numerical Computing. John Wiley & Sons, Inc., 1997. [11] Subai, K. Numerike Metode. Univerzitet u Zenici, 2007.

156

Dodatak A

Softveri za numeriku analizu


U dananje vrijeme su za numeriko rjeavanje inenjerskih i naunih problema na raspolaganju brojni komercijalni softveri. U daljem tekstu su abecednim redom dati oni poznatiji i ire koriteni. U ovoj listi, meutim, nisu dati softveri koji se odnose na numeriko rjeavanje parcijalnih diferencijalnih jednaina, odnosno softveri zasnovani na metodama poput Metode Konanih Elemenata, Metode Konanih Volumena i slino, s obzirom da se u udbeniku ne izuava ovo podruje. Excel predstavlja proraunsku tabelu (eng. spreadsheet) koju je kao dio Microsoft Oce-a razvio Microsoft, Inc. Ovaj programski paket omoguava razne proraune na podacima rasporeenim u redovima i kolonama. Ukoliko se promijeni bilo koji podatak, kompletan proraun koji ovisi od tog promijenjenog podatka se automatski koriguje. Uz ove osnovne karakteristike, Excel posjeduje i veliki broj ugraenih algoritama, kao to su statistii testovi, deskriptivna statistika, Fourierova analiza, regresija, nelinearna regresija, i drugi. Ovaj paket, takoer, omoguava i brzo crtanje grafova u razliitim stilovima (histogrami, kolone, povrine, x y grafovi, . . . ), a sa Visual Basic programiranjem, koje je sastavni dio paketa, mogue je pravljenje sopstvenih windows aplikacija visoke kvalitete. Ipak, treba napomenuti da ovaj softver nije napravljen za numeriku analizu, ali u svakom sluaju moe posluiti za rjeavanje mnogih numerikih problema. Web stranica: http://oce.microsoft.com/en-gb/excel/default.aspx
Excel

Maple predstavlja vienamjenski matematiki softverski alat visoke kvalitete sa potpuno integrisanim numerikim i simbolikim raunanjem. Sve funkcije softvera su pristupane iz WYSIWYG tehnikog okruenja, a mateMaple 157

Softveri za numeriku analizu

matiki izrazi se ispisuju u prirodnoj notaciji. Uz sve to, tu su i state-of-the-art graka, te animacije sa potpunom kontrolom editiranja i prezentacije. Web stranica: http://www.maplesoft.com/products/Maple/index.aspx
Mathematica Wolfram Mathematica, jedan od vodeih matematikih softvera, razvio je Wolfram Research. Slino, Maple 6 predstavlja sistem sa integrisanim numerikim i simbolikim raunanjem. Ovaj softver obuhvata najveu kolekciju algoritma u jednom sistemu, koji mogu da rade u mnogobrojim oblastima numerikom, grakog ili simbolikog raunanja. Web stranica: http://www.wolfram.com/products/mathematica/index.html MathCAD MathCAD je softver za inenjerske proraune koji prua znaajne prednosti u produktivnosti pri razvoju i dizaniranju inenjerskih projekata, kako za inenjera, tako i za sam procesa. Za razliku od drugih softvera koji se mogu koristiti u inenjerskim proraunima, MathCAD omoguava inenjerima da istovremeno dizajniraju i dokumentuju proraune sa savremenim funkcionalnim i dinamikim kalkulacijama koje uzimaju u obzir i mjerne jedinice. Ovaj paket sadri veliki broj ugraenih algoritama (funkcija) koji se mogu koristiti u numerikoj analizi, ali korisnik moe da programira svoje algoritme u veoma monom programskom modulu. Web stranica: http://www.ptc.com/products/mathcad/ MATLAB MATLAB je integrirano proraunsko okruenje koje kombinuje numerike proraune, naprednu graku i vizualizaciju, sa viim programskim jezikom. Ovaj softverski paket se moe efektivnije koristiti u mnogo irem opsegu aplikacija u odnosu na gore pomenute pakete. Ove aplikacije obuhvataju podruja procesiranja signala i slika, komunikacija, kontrole dizajniranja, testiranja i mjerenja, nancijskog modeliranja i analize, te numerike bioologije. Takoer je mogue MATLAB integrirati sa drugim programskim jezicima i aplikacijama. Web stranica: http://www.mathworks.com/products/matlab/

158

Dodatak B

Neke korisne web stranice


U dananje vrijeme se na internetu mogu nai mnogobrojne web stranice koje su bave numerikim metodama i njihovom primjenom na razne inenjerske probleme. Neke od njih, koji prednjae po kvalitetu i interesantnosti sadraja, date su u daljem tekstu. [1] http://numericalmethods.eng.usf.edu/ Izuzetno sadrajna web stranica, sa velikim brojem poglavlja iz numerike analize. Sadraj stranice u potpunosti odgovara sadraju ovog udbenika, s tim da se tu mogu nai i predavanja (u PDF i Word formatima), prezentacije (u PDF i Power Point formatima), te programi napisani za softvere Maple, MathCAD, Mathamatica i Matlab. Uz sve ovo, na stranici se za svaku oblast mogu nai i kviz pitanja radi provjere znanja. [2] http://math.fullerton.edu/mathews/n2003/ /NumericalUndergradMod.html Na ovoj stranici data su predavanja koja se koriste na California State University, Fullerton, a koja u potpunost pokrivaju sadraj ovog udbenika, a tu se mogu nai i ostale metode iz oblasti numerike matematike. [3] http://math.jct.ac.il/aiman/nm/ Online kurs iz numerikih metoda na Jerusalem College of Technology. [4] http://www.damtp.cam.ac.uk/lab/people/sd/lectures/ /nummeth98//introduction.htm Jo jedna od stranica na kojoj se nalazi nastavni materijal - University of Cambridge [5] http://pagesperso-orange.fr/jean-pierre.moreau/links.html Vrlo obimna baza uraenih programa iz oblasti numerike analize. Pro159

Neke korisne web stranice

grami su dati za programske jezike BASIC, C++, Fortran 90, Pascal, te Visual C++. [6] http://mathworld.wolfram.com/topics/ /NumericalMethods.html Ova web stranica je samo jedan dio najobimnije baze iz oblasti matematike, koja se moe nai na internetu. [7] http://www.ima.umn.edu/ arnold/disasters/ Greke koje se javljaju u toku numerikih prorauna, mogu da budu katastrofalne. Na ovoj stranici su dati neki od najpoznatijih primjera. [8] http://web.mit.edu/18.06/www/Video/video-fall-99.html Na ovoj stranici mogu se nai video predavanja iz oblasti linearne algebre, kao to su na primjer problemi koji se tiu upotrebe matrica.

160

Dodatak C

Formule za pismeni ispit


U ovom Dodatku dat je primjerak sa formulama koje se mogu koristiti u toku izrade pismenog ispita. a+b 2 Ako je f (a)f (c) < 0 : Ako je f (c)f (b) < 0 : Ako je f (a)f (c) = 0 : c= |b a| 1 i/ili (C.1a) a = a, b = c a = c, b = b dobiva se rjeenje = c |f (xi )| 2 (C.1b) (C.1c) (C.1d) (C.2)

ba f (b) f (b) f (a) Ako je f (a)f (xi ) < 0 : Ako je f (xi )f (b) < 0 : Ako je f (a)f (xi ) = 0 : xi = b |b a| 1 i/ili

(C.3a) a = a, b = xi a = xi , b = b dobiva se rjeenje = xi (C.3b) (C.3c) (C.3d) (C.4)

|f (xi )| 2

xi+1 = g(xi ) |xi+1 xi | 1 i/ili ei+1 = |g ()| < 1 ei

|f (xi+1 )| 2

(C.5a) (C.5b) (C.5c)

161

Formule za pismeni ispit

f (xi ) f (xi ) |xi+1 xi | 1 i/ili xi+1 = xi

(C.6a) |f (xi+1 )| 2 (C.6b)

f (xi ) f (x0 ) |xi+1 xi | 1 i/ili xi+1 = xi

(C.7a) |f (xi+1 )| 2 (C.7b)

xi xi1 f (xi ) f (xi ) f (xi1 ) |xi+1 xi | 1 i/ili |f (xi+1 )| 2 xi+1 = xi

(C.8a) (C.8b)

Ax = b
n

(C.9) (i = 1, 2, . . . , n) (C.10)

aij xj = bi
j=1

[A|I] [I|A1 ]

(C.11)

x=A1 b

(C.12)

A=LU Lb = b b Ux = b x
n

(C.13) (C.14) (C.15)

(k+1) xi

(k) xi

1 + aii

bi
j=1

aij xj

(k)

(i = 1, 2, . . . , n)

(C.16)

162

(k+1) xi (k) Ri

(k) xi

R + i aii
n

(k)

(i = 1, 2, . . . , n)
(k)

(C.17) (C.18)

= bi
j=1

aij xj R + i aii
(k)

(i = 1, 2, . . . , n)

(k+1) xi (k)

(k) xi

(i = 1, 2, . . . , n)
n (k+1)

(C.19) (i = 1, 2, . . . , n) (C.20)

i1

Ri

= bi
j=1

aij xj

j=i

aij xj

(k)

xi

(k+1)

= xi +
i1

(k)

Ri aii

(k)

(i = 1, 2, . . . , n)
n

(C.21) (C.22)

(k) Ri

= bi
j=1

(k+1) aij xj

j=i

aij xj

(k)

(i = 1, 2, . . . , n)

Pn (x) = a0 + a1 x + a2 x2 + . . . + an xn y0 = a0 + a1 x0 + a2 x2 + . . . + an xn 0 0 y1 = a0 + a1 x1 + a2 x2 + . . . + an xn 1 1 y2 = a0 + a1 x2 + a2 x2 + . . . + an xn 2 2 ..................... yn = a0 + a1 xn + a2 x2 + . . . + an xn n n
n

(C.23)

(C.24)

Pn (x) =
k=0

Lk (x)f (xk ) (x x0 ) . . . (x xk1 )(x xk+1 ) . . . (x xn ) (xk x0 ) . . . (xk xk1 )(xk xk+1 ) . . . (xk xn )
n

(C.25)

Lk (x) = =

i=0 i=k

x xi xk xi

(k = 0, 1, . . . , n)

(C.26)

Pn (x) = f0 +

s s s f0 + 2 f0 + . . . + n f0 1 2 n

(C.27)
163

Formule za pismeni ispit

x x0 h h = xi xi1 s= f0 = f1 f0

pa je

x = x0 + sh

(C.28) (C.29)

2 f0 = f1 f0 = f2 2f1 + f0 ......
n

(C.30) n fi i

n f0 = n1 f1 n1 f0 =
i=0

(1)i

Pn (x) = f0 + s+ i =

s+ s+ s+ f0 + 2 f0 + . . . + n f0 n 1 2

(C.31) (C.32)

s(s + 1)(s + 2) (s + [i 1]) i!

y = a0 + a1 x + a2 x2 + . . . + an xn S = ak
N

(C.33) (k = 0, 1, . . . , n) (C.34)

2(Yi a0 a1 xi . . .an xn )(xk ) = 0 i i


i=1 N N N

a0 N + a1
i=1

xi + . . . + an
i=1

xn i

=
i=1

Yi (C.35)

..............................
N N N N

a0
i=1

xn i

+ a1
i=1

xn+1 i

+ . . . + an
i=1

x2n i

=
i=1

xn Yi i

y = axb ln(y) = ln a + b ln(x) Y = ln(y) Y = A + Bx A = ln(a) X = ln(x) iB = b

(C.36) (C.37) (C.38) (C.39)

y = aebx
164

(C.40)

ln(y) = ln a + bx Y = A + bx

(C.41)

Pn (x) = a0 + a1 x + a2 x2 + . . . + an xn f (x) P (x) = a1 + 2a2 x + 3a3 x2 + . . . + nan xn1 = f (x) P (x) = 2a2 + 6a3 x + . . . + n(n 1)an xn2 = (C.42) (C.43)

f (xi ) f (xi )

f (xi + h) f (xi ) h

(C.44) (C.45) (C.46)

f (xi ) f (xi h) h f (xi + h) f (xi h) f (xi ) 2h f (x) Pn (x) = a0 + a1 x + a2 x2 + . . .


b b

(C.47) x2 + ... 2
b

I=
a

f (x)dx
a

Pn (x)dx =

a0 x + a1
n1

(C.48)
a

I=
a

f (x)dx

ba (f0 + fn ) + 2 fj 2n j=1
n1 n1

(C.49)

I=
a

ba f (x)dx f0 + f2n + 4 f2j+1 + 2 f2j 6n j=0 j=1


1

(C.50)

I=
a

f (x)dx =
1

f (mt + c)m dt = +F b+a 2 1 3

ba 2

F [t]dt
1

ba = 2 m= ba 2

F i

1 3 c=

(C.51)

(C.52)
165

Formule za pismeni ispit

y(t) = y(t0 ) + y (t0 )t + y =

y (n) (t0 ) y (t0 ) (t)2 + . . . + (t)n + . . . 2 n!

(C.53) (C.54) (C.55) (C.56)

y y dy + = yt + yy y t y dt

y = ytt + 2yty y + yt yy + (yy )2 y + yyy (y )2 yn+1 = yn + h f (tn , yn )

yn+1 = yn + h f (tn+1 , yn+1 ) 1 1 h yn+1 = yn + y1 + y2 = yn + (fn + fn+1 ) 2 2 2 y1 = hf (tn , yn ) = hfn y2 = hf (tn + t, yn + y1 ) = hfn+1

(C.57)

(C.58a) (C.58b) (C.58c)

yn+1 = yn + 0 y1 + 1 y2 = yn + hfn+1/2 y1 = hf (tn , yn ) = hfn h y1 y2 = hf tn + , yn + = hfn+1/2 2 2 1 yn+1 = yn + (y1 + 2y2 + 2y3 + y4 ) 6 y1 = hf (tn , yn ) h y1 tn + , yn + 2 2 y2 h y3 = hf tn + , yn + 2 2 y4 = hf (tn + h, yn + y3 ) y2 = hf

(C.59a) (C.59b) (C.59c)

(C.60)

(C.61a) (C.61b) (C.61c) (C.61d)

166

Indeks
aproksimacija, 3, 77 metoda najmanjih kvadrata, 78 nelinearna, 82 polinom, 78 brojni sistemi, 8 Cauchyjev problem, v. problemi poetnih vrijednosti Cramerovo pravilo, 38 diferencijalne jednaine, 109 problemi graninih vrijednosti, v. problemi graninih vrijednosti diferenciranje, v. numeriko diferenciranje direktne metode, v. sistemi linearnih jednaina Dirichletov granini uslov, 136, 137, 142 ekstrapolacija, 3, 75 Eulerova metoda, v. problemi poetnih vrijednosti Gauss-Jordanova metoda, v. metode eliminacije Gaussova metoda, v. metode eliminacije Gaussove kvadraturne formule, v. numeriko integriranje Gauss-Seidelova metoda, v. iterativne metode greke, 5 apsolutna, 6 izvori, 5 propagacija, 7 relativna, 6 integriranje, v. numeriko integriranje interpolacija, 66 Lagrangeov polinom, 70 Newtonovi polinomi, 72 direktna metoda, 67 greka, 77 inverzija matrica, v. Gauss-Jordanova metoda iteracija, 1 iterativne metode, v. sistemi linearnih jednaina Gauss-Seidelova metoda, 58 Jacobijeva metoda, 55 metode relaksacije, 60 uslov konvergencije, 54 Jacobijeva metoda, v. iterativne metode konvergencija, 1 linearizacija, 3 lokalizacija nula, 12 matrina metoda, v. metode eliminacije metoda bisekcije, 16 metoda eliminacije Gauss-Jornadnova metoda inverzija matrica, 47 greke zaokruivanja, 51 matrina metoda, 48 metode faktorizacije, 49 Croutova metoda, 49 Doolittleova metoda, 49 nedostaci, 51 podeenost sistema, 51 broj podeenosti, 52 norma, 52 metoda gaanja, v. problemi graninih vrijednosti Metoda Konanih elemenata, 153 metoda konanih razlika, v. problemi poetnih vrijednosti, 152 Metoda Konanih Volumena, 153 metoda najmanjih kvadrata, v. aproksimacija

167

Indeks
metoda ravnotee, v. problemi graninih vrijednosti metoda regula falsi, 18 metoda sekante, v. metoda sjeice metoda sjeice, 30 metoda tangente, v. Newtonova metoda metode eliminacije, 39 Gauss-Jordanova metoda, 46 Gaussova metoda, 44 metode faktorizacije, v. metode eliminacije metode relaksacije, v. iterativne metode nelinearna aproksimacija, v. aproksimacija nelinearne jednaine, 11 Neumannov granini uslov, 136, 140, 144 Newton-Cotesove formule, v. numeriko integriranje Newtonova metoda, 25 modikovana, 28 numeriko diferenciranje, 87 formule za diferenciranje, 89 centralno diferenciranje, 90 diferenciranje unaprijed, 90 diferenciranje unazad, 90 priblini polinomi, 87 numeriko integriranje, 92 Gaussove kvadraturne formule, 101 Newton-Cotesove formule, 95 Simpsonovo pravilo, 99 trapezno pravilo, 96 priblini polinomi, 93 viestruki integrali, 104 parcijalne diferencijalne jednaine, 151 preciznost, 5 problemi graninih vrijednosti, 136 metoda gaanja, 137 metoda ravnotee, 141 problemi poetnih vrijednosti, 111 Cauchyjev problem, 111 Eulerova metoda, 117 stabilnost, 120 eksplicitna, 117 implicitna, 119 modikovana, v. Runge-Kutta metode poboljana, v. Runge-Kutta metode Runge-Kutta metoda, 122 Runge-Kutta metode etvrtog reda reda, 125 drugog reda, 122 Taylorova metoda, 112 metoda konanih razlika, 116 sistem jednaina, 132 vieg reda, 129 prosta iteracija, 21 rekurzija, 1 Runge-Kutta metode, v. problemi poetnih vrijednosti SimpsonovoSimpsonovo pravilo, v. numeriko integriranje sistemi linearnih jednaina, 37 direktne metode, 38 iterativne metode, 54 tanost, 5 tabela podijeljenih razlika, 73 Taylorov red, 112 Taylorov red, 8, 90 Taylorova metoda, v. problemi poetnih vrijednosti trapezno pravilo, v. numeriko integriranje Vandermondova determinanta, 68 znaajne cifre, 4

168

You might also like