Você está na página 1de 486

STE SVEUCILI U ZAGREBU ODJEL PMF MATEMATICKI

Mladen Rogina, Sanja Singer i Sa sa Singer

Numeri cka analiza


Predavanja i vje zbe

Zagreb, 2003.

Sadr zaj
1. Mogu cnosti dana snjih ra cunala . . . . . . . . . . . . . . . . . . . . 1.1. 2. Ekasni i neekasni algoritmi . . . . . . . . . . . . . . . . . . . . 1 2 6 6 7 8 8 9 12 14 18 23 23 25 30 30 34 43 43 44 50

Gre ske . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8. Ra cunalo je izbacilo . . . Ne ce mi prihvatiti! . . . . . . . . . . . . Mjere za gre sku . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gre ske modela . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gre ske u ulaznim podacima . . . . . . . . . . . . . . . . . . . . . Gre ske metoda za rje savanje problema . . . . . . . . . . . . . . . Gre ske aritmetike ra cunala . . . . . . . . . . . . . . . . . . . . . Propagiranje gre saka u aritmeti ckim operacijama . . . . . . . . . Primjeri iz zivota . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.

Vektorske i matri cne norme . . . . . . . . . . . . . . . . . . . . . . 3.1. 3.2. Vektorske norme . . . . . . . . . . . . . . . . . . . . . . . . . . . Matri cne norme . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.

Stabilnost problema i algoritama . . . . . . . . . . . . . . . . . . . 4.1. 4.2. Jednostavni model problema . . . . . . . . . . . . . . . . . . . . Uvjetovanost problema . . . . . . . . . . . . . . . . . . . . . . .

5.

Rje savanje linearnih sustava . . . . . . . . . . . . . . . . . . . . . . 5.1. 5.2. 5.3. Kako se sustavi rje savaju u praksi . . . . . . . . . . . . . . . . . Gaussove eliminacije . . . . . . . . . . . . . . . . . . . . . . . . . LR faktorizacija . . . . . . . . . . . . . . . . . . . . . . . . . . .

SADRZAJ

NUM ANAL ii

5.4. 5.5. 5.6. 5.7. 5.8. 5.9. 6.

Teorija perturbacije linearnih sustava . . . . . . . . . . . . . . . . Gre ske zaokru zivanja kod rje savanja trokutastog linearnog sustava Gre ska unaprijed za trokutasti sustav . . . . . . . . . . . . . . . Gre ske zaokru zivanja za LR faktorizaciju . . . . . . . . . . . . . Pivotni rast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Posebni tipovi matrica . . . . . . . . . . . . . . . . . . . . . . . .

54 60 69 74 79 80 87 87 92 97 100 102

Faktorizacija Choleskog i QR faktorizacija . . . . . . . . . . . . . 6.1. 6.2. 6.3. Faktorizacija Choleskog . . . . . . . . . . . . . . . . . . . . . . . Analiza gre ske za faktorizaciju Choleskog . . . . . . . . . . . . . QR faktorizacija . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1. 6.3.2. Givensove rotacije . . . . . . . . . . . . . . . . . . . . . . . Householderovi reektori . . . . . . . . . . . . . . . . . . .

7.

Iterativne metode za rje savanje linearnih sustava . . . . . . . . . 104 7.1. 7.2. 7.3. 7.4. 7.5. 7.6. 7.7. 7.8. 7.9. Op cenito o iterativnim metodama . . . . . . . . . . . . . . . . . Jacobijeva metoda . . . . . . . . . . . . . . . . . . . . . . . . . . GaussSeidelova metoda . . . . . . . . . . . . . . . . . . . . . . . JOR metoda (Jacobi overrelaxation) . . . . . . . . . . . . . . . . SOR metoda (Successive overrelaxation) . . . . . . . . . . . . . . Konvergencija Jacobijeve i GaussSeidelove metode . . . . . . . . Konvergencija JOR i SOR metode . . . . . . . . . . . . . . . . . Optimalni izbor relaksacijskog parametra . . . . . . . . . . . . . Primjeri akademski i prakti cni . . . . . . . . . . . . . . . . . . 104 109 110 111 113 114 117 123 136

8.

Izvrednjavanje funkcija . . . . . . . . . . . . . . . . . . . . . . . . . 149 8.1. Hornerova shema . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.1.1. 8.1.2. 8.1.3. 8.1.4. 8.1.5. Ra cunanje vrijednosti polinoma u to cki . . . . . . . . . . . Hornerova shema je optimalan algoritam . . . . . . . . . . Stabilnost Hornerove sheme . . . . . . . . . . . . . . . . . Dijeljenje polinoma linearnim faktorom oblika x x0 . . . Potpuna Hornerova shema . . . . . . . . . . . . . . . . . . 151 152 153 155 155 157

SADRZAJ

NUM ANAL iii

8.1.6. 8.1.7. 8.1.8. 8.2. 8.2.1. 8.2.2. 8.2.3. 8.3. 8.4.

Hornerova shema za interpolacijske polinome . . . . . . Ra cunanje parcijalnih derivacija kompleksnog polinoma . . Izvrednjavanje rekurzivno zadanih funkcija . . . . . . . . . Izvrednjavanje Fourierovih redova . . . . . . . . . . . . . . Klasi cni ortogonalni polinomi . . . . . . . . . . . . . . . .

159 163 165 167 171 175 181 182 183 184 191 200 201 202 206 210 210

Hornerova shema za kompleksne argumente realnog polinoma 159

Generalizirana Hornerova shema . . . . . . . . . . . . . . . . . .

Stabilnost rekurzija i generalizirane Hornerove sheme . . . . . . . Besselove funkcije i Millerov algoritam . . . . . . . . . . . . . . . 8.4.1. 8.4.2. Op ca forma Millerovog algoritma . . . . . . . . . . . . . . Izvrednjavanje Besselovih funkcija . . . . . . . . . . . . . .

8.5. 8.6.

Asimptotski razvoj . . . . . . . . . . . . . . . . . . . . . . . . . . Veri zni razlomci i racionalne aproksimacije . . . . . . . . . . . . . 8.6.1. 8.6.2. 8.6.3. 8.6.4. 8.6.5. Brojevni veri zni razlomci . . . . . . . . . . . . . . . . . . . Uzlazni algoritam za izvrednjavanje brojevnih veri znih razlomaka . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eulerova forma veri znih razlomaka i neki teoremi konvergencije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Silazni algoritam za izvrednjavanje brojevnih veri znih razlomaka . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funkcijski veri zni razlomci . . . . . . . . . . . . . . . . . .

9.

Rje savanje nelinearnih jednad zbi . . . . . . . . . . . . . . . . . . . 214 9.1. 9.2. 9.3. 9.4. 9.5. 9.6. 9.7. 9.8. 9.9. Op cenito o iterativnim metodama . . . . . . . . . . . . . . . . . Metoda raspolavljanja (bisekcije) . . . . . . . . . . . . . . . . . . Regula falsi (metoda pogre snog polo zaja) . . . . . . . . . . . . . Metoda sekante . . . . . . . . . . . . . . . . . . . . . . . . . . . . Metoda tangente (Newtonova metoda) . . . . . . . . . . . . . . . Metoda jednostavne iteracije . . . . . . . . . . . . . . . . . . . . Newtonova metoda za vi sestruke nulto cke . . . . . . . . . . . . . Hibridna BrentDekkerova metoda . . . . . . . . . . . . . . . . . Primjeri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 215 219 221 225 231 235 237 238

SADRZAJ

NUM ANAL iv

10. Aproksimacija i interpolacija . . . . . . . . . . . . . . . . . . . . . 240 10.1. Op ci problem aproksimacije . . . . . . . . . . . . . . . . . . . . . 10.1.1. Linearne aproksimacione funkcije . . . . . . . . . . . . . . 10.1.2. Nelinearne aproksimacione funkcije . . . . . . . . . . . . . 10.1.3. Kriteriji aproksimacije . . . . . . . . . . . . . . . . . . . . 10.2. Interpolacija polinomima . . . . . . . . . . . . . . . . . . . . . . 10.2.1. Egzistencija i jedinstvenost interpolacionog polinoma . . . 10.2.2. Potrebni algoritmi . . . . . . . . . . . . . . . . . . . . . . . 10.2.3. Lagrangeov oblik interpolacionog polinoma . . . . . . . . . 10.2.4. Ocjena gre ske interpolacionog polinoma . . . . . . . . . . . 10.2.5. Newtonov oblik interpolacionog polinoma . . . . . . . . . . 10.2.6. Koliko je dobar interpolacioni polinom? . . . . . . . . . . . 10.2.7. Konvergencija interpolacionih polinoma . . . . . . . . . . . 10.2.8. Hermiteova i druge interpolacije polinomima . . . . . . . . 10.3. Interpolacija po dijelovima polinomima . . . . . . . . . . . . . . 10.3.1. Po dijelovima linearna interpolacija . . . . . . . . . . . . . 10.3.2. Po dijelovima kubna interpolacija . . . . . . . . . . . . . . 10.3.3. Po dijelovima kubna Hermiteova interpolacija . . . . . . . 10.3.4. Numeri cko deriviranje . . . . . . . . . . . . . . . . . . . . 10.3.5. Po dijelovima kubna kvazihermiteova interpolacija . . . . . 10.3.6. Kubi cna splajn interpolacija . . . . . . . . . . . . . . . . . 10.4. Interpolacija polinomnim splajnovima za matemati care . . . . 10.4.1. Linearni splajn . . . . . . . . . . . . . . . . . . . . . . . . 10.4.2. Hermiteov kubi cni splajn . . . . . . . . . . . . . . . . . . . 10.4.3. Potpuni kubi cni splajn . . . . . . . . . . . . . . . . . . . . 10.5. Diskretna metoda najmanjih kvadrata . . . . . . . . . . . . . . . 10.5.1. Linearni problemi i linearizacija . . . . . . . . . . . . . . . 10.5.3. Karakterizacija rje senja . . . . . . . . . . . . . . . . . . . . 10.5.4. Numeri cko rje savanje problema najmanjih kvadrata . . . . 240 241 242 242 245 245 247 252 254 255 259 297 298 303 304 306 309 311 315 319 327 329 334 339 350 350 356 359

10.5.2. Matri cna formulacija linearnog problema najmanjih kvadrata 356

SADRZAJ

NUM ANAL v

10.6. Op ci oblik metode najmanjih kvadrata . . . . . . . . . . . . . . . 10.6.1. Te zinski skalarni produkti . . . . . . . . . . . . . . . . . . 10.7. Familije ortogonalnih funkcija . . . . . . . . . . . . . . . . . . . . 10.8. Neka svojstva ortogonalnih polinoma . . . . . . . . . . . . . . . . 10.9. Trigonometrijske funkcije . . . . . . . . . . . . . . . . . . . . . . 10.9.1. Diskretna ortogonalnost trigonometrijskih funkcija . . . . . 10.10. Minimaks aproksimacija . . . . . . . . . . . . . . . . . . . . . . . 10.10.1. Remesov algoritam . . . . . . . . . . . . . . . . . . . . . . 10.11. Skoro minimaks aproksimacije . . . . . . . . . . . . . . . . . . . sevljevim to 10.12. Interpolacija u Cebi ckama . . . . . . . . . . . . . . . sevljeva ekonomizacija . . . . . . . . . . . . . . . . . . . . . 10.13. Cebi 10.14. Diskretne ortogonalnosti polinoma Tn . . . . . . . . . . . . . . . 10.15. Thieleova racionalna interpolacija . . . . . . . . . . . . . . . . . .

371 371 371 371 376 378 385 391 392 395 396 399 403

11. Numeri cka integracija . . . . . . . . . . . . . . . . . . . . . . . . . . 408 11.1. Op cenito o integracionim formulama . . . . . . . . . . . . . . . . 11.2. NewtonCotesove formule . . . . . . . . . . . . . . . . . . . . . . 11.2.1. Trapezna formula . . . . . . . . . . . . . . . . . . . . . . . 11.2.2. Simpsonova formula . . . . . . . . . . . . . . . . . . . . . . 11.2.3. Produljene formule . . . . . . . . . . . . . . . . . . . . . . 11.2.4. Primjeri . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2.5. Midpoint formula . . . . . . . . . . . . . . . . . . . . . . . 11.3. Rombergov algoritam . . . . . . . . . . . . . . . . . . . . . . . . 11.4. Te zinske integracione formule . . . . . . . . . . . . . . . . . . . . 11.5. Gaussove integracione formule . . . . . . . . . . . . . . . . . . . 11.5.1. GaussLegendreove integracione formule . . . . . . . . . . 11.5.2. Druge Gaussove integracione formule . . . . . . . . . . . . 408 410 410 416 421 424 427 428 437 440 446 457

12. Metode za rje savanje obi cnih diferencijalnih jednad zbi . . . . . 465 12.1. Uvod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.2. RungeKutta metode . . . . . . . . . . . . . . . . . . . . . . . . 465 465

SADRZAJ

NUM ANAL vi

12.2.1. Varijabilni korak za RungeKutta metode . . . . . . . . . 12.2.2. RungeKutta metode za sustave jednad zbi . . . . . . . . . 12.3. Vi sekora cne metode . . . . . . . . . . . . . . . . . . . . . . . . . 12.4. Krute (sti) diferencijalne jednad zbe . . . . . . . . . . . . . . . .

468 468 469 470

13. Rubni problem za obi cne diferencijalne jednad zbe . . . . . . . . 471 13.1. Egizstencija i jedinstvenost rje senja . . . . . . . . . . . . . . . . . 13.2. Metoda gadanja za linearne diferencijalne jednad zbe 2. reda . . . 13.3. Nelinearna metoda gadanja . . . . . . . . . . . . . . . . . . . . . 13.4. Metoda kona cnih razlika . . . . . . . . . . . . . . . . . . . . . . . 471 472 473 473

14. Rje savanje parcijalnih diferencijalnih jednad zbi . . . . . . . . . . 475 14.1. Paraboli cke PDJ Provodenje topline . . . . . . . . . . . . . . 14.1.1. Eksplicitna metoda . . . . . . . . . . . . . . . . . . . . . . 14.1.2. CrankNicolsonova metoda . . . . . . . . . . . . . . . . . . 14.2. Hiperboli cke PDJ Valna jednad zba . . . . . . . . . . . . . . . 14.2.1. Eksplicitna metoda . . . . . . . . . . . . . . . . . . . . . . 475 475 476 477 477

1. MOGUCNOSTI DANASNJIH RACUNALA

DANASNJA RACUNALA 1

1. Mogu cnosti dana snjih ra cunala


Mo zda nije najsretnije rje senje po ceti pri cati o mogu cnosti dana snjih ra cunala, kad se zna kojom se brzinom mijenjaju i ubrzavaju. Ipak, neke osnovne postavke ostat ce nepromijenjene, bez obzira pove ca li se broj osnovnih aritmeti ckih operacija u sekundi koje ra cunalo mo ze izvoditi. Cesto, ali pogre sno je mi sljenje da se ra cunalom mogu rje savati svi problemi podaci se ubace u ra cunalo, a ono nakon nekog vremena izbaci to can rezultat. Zaboravlja se na cinjenicu da dana snja ra cunala nisu inteligentna (iako se tomu te zi) i da su svi procesi u ra cunalu vodeni ljudskom rukom. se onda ipak mo Sto ze rije siti ra cunalom? Mogu se rije siti svi problemi za koje postoji to cno deniran, kona can postupak rje savanja algoritam. je algoritam? Prema deniciji Donalda Knutha, uva Sto zenog stru cnjaka za ra cunarstvo, algoritam je kona can niz operacija koji rje sava neki problem. Osim toga, algoritam mora zadovoljavati jo s i: 1. kona cnost za svaki ulaz, algoritam mora zavr siti nakon kona cnog broja koraka; 2. to cnu deniranost u svakom koraku algoritma to cno se zna sljede ci korak (nema slu cajnosti); 3. algoritam mo ze, ali i ne mora, imati ulazne podatke; 4. algoritam mora imati izlazne podatke; 5. ekasnost svaki algoritam mora zavr siti u razumnom vremenu. Mo zda je potrebno prokomentirati samo posljednja tri zahtjeva. Uobi cajeno je da algoritmi imaju ulazne podatke, ali to nije nu zno. Na primjer, ako zelimo izra cunati konstantu nekim algoritmom, takav program vjerojatno ne ce zahtijevati ulazne podatke. Sasvim je obrnuta situacija s izlaznim podacima. Ako ih nema, algoritam je obavio neki posao za nas, ali nas nije izvjestio o krajnjem rezultatu. A sto mi znamo o rje senju? Jednako kao da algoritam nije obavio nikakav posao!

1. MOGUCNOSTI DANASNJIH RACUNALA

DANASNJA RACUNALA 2

1.1.

Ekasni i neekasni algoritmi

Od svih ovih zahtjeva koji se postavljaju na algoritam, najnerazumljiviji je zahtjev ekasnosti. Zahtjev ekasnosti zna ci da rje senje problema treba prona ci u razumnom vremenu. Primjer 1.1.1. (Problem trgova ckog putnika) Neka je zadano n gradova, tako da su svaka dva vezana cestom. Takoder, zadane su cijene putovanja. Trgova cki putnik kre ce iz grada A1 , obilazi sve ostale gradove samo jednom i vra ca se ponovno u A1 (zatvori ciklus). Ako gradovi nemaju cestu koja ih direktno povezuje, za cijenu puta izmedu ta dva grada mo zemo staviti , odnosno, u prakti cnoj realizaciji, neki dovoljno veliki broj. Cilj trgova ckog putnika je na ci ciklus najmanje cijene. Na primjer, za problem trgova ckog putnika
A4 1 A5 3 6 A1 A2 2 1 5 A3 2 4

lako je provjeriti da je ciklus najmanje cijene (A1 , A3 , A5 , A4 , A2 , A1 ) ili, naravno, obratan ciklus (A1 , A2 , A4 , A5 , A3 , A1 ), i da mu je cijena 8 jedinica. Algoritam za egzaktno rje savanje ovog problema je ispitivanje svih ciklusa, a njih ima (n 1)!. Obja snjenje za broj ciklusa je jednostavno. Ako kre cemo iz grada A1 , drugi grad u koji sti zemo mo zemo odabrati na n 1 na cina, tre ci grad mo zemo izabrati na n 2 na cina (jer se ne smijemo vratiti u po cetni ili ostati u A2 ), . . . Ra cunanje cijene odgovaraju ceg ciklusa zahtijeva n zbrajanja. Prema tome, za rje senje problema trgova ckog putnika potrebno je pribli zno n! ra cunskih operacija.

Izra cunajmo koliko bi trajalo egzaktno rje savanje problema trgova ckog putnika za 10, 20, 30, 40 i 50 gradova. Pretpostavimo da nam je na raspolaganju najmoder-

1. MOGUCNOSTI DANASNJIH RACUNALA

DANASNJA RACUNALA 3

nije PC ra cunalo koje izvodi reda veli cine 108 ra cunskih operacija u sekundi. n 10 20 30 40 50 sekundi 3.6288 1002 2.4329 10+10 2.6525 10+24 8.1592 10+39 3.0414 10+56 sati 1.0080 1005 6.7581 10+06 7.3681 10+20 2.2664 10+36 8.4484 10+52 dana 4.2000 1007 2.8159 10+05 3.0701 10+19 9.4435 10+34 3.5201 10+51 godina 1.1507 1009 7.7147 10+02 8.4111 10+16 2.5873 10+32 9.6442 10+48

Uo cite da, osim egzaktnog rje senja problema za 10 gradova, ostali problemi nisu rje sivi u razumnom vremenu, jer ve c za n = 20, za rje senje problema treba cekati 771 godinu! Moderna znanost pretpostavlja da je Zemlja stara oko 4.5 milijarde godina (tj. 4.5 109 godina), a rje savanje problema za n = 30 gradova trajalo bi sedam redova veli cine dulje. Kad bismo na raspolaganju imali neko od danas najbr zih, paralelnih ra cunala, 13 koje izvodi pribli zno 10 ra cunskih operacija u sekundi, brojke u prethodnoj tablici bile bi 105 puta manje. U tom slu caju, jedino jo s kakotako smisleno bilo bi cekati 2.8 dana za rje senje problema s 20 gradova. nam prethodni primjer pokazuje? Pokazuje da ne bismo trebali problem Sto trgova ckog putnika rje savati egzaktno, ali nipo sto ne ka ze da ga uop ce ne bismo trebali rje savati! Postoje algoritmi koji dobro (i relativno brzo) pribli zno rje savaju ovaj problem. Koja je posebnost egzaktnog algoritma za rje savanje problema trgova ckog putnika? Naime, ako imamo problem dimenzije n (tj. n gradova), vrijeme tra zenja rje senja (ili broj potrebnih aritmeti ckih operacija) eksponencijalno raste u ovisnosti o n, sto slijedi iz nejednakosti nn/2 n! nn . Desna nejednakost je trivijalna. Dakle, ostaje nam pokazati samo prvu. Ako poka zemo da vrijedi k (n k + 1) n, k {1, . . . , n}, (1.1.1)

onda produkt 1 2 n mo zemo organizirati tako da mno zimo prvi i posljednji clan, drugi i pretposljednji, i tako redom. Takvih parova produkata ima n/2, pa je

1. MOGUCNOSTI DANASNJIH RACUNALA

DANASNJA RACUNALA 4

rezultat o cit. Dakle, preostaje pokazati samo relaciju (1.1.1). Prebacivanjem clana n na lijevu stranu slijedi (k 1)n k 2 + k = (k 1)(n k ) 0, sto je istina upravo za k {1, . . . , n}. Mnogi problemi koje rje savamo ra cunalom imaju slo zenost koja ne ovisi eksponencijalno o veli cini problema n, nego polinomno, tj. broj aritmeti ckih operacija proporcionalan je n , gdje je neka mala konstanta (uobi cajeno je 3). Vrlo je zanimljiv i problem prognoze vremena. On nam na suptilan na cin pokazuje sto ekasnost zna ci u tom slu caju.

Primjer 1.1.2. (Prognoza vremena) Najjednostavniji klimatski model funkcija je 4 argumenta: zemljopisne sirine, du zine, visine (od tla) i vremena. Kao rezultat dobivamo 6 vrijednosti: temperaturu, tlak, vla znost i brzinu vjetra (komponente u 3 smjera). Generalniji model mogao bi uklju civati, na primjer, koncentraciju razli citih plinova u atmosferi. Stvarni model atmosferskih procesa uklju civao bi i stvaranje oblaka, koli cinu padalina, kemiju i sl. Primijetimo da se klima neprekidno mijenja (u ovisnosti o u svoje cetiri varijable), ali je ra cunalom mo zemo simulirati samo u ponekim (diskretnim) to ckama. Pretpostavimo da smo povr sinu Zemlje podijelili u (pribli zne) kvadrate stranice 1 km. Po visini, takoder, uzimamo slojeve debljine 1 km, do visine 10 km. Stanje klime ra cunamo samo u vrhovima kvadrata i to ckama na slojevima iznad vrhova. Iz 8 2 povr sine Zemlje ( 5.1 10 km ) slijedi da je ukupan broj takvih to caka pribli zno 9 jednak 5 10 .

Nadalje, klimu simuliramo u vremenskim trenucima s razmakom 1 minute. Za svaki vremenski trenutak i svaku prostornu to cku moramo pamtiti 6 vrijednosti koje opisuju stanje klime. Uzmimo da je svaka od njih realan broj koji se prikazuje s 4 byte-a. Onda je za pam cenje svih vrijednosti u jednom trenutku potrebno 6 4 5 109 1011 B = 0.1 TB memorije.

Simulacija klime napreduje po vremenu, tj. klima u sljede cem trenutku se ra cuna iz stanja klime u nekoliko prethodnih trenutaka. Standardno se stanje klime u odredenoj prostornoj to cki ra cuna iz stanja u nekoliko susjednih to caka. Pretpostavimo da nam za taj prora cun treba samo 100 osnovnih aritmeti ckih operacija (opova) po svakoj to cki, sto ukupno daje 100 5 109 = 5 1011 opova. Jasno je da za predvidanje vremena za sljede cu minutu ne smijemo potro siti vi se od 1 minute vremena rada ra cunala (ina ce je br ze i jeftinije pogledati kroz prozor). Dakle, ra cunalo mora imati brzinu od najmanje 5 1011 opova/60 sekundi 8 109 opsa = 8 Gopsa,

1. MOGUCNOSTI DANASNJIH RACUNALA

DANASNJA RACUNALA 5

tj. preko 8 milijardi aritmeti ckih operacija u sekundi. Ako zelimo dobiti globalnu prognozu vremena za samo 1 dan unaprijed, uz dozvoljeno vrijeme ra cunanja od 2 sata (tako da ostane jo s 22 sata vrijednosti te prognoze), ra cunalo mora biti jo s barem 12 puta br ze, tj. brzina mora biti barem 100 Gopsa ili 0.1 Topsa.

2. GRESKE

GRESKE 6

2. Gre ske
2.1. Ra cunalo je izbacilo . . . Ne ce mi prihvatiti!

Koliko ste puta ove dvije re cenice culi na TV-u, u banci ili negdje drugdje? U oba slu caja, ra cunalo je personicirano kao nadnaravno sposobna osoba, koja je u prvom slu caju bezgre sna, a u drugom odbija ne sto u ciniti! Treba li takvim tu zbalicama vjerovati? I tko je krivac? Ra cunalo ili ljudi koji su mu naredili da se upravo tako pona sa? Istina je da smo u 2001. godini, ali va se ra cunalo nije (svojeglavi) HAL 9000 iz knjige ili lma 2001. odiseja u svemiru (a i njemu su ljudi pomogli da postane ubojica). Navedene dvije re cenice naj ce s ce su samo jadno pokri ce ne cije nesposobnosti. Slu zbeniku za salterom u banci vjerojatno treba oprostiti, jer on samo izra zava svoju bespomo cnost, a pravi krivac je negdje daleko. Puno je opasnije kad cujete Ra cunalo je izbacilo . . . od strane in zenjera i znanstvenika kao glavno opravdanje budu cih va znih projekata. Tad nas hvata strah! Za sto? Sama re cenica pokazuje da dobivene rezultate nitko nije pogledao, nego da im se slijepo vjeruje. A oni mogu biti pogre sni iz razno-raznih razloga, a naj ce s ci krivac nije ra cunalo. Iz osobnog iskustva znamo da je provjera dobivenih rezultata najbolnija to cka nastave numerike, u koju je slu sa ce najte ze uvjeriti. Metode je manje-vi se lako nau citi. U praksi, brojevi uvijek imaju neko zna cenje, izvora gre saka je puno javljaju se na svakom koraku, a analiza gre saka u rezultatima katkad je vrlo sosticirana. Slijepo vjerovanje rezultatima mo ze biti pogibeljno. Izvori gre saka su: model, metoda za rje savanje modela, ulazni podaci (mjerenja), aritmetika ra cunala.

Sve cetiri vrste gre saka lako je razumjeti. Medutim, za posljednju, vrlo je te sko vjerovati da ona mo ze biti toliko zna cajna dominantna u odnosu na ostale, tako da je rezultat zbog nje besmislen.

2. GRESKE

GRESKE 7

No, ipak treba priznati da i ra cunala, iznimno rijetko, ali ipak grije se. Koliko je nama poznato, u novija vremena poznata je samo gre ska dijeljenja u jednoj seriji Pentium procesora (1994. godine).

2.2.

Mjere za gre sku

Prije detaljnijeg opisa pojedinih vrsta ili uzroka gre saka, moramo preciznije re ci sto je gre ska i kako se ona uobi cajeno mjeri. Neka je x neki realni broj, kojeg smatramo to cnim. Ako je x neka njegova aproksimacija ili pribli zna vrijednost, onda gre sku te aproksimacije deniramo kao gre ska = E (x, x) := x x, tako da je x = x + gre ska. Ovako denirana gre ska ima predznak i mo ze biti negativna. U praksi nam, obi cno, predznak nije bitan kad govorimo o to cnosti ove aproksimacije. Najkorisnije mjere za to cnost ili gre sku aproksimacije x za x su: apsolutna gre ska Eabs (x, x) := |x x|,

koja mjeri stvarnu udaljenost (u smislu metrike na R) brojeva x i x, i relativna gre ska, denirana za x = 0, Erel (x, x) := |x x | , |x|

koja mjeri relativnu to cnost obzirom na veli cinu broja x, na primjer, u smislu podudaranja prednjih dijelova, tj. odredenog broja vode cih znamenki brojeva x i x. Ako aproksimaciju prika zemo u obliku x = x(1 + ), onda dobivamo ekvivalentnu deniciju relativne gre ske u obliku Erel (x, x) := ||. Ba s ovaj oblik se cesto koristi u analizi gre saka aritmetike ra cunala. Ako zelimo da relativna gre ska ima predznak, mo zemo ispustiti apsolutne vrijednosti iz denicije. Na isti na cin mo zemo denirati i gre ske za kompleksne brojeve. Za teorijske potrebe to bi bilo dovoljno. Medutim, kao sto cemo vidjeti, kompleksne brojeve u ra cunalu prikazujemo kao par realnih brojeva, tj. kao vektor s dvije realne komponente. Za mjerenje gre saka u vektorima i matricama, umjesto apsolutne vrijednosti, koristimo pojam norme, kojeg opisujemo u sljede cem poglavlju.

2. GRESKE

GRESKE 8

2.3.

Gre ske modela

Naj ce s ce gre ske modela nastaju zanemarivanjem utjecaja nekih sila (na primjer, zanemarivanje utjecaja otpora zraka). Jednako tako, da bi se dobilo nekakvo rje senje, barem pribli zno, cesto se komplicirani model zamjenjuje jednostavnijim (na primjer, sistemi nelinearnih parcijalnih diferencijalnih jednad zbi se lineariziraju). Takoder, pogre ske u modelu mogu nastati kod upotrebe modela u grani cnim slu cajevima. Na primjer, kod matemati ckog njihala se sin x aproksimira s x, sto vrijedi samo za male kuteve, a upotrebljava se, recimo, za kut od 15 . Primjer 2.3.1. Medu prvim primjenama trenutno jednog od najbr zih ra cunala na svijetu bilo je odredivanje trodimenzionalne strukture i elektronskog stanja ugljik-36 fulerena (engl. carbon-36 fullerene) jednog od najmanjih, ali i najstabilnijih clanova iz redova jedne vrste spojeva (engl. buckminsterfullerene). Primjena tog spoja mo ze biti vi sestruka, od supravodljivosti na visokim temperaturama do preciznog doziranja lijekova u stanice raka. Prija snja istra zivanja kvantnih kemi cara dala su dvije mogu ce strukture tog spoja. Eksperimentalna mjerenja pokazivala su da bi jedna struktura trebala biti stabilnija, a teoreti cari su tvrdili da bi to trebala biti druga struktura. Naravno, te dvije strukture imaju razli cita kemijska svojstva. Prija snja ra cunanja, zbog pojednostavljivanja i interpolacije, kao odgovor davala su prednost teoretskoj strukturi. Denitivan odgovor, koji je proveden ra cananjem bez pojednostavljivanja pokazao je da je prva struktura stabilnija. Svakako, treba istaknuti da su pogre ske modela neuklonjive, ali zato je na in zenjerima korisnicima da procijene da li se primjenom danog modela dobivaju o cekivani rezultati.

2.4.

Gre ske u ulaznim podacima

Gre ske u ulaznim podacima javljaju se zbog nemogu cnosti ili besmislenosti to cnog mjerenja. Na primjer, tjelesna temperatura se obi cno mjeri na desetinku stupnja Celziusa to cno pacijentu je jednako lo se ako ima tjelesnu temperaturu 39.5 ili 39.513462. Naravno, kao sto cemo to kasnije vidjeti, osim tih malih pogre saka nastalih mjerenjem, dodatne gre ske nastaju spremanjem tih brojeva u ra cunalo. Vezano uz pogre ske u ulaznim podacima, cesto se javlja pojam nestabilnog ili lo se uvjetovanog problema. U praksi se vrlo cesto javljaju takvi problemi kod kojih mala perturbacija po cetnih podataka dovodi do velike promjene u rezultatu. Kao ilustraciju mo zemo uzeti sljede ci primjer.

2. GRESKE

GRESKE 9

Primjer 2.4.1. Zadana su dva sistema linearnih jednad zbi 2 x + 6y = 8 2x + 6.0001y = 8.0001, i 2 x + 6y = 8 2x + 5.99999y = 8.00002. (2.4.1)

(2.4.2)

Na prvi pogled, malom perturbacijom koecijenata jednad zbe (2.4.1) dobivamo jednad zbu (2.4.2). Takva perturbacija mogla bi nastupiti, na primjer, malo pogre sno izmjerenim po cetnim podacima ili gre skom koja je nastala u ra cunu koecijenata. o Sto cekujemo? O cekujemo da ce i rje senje drugog problema biti malo perturbirano rje senje prvog problema. Ali nije tako! Rje senje prvog problema je x = 1, y = 1, a drugog x = 10, y = 2! Za sto? U analizi ce nam pomo ci crtanje odgovaraju cih pravaca i njihovih sjeci sta.
y y

Ali na prethodnim slikama nacrtan je samo po jedan pravac! Pogre sno! Ako malo bolje pogledamo koecijente u oba sistema jednad zbi, vidimo da se u oba slu caja radi o dva pravca koja su gotovo jednaka! Sad nije niti cudo da mala perturbacija koecijenata pravca bitno udaljava presjeci ste.

2.5.

Gre ske metoda za rje savanje problema

Gre ske metoda za rje savanje problema cesto nastaju kad se beskona cni procesi moraju zaustaviti u kona cnosti. To vrijedi za sve objekte koji su denirani limesom poput derivacija i integrala, i za sve postupke u kojima se pravo rje senje dobiva na limesu konvergencijom niza pribli znih rje senja prema pravom. Velik broj numeri ckih metoda za aproksimaciju funkcija i rje savanje jednad zbi upravo je tog oblika. Gre ske koja nastaju zamjenom beskona cnog ne cim kona cnim, obi cno dijelimo u dvije kategorije: gre ske diskretizacije (engl. discretization errors), koje nastaju zamjenom kontinuuma kona cnim diskretnim skupom to caka, ili beskona cno malu veli cinu h ili 0 zamijenjujemo nekim kona cno malim brojem;

2. GRESKE

GRESKE 10

gre ske odbacivanja (engl. truncation errors), koje nastaju rezanjem beskona cnog niza ili reda na kona cni niz ili sumu, tj. odbacujemo ostatak niza ili reda. Grubo re ceno, diskretizacija je vezana za kontinuum, a odbacivanje za diskretnu beskona cnost, poput razlike izmedu skupova R i N. Pojam diskretizacije smo ve c susreli u problemu prognoze vremena. Jo s jednostavniji, tipi cni primjer gre ske diskretizacije je aproksimacija funkcije f na intervalu (segmentu) [a, b], vrijednostima te funkcije na kona cnom skupu to caka (tzv. mre zi) {x1 , . . . , xn } [a, b], o cemu ce jo s biti mnogo rije ci. Drugi klasi cni primjer je aproksimacija derivacije funkcije f u nekoj to cki x. Po deniciji je f (x + h) f (x) , f (x) = lim h0 h a za pribli znu vrijednost uzmemo neki dovoljno mali h = 0 i izra cunamo kvocijent f (x) f f (x + h) f (x) = . x h

Postoje i bolje aproksimacije za f (x), ali o tome kasnije. Uskoro cemo vidjeti da s ovom vrstom aproksimacija limesa treba vrlo oprezno postupati u aritmetici ra cunala. Pogledajmo malo i gre ske odbacivanja. Na primjer, beskona cna suma se mora zamijeniti kona cnom, da bi se uop ce mogla izra cunati u kona cnom vremenu. Primjer 2.5.1. Funkcije ex i sin x imaju Taylorove redove oko to cke 0 koji konvergiraju za proizvoljan x R. Zbrajanjem dovoljno mnogo clanova tih redova, mo zemo, barem u principu, dobro aproksimirati vrijednosti funkcija ex i sin x. Ako to napravimo ra cunalom, rezultat ce biti zanimljiv. Gre ska metode (tj. gre ska odbacivanja) lako se ra cuna. Za dovoljno glatku funkciju f , Taylorov red mo zemo aproksimirati Taylorovim polinomom f (x) = f (k) (0) k x + Rn+1 (x), k! k =0
n

Rn+1 (x) =

f (n+1) ( ) n+1 x , (n + 1)!

pri cemu je neki broj izmedu 0 i x. Tra zeni Taylorovi polinomi s istim brojem clanova (ali ne istog stupnja) su ex Nadimo gre sku. Vrijedi (ex )(n) = ex , (sin x)(n) = sin x + n , 2 xk , k =0 k !
n

sin x

(1)k x2k+1 . k =0 (2k + 1)!

2. GRESKE

GRESKE 11

pa su pripadne gre ske odbacivanja Rn+1 (x) = e xn+1 , (n + 1)! R2n+3 (x) =
+3 )x2n+3 sin( + 2n2 , (2n + 3)!

Radi jednostavnosti, pretpostavimo da je x > 0. Iz x dobivamo ocjene ex xn+1 |Rn+1 (x)| , (n + 1)!
+3 )x2n+3 sin( + 2n2 x2n+3 |R2n+3 (x)| = . (2n + 3)! (2n + 3)!

Zbrojimo li clanove reda sve dok ne padne ispod zadane to cnosti > 0, jednaku ex , ,

apsolutna vrijednost prvog odba cenog clana napravili smo gre sku odbacivanja manju ili za ex , za sin x. (2.5.1)

Izra cunajmo sin(15 ), e15 , sin(25 ) i e25 kori stenjem Taylorovog reda oko 0 u najve coj direktno podr zanoj preciznosti (tzv. extended preciznosti). Primjer je izabran tako da je sin(15 ) = sin(25 ) = 0, dok su druga dva broja vrlo velika. Prema (2.5.1), gre ska metode za ra cunanje je u slu caju funkcije ex relativno mala, a u slu caju funkcije sin x, mala po apsolutnoj vrijednosti. Izaberemo li = 1017 , dobivamo (napisano je samo prvih par znamenki rezultata) sin(15 )funkcija = 9.3241 1018 sin(15 )Taylor = 2.8980 101 |gre ska odbacivanja| 2.7310 1019 relativna gre ska = 3.1081 1016 |maksimalni clan| = 1.6969 1019 sin(25 )funkcija = sin(25 )Taylor = |gre ska odbacivanja| relativna gre ska = |maksimalni clan| = 1.6697 1017 3.0613 1013 5.8309 1019 1.8334 1030 5.7605 1032 exp(15 )funkcija = exp(15 )Taylor = |gre ska odbacivanja| relativna gre ska = |maksimalni clan| = exp(25 )funkcija = exp(25 )Taylor = |gre ska odbacivanja| relativna gre ska = |maksimalni clan| = 2.9218 1020 2.9218 1020 2.7600 102 1.4238 1018 1.6969 1019 1.2865 1034 1.2865 1034 2.3782 1016 7.0013 1019 5.7943 1032 .

Ako smo rezultat zbrajanja Taylorovog reda za sin(15 ) spremni prihvatiti kao se, zapravo, pribli zno to can, sigurno nije istina da je sin(25 ) 3 1013 . Sto dogodilo? Obja snjenje le zi u aritmetici ra cunala.

2. GRESKE

GRESKE 12

2.6.

Gre ske aritmetike ra cunala

U ra cunalu postoje dva bitno razli cita tipa brojeva: cijeli brojevi i realni brojevi. Oba skupa su kona cni podskupovi odgovaraju cih skupova Z i R u matematici. Kao baza za prikaz oba tipa koristi se baza 2. Cijeli se brojevi prikazaju kori stenjem n bitova binarnih znamenki, od kojih jedna slu zi za predznak, a ostalih n 1 za znamenke broja. Matemati cki gledano, aritmetika cijelih brojeva u ra cunalu je modularna aritmetika u prstenu ostataka modulo 2n , samo je sistem ostataka simetri can oko 0, tj. 2n1 , . . . , 1, 0, 1, . . . , 2n1 1. Brojeve izvan tog raspona uop ce ne mo zemo spremiti u ra cunalo. Realni brojevi r prikazuju se kori stenjem mantise m i eksponenta e u obliku r = m 2e , pri cemu je e cijeli broj u odredenom rasponu, a m racionalni broj za koji vrijedi 1/2 m < 1 (tj. mantisa zapo cinje s 0.1 . . .). Cesto se i ta vode ca jedinica ne pamti, jer se zna da su brojevi normalizirani, pa se mantisa umjetno mo ze produljiti za taj jedan bit. Taj bit se katkad zove skriveni bit (engl. hidden bit). Za r = 0, mantisa je 0. U ra cunalu se eksponent prikazuje kao s-bitni cijeli broj, a za mantisu pamti se prvih t znamenki iza binarne to cke.
mantisa m1 m2 mt eksponent es2 es3 e0

Dakle, skup svih realnih brojeva prikazivih u ra cunalu je omeden, a mo zemo ga parametrizirati duljinom mantise i eksponenta i ozna citi s R(t, s). Primijetite da se ne mo ze svaki realni broj egzaktno spremiti u ra cunalo. Pretpostavimo da je broj x R unutar prikazivog raspona i

x=

bk 2k 2e .

k =1

Ako mantisa broja ima vi se od t znamenki, bit ce spremljena aproksimacija tog broja f (x) R(t, s) koja se mo ze prikazati kao
t

f (x) =

k b 2e . k 2

k =1

Sli cno kao kod decimalne aritmetike (kad je prva odba cena znamenka 4 zaokru zujemo nadolje, ina ce nagore), ako je prva odba cena znamenka 1, broj zaokru zujemo

2. GRESKE

GRESKE 13

nagore, a ako je 0 nadolje. Time smo napravili apsolutnu gre sku manju ili jednaku 2t1+e . Gledaju ci relativno, gre ska je manja ili jednaka 2t1+e x f (x) 1 e = 2t , x 2 2

tj. imamo vrlo malu relativnu gre sku. Veli cinu 2t zovemo jedini cna gre ska zaokru zivanja (engl. unit roundo) i uobi cajeno ozna cavamo s u. Dakle, ako je x R unutar raspona brojeva prikazivih u ra cunalu, onda se umjesto x sprema zaokru zeni broj f (x) R(t, s) i vrijedi f (x) = (1 + )x, || u, (2.6.1) gdje je relativna gre ska napravljena tim zaokru zivanjem. Ovakav prikaz realnih brojeva u ra cunalu zove se prikaz s pomi cnim zarezom ili to ckom (engl. oating point representation), a pripadna aritmetika je aritmetika pomi cnog zareza ili to cke (engl. oating point arithmetic). Da bismo stekli osje caj o veli cinama o kojim govorimo, napi simo s i t i veli cine koje se iz njih izvode za standardne tipove realnih brojeva u ra cunalu: duljina duljina mantise duljina eksponenta jedini cna gre ska zaokru zivanja u raspon prikazivih brojeva single 32 bita 23 + 1 bit 8 bitova 224 5.96 108 1038 double 64 bita 52 + 1 bit 11 bitova 253 1.11 1016 10308 extended 80 bitova 64 bita 15 bitova 264 5.42 1020 104932

Za sva tri tipa u ukupnoj duljini rezerviran je jo s jedan bit za predznak. Kod tipova single i double dodatni bit u duljini mantise je tzv. sakriveni bit (engl. hidden bit), jer je prvi znak iza binarne to cke uvijek 1, pa se ne mora pamtiti. To je dogovoreni IEEE standard u kojem je propisano, ne samo kako se brojevi prikazuju u ra cunalu, nego i svojstva aritmetike. Budimo po steni, taj standard je ne sto slo zeniji nego sto smo to ovdje opisali. Medutim, ti dodatni detalji, poput posebnih prikaza za i rezultat nedozvoljene operacije (engl. NaN, Not-a-Number), ili za stitne znamenke (engl. guard digit) u aritmetici, nepotrebno zamagljuju bitno. Osnovna pretpostavka ovog standarda je da za osnovne aritmeti cke operacije ( ozna cava +, , , /) nad x, y R(t, s) vrijedi f (x y ) = (1 + ) (x y ), || u, (2.6.2) za sve x, y R(t, s) za koje je x y u dozvoljenom rasponu. Naravno, dobiveni rezultat je tada prikaziv, tj. vrijedi f (x y ) R(t, s). U protivnom, postoje rezervirani eksponenti koji ozna cavaju posebno stanje (overow, underow, dijeljenje s 0 i nedozvoljenu operaciju kao sto su 0/0, 1).

2. GRESKE

GRESKE 14

Oznaka f ( ) sad ima zna cenje rezultata dobivenog ra cunalom za operaciju x y . Ovaj model ka ze da je izra cunata vrijednost za x y jednako dobra kao i zaokru zen egzaktni rezultat, u smislu da je u oba slu caja jednaka ocjena relativne gre ske. Model, medutim, ne zahtijeva da za egzaktno prikazivi egzaktni rezultat x y R(t, s) mora vrijediti da je gre ska = 0, tj. x y R(t, s) = / f (x y ) = x y. U tom smislu, kori stenje oznake f (x y ) za izra cunati rezultat nije sasvim korektno, jer to ne mora biti zaokru zeni egzaktni rezultat. Preciznije bi bilo uvesti posebne oznake , , i za strojne aritmeti cke operacije i analizirati njihova svojstva. Takve analize postoje, ali su izuzetno komplicirane, jer ve cina standardnih svojstava aritmeti ckih operacija, poput asocijativnosti zbrajanja ili distributivnosti mno zenja prema zbrajanju, ne vrijedi za aritmetiku realnih brojeva u ra cunalu. Mo ze se pokazati da vrijede neka bitno slo zenija zamjenska svojstva. Medutim, njih je nemogu ce prakti cno iskoristiti za analizu ukupnih gre saka ra cunanja u bilo kojem algoritmu s iole ve cim brojem aritmeti ckih operacija. Upravo zbog toga, standard za aritmetiku ra cunala propisuje samo da mora vrijediti relacija (2.6.2), a ne neka druga slo zenija svojstva. Vidimo da gre ska svake pojedine aritmeti cke operacije i njena ocjena u (2.6.2) imaju isti oblik kao i gre ska zaokru zivanja za prikaz brojeva u ra cunalu i njena ocjena iz (2.6.1). Zato obje vrste gre saka (gre ske prikaza i gre ske aritmetike) zajedni ckim imenom zovemo gre skama zaokru zivanja (engl. rounding errors). Objasnimo jo s to cno zna cenje oznake f ( ). Jednostavno, f (izraz) ozna cava izra cunatu vrijednost tog izraza u oating point aritmetici. U skladu s tim, ako se izraz sastoji samo od jednog broja x, onda se ra cunanje vrijednosti tog izraza x svodi na zaokru zivanje i spremanje u oating point prikazu, a f (x) ozna cava spremljenu izra cunatu, tj. zaokru zenu vrijednost. Analogno, f (x y ) sad korektno ozna cava izra cunati rezultat operacije x y . Takva interpretacija znatno olak sava zapis u analizi gre saka zaokru zivanja.

2.7.

Propagiranje gre saka u aritmeti ckim operacijama

Desnu stranu relacije (2.6.2) mo zemo interpretirati i kao egzaktno izvedenu operaciju na malo perturbiranim podacima. Koje su operacije opasne ako nam je aritmetika egzaktna, a podaci malo perturbirani, tj. ako je |x |, |y | u? Ako je mno zenje, imamo x (1 + x ) y (1 + y ) xy (1 + x + y ) := xy (1 + ), | | 2u.

2. GRESKE

GRESKE 15

Ako imamo dijeljenje, vrijedi sli cno x (1 + x ) x x (1 + x ) (1 y ) := (1 + / ), y (1 + y ) y y |/ | 2u. xx + yy , x+y

Neka su x i y proizvoljnog predznaka. Za zbrajanje (oduzimanje) vrijedi: x (1 + x ) + y (1 + y ) = x + y + xx + yy := (x + y ) 1 + uz pretpostavku da x + y = 0. Deniramo := xx + yy x y = x + y . x+y x+y x+y

Ako su x i y brojevi istog predznaka, onda je y x , 1, x+y x+y (2.7.1)

pa je | | 2u. U suprotnom, ako x i y imaju razli cite predznake, kvocijenti u (2.7.1) mogu biti proizvoljno veliki kad je |x + y | |x|, |y |.

Mo zemo zaklju citi da opasnost nastupa ako je rezultat zbrajanja brojeva suprotnog predznaka broj koji je po apsolutnoj vrijednosti mnogo manji od polaznih podataka. Dakle, cak i kad bi aritmetika ra cunala bila egzaktna, zbog po cetnog zaokru zivanja, rezultat mo ze biti (i naj ce s ce je) pogre san. Poka zimo to na jednostavnom primjeru ra cunala u bazi 10. Pretpostavimo da je mantisa duga 4 dekadske znamenke, a eksponent dvije. Neka je x = 0.88866 = 0.88866 100 , f (x) = 0.8887 100 , y = 0.88844 = 0.88844 100 . f (y ) = 0.8884 100

Umjesto brojeva x i y , spremili smo najbli ze prikazive, tj.

i napravili malu relativnu gre sku. Budu ci da su im eksponenti jednaki, mo zemo oduzeti znamenku po znamenku mantise, a zatim normalizirati i dobiti f (x) f (y ) = 0.8887 100 0.8884 100 = 0.0003 100 = 0.3??? 103 , pri cemu upitnici predstavljaju znamenke koje vi se ne mo zemo restaurirati, pa ra cunalo na ta mjesta upisuje 0. Primijetimo da je pravi rezultat 0.22 103, pa je ve c prva zna cajna znamenka pogre sna, a relativna gre ska velika! Iako je sama operacija oduzimanja bila egzaktna za f (x) i f (y ), rezultat je pogre san. Na prvi pogled cini nam se da znamo bar red veli cine rezultata i da to nije tako stra sno. Prava katastrofa nastupa ako 0.3??? 103 ude u naredna zbrajanja i oduzimanja i ako se pritom skrati i ta trojka. Tada nemamo nikakve kontrole nad rezultatom.

2. GRESKE

GRESKE 16

Primjer 2.7.1. Obja snjenje pogre snih rezultata iz primjera 2.5.1. sad je sasvim jednostavno. Pogledamo li po apsolutnoj vrijednosti najve ce brojeve koji se javljaju u ra cunu, ustanovljavamo da su oni golemi. Za sin x, rezultat je malen broj koji je dobiven oduzimanjem velikih brojeva, pa je neto can. Nasuprot tome, kod funkcije ex , uvijek imamo zbrajanje brojeva istog predznaka, pa je rezultat to can. Primjer cesto javlja potreba za izra cunavanjem vrijedosti 2.7.2. U algoritmima se y = x + x uz | | x, x > 0. Da bismo izbjegli katastrofalno kra cenje, y se nikad ne ra cuna po napisanoj formuli. Uvijek se pribjegava deracionalizaciji, tj. x++ x y = ( x + x) = . x++ x x++ x Uo cite da je opasno oduzimanje zamijenjeno benignim dijeljenjem i zbrajanjem. Primjer 2.7.3. Zbrajanje brojeva ra cunalom nije asocijativno. Izra cunajmo
10000

S1 =
i=1

1 , i

S2 =

1 i=10000 i

u tri to cnosti. Dobiveni rezultati su: single S1 9.78761291503906250 S2 9.78760433197021484 double 9.78760603604434465 9.78760603604438550 extended 9.78760603604438230 9.78760603604438227

Primijetite da ne sto to cniji rezultat daje zbrajanje S2 . Objasnite. Primjer 2.7.4. Niti poredak operacija ne mora biti bezna cajan. Zadan je linearni sustav 0.0001 x1 + x2 = 1 x1 + x2 = 2. 1 , x2 = Matrica sustava je regularna, pa postoji jedinstveno rje senje x1 = 1.000 8 . Rje 0.999 savamo li taj sustav ra cunalom koje ima 4 decimalne znamenke mantise i 2 znamenke eksponenta, onda njegovo rje senje ovisi o poretku jednad zbi. Sustav zapisan u takvom ra cunalu pamti se kao 0.1000 103 x1 + 0.1000 101 x2 = 0.1000 101 0.1000 101 x1 + 0.1000 101 x2 = 0.2000 101 . (2.7.2)

Prvo, rije simo sustav (2.7.2) Gaussovim eliminacijama. Mno zenjem prve jed4 nad zbe s 10 i oduzimanjem od druge, dobivamo drugu jednad zbu oblika: (0.1000 101 0.1000 105 ) x2 = 0.2000 101 0.1000 105 . (2.7.3)

2. GRESKE

GRESKE 17

Da bi ra cunalo moglo oduzeti odgovaraju ce brojeve, manji eksponent mora postati jednak ve cem, a mantisa se denormalizira. Dobivamo 0.1000 101 = 0.0100 102 = 0.0010 103 = 0.0001 104 = 0.0000|1 105 , ali za zadnju jedinicu nema mjesta u mantisi, pa je mantisa postala 0. Sli cno je i s desnom stranom. Zbog toga jednad zba (2.7.3) postaje 0.1000 105 x2 = 0.1000 105, pa joj je rje senje x2 = 0.1000 101 . Uvr stavanjem u prvu jednad zbu, dobivamo: 0.1000 103 x1 = 0.1000 101 0.1000 101 + 0.1000 101 = 0.0000, pa je x1 = 0, sto nije niti pribli zno to can rezultat. Promijenimo li poredak jednad zbi u (2.7.2), dobivamo 0.1000 101 x1 + 0.1000 101 x2 = 0.2000 101 0.1000 103 x1 + 0.1000 101 x2 = 0.1000 101 . (2.7.4)

Mno zenjem prve jednad zbe s 104 i oduzimanjem od druge, dobivamo drugu jednad zbu oblika (0.1000 101 0.1000 103 ) x2 = 0.1000 101 0.2000 103 , (2.7.5)

pa se (2.7.5) svede na 0.1000101 x2 = 0.1000101, tj. x2 = 0.1000101. Uvr stavanjem u prvu jednad zbu u (2.7.4) dobivamo 0.1000 101 x1 = 0.2000 101 0.1000 101 0.1000 101 = 0.1000 101 , pa je x1 = 0.1000 101 , sto to can rezultat korektno zaokru zen na cetiri decimalne znamenke. Primjer 2.7.5. Poznato je da studenti kad ne znaju izra cunati limese, pose zu za kalkulatorom i poku savaju ih heuristi cki izra cunati, tako da se pribli zavaju granici. Pretpostavimo da imaju program koji u extended to cnosti ra cuna sljede ce limese: 1 cos x 1 = , 2 x 0 x 2 lim x2 = 2. x0 1 cos x lim

Mo ze li se unaprijed re ci sto ce se dogadati s rezultatima ako stavljamo x-eve redom

2. GRESKE

GRESKE 18

101 , 102, . . . , 1010 ? Objasnite dobivene rezultate. x 10 10 10 10 10


01

prvi limes 0.4995834722 0.4999958333 0.4999999583 0.4999999996 0.5000000002 0.4999999980 0.5000015159 0.4998172015 0.4336808690 0.0000000000

drugi limes 2.001667500 2.000016667 2.000000167 2.000000002 1.999999999 2.000000008 1.999993936 2.000731461 2.305843009

1002
03

1004
05

1006
07

1008
09

1010

2.8.

Primjeri iz zivota

Primjeri koje smo naveli u prethodnom odjeljku su pravi, skolski. Na zalost, postoje primjeri kad su zbog gre saka zaokru zivanja stradali ljudi ili je po cinjena velika materijalna steta. Primjer 2.8.1. (Proma saj raketa Patriot.) U Zaljevskom ratu, 25. velja ce 1991. godine, Patriot rakete iznad Dhahrana u Saudijskoj Arabiji nisu uspjele prona ci i oboriti ira cku Scud raketu. Projektil je (pukim slu cajem) pao na ameri cku vojnu bazu usmrtiv si 28 i raniv si stotinjak ljudi. Izvje staj o katastro godinu dana poslije, rasvijetlio je okolnosti nesre ce. U ra cunalu koje je upravljalo Patriot raketama, vrijeme se brojilo u desetinkama sekunde proteklim od trenutka kad je ra cunalo upaljeno. Kad desetinku prika zemo u binarnom prikazu, dobivamo 1) 2. 0.110 = (0.0001 Realne brojeve u tom ra cunalu prikazivali su kori stenjem nenormalizirane mantise duljine 23 bita. Spremanjem 0.1 u registar Patriot ra cunala, napravljena je (apsolutna) gre ska pribli zno jednaka 9.5 108 . Zbog stalne opasnosti od napada Scud raketama, ra cunalo je bilo u pogonu 100 sati, sto je 100 60 60 10 desetinki sekunde. Ukupna gre ska nastala gre skom zaokru zivanja je 100 60 60 10 9.5 108 = 0.34 s.

2. GRESKE

GRESKE 19

Ako je poznato da Scud putuje brzinom 1676 m/s na predvidenoj visini susreta, onda su ga rakete Patriot poku sale na ci vi se od pola kilometra daleko od njegovog stvarnog polo zaja. Koje je precizno obja snjenje uzroka ove katastrofe? Stvarni uzrok je nedovoljno pa zljivo, mudro ili hackersko pisanje programa. Patriot sustav prati cilj tako da mjeri vrijeme potrebno radarskim signalima da se odbiju od cilja i vrate natrag. To cnost podataka o vremenu je, naravno, klju cna za precizno uni stenje cilja. Ra cunalo koje je upravljalo Patriot raketama bazirano je na konstrukciji iz 1970-ih godina i koristi 24-bitnu aritmetiku. Medutim, realizacija oating point aritmetike u ta davna vremena bila je mnogo sporija od cjelobrojne, posebno za mno zenje i dijeljenje. Zbog toga se u programima cesto koristila kombinacija cjelobrojne (tzv. xed point) aritmetike i oating point aritmetike, da se ubrzaju te dvije operacije. Tako je sistemski sat mjerio vrijeme u desetinkama sekunde, ali se vrijeme spremalo kao cijeli broj desetinki proteklih od trenutka kad je ra cunalo upaljeno. Za sve ostale prora cune, vrijeme se ra cuna tako da se pomno zi broj desetinki n s osnovnom jedinicom t0 = 0.1 s u kvazi-cjelobrojnoj aritmetici, a zatim pretvori u pravi 24-bitni oating point broj. Kvazi-cjelobrojni ili xed point prikaz realnog broja odgovara prikazu cijelih brojeva, s tim da se uzima da je binarna to cka ispred prve prikazane znamenke. Preciznije re ceno, ako imamo 24 bita za takav prikaz, realni broj se interpretira kao vi sekratnik od 223 , a prikaz se dobiva zaokru zivanjem vi sekratnika na cijeli broj i to odbacivanjem racionalnog dijela (u smjeru nule). Dakle, za realni broj r 0 pamti se cijeli broj r 223 , a za negativni r pamti se |r | 223 . Naravno, tako se mogu prikazati samo realni brojevi iz [1, 1), ina ce imamo premalo bitova.

Za analizu gre saka, ignorirajmo da se stvarno sprema cijeli broj, i pogledajmo kojoj aproksimaciji za r odgovara taj spremljeni broj. Neka fi (r ) ozna cava tu aproksimaciju za r , u smislu da je spremljeni prikaz od r , zapravo, egzaktni prikaz broja fi (r ). Taj broj mo zemo jednostavno dobiti tako da spremljene bitove interpretiramo kao prikaz s nenormaliziranom mantisom od 23 bita, jer se pamte redom znamenke iza binarne to cke, a eksponenta nema, tj. jednak je 0. Dakle, za r [1, 1), broj fi (r ) ima to cno prva 23 bita od r iza binarne to cke, a ostatak zanemarujemo, zbog zaokru zivanja odbacivanjem. Za apsolutnu gre sku, o cito, vrijedi |x fi (x)| < 223 , ali relativna gre ska mo ze biti velika. Kako to izgleda za osnovnu vremensku jedinicu t0 = 0.1? Zadr zavanjem prva 23 bita iza binarne to cke i odbacivanjem ostatka u 0.1 = (0.0001 1001 1001 1001 1001 100|1 1001 . . .)2 .

2. GRESKE

GRESKE 20

dobivamo fi (0.1) = (0.0001 1001 1001 1001 1001 100)2. U cinjena (apsolutna) gre ska je |0.1 fi (0.1)| = 0.1 220 = 1 = 9.5367431640625 108 , 10485760

dok je relativna gre ska to cno 220 , ili 10 puta ve ca, sto uop ce ne izgleda stra sno. Nakon n otkucaja sistemskog sata (u desetinkama), pravo vrijeme u sekundama je t = nt0 . Umjesto toga, ra cuna se nfi (t0 ). Pretpostavimo da se to mno zenje izvodi egzaktno, bez dodatnih gre saka zaokru zivanja (kao da smo u cjelobrojnoj aritmetici). Izra cunato vrijeme je t = n fi (t0 ). Relativna gre ska ostaje ista tt = 220 , t jer se n skrati. Medutim, apsolutna gre ska je n puta ve ca |t t| = n |0.1 fi (0.1)| n (9.5 108 ). Na zalost, za to cno gadanje treba apsolutna, a ne relativna to cnost u vremenu. Za dovoljno veliki n, a nakon 100 sati je n = 3600000, dobivenom t nema spasa, cak i prije pretvaranja u oating point prikaz ( sto jo s doprinosi ukupnoj pogre sci). se moglo napraviti? Da su se ista 23 bita koristila za pravu mantisu u Sto oating point prikazu 0.1 = (0.1100 1100 1100 1100 1100 110|0 1100 . . .)2 23 , bez obzira na vrstu zaokru zivanja, dobili bismo f (0.1) = (0.1100 1100 1100 1100 1100 110)2 23 , uz to cno 24 = 16 puta manje gre ske. Na primjer, apsolutna gre ska je |0.1 f (0.1)| = 0.1 224 5.96 109 . i nakon 100 sati, posljedica ove gre Cak ske je proma saj od oko 40m, sto je (s visokom vjerojatno s cu) jo s uvijek dovoljno to cno za uni stenje Scuda. S druge strane, treba izbjegavati eksplicitno kori stenje tzv. apsolutnog vremena od trenutka uklju cenja. Puno bolje je broja c iznova postaviti na nulu u trenutku prvog radarskog kontakta, ili zapamtiti stanje cjelobrojnog broja ca u tom trenutku, a sva ostala vremena ra cunati prvo cjelobrojnim oduzimanjem stanja broja ca, pa tek onda dobivenu razliku pretvoriti u sekunde (pomno ziti bitno manji broj s t0 ). Scud ipak leti malo kra ce od 100 sati!

2. GRESKE

GRESKE 21

Zanimljivo je da je prva indikacija ove pogre ske prijavljena punih 14 dana ranije, 11. velja ce. Na jednom sustavu Patriota uo cen je pomak u tzv. prostoru udara (engl. range gate) za punih 20% nakon neprekidnog rada od 8 sati. Ti podaci pokazivali su da nakon 20 sati neprekidnog rada, sustav ne ce mo ci pratiti i presresti nadolaze ci Scud. Modicirani program koji kompenzira neto cno ra cunanje vremena slu zbeno je iza sao 16. velja ce. Medutim, u Dhahran je stigao tek 26. velja ce, dan nakon nesre ce. Ipak, cudno je da posade sustava na terenu nisu dobile barem obavijest o problemu povremeni restart sustava bio bi sasvim dovoljan za prvo vrijeme. Primjer 2.8.2. (Eksplozija Ariane 5.) Raketa Ariane 5 lansirana 4. lipnja 1995. godine iz Kouroua (Francuska Gvajana) nosila je u putanju oko Zemlje komunikacijske satelite vrijedne oko 500 milijuna USD. Samo 37 sekundi nakon lansiranja izvr sila je samouni stenje. Dva tjedna kasnije, stru cnjaci su objasnili dogadaj. Kontrolna varijabla (koja je slu zila samo informacije radi) u programu vodenja rakete mjerila je horizontalnu brzinu rakete. Gre ska je nastupila kad je program poku sao pretvoriti preveliki 64bitni realni broj u 16-bitni cijeli broj. Ra cunalo je javilo gre sku, sto je izazvalo samouni stenje. Zanimljivo je da je taj isti program bio kori sten u prija snjoj sporijoj verziji Ariane 4, pa do katastrofe nije do slo. Primjer 2.8.3. (Potonu ce naftne platforme Sleipner A.) Naftna platforma Sleipner A potonula je prilikom sidrenja, 23. kolovoza 1991. u blizini Stavangera. Baza platforme su 24 betonske celije, od kojih su 4 produljene u suplje stupove na kojima le zi paluba. Prilikom uronjavanja baze do slo je do pucanja. Ru senje je izazvalo potres ja cine 3.0 stupnja po Richterovoj ljestvici i stetu od 700 milijuna USD. Gre ska je nastala u projektiranju, primjenom standardnog paketa programa, kad je upotrijebljena metoda kona cnih elemenata s nedovoljnom to cno s cu (netko nije provjerio rezultate programa). Prora cun je dao naprezanja 47% manja od stvarnih. Nakon detaljne analize s to cnijim kona cnim elementima, izra cunato je da su celije morale popustiti na dubini od 62 metra. Stvarna dubina pucanja bila je 65 metara! Primjer 2.8.4. (Izabran je pogre san predsjednik.) Mo zda je najbizarniji primjer da gre ska zaokru zivanja mo ze poremetiti izbore za predsjednika SAD. U ameri ckom sustavu izbora predsjednika, svaka od saveznih dr zava ima odreden broj predstavnika (ljudi) u tijelu koje se zove Electoral College i koje formalno bira predsjednika. Broj predstavnika svake pojedine dr zave u tom tijelu proporcionalan je broju stanovnika te dr zave u odnosu na ukupan broj stanovnika. Pretpostavimo da u Electoral College-u ima a predstavnika, populacija SAD je p stanovnika, a dr zava i ima pi stanovnika. Broj predstavnika dr zave i u Electoral

2. GRESKE

GRESKE 22

College-u trebao bi biti ai =

pi a. p

Ali, predstavnici su ljudi, pa bi ai morao biti cijeli broj. Zbog toga se ai mora zaokru ziti na cijeli broj ai po nekom pravilu. Naravno, na kraju mora biti i ai = a. Razumno i prirodno pravilo je: ai mora biti jedan od dva cijela broja koji su najbli zi ai (tzv. uvjet kvote). Naime, pravilno zaokru zivanje (kao kod prikaza brojeva) je mo zda najpravednije, ali ne mora dati i ai = a, pa se mora upotrijebiti slabije pravilo. Medutim, broj stanovnika pi se vremenom mijenja (a time i p). Isto tako, ukupni broj predstavnika a u tijelu se mo ze promijeniti od jednih do drugih izbora. Zbog toga se dodaju jo s dva prirodna politi cka pravila: Ako se pove ca ukupan broj predstavnika a, a svi ostali podaci se ne promijene, ai ne smije opasti (tzv. monotonost predstavni ckog tijela). Ako je broj stanovnika dr zave pi porastao, a ostali podaci su nepromijenjeni, ai ne smije opasti (tzv. monotonost populacije). Svrha je jasna, jer ljudi vole usporedivati pro sle i nove kvote. Na zalost, ne postoji metoda za odredivanje broja predstavnika koja bi zadovoljavala sva tri kriterija. U ameri ckoj povijesti zaista postoji slu caj da je izabran pogre san predsjednik. Samuel J. Tilden izgubio je izbore 1876. godine u korist Rutherforda B. Hayesa, samo zbog na cina dodjele elektorskih glasova u toj prilici. Da stvar bude jo s zanimljivija, ta metoda dodjele glasova nije bila ona koju je propisivao zakon iz tog vremena. Matemati cki gledano, problem izbornih sustava i raznih pravila za ra cunanje broja predstavnika u predstavni ckim tijelima, poput Sabora, nije trivijalan, a ozbiljno se prou cava ve c stotinjak godina. Uzmimo najjednostavniji izborni sustav u kojem vrijedi samo uvjet kvote i pretpostavimo da se on primjenjuje za svake izbore posebno (tj. vremenski lokalno), uz poznate podatke o broju stanovnika pi u svim izbornim jedinicama. Kako biste sto pravednije izra cunali brojeve ai predstavnika svake jedinice?

3. VEKTORSKE I MATRICNE NORME

NORME 23

3. Vektorske i matri cne norme


3.1. Vektorske norme

Vektorske i matri cne norme osnovno su sredstvo koje koristimo kod ocjene gre saka vezanih uz numeri cke metode, posebno u numeri ckoj linearnoj algebri. Denicija 3.1.1. (Vektorska norma) Vektorska norma je svaka funkcija Cn R koja zadovoljava sljede ca svojstva: 1. x 0, x Cn , a jednakost vrijedi ako i samo ako je x = 0, 3. x + y x + y , x, y Cn . Ova je nejednakost poznatija pod imenom nejednakost trokuta (zbroj duljina bilo koje dvije stranice trokuta ve ci je od duljine tre ce stranice). Analogno se denira vektorska norma na bilo kojem vektorskom prostoru V nad poljem F = R ili C. Neka je x vektor iz Cn s komponentama xi , i = 1, . . . , n, u oznaci x = (x1 , . . . , xn )T , ili, skra ceno x = [xi ]. U numeri ckoj linearnoj algebri naj ce s ce se koriste sljede ce tri norme: 1. 1-norma ili 1 norma, u engleskom govornom podru cju poznatija kao Manhattan ili taxi-cab norma
n

2. x = || x , R, x Cn ,

=
i=1

|xi |,

2. 2-norma ili 2 norma ili euklidska norma x 3. -norma ili norma


2

= (x x)1/2 =

n i=1

|xi |2 ,

= max |xi |.
i=1,...,n

3. VEKTORSKE I MATRICNE NORME

NORME 24

Primijetite da je samo 2-norma izvedena iz skalarnog produkta, dok ostale dvije to nisu. 2-norma ima dva bitna svojstva koje je cine posebno korisnom. Ona je invarijantna na unitarne transformacije vektora x, tj. ako je Q unitarna matrica (Q Q = QQ = I ), onda je Qx
2

= (x Q Qx)1/2 = (x x)1/2 = x 2 .

Takoder ona je diferencijabilna za sve x = 0, s gradijentom x


2

x . x 2

Sve ove tri norme specijalni su slu caj H olderove p-norme (p norme) denirane s: n x
p

=
i=1

|xi |p

1/p

p 1.

Za H olderove p-norme vrijedi i poznata H olderova nejednakost |x y | x


p

y q,

1 1 + = 1. p q

Posebni slu caj H olderove nejednakosti za p = q = 2 je Cauchy-Schwarzova nejednakost |x y | x 2 y 2. Koliko se dvije p-norme medusobno razlikuju, pokazuje sljede ca nejednakost, koja se mo ze dosti ci. Neka su i dvije p norme takve da je . Tada vrijedi x

n(1/1/ ) x .

Ova se nejednakost cesto pro siruje i zapisuje tablicom x CM -ovi \ 1 2 1 1 n n 2 1 1 n 1 1 1

CM x , gdje su

Primijetite da sve p-norme ovise samo o apsolutnoj vrijednosti komponenti xi , pa je p-norma rastu ca funkcija apsolutnih vrijednosti komponenti xi . Ozna cimo s |x| vektor apsolutnih vrijednosti komponenti vektora x, tj. |x| = [|xi |]. Za vektore apsolutnih vrijednosti (u Rn ) mo zemo uvesti parcijalni uredaj relacijom |x| |y | |xi | |yi|, i = 1, . . . , n.

3. VEKTORSKE I MATRICNE NORME

NORME 25

Denicija 3.1.2. (Monotona i apsolutna norma) Norma na Cn je monotona ako vrijedi |x| |y | = x y , x, y Cn . Norma na Cn je apsolutna ako vrijedi |x| = x , x Cn .

Bauer, Stoer i Witzgall dokazali su netrivijalni teorem koji pokazuje da su ta dva svojstva ekvivelentna. Teorem 3.1.1. Norma na Cn je monotona ako i samo ako je apsolutna. Denicija vektorskih normi u sebi ne sadr zi zahtjev da je vektorski prostor iz kojeg su vektori kona cno dimenzionalan. Na primjer, norme denirane na vektorskom prostoru neprekidnih funkcija na [a, b] (u oznaci C [a, b]) deniraju se sli cno n normama na C : 1. L1 norma f 2. L2 norma f 3. L norma f 4. Lp norma
b 2 1 b

=
a

|f (t)| dt,
1/2

=
a

|f (t)|2 dt

= max{|f (x)| | x [a, b]}, |f (t)|p dt


1/p

=
a

p 1.

3.2.

Matri cne norme

Zamijenimo li u deniciji 3.1.1. vektor x Cn matricom A Cmn , dobivamo matri cnu normu. Denicija 3.2.1. (Matri cna norma) Matri cna norma je svaka funkcija Cmn R koja zadovoljava sljede ca svojstva: 1. A 0, A Cmn , a jednakost vrijedi ako i samo ako je A = 0, 2. A = || A , R, A Cmn , 3. A + B A + B , A, B Cmn . :

3. VEKTORSKE I MATRICNE NORME

NORME 26

Za matri cnu normu cemo re ci da je konzistentna ako vrijedi 4. AB A B

kad god je matri cni produkt AB deniran. Oprez, norme od A, B i AB ne moraju biti denirane na istom prostoru (dimenzije)! Neki autori smatraju da je i ovo posljednje svojstvo sastavni dio denicije matri cne norme (tada to svojstvo obi cno zovu submultiplikativnost). Ako su ispunjena samo prva tri svojstva, onda to zovu generalizirana matri cna norma. Matri cne norme mogu nastati na dva razli cita na cina. Ako matricu A promatramo kao vektor s m n elemenata, onda, direktna primjena vektorskih normi (uz oznaku aij matri cnog elementa u i-tom retku i j -tom stupcu) daje sljede ce denicije: 1. 1 norma | A |1 := A
S m n

=
i=1 j =1

|aij |,

2. 2 norma (euklidska, Frobeniusova, HilbertSchmidtova, Schurova)


m n

| A |2 := A 3. norma

= (tr(A A))1/2 =
i=1 j =1

|aij |2 ,

| A | := A

= max |aij |.
i=1,...,m j =1,...,n

tr je oznaka za trag matrice zbroj dijagonalnih elemenata matrice. Poka zimo da 1 i 2 norma zadovoljavaju svojstvo konzistentnosti, a norma ga ne zadovoljava. Vrijedi
m s n m s n n

AB

=
i=1 j =1 k =1 m n

|aik bkj |
n s

i=1 j =1 k =1 =1 S n k =1

|aik bj |
S, n

AB
2 F

i=1 k =1 m s

|aik |
n

=1 j =1 2

|bj | = A
m s

=
i=1 j =1 k =1 m n

aik bkj |aik |2

i=1 j =1 s

|aik |2
2 F

=1

|bj |2

=
i=1 k =1

=1 j =1

|bj |2 = A

2 F.

Primijetite da se u dokazu da je Frobeniusova norma konzistentna koristila CauchySchwarzova nejednakost.

3. VEKTORSKE I MATRICNE NORME

NORME 27

Poka zimo na jednom primjeru da norma ne zadovoljava svojstvo konzistentnosti. Za matrice A=B= pa je AB Ipak i od
M M

1 1 1 1 = 2,

je AB =

2 2 , 2 2 = 1.

se mo ze napraviti konzistentna norma. Deniramo li | A |=m A


M,

vrijedi
n n

| AB | = m max

i=1,...,m j =1,...,s k =1 n i=1,...,m j =1,...,s k =1

aik bkj m max A


M

i=1,...,m j =1,...,s k =1

|aik bkj |
M ) (n

m max

= (m A

M)

= | A | | B |.

S druge strane, matri cne norme mo zemo dobiti kao operatorske norme iz odgovaraju cih vektorskih kori stenjem denicije A = max
x=0

Ax (ili = max Ax ). x =1 x

(3.2.1)

Kad se uvrste odgovaraju ce vektorske norme u (3.2.1), dobivamo 1. matri cna 1-norma, maksimalna stup cana norma
m

= max

j =1,...,n

i=1

|aij |,

2. matri cna 2-norma, spektralna norma A


2

= ((A A))1/2 = max (A),

3. matri cna -norma, maksimalna ret cana norma


n

= max

i=1,...,m

j =1

|aij |,

pri cemu je oznaka za spektralni radijus kvadratne matrice (maksimalna po apsolutnoj vrijednosti svojstvena vrijednost) (B ) = max{|| | det(B I ) = 0}, (B kvadratna!), (3.2.2)

3. VEKTORSKE I MATRICNE NORME

NORME 28

a je standardna oznaka za tzv. singularnu vrijednost matrice. Detaljnu deniciju sto je to singularna vrijednost, dobit cete u poglavlju koje ce se baviti dekompozicijom singularnih vrijednosti. Matri cna 2-norma se te sko ra cuna, (trebalo bi na ci po apsolutnoj vrijednosti najve cu svojstvenu vrijednost), pa je uobi cajeno da se ona procjenjuje kori stenjem ostalih normi. Tablica ovisnosti koja vrijedi medu matri cnim normama je: A gdje su CM -ovi \ 1 2 F M S 1 1 n n n 1 n 2 m 1 n rang(A) 1 mn rang(A) F m 1 n 1 1 mn M m mn n mn 1 mn

CM A , S 1 1 1 1 1 1

m m 1 m 1 m

Posebno su va zne unitarno invarijantne norme, tj. one za koje vrijedi UAV = A , za sve unitarne matrice U i V . Dvije najpoznatije unitarno invarijantne norme su Frobeniusova i spektralna norma. Poka zimo to. Kvadrat Frobeniusove norme matrice A mo zemo promatrati kao zbroj kvadrata normi stupaca aj : A
2 F n

(3.2.3)

=
j =1

aj 2 .

S druge strane, za svaku unitarnu matricu U vrijedi Uaj


2 2 2 = a j U Uaj = aj aj = aj 2 .

Objedinimo li te relacije, dobivamo


n n

UA Kona cno, vrijedi UAV


2 F

2 F

=
j =1

Uaj

=
j =1

aj

= A

2 F.

= AV

2 F

= V A

2 F

= A

2 F

= A

2 F.

3. VEKTORSKE I MATRICNE NORME

NORME 29

Da bismo dokazali da je matri cna 2-norma unitarno ekvivalentna, potrebno je pokazati da transformacije sli cnosti cuvaju svojstvene vrijednosti matrice. Ako je S nesingularna (kvadratna) matrica, a B kvadratna, onda je matrica S 1 BS sli cna 1 matrici B . Ako je spektralna faktorizacija matrice S BS S 1 BSX = X , pri cemu je X matrica svojstvenih vektora, a svojstvenih vrijednosti. Mno zenjem sa S slijeva, dobivamo B (SX ) = (SX ), tj. matrica svojstvenih vektora je SX , dok su svojstvene vrijednosti ostale nepromijenjene. Primijetite da za unitarne matrice vrijedi V = V 1 . Za matri cnu 2-normu, onda vrijedi UAV
2

= ((V A U UAV ))1/2 = ((V A AV ))1/2 .

Budu ci da je V unitarna, A A i V A AV su unitarno ekvivalentne, pa je UAV


2

= ((A A))1/2 = A 2 .

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 30

4. Stabilnost problema i algoritama


U drugom poglavlju vidjeli smo da se gre ske javljaju na svakom koraku prilikom rje savanja realnih prakti cnih problema. Na nekoliko primjera vidjeli smo da ukupni efekti raznih gre saka mogu biti katastrofalni po kona cno rje senje. Prije opisa raznih metoda za numeri cko rje savanje odredenih vrsta problema, trebamo matemati cki formalizam i odgovaraju ci prakti cni alat za procjenu efekta ili utjecaja raznih vrsta gre saka. Pone sto od tih tehnika smo ve c koristili u prethodnim primjerima, bez posebnog formalizma. U nastavku dajemo ne sto formalniji i op cenitiji pristup analizi gre saka pri rje savanju problema.

4.1.

Jednostavni model problema

Problem P kojeg rje savamo, tipi cno ima neki ulaz i neki izlaz (sli cno algoritmu). Ulaz je neki (kona cni) skup podataka, a izlaz je opet neki (kona cni) skup podataka. U numerici uzimamo da su ti podaci brojevi. Recimo, ulaz su koecijenti neke jednad zbe, a izlaz su rje senja ili korijeni te jednad zbe u nekom dogovorenom poretku. Pretpostavimo, radi jednostavnosti, da su ulazni i izlazni podaci realni brojevi. Sli cna analiza mo ze se provesti i za druga cije podatke brojevnog tipa, ali za numeri cku praksu su upravo realni brojevi najva zniji slu caj, posebno kad uzmemo u obzir da ra cunanje provodimo aritmetikom ra cunala koja modelira realne brojeve. Kompleksni brojevi su najmanji problem, njih ionako prikazujemo parom realnih brojeva z = (Re z, Im z ). Ako preciznije pogledamo, ulaz i izlaz su uredeni kona cni nizovi podataka, a ne skupovi. Poredak podataka ima bitnu ulogu, zbog njihove prakti cne interpretacije, odnosno, stvarnog zna cenja. Na primjer, nije svejedno koji koecijent kvadratne jednad zbe dolazi uz koju potenciju. U tom smislu, ulaz mo zemo prikazati vektorom x Rm , a izlaz vektorom y Rn . Na s problem P mo zemo (pomalo algoritamski)

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 31

zamisliti kao crnu kutiju, koja prihva ca neki ulaz x i rje sava problem za taj ulaz, produciraju ci izlaz y .
x P y

sto je raNa kraju, pretpostavimo da je izlaz jednozna cno odreden ulazom, zumna pretpostavka za deterministi cke probleme. Drugim rije cima, svakom ulazu x kutija P pridru zuje jednozna cni izlaz y . Stoga, problem mo zemo zami sljati i kao preslikavanje ili funkciju f , zadanu s f : Rm Rn , y = f (x). (4.1.1)

Ono sto nas zanima je osjetljivost preslikavanja f u nekoj to cki x obzirom na male perturbacije x-a, tj. zanima nas koliko je tada velika perturbacija y -a obzirom na perturbaciju x-a. Stupanj osjetljivosti zelimo mjeriti jednim jedinim brojem uvjetovano s cu funkcije f u to cki x. Posebno, smatramo da se vrijednost funkcije f u svakoj to cki ra cuna egzaktno, u beskona cnoj to cnosti. Dakle, uvjetovanost od f je svojstvo funkcije f i ovisi samo o f , a ne ovisi o na cinu kako se f ra cuna u smislu algoritamskih razmatranja ili efekata vezanih uz implementaciju postupka za ra cunanje funkcije f . Bitno je primijetiti da to ne zna ci da poznavanje uvjetovanosti problema nema nikakav utjecaj na izbor algoritama za rje senje problema. Vrijedi upravo suprotno! cetak, treba znati da li problem po sebi poja cava ili prigu suje Medutim, za po male perturbacije u polaznim podacima. Zatim, treba na ci dobar algoritam, koji tom inherentnom pona sanju problema ne doprinosi previ se dodatnim gre skama. Drugim rije cima, da bismo razlikovali dobre od lo sih algoritama (u smislu to cnosti), moramo prvo mo ci razlikovati dobre od lo sih problema. Uvjetovanost slu zi kao mjera kvalitete problema, a kasnije uvodimo isti pojam i za mjerenje kvalitete algoritma. Potreba za vezom izmedu gre saka u polaznim podacima i gre saka u rezultatima ne dolazi samo zbog gre saka u mjerenju. Do istog problema dolazimo analizom gre saka koje nastaju ra cunanjem nekim algoritmom na ra cunalu. Ilustrirajmo to na najjednostavnijem primjeru funkcije f : R R. Pretpostavimo da je y aproksimacija rje senja nekog problema y = f (x), izra cunata nekim algoritmom u realnoj aritmetici ra cunala (tzv. aritmetika pomi cnog zareza, ili engl. oating point arithmetic) s precizno s cu u. Ono sto nas zanima je koliko je izra cunato rje senje daleko od pravog. U ve cini slu cajeva bili bismo zadovoljni s malom relativnom gre skom u rezultatu Erel = |y y | u, |y |

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 32

ali to nije uvijek mogu ce posti ci. Umjesto toga, pitamo se koji bi podaci x + x zapravo dali rje senje y u egzaktnoj aritmetici, tj. kada je y = f (x + x). Generalno, mo ze postojati mnogo takvih x, pa je zanimljiv samo onaj najmanji. Vrijednost |x| ili min |x| zove se obratna gre ska (engl. backward error). Ako obratnu gre sku podijelimo s |x| dobit cemo relativnu obratnu gre sku. Relativnu i apsolutnu gre sku od y , (relativna Erel , apsolutna y = y y ) zovemo gre skom unaprijed (engl. forward error). Sljede ca skica pokazuje njihove razlike.
x y = f (x) obratna gre ska gre ska unaprijed x + x y = f (x + x)

Proces ogradivanja (ili procjene) obratne gre ske izra cunatog rje senja zove se obratna analiza gre ske. Motivacija i opravdanja za primjenu tog postupka ima nekoliko. 1. Analiza propagiranja gre saka zaokru zivanja unaprijed, kroz sve operacije algoritma do kona cnog rezultata, je ubita can posao, koji naj ce s ce daje vrlo pesimisti cke ocjene na to cnost rezultata. U pro slom poglavlju smo napravili takvu analizu za jednu jedinu i to egzaktnu operaciju , a rezultati ve c imaju kompliciran oblik. Da smo, uz perturbirane podatke, uzeli u obzir i gre sku zaokru zivanja rezultata operacije, odnosno operaciju u aritmetici ra cunala, rezultat bi bio jo s kompliciraniji. 2. Model aritmetike (2.6.2) po sebi ka ze da je puno lak se gre ske zaokru zivanja i aritmetike ra cunala interpretirati kao perturbacije po cetnih podataka, uz egzaktne operacije. Osim toga, vrlo cesto i ulazni podaci imaju polazne pogre ske (zbog mjerenja, prija snjeg ra cunanja ili zbog gre saka zaokru zivanja nastalih spremanjem ulaznih podataka u ra cunalo), pa ih ionako treba uzeti u obzir. Na kraju, te sko cemo kritizirati izra cunati rezultat, ako je njegova obratna gre ska reda veli cine gre saka u ulaznim podacima. 3. Velika prednost obratne analize gre saka je da se procjena ili ograda gre ske unaprijed prepu sta teoriji perturbacija, tj. radi se teorija perturbacije za svaki problem, a ne za svaki problem i svaku metodu. Zbog toga, posebno gledamo stabilnost problema (teorija perturbacije ili uvjetovanosti problema), a posebno analiziramo stabilnost algoritama.

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 33

Da bismo imali bolju predod zbu o stabilnosti algoritama mo zemo odmah, iako ne potpuno formalno, uvesti potrebne pojmove. Za algoritam cemo re ci da je obratno stabilan (engl. backward stable), ako za proizvoljni x, izra cunati y ima malu obratnu gre sku, tj. vrijedi y = f (x + x) za neki mali x. Sto zna ci mali, naravno, ovisi o kontekstu. Funkcija f ovdje ovisi i o algoritmu, ali se ra cuna to cno (bez gre saka zaokru zivanja). Na primjer, pretpostavka o preciznosti osnovnih aritmeti ckih operacija (2.6.2) za zbrajanje/oduzimanje je Pogledamo li posljednju jednakost, izlazi da je zbrajanje/oduzimanje obratno stabilna operacija, jer se izra cunati rezultat f (x y ) mo ze interpretirati kao egzaktni rezultat operacije za malo perturbirane ulazne podatke (1 + ) x i (1 + ) y . Sli cno vrijedi i za mnoge druge numeri cke algoritme u praksi. Dobiveni izra cunati rezultat mo ze se (i to bez previ se napora) interpretirati kao egzaktno rje senje problema koji je blizak po cetnom. Ova tehnika obratne analize gre saka nastala je 1950-ih godina, a njeni za cetnici su J. W. Givens, C. Lanczos i, iznad svih, J. H. Wilkinson. Na zalost, u nekim slu cajevima nije mogu ce posti ci pravu obratnu stabilnost u relativnom smislu. Odmah je o cito da probleme mo zemo o cekivati u blizini nule. Primjer 4.1.1. Ve cina potprograma (u bibliotekama ra cunala) za ra cunanje funkcije cos ne po stuje obratnu stabilnost y = cos(x +x) uz relativno mali x. Umjesto toga, zadovoljavaju slabiju relaciju y + y = f (x + x), koja je poznata pod imenom mije sana unaprijed-unazad gre ska (engl. mixed forwardbackward error). Poku sajte sami prona ci kad ne vrijedi obratna stabilnost i opravdati da onda vrijedi ovakva stabilnost. Prethodna relacija, zapravo, ka ze da je rezultat ra cunanja skoro to can za skoro to cne ulazne podatke. Sljede ca slika ilustrira ovakvo pona sanje gre saka.
x y = f (x) obratna gre ska gre ska unaprijed x + x y y f (x + x)

f (x y ) = (1 + ) (x y ) = (1 + ) x (1 + ) y,

|| u.

|y | |y |,

|x| |x|,

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 34

U tom smislu, op cenito, ka zemo da je algoritam numeri cki stabilan ako je stabilan u mije sanom unaprijed-unazad smislu. Odavde odmah slijedi da je obratno stabilan algoritam i numeri cki stabilan! Uo cite da su ove denicije prvenstveno orijentirane na algoritme, tj. uklju cuju i gre ske zaokru zivanja. Jasno je da ukupno pona sanje gre saka ovisi i o problemu, pa pojam stabilnosti mo zemo uvesti i za problem po sebi, tj. za egzaktno ra cunanje f . Problem je stabilan ako mala perturbacija ulaznih podataka rezultira malom perturbacijom rezultata (u apsolutnom ili relativnom smislu). Veza izmedu gre ske unaprijed i obratne gre ske je uvjetovanost problema.

4.2.

Uvjetovanost problema

Istra zimo uvjetovanost problema za funkciju f : R R. Promatramo pona sanje funkcije f za male perturbacije x u okolini to cke x. Neka je y pripadna perturbacija funkcijske vrijednosti y = f (x), tj. f (x + x) = y + y . Algoritamski analogon je pretpostavka da aproksimativno rje senje zadovoljava y = f (x + x). Pretpostavimo jo s da je f dva puta neprekidno derivabilna. Kori stenjem Taylorovog polinoma stupnja 1 dobivamo y = f (x + x) f (x) = f (x)x + f (x + x) (x)2 , 2! (0, 1).

Za male perturbacije x, apsolutni oblik ove relacije je y = f (x) x + O ((x)2 ), odakle slijedi da je f (x) ili |f (x)| apsolutna uvjetovanost funkcije f . Po sto nas vi se zanimaju relativne gre ske, ako je x = 0 i y = 0, prethodnu relaciju mo zemo napisati u relativnoj formi y xf (x) x = +O y f (x) x x x
2

pa relativnu uvjetovanost funkcije f mo zemo denirati kao (cond f )(x) := xf (x) . f (x) (4.2.1)

Za x = 0, y = 0, umjesto relativne gre ske u x, razumnije je promatrati apsolutnu gre sku u x, a relativnu u y , pa je tada uvjetovanost (cond f )(x) = |f (x)/f (x)|. Sli cno vrijedi i za y = 0, x = 0, kad je (cond f )(x) = |xf (x)|. Ako je x = y = 0, onda je uvjetovanost problema jednostavno |f (x)|.

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 35

Primjer 4.2.1. Promotrimo funkciju f (x) = ln x. Njena je relativna uvjetovanost (cond f )(x) = 1 , ln x

sto je veliko za x 1. To zna ci da mala relativna promjena x-a, kad je x 1, uzrokuje mnogo ve cu relativnu promjenu u ln x 0.

Uo cite da mala relativna promjena u x-u, a to je i mala apsolutna promjena za x 1, uzrokuje malu apsolutnu promjenu u ln x, jer je ln(x + x) ln x + (ln x) x = ln x + x . x

To se vidi i iz odgovaraju ce uvjetovanosti. Naime, s obzirom na to da je tada y 0, prirodnija mjera uvjetovanosti je relativno-apsolutna (cond1 f )(x) = |xf (x)| = 1, za x = 1, sto potvrduje prethodni zaklju cak. Medutim, promjena u ln x mo ze biti velika u relativnom smislu. Kad su denirane gre ska unaprijed, obratna gre ska i uvjetovanost, mo zemo re ci da je gre ska unaprijed uvjetovanost obratna gre ska, sto zna ci da izra cunato rje senje lo se uvjetovanog problema mo ze imati veliku gre sku unaprijed. Cak i kad izra cunato rje senje ima malu obratnu gre sku, ta ce se gre ska napuhati unaprijed faktorom veli cine uvjetovanosti problema. Jo s je jedna denicija korisna. Ako metoda ima gre sku unaprijed pribli zno jednakog reda veli cine kao obratnu gre sku, onda cemo metodu zvati stabilnom unaprijed (engl. forward stable). Takva metoda ne mora biti obratno stabilna, ali obratno vrijedi: obratno stabilna metoda je stabilna i unaprijed (i to, vi se-manje, po deniciji stabilnosti unaprijed). Na primjer, metoda koja je stabilna unaprijed, a nije obratno stabilna je Cramerovo pravilo za rje savanje 2 2 sistema linearnih jednad zbi. Poka zite to! Kad je f : Rm Rn , situacija ce se malo zakomplicirati. Ozna cimo li x = (x1 , x2 , . . . , xm )T Rm , y = (y1 , y2 , . . . , yn )T Rn ,

preslikavanje f mo zemo komponentno zapisati kao yk = fk (x1 , x2 , . . . , xm ), k = 1, 2, . . . , n.

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 36

Ponovno, pretpostavljamo da svaka funkcija fk ima parcijalne derivacije po svim komponentnim varijablama x u to cki x. Najdetaljniju analizu dobivamo gledaju ci promjene svake komponentne funkcije fk po svakoj pojedinoj varijabli x . Promatramo li promjenu koju uzrokuje mala perturbacija varijable x u funkciji fk , dobit cemo isti rezultat (4.2.1) kao za funkciju jedne varijeble. Relativna uvjetovanost tog problema je fk x k (x) := (condk f )(x) := . fk (x) x Ako to napravimo za sve varijable x i za svaku od funkcija fk , dobivamo citavu nm matricu (x) = [k (x)] R+ brojeva uvjetovanosti. Da bismo iz te matrice uvjetovanosti dobili samo jedan broj, mo zemo koristiti bilo koju mjeru veli cine matrice (x), poput neke matri cne norme. Deniramo (cond f )(x) := (x) . (4.2.2)

Tako denirana uvjetovanost ovisi o izboru norme, ali ne bitno, zbog medusobne ekvivalencije raznih normi. Ako bilo koja komponenta od x ili y i s cezava, problem mo zemo rije siti na isti na cin kao sto smo to napravili u slu caju funkcije jedne varijable. Grublju analizu s manje parametara dobivamo po ugledu na jednodimenzionalnu, promatranjem apsolutnih i relativnih perturbacija vektora u smislu norme. Takvu relativnu perturbaciju vektora x Rm deniramo kao x , x x = (x1 , x2 , . . . , xm )T ,

pri cemu je bilo koja vektorska norma, a komponente vektora perturbacije x su male u odnosu na komponente vektora x. Sada mo zemo poku sati povezati relativnu perturbaciju od y s relativnom perturbacijom od x. Po analogiji s (4.2.1), imamo yk = fk (x + x) fk (x) fk x . x =1
m

Za male perturbacije, ovu relaciju mo zemo zapisati u vektorsko-matri cnom obliku y f x, x (4.2.3)

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 37

gdje je f /x = Jf (x) Jacobijeva matrica preslikavanja f :


f = x

f1 x1 f2 x1

fn fn fn x1 x2 xm

f1 f1 x2 xm f2 f2 x2 xm Rn m .

Zbog toga, barem aproksimativno vrijedi


m

|yk |

=1

m fk fk |x | max |x | max |x | max =1,...,m =1,...,m k =1,...,n x =1 x

m =1

fk . x

Budu ci da prethodna relacija vrijedi za svaki k = 1, . . . , n, onda ona vrijedi i za max |yk |. Kori stenjem -norme vektora i matrica dobivamo
k =1,...,n

f x

Kona cno, za relativne perturbacije po normi dobivamo y y x f x x . f (x) x

Mo ze se pokazati da je prethodna nejednakost o stra, tj. da postoji perturbacija x za koju se ona dosti ze. To opravdava deniciju globalne uvjetovanosti u obliku x (cond f )(x) := f x . f (x)

(4.2.4)

Primijetite da je ova uvjetovanost mnogo grublja nego ona u (4.2.2), jer norma poku sava uni stiti detalje o komponentama vektora. Na primjer, ako x ima komponente bitno razli citih redova veli cina, samo ce po apsolutnoj vrijednosti najve ca igrati neku ulogu, a ostale ce biti zanemarene. Isti oblik broja uvjetovanosti iz (4.2.4) mo zemo dobiti u bilo kojoj vektorskoj i njoj pripadnoj operatorskoj normi. To izlazi direktno iz (4.2.3), jer barem pribli zno, za male perturbacije, vrijedi y a ostatak ide analogno. f x x ,

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 38

Primjer 4.2.2. Ispitajmo uvjetovanost problema


f (x) =

1 1 + x1 x2 , 1 1 x1 x2

x=

x1 . x2

Uzmemo li kao uvjetovanost deniciju (4.2.2), prvo treba izra cunati elemente matrice (x). Izlazi 11 = x2 , x1 + x2 12 = x1 , x1 + x2 21 = x2 , x2 x1 22 = x1 . x2 x1

sto odmah ukazuje na lo su uvjetovanost (engl. illconditioning) za x1 x2 , uz uvjet da |x1 | (a onda i |x2 |) nisu mali. Za broj uvjetovanosti (x) F dobivamo (x)
F

2 x2 1 + x2 , 2 |x2 1 x2 |

sto ponovno pokazuje istu lo su uvjetovanost za x1 x2 .

Ako za uvjetovanost uzmemo deniciju (4.2.4) u -normi, onda je (cond f )(x) =


2 max{|x1 |, |x2 |} (x2 1 + x2 ) . |x1 x2 | max{|x1 + x2 |, |x2 x1 |}

Uvrstimo li x1 x2 , dobivamo da je (cond f )(x) 2, sto o cito vodi na pogre san zaklju cak da je problem dobro uvjetovan i neosjetljiv na perturbacije za x1 x2 . Primjer 4.2.3. Ispitajmo uvjetovanost problema ra cunanja integrala
1

In =
0

tn dt t+5

za ksni prirodni broj n. U napisanom obliku ovaj problem zadaje funkciju s N u R i ne odgovara na sem pojmu problema iz (4.1.1), jer je N diskretan skup i nema pojma malih perturbacija. Medutim, uzmimo da ovaj integral ra cunamo rekurzivno, koriste ci vezu izmedu susjednih integrala Ik i Ik1 , s tim da po cetni integral I0 znamo izra cunati
1

I0 =
0

1 1 6 dt = ln(t + 5) = ln . t+5 5 0

(4.2.5)

Za nala zenje rekurzije, primijetimo da je t 5 =1 , t+5 t+5

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 39

pa mo zenjem obje strane s tk1 i integracijom od 0 do 1 dobivamo zeljenu rekurzivnu relaciju 1 1 Ik = tk1 dt 5Ik1 = 5Ik1 , k = 1, 2, . . . , n. k
0

Vidimo da je niz vrijednosti Ik rje senje (linearne, nehomogene) diferencijske jednad zbe (prvog reda s konstantnim koecijentima) 1 yk = 5yk1 + , k s po cetnim uvjetom y0 = I0 . Ako pustimo po cetni uvjet varira, dobivamo zeljeni oblik problema. Ova rekurzija denira niz funkcija fk : R R koje direktno ve zu yk i y0 , tj. yk = fk (y0 ). Da bismo izra cunali In , treba uzeti y0 = I0 , primijeniti relaciju (4.2.6) redom za k = 1, 2, . . . , n, a rezultat je yn = fn (y0) = In . Zelimo na ci uvjetovanost funkcije fn u to cki y0 = I0 iz relacije (4.2.5), u ovisnosti o parametru n N. Prvo, primijetimo da po cetna vrijednost I0 nije egzaktno prikaziva u ra cunalu, i pri spremanju se mora zaokru ziti. Umjesto I0 , spremi se I0 . Cak da se u procesu ra cunanja ne dogodi vi se niti jedna jedina gre ska, rezultat ce biti neka aproksimacija In = fn (I0 ). Iz relacije (4.2.6) slijedi da je fn linearna (preciznije, ana) funkcija od y0 . Na primjer, indukcijom, lako izlazi yn = fn (y0 ) = (5)n y0 + pn , gdje je pn neki broj koji ne ovisi o y0 , nego samo o nehomogenim clanovima rekurzije. Po deniciji broja uvjetovanosti (4.2.1), dobivamo (cond fn )(y0 ) =
y0 fn (y 0 ) y0 (5)n = . yn yn

k = 1, 2 , . . . ,

(4.2.6)

Za y0 = I0 , znamo da je yn = In . Osim toga, iz denicije integrala In vidimo da In monotono padaju po n, cak vrijedi lim In = 0. Dakle, zbrajanjima dobivamo sve n manje i manje brojeve, sto ne sluti na dobro. Zaista, broj uvjetovanosti to i pokazuje (cond fn )(I0 ) = I0 5n I0 5n > = 5n . In I0

Dakle, fn je vrlo lo se uvjetovana u y0 = I0 , i to tim gore kad n raste.

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 40

Naravno, to se odmah vidi i iz rekurzije (4.2.6). Stalno mno zimo s (5), sto pove cava vrijednosti, a mi trebamo dobiti sve manje i manje vrijednosti. Stoga, u zbrajanjima neprestano moramo imati sve ve ca i ve ca kra cenja, dok se ne izgubi bilo kakva informacija. Napomenimo da za pribli zne vrijednosti In i I0 egzaktno vrijedi veza relativnih perturbacija I0 I0 In In = (cond fn )(I0 ) , In I0 i to za bilo kakve, a ne samo male perturbacije. To slijedi iz linearnosti funkcije fn , pa je fn = 0 u Taylorovoj formuli. Ostaje pitanje da li se ova lo sa uvjetovanost mo ze nekako izbje ci. Rje senje se mo ze naslutiti iz prethodne primjedbe. Umjesto mno zenja velikim brojem, radije bismo dijelili velikim brojem, posebno ako rezultati rastu, a ne padaju. To se posti ze okretanjem rekurzije (4.2.6). Treba uzeti neki > n i ra cunati y k 1 = 1 1 yk , 5 k k = , 1, . . . , n + 1. (4.2.7)

Problem je, naravno, kako izra cunati po cetnu vrijednost y . Prije toga, uo cimo da rekurzija (4.2.7) denira novi niz funkcija gk : R R, s tim da se na s problem svodi na ra cunanje funkcije gn koja direktno ve ze y n i y , uz > n, tj. y n = g n (y ). Kao i ranije, gn je linearna (ana) funkcija od y , pa na isti na cin dobivamo da je uvjetovanost (cond gn )(y ) = y (1/5) n , yn > n.

Za y = I , znamo da je yn = In , a iz monotonosti In slijedi I 1 (cond gn )(I ) = In 5


n

1 < 5

> n,

sto je ispod 1, tj. gre ske se prigu suju. Osim toga, faktor prigu senja pada kad raste, obzirom na n. Ako je I neka aproksimacija za I , onda za relativne perturbacije vrijedi In In I I 1 = (cond gn )(I ) < In I 5
n

I I . I

Zbog linearnosti funkcije gn , ova relacija vrijedi za bilo kakve perturbacije, a ne samo male. Drugim rije cima, po cetna vrijednost I uop ce ne mora biti blizu prave

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 41

I . Uzmemo li I = 0, cime smo napravili relativnu gre sku od 100% u po cetnoj vrijednosti, jo s uvijek dobivamo In s relativnom gre skom 1 In In < In 5
n

> n.

Povoljnim izborom , ocjenu na desnoj strani mo zemo napraviti po volji malom, recimo, ispod zeljene to cnosti . Dovoljno je uzeti n+ log(1/) . log 5

Za kona cni algoritam uzmemo da je najmanji cijeli broj za koji vrijedi prethodna relacija, deniramo I = 0 i ra cunamo vrijednosti Ik1 = 1 1 Ik , 5 k k = , 1, . . . , n + 1.

i uz gre U egzaktnoj aritmetici In ima relativnu gre sku ispod . Cak ske zaokru zivanja u ovom postupku, jo s uvijek dobivamo izra cunati In s relativnom gre skom pribli zno jednakom max{, u}. Naime, i sve gre ske zaokru zivanja se stalno prigu suju u ovom postupku. Sli cne ideje okretanja rekurzije imaju ogromnu primjenu kod ra cunanja rje senja linearnih rekurzivnih relacija drugog reda. Na primjer, Besselove funkcije i mnoge druge specijalne funkcije matemati cke zike zadovoljavaju takve rekurzije. Primjer 4.2.4. (Sustavi linearnih algebarskih jednad zbi) Promatramo problem rje savanja linearnog sustava jednad zbi oblika Ax = b, gdje je A Rnn kvadratna regularna matrica reda n, a b Rn zadani vektor. Ulazni podaci su elementi od A i b (njih n2 + n), a rezultat je vektor x Rn . Znamo da ovaj problem ima jedinstveno rje senje, tj. imamo korektno deniran problem, a n2 +n n pripadna funkcija je R R .

Da bismo pojednostavnili stvari, pretpostavimo da je A ksna zadana matrica koja se ne mijenja (perturbira). Dozvoljene su perturbacije samo vektora b desne strane sustava. Pripadna funkcija ovog problema je f : Rn Rn , zadana s x = f (b) := A1 b.

Opet je f linearna funkcija, pa je njena Jacobijeva matrica Jf (b) = f /x = A1 .

4. STABILNOST PROBLEMA I ALGORITAMA

STABILNOST 42

Pripadni broj uvjetovanosti funkcije f , promatranjem perturbacija po normi je, prema (4.2.4), b A1 (cond f )(b) := , A1 b u bilo kojoj vektorskoj normi na Rn i pripadnoj operatorskoj normi. Ovaj broj, naravno, ovisi o A i o b. Zelimo eliminirati ovisnost o b i dobiti broj koji ovisi samo o A. Prvo uvrstimo Ax = b, sto daje (cond f )(b) = Ax x A1 ,

a onda, koriste ci bijektivnu vezu x i b, tra zimo najgori mogu ci broj uvjetovanosti po svim b, odnosno, po svim x max (cond f )(b) = max n n
b b=0

x x=0

Ax A1 = A A1 , x

po deniciji operatorske norme od A. Desna strana vi se ne ovisi o vektoru b i mo zemo ju interpretirati kao broj uvjetovanosti matrice A linearnog sustava, pa deniramo cond A := A A1 . (4.2.8) Bitno je re ci da ovaj broj mjeri uvjetovanost linearnog sustava s matricom A, a ne uvjetovanost drugih problema ili veli cina vezanih uz matricu A, poput svojstvenih vrijednosti (iako i tamo ima ulogu). Iako je izveden promatranjem perturbacija samo desne strane b, broj uvjetovanosti iz (4.2.8) ima bitno zna cenje i kad dozvolimo perturbacije u matrici A. Moramo se ograni citi na dovoljno male perturbacije, tako da sustav ostane regularan na primjer, takve da je A A1 < 1.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 43

5. Rje savanje linearnih sustava


5.1. Kako se sustavi rje savaju u praksi

Zadani su matrica A Cmn i vektor b Cm . Teorem KroneckerCapelli daje odgovor na pitanje kad linearni sustav Ax = b ima rje senje x Cn i kad je ono jedinstveno. (5.1.1)

U praksi se naj ce s ce rje savaju linearni sustavi kad je matrica sustava A kvadratna i nesingularna. Tada znamo da sustav ima jedinstveno rje senje. Kako bi se moglo izra cunati rje senje takvog sustava? Na primjer, mogao bi se 1 izra cunati inverz A , pa mno zenjem relacije (5.1.1) slijeva s A1 dobivamo x = A1 b. Time nam je odmah dana i jedna metoda za rje savanje linearnog sustava (5.1.1) koja je sasvim neprakti cna, jer smo rje savanje linearnog sustava preveli u ra cunanje inverza, sto je te zi problem. Naime, j -ti stupac inverza je rje senje sustava Ax = ej . Druga metoda, koja se cesto spominje u linearnoj algebri je Cramerovo pravilo. Prisjetimo se, j -ta komponenta rje senja sustava je xj = det Aj , det A

pri cemu je matrica Aj jednaka matrici A, osim sto je j -ti stupac u Aj zamijenjen desnom stranom b. Slo zenost ovog na cina rje savanja je eksponencijalna (doka zite to!) i nikad se ne koristi kao metoda numeri ckog rje savanja. Najjednostavnija metoda za rje savanje linearnog sustava (5.1.1) je njegovo svodenje na trokutastu formu Rx = y , gdje je R trokutasta matrica (recimo, gornja), iz koje se lako, tzv. povratnom supstitucijom, nalazi rje senje. Gaussove eliminacije su metoda direktnog transformiranja linearnog sustava Ax = b, zajedno s desnom stranom, na trokutastu formu. Gaussove eliminacije

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 44

mo zemo implementirati i tako da se desna strana ne transformira istovremeno kad i matrica A. Tada se formiraju dvije matrice L i R (R je trokutasta matrica iz Gaussovih eliminacija) i koriste ci njih lako se dobije rje senje tra zenog sustava. Kad se Gaussove eliminacije tako implementiraju, metoda se obi cno zove LR (neki to zovu LU) faktorizacija matrice A. Ovaj pristup je posebno zgodan kad imamo vi se linearnih sustava s istom matricom A, a desne strane se razlikuju. Mnogi sustavi linearnih jednad zbi imaju specijalna svojstva i specijalnu strukturu. U nekim od tih slu cajeva, koji su za praksu jako bitni, mogu se primijeniti i iterativne metode, koje daju rje senje linearnog sustava (5.1.1) na zadovoljavaju cu to cnost mnogo br ze nego LR faktorizacija.

5.2.

Gaussove eliminacije

Elementarne transformacije su one koje ne mijenjaju rje senje linearnog sustava. Takve transformacije su: mno zenje jednad zbe konstantom razli citom od 0, dodavanje jednad zbe (ili linearne kombinacije jednad zbi) drugim jednad zbama i zamjena poretka jednad zbi. Kori stenjem elementarnih transformacija, svaki se linearni sustav s kvadratnom nesingularnom matricom mo ze svesti na trokutasti oblik. Ozna cimo A(1) := A, b(1) := b. U skra cenoj notaciji, bez pisanja nepoznanica xi , linearni sustav (5.1.1) mo zemo zapisati pro sirenom matricom, kao

(1) a11 (1) a21 (1) a12 (1) a22

(1) a1n (1) a2n

(1) b1 (1) b2

. . . an1
(1)

. . . an2
(1)

. . . a(1) nn

. . . b(1) n

Po cnimo sa svodenjem matrice na trokutastu formu. Za prvi stupac to zna ci da (1) u tom stupcu moramo poni stiti sve elemente, osim prvog. Ako je element a11 = 0, onda redom, mo zemo od i-te jednad zbe oduzeti prvu jednad zbu pomno zenu s mi1 = ai1
(1)

a11

(1)

i = 2, . . . , n.

Prva jednad zba se ne mijenja. Time smo dobili ekvivalentni linearni sustav

(1) a11 (1) a12 (2) a22

(1) a1n (2) a2n

(1) b1 (2) b2

0 . . . 0

. . . an2
(2)

. . . a(2) nn

. . . b(2) n

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 45

Postupak poni stavanja mo zemo nastaviti s drugim stupcem matrice A(2) , od dija(2) gonale nadolje. Ako je a22 = 0, biramo faktore mi2 = ai2
(2) (2)

a22

i = 3, . . . , n,

tako da poni stimo sve elemente drugog stupca ispod dijagonale. I tako redom. (i) Kona cno, ako su svi aii = 0, za i = 1, . . . , n 1, zavr sni linearni sustav, ekvivalentan polaznom, je

a11

(1)

a12

(1)

(2) a22

.. .

a1n . . .

(1)

b1

(1)

(2) a2n

(2) b2

. . .
n) b( n

n) a( nn

n) Uz pretpostavku da je a( sava povratnom nn = 0, ovaj se linearni sustav lako rje supstitucijom

xn = xi =

n) b( n

ann 1
(i) aii

(n)

,
(i) bi n

aij xj ,
j =i+1

(i)

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

Prvo pitanje koje se name ce je moraju li svi aii biti razli citi od nule, ako je A regularna i kvadratna. Jasno je da ne moraju. Na primjer, matrica linearnog sustava 1 1 0 je regularna (det A = 1), sustav ima jedinstveno rje senje x1 = x2 = 1, a ipak ga ne mo zemo rije siti Gaussovim eliminacijama ako ne mijenjamo poredak jednad zbi. Zamjena bilo koje dvije jednad zbe ne ce promijeniti rje senje sustava. Dakle, ako je a11 = 0, prije eliminacije elemenata prvog stupca, moramo izabrati ne-nula element u prvom stupcu, zovimo ga ar1 , a zatim zamijeniti prvu i r -tu jednad zbu. Ponovno, nismo sigurni je li to uvijek mogu ce. No, ako u prvom stupcu ne postoji ne-nula element, matrica A ima nul-stupac za prvi stupac, pa ne mo ze biti regularna. Poka zite da isti argument vrijedi za svaku od matrica u procesu eliminacije, tj. ako su u k -tom koraku eliminacije svi elementi matrice A(k) na ili ispod glavne dijagonale u k -tom stupcu jednaki 0, onda je matrica A singularna. Dakle, ako je A nesingularna, onda u svakom koraku k (k = 1, . . . , n 1) (k ) eliminacije, u matrici A(k) mo zemo na ci element ark = 0, uz r k , kojeg zamjenom

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 46

jednad zbi r i k dovodimo na dijagonalu, tako da je akk = 0, a zatim ra cunamo matricu A(k+1) . Takve ne-nula elemente koje dovodimo na dijagonalu zovemo pivotnim elementima. Drugo je pitanje, da li je dovoljno dobro birati pivotne elemente samo tako da budu ne-nula, sto je, u principu, dovoljno da provedemo postupak eliminacije. Primjer 2.7.4. pokazuje da biranje veli cine pivotnog elementa nije bezna cajno. Uobi cajeno parcijalno pivotiranje kao pivotni element bira element koji je po apsolutnoj vrijednosti najve ci u ostatku tog stupca na glavnoj dijagonali ili ispod nje. Drugim rije cima, ako je u k -tom koraku |ark | = max |aik |,
k in (k ) (k )

(k )

onda cemo zamijeniti r -ti i k -ti redak i po ceti korak eliminacije elemenata k -tog stupca. Motivacija za takvo biranje pivotnih elemenata je jednostavna. Elementi ostatka linearnog sustava koje treba izra cunati u matrici A(k+1) u k -tom koraku transformacije su aij
(k +1)

= aij mik akj ,


(k )

(k )

(k )

bi

(k +1)

= bi mik bk ,

(k )

(k )

(5.2.1)

za i, j = k + 1, . . . , n, a multiplikatori mik su mik = aik


(k )

akk

i = k + 1, . . . , n.

(5.2.2)

Ako je multiplikator mik velik, u aritmetici pomi cnog zareza mo ze do ci do kra cenja (k ) (k +1) najmanje zna cajnih znamenki aij , tako da izra cunati aij mo ze imati veliku relativnu gre sku. Na zalost, to kra cenje mo ze biti ekvivalentno relativno velikoj perturbaciji u originalnoj matrici A. Na primjer, neka je A= 1 , 1 1 u.
(2)

Eliminacija elementa a21 u aritmetici pomi cnog zareza, umjesto elementa a22 , daje f (a22 ) = f 1
(2)

1 1 = ,

(5.2.3)

zbog 1 1/. Kad bismo u originalnoj matrici A promijenili a22 s 1 u 0, dobili (2) bismo isti rezultat za f (a22 ), s tim da je on sad i egzaktan. Drugim rije cima, gre ska zaokru zivanja napravljena u (5.2.3) ekvivalentna je velikoj relativnoj perturbaciji u originalnoj matrici A. Pogledajte da li bi se isto dogodilo da smo zamijenili jednad zbe prije po cetka eliminacije.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 47

Sasvim op cenito, ideja pivotiranja je minimizirati korekcije elemenata u (5.2.1) pri prijelazu s A(k) na A(k+1) . Dakle, multiplikatori u (5.2.2) trebaju biti sto manji. To se posti ze izborom sto je mogu ce ve ceg nazivnika (po apsolutnoj vrijednosti), a to je upravo pivotni element. Primijetite da za multiplikatore kod parcijalnog pivotiranja vrijedi |mik | 1, i = k + 1, . . . , n. U praksi, parcijalno pivotiranje funkcionira izvrsno, ali matemati cari su kon struirali primjere kad ono nije savr seno. Sto to to cno zna ci, bit ce re ceno u jednom od sljede cih poglavlja. Osim parcijalnog pivotiranja, mo ze se provoditi i potpuno pivotiranje. U k -tom koraku, bira se maksimalni element u cijelom ostatku matrice A(k) , a ne samo u k -tom stupcu. Ako je u k -tom koraku
k) |a( rs | = max |aij |, k i,j n (k )

onda cemo zamijeniti r -ti i k -ti redak, s-ti i k -ti stupac i po ceti korak eliminacije elemenata k -tog stupca. Ipak, trebamo biti malo oprezni. Zamjenom s-tog i k -tog stupca zamijenili smo ulogu varijabli xs i xk . Sve takve promjene treba pamtiti u vektoru permutacije varijabli. Osim toga, u usporedbi s parcijalnim pivotiranjem, imamo mnogo vi se pretra zivanja u svakom koraku ((n k + 1)2 elemenata, prema ranijih n k + 1), sto usporava proces. Ipak, kori stenjem potpunog pivotiranja mogu se izvesti bolje ocjene gre ske nego kod parcijalnog pivotiranja. Ovo nisu jedine mogu cnosti pivotiranja kod rje savanja linearnih sustava. Rutishauser je po cetkom sedamdesetih godina opisao relativno parcijalno pivotiranje, ali algoritam nije u sao u siroku upotrebu. Napi simo sad algoritam koji kori stenjem Gaussovih eliminacija rje sava linearni sustav Ax = b. Sve transformacije provodimo u istim poljima A i b koja na po cetku sadr ze ulazne podatke. Algoritam 5.2.1. (Gaussove eliminacije s parcijalnim pivotiranjem) {Trokutasta redukcija} for k := 1 to n 1 do begin {Nadi maksimalni element u ostatku stupca} max elt := 0.0; ind max := k ; for i := k to n do if abs(A[i, k ]) > max elt then begin max elt := abs(A[i, k ]);

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 48

ind max := i; end; if max elt > 0.0 then begin if ind max <> k then {Zamijeni k -ti i ind max -ti redak} begin for j := k to n do begin temp := A[ind max , j ]; A[ind max , j ] := A[k, j ]; A[k, j ] := temp ; end; temp := b[ind max ]; b[ind max ] := b[k ]; b[k ] := temp ; end; for i := k + 1 to n do begin mult := A[i, k ]/A[k, k ]; A[i, k ] := 0.0; {Ne treba, ne koristi se kasnije} for j := k + 1 to n do A[i, j ] := A[i, j ] mult A[k, j ]; b[i] := b[i] mult b[k ]; end; end else {Matrica je singularna, stani s algoritmom} begin error := true ; exit ; end; end; {Povratna supstitucija, rje senje x ostavi u b} b[n] := b[n]/A[n, n]; for i := n 1 downto 1 do begin sum := b[i]; for j := i + 1 to n do sum := sum A[i, j ] b[j ]; b[i] := sum /A[i, i]; end; error := false ;

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 49

Zadatak 5.2.1. Poku sajte samostalno napisati algoritam koji koristi potpuno pivotiranje. Posebnu pa znju obratite na ekasno pam cenje zamjena varijabli koje su posljedica zamjena stupaca. Mo ze li se isti princip ekasno primijeniti i za pam cenje zamjena redaka, tako da se potpuno izbjegnu eksplicitne zamjene elemenata u matrici A i vektoru b? Prebrojimo sve aritmeti cke operacije ovog algoritma da bismo dobili jednostavnu mjeru slo zenosti Gaussovih eliminacija. U prvom koraku trokutaste redukcije obavlja se: n 1 dijeljenje ra cunanje mult,

n(n 1) mno zenje za svaki od n 1 redaka po n 1 mno zenje za ra cunanje elemenata matrice A i jedno mno zenje za ra cunanje elementa vektora b, n(n 1) oduzimanje javlja se u istoj naredbi gdje i prethodna mno zenja. Na sli can na cin zaklju cujemo da se u k -tom koraku obavlja: n k dijeljenja,

(n k + 1) (n k ) mno zenja i (n k + 1) (n k ) oduzimanja. Ukupno, u k -tom koraku imamo n k + 2(n k + 1) (n k ) = 2(n k )2 + 3(n k ) aritmeti ckih operacija. Broj koraka k varira od 1 do n 1, pa je ukupan broj operacija potrebnih za svodenje na trokutastu formu jednak
n1 k =1

[2(n k )2 + 3(n k )] =

n1

1 (2k 2 + 3k ) = (4n3 + 3n2 7n). 6 k =1

Druga suma u pro sloj jednakosti dobije se iz prve zamjenom indeksa n k k . Potpuno istim zaklju civanjem dobivamo da u povratnoj supstituciji ima: (n 1) n/2 mno zenja i (n 1) n/2 zbrajanja, n dijeljenja, sto je zajedno to cno n2 operacija. Dakle, ukupan broj operacija u Gaussovim eliminacijama je 1 OP (n) = (4n3 + 9n2 7n), 6 sto je pribli zno 2n3 /3, za malo ve ce n.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 50

Ovaj broj je najjednostavnija mjera ekasnosti ili slo zenosti Gaussovih eliminacija. Uo cimo da ova mjera ignorira pivotiranje, jer tamo nema vidljivih aritmeti ckih operacija. Medutim, usporedivanje dva realna broja u oating point aritmetici se obi cno radi oduzimanjem ta dva broja i usporedbom rezultata s nulom. U tom smislu, sve takve usporedbe bi, takoder, trebalo brojati. Nadite njihov broj za parcijalno i potpuno pivotiranje. Ako se u Gaussovim eliminacijama poni stavaju ne samo elementi ispod dijagonale, nego i iznad nje, dobivamo tzv. GaussJordanovu metodu, koja linearni sustav svodi na ekvivalentni dijagonalni sustav. GaussJordanove eliminacije se danas rijetko koriste u praksi, jer zahtijevaju previ se ra cunskih operacija. Zadatak 5.2.2. Napi site taj algoritam i poka zite da je broj ra cunskih operacija, ne broje ci usporedivanja, u tom slu caju jednak OP (n) = n3 + n2 n. To je skoro 50% vi se ra cunskih operacija nego u obi cnim Gaussovim eliminacijama.

5.3.

LR faktorizacija

U praksi se linearni sustavi naj ce s ce rje savaju kori stenjem LR faktorizacije. Pretpostavimo da smo dobili matricu A faktoriziranu u obliku A = LR, (5.3.1)

pri cemu je L donjetrokutasta matrica s jedinicama na dijagonali, a R gornjetrokutasta. Matrica L je regularna i vrijedi det L = 1, pa regularnost matrice A povla ci i regularnost matrice R, jer iz (5.3.1) slijedi det A = det L det R = det R. Rje senje linearnog sustava (5.1.1) sad se svodi samo na dva rje savanja trokutastih sustava. Kako? Polazni sustav u faktoriziranoj formi ima oblik LRx = b. Ozna cimo li y = Rx, dobivamo dva sustava Ly = b, Rx = y.

Oba sustava lako se rje savaju: prvi supstitucijom unaprijed y1 = b1


i1

yi = bi

ij yj ,
j =1

i = 2, . . . , n,

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 51

a drugi povratnom supstitucijom xn = yn rnn n 1 xi = yi rij xj , rii j =i+1

i = n 1, . . . , 1.

Za sto je takva faktorizacija korisna? Na primjer, ako se rje savaju linearni sustavi kojima se mijenjaju samo desne strane, onda je dovoljno imati A spremljenu u faktoriziranom obliku, a zatim rije siti ve c navedena dva trokutasta sustava. Naravno, prvo treba na ci LR faktorizaciju matrice A. Relacije za elemente ij i rij matrica L i R dobivamo ako iskoristimo njihovu poznatu strukturu i cinjenicu da njihov produkt daje A. Onda je
min{i,j }

aij =
k =1

ik rkj ,

s tim da je ii = 1. Iz ovih relacija ra cunamo redom one elemente koje mo zemo izraziti preko poznatih veli cina. Tako dobivamo rekurziju za elemente matrica L i R r1j = a1j , j = 1, . . . , n, aj 1 , j = 2, . . . , n, j 1 = r11 za i = 2, . . . , n :
i1

rij = aij

ik rkj ,
k =1

j = i, . . . , n, j = i + 1, . . . , n.

i1 1 aji jk rki , ji = rii k =1

U zadnjem koraku, za i = n, ra cunamo samo rnn . Jedini problem u provedbi ovog algoritma je osigurati da je rii = 0. Ako znamo da to vrijedi, onda prethodne relacije daju egzistenciju i jedinstvenost matrica L i R. Sljede ci teorem daje potrebni kriterij u terminima polazne matrice A. Teorem 5.3.1. Postoji jedinstvena LR faktorizacija matrice A ako i samo ako su vode ce glavne podmatrice Ak := A(1 : k, 1 : k ), k = 1, . . . , n 1, regularne. Ako je Ak singularna za neki k , faktorizacija mo ze postojati, ali nije jedinstvena. Dokaz: Dokaz se provodi indukcijom po dimenziji matrice. Pretpostavimo da su sve matrice Ak regularne. Za k = 1, postoji jedinstvena LR faktorizacija A1 = [1] [a11 ].

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 52

Pretpostavimo da Ak1 ima jedinstvenu faktorizaciju Ak1 = Lk1 Rk1 . Tra zimo faktorizaciju matrice Ak , gdje je Ak = Ak1 b cT akk = Lk1 0 T 1 Rk1 r 0 rkk := Lk Rk .

Da bi jednad zbe bile zadovoljene, mora vrijediti Lk1 r = b,


T Rk 1 = c,

akk = T r + rkk .

Matrice Lk1 i Rk1 su regularne, pa postoji jedinstveno rje senje r , , pa onda i jedinstveni rkk . Poka zimo obrat, uz pretpostavku da je A nesingularna i da postoji LR faktorizacija od A. Tada je Ak = Lk Rk , za k = 1, . . . , n. Budu ci da je A regularna, vrijedi det A = det R = r11 r22 rnn = 0. Odatle slijedi det Ak = r11 r22 rkk = 0, tj. sve matrice Ak su regularne. Primjer koji ilustrira da LR faktorizacija mo ze postojati u slu caju singularne matrice A, ali da nije jedinstvena, je faktorizacija nul-matrice 1 0 0 0 = 0 0 l 1 S druge strane, matrica A= nema LR faktorizaciju, iako je regularna. Poka zimo da je matrica R dobivena LR faktorizacijom jednaka gornjetrokutastoj matrici R dobivenoj Gaussovim eliminacijama. Pretpostavimo da je A(k) matrica dobivena u k -tom koraku Gaussovih eliminacija. Njezina blok forma ima oblik (k ) (k ) A11 A12 A(k) = (k ) , 0 A22 pri cemu je A11 trokutasta matrica reda k 1 (tj. dosad sredena matrica), dok su preostale dvije matrice, generalno, pune. U matri cnoj notaciji, sljede ci korak
(k )

0 0 . 0 0

0 1 1 1

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 53

eliminacija mo zemo izraziti u obliku produkta

I k 1 A(k+1) = Mk A(k) :=

1 mk+1,k mk+2,k . . . mn,k 1 .. . .. . 1

A(k) ,

gdje su mik multiplikatori iz relacije (5.2.2). Matricu Mk mo zemo i kompaktno napisati kao Mk = I mk eT k, gdje je ek , k -ti vektor kanonske baze, a mk vektor s n komponenti,
0 m k+1,k . . .

0 . . .

mk =

mn,k

Primijetite da je jer je eT i mk = 0 za i k . Prema tome je

1 Mk = I + mk eT k,

S druge strane, mo zemo dobiti i sam A

Mn1 Mn2 M1 A = A(n) := R.

1 1 1 T T T A = M1 M2 Mn 1 R = (I + m1 e1 ) (I + m2 e2 ) (I + mn1 en1 ) R

n1

= I+
i=1

mi eT i

1 m 21 1 . .. . R := L R. R = . m32 . . . . . . . . . . mn1 mn2 mn,n1 1

Iz jedinstvenosti LR faktorizacije slijedi da je R = R. Teorem 5.3.1. i cinjenica da je R iz LR faktorizacije jednak onom iz Gaussovih eliminacija, upu cuju nas da pivotiranje vr simo na isti na cin kao i kod Gaussovih eliminacija.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 54

Ako vr simo parcijalno pivotiranje, onda se LR faktorizacija tako dobivene matrice (permutiranih redaka) mo ze zapisati kao P A = LR, pri cemu je P matrica permutacije u svakom retku i stupcu ima to cno jednu jedinicu, a ostalo su nule. Ako znamo permutiranu faktorizaciju, kako cemo rije siti linearni sustav Ax = b? Najjednostavnije je lijevu i desnu stranu (slijeva) pomno ziti s P (P je uvijek regularna poka zite to), pa dobivamo P Ax = LRx = P b. Ako vr simo potpuno pivotiranje, na kraju dobivamo LR faktorizaciju matrice koja ima permutirane retke i stupce obzirom na A, tj. P AQ = LR, gdje su P i Q matrice permutacije. U ovom je slu caju rje savanje linearnog sustava malo kompliciranije (skicirajte kako).

5.4.

Teorija perturbacije linearnih sustava

U ovom odjeljku prezentirat cemo rezultate klasi cne teorije perturbacije po normi linearnih sustava, ali i modernije perturbacije po komponentama. Pitanje na koje odgovaraju takve teorije perturbacije je koliko se (po normi) rje senje linearnog sustava (5.1.1) promijeni ako se po normi/po komponentama malo promijene A, b ili oba. Da bismo izbjegli pisanje indeksa normi, sve norme koje cemo u ovom poglavlju koristiti bit ce konzistentne matri cne norme i njima odgovaraju ce vektorske norme (na primjer, p-norme). Pretpostavimo da, umjesto sustava (5.1.1), egzaktno rje savamo sustav (A + A)(x + x) = b, (5.4.1)

tj. samo je matrica sustava malo perturbirana. Mo zemo pretpostaviti da je norma perturbacije mala prema normi polazne matrice A A . Zbog toga, umjesto x, dobili smo rje senje x + x. Raspi simo (5.4.1) i iskoristimo (5.1.1). Izlazi A x + A (x + x) = 0.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 55

Mno zenjem slijeva s A1 i sredivanjem dobivamo x = A1 A (x + x). Uzimanjem norme lijeve i desne strane, a zatim ocjenjivanjem odozgo, dobivamo x A1 A x + x A1 (A) ( x + x ), A x + x

pri cemu je (A) = A A1 standardna oznaka za uvjetovanost matrice A. Premje stanjem na lijevu stranu svih pribrojnika koji sadr ze x dobivamo (1 (A)) x (A) x . Ako je (A) < 1, a to zna ci i A x A1 < 1, onda je (A) x , 1 (A) (5.4.2)

sto pokazuje da je pogre ska u rje senju pribli zno proporcionalna uvjetovanosti matrice A. Pretpostavimo sad da, umjesto sustava (5.1.1), egzaktno rje savamo sustav A(x + x) = b + b, (5.4.3)

tj. samo je desna strana sustava malo perturbirana. Mo zemo pretpostaviti da je norma perturbacije mala prema normi vektora b b b . Zbog te pertutrbacije, umjesto x, dobili smo rje senje x + x. Raspi simo (5.4.3) i iskoristimo (5.1.1). Izlazi A x = b. Mno zenjem slijeva s A1 dobivamo x = A1 b. Uzimanjem norme lijeve i desne strane, a zatim ocjenjivanjem odozgo, dobivamo x A1 b A1 b A1 A1 A x (A) x , Ax

sto pokazuje da je pogre ska u rje senju, ponovno, proporcionalna uvjetovanosti matrice A. Ako se istovremeno perturbiraju A i b, mo zemo prethodna dva pojedina cna rezultata udru ziti u sljede ci teorem.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 56

Teorem 5.4.1. Neka je Ax = b i (A + A) (x + x) = b + b, (5.4.4)

Ova ocjena se mo ze dosti ci barem probli zno, do prvog reda veli cine u .

gdje je A E , b f , i neka je A1 E < 1. Tada za x = 0 vrijedi A1 f x + A1 E . (5.4.5) x 1 A1 E x

Dokaz: Ocjena (5.4.5) slijedi ako od lijeve i desne strane (5.4.4) oduzmemo (5.1.1) i dobijemo A x = b A x A x. Mno zenjem s A1 slijeva, a zatim kori stenjem svojstva normi lako pokazujemo da vrijedi (5.4.5). Poka zite, ako je x = 0, onda se (5.4.5) svodi na apsolutni oblik x A1 f . 1 A1 E

Ocjena se skoro dosti ze za A = E x wv T i b = f w , gdje je w = 1, A1 w = A1 , a v je vektor dualan vektoru x, tj. vrijedi v T x = 1. Primijetite da je u pro slom teoremu oblik ocjene za normu perturbacija polaznih podataka poop cen u sljede cem smislu. U prethodnim ocjenama koristili smo relativni oblik perturbacije, poput A A , a ovdje smo dozvolili da je norma perturbacije manja ili jednaka normi neke proizvoljne matrice pogre ske. Sli cno vrijedi i za normu perturbacije vektora b. Ako u teorem 5.4.1. ipak uvrstimo prirodne ograde, tj. ako uzmemo E = A i f = b, onda se ocjena (5.4.5) mo ze pojednostavniti. Ovom op cenitijem obliku mjerenja perturbacija mo zemo pridru ziti sljede ci broj uvjetovanosti po normi E,f (A, x) := lim sup
0

x x

(A + A) (x + x) = b + b, A E , b f .

Budu ci da je ocjena s desne strane u (5.4.5) o stra (ne mo ze se popraviti, jer je skoro dosti zna), onda je ova uvjetovanost problema po normi jednaka izrazu u zagradama s desne strane (5.4.5), tj. vrijedi A1 f E,f (A, x) := + A1 x E .

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 57

Za izbor E = A, f = b, vrijedi da je (poka zite to!) (A) E,f (A, x) 2(A). Uvr stavanjem te ocjene u relaciju (5.4.5), dobit cemo ne sto lo siju ocjenu od ranije x 2 (A) . x 1 (A) U usporedbi s (5.4.2), ova ocjena je lo sija za faktor 2, ali uklju cuje perturbacije od A i b, a ne samo od A. Sli can rezultat mo zemo dobiti kombiniraju ci ranije ocjene, tako da x rastavimo u zbroj dva dijela. Jedan je posljedica perturbacije matrice A, a drugi nastaje zbog perturbacije vektora b. Kako izgleda takva ocjena? Sve prethodne ocjene su, zapravo, bile ocjene gre ske unaprijed. Kako izgleda ocjena gre ske unazad? Teorem 5.4.2. (Rigal i Gaches) Gre ska unatrag po normi denira se kao E,f (x+x) := min{ (A+A) (x+x) = b+b, A E , b f }. Gre ska E,f (x + x) mo ze se dosti ci i jednaka je E,f (x + x) = pri cemu je r = b A (x + x). Dokaz: Dokaz relacije (5.4.6) se provodi u dva koraka. Prvi je pokazati da vrijedi E,f (x + x) E r , x + x + f E r , x + x + f (5.4.6)

a drugi da postoji takva perturbacija da se ocjena dostigne. Premjestimo li clanove lijeve i desne strane jednakosti (A + A) (x + x) = b + b, dobivamo r = A (x + x) b. Primjenom norme s obje strane te uvr stavanjem ocjena, dobivamo r = A (x + x) b A ( E x + x + f ). x + x + b

Dijeljenjem lijeve i desne strane s E x + x + f , dobivamo tra zenu relaciju. Ostaje jo s pokazati da se donja ograda mo ze dosti ci.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 58

Donja se ograda dosti ze za Amin = E x + x rz T , E x + x + f bmin = E f r, x + x + f

pri cemu je vektor z dualan vektoru x + x, tj. z T (x + x) = 1. Vrijednost r := b A (x + x) zovemo (egzaktni) rezidual pribli znog rje senja x + x. Naravno, rezidual pravog rje senja x je nula. Intuitivno o cekujemo da je vektor koji daje mali rezidual (recimo, po normi) ujedno i dobro pribli zno rje senje sustava. Prethodni teorem precizno opravdava to o cekivanje. Vrlo cesto je ovakva ocjena osjetljivosti linearnog sustava po normi pregruba i daje izuzetno pesimisti cne ocjene to cnosti izra cunatog rje senja u aritmetici ra cunala. Za dobivanje boljih ocjena trebamo analizu po komponentama. Poka zimo dva teorema koja su u komponentnom smislu ekvivalentna prethodnim. U komponentnim ocjenama standardno pretpostavljamo da E i f imaju nenegativne elemente, tj. da vrijedi |E | = E i |f | = f . Teorem 5.4.3. Neka je Ax = b i (A + A) (x + x) = b + b, gdje je |A| E i |b| f . Takoder, pretpostavimo da je |A1| E < 1, gdje je neka apsolutna norma. Za x = 0 vrijedi x x 1 |A1| E |A1| E |x| + |A1 | f , x (5.4.7)

a za -normu se ocjena mo ze dosti ci barem pribli zno, do prvog reda veli cine u . Dokaz: Prvi dio dokaza sli can je dokazu teorema 5.4.1. i slijedi iz iste jednakosti A x = b A x A x. U -normi se ocjena pribli zno dosti ze stavljanjem A = D1 ED2 , b = D1 f , gdje su D2 = diag(sign(xi )), D1 = diag(j ), j = sign(A1 )kj i |A1 | E |x| + |A1 | f

= (|A1 | E |x| + |A1 | f )k ,

Ovakvim komponentnim perturbacijama od A i b, koje su ograni cene s E , f i faktorom , odgovara broj uvjetovanosti, mjeren u -normi za x, deniran sa condE,f (A, x) := lim sup
0

tj. k je indeks komponente na kojoj se dosti ze -norma lijeve strane.

x x

(A + A) (x + x) = b + b, |A| E, |b| f .

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 59

Prethodni teorem pokazuje da je ta uvjetovanost u -normi jednaka condE,f (A, x) = |A1| E |x| + |A1 | f x

jer se ocjena (5.4.7) dosti ze do prvog reda veli cine u , tj. na limesu 0 ostaje upravo drugi faktor na desnoj strani (5.4.7). Ako za E i f uzmemo prirodne vrijednosti E = |A| i f = |b|, obi cno se koristi tzv. Skeelov broj uvjetovanosti cond(A, x) := |A1| |A| |x| x

koji se od cond|A|,|b|(A, x) razlikuje najvi se za faktor 2. Dozvolimo li da se x mijenja, pa uzmemo maksimum medu svim takvim uvjetovanostima, dobivamo uvjetovanost cond(A) koja ovisi samo o A cond(A, x) |A1| |A|

:= cond(A) = BS, (A),

s tim da se jednakost u -normi dost ze za x = e := (1, . . . , 1)T . Ovo je poznata BauerSkeelova uvjetovanost matrice A, u ovom slu caju, generirana -normom. Ta komponentna uvjetovanost mo ze biti generirana i bilo kojom drugom matri cnom normom BS (A) := |A1 | |A| . I teorem 5.4.2. mo ze se napisati u komponentnom obliku ako deniramo komponentnu gre sku unatrag s E,f (x + x) := min{ (A + A) (x + x) = b + b, |A| E, |b| f }. Teorem 5.4.4. (Oettli i Prager) Gre ska unatrag po komponentama jednaka je E,f (x + x) := max
i

| ri | , (E |x + x| + |f |)i

(5.4.8)

gdje je r = b A (x + x). Mogu ce dijeljenje s 0 interpretira se na sljede ci na cin: /0 jednako je 0, ako je = 0, a ina ce je . Dokaz: Ponovno, lako je dokazati da je desna strana relacije (5.4.8) donja ograda za E,f (x + x). Ta donja ograda se dosti ze za A = D1 ED2 , b = D1 f , gdje su D1 = diag ri , (E |x + x| + |f |)i D2 = diag(sign(x + x)i ).

U prethodnim teoremima i ocjenama nismo precizno navodili kojim prostorima pripadaju pojedini objekti, posebno A i b. Pa zljivijim pogledom lako je ustanoviti da sve vrijedi i u realnom i u kompleksnom slu caju.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 60

5.5.

Gre ske zaokru zivanja kod rje savanja trokutastog linearnog sustava

Kao sto smo vidjeli, nala zenje rje senja op ceg linearnog sustava na kraju se svede na rje savanje trokutastog linearnog sustava. Osim LR faktorizacije, koju smo ve c upoznali, i druge faktorizacije (koje cemo tek upoznati), kao sto su QR faktorizacija ili faktorizacija Choleskog, vode na trokutaste linearne sustave, pa cemo njihovo rje savanje analizirati neovisno o nastanku. Neka je T trokutasta matrica (ako eksplicitno ne ka zemo, mo ze biti gornjetrokutasta ili donjetrokutasta). Na s cilj je analizirali to cnost rje senja linearnog sustava Tx = b supstitucijom unaprijed/unazad, kad ra cunanje provodimo u aritmetici pomi cnog zareza, tj. ra cunalom. Zbog toga pretpostavljamo da ra cunanje radimo u realnoj aritmetici, tj. da su svi objekti realni. Svi daljnji rezultati mogu se pro siriti i na kompleksni slu caj, ali dobivene konstante u ocjenama ne ce biti iste i ovise o tome kako se kompleksne aritmeti cke operacije realiziraju putem realnih. Za po cetak, bez smanjenja op cenitosti, mo zemo pretpostaviti da je linearni sustav gornjetrokutasti, tj. da vr simo supstituciju unazad. Varijablu xi nalazimo kao n 1 xi = bi tij xj , (5.5.1) tii j =i+1 sto daje komponente vektora x u poretku od zadnje prema prvoj. Da bismo precizno mogli analizirati gre ske zaokru zivanja u prethodnoj relaciji, potrebno je znati to can algoritam kako se ona izvrednjava. Recimo, sljede ca dva odsje cka k oda, koja oba ra cunaju (5.5.1), ne moraju imati iste gre ske zaokru zivanja. 1. k od for i := n downto 1 do begin sum := 0.0; for j := i + 1 to n do sum := sum + T [i, j ] x[j ]; x[i] := (b[i] sum )/T [i, i]; end; 2. k od x[n] := b[n]/T [n, n]; for i := n 1 downto 1 do begin sum := b[i]; for j := i + 1 to n do sum := sum T [i, j ] x[j ]; x[i] := sum /T [i, i]; end;

Za sto? Osnovne aritmeti cke operacije su binarne. Da bismo izra cunali xi iz relacije (5.5.1), desnu stranu treba svesti na niz binarnih operacija u nekom poretku. Matemati cki gledano, u egzaktnoj aritmetici, to mo zemo napraviti na mnogo ekvivalentnih na cina u smislu da svi daju isti rezultat, koriste ci asocijativnost, pa cak

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 61

i komutativnost zbrajanja. Medutim, zbrajanje u aritmetici ra cunala vi se nije asocijativno, pa egzaktno ekvivalentni algoritmi ne moraju dati iste rezultate. Poredak operacija postaje bitan. Ako bolje pogledamo, u 1. k odu prvo ra cunamo cijelu sumu iz (5.5.1) u prirodnom poretku indeksa, a zatim ju oduzmemo od bi i na kraju dijelimo s tii . U 2. k odu, od bi redom oduzimamo clan po clan te sume, u istom poretku indeksa. U praksi se, obi cno, koristi 2. varijanta, bar za sekvencijalno ra cunanje. Motivacija je bazirana na promatranju kra cenja. Pretpostavimo da je |tii xi | |bi |. To zna ci da negdje u algoritmu mora do ci do kra cenja u ra cunanju izraza u zagradi, prije zavr snog dijeljenja. U 1. k odu, cijelo to kra cenje se dogada na samom kraju, u operaciji b[i] sum . Tj. odjednom se skrati puno znamenki, sto mo ze rezultirati velikim gubitkom to cnosti. Za razliku od toga, u 2. k odu oduzimamo clan po clan. Ako su clanovi sume podjednakih veli cina, kra cenje ide malopomalo, a ne odjednom. U ve cini slu cajeva to daje bolji rezultat. Za algoritamsku realizaciju, pedantnije je relaciju (5.5.1) napisati u obliku
n

xi = bi

tij xj
j =i+1

tii .

(5.5.2)

Naime, u algoritmu ne ra cunamo prvo inverz 1/tii , pa onda zagradu mno zimo s njim, nego zagradu dijelimo s tii . Ovom u stedom jedne aritmeti cke operacije (mno zenja), osim ubrzanja, dobivamo i manju gre sku zaokru zivanja. Potpuno analogno mo zemo napisati i algoritam za supstituciju unaprijed koja rje sava linearni sustav s donjetrokutastom matricom T . Zelimo da na sa analiza bude primjenjiva na oba trokutasta sustava Ly = b i Rx = y koja dolaze iz LR faktorizacije, pa treba voditi ra cuna o tome da za T = L nema dijeljenja u pripadnoj rekurziji (ii = 1). Kako cemo napraviti analizu gre saka zaokru zivanja? Da bismo si olak sali indeksiranje, napi simo izraz ekvivalentan jednom koraku rekurzije (5.5.2), samo unaprijed, i analizirajmo ga. Dakle, ra cunamo
k 1

y = c

ai bi
i=1

bk .

(5.5.3)

Na prvi pogled, cini se da poku savamo varati u zaklju cku. Naime, u (5.5.2) imamo rekurziju, tj. komponente xi koje ra cunamo ovise jedna o drugoj (jer se i mijenja). Naprotiv, u relaciji (5.5.3) se takva medusobna ovisnost ne vidi! Svi podaci, a to su c, ai , bi i bk , mogu biti i to cni. Ako zelimo pravu vezu izmedu tih dviju relacija, trebalo bi dozvoliti da, recimo, ai glume xi i ulaze u ra cun s nekom gre skom obzirom na prave, kao ranije izra cunati objekti. Ali, . . . prijevare nema. Sve ovisi o tome koju vrstu analize gre saka zaokru zivanja radimo. Kad bismo radili analizu unaprijed, prethodna primjedba bi bila

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 62

potpuno na mjestu. Medutim, u obratnoj analizi, a nju cemo napraviti, mo zemo (barem donekle) birati kojim objektima dozvoljavamo ili pripisujemo perturbacije ekvivalentne gre skama zaokru zivanja. Stvarni izra cunati rezultat rekurzije (5.5.2) su neki brojevi xi , komponente izra cunatog rje senja x polaznog linearnog sustava T x = b. Naravno, op cenito ne onda vrijedi za x? Mo vrijedi T x = b. Sto zemo birati oblik sustava cije egzaktno rje senje je x. Uzmimo da perturbacije dozvoljavamo samo u matrici T , a vektor b je ksan. Dakle, izra cunati x interpretiramo kao egzaktno rje senje perturbiranog linearnog sustava (T + T ) x = b i tra zimo odgovor na pitanje: koliko veliku perturbaciju T treba napraviti u matrici T da, u egzaktnoj aritmetici kao rje senje sustava (s ksnim b), dobijemo izra cunati vektor x. Obratnom analizom tra zimo ocjenu veli cine te perturbacije T obzirom na T . Naravno, zelimo sto manji T , tj. sto bolju ocjenu. Trenutno nas uop ce ne zanima koliko je to cna aproksimacija x, odnosno ocjena za x = x x. To prepu stamo analizi unaprijed za cijeli problem, koji mo ze uklju civati i prethodno ra cunanje matrice T i vektora b. Za sto smo onda ksirali b? Upravo zato da mo zemo iskoristiti relaciju (5.5.3) za pojednostavljenje analize. Sjetimo se, nakon LR faktorizacije, rje savamo dva sustava Ly = b i Rx = y . U prvom je b ulazni podatak i mo zemo ga smatrati ksnim, do na polaznu gre sku zaokru zivanja spremanjem u ra cunalo. Tu gre sku mo zemo, takoder, prepustiti nalnoj analizi unaprijed. Medutim, u drugom sustavu je desna strana prethodno izra cunato rje senje y , ili preciznije, y . Ocjena perturbacije te desne strane, kad bismo to dozvolili, izlazi analizom unaprijed za prethodni problem. A to jo s nemamo, i zelimo izbje ci, ako je to mogu ce. Osim toga, spremljeni b i izra cunati y su stvarne desne strane ovih sustava kad ra cunamo rje senja (a pravi y nemamo). Ako sad usporedimo (5.5.2) i (5.5.3)
n k 1

xi = bi

tij xj
j =i+1

tii ,

y = c

ai bi
i=1

bk ,

mo zemo uzeti da komponenta bi vektora b iz prve relacije odgovara broju c u drugoj relaciji i obje veli cine se ne perturbiraju. Analogno, xi odgovara y i ne perturbiraju se. Onda mo zemo uzeti da xj odgovara broju ai (uz odgovaraju cu vezu indeksa j , i), opet bez perturbacija (jer ne diramo ranije izra cunate komponente od x). Na kraju, tij , tii , odgovaraju brojevima bi , bk , respekitvno, i samo oni se perturbiraju. Dakle, imamo korektnu vezu ovih dviju relacija, bez prevare. Ostaje jo s pokazati da se obratna analiza relacije (5.5.3) mo ze provesti uz prethodno opisano ograni cenje na perturbacije pojedinih veli cina u njoj.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 63

Lema 5.5.1. Izraz (5.5.3) za y ra cunamo u aritmetici pomi cnog zareza sljede cim odsje ckom k oda s := c; for i := 1 to k 1 do s := s a[i] b[i]; y := s/b[k ]; uz pretpostavku sekvencijalnog izvr savanja petlje. Izra cunati y onda zadovoljava
k 1

y bk (1 + k ) = c pri cemu je |i | i :=

ai bi (1 + i ),
i=1

iu . 1 iu

Dokaz: Ozna cimo s kapicom vrijednosti izra cunate u aritmetici pomi cnog zareza. Stanja varijable s parametriziramo indeksom i petlje. Neka je s0 stanje varijable s prije po cetka petlje, a si izra cunata vrijednost od s nakon i-tog prolaza kroz petlju. Na samom po cetku algoritma je s0 = c, jer je c ve c spremljen, pa uzimamo da je egzaktno prikaziv, tj. nema gre ske zaokru zivanja pri dodjeljivanju ili kopiranju vrijednosti. Analogno, vrijednosti ai , bi i bk , c spremljene u memoriji ra cunala. takoder, smatramo egzaktnim, jer su ve Kako dalje? Za svaku pojedinu aritmeti cku operaciju koristimo standardni model (2.6.2) aritmetike ra cunala. Podsjetimo, za izra cunati rezultat operacije x y nad prikazivim, ve c spremljenim operandima x i y vrijedi f (x y ) = (1 + ) (x y ), || u, (5.5.4)

uz uvjet da je x y u dozvoljenom rasponu, gdje je u jedini cna gre ska zaokru zivanja u odabranoj to cnosti ra cunanja. Mo ze se pokazati da za osnovnu gre sku zaokru zivanja, osim (2.6.1), vrijedi i f (x) = x , 1+ || u,

ako je x u dozvoljenom (prikazivom) rasponu brojeva. Posljedica toga je da vrijedi i sljede ca modikacija (5.5.4) f (x y ) = ako je x y u dozvoljenom rasponu. xy , 1+ || u, (5.5.5)

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 64

U svim ovakvim analizama gre saka zaokru zivanja, standardno pretpostavljamo da su svi medurezultati u dozvoljenom rasponu prikazivih brojeva, tako da za svaku pojedinu operaciju mo zemo koristiti jednu od prethodne dvije relacije, kako nam odgovara. U svakom koraku petlje imamo dvije operacije mno zenje i oduzimanje, i to tim redom, zbog prioriteta aritmeti ckih operacija. Prema (5.5.4), za izra cunate vrijednosti vrijedi si = f (si1 ai bi ) = (1 + i ) (si1 (1 + i ) ai bi ), i = 1, . . . , k 1 ,

gdje i ozna cava gre sku prilikom mno zenja, a i gre sku prilikom oduzimanja. Po pretpostavci modela, za te gre ske vrijedi |i | u, |i| u.

Na kraju algoritma, umjesto y , posljednje dijeljenje izra cuna y i prema (5.5.5) vrijedi sk 1 sk 1 = , y = f bk bk (1 + k )

Jo s moramo pokupiti sve prethodne gre ske. Za izra cunate vrijednosti si varijable s nakon svakog od k 1 koraka petlje, supstitucijom unaprijed dobivamo s1 = (1 + 1 ) (c (1 + 1 ) a1 b1 ) = (1 + 1 ) c (1 + 1 ) (1 + 1 ) a1 b1 ,

uz |k | u.

= sk 1 = c

s2 = (1 + 2 ) (s1 (1 + 2 ) a2 b2 ) = (1 + 1 ) (1 + 2 ) c (1 + 1 ) (1 + 2 ) (1 + 1 ) a1 b1 (1 + 2 ) (1 + 2 ) a2 b2 ,
k 1 i=1 k 1 i=1 k 1

(1 + i )

ai bi (1 + i )

(1 + j ).
j =i

Relaciju za y mo zemo napisati u obliku y bk (1 + k ) = sk1. Kad uvrstimo sk1 izlazi


k 1 k 1 i=1 k 1

y bk (1 + k ) = c
i=1

(1 + i )

ai bi (1 + i )

(1 + j ).
j =i

Ova relacija, medutim, jo s uvijek nema zeljeni oblik. Faktor uz c odgovara nekoj relativnoj perturbaciji od c, a to ne zelimo, jer se c ne perturbira. Kad podijelimo

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 65

cijelu relaciju s faktorom uz c, dobivamo y bk 1 + k


k 1 k 1

(1 + i )
i=1

=c

i=1

ai bi

1 + i
i1

(1 + j )
j =1

sto ima tra zeni oblik, jer sve perturbacione faktore mo zemo interpretirati kao perturbacije bi -ova, uklju cuju ci bk , dok y , c i ai ostaju neperturbirani. Faktore uz bi napi semo u obliku (1 + i ), za i = 1, . . . , k . Vidimo da se svaki takav faktor (1 + i ) sastoji od to cno i faktora oblika (1 + ) ili 1/(1 + ), uz | | u. Ostaje jo s samo pokazati da je tada |i | iu , 1 iu i = 1, . . . , k.

Taj rezultat je direktna posljedica sljede ce leme. Usput, vidimo da smo dokaz mogli provesti i bez (5.5.5), koriste ci samo (5.5.4). U obratnoj analizi gre saka zaokru zivanja stalno se pojavljuju produkti faktora istog oblika kao u prethodnom dokazu. U literaturi postoji nekoliko standardnih na cina za njihovo pojednostavljenje i ocjenu. Relativno jednostavan i elegantan je sljede ci na cin. Lema 5.5.2. Neka je u > 0 realni broj i n N takav da vrijedi nu < 1. Ako je |i | u i pi {1, 1}, za i = 1, . . . , n, onda vrijedi
n

(1 + i )pi = 1 + n , nu . 1 nu

(5.5.6)

i=1

uz ocjenu |n | n :=

Dokaz: Dokaz se provodi indukcijom po n. Za n = 1, pretpostavimo da je u < 1. Ako je p1 = 1, onda je 1 = 1 , pa je |1 | u u . 1u

Ako je p1 = 1, onda je 1 + 1 1 u > 0. Iz 1 + 1 = 1/(1 + 1 ) je 1 = odakle slijedi ocjena |1 | = |1 | u . 1 + 1 1u 1 1 1= , 1 + 1 1 + 1

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 66

Pretpostavimo da tvrdnja vrijedi za neki n N. Ako produkt n + 1 faktora napi semo u obliku
n+1

Op cenito, iz nu < 1 slijedi u < 1, pa je lijeva strana relacije (5.5.6) produkt pozitivnih faktora, a n je dobro deniran i vrijedi n > 1.

1 + n+1 =
i=1

(1 + i ) =

pi

i=1

(1 + i )pi (1 + n+1 )pn+1 = (1 + n )(1 + n+1 )pn+1 ,

onda mo zemo koristiti pretpostavku indukcije za n . Za pn+1 = 1 dobivamo n+1 = n + n+1 + n n+1 pa je (relacija trokuta) |n+1 | nu nu2 (n + 1)u (n + 1)u +u+ = < , 1 nu 1 nu 1 nu 1 (n + 1)u

s tim da koristimo (n + 1)u < 1. Za pn+1 = 1 dobivamo n+1 = pa je |n+1 | |n | + |n+1 | . 1 + n+1 1 + n n n+1 1= , 1 + n+1 1 + n+1

Iz pretpostavke indukcije i 1 + n+1 1 u > 0 slijedi nu +u (n + 1)u nu2 (n + 1)u |n+1 | 1 nu = < , 1u 1 (n + 1)u + nu2 1 (n + 1)u uz (n + 1)u < 1. Dakle, tvrdnja vrijedi i za n + 1. Sljede ci teorem daje obratnu gre sku zaokru zivanja kod povratne supstitucije, kad se koristi 2. k od za ra cunanje (5.5.2). Teorem 5.5.1. Rje senje x gornjetrokutastog sustava T x = b, izra cunato u aritmetici pomi cnog zareza 2. k odom, mo zemo interpretirati kao egzaktno rje senje gornjetrokutastog sustava (T + T ) x = b, gdje je |tij | ni+1 |tii |, za i = j , |ij | |tij |, za i = j .

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 67

Dokaz: Tvrdnja izlazi iz prethodne dvije leme i veze izmedu (5.5.2) i (5.5.3). Analogno se mo ze dobiti rezultat za donjetrokutasti sustav, uz odgovaraju cu promjenu indeksa, zbog supstitucije unaprijed. Osim toga, perturbacije dijagonalnih elementa imaju jedan faktor manje, jer nema zadnjeg dijeljenja. Medutim, taj rezultat ne cemo posebno navesti, jer, kao i prethodni, strogo ovisi o poretku aritmeti ckih operacija, tj. redosljedu zbrajanja ili oduzimanja clanova odgovaraju ce sume. Ako ne zelimo striktno ksirati poredak operacija u relaciji (5.5.3), onda vrijedi sljede ca lema. Lema 5.5.3. Izraz (5.5.3) za y
k 1

y = c

ai bi
i=1

bk

ra cunamo u aritmetici pomi cnog zareza. Bez obzira na poredak operacija, tj. redosljed zbrajanja ili oduzimanja u sumi u zagradi, izra cunati y zadovoljava y bk (1 + k ) = c
(i) (0) k 1 i=1

ai bi (1 + k ),

(i)

pri cemu je |k | k za sve i. Ako je bk = 1, tako da nema dijeljenja, onda je (i) |k | k1 za sve i. Dokaz: Dokaz bi i sao istim putem kao i dokaz leme 5.5.1., ali ga nije lako formalno korektno zapisati jer moramo uzeti u obzir bilo koji poredak operacija. S druge strane, sasvim je jednostavno zaklju citi da bilo koji bi , za i = 1, . . . , k 1, sudjeluje u to cno jednom mno zenju i najvi se k 1 zbrajanja ili oduzimanja, jer ukupno imamo k 1 aditivnih operacija u zagradi. Pripadna perturbacija ima najvi se k osnovnih faktora, od kojih se barem jedan skrati kad podijelimo s faktorom uz c. Iz (i) leme 5.5.2. onda slijedi |k | k1, za i = 1, . . . , k 1. Sli can argument vrijedi i za perturbaciju uz bk , s tim da treba dodati jedan faktor ako ima dijeljenja. Ako se koristi bilo koji poredak ra cunanja u teoremu 5.5.1., dolazi samo do promjene konstanti u ogradama. Obi cno se koristi sljede ca uniformna ocjena. Teorem 5.5.2. Neka je T Rnn regularna trokutasta matrica reda n. Ako rje senje sustava T x = b ra cunamo u aritmetici pomi cnog zareza supstitucijom (unaprijed ili unatrag), za izra cunato rje senje x vrijedi (T + T ) x = b, |T | n |T |.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 68

Dokaz: Iskoristimo vezu izmedu (5.5.3) i algoritma supstitucije unatrag ili unaprijed, zatim primijenimo lemu 5.5.3. i uo cimo da je k n za sve komponente rje senja sustava. Detalje mo zete na ci u dokazu sljede ceg teorema. Za trokutaste sustave koje dobivamo iz LR faktorizacije, katkad je zgodno imati ne sto preciznije ocjene po recima. Teorem 5.5.3. Neka su L i R trokutasti faktori iz LR faktorizacije neke regularne matrice A Rnn . Neka su y i x izra cunata rje senja linearnih sustava Ly = b i Rx = y , dobivena algoritmom supstitucije u aritmetici pomi cnog zareza. Onda vrijedi (L + L) y = b, (R + R) x = y, uz ocjene |L| diag(0 , 1 , . . . , n1 ) |L|, |R| diag(n , n1 , . . . , 1) |R|, za bilo koji poredak operacija u ra cunanju svake pojedine komponente od y i x. Dokaz: Rje senje sustava Ly = b ra cunamo supstitucijom unaprijed
i1

yi = bi

ij yj ,
j =1

i = 1, . . . , n,

ne vode ci ra cuna o poretku operacija na desnoj strani. Za primjenu leme 5.5.3. na yi , usporedbom s (5.5.3), zaklju cujemo da treba uzeti k = i. Osim toga, L ima jedinice na dijagonali pa nema dijeljenja. Za izra cunatu komponentu yi dobivamo ocjenu gre ske s faktorom i1 uz elemente i-tog retka matrice L. Na kraju, faktore uz retke najlak se je zapisati u obliku produkta s dijagonalnom matricom tih faktora kao prvim (lijevim) clanom. Analogno, rje senje sustava Rx = y ra cunamo supstitucijom unatrag
n

xi = yi

rij xj
j =i+1

rii ,

i = n, . . . , 1.

koriste ci izra cunate vrijednosti yi umjesto (nepoznatih) pravih, ne vode ci ra cuna o poretku operacija na desnoj strani. Usporedbom s (5.5.3), uz translaciju indeksa tako da suma po cinje od 1, zaklju cujemo da za xi treba uzeti k = n i + 1. U ovom slu caju imamo dijeljenja, pa za izra cunatu komponentu xi dobivamo ocjenu gre ske s faktorom ni+1 uz elemente i-tog retka matrice R. U dokazu koristimo samo sekvencijalni poredak ra cunanja pojedinih komponenti rje senja (unaprijed ili unatrag), a poredak operacija za ra cunanje svake pojedine komponente nije bitan. Ovim pristupom dobivamo op cenitost rezultata i ocjena

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 69

gre saka, sto nam omogu cava njihovu primjenu na razne algoritme, ne vode ci ra cuna o redoslijedu izvr savanja operacija u algoritmu. Stvarna gre ska, naravno, ovisi o poretku operacija u konkretnom algoritmu. Za odredene podatke, ta ovisnost ne mora biti mala, sto se lijepo mo ze vidjeti iz primjera za zbrajanje ra cunalom. Napomenimo da u prethodnom teoremu nije bitno da li su matrice L i R egzaktne ili izra cunate iz A, sve dok ih mo zemo interpretirati kao egzaktne faktore u LR faktorizaciji neke regularne matrice (A ili perturbirane A + A). Ovi rezultati ka zu da izra cunato rje senje x trokutastog linearnog sustava ima malu obratnu relativnu gre sku po komponentama. Drugim rije cima, obratna gre ska je skoro toliko mala koliko smijemo o cekivati puno bolje ne treba niti tra ziti!

5.6.

Gre ska unaprijed za trokutasti sustav

Sljede ci korak je procjena gre ske unaprijed. U toj analizi, cilj nam je pokazati sljede ce: isplati se raditi analizu po komponentama;

parcijalno i potpuno pivotiranje u LR faktorizaciji se isplati, jer daje bolje ocjene gre saka; pivotiranje treba koristiti i u drugim faktorizacijama, da se dobiju sto bolji trokutasti faktori. Analizu provodimo za op ce trokutaste sustave, bez obzira na porijeklo i detaljni algoritam rje savanja, pa koristimo teorem 5.5.2. za ocjenu gre ske unatrag. Teorem 5.5.3. daje ne sto bolje ocjene za algoritam supstitucije, ali ih je te ze zapisati. Obratnu analizu gre saka zaokru zivanja proveli smo tako da se samo matrica sustava perturbira, a ne i vektor desne strane. To koristimo u teoremima perturbacije koji daju gre sku unaprijed tako da uzmemo f = 0. Teorem 5.5.2. daje ocjenu perturbacije T po komponentama. Zbog toga koristimo teorem 5.4.3., s tim da za E mo zemo uzeti da je E = |T | i = n . Tako iz (5.4.7) dobivamo ocjenu relativne gre ske unaprijed za izra cunati x = x x. Primijetimo jo s, kad uzmemo E = |T | i f = 0, za Skeelov broj uvjetovanosti vrijedi cond(T, x) = cond|T |,0(T, x), pa u -normi ocjena glasi x n cond(T, x) , x 1 n cond(T ) gdje je cond(T, x) = |T 1| |T | |x| x

cond(T ) = BS, (T ) = |T 1| |T |

uz pretpostavku da je n cond(T ) < 1.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 70

Ova ocjena mo ze biti proizvoljno bolja od odgovaraju ce ocjene koja sadr zi standardni broj uvjetovanosti po normi (T ) = T 1

Osnovni razlog za to smo ve c opisali norma vidi samo velike elemente. Za trokutaste sustave mo ze se na ci jo s detaljnije opravdanje. Klasi cni broj uvjetovanosti (T ) mo ze biti velik iz dva razloga: veli cina dijagonalnih elemenata,

veliki vandijagonalni elementi u relativnom smislu, obzirom na pripadni dijagonalni element u odgovaraju cem retku. Lako se vidi da je komponentni broj uvjetovanosti cond(T, x) invarijantan na tzv. skaliranje redaka, tj. na mno zenje sprijeda bilo kojom regularnom dijagonalnom matricom D , jer je cond(DT, x) = cond(T, x). Zbog toga, veli cina dijagonalnih elemenata ne igra ulogu i cond(T, x) mo ze biti velik samo iz drugog razloga. Unato c tomu, cond(T, x) mo ze biti po volji velik. Primjer za to je familija gornjih trokutastih matrica R() s elementima R() = (rij ), Za inverze vrijedi (R()1 )ij = 1, za i = j , j i1 (1 + ) , za i < j . rij = 1, za i = j , , za i < j .

Ako uzmemo x = e := (1, . . . , 1)T , onda je cond(R(), e) = cond(R()) 2n1 , kad .

Dakle, ne vrijedi zaklju cak da sve trokutaste linearne sustave mo zemo rije siti s visokom to cno s cu! S druge strane, za svaku trokutastu matricu T postoji bar jedan sustav za koji dobivamo visoku to cnost. Ako je T gornja trokutasta, to je sustav T x = e1 , a ako je T donja trokutasta, to je sustav T x = en . U oba slu caja je cond(T, x) = 1, a rje senje se svodi na jedno ra cunanje recipro cne vrijednosti, u zadnjem koraku supstitucije. Naravno, sli cno vrijedi i za skalarni vi sekratnik takve desne strane. Prirodno je pitanje da li za neke trokutaste sustave mo zemo dobiti i bolji rezultat. Posebno, za one koje dobivamo odredenim faktorizacijama s pivotiranjem. Odgovor je potvrdan, a iskazujemo ga za regularne gornje trokutaste matrice.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 71

Lema 5.6.1. Neka je R Rnn regularna gornje trokutasta matrica za koju vrijedi |rii | |rij |, za svaki j > i, (5.6.1)

tj. u svakom retku se najve ci element po apsolutnoj vrijednosti nalazi na dijagonali. Onda za jedini cnu gornju trokutastu matricu S = |R1 | |R| vrijedi sij 2j i, za svaki j > i. Dokaz: Neka je D = diag(rii ) i V = D 1 R. Onda je V jedini cna gornja trokutasta 1 matrica za koju vrijedi |vij | 1. Osim toga je S = |V | |V | (invarijantnost na skaliranje redaka). Iz V 1 V = I , lako se poka ze da za elemente inverza vrijedi ocjena |(V 1 )ij | 2j i1 , j > i. Za elemente sij matrice S , uz j > i, dobivamo
j j

sij =
k =i

| (V

)ik | |vkj | 1 +

k =i+1

2ki1 1 = 2j i .

Tvrdnja vrijedi i za i = j , s tim da vrijedi jednakost, jer je sii = 1. Tvrdnju Leme 5.6.1. mo zemo interpretirati i na sljede ci na cin. Ako matrica R zadovoljava (5.6.1), onda je komponentni broj uvjetovanosti cond(R) ograden odozgo za ksni n, neovisno o tome koliko je velik klasi cni broj uvjetovanosti (R). To cna vrijednost ove ocjene ovisi o normi kojom mjerimo cond(R). Na primjer, u -normi dobivamo cond(R) 2n 1.

Primijenimo ovaj rezultat na ocjenu gre ske unaprijed za izra cunato rje senje takvog sustava.

Teorem 5.6.1. Uz pretpostavke prethodne leme, za algoritmom supstitucije izra cunato rje senje x sustava Rx = b vrijedi |xi xi | 2ni+1 n max |xj |,
j i

i = 1, . . . , n.

Dokaz: Prema teoremu 5.5.2., za izra cunato rje senje vrijedi (R + R)x = b, uz ocjenu |R| n |R|. Onda je R(x x) = R x, odakle izlazi ocjena |x x| = |R1 R x| n |R1 | |R| |x|. Primjenom leme 5.6.1., uz S = |R1 | |R|, po komponentama dobivamo
n n

|xi xi | n

j =i

sij |xj | n max |xj |


j i

j =i

2j i = (2ni+1 1)n max |xj |,


j i

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 72

pa vode ci clan desne strane daje ocjenu iz tvrdnje. Preciznija ocjena nema prakti cnu vrijednost, jer nas zanima samo red veli cine pogre ske. Ocjena gre ske |xi xi | za komponente izra cunatog rje senja u teoremu 5.6.1. mo ze biti velika, ako je n velik, a i mali. Medutim, ona eksponencijalno pada s rastom i, sto zna ci da su donje komponente od x uvijek izra cunate s visokom relativnom to cno s cu obzirom na ve c izra cunate elemente. Analogoni leme 5.6.1. i teorema 5.6.1. vrijede za donje trokutaste matrice L koje zadovoljavaju |lii | |lij |, za svaki j < i. (5.6.2) tj. opet se u svakom retku najve ci element po apsolutnoj vrijednosti nalazi na dijagonali. Treba, medutim, uo citi da ako gornja trokutasta matrica R zadovoljava (5.6.1), onda donja trokutasta matrica RT ne mora zadovoljavati (5.6.2). Primjer za to je matrica 1 1 0 R= 0 , 0 0 1 za koju je 2 cond(RT ) = 1 + , T pa cond(R ) mo ze biti proizvoljno velik. Krivac je element r12 = 1 koji dominira svojim stupcem, tj. svojim retkom u RT , a nije na dijagonali. cond(R) = 5, Teorem 5.6.1. i analogni rezultat za donje trokutaste matrice mo zemo primijeniti na trokutaste sustave koje dobivamo raznim faktorizacijama ili postupcima eliminacije s pivotiranjem: donje trokutaste matrice iz Gaussovih eliminacija s parcijalnim ili potpunim pivotiranjem, gornje trokutaste matrice iz Gaussovih eliminacija s potpunim pivotiranjem, gornje trokutaste matrice iz faktorizacije Choleskog s potpunim pivotiranjem ili QR faktorizacije s pivotiranjem po stupcima (vidjeti sljede ce poglavlje). Dakle, pivotiranje se isplati. Kako se to vidi kod LR faktorizacije, odnosno Gaussovih eliminacija? Ranije smo pokazali da su elementi matrice L u LR faktorizaciji upravo multiplikatori u Gaussovim eliminacijama, tj. vrijedi lij = mij , za i > j . Osim toga, uz isto pivotiranje (matrica P ), na kraju dobivamo iste gornje trokutaste matrice R. Kod parcijalnog pivotiranja, pivotni element je po apsolutnoj vrijednosti najve ci u ostatku svog stupca (na dijagonali ili ispod nje). Zbog toga, kad ga dovedemo

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 73

na dijagonalu, u j -tom koraku eliminacije vrijedi |lij | 1 = ljj , za svaki i > j, j = 1, . . . , n 1 .

Na prvi pogled imamo zaklju cak da su dijagonalni elementi najve ci u svom stupcu, a ne retku. No, svi elementi u strogo donjem trokutu od L su ispod 1 po apsolutnoj vrijednosti, a to zna ci da su dijagonalni elementi najve ci i u svom retku! Dakle, za L vrijedi (5.6.2). Potpuno isto vrijedi i za potpuno pivotiranje. Tada je pivotni element apsolutno najve ci u cijelom ostatku matrice, pa to vrijedi i za ostatak njegovog stupca. S druge strane, on je apsolutno najve ci i u ostatku svog retka. Kad ga dovedemo na dijagonalu, pripadni redak je upravo novi redak matrice R, jer ga ostatak eliminacije ili faktorizacije vi se ne mijenja. Dakle, nakon i-tog koraka, za i-ti redak matrice R vrijedi (5.6.1). Napomena 5.6.1. Pa zljivijom analizom izgleda kao da nismo u potpunosti iskoristili sva svojstva parcijalnog i potpunog pivotiranja u smislu da bismo iste rezultate mogli dobili i ne sto slabijim varijantama pivotiranja. U oba slu caja, dobivena matrica L, osim (5.6.2), ima jo s neka svojstva, koja nismo iskoristili. Dijagonala dominira i stupcima i cijelim donjim trokutom, a mi koristimo samo dominaciju po recima. Medutim, L ima jedini cnu (konstantnu) dijagonalu, pa su sva ova svojstva dominacije ekvivalentna. Pivotiranje osigurava dominaciju po stupcima, pa i sve ostalo. Te sko bi bilo konstruirati algoritam pivotiranja koji direktno daje dominaciju dijagonale po recima, jer se L ra cuna stupac po stupac. Osim toga, to nema smisla, jer L ima jedini cnu dijagonalu, pa su dominacije ekvivalentne. Izlazi da smo maksimum u ostatku stupca u potpunosti iskoristili, barem za trokutasti sustav s matricom L. Za R ne vrijedi isti argument, jer R nema jedini cnu dijagonalu. Od potpunog pivotiranja iskoristili smo samo to da je pivotni element najve ci po apsolutnoj vrijednosti u ostatku svog stupca i retka. Takvih elemenata koji dominiraju ostatkom svog retka i stupca mo ze biti i vi se, pa ih je, op cenito, lak se na ci. Naravno, mo ze se dogoditi da je apsolutno najve ci element u cijelom ostatku matrice jedini takav on sigurno dominira svojim retkom i stupcem. Dakle, za isti rezultat mogli smo i slabije pivotirati! Mo zemo zaklju citi da je polazna kritika, uglavnom, korektna. Zaista, u analizi trokutastih sustava nismo u potpunosti iskoristili sva svojstva pivotiranja. Medutim, odgovor na to je sasvim jednostavan. To cnost rje senja dobivenih trokutastih sustava nije jedina svrha pivotiranja. Ono se ozbiljno koristi i u analizi LR faktorizacije, za kontrolu i ocjenu kvalitete izra cunatih faktora L i R. Naime, parcijalno pivotiranje ima utjecaja i na matricu R, a ne samo na L. To pogotovo vrijedi za potpuno pivotiranje.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 74

5.7.

Gre ske zaokru zivanja za LR faktorizaciju

Analiza gre saka zaokru zivanja kod rje savanja lineranog sustava kori stenjem LR faktorizacije koristi dvije stvari: analizu gre saka zaokru zivanja izraza oblika (5.5.3)
k 1

y = c i analizu rje senja trokutastog sustava.

ai bi
i=1

bk .

Rekurzije koje koristimo za ra cunanje elemenata rkj i jk matrica R i L su


k 1

rkj = akj

ki rij ,
i=1 k 1

j = k, . . . , n, (5.7.1) rkk , i = k + 1, . . . , n.

ik = aik

ij rjk
j =1

Primijetite da su to izrazi istog oblika koje smo analizirali u lemi 5.5.1., a potom u lemi 5.5.3. za bilo koji poredak sumacije. Sada je jednostavno primjeniti lemu 5.5.3. na svaki od izraza u (5.7.1), uz korektno nazivanje objekata. Ulogu y igra lijeva strana svakog od izraza, ulogu c odgovaraju ci element akj , odnosno aik matrice A, ulogu a-ova dotad izra cunati elementi matrice L i ulogu b-ova dotad izra cunati elementi matrice R (izra cunate elemente ozna cimo kapicom). Mi zelimo ocijeniti koliko se razlikuju elementi matrice A obzirom na izra cunate elemente matrica L i R. Primjenimo li lemu 5.5.3. za rkj dobivamo rkj (1 + k ) = akj
(i) (0) k 1 i=1

(1 + k ) ki rij ,

(i)

pri cemu je |k | k . Prebacivanjem sume s jedne strane na drugu, te uzimanjem apsolutnih vrijednosti dobivamo
k 1 k 1

akj rkj

i=1

ki rij k

i=1

|ki| |rij |.

(5.7.2)

Na sli can na cin, kori stenjem leme 5.5.3., analiziramo i drugu relaciju u (5.7.1) ik rkk (1 + k ) = aik
(0) k 1 j =1

(1 + k ) ij rjk .

(i)

Ponovno premje stanjem pribrojnika, pa uzimanjem apsolutnih vrijednosti, dobivamo


k k

aik

j =1

ij rjk k

j =1

|ij | |rjk |.

(5.7.3)

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 75

Koje je zna cenje relacija (5.7.2) i (5.7.3)? Prvo, primijetite da za sve elemente gornjeg trokuta matrice A vrijedi relacija (5.7.2), a za elemente strogo donjeg trokuta relacija (5.7.3), pa zajedno pokrivaju citav A. Napi semo li to matri cno, za citav A, onda (5.7.2) i (5.7.3) daju |A LR| n |L| |R|. Time smo dokazali sljede ci teorem. Teorem 5.7.1. U aritmetici pomi cnog zareza ra cunamo LR faktorizaciju zadane matrice A reda n. Pretpostavimo da je algoritam uspje sno zavr sio (bez pojave prevelikih ili premalih brojeva koji nisu prikazivi, i bez poku saja dijeljenja s nulom). Izra cunati trokutasti faktori L i R onda zadovoljavaju L R = A + A, |A| n |L| |R|.

Uz malo dodatnog napora, prethodni teorem, zajedno s teoremom o analizi gre saka zaokru zivanja za trokutaste sustave, daje obratnu gre sku zaokru zivanja za rje senje linearnog sustava Ax = b kori stenjem LR faktorizacije. Teorem 5.7.2. U aritmetici pomi cnog zareza rje savamo linearni sustav Ax = b s matricom A reda n. Neka su L i R izra cunati trokutasti faktori u LR faktorizaciji matrice A, i neka je x izra cunato rje senje sustava Ax = b. Onda postoji perturbacija A matrice A za koju vrijedi (A + A) x = b, |A| 3n |L| |R|.

Dokaz: Gre ske u rje senju lineranog sustava interpretiramo kao egzaktno rje senje linearnog sustava s malo perturbiranom matricom. Ra s clanimo li perturbacije u matrici A, mo zemo vidjeti da su one posljedica: LR faktorizacije matrice (tu perturbaciju ozna cimo s A1 ), Iz prethodnog teorema, za LR faktorizaciju dobivamo ocjenu L R = A + A1 , |A1 | n |L| |R|. (5.7.4)

rje savanja trokutastih linearnih sustava Ly = b i Rx = y .

Prema teoremu 5.5.2., rje savanje trokutastog sustava u aritmetici pomi cnog zareza mo zemo interpretirati kao to cno rje savanje malo perturbiranog sustava. Tj., za zadane T i b, izra cunamo rje senje x, i onda postoji perturbacija T za koju vrijedi (T + T ) x = b, |T | n |T |.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 76

Primijenimo to na dva trokutasta sustava koja moramo rije siti. Njihove matrice su izra cunati faktori L, odnosno R, a izra cunata rje senja supstitucijama unaprijed, odnosno unatrag, neka su y i x. Dobivamo da postoje perturbacije L i R za koje vrijedi (L + L) y = b, |L| n |L|, (5.7.5) (R + R) x = y, |R| n |R|. Tada b mo zemo napisati kao b = (L + L) (R + R) x = (LR + L R + L R + L R) x = (A + A1 + L R + L R + L R) x := (A + A) x. Za ovako deniranu perturbaciju A, iz (5.7.4) i (5.7.5) dobivamo ocjenu |A| = |A1 + L R + L R + L R|
2 (3n + n ) |L| |R|.

|A1 | + |L| |R| + |L| |R| + |L| |R|

Na kraju, za konstantu na desnoj strani vrijedi


2 3 n + n =3 2 nu nu 3nu(1 nu) + (nu)2 + = 1 nu 1 nu (1 nu)2 3nu 2(nu)2 3nu 3nu = = 3n , 2 1 2nu + (nu) 1 2nu 1 3nu

uz uvjet da je 3nu < 1, pa dobivamo ocjenu iz tvrdnje teorema. U prethodnom dokazu iskoristili smo uniformne ocjene konstantom n za perturbacije kod rje savanja oba trokutasta sustava. Znamo da teorem 5.5.3. daje i nije ocjene po recima |L| diag(0 , 1 , . . . , n1 ) |L| Na zalost, njih ne mo zemo zgodno iskoristiti u dokazu prethodnog teorema. Naime, faktor diag(n , n1, . . . , 1 ), koji djeluje na retke od |R|, mo zemo interpretirati i tako da djeluje na stupce od |L|. Medutim, on ne mora komutirati s |L|, pa ga ne mo zemo prebaciti ispred |L|, tako da i on djeluje na retke od |L|. |R| diag(n , n1 , . . . , 1) |R|.

Kako mo zemo interpretirati prethodni teorem? U idealnom slu caju zeljeli bismo da je |A| u|A|. To bi odgovaralo gre sci koju napravimo zaokru zivanjem elemenata matrice A pri inicijalnom spremanju podataka. Ali, nad svakim elementom matrice A vr si se jo s najvi se n operacija, i zato ne mo zemo o cekivati ne sto bolje od ocjene oblika |A| cn u|A|,

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 77

gdje je cn konstanta reda veli cine n. Takva ce ocjena vrijediti pod uvjetom da L i R zadovoljavaju da je |L| |R| = |LR|, (5.7.6) sto, naravno, ne mora uvijek biti slu caj. Ako vrijedi (5.7.6), onda iz teorema 5.7.1 izlazi |L| |R| = |LR| = |A + A| |A| + n |L| |R|, pa, prebacivanjem clanova dobivamo |L| |R| 1 |A|. 1 n 3n |A|, 1 n

Ako tu relaciju uvrstimo u teorem 5.7.2., onda imamo (A + A) x = b, |A| (5.7.7)

tj. izra cunato rje senje x ima malu obratnu relativnu gre sku po komponentama. Pitanje je koje matrice zadovoljavaju (5.7.6). Na primjer, ako LR faktorizacija daje nenegativne elemente u L i R, takve ce matrice sigurno zadovoljavati tra zeno svojstvo. Takva je, na primjer, klasa totalno pozitivnih/totalno nenegativnih matrica. Totalno pozitivne/nenegativne matrice su kvadratne matrice kojima su determinante bilo koje kvadratne podmatrice pozitivne/nenegativne. Inverzi totalno nenegativnih matrica, takoder, imaju svojstvo da su im matrice L i R nenegativne (po komponentama). Na zalost, kod totalno nenegativnih matrica parcijalno pivotiranje (ili zamjene redaka) ce op cenito uni stiti svojstvo totalne nenegativnosti. Na primjer, uzmite samo zamjenu 2 retka i bilo koju 2 2 matricu nastalu zamjenom redaka. Njezina ce determinanta promijeniti znak. I kod inverza totalno nenegativnih matrica, pivotiranje uni stava svojstvo nenegativnosti L i R. Zbog toga je za totalno nenegativne matrice i njihove inverze najbolje koristiti Gaussove eliminacije, odnosno LR faktorizaciju bez pivotiranja. No vratimo se na stabilnost LR faktorizacije. Va zno svojstvo koje proizlazi iz teorema 5.7.1. i teorema 5.7.2. je da stabilnost rje senja linearnog sustava ne ovisi o veli cini multiplikatora, ve c o veli cini elemenata koji se javljaju u matrici |L| |R|. Ta matrica mo ze imati male elemente iako su joj multiplikatori mij = ij veliki, ali mo ze imati i velike elemente, a da su joj multiplikatori reda veli cine 1. Da bismo lak se prou cavali stabilnost Gaussovih eliminacija (ili ekvivalentno LR faktorizacije + rje senja sustava), koristit cemo norme. Po ugledu na izvod (5.7.7), razumno je prou cavati omjer |L| |R| . (5.7.8) A

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 78

Bez pivotiranja, omjer normi (5.7.8) mo ze biti proizvoljno velik. Na primjer, poka zite da je za matricu 1 1 1 taj je omjer 1 . Kod parcijalnog pivotiranja vrijedi da je |ij | 1 za sve i j, pa nije te sko (indukcijom po koracima) pokazati da zbog mik = ik i aij vrijedi |rij | 2i1 max |akj |.
k i (k +1)

= aij mik akj

(k )

(k )

Dakle, kod parcijalnog je pivotiranja L malen, a R ograden relativno obzirom na A. Tradicionalno, obratna analiza gre ske izra zava se preko faktora rasta (engl. growth factor) (k ) maxi,j,k |aij | n = . maxi,j |aij | U procesu Gaussovih eliminacija, o cito vrijedi da je |rij | = |aij | n max |aij |.
i,j (i)

Sada mo zemo izre ci klasi cni teorem koji govori o obratnoj gre sci u terminu rasta elemenata u Gaussovim eliminacijama. Teorem 5.7.3. (Wilkinson) Neka je A regularna kvadratna matrica reda n i neka je x izra cunato rje senje sustava Ax = b Gaussovim eliminacijama s parcijalnim pivotiranjem u aritmetici pomi cnog zareza. Tada vrijedi (A + A) x = b, A

n2 3n n A

Dokaz: Uz parcijalno pivotiranje za egzaktne faktore L i R vrijede ocjene |L| 1 i |R| n , a faktor n2 je posljedica prijelaza na . Striktno govore ci, za izra cunate faktore vrijede malo slabije ocjene |L| 1 + u i |R| n , gdje je n izra cunati faktor rasta, pa desnu stranu treba tako i shvatiti. Medutim, ideja cijele tvrdnje je da se analizira pravi faktor rasta n . Pretpostavka da koristimo parcijalno pivotiranje u prethodnom teoremu, nije nu zna. Naime, isto vrijedi i za Gaussove eliminacije bez pivotiranja, samo s malo druga cijom konstantom.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 79

5.8.

Pivotni rast
aij
(k +1)

Kori stenjem relacija za poni stavanje elemenata = aij mik akj ,


(k ) (k ) (k ) (k )

za parcijalno pivotiranje vrijedi da je |aij


(k +1)

| |aij | + |akj | 2 max |aij |.


i,j

(k )

Prethodna ocjena, zajedno s denicijom faktora rasta daje jednostavnu ocjenu da je za parcijalno pivotiranje n 2n1 . Ve c je J. Wilkinson primijetio da se taj pivotni rast mo ze dosti ci za sve matrice oblika 1 1

1 1

1 1 1

.. ..

. . 1 1

1 1

1 .

Za te matrice, parcijalno pivotiranje nije potrebno, a eksponencijalni rast elemenata primje cuje se u posljednjem stupcu. Ove su matrice samo jedna od klasa matrica koje dosti zu takav maksimalni rast. Kasnije su N. Higham i D. Higham okarakterizirali oblik svih realnih matrica kod kojih se dosti ze maksimalan pivotni rast (kod parcijalnog pivotiranja). Ipak, ovo je samo umjetno konstruirani primjer, a u praksi je takvih matrica izrazito malo, pa se parcijalno pivotiranje pona sa mnogo bolje. I to je primijetio Wilkinson. Danas se tim problemom bavi N. L. Trefethen, koji je pokazao da je statisti cki, za razne vrste slu cajnih matrica pivotni rast u prosjeku oko n2/3 . Za potpuno pivotiranje, situacija je bitno druga cija. Ozna zimo s c n pivotni rast za potpuno pivotiranje. Po cetkom sezdesetih Wilkinson je dokazao da vrijedi
1/2 c (2 31/2 n1/(n1) )1/2 c n1/2 n(log n)/4 , n n

ali ta ograda nije dosti zna. Ograda je bitno sporije rastu ca funkcija nego sto je to n1 c 2 , ali jo s uvijek mo ze biti dosta velika. Dugo se smatralo da je n n, a tek je 1991. ta slutnja oborena na matrici reda 13, kad je naden faktor rasta 13.0205. Kasnije je pokazano da, na primjer, za matricu reda 25, c ze dose ci 32.986341. n mo Ako promatramo g (n) = sup c n (A), Ann

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 80

poznati su jo s i sljede ci rezultati n g (n) 2 2 3 2.25 4 4 5 < 5.005 .

5.9.

Posebni tipovi matrica

Za posebne tipove matrica, katkad je mogu ce re ci ne sto vi se o pona sanju Gaussovih eliminacija, naro cito o potrebi za pivotiranjem i veli cini faktora rasta. Za kompleksnu matricu A Cnn re ci cemo da je dijagonalno dominantna po recima ako vrijedi
n j =1 i=j

|aij | |aii |,

i = 1, . . . , n.

Ako vrijedi stroga nejednakost za sve i = 1, . . . , n, onda ka zemo da je A strogo dijagonalno dominantna po recima. Matrica A je (strogo) dijagonalno dominantna po stupcima, ako je A (strogo) dijagonalno dominantna po recima. U oba su slu caja Gaussove eliminacije savr seno stabilne i bez pivotiranja. Teorem 5.9.1. (Wilkinson) Neka je A Cnn regularna matrica. Ako je A dijagonalno dominantna po recima ili stupcima, tada A ima LR faktorizaciju (bez pivotiranja!) i za faktor rasta vrijedi n 2. Ako je A dijagonalno dominantna po stupcima, tada je |ij | 1 za sve i, j u LR faktorizaciji bez pivotiranja (pa parcijalno pivotiranje ne radi nikakve zamjene redaka). Dokaz: Prvo uo cimo da pretpostavka regularnosti matrice A osigurava da dijagonalni elementi nisu nula, tj. vrijedi aii = 0 za sve i. U suprotnom, da je aii = 0 za neki i, zbog dijagonalne dominantnosti i svi ostali elementi u tom retku ili stupcu morali bi biti jednaki nula, pa bi A o cito bila singularna, sto je protivno pretpostavci. Pretpostavimo da je matrica A dijagonalno dominantna po stupcima. Dokaz za dijagonalno dominantne matrice po recima bit ce analogan. Na po cetku je a11 = 0, pa sigurno mo zemo napraviti prvi korak eliminacija (2) (bez pivotiranja) i dobiti matricu A oblika A(2) = r11 r1 . 0 S

Prvi redak u A(2) je isti kao u A, a eliminacije nastavljamo na matrici S . O cito je da S mora biti regularna, na primjer, preko determinanti, zbog r11 = a11 i

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 81

det(A) = r11 det(S ) = 0. Moramo jo s pokazati da je matrica S ponovno dijagonalno dominantna po stupcima. Za j = 2, . . . , n vrijedi
n i=2 i=j

|aij | =

(2)

n i=2 i=j 1 |aij ai1 a 11 a1j |

n i=2 i=j 1 |aij | + |a 11 | |a1j |

n i=2 i=j

|ai1 |

(koristimo dijagonalnu dominantnost u obje sume) 1 (|ajj | |a1j |) + |a 11 | |a1j | (|a11 | |aj 1 |) 1 = |ajj | |a1j a (koristimo |a| |b| |a b|) 11 aj 1 |
1 |ajj a1j a 11 aj 1 | = |ajj |, (2)

sto pokazuje da je i A(2) dijagonalno dominantna po stupcima. Dakle, indukcijom zalju cujemo da je u svakom koraku algoritma matrica dijagonalno dominantna po stupcima. To zna ci da je u svakom stupcu maksimalni element na dijagonali, pa su pripadni |ij | 1.

Doka zimo sad tvrdnju o faktoru rasta. Neka je A dijagonalno dominantna po stupcima i A(k) matrica dobivena nakon k 1 koraka eliminacija. Dokaz za dijagonalno dominantne matrice po recima bit ce analogan. Tvrdimo da je
k i,j n

max |aij | 2 max |aij |.


1i,j n

(k )

U prvom koraku, za k = 2, vrijedi


n i=2

|aij | =

(2)

n i=2 i=j n i=2 i=j n i=1 i=j 1 |aij ai1 a 11 a1j |

n i=2 i=j 1 |aij | + |a 11 | |a1j | n 1 |aij | + |a 11 | |a1j | (|a11 | |aj 1 |) n 1 |aij | |a 11 | |a1j | |aj 1 | i=1 i=2 i=j

n i=2 i=j

|ai1 |

1 |aij | + |a1j | |a 11 | |a1j | |aj 1 |

|aij |.

Analogno, u matrici A(k) mora vrijediti (dokaz indukcijom) da je


n i=k

|aij |

(k )

n i=1

|aij |.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 82

Sada imamo
k i,j n

max |aij | max

(k )

n k j n i=k

|aij | max

(k )

n k j n i=1

|aij |

(koristimo dijagonalnu dominantnost po stupcima) 2 max |ajj | 2 max |ajj |


k j n 1j n

(koristimo dijagonalnu dominantnost po stupcima) 2 max |aij |,


1i,j n

sto pokazuje da faktor rasta ne prelazi 2. Prethodni teorem mo ze se dokazati i u op cenitijoj formi za blok LR faktorizaciju i blok dijagonalno dominantne matrice. Posebnoj vrsti matrica pripadaju i trodijagonalne matrice oblika d1 e1 c2 d2 e2 .. .. .. A= . . . . c d e n1 n1 n1 cn d n

Pretpostavimo da postoji LR faktorizacija bez pivotiranja za matricu A. Tada nije te sko pokazati da su matrice L i R oblika 1 2 1 . . .. .. L= , n 1 1 n 1

Primijetite da je dijagonala iznad glavne jednaka u matricama A i R. Ostale elemente matrica L i R ra cunamo po sljede cim rekurzijama r1 = d 1 , za i = 2, . . . , n : i = ci /ri1 , ri = di i ei1 .

r1 e1 r2 e2 . . .. .. R= . rn1 en1 rn

(5.9.1)

(5.9.2)

Ra cunamo li te vrijednosti u aritmetici pomi cnog zareza, onda za izra cunate vrijednosti vrijedi ci (1 + i )i = , |i | u, ri1 (1 + i )ri = di i ei1 (1 + i ), |i |, |i| u.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 83

Premje stanjem pribrojnika, te kori stenjem apsolutne vrijednosti dobivamo |ci i ri1 | u |i ri1 |,

|di i ei1 ri | u (|i ei1 | + |ri |). Ako ove relacije napi semo matri cno, onda je A = LR + A, |A| u |L| |R|. (5.9.3)

Rje savanje linearnog sustava Ax = b, nakon LR faktorizacije napravi jo s dodatnu gre sku prilikom supstitucije unaprijed i unatrag. Na sli can na cin kao kod rje savanja trokutastog sustava, nije te sko pokazati da za tako izra cunato rje senje x vrijedi (L + L) (R + R) x = b, |L| u|L|, |R| (2u + u2 )|R|. (5.9.4)

Kombiniranjem (5.9.3) i (5.9.4), dobivamo da je ukupna gre ska (A + A) x = b, |A| (4u + 3u2 + u3 )|L| |R|.

Naravno, ova ocjena obratne gre ske vrijedi za bilo koju nesingularnu trodijagonalnu matricu za koju postoji LR faktorizacija bez pivotiranja. Ponovno, zainteresirani smo za nala zenje onih klasa matrica za koje ce vrijediti ocjena oblika |A| g (u) |A|. Takva ce ocjena sigurno vrijediti ako je |L| |R| = |LR|. Koje su to matrice? Odgovor na to pitanje za egzaktne faktore L i R daje sljede ci teorem. Teorem 5.9.2. Neka je A Rnn nesingularna trodijagonalna matrica. Ako vrijedi bilo koji od uvjeta (a)(d), onda A ima LR faktorizaciju i vrijedi |L| |R| = |LR|: (a) A je simetri cna pozitivno denitna, (b) A je totalno nenegativna, ili, ekvivalentno, L 0 i R 0, (c) A je M -matrica, ili, ekvivalentno, L i R imaju pozitivne dijagonalne elemente i nepozitivne vandijagonalne elemente,

(d) A je po predznacima ekvivalentna matrici B koja je tipa (a)(c), tj. A se mo ze prikazati u obliku A = D1 BD2 , gdje su |D1 | = |D2 | = I . Dokaz: Doka zimo samo tvrdnju (a). Za simetri cnu pozitivno denitnu matricu, mo zemo LR faktorizaciju napisati u obliku A = LDLT .

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 84

Kako se to pokazuje? U obi cnoj LR faktorizaciji, ako postoji, (a postoji, sto se lako dokazuje, jer je dijagonala uvijek pozitivna), faktor R se rastavi na produkt R = DM T dijagonalne matrice D i gornjetrokutaste matrice M T s jedinicama na dijagonali. Dobivamo A = LDM T , Zbog simetrije vrijedi A = AT = MDLT , pa je LDM T = MDLT . Mno zenjem slijeva s L1 i zdesna s LT dobivamo DM T LT = L1 MD. Primijetimo da na lijevoj strani imamo produkt gornjetrokutastih matrica, a na desnoj strani donjetrokutastih, pa zaklju cujemo da su ti produkti dijagonalne matrice. Uo cimo jo s da su te dijagonalne matrice ba s jednake D (jer i M i L imaju na dijagonali jedinice), pa imamo L1 MD = D = MD = LD = M = L. I ne samo to, D mora imati pozitivne elemente, jer bi ina ce postojao vektor x takav da je (Ax, x) 0, tj. A ne bi bila pozitivno denitna. Sada mo zemo, uz malo razmi sljanja i raspisivanja, zaklju citi da je |L| |R| = |L| D |LT | = |LDLT | = |LR|. Pa zljivo poka zite da je srednja jednakost korektna! U praksi se cesto pojavljuju i dijagonalno dominantne trodijagonalne matrice, koje ne pripadaju nekom od tiova (a)(d) iz prethodnog teorema. Za njih, op cenito, ne vrijedi da je |L| |R| jednako |LR| = |A|, ali ne mo ze biti ni mnogo ve ci. Teorem 5.9.3. Neka je A Rnn nesingularna trodijagonalna matrica, dijagonalno dominantna po recima ili stupcima, i neka A ima LR faktorizaciju A = LR. Tada vrijedi |L| |R| 3 |A|. Dokaz: Usporedujemo elemente matrica |L| |R| i A. Za elemente na sporednim dijagonalama, direktnim mno zenjem iz (5.9.1) dobivamo da vrijedi (|L| |R|)ij = |aij |, za |i j | = 1. M donjetrokutasta, regularna.

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 85

Ostalo je jo s pokazati sto se zbiva s dijagonalnim elementima. Dovoljno je pokazati da vrijedi |i ei1 | + |ri | 3 |di|. U nastavku dokaza pretpostavljamo da je A dijagonalno dominantna po recima (za dijagonalnu dominantnost po stupcima dokaz ide sli cno). Prvo tvrdimo da je |ei | |ri |, za sve indekse i. Dokaz se provodi indukcijom. Za i = 1 to je o cito iz dijagonalne dominantnosti. Pretpostavimo da to vrijedi za i 1, a zatim iz (5.9.2) imamo redom |ri | |di | |i | |ei1 | = |di| |di | |ci | |ei |. ci | ci | |ei1 | |ri1 |

Na sli can na cin pokazuje se da je |ri | |di| + |ci |. Kona cno, dobivamo |i ei1 | + |ri| = ei1 + |ri | |ci| + |ri | ri1 |ci | + (|di| + |ci |) 3|di |.

Kori stenjem prethodna dva teorema, dobivamo i ocjenu obratne gre ske za izra cunato rje senje ovakvih specijalnih trodijagonalnih sustava. Teorem 5.9.4. Ako je zadana nesingularna trodijagonalna matrica A tipa (a)(d) iz teorema 5.9.2. i ako je jedini cna gre ska zaokru zivanja u dovoljno mala, tada Gaussove eliminacije za rje savanje sustava Ax = b uspje sno zavr savaju i nalaze rje senje x za koje vrijedi (A + A) x = b, 4 u + 3u 2 + u 3 |A| |A|. 1u

Isti zaklju cak vrijedi i za A dijagonalno dominantnu po recima ili stupcima, ali bez ograde na u, s tim da se ocjena mno zi faktorom 3. Dokaz: Za matricu A tipa (a)(c), pretpostavka da je u dovoljno mali osigurava pozitivnost izra cunatih dijagonalnih elemenata ri matrice R, jer ri ri > 0, kad u 0. Lako se vidi da ri > 0 povla ci da je |L| |R| = |LR| i za izra cunate faktore. Sli can argument vrijedi i ako je A tipa (d). Zadnji dio tvrdnje za dijagonalno dominantne matrice A je trivijalan. Posljedica ovog teorema je da pivotiranje nije potrebno za tipove matrica na koje se odnosi tvrdnja. Tu cinjenicu cemo kasnije vi se puta iskoristiti u raznim

5. RJESAVANJE LINEARNIH SUSTAVA

LINEARNI SUSTAVI 86

primjenama (na primjer, kod kubi cne spline interpolacije). Cak i vi se od toga, kori stenje pivotiranja mo ze pokvariti i poni stiti ove rezultate o stabilnosti. S druge strane, u postupku eliminacija mogu se pojaviti i veliki multiplikatori, ali oni nemaju negativnih posljedica na stabilnost. Na primjer, uzmimo M -matricu 2 2 A= 2 2 0 1

0 1 0 0 2 2 0 = ( 2)/2 1 0 0 3 0 1/ 1 0 0

0 0 = LR, 3

gdje je 0 < < 2. Multiplikator 32 nije ograni cen kad 0, i na limesu dobivamo singularnu matricu A koja nema LR faktorizaciju (bez pivotiranja). Medutim, za > 0 vrijedi |L| |R| = |A| i Gaussove eliminacije (bez pivotiranja) su vrlo stabilne, upravo onako kao sto teorem 5.9.4. ka ze da moraju biti.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 87

6. Faktorizacija Choleskog i QR faktorizacija


6.1. Faktorizacija Choleskog

Na kraju prethodnog poglavlja vidjeli smo da simetri cne pozitivno denitne matrice imaju neka dobra svojstva vezana uz LR faktorizaciju. Na primjer, njihova LR faktorizacija se mo ze simetrizirati, tj. napisati u obliku LDLT , gdje je L jedini cna donja trokutasta, a D dijagonalna matrica. U nastavku, ukratko analiziramo takve simetri cne faktorizacije simetri cnih, a posebno, pozitivno denitnih matrica, i njima pripadne tzv. ortogonalne ili implicitne faktorizacije. Ove faktorizacije imaju ogromnu primjenu, ne samo kod rje savanja linearnih sustava, ve c i kod rje savanja problema svojstvenih i singularnih vrijednosti. Simetrija i pozitivna denitnost nisu samo zgodna matemati cka svojstva, ve c imaju i svoj dublji zikalni zna caj. Zbog toga se simetri cne pozitivno denitne matrice prirodno javljaju u numeri ckom rje savanju razli citih problema, poput diskretizacije diferencijalnih jednad zbi i raznih vrsta aproksimacija. Podsjetimo, kvadratna realna matrica A je simetri cna ako je AT = A. Simetri cna matrica A Rnn je pozitivno denitna ako je xT Ax > 0 za svaki nenula vektor x Rn . Poznati ekvivalentni uvjeti za pozitivnu denitnost simetri cne matrice A su: sve vode ce glavne minore od A su pozitivne, tj. vrijedi det(Ak ) > 0, za k = 1, . . . , n, gdje je Ak = A(1 : k, 1 : k ) vode ca glavna podmatrica od A reda k ; sve svojstvene vrijednosti od A su pozitivne, tj. vrijedi k (A) > 0, za k = 1, . . . , n, gdje k ozna cava k -tu najve cu svojstvenu vrijednost (silazni poredak po k ). Znamo da simetri cna matrica ima realne svojstvene vrijednosti, pa ima smisla govoriti o poretku. Uz ove oznake, dovoljan je zahtjev n (A) > 0, za najmanju svojstvenu vrijednost. Iz prve karakterizacije, po teoremu 5.3.1., odmah slijedi da simetri cna pozitivno denitna matrica A ima LR faktorizaciju A = LR. Promatranjem dijagonalnih

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 88

elemenata matrice R dobivamo jo s jednu karakterizaciju pozitivne denitnosti, koja glasi: matrica R ima pozitivnu dijagonalu, tj. vrijedi rkk > 0, za k = 1, . . . , n, sto slijedi iz det(Ak ) rkk = . det(Ak1 ) Ako se sjetimo da su dijagonalni elementi od R ujedno i pivotni elementi, ako koristimo pivotiranje, karakterizaciju mo zemo izre ci i ovako: svi pivotni elementi u LR faktorizaciji od A su pozitivni. Pri tome treba biti malo oprezan, jer pivotiranje mo ze uni stiti i simetri cnost i pozitivnu denitnost od A. Zbog toga se koristi tzv. simetri cno pivotiranje, tj. istovremene zamjene redaka i stupaca u A, o cemu ce jo s biti rije ci malo ni ze. Zbog toga sto R ima pozitivnu dijagonalu, mo zemo tu dijagonalu D = diag(rii ) izlu citi kao skaliranje redaka od R, sto daje jedini cnu gornjetrokutastu matricu, a zatim izvu ci drugi korijen iz dijagonale i vratiti takvu skalu na oba faktora T A = LR = LDR0 = L( D D )R0 = (L D )( DR0 ) = L1 LT 1 = R1 R1 . Ve c smo dokazali da je R0 = LT , sto daje zadnje dvije jednakosti. Time dobivamo T faktorizaciju oblika A = R R, gdje je R gornjetrokutasta matrica s pozitivnom dijagonalom, koja se zove faktorizacija Choleskog. Ova faktorizacija je toliko va zna da zaslu zuje i direktan dokaz. Teorem 6.1.1. Neka je A Rnn simetri cna pozitivno denitna matrica. Onda postoji jedinstvena gornja trokutasta matrica R Rnn s pozitivnim dijagonalnim elementima takva da je A = RT R. Drugim rije cima, A ima jedinstvenu faktorizaciju Choleskog. Dokaz: Dokaz se provodi indukcijom po redu n matrice. Za n = 1, A = [a11 ] je sigurno simetri cna, a pozitivna denitnost je ekvivalentna s a11 > 0. Tada je R = [ a11 ] dobro denirana i o cito vrijedi A = [ a11 ] [ a11 ] = RT R. Pretpostavimo da tvrdnja vrijedi za matrice reda n 1. Neka je A bilo koja simetri cna pozitivno denitna matrica reda n. Onda je vode ca glavna podmatrica An1 = A(1 : n 1, 1 : n 1) pozitivno denitna, pa ima jedinstvenu faktorizaciju T Choleskog An1 = Rn zimo faktorizaciju matrice A u blok zapisu oblika 1 Rn1 . Tra A= An1 c cT ann =
T Rn 1 0 T r rnn

Rn1 r 0 rnn

:= RT R.

(6.1.1)

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 89

Mno zenjem faktorizacije dobivamo jednad zbe koje moraju zadovoljavati nepoznati vektor r Rn1 i skalar rnn
T Rn 1 r = c, 2 r T r + rnn = ann . T Matrica Rn senje r prvog linearnog sustava. 1 je regularna, pa postoji jedinstveno rje Iz druge jednad zbe slijedi 2 rnn = ann r T r. (6.1.2)

Da bismo dobili jedinstveno realno pozitivno rje senje za rnn , treba pokazati da je lijeva ili desna strana pozitivna. Primjenom BinetCauchyjevog teorema u (6.1.1) dobivamo
2 0 < det(A) = det(RT ) det(R) = (det(R))2 = (det(Rn1 ) rnn )2 = (det(Rn1 ))2 rnn , 2 odakle, zbog regularnosti matrice Rn1 , slijedi rnn > 0, pa (6.1.2) daje jedinstveni realni rnn > 0. To ujedno dokazuje da R ima pozitivnu dijagonalu.

Ovaj dokaz je konstruktivan i daje jedan na cin za ra cunanje faktorizacije Choleskog matrica R se gradi stupac po stupac, od prvog prema zadnjem. Kad T rje savanje donjetrokutastog sustava Rn semo u obliku supstitucije unap1 r = c zapi rijed, dobivamo potrebne relacije za elemente rij matrice R. Do tih relacija mo zemo do ci i analognim putem kao kod LR faktorizacije. Iskoristimo poznatu strukturu od R i cinjenicu da mora vrijediti A = RT R. Zbog simetrije, dovoljno je gledati, recimo, gornji trokut matrice A, tj. elemente aij za i j . Mno zenjem izlazi
i

aij =
k =1

rki rkj ,

i j.

(6.1.3)

Ove jednad zbe rje savamo tako da ra cunamo redom one elemente koje mo zemo izraziti preko ve c poznatih veli cina. Jedan od mogu cih redoslijeda je (1, 1), (1, 2), (2, 2), (1, 3), (2, 3), (3, 3), . . . , (n, n), tj. stupac po stupac, od vrha stupca prema dnu. Dobivamo sljede cu rekurziju za elemente matrice R za j = 1, . . . , n :
i1

rij = aij rjj = ajj

rki rkj
k =1 j 1 2 rkj k =1 1/2

rii , .

i = 1, . . . , j 1 ,

U prvom koraku, za j = 1, ra cunamo samo r11 . Jedini problem u provedbi ovog algoritma je pozitivnost izraza pod korijenom, a to slijedi iz pozitivne denitnosti, pa nema opasnosti, barem u egzaktnoj aritmetici. Medutim, u aritmetici ra cunala treba biti oprezan. Zbog mogu cih gre saka zaokru zivanja, korisno je dodati barem kontrolu pozitivnosti prije vadenja drugog korijena.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 90

Algoritam 6.1.1. (Faktorizacija Choleskog) for j := 1 to n do begin {Nadi j -ti stupac od R} {Supstitucija unaprijed iznad dijagonale} for i := 1 to j 1 do begin sum := A[i, j ]; for k := 1 to i 1 do sum := sum R[k, i] R[k, j ]; R[i, j ] := sum /R[i, i]; end; {Dijagonalni element} sum := A[j, j ]; for k := 1 to j 1 do sum := sum sqr (R[k, j ]); if sum > 0.0 then R[j, j ] := sqrt (sum ) else {Matrica nije pozitivno definitna, stani s algoritmom} begin error := true ; exit ; end; end; error := false ; Ovdje pretpostavljamo da strojna realizacija funkcije sqrt za drugi korijen zadovoljava x > 0 = f (sqrt (x)) > 0. To je razumna pretpostavka, jer sqrt smanjuje raspon brojeva. U tom slu caju dobivamo pozitivne dijagonalne elemente i nema opasnosti od dijeljenja s nulom. Napomenimo jo s jednom da se po prethodnoj rekurziji matrica R generira stupac po stupac, za razliku od standardnog zapisa algoritma za LR faktorizaciju, gdje se R generira redak po redak, a L stupac po stupac. Ovo je tzv. jik varijanta algoritma, a naziv dolazi od poretka petlji izvana prema unutra, uz prirodno imenovanje indeksa i za retke, j za stupce i k za sumu kod produkta. Pa zljivijim pogledom vidimo da najdublje petlje po k odgovaraju skalarnim produktima komada stupaca od R, pa se ova varijanta katkad zove skalarana (engl. dot ili inner product) varijanta.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 91

To nipo sto nije jedina varijanta za realizaciju algoritma. Ovu smo dobili tako da redoslijed rje savanja jednad zbi (6.1.3) odgovara supstituciji unaprijed za stupce matrice R. Poka zite da mo zemo koristiti i redoslijed (1, 1), (1, 2), . . . , (1, n), (2, 2), . . . , (2, n), (3, 3), . . . , (n, n), tj. redak po redak, od dijagonale prema kraju retka. Time dobivamo ijk varijantu algoritma, koja odgovara zamjeni poretka indeksa i, j . U njoj se R ra cuna na isti na cin kao i u LR faktorizaciji. Poku sajte napraviti kji varijantu i njenu interpretaciju. Slo zenost ovog algoritma opet mjerimo brojem aritmeti ckih operacija (opova) u oating-point aritmetici. Prebrajanjem dobivamo da pribli zno (asimptotski proporcionalno) vrijedi 1 OP (n) n3 , 3 s tim da pi semo samo vode ci clan, a ignoriraramo sve ostale clanove ni zeg reda. Vidimo da je slo zenost ili cijena faktorizacije Choleskog pribli zno polovina slo zenosti (cijene) LR faktorizacije. To je dodatna motivacija za kori stenje ove faktorizacije za simetri cne pozitivno denitne matrice. Kad imamo faktorizaciju Choleskog A = RT R, onda se rje senje linearnog sustava Ax = b svodi na dva rje savanja trokutastih sustava RT y = b, Rx = y,

koje lako rje savamo supstitucijom unaprijed y1 = b1 /r11


i1

yi = bi odnosno, unatrag xn = yn /rnn

rji yj
j =1

rii ,

i = 2, . . . , n,

xi = yi

rij xj
j =i+1

rii ,

i = n 1, . . . , 1.

Za razliku od LR faktorizacije, ovdje u obje supstitucije imamo dijeljenja. Zbog toga se, barem za rje savanje linearnih sustava, dosta cesto koristi LDLT T oblik faktorizacije. Neka je A = R R faktorizacija Choleskog. Deniramo dijago1 2 nalnu matricu D = diag(rii ) i L = RT diag(rii ) = RT D 1/2 . Onda A mo zemo napisati u obliku A = LDLT , (6.1.4) gdje je L jedini cna donjetrokutasta matrica. Upravo zato se ova faktorizacija i pi se u ovom obliku, da asocira na isto zna cenje matrice L kao u LR faktorizaciji. Naravno, mogli bismo koristiti i zapis oblika A = RT DR, gdje je R jedini cna gornjetrokutasta.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 92

Algoritam dobivamo na isti na cin kao i algoritam za faktorizaciju Choleskog, a mo zemo ga organizirati tako da ra cuna L ili LT , po zelji. U tom algoritmu nema 2 ra cunanja n drugih korijena, jer spremamo kvadrate rii koji su dijagonalni elementi matrice D . Faktorizacijom A = LDLT , rje senje linearnog sustava Ax = b dobivamo rje savanjem 3 linearna sustava Lz = b, Dy = z, LT x = y.

Prvi i zadnji sustav su trokutasti s jedini cnom dijagonalom, pa u supstitucijama nema dijeljenja. Srednji sustav je dijagonalan i trivijalno se rje sava sa samo n dijeljenja. Time dobivamo u stedu od n dijeljenja obzirom na trokutaste sustave iz faktorizacije Choleskog. Ova u steda mo zda nije velika za pune matrice, jer imamo 2 oko n operacija po supstituciji. Medutim, za vrp caste matrice s malom sirnom vrpce, a posebno za trodijagonalne matrice, ovo je velika u steda. Preciznije, za trodijagonalne simetri cne pozitivno denitne matrice, faza supstitucije iz faktorizacije Choleskog treba oko 6n operacija, a ovdje samo oko 5n operacija. Na prvi pogled izgleda da bismo faktorizaciju (6.1.4) mogli provesti za bilo koju simetri cnu matricu A, bez zahtjeva pozitivne denitnosti, s tim da dozvolimo da D ima i negativne elemente. Medutim, to ne vrijedi. Trivijalan kontraprimjer je matrica 0 1 A= , 1 0 koja je simetri cna, ali indenitna. Poka zite da za ovu matricu ne postoji faktorizacija oblika (6.1.4) s dijagonalnom matricom D . Poop cenje na indenitne matrice dobivamo tako da dozvolimo dijagonalne blokove reda 2 u matrici D . Svi rezultati koje cemo napraviti za faktorizaciju Choleskog mogu se poop citi i na LDLT faktorizaciju, ali ih ne cemo posebno formulirati. Sli cno vrijedi i za blokfaktorizacije.

6.2.

Analiza gre ske za faktorizaciju Choleskog

Ocjenu gre ske zaokru zivanja za faktorizaciju Choleskog dobivamo na sli can na cin kao i kod LR faktorizacije. Dovoljno je primijetiti da se algoritam svodi na isti oblik rekurzije kao i ranije, osim za dijagonalne elemente matrice R, gdje imamo druge korijene umjesto dijeljenja. Standardnom modelu aritmetike (2.6.2) dodajemo odgovaraju cu pretpostavku za korijen. Neka je x egzaktno c spremljen u memoriji ra cunala. prikaziv broj, tj. ve Za izra cunatu vrijednost od x onda vrijedi f ( x) = (1 + ) x, || u,

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 93

gdje je u jedini cna gre ska zaokru zivanja u odabranoj to cnosti ra cunanja. Analogon leme 5.5.3. za izraze koji se javljaju u ra cunanju dijagonalnih elemenata matrice R ima sljede ci oblik. Lema 6.2.1. Izraz y = c
k 1 1/2

ai bi
i=1

ra cunamo u aritmetici pomi cnog zareza. Bez obzira na poredak operacija, tj. redosljed zbrajanja ili oduzimanja u sumi u zagradi, izra cunati y zadovoljava y 2 (1 + k+1 ) = c
(i) k 1 i=1

ai bi (1 + k1 ),

(i)

pri cemu je |k1 | k1 , za i = 1, . . . , k 1, i |k+1 | k+1 . Dokaz: Dokaz ide istim putem kao i dokaz leme 5.5.3., samo je dijeljenje zamijenjeno korijenom. Kvadriranje zavr sne relacije kvadrira i gre sku vadenja drugog korijena. Zato uz y 2 dobivamo jedan osnovni faktor vi se, sto daje k+1 s navedenom ocjenom, a ne k s ocjenom |k | k , kao ranije.

Neka je R izra cunati faktor Choleskog za simetri cnu pozitivno dentinu matricu A. Za elemente strogo gornjeg trokuta matrice R koristimo lemu 5.5.3., jer pripadne relacije imaju dijeljenje bez korijena. Dobivamo ocjenu
i i

aij

k =1

rki rkj i

k =1

|rki | |rkj |,

s tim da je i < j , tako da sume idu samo do i. Ista relacija, zbog simetrije matrice A, vrijedi i za aji , s istim i , a ne j . Za dijagonalne elemente od R iz leme 6.2.1. slijedi ocjena
j j 2 rkj j +1 2 rkj . k =1

ajj

k =1

Spajanjem ovih ocjena za sve elemente matrice A odmah dobivamo ocjenu gre ske unatrag. Teorem 6.2.1. Neka je A Rnn simetri cna pozitivno denitna matrica. Pretpostavimo da algoritam za nala zenje faktorizacije Choleskog zavr sava bez gre ske u aritmetici ra cunala. Tako izra cunati faktor R zadovoljava RT R = A + A, |A| n+1 |RT | |R|.

Kad ovom teoremu dodamo rezultate za pripadne trokutaste sustave dobivamo sljede ci rezultat za rje senje linearnog sustava Ax = b.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 94

Teorem 6.2.2. Neka je A Rnn simetri cna pozitivno denitna matrica i neka je x izra cunato rje senje linearnog sustava Ax = b u aritmetici pomi cnog zareza, na bazi faktorizacije Choleskog matrice A i pripadnih supstitucija unaprijed i unatrag. Onda je (A + A) x = b, |A| 3n+1 |RT | |R|. Dokaz: Dokaz ide analogno dokazu teorema 5.7.2. za LR faktorizaciju. Napomenimo da perturbacija A iz ovog teorema ne mora biti simetri cna. T Naime, kad rje savamo trokutaste sustave s matricama R i R , op cenito, dobivamo prave matrice gre saka unatrag koje ne moraju biti jedna drugoj transponirane. Mo ze se pokazati postoji i mala simetri cna perturbacija A za koju vrijedi teorem 6.2.2., ali uz ne sto lo siju ocjenu. Uz pone sto truda, iz ovih rezultata mo zemo dobiti dobru ocjenu za omjer normi |RT | |R| . A Kako to izlazi? Za egzaktnu faktorizaciju Choleskog A = RT R u 2-normi vrijedi sljede ca nejednakost |R T | |R |
2

= |R |

2 2

n R

2 2

= n RT R

= n A 2.

Prva i pretposljednja jednakost izlaze direktno iz denicije 2-norme, a nejednakost iz pona sanja 2-norme prema apsolutnoj vrijednosti (v. poglavlje o normama). Prema teoremu 6.2.1., izra cunati faktor R je egzaktni faktor Choleskog za matricu A + A. Kad prethodnu nejednakost napi semo za R, dobivamo |RT | |R|
2

n A + A

n( A

+ A 2 ),

a zatim iskoristimo ocjenu iz teorema 6.2.1. i monotonost 2-norme A


2

|A|

n+1 |RT | |R|

2.

Spajanjem ovih nejednakosti izlazi |RT | |R|


2

n A

+ nn+1 |RT | |R|

2,

odakle, uz pretpostavku da je nn+1 < 1, dobivamo |RT | |R|


2

n(1 nn+1 )1 A 2 .

Odavde odmah mo zemo zaklju citi da faktorizacija Choleskog ima savr senu stabilnost unatrag po normi.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 95

Ovu ocjenu mo zemo iskoristiti u teoremu 6.2.2. za ocjenu gre ske unatrag kod rje savanja linearnog sustava. Dobivamo A
2

|A| A
2

3n+1 n(1 nn+1 )1 A 2 .

Ako jo s pretpostavimo da je (3n + 1)u < 1/2 i nn+1 1/2, onda je 4n(3n + 1)u A 2, tj. imamo ocjenu oblika A
2

Da smo radili u M -normi, A M = maxi,j |aij |, mogli smo dobiti jo s bolje izgledaju ci rezultat A M 3n+1 (1 n+1)1 A M , iz koje slijedi A
M

cn u A 2 , u kojoj cn ovisi samo o n i to kvadratno.

Standardnom teorijom perturbacije po normi dobivamo ocjenu za gre sku unaprijed izra cunatog rje senja x u obliku xx cn u (A) + O (u2 ), x gdje je cn neka blago rastu ca funkcija od n, o cito ovisna i o normi u kojoj mjerimo gre ske i broj uvjetovanosti. Dodatnu potvrdu stabilnosti za simetri cne pozitivno denitne matrice dobivamo promatranjem LR faktorizacije ili Gaussovih eliminacija. Nije te sko pokazati da, i bez pivotiranja, nakon svakog koraka eliminacije dobivamo reducirani, jo s cna i pozitivno denitna matrica reda nesredeni, dio matrice koji je opet simetri manjeg za 1. Osim toga, mo ze se pokazati da dijagonalni elementi padaju iz koraka u korak, tj. vrijedi (1) (2) (k ) akk = akk akk akk > 0. Na kraju, trivijalno se vidi da elementi simetri cne pozitivno denitne matrice A zadovoljavaju nejednakost |aij | aii ajj , za svaki i = j, (6.2.1)

cn u A

M,

s tim da cn ovisi samo linearno o n.

jer bilo determinanta bilo koje glavne podmatrice reda 2 mora, takoder, biti pozitivna. To zna ci da je barem jedan od dijagonalnih elemenata iz (6.2.1) ve ci ili jednak |aij |, tj. apsolutno najve ci element u A se nalazi na dijagonali A
M

= max aii .
1in

Odavde odmah slijedi da za pivotni rast u Gaussovim eliminacijama vrijedi n = 1 i to bez ikakvog pivotiranja. Va zno je uo citi da to ne zna ci da su multiplikatori ograni ceni na bilo koji na cin. Kontraprimjer je matrica A= 2 , 2

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 96

kad 0. Ali, ono sto je bitno, za simetri cne pozitivno denitne matrice veli cina multiplikatora nema utjecaja na stabilnost. Medutim, pogre san bi bio zaklju cak da pivotiranje u faktorizaciji Choleskog nije potrebno ili korisno. Sjetimo se samo rezultata za trokutaste sustave. Kako se vr si pivotiranje? Za po cetak, da bismo o cuvali simetriju radne matrice, pivotiranje mora biti simetri cno, tj. kad radimo zamjene, transformacija mora imati oblik A P T AP,

gdje je P matrica permutacije koja opisuje pripadnu zamjenu (stupaca). To zna ci da radimo istovremene zamjene redaka i stupaca u A. Kod takve zamjene, dijagonalni elementi prelaze opet u dijagonalne, a vandijagonalni ostaju izvan dijagonale. Dakle, ne mo zemo vandijagonalni element dovesti na dijagonalu, pa parcijalno pivotiranje nema analogon u faktorizaciji Choleskog. Sre com, iz (6.2.1) slijedi da to ionako ne bi imalo smisla. can i pozitivno denitan u svakom koNesredeni radni dio matrice je simetri raku, pa se najve ci element u cijelom tom dijelu matrice mora nalaziti na dijagonali. Standardni izbor pivotnog elementa u k -tom koraku je
k) a( rr = max aii , k in (k )

s tim da se obi cno uzima najmanji indeks r za koji se ovaj maksimum dosti ze. To je ekvivalentno potpunom pivotiranju u Gaussovim eliminacijama. Ovim postupkom dobivamo faktorizaciju Choleskog P T AP = RT R, a za elemente matrice R vrijedi
j 2 rkk 2 rij , i=k

j = k + 1, . . . , n,

k = 1, . . . , n.

Posebno, to zna ci da R ima nerastu cu dijagonalu r11 rnn > 0.

Na kraju, spomenimo jo s neke modernije rezultate koji daju dublji uvid u faktorizaciju Choleskog. Prvi daje potencijalno pobolj sanje teorema 6.2.1. promatranjem dijagonale matrice A.

Teorem 6.2.3. (Demmel) Neka je A Rnn simetri cna pozitivno denitna matrica. Pretpostavimo da algoritam za nala zenje faktorizacije Choleskog zavr sava bez gre ske u aritmetici ra cunala. Tako izra cunati faktor R zadovoljava RT R = A + A, |A| (1 n+1 )1 n+1 ddT ,
1/2

gdje je d vektor korijena dijagonalnih elemenata matrice A, tj. di = aii .

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 97

Ideja je simetri cno izlu citi dijagonalnu skalu od A, tj. napisati A u obliku A = DHD , gdje je D = diag(A)1/2 korijen iz dijagonale od A. Matrica H sad ima jedini cnu dijagonalu. Poznati teorem van der Sluisa ka ze da vrijedi 2 (H ) n min 2 (A),

gdje je bilo koja dijagonalna matrica. Drugim rije cima, matrica D skoro minimizira uvjetovanost u 2-normi po svim dijagonalnim skaliranjima. Zbog toga je sigurno 2 (H ) n2 (A), tj. uvjetovanost od H nije pretjerano narasla obzirom na A, ali se mo ze dogoditi da je 2 (H ) 2 (A), ako je A lo se skalirana. Uo cimo jo s da je 1 H s jedini cnom dijagonalom.
2

n, jer je H pozitivno denitna

Iz teorema 6.2.3., umjesto klasi cne ocjene s (A), mo zemo dobiti potencijalno mnogo bolju ocjenu preko (H ). Teorem 6.2.4. (Demmel, Wilkinson) Neka je A Rnn simetri cna pozitivno denitna matrica i neka je x izra cunato rje senje linearnog sustava Ax = b u aritmetici pomi cnog zareza, na bazi faktorizacije Choleskog matrice A i pripadnih supstitucija unaprijed i unatrag. Ako A napi semo u obliku A = DHD , gdje je D = 1/2 diag(A) , onda za skaliranu gre sku D (x x) vrijedi D (x x) Dx 2 gdje je = n(1 n+1 )1 3n+1 .
2

2(H ) , 1 2 (H )

6.3.

QR faktorizacija

U mnogim je primjenama simetri cna matrica A reda n zadana svojim, generalno, pravokutnim faktorom G, tako da je A = GT G. Na prvi je pogled jasno da je tako denirana A simetri cna. Lako dokazujemo da je tako denirana matrica pozitivno semidenitna, jer je xT Ax = (xT GT )(Gx) = (Gx)T (Gx) 0. (6.3.1)

Da bi A bila pozitivno denitna, potrebni su jo s neki uvjeti na oblik faktora G.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 98

Ako je G tipa m n, onda mora biti m n. U protivnom, kad bi bilo m < n, onda bi bio rang(G) m, sto povla ci da je i rang(A) m, tj. A je singularna. G mora imati puni stup cani rang, tj. mora biti rang(G) = n. U tom je slu caju nul-potprostor od G (tj. svi oni vektori za koje je Gx = 0) trivijalan (samo x = 0), pa za sve x = 0 vrijedi Gx = 0 i u (6.3.1) izlazi xT Ax > 0.

Dakle, pretpostavimo da je pozitivno denitna matrica A zadana svojim faktorom G tipa m n, m n, rang(G) = n. Znamo da se svaka takva matrica A mo ze rastaviti faktorizacijom Choleskog u A = RT R. Pitamo se mo ze li se to napraviti i ako je A implicitno zadana faktorom G. O cito je da mo ze i to eksplicitnim formiranjem matrice G. S numeri cke strane takvo eksplicitno formiranje matrice A nije jako po zeljno, prvo zato jer formiranjem elemenata od A radimo neke gre ske zaokru zivanja, a drugo, takav proces predugo traje. Kad bismo mogli matricu G odmah faktorizirati tako da je G = QR = Q R0 , 0 (6.3.2)

gdje je Q ortogonalna matrica reda m a R0 gornjetrokutasta matrica reda n s pozitivnim dijagonalnim elementima, onda bismo lako pro citali faktorizaciju Choleskog matrice A, jer je T A = GT G = RT QT QR = RT R = R0 R0 , pa bi R0 bio ba s tra zeni faktor. Faktorizacija (6.3.2) za G punog stup canog ranga uvijek postoji i zove se QR faktorizacija. Primijetite da smo (6.3.2) mogli pisati i u jednostavnijoj formi, ako prvih n stupaca matrice Q ozna cimo s Q0 (pazite Q0 je tipa m n), onda je G = QR = Q0 R0 , QT 0 Q0 = In .

Ostaje samo pokazati da QR faktorizacija matrice G postoji. Teorem 6.3.1. Neka je G Rmn , m n i neka je rang(G) = n. Tad postoji jedinstvena faktorizacija oblika G = Q0 R0 , pri cemu je Q0 tipa m n, QT 0 Q0 = In , a R0 gornjetrokutasta s pozitivnim dijagonalnim elementima. Dokaz: Najjednostavniji je dokaz ovog togonalizacije. Ako stupce matrice udesno, dobit cemo ortonormalni niz kao i stupci od G. Stavimo li Q0 = teorema je kori stenjem Gram-Schmidtove orG = [g1 , g2 , . . . , gn ] ortogonaliziramo slijeva vektora q1 do qn koji razapinje isti potprostor [q1 , q2 , . . . , qn ], dobili smo m n ortogonalnu

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 99

matricu. Takoder GramSchmidtov postupak ortogonalizacije ra cuna i koecijente T rji = qj gi koji polazni stupac gi izra zavaju kao linearnu kombinaciju prvih i vektora qj ortonormirane baze, tako da je
i

gi =
j =1

rji qj .

Elementi rji su elementi matrice R0 . Iz GramSchmidtovog algoritma bit ce jasno da se mo ze uzati rii > 0. Iako je ovaj dokaz ortogonalizacijom elegantan, u praksi se nikad ne koristi GramSchmidtov (CGS) postupak ortogonalizacije, jer je nestabilan kad su stupci od G skoro linearno zavisni. Umjesto toga, mo ze se koristiti tzv. modicirani Gram Schmidtov postupak (MGS) koji je mnogo stabilniji, ali i kod njega se mo ze dogoditi T da je izra cunati Q0 vrlo daleko od ortogonalnog, tj. Q0 Q0 I u kad je G lo se uvjetovana. Potpunosti radi, dajemo i CGS i MGS algoritam. Algoritam 6.3.1. (Klasi cni i modicirani GramSchmidt) for i := 1 to n do {Nadi i-ti stupac od Q i R} begin qi = gi ; for j := 1 to i 1 do {Oduzmi komponentu u qj u smjeru gi } begin T T rji := qj gi ; {kod CGS-a} ili rji := qj qi ; {kod MGS-a} qi := qi rjiqj ; end; rii := qi 2 ; if rii = 0 do begin error := true ; exit ; end else begin error := false ; qi := qi /rii ; end; end; Poka zite da su dvije formule za rji koje koriste CGS i MGS matemati cki ekvivalentne.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 100

Kad zelimo ortogonalan Q, koristimo ili Givensove rotacije ili Householderove reektore kojima poni stavamo odgovaraju ce elemente u matrici G, sto ce nam, ponovno, dati konstruktivni dokaz teorema 6.3.1.

6.3.1.

Givensove rotacije
R ( ) = cos sin sin cos

Matrica

je Givensova rotacija koja svaki vektor x R2 rotira obrnuto od kazaljke na satu za kut . Mo zemo denirati i Givensovu rotaciju u (i, j ) ravnini s

i j

..

. 1 cos 1 .. . 1 sin cos 1 .. . 1 sin

R(i, j, ) =

Za zadani vektor x Rm , lako poni stavamo njegovu j -tu komponentu xj kori stenjem rotacije R(i, j, ). Primijetite da mno zenjem matrice R(i, j, ) na x mijenjamo samo i-tu i j -tu komponentu u x, pa dobivamo cos sin sin cos Drugi redak u matri cnoj jednad zbi je sin xi + cos xj = 0. Ako je xj = 0 nemamo sto poni stavati, a ako nije, dobivamo ctg = xi , xj xi xj = xi . 0

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 101

odakle, kori stenjem trigonometrijskog identiteta 1 + ctg2 = slijedi sin2 = x2 j , 2 xi + x2 j 1 sin2 x2 i . x2 + x2 i j

cos2 = 1 sin2 =

Sada mo zemo izabrati predznake za sin i cos , tako da xi bude pozitivan. Ako stavimo xi xj sin = , cos = , 2 2 x2 x2 i + xj i + xj dobivamo xi = xi x2 i + x2 j xi + xj x2 i + x2 j xj =
2 x2 i + xj

x2 i

x2 j

2 x2 i + xj > 0.

Primijetite da je element xi dobiven nakon transformacije upravo norma i-te i j -te komponente polaznog vektora. Sistematskim poni stavanjem elemenata, konstruirat cemo QR faktorizaciju matrice G. Po cnimo s prvim stupcem. Redom, mo zemo poni stavati elemente gj 1 , j = 2, . . . m kori stenjem rotacija R(1, j, ), tj. rotacija koje nabacuju normu prvog stupca na prvi element u stupcu. Zatim to mo zemo ponoviti za drugi, tre ci i svaki daljnji stupac. Primijetite, da time ne cemo pokvariti ve c sredene nule u prethodnim stupcima. Gra cki, za jednu matricu tipa 5 3 to izgleda ovako

x x x x x

x x x x x

x x x 0 x x x 0 x x 0 x x 0 x

x x x 0 x x x 0 0 x 0 0 x 0 0

x x x 0 x x x 0 0 x 0 0 x 0 0

x x x . 0 0

Za ocjenu gre ske zaokru zivanja postoji i bolji raspored poni stavanja elemenata, jer se ovakvom transformacijom, pri sredivanju prvog stupca prvi redak mijenja m 1 puta. Kad bismo ujedna cili da se svaki redak podjednak broj puta transformira, onda bi na sa ocjena gre ske bila bolja. To mo zemo posti ci kori stenjem niza nezavisnih rotacija koje ne zahva caju iste retke. Osim toga, takav raspored odvijanja rotacija dozvoljava paralelizaciju algoritma. Naravno, na kraju algoritma, na mjestu matrice G pi se matrica R. Kako cemo prona ci Q? Ako promatramo transformacije koje obavljamo, dobivamo R(n, m, nm ) R(n, m 1, n,m1) R(1, 2, 12 )G := Q1 G = R. Primijetimo da smo matricu G slijeva mno zili produktom ortogonalnih matrica, koji je i sam ortogonalna matrica, a mo zemo je ozna citi s Q1 , pa je G = QR.

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 102

6.3.2.

Householderovi reektori

Umjesto da elemente u stupcu poni stavamo jedan po jedan, kori stenjem Householderovih reektora, mo zemo odjednom poni stiti sve elemente, osim jednog, u dijelu odgovaraju ceg stupca. Matrica H denirana s H = I 2uuT , u
2

=1

zove se Householderov reektor. Matrica H je simetri cna, sto je o cito, i ortogonalna. Vrijedi HH T = H 2 = (I 2uuT ) (I 2uuT ) = I 4uuT + 4uuT uuT
T = I 4uuT + 4u(uT u)uT = I 4uuT + 4 u 2 2 uu = I.

Za sto ba s ime reektor? Promatrajmo hiperravninu koja je okomita na u i prolazi ishodi stem. Reektor H sve vektore x preslikava u simetri cni obzirom na tu ravninu. Ako imamo zadan vektor x, jednostavno je prona ci u za Householderov reektor tako da poni stimo sve osim prve komponente vektora x, tj. tra zimo da je c 0 = c e1 . Hx = . . . 0 Raspi simo tu jednad zbu Hx = (I 2uuT )x = x 2u(uT x) = c e1 . (uT x je broj!) Odatle, premje stanjem pribrojnika, slijedi u= 1 (x ce1 ), 2(uT x)

tj. u mora biti linearna kombinacija od x i ce1 , tj. mora biti u = (x ce1 ). Takoder, zbog unitarne invarijantnosti mora biti x
2

= Hx

= | c| , (6.3.3)

pa u mora biti paralelan s vektorom u = x x 2 e1 ,

6. FAKTORIZACIJA CHOLESKOG I QR FAKTORIZACIJA

FAKTORIZACIJE 103

a jedini cne norme, pa je u=

u . u 2

Oba izbora znakova u (6.3.3) zadovoljavaju Hx = ce1 , sve dok je u = 0, ali se u praksi, zbog stabilnosti koristi u = x + sign(x1 ) x 2 e1 , jer to zna ci da nema kra cenja pri ra cunanju prve komponente od u , koja je jednaka u 1 = x1 + sign(x1 ) x 2 , tj. oba su pribrojnika istog znaka. Primijetite da se ra cunanje u mo ze izbje ci, ako deniramo H =I 2 u u T . u T u

Ponovno, sustavna primjena Householderovih reektora na poni stavanje elemenata prvog stupca, zatim elemenata drugog stupca od dijagonalnog mjesta nadolje daje konstrukciju QR faktorizacije.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 104

7. Iterativne metode za rje savanje linearnih sustava


7.1. Op cenito o iterativnim metodama

Umjesto direktnih metoda za rje savanje linearnih sustava, u praksi se cesto koriste iterativne metode, posebno za suplje sustave vrlo velikih redova. Pretpostavimo da je A regularna matrica reda n. Iterativna metoda koja pronalazi pribli zno rje senje sustava Ax = b zadana je po cetnim vektorom x(0) i generirana je nizom iteracija x(m) , m N, koji (nadamo se) konvergira prema rje senju linearnog sustava x. U praksi se gotovo isklju civo koriste iterativne metode prvog reda, koje iz jednog prethodnog vektora x(m) nalaze sljede cu aproksimaciju x(m+1) . Ideja iterativnih metoda je brzo ra cunanje x(m+1) iz x(m) . Kriterij zaustavljanja sli can je kao kod svih metoda limes tipa tj. kad je x(m) dovoljno dobra aproksimacija za pravo rje senje x. Naravno, i tu postoji problem, jer pravi x ne znamo. Zbog toga, koristimo svojstvo da je konvergentan niz Cauchyjev, tj. da susjedni clanovi niza moraju postati po volji bliski. Standardno, uzima se da su (m+1) x i x(m) dovoljno bliski ako je x(m+1) x(m) , gdje je neka unaprijed zadana to cnost (reda veli cine u, odnosno n u), a vektorska norma. neka

Da bismo denirali iterativnu metodu, potrebno je pa zljivo rastaviti matricu A. Denicija 7.1.1. Rastav matrice A je par matrica (M, K ) (obje reda n) za koje vrijedi (a) A = M K ,

(b) M je regularna.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 105

Bilo koji rastav matrice A generira iterativnu metodu na sljede ci na cin: Ax = Mx Kx = b = Mx = Kx + b, pa zbog regularnosti od M izlazi x = M 1 Kx + M 1 b. Ako ozna cimo R = M 1 K , c = M 1 b onda je prethodna relacija ekvivalentna s x = Rx + c. Time smo denirali iterativnu metodu x(m+1) = Rx(m) + c, m N0 . (7.1.1)

Pravo rje senje x je ksna to cka iteracione funkcije (7.1.1), tj. ksna to cka preslikavanja f (x) = Rx + c. To zna ci da u analizi konvergencije mo zemo koristiti poznate teoreme o ksnoj to cki (poput Banachovog u potpunim prostorima). Kriterij konvergencije ovakvih metoda je jednostavan. Lema 7.1.1. Niz iteracija (x(m) ), m N0 , generiran relacijom (7.1.1) konvergira prema rje senju linearnog sustava Ax = b za sve po cetne vektore x(0) i sve desne strane b, ako je R < 1, pri cemu je proizvoljna operatorska norma.

Dokaz: Oduzmimo x = Rx + c od x(m+1) = Rx(m) + c. Dobivamo x(m+1) x = R(x(m) x), pa uzimanjem norme dobivamo x(m+1) x R x(m) x R
m+1

x(0) x .

No, zbog R < 1 slijedi R m+1 0 za m , odakle izlazi x x(m+1) 0, pa iz neprekidnosti norme slijedi x(m+1) x za svaki x(0) . No, mo ze se dobiti i ne sto bolji rezultat, kori stenjem veze spektralnog radijusa i operatorske norme matrice.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 106

Lema 7.1.2. Za sve operatorske norme

vrijedi

(R) R . Za sve R i sve > 0 postoji operatorska norma R Norma


takva da je

(R) + .

ovisi i o R, i o .

Dokaz: Da bismo dokazali da je (R) R za bilo koju operatorsku normu, neka je (R) = ||, a x pripadni svojstveni vektor od . Tada vrijedi R = max
y =0

Ry Rx x | | x = = = || = (R). y x x x

S druge strane, da bismo konstruirali operatorsku normu takvu da je R (R) + , svedimo matricu R na njenu Jordanovu formu. Znamo da postoji regularna matrica S za koju je J = S 1 RS Jordanova forma matrice R. Jedinice iznad dijagonale u J kvare spektralni radijus, pa je ideja da umjesto njih dobijemo zadani > 0. To se posti ze dijagonalnom matricom sli cnosti. Neka je D = diag(1, , 2, . . . , n1). Tada je
1

.. .

.. ..

. . 1 2 .. . .. .. . . 2 .. .

1 (SD )1 R(SD ) = D JD =

Uzmimo kao vektorsku normu x

= (SD )1 x

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 107

(poka zite da je to vektorska norma!), koja generira operatorsku normu. U toj operatorskoj normi vrijedi R

= max
x=0

Rx (SD )1 Rx (SD )1 R(SD )y = max = max x=0 y =0 x (SD )1 x y

= (SD )1 R(SD )

max |i | + = (R) + .
i

Kona cno, prethodne dvije leme daju potpunu karakterizaciju konvergencije iterativnih metoda. Teorem 7.1.1. Niz iteracija (x(m) ), m N0 , generiran relacijom (7.1.1) konvergira prema rje senju linearnog sustava Ax = b za sve po cetne vektore x(0) i sve desne strane b, ako i samo ako je (R) < 1, pri cemu je (R) spektralni radijus matrice R = M 1 K . Uo cite da (R) ovisi samo o A i njenom rastavu, a ne o b. Dokaz: Ako je (R) 1, izaberimo startnu aproksimaciju x(0) tako da je x(0) x svojstveni vektor koji pripada svojstvenoj vrijednosti , (R) = ||. Tada vrijedi (x(m+1) x) = R(x(m) x) = = Rm+1 (x(0) x) = m+1 (x(0) x), pa, o cito (m + 1)-a potencija broja koji je po apsolutnoj vrijednosti ve ci ili jednak 1, ne mo ze te ziti u 0. S druge strane, ako je (R) < 1, onda mo zemo izabrati > 0 takav da je (R) + < 1, a zatim po lemi 7.1.2. i operatorsku normu R Budu ci da je da je

takvu da vrijedi (7.1.2)

(R) + < 1.

operatorska norma, ponovno, po prvom dijelu leme 7.1.2. slijedi (R) R . R

(7.1.3)

Relacije (7.1.2) i (7.1.3) zajedno daju da je

< 1,

pa primjenom leme 7.1.1. dobivamo tra zeni rezultat. Lema 7.1.1. i teorem 7.1.1., zapravo nam daju i brzinu konvergencije. Prisjetimo se sto je brzina konvergencije.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 108

Denicija 7.1.2. Za niz aproksimacija x(m) , m N0 , re ci cemo da konvergira prema x s redom p ako je x(m+1) x c x(m) x p , c R+ 0.

Ako je p = 1 (tzv. linearna konvergencija), mora biti c < 1 (tzv. geometrijska konvergencija s faktorom c). U slu caju iterativnih metoda, konvergencija je linearna, a faktor je (R) < 1, tj. vrijedi x(m+1) x (R) x(m) x . Podijelimo li prethodnu relaciju s (R) x(m+1) x , a zatim logaritmiramo, dobivamo log (R) log x(m) x log x(m+1) x , (7.1.4) pa zbog toga broj nam ka mo zemo denirati kao brzinu konvergencije iteracija. Sto ze relacija (7.1.4)? Broj r (R) je porast broja korektnih decimalnih znamenki u rje senju po iteraciji. Dakle, sto je manji (R), to je ve ca brzina konvergencije iteracija. Naravno, sljede ci cilj nam je odgovoriti na pitanje kako odrediti rastav matrice A = M K koji zadovoljava (1) Rx = M 1 Kx i c = M 1 b se lako ra cunaju, (2) (R) je malen? Odmah nam se name cu neka jednostavna rje senja za ova dva suprotna cilja. Na primjer, izaberemo li M = I , M je regularna, i Rx i c se lako ra cunaju, ali nije jasno da smo zadovoljili da je (R) < 1. S druge strane, izbor K = 0 je izvrsan za drugi cilj ((R) = 0), ali nije dobar za prvi cilj, jer je c = A1 b, tj. dobivamo polazni problem kojeg treba rije siti (x = c). Dakle, rastav koji bi uvijek dobro radio nije lako konstruirati. Medutim tu ce nam pomo ci praksa. Matrice koje se javljaju u praksi su ili pozitivno denitne ili (strogo) dijagonalno dominantne, pa ce za takve tipove matrica biti mnogo lak se konstruirati iterativne metode i pokazati da one konvergiraju. Uvedimo sljede cu notaciju. Pretpostavimo da A nema nula na dijagonali. Tada A mo zemo zapisati kao A = D L U = D (I L U ), pri cemu je D dijagonala od A, L striktno donji trokut od A, a U striktno gornji trokut od A. Jednako tako, vrijedi DL = L, DU = U . r (R) = log (R)

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 109

7.2.

Jacobijeva metoda

Op cenito govore ci Jacobijeva metoda u petlji prolazi kroz jednad zbe linearnog sustava, mijenjaju ci j -tu varijablu, tako da j -ta jednad zba bude ispunjena. Dakle, (m+1) u (m + 1)-om koraku vrijednost varijable xj , u oznaci xj , ra cunamo iz j -te jednad zbe kori stenjem aproksimacija iz m-tog koraka za preostale varijable, tj. vrijedi ajj xj
(m+1) n

+
k =1 k =j

ajk xk

(m)

= bj ,

j = 1, . . . , n.

(7.2.1)

Naravno, to ide ako i samo ako je ajj = 0 za sve j . Vidimo da na nove komponente djeluju samo dijagonalni elementi matrice A, dok svi ostali djeluju na stare (prethodne ili pro sle) komponente. Skupimo li sve jednad zbe iz (7.2.1) za jedan korak, onda ih zajedno mo zemo zapisati kao Dx(m+1) = (L + U )x(m) + b, ili x(m+1) = D 1 (L + U )x(m) + D 1 b := RJac x(m) + cJac , uz RJac = D 1 (L + U ) = L + U, Pripadni rastav matrice A je A = D (L + U ), tj. M = D , K = L + U . Algoritam 7.2.1. (Jedan korak Jacobijeve metode) for j := 1 to n do
(m+1) xj n (m)

cJac = D 1 b.

:= bj

ajk xk
k =1 k =j

ajj ;

Uo cimo da petlju po j u ovom algoritmu, odnosno prolaz kroz jednad zbe sustava u (7.2.1), mo zemo napraviti bilo kojim redom po j ne nu zno sekvencijalnim. Komponente novog vektora x(m+1) ovise samo o komponentama starog vektora x(m) , a ne i o nekim novim komponentama. Zbog toga je Jacobijeva metoda idealna za paralelno ra cunanje, jer pojedine komponente novog vektora mo zemo ra cunati potpuno nezavisno.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 110

7.3.

GaussSeidelova metoda

Ako komponente novog vektora u Jacobijevoj metodi zaista ra cunamo sekvencijalno, od prve prema zadnjoj, odmah se name ce ideja za pobolj sanje. Naime, u aproksimaciji j -te varijable u (m+1)-om koraku koristimo aproksimaciju svih ostalih (m+1) varijabli iz prethodnog m-tog koraka, iako ve c imamo pobolj sane varijable xi , za i < j , iz novog koraka. Iskoristimo li sve poznate nove komponente umjesto starih, onda (7.2.1) glasi
(m+1) ajj xj j 1

+
k =1

(m+1) ajk xk

+
k =j +1

ajk xk

(m)

= bj ,

j = 1, . . . , n.

(7.3.1)

Ovu metodu zovemo GaussSeidelova metoda. Poredak prolaska kroz jednad zbe sustava postaje potpuno odreden i strogo sekvencijalan, od prve prema zadnjoj. Opet, to ide ako i samo ako je ajj = 0 za sve j . Na nove komponente djeluju, osim dijagonalnih, i svi elementi donjeg trokuta matrice A, dok samo strogo gornji trokut djeluje na stare komponente. Sve jednad zbe iz (7.3.1) za jedan korak iteracija mo zemo zajedno zapisati u obliku (D L)x(m+1) = U x(m) + b, ili uz x(m+1) = (D L)1 U x(m) + (D L)1 b := RGS x(m) + cGS , RGS = (D L)1 U = (I L)1 U, cGS = (D L)1 b = (I L)1 D 1 b.

Matrica RGS je singularna, jer je U strogo gornja trokutasta (det U = 0). Pripadni rastav matrice A je A = (D L) U , tj. M = D L, K = U . Algoritam 7.3.1. (Jedan korak GaussSeidelove metode) for j := 1 to n do xj
(m+1) j 1 n

:= bj

ajk xk
k =1

(m+1)

ajk xk
k =j +1

(m)

ajj ;

Zgodna je stvar da u implementaciji GaussSeidelove metode ne moramo pamtiti dva vektora, ve c samo jedan, tako da nove izra cunate komponente prepisujemo preko starih u istom polju x. S druge strane, redosljed popravaka varijabli u Jacobijevom algoritma ne igra nikakvu ulogu, u smislu da bilo koji poredak izvr savanja petlje po j daje isti

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 111

rezultat i, naravno, istu iterativnu metodu. Nasuprot tome, redosljed popravaka kod GaussSeidelovog algoritma je bitan. U (7.3.1) i u algoritmu 7.3.1. uzeli smo prirodni redosljed od prve prema zadnjoj jednad zbi, odnosno, varijabli (petlja po j od 1 do n). To ne zna ci da je to i jedini mogu ci redosljed. U principu, mo zemo uzeti i bilo koji drugi redosljed, tj. bilo koju drugu od mogu cih n! permutacija jednad zbi. No, zbog sekvencijalnosti popravaka, rezultat nije isti, tj. dobivamo druga ciju iterativnu metodu. U praksi se katkad i koriste druga ciji redosljedi, ali za sasvim posebne linearne sustave koji nastaju diskretizacijom parcijalnih diferencijalnih jednad zbi. Na primjer, za Laplaceovu jednad zbu u dvije dimenzije koristi se tzv. crvenocrni poredak (engl. redblack ordering), koji nali ci sahovskoj plo ci s crvenim i crnim poljima, s tim da se prvo ra cunaju sva polja crvene boje, a zatim sva polja crne boje. Zbog posebne strukture sustava, ovaj poredak dozvoljava i ekasnu paralelizaciju.

7.4.

JOR metoda (Jacobi overrelaxation)

Kad jednom znamo konstruirati iterativni proces, name ce se vrlo jednostavna ideja za njegovo pobolj sanje, uvodenjem jednog realnog parametra. Nove aproksimacije mo zemo ra cunati u dva koraka. Prvo iz x(m) nademo (jednostavnu) pomo cnu (m+1) (m+1) sljede cu aproksimaciju x , a zatim za pravu novu aproksimaciju x uz(m) memo te zinsku sredinu prethodne aproksimacije x i pomo cne nove aproksimacije (m+1) x
m+1) m+1) x(m+1) = (1 )x(m) + x( = x(m) + (x( x(m) ),

(7.4.1)

gdje je te zinski parametar kojeg mo zemo birati. O cito, za = 1 dobivamo (m+1) (m+1) x = x , pa je ova metoda pro sirenje metode za nala zenje pomo cnih aproksimacija. Obi cno se uzima R i = 0, da ne dobijemo stacionaran niz.

Ideja za ovakav postupak dolazi iz op cih metoda za rje savanje jednad zbi i (m+1) minimizaciju funkcionala. Pomo cna aproksimacija x daje smjer korekcije prethodne aproksimacije x(m) u kojem treba i ci da bismo se pribli zili pravom rje senju (m+1) sustava ili smanjili rezidual r (x) = Ax b u nekoj normi. No, ako je x x(m) dobar smjer korekcije, onda mo zemo dodati i izbor duljine koraka u smjeru te korekcije, tako da dobijemo sto bolji x(m+1) . Op cenito o cekujemo da je > 0, tj. da idemo u smjeru vektora korekcije, a ne suprotno od njega, a stvarno zelimo dobiti > 1, tako da se jo s vi se maknemo u dobrom smjeru i pribli zimo pravom rje senju ili to cki minimuma. Naziv relaksacija dolazi upravo iz minimizacijskih metoda, a odnosi se na sve iterativne metode koje koriste neki oblik minimizacije ili poku saja minimizacije reziduala. U tom smislu, cesto se koristi i tradicionalni naziv relaksacijski parametar za .

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 112

Obzirom na vrijednost parametra , imamo tri razli cita slu caja. Ako je = 1, onda se metoda svodi na pomo cnu metodu i to je tzv. obi cna ili standardna relaksacija. Ako je < 1, onda takvu metodu zovemo podrelaksacija (engl. underrelaxation), a ako je > 1 onda metodu zovemo nad- ili pre-relaksacija (engl. overrelaxation). U op cem slu caju, se posebno ra cuna u svakoj pojedinoj iteraciji, tako da (m+1) dobijemo sto bolji x . Postupak se svodi na jednodimenzionalnu optimizaciju (kao i odredivanje koraka u vi sedimenzionalnoj optimizaciji), a ovisi o kriteriju optimalnosti za mjerenje kvalitete aproksimacija. Sre com, za neke klase linearnih sustava, koje su izrazito bitne u praksi, unaprijed se mo ze dobro odabrati optimalni ili skoro optimalni parametar za maksimalno ubrzanje konvergencije iterativnih metoda i to tako da isti vrijedi za sve iteracije. U ve cini slu cajeva dobivamo > 1 za optimalni , pa se takve metode standardno zovu OverRelaxation i skra ceno ozna cavaju s OR. Obzirom na to da se zadaje ili bira unaprijed, a zatim koristi za sve iteracije, metoda je ovisna o jednom parametru i standardno koristimo oznaku OR( ). Ako se pomo cna nova aproksimacija x iz (7.4.1) ra cuna po Jacobijevoj metodi, dobivamo Jacobijevu nadrelaksaciju ili JOR metodu. Iz (7.2.1) za kompo(m+1) nente pomo cne aproksimacije xJac vrijedi xj,Jac = bj
(m+1) n k =1 k =j (m+1)

ajk xk

(m)

ajj ,

j = 1, . . . , n.

Kad to uvrstimo u (7.4.1) dobivamo sljede ci algoritam. Algoritam 7.4.1. (Jedan korak JOR( ) metode) for j := 1 to n do xj
(m+1) (m)

:= (1 )xj

bj ajj

n k =1 k =j

ajk xk

(m)

Kao i kod obi cne Jacobijeve metode, petlju po j mo zemo izvr siti bilo kojim redom po j , uz isti rezultat, pa se i ovdje komponente novog vektora x(m+1) mogu paralelno ra cunati. Vektorski oblik iteracija u JOR( ) metodi je x(m+1) = (1 )x(m) + (RJac x(m) + cJac ) := RJOR () x(m) + cJOR() pa je RJOR() = (1 )I + RJac = (1 )I + (L + U ), cJOR() = cJac = D1b.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 113

Pripadni rastav matrice A je A=


1 D, K = tj. M =

1 1 D D+L+U , Naravno, za = 1 dobivamo Jacobijevu metodu.

1 D + L + U.

Iz oblika matrice RJOR() vidimo da se optimalni parametar koji minimizira njen spektralni radijus mo ze odrediti unaprijed, prije po cetka iteracija. Drugim rije cima, treba koristiti isti u svim iteracijama, naravno, pod uvjetom da imamo konvergenciju.

7.5.

SOR metoda (Successive overrelaxation)

Relacija (7.4.1) koristi ideju te zinske sredine ili duljine koraka na nivou vek(m) torskih aproksimacija x . To prirodno odgovara Jacobijevoj metodi i paralelnom ra cunanju. Medutim, potpuno istu ideju mo zemo koristiti i za pobolj sanje svake (m) (m) pojedine varijable xj , tj. pojedina cnih komponenti vektora x , sto odgovara GaussSeidelovskom pristupu. Dakle, nova aproksimacija j -te varijable ima oblik xj
(m+1)

= (1 )xj
(m+1)

(m)

+ xj,

(m+1)

= xj

(m)

+ (xj,

(m+1)

xj ),

(m)

j = 1, . . . , n, (7.5.1)

neka pomo cna nova aproksimacija j -te varijable, koju ra cunamo tog gdje je xj, trenutka kad nam treba, za svaki pojedini j . SOR metoda (engl. Successive OverRelaxation ili ponovljena nad- ili prerelaksacija) je pro sirenje ili pobolj sanje GaussSeidelove metode u smislu da se (m+1) pomo cna nova aproksimacija xj, iz (7.5.1) ra cuna po GaussSeidelovoj metodi, (m+1) pa ju ozna cavamo s xj,GS . Relacija (7.5.1) za j -tu komponentu nove aproksimacije u SOR( ) metodi ima oblik xj
(m+1)

= (1 )xj

(m)

+ xj,GS ,

(m+1)

j = 1, . . . , n.
(m+1)

(7.5.2)

Iz (7.3.1), trenutna pomo cna GaussSeidelova aproksimacija xj,GS koju mo zemo (m+1) izra cunati iz poznatih prvih j 1 komponenti novog vektora x i preostalih (m) komponenti iz prethodne aproksimacije x je
(m+1) xj,GS j 1

= bj

(m+1) ajk xk

k =1

ajk xk
k =j +1

(m)

ajj .
(m+1)

Kad to uvrstimo u (7.5.2), mo zemo izra cunati j -tu komponentu xj macije po SOR( ) metodi.

nove aproksi-

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 114

Algoritam 7.5.1. (Jedan korak SOR( ) metode) for j := 1 to n do


(m+1) xj j 1 n (m+1) (m) + bj ajk xk ajk xk ; ajj k =1 k =j +1

:= (1

(m) )xj

Iz algoritma odmah vidimo da je


(m+1) ajj xj j 1

+
k =1

(m+1) ajk xk

= (1

(m) )ajj xj

ajk xk
k =j +1

(m)

+ bj ,

j = 1, . . . , n.

Ove jednad zbe mo zemo zapisati u vektorskom obliku (D L)x(m+1) = ((1 )D + U )x(m) + b, odakle slijedi RSOR() = (I L)1 ((1 )I + U ), cSOR() = (I L)1 D 1 b.

I ovdje vidimo da se dobra vrijednost za , ako postoji, mo ze odrediti unaprijed za sve iteracije. Nakon analize konvergencije ovih iterativnih metoda, pokazat cemo da za neke klase matrica mo zemo na ci optimalni izbor parametra koji ubrzava konvergenciju, i da vrijedi > 1, sto opravdava naziv OR u ovim metodama.

7.6.

Konvergencija Jacobijeve i GaussSeidelove metode

U ovom poglavlju nabrojit cemo, a u ve cini slu cajeva i dokazati, koji su dovoljni uvjeti za konvergenciju pojedine metode. Teorem 7.6.1. Ako je A strogo dijagonalno dominantna matrica po recima, onda i Jacobijeva i GaussSeidelova metoda konvergiraju i vrijedi RGS

RJac

< 1.

Dokaz: Prije dokaza, uo cimo da relacija RGS RJac zna ci da jedan korak u najgorem slu caju (problemu) za GaussSeidelovu metodu konvergira barem jednako brzo kao i jedan korak u najgorem slu caju za Jacobijevu metodu. To ne zna ci da ce GaussSeidelova metoda konvergirati br ze nego Jacobijeva za bilo koji problem Ax = b. Naprosto, mo ze se dogoditi da Jacobijeva metoda u nekom koraku slu cajno ima manju gre sku.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 115

Prvo poka zimo da je RJac recima |ajj | > vrijedi da je 1 > max
j

< 1. Zbog stroge dijagonalne dominantnosti po |akj |,


n k =1 k =j

j = 1, . . . , n

k =1 k =j

1 |ajj |

|akj | = RJac

Sada nam preostaje dokazati da je RGS

Matrice iteracija mo zemo napisati u obliku RJac = L + U , i RGS = (I L)1 U . Zelimo dokazati da vrijedi RGS

RJac

= |RGS | e

|RJac | e

= RJac

(7.6.1)

pri cemu je e vektor sa svim komponentama jednakim 1, tj. e = (1, . . . , 1)T . Ovu relaciju mo zemo lako pokazati ako doka zemo ja cu komponentnu nejednakost |(I L)1 U | e = |RGS | e |RJac | e = (|L| + |U |) e. Krenimo slijeva i iskoristimo relaciju trokuta. Vrijedi |(I L)1 U | e |(I L)1 | |U | e. (7.6.3) (7.6.2)

Primijetimo da je L strogo donjetrokutasta (nilpotentna) matrica, pa je Lk = 0 za k n, pa prethodni red postaje (I L)1 = I + L + L2 + + Ln1 . Uvrstimo to u (7.6.3), pa ponovnim kori stenjem relacije trokuta i formule za inverz matrice oblika (I A), dobivamo
n1 n1

Ako je (L) < 1, (a je, jer je (L) = 0!), onda je I L regularna i mo zemo (I L)1 razviti u red (I L)1 = I + L + L2 + + Ln +

|(I L)1 U | e

i=0

Li |U | e

i=0

|L|i |U | e (I |L|)1 |U | e.

Relacija (7.6.2) ce vrijediti ako doka zimo jo s ja cu komponentnu nejednakost (I |L|)1 |U | e (|L| + |U |) e. (7.6.4)

Budu ci da su svi clanovi u redu za (I |L|)1 nenegativni, dovoljno je pokazati da je |U | e (I |L|) (|L| + |U |) e = (|L| + |U | |L|2 |L| |U |) e,

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 116

odnosno 0 (|L| |L|2 |L| |U |) e = |L| (I |L| |U |) e. (7.6.5) Ponovno, budu ci da su svi elementi |L| nenegativni, prethodna nejednakost bit ce ispunjena ako je 0 (I |L| |U |) e, odnosno (|L| + |U |) e e. Budu ci da je |RJac | = |L + U | = |L| + |U |, jer se elementi L i U nigdje ne zbrajaju, onda je posljednja nejednakost ekvivalentna s |RJac | e e. Ovu posljednju jednakost mo zemo dokazati jer je |RJac | e

= RJac

< 1.

Citanjem dokaza u obratnom redosljedu, dobivamo tra zena svojstva (7.6.4), (7.6.2), a onda i (7.6.1). Iako je zadnja nejednakost stroga, kad se vra camo unatrag, nejednakost u (7.6.5) vi se ne mora biti stroga, na primjer, za L = 0. Dakle, mo ze biti RGS = RJac . Analogni se rezultat, tj. da Jacobijeva i GaussSeidelova metoda konvergiraju, mo ze se dobiti i za strogo dijagonalno dominantne matrice po stupcima, samo onda ulogu norme igra norma 1. Uvjeti prethodnog teorema mogu se jo s malo oslabiti, do ireducibilnosti i slabe dijagonalne dominantnosti. Da bismo denirali ireducibilnu matricu, moramo denirati vezu izmedu matrica i grafova. Denicija 7.6.1. Matrici A odgovara usmjereni graf G(A) s cvorovima 1, . . . , n. Usmjereni brid tog grafa od cvora i do cvora j postoji ako i samo ako je aij = 0. Denicija 7.6.2. Usmjereni graf je jako povezan ako postoji put iz svakog cvora u svaki cvor. Komponenta jake povezanosti usmjerenog grafa je podgraf koji je jako povezan i ne mo ze se pove cati, a da ostane jako povezan. Denicija 7.6.3. Matrica A je reducibilna ako i samo ako postoji matrica permutacije P takva da je A11 A12 P AP T = , 0 A22 pri cemu su A11 i A22 kvadratni blokovi reda manjeg od n, tj. P AP T je blok gornjetrokutasta matrica. Matrica A je ireducibilna, ako nije reducibilna, tj. ako ne postoji matrica permutacije P za koju je P AP T blok gornjetrokutasta matrica.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 117

Najjednostavnija karakterizacija ireducibilnih matrica je preko jako povezanih pripadnih grafova. Lema 7.6.1. Matrica A je ireducibilna ako i samo ako je G(A) jako povezan. Dokaz: Ako je A reducibilna P AP T = A11 A12 0 A22

onda ne postoji povratak iz cvorova koji odgovaraju A22 u cvorove koji odgovaraju A11 , pa G(A) nije jako povezan. Obratno, ako G(A) nije jako povezan, postoji komponenta jake povezanosti koja ne sadr zi sve cvorove grafa. Ako matricu prepermutiramo tako da cvorovi iz te komponente dodu na po cetak (u blok A11 ), dobit cemo tra zeni blok gornjetrokutasti oblik. Denicija 7.6.4. Matrica A je slabo dijagonalno dominantna po recima ako za svaki j vrijedi
n

|ajj |

k =1 k =j

|akj |,

a stroga nejednakost se javlja barem jednom. Sada mo zemo oslabiti uvjete teorema 7.6.1., s tim da ovaj rezultat navodimo bez dokaza. Teorem 7.6.2. Ako je A ireducibilna i slabo dijagonalno dominantna matrica po recima, onda i Jacobijeva i GaussSeidelova metoda konvergiraju i vrijedi RGS

RJac

< 1.

Unato c navedenim rezultatima da je pod nekim uvjetima GaussSeidelova metoda br za nego Jacobijeva, ne postoji nikakav generalni rezultat te vrste. Dapa ce, postoje nesimetri cne matrice za koje Jacobijeva metoda konvergira, a GaussSeidelova ne, kao i matrice za koje GaussSeidelova metoda konvergira, a Jacobijeva divergira.

7.7.

Konvergencija JOR i SOR metode

Promotrimo sad konvergenciju relaksacijskih metoda JOR( ) i SOR( ) u ovisnosti o parametru . Obzirom na to da se ove metode za = 1 svode na Jacobijevu, odnosno, GaussSeidelovu metodu, usput cemo dobiti i neke rezultate o konvergenciji ovih osnovnih metoda. Za po cetak, promatramo JOR( ) metode, jer su bitno jednostavnije za analizu.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 118

Teorem 7.7.1. Ako Jacobijeva metoda za rje senje linearnog sustava Ax = b konvergira za svaku po cetnu iteraciju x(0) , onda za bilo koji (0, 1] konvergira i JOR( ) metoda za svaku po cetnu iteraciju. Dokaz: Prema teoremu 7.1.1., pretpostavka o konvergenciji Jacobijeve metode za svaku po cetnu iteraciju ekvivalentna je s cinjenicom da vrijedi (RJac ) < 1. Neka su j , j = 1, . . . , n, svojstvene vrijednosti matrice RJac . Onda je |j | < 1 za sve j . Ako j napi semo kao kompleksne brojeve u obliku j = j + ij , uz j , j R, onda iz 2 2 |j | < 1 slijedi j + j < 1 i |j | < 1. Matrica iteracije u JOR( ) metodi je RJOR() = (1 )I + RJac = (1 )I + (L + U ), sto je polinom u funkciji od RJac , pa za svojstvene vrijednosti j matrice RJOR() vrijedi j = 1 + j , j = 1, . . . , n, odakle izlazi
2 |j |2 = |(1 + j ) + ij |2 = (1 + j )2 + 2 j .

Ako je 0 < 1, onda vrijedi ocjena


2 2 |j |2 (1 )2 + 2 (1 )|j | + 2 (j + j )

< (1 )2 + 2 (1 ) + 2 = (1 + )2 = 1,

odakle slijedi (RJOR () ) < 1, a to zna ci da JOR( ) metoda konvergira za svaku po cetnu iteraciju. Prethodni rezultat daje samo uvjetnu konvergenciju, u smislu da ako metoda konvergira za = 1, onda konvergira i za sve iz skupa (0, 1]. Precizniju, ali negativnu informaciju daje sljede ci rezultat. Teorem 7.7.2. Vrijedi (RJOR() ) | 1|, pa je 0 < < 2 nu zan uvjet za konvergenciju JOR metode. Dokaz: Znamo da je trag matrice jednak zbroju svih njezinih svojstvenih vrijednosti. Promotrimo trag matrice RJOR() = (1 )I + RJac = (1 )I + (L + U ). Drugi clan (L + U ) ima nul-dijagonalu, pa samo prvi clan daje trag
n

tr(RJOR() ) = n(1 ) =

j .
j =1

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 119

Dobivamo da je n|1 |

n j =1

|j | n(RJOR () ),

Za simetri cne (hermitske) i pozitivno denitne matrice A, mo zemo dobiti i pozitivnu informaciju o garantiranoj konvergenciji JOR metode. Teorem 7.7.3. Neka je A simetri cna (hermitska) i pozitivno denitna matrica i neka za svojstvene vrijednosti j matrice RJac Jacobijeve metode vrijedi j < 1, j = 1, . . . , n.

odakle slijedi (RJOR () ) | 1|. Dakle, za konvergenciju JOR( ) metode mora vrijediti | 1| < 1, ili 0 < < 2. U protivnom, za neke x(0) metoda divergira.

Onda JOR( ) metoda konvergira za sve parametre za koje vrijedi 0<< 2 2, 1 (7.7.1)

gdje je := minj j najmanja svojstvena vrijednost matrice RJac . Dokaz: Prvo uo cimo da je RJac = D 1 (L + L ) = D 1/2 (D 1/2 (L + L )D 1/2 )D 1/2 sli cna simetri cnoj (hermitskoj) matrici D 1/2 (L + L )D 1/2 , pa su joj svojstvene vrijednosti j realne. Ve c smo vidjeli da za svojstvene vrijednosti j matrice RJOR() vrijedi j = 1 + j , j = 1, . . . , n, pa je 1 j = (1 j ), odakle slijedi da je |j | < 1 za sve j , ako i samo ako vrijedi 0 < (1 j ) < 2, j = 1, . . . , n.

Iz j < 1 slijedi 1j > 0, pa mora biti > 0. S druge strane, iz (1j ) (1) izlazi uvjet (1 ) < 2, pa je < 2/(1 ). Na kraju, iz tr(RJac ) = 0 slijedi da najmanja svojstvena vrijednost zadovoljava 0, sto dokazuje (7.7.1).

Ovaj rezultat ne zna ci da Jacobijeva metoda konvergira jer se mo ze dogoditi da je 1, pa u (7.7.1) dobivamo < 1. Medutim, ako Jacobijeva metoda konvergira, onda konvergira i JOR, s tim da u (7.7.1) mo zemo uzeti i > 1. Korolar 7.7.1. Neka je A simetri cna (hermitska) pozitivno denitna matrica i pretpostavimo da Jacobijeva metoda konvergira. Onda konvergira i JOR( ) metoda za sve parametre za koje vrijedi (7.7.1) i u toj relaciji je 2/(1 ) > 1. Dokaz: Iz konvergencije Jacobijeve metode slijedi 1 < j < 1, za sve j , pa vrijedi

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 120

zaklju cak prethodnog teorema. Osim toga, vrijedi i > 1, pa je 1 < 2, sto pokazuje da je gornja granica za u (7.7.1) ve ca od 1. Ovo je poja canje teorema 7.7.1. za simetri cne (hermitske) pozitivno denitne matrice. Na zalost, gornju granicu za dozvoljeni > 1 nije lako na ci. Ako znamo (RJac ), mo zemo koristiti ocjenu 1 < (RJac ) i birati tako da je 1<< 2 2 2. 1 + (RJac ) 1

cemo takvim izborom parametra ubrzati konvergenciju Medutim, nije jasno da iterativne metode. Obzirom na to da za SOR metodu mo zemo dobiti ja ce rezultate, JOR metoda se relativno rijetko koristi u praksi. Prvi rezultat za SOR metodu je isti nu zni uvjet konvergencije kao i kod JOR metode. Teorem 7.7.4. Vrijedi (RSOR () ) | 1|, pa je 0 < < 2 nu zan uvjet za konvergenciju SOR metode. Dokaz: Znamo da je determinanta matrice jednaka produktu svih njezinih svojstvenih vrijednosti. Izra cunajmo determinantu matrice RSOR () = (I L)1 ((1 )I + U ) koja je produkt trokutastih matrica. Iskoristimo BinetCauchyjev teorem i cinjenicu da su L i U strogo trokutaste matrice. Zbog toga, samo dijagonale, tj. clanovi s I ulaze u determinante, pa je det RSOR() = det(I L)1 det((1 )I + U ) = det I det((1 )I ) = (1 )n . S druge strane je det RSOR() =
j =1 n

j (RSOR() ),

pa iz |j (RSOR() )| (RSOR () ) dobivamo


n

|1 |n =

j =1

|j (RSOR() )| ((RSOR() ))n ,

odakle slijedi (RSOR() ) | 1|. Dakle, za konvergenciju SOR( ) metode mora vrijediti | 1| < 1, ili 0 < < 2. U protivnom, metoda sigurno divergira, bar za neke po cetne vektore x(0) . Ako je A simetri cna (hermitska) i pozitivno denitna, uvjet 0 < < 2 je i dovoljan za konvergenciju.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 121

Teorem 7.7.5. Ako je A simetri cna (hermitska) i pozitivno denitna matrica tada je (RSOR() ) < 1 za 0 < < 2, pa SOR( ) konvergira. Posebno, uzimaju ci = 1, slijedi da i GaussSeidelova metoda konvergira. Dokaz: Da bismo skratili pisanje, ozna cimo s R := RSOR() . Trebamo dokazati da za sve svojstvene vrijednosti matrice R vrijedi |j (R)| < 1, tj. da one le ze unutar jedini cnog kruga u kompleksnoj ravnini. Da bismo to dokazali, trebamo iskoristiti da su svojstvene vrijednosti od A na pozitivnoj realnoj osi. Dokaz se sastoji od dva koraka. U prvom, prebacujemo problem iz jedini cnog kruga u desnu otvorenu poluravninu Re z > 0, gdje je lak se iskoristiti pozitivnu denitnost matrice A. Za prvi korak koristimo razlomljene linearne transformacije. Lako se provjerava da takva (tzv. M obiusova) transformacija oblika (z ) := 1+z 1z

bijektivno preslikava unutra snjost jedini cnog kruga |z | < 1 na desnu otvorenu poluravninu Re > 0. Na isti na cin zelimo transformirati svojstvene vrijednosti matrice R. Dakle, trebamo gledati matricu (R). Obzirom na to da mno zenje matrica ne mora biti komutativno, pokazat ce se da je zgodnije inverz pisati kao lijevi faktor (sami pogledajte put kroz dokaz ako inverz pi semo s desne strane). Deniramo matricu S := (I R)1 (I + R). (7.7.2)

Tada za svojstvene vrijednosti vrijedi j (S ) = (j (R)), pa S ima svojstvene vrijednosti u desnoj otvorenoj poluravnini ako i samo ako R ima svojstvene vrijednosti unutar jedini cnog kruga. Na zalost, to vrijedi samo ako je S korektno denirana, tj. ako je I R regularna. To jo s ne znamo, pa poku sajmo do ci do relacije za S koja je uvijek korektna. Polazna matrica A je po pretpostavci regularna. Da bismo dobili iterativnu metodu s matricom iteracije R (sasvim op cenito), koristimo rastav ili cijepanje matrice A = M K , pa ako je M regularna, onda je R = M 1 K = M 1 (M A) = I M 1 A. Tada je I R = M 1 A o cito regularna (produkt regularnih), a I + R = 2I M 1 A. Za S dobivamo S = (I R)1 (I + R) = A1 M (2I M 1 A) = 2A1 M I. Dakle, ako deniramo S := 2A1 M I = A1 (2M A), (7.7.3)

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 122

onda je S korektno denirana za bilo koju regularnu matricu A, cak i kad M nije regularna. Za nastavak dokaza treba iskoristiti ostale pretpostavke na A i pogledati kad svojstvene vrijednosti matrice S le ze u desnoj otvorenoj poluravnini, u ovisnosti o u SOR metodi. Neka je (, x) bilo koji svojstveni par od S , tj. Sx = x. Iz (7.7.3), mno zenjem s A, onda vrijedi i (2M A)x = ASx = Ax. Mno zenjem s x slijeva dobivamo x (2M A)x = x Ax. Napi simo adjungiranu (ozvjezdi cenu) jednad zbu, iskoristiv si simetri cnost (hermiti c nost) matrice A = A Ax, x (2M A)x = x i zbrojimo ih. Dijeljenjem s 2 dobivamo x (M + M A)x = + x Ax = (Re )x Ax. 2

Po pretpostavci je x = 0 (svojstveni vektor od S ), pa iz pozitivne denitnosti od A slijedi x Ax > 0. Dijeljenjem dobivamo x (M + M A)x , x Ax pa je Re > 0 ako i samo ako je brojnik pozitivan. Re = oblik pa je M korektno denirana za = 0. Osim toga, iz A = A slijedi U = L , ili A = D L L . Koriste ci D = D , dobivamo da je M + M A = ( 1 D L) + ( 1D L ) (D L L ) = (2 1 1)D. Dijagonala D simetri cne (hermitske) pozitivno denitne matrice A je i sama simetri cna (hermitska) pozitivno denitna matrica. Na kraju, iz x (M + M A)x = (2 1 1)x Dx dobivamo da je brojnik u (7.7.4) pozitivan, ako i samo ako je 2 1 1 > 0 ili 0 < < 2. Dakle, za matricu S u SOR metodi vrijedi Re j (S ) > 0 za sve j , ako (i samo ako) je 0 < < 2. Na zalost, jo s uvijek ne mo zemo iskoristiti (7.7.2). No, inverz funkcije 1 z ( ) = +1 M = 1(D L) = 1 D L, (7.7.4)

Sad iskoristimo da matrica M kod rastava matrice A u SOR( ) metodi ima

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 123

preslikava desnu otvorenu poluravninu na unutra snjost jedini cnog kruga. Rje savanjem jednad zbe (7.7.2) po S , o cekujemo da je R = (S I )(S + I )1 . Zaista, ako je Re j (S ) > 0 za sve j , onda je S + I regularna, pa iz (7.7.3) slijedi (S I )(S + I )1 = (2A1 M 2I ) (2A1 M )1 = I M 1 A = R, a onda iz veze spektara vrijedi |j (R)| < 1 za sve j | j (R )| = j (S ) 1 (Re j (S ) 1)2 + (Im j (S ))2 = j (S ) + 1 (Re j (S ) + 1)2 + (Im j (S ))2
1/2

(Re j (S ))2 2 Re j (S ) + 1 + (Im j (S ))2 = (Re j (S ))2 + 2 Re j (S ) + 1 + (Im j (S ))2

1/2

< 1.

Lako se vidi da vrijedi i obrat, tj. iz |j (R)| < 1 za sve j , koriste ci (7.7.2), dobivamo Re j (S ) > 0 za sve j . O cito je da smo prethodni dokaz mogli provesti i mnogo br ze ili kra ce. Njegov deduktivni dio ima samo dva bitna koraka: (1) deniramo S = A1 (2M A) i poka zemo da je Re j (S ) > 0 za sve j ,

(2) poka zemo da je R = (S I )(S + I )1 , a zatim da je |j (R)| < 1 za sve j . Medutim, oblik matrice S i njezina veza s R nisu pali s neba, niti su rezultat pogadanja. U pozadini cijele konstrukcije je lijepo matemati cko opravdanje koje smo posebno zeljeli naglasiti. Iz posljednja dva teorema odmah izlazi sljede ci rezultat. Korolar 7.7.2. Ako je A simetri cna (hermitska) pozitivno denitna matrica, onda SOR( ) konvergira ako i samo ako je 0 < < 2. U usporedbi s korolarom 7.7.1. za JOR metodu, ovo je bitno pro sirenje i poja canje. Ovdje dobivamo bezuvjetnu konvergenciju, ve ci raspon za i maksimalnu mogu cu gornju granicu 2, koja ne ovisi o .

7.8.

Optimalni izbor relaksacijskog parametra

Poka zimo jo s da se dobrim izborom relaksacijskog parametra mo ze posti ci bitno ubrzanje konvergencije iteracija u SOR( ) metodi, bar za neke klase matrica. Dokazat cemo klasi cni rezultat koji daje optimalni izbor parametra za klasu tzv. konzistentno poredanih matrica. Dokazao ga je D. M. Young, jo s 1950. godine,

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 124

a ima veliku prakti cnu vrijednost jer pokriva matrice koje se javljaju u diskretizaciji nekih parcijalnih diferencijalnih jednad zbi, poput Poissonove. Za po cetak, moramo denirati potrebne pojmove, koji se opet oslanjaju na vezu izmedu matrica i pripadnih grafova. Denicija 7.8.1. Matrica A ima svojstvo (A) ako postoji matrica permutacije P takva da vrijedi D1 A12 P AP T = , A21 D2 gdje su D1 i D2 dijagonalne matrice. Drugim rije cima, u pripadnom grafu G(A) cvorovi su podijeljeni u dva disjunktna skupa S1 i S2 , s tim da ne postoji brid koji ve ze dva razli cita cvora iz istog skupa Si . Ako ignoriramo bridove koji ve zu cvor sa samim sobom, onda bridovi ve zu samo cvorove iz razli citih skupova. Takav se graf zove bipartitni graf. Ako matrica A ima svojstvo (A), onda rastav ili cijepanje matrice P AP T za iterativnu metodu ima posebnu strukturu. Tada je P AP T = D1 A12 A21 D2 = D1 D2 0 0 0 A12 A21 0 0 0 := D L U .

Ako je D regularna, onda mo zemo korektno denirati sve opisane iterativne T metode za matricu P AP , a iz prethodne strukture dokazat cemo posebna svojstva tih iterativnih metoda. U praksi se obi cno pretpostavlja da je A sa svojstvom (A) ve c dovedena u ovaj oblik odgovaraju com permutacijom P , tj. da polazna matrica A ima ovu strukturu. U nastavku pretpostavljamo da je D regularna i koristimo standardne oznake L = D 1 L i U = D 1 U . Denicija 7.8.2. Neka je = 0. Denirajmo familiju matrica RJac () = D1 L + 1 1 1 D U = L + U. (7.8.1)

Vidimo da je RJac (1) = RJac matrica iteracije u Jacobijevoj metodi. Matrice RJac () za = 1 nemaju direktnu interpretaciju kao matrice iteracije u nekoj od standardnih iterativnih metoda koje smo opisali. Propozicija 7.8.1. Za matrice A sa svojstvom (A), svojstvene vrijednosti matrica RJac () ne ovise o , s tim da D , L i U dobivamo iz rastava matrice P AP T .

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 125

Dokaz: Po deniciji je RJac () = L + =


1 D1

1 1 U = D 1 L + U
1 D2

1 0 A12 0 0 + A21 0 0 0 0 .

= I I

0
1 D2 A21

1 1 D A12 1

Ovu relaciju mo zemo napisati i u obliku RJac () =


1 0 D1 A12 1 D2 A21 0

I I

1 1 = RJac ,

gdje je = diag(I, I ) dijagonalna matrica u kojoj dimenzije blokova odgovaraju dimenzijama blokova D1 i D2 . Zbog = 0, o cito je regularna. Zaklju cujemo da su RJac () i RJac sli cne matrice, a to povla ci da imaju iste svojstvene vrijednosti, tj. svojstvene vrijednosti RJac () ne ovise o . Svojstvo (A) iz denicije 7.8.1. je geometrijsko ili grafovsko svojstvo matrice. Posljedica toga je ovo algebarsko svojstvo invarijantnosti, kojeg cemo bitno koristiti u nastvaku, pa mu dajemo posebno ime. Denicija 7.8.3. Neka je A proizvoljna matrica takva da je A=DLU s tim da je D regularna i 1 1 1 D U = L + U. Ako svojstvene vrijednosti matrice RJac () ne ovise o , onda ka zemo da A ima konzistentan poredak (engl. consistent ordering). RJac () = D1 L + Ako A ima svojstvo (A), onda P AP T ima konzistentan poredak. Obratno ne vrijedi, tj. ako matrica ima konzistentan poredak, ne mora imati svojstvo (A). Primjer 7.8.1. Blok trodijagonalne matrice oblika

D1 L 1

U1 .. . .. .

.. ..

. . Um1 Dm

Lm1

imaju konzistentan poredak kad su Di regularne dijagonalne matrice bilo kojih redova, za bilo koji blok red m. Poka zite to!

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 126

Medutim, za m > 2, ako su vandijagonalni blokovi netrivijalni, ove matrice nemaju svojstvo (A). Takvim matricama odgovaraju tzv. slojeviti grafovi, u kojima cvorove mo zemo podijeliti u m disjunktnih skupova slojeva, tako da bridovi idu samo izmedu cvorova koji su u razli citim, ali susjednim slojevima. Kao i prije, ignoriramo bridove iz cvora u samog sebe. U ovom kontekstu, bipartitni graf ima samo 2 sloja. Za matrice koje imaju konzistentan poredak postoje jednostavne formule koje ve zu svojstvene vrijednosti matrica RJac , RGS i RSOR() . Teorem 7.8.1. Ako matrica A ima konzistentan poredak i ako je = 0, onda vrijedi: (a ) Svojstvene vrijednosti matrice RJac () dolaze u parovima. Preciznije, ako je = 0 svojstvena vrijednost od RJac multipliciteta , onda je i svojstvena vrijednost od RJac multipliciteta . (b ) Ako je svojstvena vrijednost od RJac i ako zadovoljava jednad zbu ( + 1)2 = 2 2 , onda je svojstvena vrijednost od RSOR() . (c ) Obratno, ako je = 0 svojstvena vrijednost od RSOR() , onda je iz (7.8.2) svojstvena vrijednost od RJac . Dokaz: Prije po cetka dokaza uo cimo da predznak od ne igra ulogu u (7.8.2), sto je u suglasnosti s prvom tvrdnjom. Takoder, relacija (7.8.2) generira isti broj vrijednosti za i , uz uvjet da je = 0. (a ) Po deniciji 7.8.3., ako A ima konzistentan poredak, onda svojstvene vrijednosti od RJac () ne ovise o . Posebno, to zna ci da matrice RJac = RJac (1) i RJac (1) imaju iste svojstvene vrijednosti. S druge strane, prema deniciji (7.8.1) za RJac (1) izlazi RJac (1) = D 1 L D 1 U = (L + U ) = RJac (1) = RJac , pa matrice RJac i RJac istovremeno moraju imati iste i suprotne svojstvene vrijednosti. To je mogu ce ako i samo ako svojstvene vrijednosti dolaze u parovima s istim multiplicitetom, cim je = 0. (b ) Neka je svojstvena vrijednost od RJac i pretpostavimo da zadovoljava jednad zbu (7.8.2). Ako je = 0, onda u (7.8.2) mora biti = 1, tj. SOR metoda se svodi na GaussSeidelovu metodu. Tada je RSOR(1) = RGS = (I L)1 U , a znamo da je RGS singularna, jer je U strogo gornja trokutasta. Dakle, = 0 je tada svojstvena vrijednost za RSOR(1) . (7.8.2)

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 127

Pretpostavimo sad da je = 0. Onda, zbog = 0, iz jednad zbe (7.8.2) mo zemo izra cunati +1 = . (7.8.3) Matrica iteracije u SOR( ) metodi ima oblik RSOR() = (I L)1 ((1 )I + U ). Pogledajmo vrijednost karakteristi cnog polinoma p() = det(I RSOR () ) ove matrice u to cki . Da bismo se rije sili inverza u RSOR() , uo cimo da je det(I L) = 1, jer je L strogo donja trokutasta. Zbog toga, po BinetCauchyjevom teoremu vrijedi det(I RSOR() ) = det((I L) (I RSOR() )) = det((I L) ((1 )I + U )) = det(( + 1)I L U ). (7.8.4)

Zadnja dva clana zelimo svesti na oblik RJac () za neki , izlu civanjem odgovaraju ceg faktora. Imamo L + U = 1 L U = RJac ( ),

cimo isti faktor pa je = , s tim da smo iskoristili = 0. Kad u (7.8.4) izlu , uvrstimo ovu relaciju i uva zimo da je RJac ( ) = RJac (1) = RJac , dobivamo det(I RSOR() ) = det +1 I RJac +1 I RJac . = ( )n det

Vidimo da je faktor uz I upravo jednak iz (7.8.3), pa prethodna relacija postaje det(I RSOR() ) = ( )n det(I RJac ). (7.8.5) Ako je svojstvena vrijednost od RJac , onda je desna strana jednaka nuli, pa to vrijedi i za lijevu stranu, tj. je svojstvena vrijednost od RSOR() . (c ) Relaciju (7.8.5) smo izveli ba s uz pretpostavku da je = 0, pa odmah slijedi tvrdnja. Korolar 7.8.1. Ako A ima konzistentan poredak, tada je (RGS ) = ((RJac ))2 , sto zna ci da GaussSeidelova metoda konvergira dvostruko br ze nego Jacobijeva metoda (ako barem jedna od njih kovergira).

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 128

Dokaz: Izaberemo li u prethodnom teoremu = 1, onda je SOR metoda ba s Gauss Seidelova metoda, pa za taj relacija (7.8.2) glasi 2 = 2 , ili = 2 . Budu ci da to vrijedi za svaku svojstvenu vrijednost, onda to vrijedi i za spektralni radijus. Odavde odmah slijedi da za konzistentno poredane matrice GaussSeidelova metoda konvergira ako i samo ako konvergira i Jacobijeva metoda. Vidjet cemo da sli cno vrijedi i za SOR metodu. Medutim, dobit cemo i puno ja ci rezultat koji nam ka ze kako treba izabrati parametar za ubrzanje konvergencije u SOR metodi. Na po cetku ovog poglavlja vidjeli smo da brzina konvergencije iterativne metode ovisi o spektralnom radijusu (R) matrice iteracija R. Manji (R), op cenito, osigurava i br zu konvergenciju, jer vrijedi ocjena x(m+1) x

(R) x(m) x .

Za neke po cetne vektore i u nekim iteracijama mo zemo dobiti i manju gre sku, ali znamo da je ova ocjena dosti zna. Dakle, da bismo globalno ubrzali konvergenciju metode treba dobiti sto manji spektralni radijus (R). U tom smislu, kod SOR( ) metode, one vrijednosti parametra za koje je (RSOR() ) globalno najmanji, zovemo optimalnim relaksacijskim parametrima i ozna cavamo s opt . Uz blage dodatne uvjete i malo truda, iz relacije (7.8.2) mo zemo dobiti i taj optimalni izbor parametra opt koji minimizira RSOR() , tako da on ovisi samo o spektralnom radijusu (RJac ) u Jacobijevoj metodi. Teorem 7.8.2. Pretpostavimo da matrica A ima konzistentan poredak i da matrica RJac u Jacobijevoj metodi ima samo realne svojstvene vrijednosti. Onda SOR( ) metoda konvergira za bilo koji po cetni vektor ako i samo ako je := (RJac ) < 1 (tj. Jacobijeva metoda konvergira) i vrijedi 0 < < 2. Dodatno, za < 1 onda vrijedi i opt = 2 , 1 + 1 2

2 1 1 2 (RSOR(opt ) ) = opt 1 = = , (1 + 1 2 )2 1 + 1 2 a za sve (0, 2) vrijedi (RSOR () ) =


1

1,

1 2 2 +2 + 1 + 1 2 2 , 4

za 0 < opt ,

za opt 2.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 129

Dokaz: Matrica A ima konzistentan poredak, pa mo zemo iskoristiti teorem 7.8.1.(b ) da iz svojstvenih vrijednosti j matrice RJac izra cunamo svojstvene vrijednosti j matrice RSOR() . Relacija (7.8.2) daje vezu (j + 1)2 = j 2 2 j, sto mo zemo napisati kao kvadratnu jednad zbu za j 1 2 2 j + ( 1)2 = 0. j 2 1 + (j ) 2 (7.8.6)

Prema tvrdnji (a ) teorema 7.8.1., ako j = 0 ima multiplicitet m, onda pripadni j = 1 ima isti multiplicitet m. Osim toga, svojstvene vrijednosti j = 0 dolaze u parovima, pa u rje savanju jednad zbe (7.8.6) mo zemo ignorirati predznak od j , jer svaki par daje dvije svojstvene vrijednosti j . Sad iskoristimo pretpostavku da RJac ima samo realne svojstvene vrijednosti j , pa jednad zba (7.8.6) ima realne koecijente i kod rje savanja mo zemo gledati samo j > 0.

Znamo da SOR( ) metoda konvergira za bilo koji po cetni vektor ako i samo ako je |j | < 1 za sve j . Ako je pripadni j = 0, onda je j = 1 , pa |j | < 1 vrijedi ako i samo ako je 0 < < 2. Ako su to i jedine svojstvene vrijednosti od RJac , tj. RJac = 0, onda je prva tvrdnja dokazana. U protivnom, postoje j > 0 i treba analizirati rje senja jednad zbe (7.8.6). Da bismo pojednostavnili zapis, promatramo kvadratnu jednad zbu 2 + b + c = 0 (7.8.7)

s realnim koecijentima b i c. Tra zimo kriterij (ako i samo ako uvjet) da korijeni ove jednad zbe le ze unutar jedini cnog kruga. Rje senja jednad zbe su 1 1,2 = (b b2 4c ). 2 Znamo da je |c| = |1 | |2|, pa je |c| < 1 o citi nu zni uvjet da bi oba korijena bila u jedini cnom krugu. Ako je diskriminanta negativna b2 4c < 0, onda su rje senja konjugirano kompleksna 1 1,2 = (b i 4c b2 ), 2 pa je 1 |1,2 |2 = (b2 + 4c b2 ) = c. (7.8.8) 4

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 130

Dakle, ako je b2 < 4c, onda cimo je |1,2 | < 1, ako i samo ako je c < 1. Dodatno, uo da je tada c > 0 i |b| 2 c < 1 + c, zbog (1 c)2 > 0.

Ako je diskriminanta nenegativna b2 4c 0, onda imamo par realnih rje senja 1 1,2 = (b b2 4c ), 2 max |1,2 | = (7.8.9)

pa je

1 1 max |b b2 4c| = (|b| + b2 4c ). 2 2 Iz max |1,2 | < 1 dobivamo redom |b| + b2 4c < 2 b2 4c < 2 |b| b2 4c < (2 |b|)2 = 4 4|b| + b2 |b| < 1 + c.

Zaklju cujemo da u oba slu caja iz |1,2 | < 1 slijedi c < 1 i |b| < 1 + c. Medutim, o cito vrijedi i obrat, jer ovisno o odnosu b2 i 4c, iskoristimo pravu (ja cu) od ove dvije pretpostavke. Na kraju, iz |b| < 1 + c slijedi 1 + c > 0 ili c > 1, sto zajedno s c < 1, osigurava i raniji nu zni uvjet |c| < 1.

Dakle, ako je b2 4c, onda je |1,2 | < 1, ako i samo ako je |b| < 1 + c. Dodatno, iz 2 |b| > 0 slijedi b2 < 4, pa mora biti i c < 1.

Dokazali smo da rje senja jednad zbe (7.8.7) le ze unutar jedini cnog kruga, ako i samo ako vrijedi c < 1 i |b| < 1 + c. Usporedbom (7.8.6) i (7.8.7) vidimo da je 1 b = 2 1 + (j )2 , 2 c = ( 1)2 . (7.8.10)

Uvjet c < 1 daje ( 1)2 < 1, ili 0 < < 2. Drugi uvjet |b| < 1 + c daje 1 2 1 + (j )2 < 1 + ( 1)2 . 2 Ako lijevu stranu napi semo u obliku
2 2 2 | 2 2 + 2 + 2 ( 2 j 1)| = |1 + ( 1) + (j 1)|,

uz oznaku a := 1 + ( 1)2 > 0 dobivamo uvjet | a + 2 ( 2 j 1)| < a, sto je mogu ce ako i samo ako je drugi clan negativan, tj. za 2 j < 1. Dakle, sve vrijednosti j le ze u jedini cnom krugu, ako i samo ako je 0 < < 2 i vrijedi 2 j < 1 za sve j , sto je ekvivalentno s := (RJac ) < 1.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 131

Neka je (0, 2). Svojstvene vrijednosti j mo zemo podijeliti u tri grupe (skupa). Ako je j = 0 za neki j , onda je pripadni j = 1 i | j | = | 1 | . (7.8.11) Ozna cimo skup svih takvih j s S0 . Ako je = 0, tj. RJac = 0, onda je o cito (RSOR() ) = |1 |, pa je optimalna vrijednost parametra opt = 1. Dobivamo (RSOR(opt ) ) = 0, sto odgovara GaussSeidelovoj metodi s RGS = 0. Dakle, i drugi dio tvrdnje vrijedi ako je = 0. Zbog toga mo zemo pretpostaviti da je > 0, tj. da postoji barem jedna svojstvena vrijednost j > 0. Za j > 0, rje savanjem (7.8.6) dobivamo 1 1 (j )1,2 = 1 + (j )2 j 1 + j 2 2 2 2 1 1 j 1 + j . = 2 2 Pona sanje ovih rje senja ovisi o vrijednostima diskriminante (j ) = 1 + 1 j 2
2 2

Time smo dokazali prvi dio tvrdnje. Drugi dio dobivamo tako da nademo spektralni radijus (RSOR() ) za svaki (0, 2), a zatim ga minimiziramo po .

(7.8.12)

Primijetimo da je (j ) rastu ca funkcija od j . Ovisno o predznaku (j ) dobivamo dvije grupe svojstvenih vrijednosti j . Prva grupa S odgovara negativnim, a druga S+ nenegativnim diskriminantama. Za sve j > 0 za koje je (j ) < 0, ako takvih ima, dobivamo kompleksno konjugirani par (j )1,2 . Tada mora biti 1 < 0, sto pokazuje da je S neprazan samo ako je > 1, tj. ova grupa je sigurno prazna za 1. Ako uvrstimo b i c iz (7.8.10) u (7.8.8), izlazi da je |(j )1,2 | = c = 1, (7.8.13) pa vidimo da ove vrijednosti ne ovise o j . S druge strane, za one j > 0 za koje je (j ) 0, ako takvih ima, dobivamo par realnih svojstvenih vrijednosti (j )1,2 . Analogno, iz (7.8.10) i (7.8.9), izlazi da je 1 max |(j )1,2 | = (|b| + b2 4c ) 2 2 1 1 = 1 + ( j )2 + j 1 + j 2 2 2 2 1 1 = j + 1 + j , 2 2

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 132

jer iz (j ) 0 slijedi 1 + (j /2)2 > 0. O cito je max |(j )1,2 | rastu ca funkcija po j , pa najve cu vrijednost dobivamo za najve ci j , tj. za j = = (RJac ), naravno, pod uvjetom da je () 0. Obzirom na to da i (j ) raste s j , druga grupa je neprazna ako i samo ako je () 0 ili 1 2 > 4 , 2 pa je ova grupa sigurno neprazna za 1. Precizni kriterij nepraznosti S+ dobivamo rje savanjem () 0 po . Iz 0 = () = 1 + 1 2
2

dobivamo grani cne vrijednosti za 2 1 1 2 1,2 = 2 = . 2 1 1 2 Intervalu (0, 2) pripada samo manja od te dvije vrijednosti koju (zasad bez opravdanja) ozna cavamo s opt 1 1 2 2 opt = 2 = . 2 1 + 1 2 Na kraju, zaklju cujemo da je S+ neprazan ako i samo ako je opt . Uo cimo da je opt > 1, zbog > 0. Maksimum apsolutnih vrijednosti za j S+ = je 1 1 := 1 + ( )2 + 1 + 2 2
2

(7.8.14)

Sad kona cno mo zemo izra cunati (RSOR() ) usporedju ci maksimalne apsolutne vrijednosti iz (7.8.11), (7.8.13) i (7.8.14). Za 1 je S = . Za j = 0 imamo |j | = 1 , pa je o cito |j | < , jer su u (7.8.14) svi clanovi desne strane od tre ceg nadalje pozitivni, a prva dva su upravo |j |. Dakle, za 1 je (RSOR() ) = .

Ako je 1 < opt , onda je S+ sigurno neprazan. Ako S+ sadr zi sve svojstvene vrijednosti, onda je o cito (RSOR() ) = . U protivnom, za S0 S = , u (7.8.11) i (7.8.13) dobivamo isti maksimum 1. Usporedimo ga s iz (7.8.14). Zbog () 0 dobivamo 1 1 ( 1) = 2 2 + ( )2 + 1 + 2 2 = 2() + () 0.
2

(7.8.15)

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 133

Jednakost se dosti ze samo za () = 0, tj. za = opt , pa je opet (RSOR() ) = . Na kraju, za opt < < 2, dobivamo da je S+ = . Barem jedan od skupova S0 , S nije prazan. U (7.8.11) i (7.8.13) dobivamo isti maksimum 1, pa je (RSOR() ) = 1. Dokazali smo da je za 0 < opt , 1, za opt 2.

(RSOR() ) =

Time je zadnja relacija iz tvrdnje teorema u potpunosti dokazana. Ostaje jo s na ci najmanju mogu cu vrijednost od (RSOR() ) za (0, 2). Kad iz (7.8.14) promatramo kao funkciju od 1 1 ( ) = 1 + ( )2 + 1 + 2 2 = 1 + 2 1 1+ 2
2 2 2

derviranjem drugog oblika po dobivamo


1 2 1 1 d 2 =2 + d 2 2 1 + (1 )2 2 1 1 + (2 )2 + 1 2 1 2 = 1 1 + (2 )2

Brojnik mo zemo napisati u obliku ( 1)/ , pa je d ( 1) = < 0, (0, opt ), d () jer je 0 < < 1, > 0 i () > 0. Dakle, (RSOR() ) = ( ) monotono pada na (0, opt ], s tim da u opt derivacija nije denirana (te zi u ), jer je () = 0.

Za (opt , 2) je (RSOR () ) = 1, sto je o cito rastu ca funkcija. U to cki opt , iz (7.8.15), jer je desna strana jednaka 0, slijedi (RSOR(opt ) ) = (opt ) = opt 1.

Dakle, (RSOR () ) dosti ze jedinstveni globalni minimum za = opt na (0, 2), pa je i oznaka opravdana. To dokazuje i zadnji dio tvrdnje. Vidimo da se minimum dosti ze kad je () = 0, tj. kad je izraz pod korijenom u (7.8.12) jednak 0. Iz j = tada dobivamo dvostruki korijen (j )1,2 = (opt ).

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 134

Dobili smo da za optimalni parametar vrijedi opt > 1 pa je optimalni SOR zaista nadrelaksacija. Zgodno je primijetiti da sto je bli ze 1, tj. sto sporije konvergira Jacobijeva metoda, to je opt bli ze 2, tj. SOR tada produljuje korak. I obratno, ako je blizu 0 (Jacobi brz), onda je opt blizu 1, pa je optimalni SOR blizak GaussSeidelovoj metodi. Ovo su sli cni uvjetni rezultati kao i za JOR metodu, u smislu da se pretpostavlja da Jacobijeva metoda konvergira. Sre com, za neke matrice nije te sko prona ci spektralni radijus matrice u Jacobijevoj metodi i ustanoviti da Jacobijeva metoda konvergira. A tada imamo i optimalni izbor parametra za SOR, dok za JOR to nemamo. Ako usporedimo relacije koje ve zu svojstvene vrijednosti matrica u JOR i SOR metodi s onima iz Jacobijeve metode j (RJOR() ) : j (RSOR() ) : j + 1 = j , j + 1 = j j ,

izlazi da ne bi bilo prete sko dobiti neki rezultat o optimalnosti za JOR metodu. Probajte ga dobiti. Medutim, to se ne isplati. SOR metoda s optimalnim parametrom je bitno br za. Teorem 7.8.2. o optimalnom izboru parametra u SOR metodi, osim konvergencije Jacobijeve metode, ima jo s i pretpostavku da su sve svojstvene vrijednosti matrice RJac realne. Kad bismo znali da je RJac simetri cna (ili hermitska), onda je ta pretpostavka ispunjena. Medutim, to obi cno nije slu caj. U principu znamo da je polazna matrica A simetri cna ili hermitska. Tada je 1 RJac = D (L + L ), sto ne mora biti simetri cna matrica, osim ako D nije skalarna matrica, tj. ima konstantnu dijagonalu. Ako je A jo s i pozitivno denitna, onda je (vidjeti dokaz teorema 7.7.3.) RJac = D 1 (L + L ) = D 1/2 (D 1/2 (L + L )D 1/2 )D 1/2 , jer je i D pozitivno denitna (dijagonalna s pozitivnim elementima), pa je RJac sli cna simetri cnoj (hermitskoj) matrici D 1/2 (L + L )D 1/2 , odakle slijedi da ima realne svojstvene vrijednosti j . To jo s uvijek ne garantira konvergenciju Jacobijeve metode, kao sto cemo pokazati na primjeru u sljede cem odjeljku. Medutim, ako je A jo s i konzistentno poredana, onda i Jacobijeva metoda mora konvergirati. Teorem 7.8.3. Neka je A simetri cna (hermitska) i pozitivno denitna matrica i pretpostavimo da A ima konzistentan poredak. Onda matrica iteracije RJac u Jacobijevoj metodi ima samo realne svojstvene vrijednosti i vrijedi (RJac ) < 1, tj. Jacobijeva metoda konvergira. Dokaz: Prvi dio tvrdnje da je j R smo ve c dokazali. Iz pozitvne denitnosti od

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 135

A = D L L slijedi da za bilo koji vektor x = 0 vrijedi 0 < x Ax = x (D L L )x pa je x (L + L )x < x Dx. Ako deniramo y = D 1/2 x, onda je y = 0 ako i samo ako je x = 0, i za sve y = 0 vrijedi y D 1/2 (L + L )D 1/2 y < y y. sto zna ci da je matrica I D 1/2 (L + L )D 1/2 pozitivno denitna. Zbog toga su sve svojstvene vrijednosti matrice D 1/2 (L + L )D 1/2 strogo manje od 1, pa to zbog sli cnosti vrijedi i za RJac . Sad iskoristimo da A ima konzistentan poredak, pa iz teorema 7.8.1.(a ) slijedi da svojstvene vrijednosti od RJac dolaze u parovima, tj. j < 1 povla ci i j > 1. Dobivamo da je (RJac ) < 1, pa Jacobijeva metoda konvergira. Naravno da tada konvergiraju i GaussSeidelova metoda i SOR( ) metode za (0, 2). To vrijedi i bez pretpostavke o konzistentnom poretku, ali tada nemamo optimalni izbor parametra za SOR metodu. Ako imamo zadanu matricu A, onda nije jednostavno provjeriti da li ona ima konzistentan poredak koriste ci deniciju 7.8.3., odnosno algebarsko svojstvo (7.8.1). Mnogo je lak se provjeriti grafovska svojstva, poput svojstva (A), koja garantiraju konzistentan poredak za permutiranu matricu P AP T . Zbog toga je vrlo korisno na ci generalizacije svojstva (A). Na tu temu postoje mnogi rezultati. U primjeru 7.8.1. imali smo blok trodijagonalu matricu s regularnim dijagonalnim matricama. Denicija 7.8.4. Matrica A ima svojstvo (A ) ako postoji matrica permutacije P takva da se P AP T mo ze particionirati u blok trodijagonalnu matricu oblika

P AP T =

D1 L 1

U1 .. . .. .

.. ..

. . Un1 Dn

Ln1

gdje su Di , i = 1, . . . , m, regularne matrice. Doka zite da matrice sa svojstvom (A ) imaju konzistentan poredak. Dokaz ide sli cno kao u propozicijiu 7.8.1., tako da se pogodnom dijagonalnom matricom sli cnosti transformira RJac () i poka ze da njene svojstvene vrijednosti ne ovise o . Ovaj rezultat je takoder dokazao Young, 1950. godine.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 136

Na kraju, spomenimo da je R. S. Varga generalizirao i ovaj rezultat na tzv. p-cikli cke matrice, uz p 2, pri cemu su 2-cikli cke matrice upravo one sa svojstvom (A ).

7.9.

Primjeri akademski i prakti cni

Za po cetak, ilustrirajmo odnos izmedu Jacobijeve i GaussSeidelove metode, u smislu da postoje primjeri kad jedna od njih konvergira, a druga ne. Znamo da GaussSeidelova metoda konvergira za simetri cne (hermitske) pozitivno denitne matrice. Jacobijeva metoda tad ne mora konvergirati. Naravno, treba uzeti matricu koja nije dijagonalno dominantna po recima ili stupcima, tj. vandijagonalni elementi trebaju biti relativno veliki. Primjer 7.9.1. Lako se provjerava da je matrica 1 0.9 0.9 A = 0.9 1 0.9 0.9 0.9 1 simetri cna i pozitivno denitna, jer su sve vode ce glavne minore pozitivne: D1 = 1, 2 D2 = 1 (0.9) = 0.19 i D3 = 1 + 2(0.9)3 3(0.9)2 = 1 + 2 0.729 3 0.81 = 1 + 1.458 2.43 = 2.458 2.43 = 0.028. Matrica iteracije u Jacobijevoj metodi je (D = I ), RJac 0 0.9 0.9 = 0.9 0 0.9 0.9 0.9 0

i ima svojstvene vrijednosti 1 = 2 = 0.9 i 3 = 1.8. Dakle, (RJac ) = 1.8, pa Jacobijeva metoda ne konvergira za sve po cetne iteracije. Pogledajmo usput sto daje teorem 7.7.3. o konvergenciji JOR metode. Najmanja svojstvena vrijednost od RJac je := minj j = 1.8. Iz (7.7.1) dobivamo da JOR( ) metoda konvergira za sve parametre za koje vrijedi 0<< tj. imamo pravu podrelaksaciju. 2 5 = < 1, 1 7

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 137

Primjer 7.9.2. Za matricu A=


1 1
1 2

1 1 1 1 1 1

Poka zite da je (RJac ) < 1. Izra cunajte matricu RGS i poka zite da je (RGS ) > 1, tj. da GaussSeidelova metoda ne konvergira za sve po cetne iteracije. U nastavku ovog odjeljka ilustrirat cemo iterativne metode na jednoj klasi matrica koja se javlja u praksi i ima tipi cna svojstva. Iterativne metode za rje savanje linearnih sustava koriste se kod rje savanja rubnog problema za obi cne diferencijalne jednad zbe i kod rje savanja parcijalnih diferencijalnih jednad zbi.

odmah vidimo da nije dijagonalno dominantna. Ipak, Jacobijeva metoda konvergira s matricom iteracije 0 1 1 1 RJac = 0 1 2 . 1 1 0

Ideja metoda koje vode na linearne sustave je diskretizacija, tj. umjesto da tra zimo funkciju koja bi bila rje senje problema, aproksimiramo rje senje u odabranim cvorovima, tako da aproksimiramo derivacije koje se javljaju u problemu. Ako je problem jednodimenzionalan, obi cno se interval na kojem tra zimo rje senje ekvidistantno podijeli. Kod dvodimenzionalnog problema, podru cje se obi cno podijeli u pravokutnu mre zu. Na primjer, zelimo rije siti tzv. Poissonovu (elipti cku parcijalnu diferencijalnu) jednad zbu u dvije dimenzije 2 v (x, y ) 2 v (x, y ) = f (x, y ) x2 y 2

na kvadratu {(x, y ) | 0 < x, y < 1} uz rubni uvjet v = 0, tj. funkcija v je jednaka 0 na rubu kvadrata. Kvadrat podijelimo u mre zu cvorova, a da nam bude jednostavnije, pretpostavimo da je i ta mre za kvadratna, tj. korak u x i y smjeru je jednak h= 1 . N +1

Uz tako denirane korake, unutarnji cvorovi mre ze su to cke (xi , yj ), gdje je xi = ih, 2 yj = jh, za i, j = 1, . . . , N . Dakle, imamo n := N unutarnjih cvorova mre ze.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 138

Takva mre za za N = 3 izgleda ovako:


j=4 v1,3 v2,3 v3,3

j=3

j=2

v1,2

v2,2

v3,2

j=1

v1,1

v2,1

v3,1

j=0 i=0

i=1

i=2

i=3

i=4

Vrijednost rje senja u cvoru (xi , yj ) ozna cavamo s vi,j := v (ih, jh), a funkcijsku vrijednost s fi,j := f (ih, jh). Kako se aproksimiraju derivacije? Pretpostavimo da su to cke xi1 , xi i xi+1 ekvidistantne i da je xi+1 xi = xi xi1 = h. Ako za funkciju f postoji Taylorov red oko xi , onda uvr stavanjem to caka xi1 i xi+1 u taj red dobivamo f (xi ) f (xi ) 2 f (i,i1 ) 3 h+ h h 1! 2! 3! f (xi ) f (xi ) 2 f (i,i+1) 3 f (xi+1 ) = f (xi ) + h+ h + h. 1! 2! 3! Oduzimanjem prve jednakosti od druge, izlazi f (xi1 ) = f (xi ) f (xi ) h + O (h3), 1! pa je dobra aproksimacija derivacije funkcije f u to cki xi f (xi+1 ) f (xi1 ) = 2 f (xi ) f (xi+1 ) f (xi1 ) . 2h Ta aproksimacija derivacije obi cno se naziva simetri cna (centralna) razlika.
+ Prvo, izaberimo dva cvora (x i , yj ) i (xi , yj ) takva da je xi + xi1 xi + xi+1 x , x+ . i = i = 2 2

Kori stenjem simetri cne razlike, aproksimirajmo prve parcijalne derivacije u ta dva cvora. Dobivamo v vi,j vi1,j , x x=x h i , y =yj v vi+1,j vi,j . x x=x+ h i , y =yj

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 139

Ponovno, primijenimo simetri cnu razliku, ali ovaj puta za drugu parcijalnu + derivaciju po x u (xi , yj ), kori stenjem derivacije u to ckama (x i , yj ) i (xi , yj ). Odmah imamo 2v 1 v v vi1,j 2vi,j + vi+1,j = . 2 + x x=xi, y=yj h x x=xi , y=yj x x=xi , y=yj h2 Na isti na cin dobivamo i formulu za drugu parcijalnu derivaciju po y 2v y 2
x =x i , y =yj

1 v h y

+ x =x i , y =yj

v y

x =x i , y =yj

vi,j 1 2vi,j + vi,j +1 . h2

Uvrstimo li te aproksimacije derivacija u diferencijalnu jednad zbu, dobivamo 4vi,j vi1,j vi+1,j vi,j 1 vi,j +1 = h2 fi,j , 1 i, j N. (7.9.1)

Pitanje je kako treba napisati ove jednad zbe, tako da se dobije linearni sustav s nekom strukturom. Postoje dva na cina da bi se to napravilo. Jedan je sekvencijalno numeriranje vi,j po recima ili stupcima (slijeva nadesno, ili zdesna nalijevo, odozgo nadolje ili odozdo nagore), a drugi tzv. crvenocrni poredak cvorova. Ako vij sekvencijalno numeriramo po stupcima odozgo nadolje, na primjer za N = 3, dobivamo ovakav poredak cvorova

v1

v4

v7

v2

v5

v8

v3

v6

v9

Dakle, u (7.9.1) lako zamjenjujemo vi,j s vk . Ako se na isti na cin transformiraju i fi,j u fk , onda dobivamo linearni sustav TN N v = h2 f, gdje je v = [v1 , v2 , . . . , vN N ]T , f = [f1 , f2 , . . . , fN N ]T , a matrica TN N ima N blok-redaka i stupaca, svaki dimenzije N . Matrica

TN + 2IN IN

TN N =

IN .. . .. .

.. ..

. . IN TN + 2IN

IN

(7.9.2)

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 140

pri cemu je IN jedini cna matrica reda N , a


2 1

TN =

1 .. . .. .

.. ..

. . 1 2

Mo ze se pokazati da je TN matrica koja nastaje diskretizacijom odgovaraju ce jednodimenzionalne Poissonove jednad zbe. Na primjer, za N = 3, matrica linearnog sustava je

4 1 1 1 1 1 4 1 1 4

1 1 1 4 1 1 1 1 1 4 1 1 4 4 1 1 4 1 1 4 1 1 1

T33 =

Uo cite da je matrica TN N slabo dijagonalno dominantna i ireducibilna, pa ce i Jacobijeva i GaussSeidelova metoda konvergirati. Dapa ce, pokazat cemo da TN N ima svojstvo (A) i da je konzistentno poredana. Ako cvorove vi,j poredamo u tzv. crvenocrni poredak, dobit cemo konzistentno poredanu matricu. Crvenocrni poredak dobivamo tako da ih obojamo poput sahovske plo ce: svaki crveni cvor (osim rubnog) je okru zen s cetiri crna susjeda i obratno.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 141

Na primjer, za N = 5 takvo crvenocrno bojanje cvorova izgleda ovako:

Ako zatim sve cvorove koji su crveno obojani popi semo prije crnih (dodijelimo im indekse prije crnih), ili obratno, dobit cemo blok matricu oblika P TN N P T = D1 T12 . T21 D2

Lako je vidjeti da su dijagonalni blokovi ba s dijagonalne matrice, jer ne postoji veza izmedu dva crvena ili dva crna cvora (osim cvora sa samim sobom). Konkretno, crvenocrni poredak za matricu T33 daje

4 4 4 4 4 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1

1 1 1 1 1 1 1 1 1

P T33 P =

4 4 4 4

Dakle, da bismo ispitali konvergenciju iterativnih metoda, dovoljno je na ci spektralni radijus matrice RJac . Prvo, nadimo rastav (cijepanje) matrice TN N TN N = 4IN N (4IN N TN N ),

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 142

pa je M = 4IN N , K = (4IN N TN N ), RJac = M 1 K = (4IN N )1 (4IN N TN N ) = IN N 1 TN N . 4

Drugim rije cima, RJac je polinom od TN N , pa ako je i,j svojstvena vrijednost od TN N , onda je 1 i,j /4 svojstvena vrijednost od RJac . Pametnim raspisivanjem matrice TN N , mo ze se pokazati da su svojstvene vrijednosti matrice TN N jednake i,j = 4 2 cos odakle slijedi da je (RJac ) = max 1
i,j

i j + cos , N +1 N +1

i,j 1,1 N,N = 1 = 1 = cos . 4 4 4 N +1

Odmah je vidljivo da porastom N argument kosinusa ide prema nuli, pa ce (RJac ) biti sve bli ze 1, a iterativne ce metode sve sporije konvergirati. Cak stovi se, mo zemo procijeniti (RJac ) za velike N . Dovoljno dobra aproksimacija bit ce prva dva clana u Taylorovom redu za funkciju kosinus (RJac ) = cos 2 1 . N +1 2(N + 1)2

Spektralni radijus za GaussSeidelovu metodu lako je dobiti koriste ci korolar 7.8.1. (RGS ) = ((RJac ))2 = cos2 . N +1 Pribli zno, kvadriranjem prva dva clana u Taylorovom redu, vrijedi (RGS ) 1 2 . (N + 1)2

Kona cno, koriste ci teorem 7.8.2., za SOR( ) dobivamo opt = 2 , 1 + sin N +1 (RSOR (opt ) ) = cos2
N +1 2.

1 + sin N +1

Veli cinu (RSOR (opt ) ) mo zemo pribli zno ocijeniti za velike N . Vrijedi cos2
N +1 2

1 + sin N +1

1 sin N 2 sin N 2 +1 +1 = =1 1 2 sin 1 . 1 + sin N +1 1 + sin N +1 N +1 N +1

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 143

Primijetite da spektralni radijus i kod Jacobijeve metode i kod GaussSeidelove metode ima oblik 1 O (1/N 2), dok kod SOR metode s optimalnim parametrom spektralni radijus ima oblik 1 O (1/N ), sto pokazuje da bi SOR za optimalni izbor parametra morao biti reda veli cine N puta br zi i od Jacobijeve i od GaussSeidelove metode. Pogledajmo kako se pona sa (RSOR() ) kao funkcija od , te ovisno o N , kako se pona sa opt . Redom, za N = 3, 9, 16, 25, dobivamo sljede ce grafove
( )

1.0 0.8 N =3 0.6 0.4 0.2 0 0.5 1 opt 1.5 2

( )

1.0 0.8 N =9 0.6 0.4 0.2 0 0.5 1 opt 2

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 144

( )

1.0 0.8 N = 16 0.6 0.4 0.2 0 0.5 1 1.5 opt 2

( )

1.0 0.8 N = 25 0.6 0.4 0.2 0 0.5 1 1.5 opt 2

Kao sto smo o cekivali, optimalni se parametar pomi ce prema 2, a (RSOR(opt ) ) postaje sve bli ze 1. U sljede coj tablici dan je pregled spektralnih radijusa za razli cite iterativne metode za razne N .

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 145

N 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256

(RJac ) 0.8090169944 0.9510565163 0.9829730997 0.9927088741 0.9963974885 0.9980267284 0.9988322268 0.9992661811 0.9995162823 0.9996684675 0.9997652980 0.9998292505 0.9998728466 0.9999033847 0.9999252867

(RGS ) 0.6545084972 0.9045084972 0.9662361147 0.9854709087 0.9928079552 0.9960573507 0.9976658174 0.9985329006 0.9990327986 0.9993370449 0.9995306511 0.9996585301 0.9997457093 0.9998067787 0.9998505789

opt 1.2596161837 1.5278640450 1.6895466227 1.7848590191 1.8436477483 1.8818383898 1.9078264563 1.9262204896 1.9396763332 1.9497968003 1.9575898703 1.9637127389 1.9686076088 1.9725803349 1.9758476503

(RSOR(opt ) ) 0.2596161837 0.5278640450 0.6895466227 0.7848590191 0.8436477483 0.8818383898 0.9078264563 0.9262204896 0.9396763332 0.9497968003 0.9575898703 0.9637127389 0.9686076088 0.9725803349 0.9758476503

Sad kad imamo sve informacije o ovim iterativnim metodama, trebalo bi jo s samo izabrati neki po cetni vektor i ra cunati rje senje za zadani f i podjelu N . Kako se bira po cetni vektor x(0) ? Ako znamo matricu iteracija R i iterativnu metodu realiziramo u obliku (7.1.1) x(m+1) = Rx(m) + c, m N0 ,

onda se obi cno bira x(0) = c, sto bi odgovaralo tome da je prethodna iteracija bio nul-vektor. Razlog za to je sasvim jednostavan, posebno u aritmetici ra cunala. Ako je c = 0, onda stajemo u jednom koraku i ne kvarimo nule. Ina ce bismo nul-vektor morali dobiti kao limes vektora koji nemaju (sve) nul-komponente, tj. sigurno dolazi do kra cenja. sa 4 algoritma koje smo napisali ne provodi iteracije Medutim, niti jedan od na u tom obliku, jer se R katkad komplicirano ra cuna, ve c radimo direktno s originalnim podacima A i b. Tada je zgodno zaista uzeti x(0) = 0, za slu caj da je b = 0, iz istih razloga. Prethodni primjer pokazuje da sve potrebne informacije o matrici iteracija R mo zemo dobiti i bez da ju eksplicitno izra cunamo.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 146

Kako zaustavljamo iteracije? Najlak si na cin je tzv. heuristi cka konvergencija. Unaprijed zadamo tra zenu to cnost i prekidamo iteracije cim vrijedi x(m+1) x(m) , u nekoj pogodno odabranoj vektorskoj normi, na primjer, -normi. To zna ci da u svakom koraku moramo ra cunati i ovu normu, ali to obi cno nije pretjerano skupo, a mo ze se isplatiti, ako slu cajno gre ska naglo padne u nekoj iteraciji. S druge strane, ako znamo vrijednost neke operatorske norme R matrice iteracija (bez pretjerano ra cunanja), s tim da je R < 1, onda unaprijed mo zemo izra cunati potreban broj iteracija. Naime, u pripadnoj vektorskoj normi vrijedi ocjena R x(m+1) x x(m+1) x(m) , (7.9.3) 1 R x(m+1) x = R(x(m) x) = R(x(m) x(m+1) ) + R(x(m+1) x)

kao u Banachovom teoremu o ksnoj to cki. Dokaz ove relacije je jednostavan:

(I R)(x(m+1) x) = R(x(m+1) x(m) )

x(m+1) x = (I R)1 R(x(m+1) x(m) ),

jer znamo da je I R regularna matrica. Primjenom norme i ocjenama izlazi (7.9.3). Iz te ocjene dobivamo i x(m+1) x R m+1 (1) x x(0) , 1 R

a iz ove relacije mo zemo, nakon prve iteracije, izra cunati potreban broj iteracija m + 1, tako da, do na gre ske zaokru zivanja, vrijedi x(m+1) x . Jo s jedan prakti cni primjer za vje zbu. Primjer 7.9.3. Preformulirajte linearni sustav A x = b u Ax = b, gdje je 0.25 0.25 0 1 0 1 0.25 0.25 A = , 0.25 0.25 1 0 1 0 0.25 0.25

0.5 0.5 b = 0.5 0.5

tako da imamo sigurnu konvergenciju i Jacobijeve i GaussSeidelove metode. (a) Ako je po cetna iteracije x(0) = 0, napravite cetiri iteracije Jacobijevom metodom za zadani sustav.

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 147

(b) Ako je po cetna iteracije x(0) = 0, napravite cetiri iteracije GaussSeidelovom metodom za zadani sustav. (c) Ocijenite gre ske pribli znih rje senja dobijenih pod (a) i (b). Rje senje I Jacobijev i GaussSeidelova metoda konvergirat ce za strogo dijagonalno dominante matrice, drugim rije cima treba jednad zbe premjestiti tako da je matrica sustava strogo dijagonalno dominantna (pazite, premje stamo i komponente vektora b, ali se to ovdje ne vidi jer su jednake) 1 0 0.25 0.25 0 1 0.25 0.25 A= , 0.25 0.25 1 0 0.25 0.25 0 1

0.5 0.5 b= . 0.5 0.5

(a) Prvo treba na ci matricu RJac . Budu ci da je D = I u ovom slu caju, onda je 0 0 0.25 0.25 0 0 0.25 0.25 = D 1 (L + U ) = . 0.25 0.25 0 0 0.25 0.25 0 0

RJac

Norma beskona cno prethodne matrice je RJac metoda konvergirati. Prema formuli
(m+1) xj n

= 0.5, pa ce Jacobijeva

= bj

ajk xk
k =1 k =j

(m)

ajj ,

uva ziv si da je x(0) = 0, dobivamo sljede ce iteracije x(0) 0 0 0 0 x(1) 0.5 0.5 0.5 0.5 x(2) 0.75 0.75 0.75 0.75 x(3) 0.875 0.875 0.875 0.875 x(4) 0.9375 0.9375 0.9375 0.9375 .

(b) Ponovno, treba na ci matricu RGS . Budu ci da je D = I u ovom slu caju, onda

7. ITERATIVNE METODE ZA RJESAVANJE LINEARNIH SUSTAVA

ITERATIVNE METODE 148

je 1 0 0 1 = (D L)1 U = 0.25 0.25 0.25 0.25 1 0 0 1 = 0.25 0.25 0.25 0.25


RGS

0 0 1 0

0 0 1 0

Norma beskona cno prethodne matrice je RGS va metoda konvergirati. Prema formuli xj
(m+1) j 1

0 0 0 0 0 0 1 0

0 0.25 0.25 0 0 0 0.25 0.25 = 0 0 0 0 0 0 0 0

0 0 0 1

0 0 0 0

0 0 0 0

0 0.25 0.25 0 0.25 0.25 0 0 0 0 0 0 0.25 0.25 0.125 0.125

= 0.5, pa ce GaussSeidelo-

0.25 0.25 . 0.125 0.125

:= bj

ajk xk
k =1

(m+1)

ajk xk
k =j +1

(m)

ajj

uva ziv si da je x(0) = 0, dobivamo sljede ce iteracije x(0) 0 0 0 0 x(1) 0.5 0.5 0.75 0.75 x(2) 0.875 0.875 0.9375 0.9375 x(3) 0.96875 0.96875 0.984375 0.984375 x(4) 0.9921875 0.9921875 0.99609375 0.99609375 .

(c) Za obje iterativne metode vrijedi ocjena gre ske x(m+1) x Budu ci da je RJac x(m+1) x

= RGS

= 0.5, imamo

R 1 R

x(m+1) x(m) ,

Prema tome gre ske x(m+1) x u odgovaraju coj iteraciji mo zemo ocijeniti s k Jacobi GaussSeidel 1 2 3 4 0.5 0.25 0.125 0.0625 0.75 0.375 0.09375 0.0234375 .

0.5 x(m+1) x(m) 1 0.5

= x(m+1) x(m)

To cno rje senje datog sustava je xT = [1, 1, 1, 1].

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 149

8. Izvrednjavanje funkcija
Jedan od osnovnih zadataka koji se javlja u numeri ckoj matematici je izra cunavanje vrijednosti funkcije u nekoj to cki ili na nekom skupu to caka (tzv. izvrednjavanje funkcije). Za sto ba s to? Ekasno ra cunanje mo zemo raditi samo s onim vrstama funkcija za koje imamo dobar algoritam za izvrednjavanje. Pri tome moramo voditi ra cuna o tome da aritmetika ra cunala stvarno podr zava samo cetiri osnovne aritmeti cke operacije, pa samo njih mo zemo koristiti u algoritmima. Osim toga, i tada ra cunanje nije egzaktno, ve c u svakoj operaciji imamo gre ske zaokru zivanja. Zbog toga, pri konstrukciji algoritama imamo dva cilja. Dobar algoritam za izvrednjavanje mora (kao, uostalom, i svaki numeri cki algoritam) zadovoljavati dva uvjeta: ekasnost ili brzina, tj. imati sto manji broj aritmeti ckih operacija;

to cnost, u smislu stabilnosti ili osjetljivosti na gre ske zaokru zivanja. Oba zahtjeva su posebno bitna ba s kod izvrednjavanja, jer se ono obi cno puno puta koristi, pa i mala lokalna ubrzanja daju velike ukupne u stede u vremenu, a isto vrijedi i za ukupni efekt gre saka zaokru zivanja. Op cenito, o cekujemo da br zi algoritam ima i manju gre sku, jer imamo manje operacija koje unose gre sku u ra cun. Medutim, ovo ne mora biti istina! U mnogim slu cajevima mo zemo drasti cno popraviti stabilnost algoritma tako da zrtvujemo dio ekasnosti, a katkad cak i bez toga, uz pametnu reformulaciju algoritma. U ovom poglavlju cemo vi se pa znje posvetiti ekasnosti, a manje stabilnosti, osim tamo gdje je nestabilnost opasna. Cilj nam je konstruirati ekasne algoritme i opravdati njihovu ekasnost, a ne analizirati ili dokazivati njihovu stabilnost. U skladu s tim, potencijalne nestabilnosti izla zemo opisno i ilustriramo na primjerima, bez strogih dokaza. Pretpostavimo da je zadana funkcija f : D R, gdje je D R neka domena. Na s zadatak je izra cunati vrijednosti te funkcije f u zadanoj to cki x0 D . Preciznije, moramo sastaviti algoritam koji ra cuna f (x0 ). Naravno, to cka x0 mo ze biti bilo koja i na s algoritam mora raditi za sve ulaze x0 D .

Trenutno zanemarimo pitanje kako se zadaje funkcija f . Naime, ako je f ulaz u algoritam, onda f mora biti zadana s najvi se kona cno mnogo podataka o f , i ti

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 150

podaci moraju jednozna cno odrediti f . Ovo je, o cito, fundamentalno ograni cenje i bitno smanjuje klasu funkcija koje uop ce mo zemo algoritamski izra cunati. Odgovore na takva pitanja daje tzv. teorija izra cunljivosti u okviru matemati cke logike i osnova matematike. U praksi odmah dobivamo i bitno ja ca ograni cenja. Naime, ako imamo na raspolaganju samo 4 osnovne aritmeti cke operacije, onda su racionalne funkcije jedine funkcije f kojima mo zemo izra cunati vrijednost u bilo kojoj to cki x0 D . A takve funkcije mo zemo jednozna cno zadati kona cnim brojem parametara na primjer, pona sanjem (vrijednostima) u kona cnom broju to caka (vidjeti poglavlje o interpolaciji) ili koecijentima u nekom prikazu. Dakle, sigurno trebamo ekasne algoritme za ra cunanje vrijednosti racionalnih funkcija. Ako se sjetimo da racionalnu funkciju mo zemo napisati kao kvocijent dva polinoma, onda je zgodno imati i algoritme za izvrednjavanje polinoma. Osim toga, polinomi su jo s jednostavnije funkcije, jer nema dijeljenja, denirane su na cijeloj domeni (nema problema s nulto ckama nazivnika), a koriste se svagdje. I da zavr simo ovo lozoranje o izvrednjavanju funkcija. Strogo govore ci, sve ostale funkcije moramo aproksimirati na neki na cin ako ni zbog cega drugog, onda zato jer na sa aritmetika nije dovoljno jaka da bismo izra cunali njihovu vrijednost u to cki. To nipo sto nije jedini razlog za aproksimacije funkcija, ali i on pokazuje za sto je aproksimacija centralni problem numeri cke analize. Uostalom, u nastavku se gotovo isklju civo bavimo raznim metodama za nala zenje razli citih vrsta aproksimacija (i to, uglavnom, funkcija)! Medutim, u praksi mo zemo pretpostaviti da za neke osnovne matemati cke funkcije f ve c imamo dobre aproksimacije za pribli zno ra cunanje vrijednosti f (x0 ) u zadanoj to cki x0 : procesor ra cunala (hardware) ima ugradene aproksimacije i odgovaraju ce instrukcije za njihov poziv (izvr savanje), ili koristimo neki gotovi (pot)program (software) koji to radi. Standardno, to su: x (a katkad i op ce potenciranje x ), trigonometrijske, eksponencijalne, hiperboli cke i njima inverzne funkcije. Kako se nalaze takve aproksimacije za razne funkcije f za hardware ili software implementaciju o tome kasnije, kod aproksimacija (jasno je da su polinomne ili racionalne)! Bez obzira na realizaciju, u oba slu caja, bitno je samo to da ih mo zemo direktno koristiti u na sim algoritmima i da znamo da izra cunata vrijednost tra zene funkcije f u zadanoj to cki x0 ima malu relativnu gre sku u odnosu na to cnost ra cunanja. Dakle, mo zemo pretpostaviti da za f (f (x0 )) vrijede iste ili sli cne ocjene kao i za osnovne aritmeti cke operacije (vidjeti (2.6.2), ali i primjer 4.1.1.). Reklo bi se: gotova pri ca, dalje se ne trebamo brinuti oko toga. Medutim, nije ba s tako. Ra cunanje f (x0 ), u principu, traje dulje, a katkad i puno dulje, nego

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 151

sto je trajanje nemaju isto ili pa i vi se puta. ako se to mo ze

jedne osnovne aritmeti cke operacije ( cak i ako sve cetiri operacije podjednako trajanje). Za osnovne funkcije, taj omjer mo ze biti 10 Zato ponekad izbjegavamo puno poziva takvih funkcija, pogotovo razumno izbje ci, tj. ekasno i bez ve ceg gubitka to cnosti.

U mnogim slu cajevima se to mo ze napraviti i u ovom poglavlju cemo pokazati neke op ce algoritme tog tipa. Ideja je da se iskoriste neke rekurzivne relacije koje zadovoljavaju takve i sli cne, a za aproksimaciju va zne funkcije. Na primjer, u teoriji se obi cno koriste ortogonalni sustavi funkcija za aproksimaciju, a funkcije takvog sustava zadovoljavaju tro clanu rekurziju, sto je klju cno za ekasno ra cunanje.

8.1.

Hornerova shema

Polinomi su najjednostavnije algebarske funkcije. Mo zemo ih denirati nad bilo kojim prstenom R u obliku
n

p(x) =
i=0

ai xi ,

n N0 ,

gdje su ai R koecijenti iz tog prstena, a x je simboli cka varijabla. Polinomi, kao simboli cki objekti, takoder, imaju algebarsku strukturu prstena. Medutim, polinome mo zemo interpretirati i kao funkcije, koje mo zemo izvrednjavati u svim to ckama x0 iz tog prstena R, uvr stavanjem x0 umjesto simboli cke varijable x. Dobiveni rezultat p(x0 ) je opet u R. Zanimaju nas ekasni algoritmi za ra cunanje te vrijednosti. Slo zenost o cito ovisi o broju clanova u sumi. Da broj clanova ne bi bio umjetno prevelik, standardno uzimamo da je p = 0 i da je vode ci koecijent an = 0, tako da je n stupanj tog polinoma p. Kada zelimo naglasiti stupanj, polinom ozna cavamo s pn . Algoritmi koje cemo napraviti u principu rade nad bilo kojim prstenom R, ali neki rezultati o njihovoj slo zenosti vrijede samo za beskona cna neprebrojiva polja, poput R i C, sto su ionako najva zniji primjeri u praksi. Zbog toga, u nastavku mo zemo uzeti da radimo isklju civo s polinomima nad R ili C. Kako zadajemo polinom? Pretpostavljamo da je polinom zadan stupnjem n i koecijentima a0 , . . . , an u nekoj bazi vektorskog prostora polinoma stpunja ne ve ceg od n. Na po cetku koristimo standardnu bazu 1, x, x2 , . . . , xn , a kasnije cemo modicirati algoritme i za neke druge baze. Slo zenost, naravno, mjerimo brojem osnovnih aritmeti ckih operacija. Kad radimo nad R, stvar je cista, jer aritmetika ra cunala modelira upravo te operacije, pa je brojanje korektno. No, kad radimo nad C, treba voditi ra cuna o tome da

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 152

se kompleksne aritmeti cke operacije realiziraju putem realnih, sto zna ci da tek broj realnih operacija daje pravu mjeru slo zenosti. Ba s na tu temu, u nekim kompleksnim algoritmima mo zemo ostvariti zna cajne u stede, pa zljivim promatranjem realnih operacija.

8.1.1.

Ra cunanje vrijednosti polinoma u to cki


n

Zadan je polinom stupnja n pn (x) =


i=0

ai xi ,

an = 0

kojemu treba izra cunati vrijednost u to cki x0 . To se mo ze napraviti na vi se na cina. Prvo, napravimo to direktno po zapisu, potenciraju ci. Krenemo li od nulte potencije x0 = 1, svaka sljede ca potencija dobiva se rekurzivno kao xk = x xk1 . Imamo li zapam cen xk1 , lako je izra cunati xk kori stenjem samo jednog mno zenja. Algoritam 8.1.1. (Vrijednost polinoma s pam cenjem potencija) sum := a0 ; pot := 1; for i := 1 to n do begin pot := pot x0 ; sum := sum + ai pot ; end; { Na kraju je pn (x0 ) = sum . } Prebrojimo zbrajanja i mno zenja koja se javljaju u tom algoritmu. U unutarnjoj petlji javljaju se 2 mno zenja i 1 zbrajanje. Budu ci da se petlja izvr sava n puta, ukupno imamo 2n mno zenja + n zbrajanja. Naravno, kad smo nad C, ove operacije su kompleksne. Izvrednjavanje polinoma u to cki mo ze se izvesti i s manje mno zenja. Ako polinom pn zapi semo u obliku pn (x) = ( ((an x + an1 )x + an2 )x + + a1 )x + a0 . Algoritam koji po prethodnoj relaciji izvrednjava polinom zove se Hornerova shema. Predlo zio ga je W. G. Horner, 1819. godine, ali sli can zapis je koristio i Isaac Newton, jo s 1669. godine.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 153

Algoritam 8.1.2. (Hornerova shema) sum := an ; for i := n 1 downto 0 do sum := sum x0 + ai ; { Na kraju je pn (x0 ) = sum . } Odmah je o cito da smo kori stenjem ovog algoritma broj mno zenja prepolovili, tj. da je njegova slo zenost n mno zenja + n zbrajanja.

8.1.2.

Hornerova shema je optimalan algoritam

Bitno je napomenuti da se Hornerovom shemom izvrednjavaju op ci polinomi za koje znamo da imaju ve cinu nenula koecijenata. Na primjer, polinom p100 (x) = x100 + 1 besmisleno je izvrednjavati Hornerovom shemom, jer bi to predugo trajalo (binarno potenciranje je br ze). Ili, kad izvrednjavamo polinom koji ima samo parne koecijente
n

p2n (x) =
i=0

a2i x2i ,

treba modicirati Hornerovu shemu tako da koristi samo parne potencije. Isto vrijedi i za polinom koji ima samo neparne potencije. Sastavite pripadne algoritme. Za Hornerovu shemu mo ze se pokazati da je optimalan algoritam. Teorem 8.1.1. (Borodin, Munro) Za op ci polinom n-tog stupnja potrebno je barem n aktivnih mno zenja. Pod aktivnim mno zenjem podrazumjevamo mno zenje izmedu ai i x. Dakle, Hornerova shema ima optimalan broj mno zenja. Rezultat prethodnog teorema mo ze se pobolj sati samo ako jedan te isti polinom izvrednjavamo u mnogo to caka. Tada se koecijenti polinoma prije samog izvrednjavanja adaptiraju ili prekondicioniraju, tako da bismo kasnije imali sto manje operacija po svakoj pojedinoj to cki. Zanimljivo je da u slu caju polinoma stupnjeva n = 1, 2 i 3, Hornerova shema je optimalna cak i kad ra cunamo vrijednost polinoma u vi se to caka. Poka zimo jedan primjer adaptiranja koecijenata za polinom stupnja 4. Primjer 8.1.1. Uzmimo op ci polinom stupnja 4 p4 (x) = a4 x4 + a3 x3 + a2 x2 + a1 x + a0

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 154

i promatrajmo shemu ra cuananja u formi y = (x + c0 )x + c1 , p4 (x) = ((y + x + c2 )y + c3 )c4 . Primijetite da ona ima 3 mno zenja i 5 zbrajanja, ako uspijemo odrediti ci u ovisnosti o ai . Izrazimo li ovaj oblik za p4 u potencijama od x, dobivamo
2 p4 (x) = c4 x4 + (2c0 c4 + c4 )x3 + (c2 0 + 2 c 1 + c 0 c 4 + c 2 c 4 )x + (2c0 c1 c4 + c1 c4 + c0 c2 c4 )x + (c2 1 c 4 + c 1 c 2 c 4 + c 3 c 4 ).

Uo cite da veza izmedu ai i ci nije linearna. Rje savanjem po ai , dobivamo c4 = a4 c0 = (a3 /a4 1)/2 b = a2 /a4 c0 (c0 + 1) c1 = a1 /a4 c0 b c2 = b 2 c1 c3 = a0 /a4 c1 (c1 + c2 ).

Ove relacije zahtjevaju dosta ra cunanja, ali se to obavlja samo jednom, pa ce izvrednjavanje u dovoljno to caka zahtjevati manje mno zenja. Dapa ce, V. Pan je pokazao da vrijedi sljede ci teorem. Teorem 8.1.2. (Pan) Za bilo koji polinom pn stupnja n 3 postoje realni brojevi c, di , ei , za 0 i n/2 1, takvi da se pn mo ze izra cunati kori stenjem (n/2 + 2) mno zenja + n zbrajanja po sljede coj shemi y =x+c w = y2 (an y + d0 )y + e0 , n paran, z := an y + e0 , n neparan, z := z (w di ) + ei , za i = 1, 2, . . . n/2 1. U prethodnom teoremu nismo ni sta rekli o tome koliko nam je operacija potrebno za ra cunanje c, di i ei . Teorem 8.1.3. (Motzkin, Belaga) Slu cajno odabrani polinom stupnja n ima vjerojatnost 0 da ga se mo ze izra cunati za strogo manje od (n + 1)/2 mno zenja/dijeljenja ili za strogo manje od n zbrajanja/oduzimanja. to zna Sto ci? To zna ci da je red veli cine broja operacija u Hornerovoj shemi optimalan za gotovo sve polinome.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 155

8.1.3.

Stabilnost Hornerove sheme

Sada znamo da je Hornerova shema optimalan algoritam u smislu ekasnosti. Pa zljivom analizom gre saka zaokru zivanja nije te sko pokazati da je Hornerova shema i stabilan algoritam.
y 1.0 1013 0.5 1013

0.95 0.5 1013 1.0 1013

1.05

Izvrednjavanje polinoma (x 1)10 razvijenog po potencijama od x: kori stenjem direktne sumacije u double precision aritmetici.
y 1.0 1013 0.5 1013

0.95 0.5 1013

1.05

Izvrednjavanje polinoma (x 1)10 razvijenog po potencijama od x: kori stenjem Hornerove sheme u double precision aritmetici.

8.1.4.

Dijeljenje polinoma linearnim faktorom oblika x x0

Kako se prakti cno zapisuje Hornerova shema kad se radi na ruke? Napravi se tablica na sljede ci na cin. U gornjem se redu popi su svi koecijenti polinoma pn .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 156

Donji se red formira na sljede ci na cin: vode ci se koecijent prepi se, a svi ostali se ra cunaju tako da se posljednji izra cunati koecijent pomno zi s x0 , a zatim mu se doda koecijent iznad. Na kraju, ispod koecijenta a0 pi se vrijednost polinoma u to cki x0 . Poka zimo kako to funkcionira na konkretnom primjeru. Primjer 8.1.2. Izra cunajmo vrijednost polinoma p5 (x) = 2x5 x3 + 4x2 + 1 u to cki x0 = 1. Formirajmo tablicu: 2 1 Dakle, p5 (1) = 4. Pogledajmo op cenito sto je zna cenje koecijenata ci koji se javljaju u donjem redu tablice an an1 a1 a0 . x0 cn1 cn2 c0 r0 Primijetite da prema algoritmu 8.1.2. (pravilu za popunjavanje tablice) vrijedi da je cn1 = an , ci1 := ci x0 + ai1 , i = n, . . . , 1. (8.1.1) 2 0 2 1 1 4 0 1 4 .

3 3

O cito je r0 = pn (x0 ). Promatrajmo polinom koji dobijemo dijeljenjem polinoma pn linearnim faktorom x x0 . Nazovimo taj polinom qn1 . Tada vrijedi pn (x) = (x x0 )qn1 (x) + r0 . Znamo da je qn1 polinom stupnja n 1 s koecijentima
n1

(8.1.2)

qn1 (x) =
i=0

bi+1 xi .

(8.1.3)

Dodatno, ozna cimo s b0 = r0 . Uvrstimo li (8.1.3) u (8.1.2) i sredimo koecijente uz odgovaraju ce potencije, dobivamo pn (x) = bn xn + (bn1 x0 bn )xn1 + + (b1 x0 b2 )x + b0 x0 b1 . Za vode ci koecijent vrijedi bn = an , a za ai , uz i < n, je ai = bi x0 bi+1 ,

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 157

odnosno, bi mo zemo izra cunati iz bi+1 bi = ai + x0 bi+1 . Primijetite da je to relacija istog oblika kao (8.1.1), samo s pomaknutim indeksima, pa je bi = ci1 , i = 1, . . . , n, tj. koecijenti koje dobijemo u Hornerovoj shemi su ba s koecijenti kvocijenta i ostatka pri dijeljenju polinoma pn linearnim faktorom x x0 . Primjer 8.1.3. Podijelimo p5 (x) = 2x5 x3 + 4x2 + 1 linearnim polinomom x + 1. Primijetite da je to ista tablica kao u primjeru 8.1.2., pa imamo 2 1 Odatle lako citamo 2x5 x3 + 4x2 + 1 = (x + 1) (2x4 2x3 + x2 + 3x 3) + 4. Kona cno, napi simo algoritam koji nalazi koecijente pri dijeljenju polinoma linearnim polinomom. Algoritam 8.1.3. (Dijeljenje polinoma linearnim faktorom (x x0 )) bn := an ; for i := n 1 downto 0 do bi := bi+1 x0 + ai ; 2 0 2 1 1 4 0 1 4 .

3 3

8.1.5.

Potpuna Hornerova shema

se dogada ako postupak dijeljenja polinoma linearnim faktorom nastavimo, Sto tj. ponovimo vi se puta? Vrijedi pn (x) = (x x0 )qn1 (x) + r0 = (x x0 )[(x x0 )qn2 (x) + r1 ] + r0

= (x x0 )2 qn2 (x) + r1 (x x0 ) + r0 = = rn (x x0 )n + + r1 (x x0 ) + r0 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 158

Dakle, polinom pn napisan je razvijeno po potencijama od (x x0 ). Koja su zna cenja ri ? Usporedimo dobiveni oblik s Taylorovim polinomom oko x0 pn (x) =
i) p( n (x0 ) (x x0 )i . i ! i=0 n

Odatle odmah izlazi relacija za koecijente ri =


i) p( n (x0 ) , i!

tj. potpuna Hornerova shema ra cuna sve derivacije polinoma u zadanoj to cki. Primjer 8.1.4. Nadite sve derivacije polinoma p5 (x) = 2x5 x3 + 4x2 + 1 u to cki 1. Formirajmo potpunu Hornerovu tablicu. 2 1 1 1 1 1 1 Odatle lako citamo p5 (1) = 13 2! = 26,
(4) (2)

2 2 2 2 2 2

2 4 6 8

0 1

4 3 2

0 3 1

1 4

1 5

11 13 19

10

p5 (1) = 4,

p5 (1) = 1 1! = 1, p5 (1) = 19 3! = 114, p5 (1) = 2 5! = 240.


(5) (3)

(1)

p5 (1) = 10 4! = 240,

Algoritam koji nalazi koecijente ri , odnosno derivacije zadanog polinoma u to cki, mo ze se napisati u jednom jedinom polju. Algoritam 8.1.4. (Taylorov razvoj) for i := 0 to n do ri := ai ; for i := 1 to n do for j := n 1 downto i 1 do rj := rj + x0 rj +1 ;

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 159

8.1.6.

Hornerova shema za interpolacijske polinome

Kao sto cemo vidjeti, kod izvrednjavanja interpolacijskog polinoma u Newtonovoj formi, treba izra cunati izraz oblika pn (x) = an (x x0 ) (x x1 ) (x xn1 ) + an1 (x x0 ) (x x1 ) (x xn2 ) + + a1 (x x0 ) + a0 , pri cemu su to cke xi to cke interpolacije, a x to cka u kojoj zelimo izra cunati vrijednost polinoma. Algoritam kojim se vr si izvrednjavanje je vrlo sli can Hornerovoj shemi. Ozna cimo s yi = x xi . Ponovno, postavimo zagrade kao u Hornerovoj shemi. Vrijedi pn (x) = ( ((an yn1 + an1 )yn2 + an2 )yn3 + + a1 )y0 + a0 . Algoritam 8.1.5. (Hornerova shema za interpolacijske polinome) sum := an ; for i := n 1 downto 0 do sum := sum (x xi ) + ai ; Dakle, Hornerovu shemu mo zemo iskoristiti i za ovakav prikaz polinoma, koji vi se nije u standardnoj bazi.

8.1.7.

Hornerova shema za kompleksne argumente realnog polinoma

Sve sto smo dosad izvodili, vrijedi op cenito, tj. ako su koecijenti polinoma iz R ili C, a to cka u kojoj ra cunamo vrijednost iz istog polja. Ako zelimo izra cunati vrijednost realnog polinoma u kompleksnoj to cki, to se mo ze napraviti uz odredenu u stedu. Neka je z0 = x0 + iy0 . Tvrdimo da tada postoji polinom s2 stupnja 2 s realnim koecijentima, takav da je s2 (z0 ) = 0. Dokaz je jednostavan, jer kao posljedica osnovnog teorema algebre slijedi, ako je x0 + iy0 nulto cka polinoma s realnim koecijentima, onda je to i x0 iy0 , tj. kod realnog polinoma kompleksne nulto cke dolaze u konjugirano-kompleksnim parovima. Koecijenti polinoma s2 su s2 (x) = x2 + px + q = (x x0 iy0 ) (x x0 + iy0 ), tj. p = 2x0 ,
2 q = x2 0 + y0 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 160

Po analogiji, podijelimo polazni realni polinom polinomom s2 . Ostatak pri dijeljenju vi se nije samo konstanta, nego mo ze biti i polinom r stupnja 1 pn (x) = s2 (x)qn2 (x) + r (x). Napi simo pro slu relaciju u zgodnijoj formi, tj. napi simo na cudan na cin polinom r pn (x) = (x2 + px + q ) qn2 (x) + b1 (x + p) + b0 . (8.1.4) Izaberimo oznaku za koecijente polinoma qn2 , opet s pomaknutim indeksima
n2

qn2 (x) =
i=0

bi+2 xi .

(8.1.5)

Uvr stavanjem (8.1.5) u (8.1.4) i usporedivanjem koecijenata uz odgovaraju ce potencije, dobivamo:


n n2 n2 n2

ai xi =
i=0 i=0 n

bi+2 xi+2 + p
i=0 n1

bi+2 xi+1 + q
i=0 n2

bi+2 xi + b1 (x + p) + b0

=
i=2 n

bi xi + p
i=1 n1

bi+1 xi + q
i=0 n2

bi+2 xi + (b1 x + b0 ) + pb1 bi+2 xi .


i=0

=
i=0

bi xi + p
i=0

bi+1 xi + q

Deniramo li dodatno bn+1 = bn+2 = 0, onda prethodnu relaciju mo zemo pisati kao
n n

ai xi =
i=0 i=0

(bi + pbi+1 + qbi+2 ) xi .

Usporedivanjem koecijenata lijeve i desne strane, izlazi rekurzivna relacija ai = bi + pbi+1 + qbi+2 , i = n, . . . , 0,

uz start bn+1 = bn+2 = 0. Drugim rije cima, koecijente bi ra cunamo iz dva koja odgovaraju dvama vi sim potencijama, tj. bi = ai pbi+1 qbi+2 , i = n, . . . , 0, (8.1.6)

ponovno, uz bn+1 = bn+2 = 0. je rezultat? Ako tra Sto zimo rezultat dijeljenja kvadratnim polinomom, onda moramo izra cunati sve koecijente bi , s tim da ce indeksi i = 2, . . . , n dati koecijente polinoma qn2 , a b1 i b0 bit ce ostaci pri dijeljenju napisani u formi (8.1.4). Ako zelimo ostatak napisan u standardnoj bazi, onda cemo r napisati kao r (x) = b1 x + (b0 + b1 p),

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 161

tj. na kraju ra cuna, kad izra cunamo sve koecijente bi , postavit cemo b0 := b0 + b1 p Sljede ci algoritam ra cuna kvocijent polinoma pn i kvadratnog polinoma s2 u standardnoj bazi. Koecijenti p i q su tada ulazni podaci, bez ikakvih ograni cenja, tj. q ne mora biti nenegativan. Algoritam 8.1.6. (Dijeljenje polinoma kvadratnim polinomom) bn := an ; bn1 := an p bn ; for i := n 2 downto 0 do bi := ai p bi+1 q bi+2 ; b0 := b0 + p b1 ; Kona cno, vratimo se zadatku od kojeg smo krenuli. Ako zelimo izra cunati vrijednost polinoma pn u to cki x0 + iy0 , onda nam ne trebaju svi bi -ovi. Promotrimo relaciju (8.1.4). Uo cimo da je s2 (x0 + iy0) = 0 (tako je deniran), pa se (8.1.4) svede na pn (x0 + iy0 ) = b1 (x0 + iy0 + p) + b0 , (8.1.7) to ce re ci, trebaju nam samo koecijenti b1 i b0 da bismo znali izra cunati vrijednost u to cki z0 . Relaciju (8.1.7) mo zemo i ljep se napisati, ako znamo da je p + x0 = 2x0 + x0 = x0 , pa je Dakle, da bismo izra cunali vrijednost polinoma u kompleksnoj to cki, ne moramo pamtiti citavo polje koecijenata bi , nego samo trenutna tri koje su nam potrebna u rekurziji (8.1.6) Algoritam 8.1.7. (Vrijednost realnog polinoma u kompleksnoj to cki) p := 2 x0 ; 2 q := x2 0 + y0 ; b1 := 0; b0 := an ; for i := n 1 downto 0 do begin b2 := b1 ; b1 := b0 ; b0 := ai p b1 q b2 ; end; Re(pn (x0 + iy0 )) := b0 x0 b1 ; Im(pn (x0 + iy0 )) := y0 b1 ; pn (x0 + iy0 ) = b1 ( x0 + iy0 ) + b0 = (b0 x0 b1 ) + iy0 b1 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 162

Kad prebrojimo realne operacije u ovom algoritmu, dobivamo (2n + 4) mno zenja + (2n + 3) zbrajanja, dok bi obi cna Hornerova shema za kompleksni polinom u kompleksnoj to cki imala 4n mno zenja + 4n zbrajanja, ako smatramo da jedno kompleksno mno zenje realiziramo na standardan na cin, kori stenjem 4 realna mno zenja i 2 realna zbrajanja, a kompleksno zbrajanje zahtijeva 2 realna zbrajanja. U ne tako davnoj pro slosti duljina trajanja mno zenja u ra cunalu bila je dosta dulja nego duljina trajanja zbrajanja, pa su se ljudi cesto dovijali alkemiji pretvaranja mno zenja u zbrajanja. Kod mno zenja kompleksnih brojeva to je lako. Vrijedi (a + bi) (c + di) = (ac bd) + (ad + bc)i = (ac bd) + [(a + b) (c + d) (ac + bd)]i. Uo cite da ova posljednja forma ima samo 3 mno zenja i 5 zbrajanja (produkti ac i bd se cuvaju kad se izra cunaju). Kona cno, sto ako zelimo izra cunati vrijednost polinoma pn u to cki z 0 = x0 iy0 . Moramo li ponovno provoditi postupak? Odgovor je ne. Naime, z 0 je, takoder nulto cka od s2 , pa se (8.1.4) svede na pn (x0 iy0 ) = b1 ( x0 iy0 ) + b0 = (b0 x0 b1 ) iy0 b1 , tj. razlika je samo u tome da mu je imaginarni dio suprotnog predznaka, tj. treba nam jo s jedna dodatna operacija da istovremeno izra cunamo vrijednost polinoma u z0 i z 0 . Ako na ruke zelimo izra cunati vrijednost polinoma u kompleksnoj to cki, onda je tablica vrlo sli cna obi cnoj Hornerovoj shemi. an q p + bn pbn bn1 an1 an2 pbn1 bn2 qbn a2 a1 pb2 b1 qb3 a0 pb1 b0 qb2 .

qb4 b2

pb3

Primjer 8.1.5. Nadite vrijednost polinoma p3 (x) = x3 + 8x2 + 1 u to ckama 2 i.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 163

Uzmimo to cku 2 + i, pa je x0 = 2, y0 = 1, a p = 4, q = 5. Formirajmo tablicu. 1 8 0 1 5 4 4 1 12 + 5 48 43 60 172 113 .

Posljednja dva koecijenta su b1 = 43, b0 = 113, pa je Re(p3 (2 + i)) = b0 b1 x0 = 113 86 = 27, Dakle, imamo p3 (2 + i) = 27 + 43i, p3 (2 i) = 27 43i. Im(p3 (2 + i)) = b1 y0 = 43.

8.1.8.

Ra cunanje parcijalnih derivacija kompleksnog polinoma

Prisjetimo se, kompleksni se polinom u varijabli z , mo ze zapisati kao dva polinoma u i v u dvije realne varijable x i y , gdje je z = x + iy . Vrijedi pn (z ) = u(x, y ) + iv (x, y ), z = x + iy.

Druga cije gledano, funkcije u i v mo zemo interpretirati i kao realne funkcije kompleksnog argumenta u(z ) = Re (pn (z )), v (z ) = Im (pn (z )),

pa, prema pro slom odjeljku, imamo algoritam za nala zenje njihovih vrijednosti. Da bismo opona sali dijeljenje polinoma linearnim polinomom oblika x x0 , uzmimo da nam i kvadratni polinom ima oblik x2 px q (pa svugdje gdje u pro slom odjeljku pi se p treba pisati p, a gdje pi se q treba pisati q ). Dakle, rastav u produkt kvadratnog polinoma i polinoma stupnja n 2 u ovakvoj notaciji glasi: pn (x) = s2 (x)qn2 (x) + r (x), gdje je r (x) = b1 (x p) + b0 . Algoritam za nala zenje koecijenata u ovoj formulaciji je: start bn+2 = bn+1 = 0, a rekurzija je bi = ai + pbi+1 + qbi+2 , i = n, . . . , 0. (8.1.8) Pokazali smo da je tad pn (z0 ) = (b0 x0 b1 ) + iy0 b1 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 164

Shvatimo li pn (z ) kao funkciju u odgovaraju coj to cki (x, y ), onda su realni i imaginarni dio te funkcije u(x, y ) = b0 xb1 , v (x, y ) = yb1 .

Parcijalne derivacije funkcija u i v mo zemo dobiti kori stenjem deriviranja slo zenih funkcija. Polinomi su analiti cke funkcije, pa njihove parcijalne derivacije vrijede CauchyRiemannovi uvjeti v u (x, y ) = (x, y ), x y u v (x, y ) = (x, y ). y x

Zbog toga je dovoljno prona ci samo ili parcijalne derivacije jedne od funkcija ili parcijalne derivacije po jednoj varijabli. Iskoristimo li da vrijedi p q = + , y p y q y dobivamo (izostavljaju ci pisanje to cke u kojoj deriviramo) b0 b1 b0 b1 b1 b0 u = x = (2y ) x (2y ) = 2y x y y y q q q q v b1 b1 b 1 = b1 + y = b1 + y (2y ) = b1 2y 2 y y q q

(8.1.9)

Dakle, da bismo izra cunali vrijednosti parcijalnih derivacija u nekoj to cki, dovoljno je znati b0 b0 b1 b1 , , , . p q p q Uvedimo oznake bi bi , di = , i = n + 2, . . . , 0 . ci = p q Deriviramo li formalno relaciju (8.1.8) prvo po p, a zatim po q , dobivamo cn+2 ci dn+2 di = cn+1 = 0 = bi+1 + pci+1 + qci+2 , i = n, . . . , 0 = dn+1 = 0 = bi+2 + pdi+1 + qdi+2 , i = n, . . . , 0

Odavde odmah vidimo da ci -ovi i di -ovi tvore istu rekurziju, samo s indeksom translatiranim za 1, tj. vrijedi ci+1 = di , i = n + 1, n, n 1, . . . , 0.

Zbog toga, umjesto s dvije rekurzije za koecijente mo zemo raditi samo s jednom, uz paralelno ra cunanje bi . Algoritam dobivanja parcijalnih derivacija zove se algoritam Bairstowa.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 165

Algoritam 8.1.8. (Algoritam Bairstowa) b1 := an ; b0 := an1 + p b1 ; c2 := 0; c1 := 0; c0 := an ; for i := n 2 downto 0 do begin b2 := b1 ; b1 := b0 ; b0 := ai + p b1 + q b2 ; c2 := c1 ; c1 := c0 ; c0 := b1 + p c1 + q c2 ; end; Relacija (8.1.9) odmah daje kako se iz c-ova i b-ova dobivaju parcijalne derivacije u v (x0 , y0 ) = (x0 , y0) = 2y0(x0 d1 d0 ) = 2y0 (x0 c2 c1 ) y x v u 2 2 (x0 , y0 ) = (x0 , y0 ) = b1 2y0 d1 = b1 2y0 c2 . y x Motivacija za ovaj algoritam potje ce iz modikacije Newtonove metode za tra zenje realnih nulto caka polinoma. Ako zelimo na ci kompleksne nulto cke realnog polinoma, prvo treba izlu citi kvadratni polinom s konjugirano kompleksnim parom nulto caka. Ta generalizacija Newtonove metode zove se metoda NewtonBairstow.

8.2.

Generalizirana Hornerova shema

U pro slom odjeljku napravili smo nekoliko algoritama za izvrednjavanje polinoma i njegovih derivacija u zadanoj to cki. Te algoritme, koji su egzaktni u egzaktnoj aritmetici, mo zemo koristiti i kao pribli zne algoritme za izvrednjavanje redova potencija, tj. analiti ckih funkcija. Pretpostavimo da se funkcija f u okolini neke to cke x0 (u R ili C) mo ze razviti u red potencija oblika

f (x) =
n=0

an (x x0 )n ,

(8.2.1)

s tim da znamo taj red konvergira prema f na toj okolini od x0 . Dodatno, pretpostavimo da znamo sve koecijente an u ovom razvoju, u smislu da ih mo zemo

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 166

brzo i to cno izra cunati. Naravno, ovu beskona cnu sumu ne mo zemo efektivno algoritamski izra cunati, jer zahtijeva beskona can broj aritmeti ckih operacija. Medutim, kona cne komade ovog razvoja mo zemo iskoristiti za aproksimaciju funkcije f na toj okolini. Iz konvergencije razvoja po to ckama odmah slijedi da, za bilo koju unaprijed zadanu to cnost > 0, postoji N N takav da je
N

fN (x) =
n=0

an (x x0 )n ,

(8.2.2)

aproksimacija za f (x) s gre skom manjom od . Nije bitno da li gre sku mjerimo u apsolutnom ili relativnom smislu, osim ako je f (x) = 0. Sasvim op cenito, potrebna duljina razvoja N ovisi i o i o x. No, ako se sjetimo da redovi potencija konvergiraju uniformno na kompaktima, mo zemo posti ci i uniformnu aproksimaciju s to cno s cu na takvim kompaktima, pa N onda ovisi samo o . Kad uzmemo u obzir da ionako pribli zno ra cunamo u aritmetici ra cunala, ovim pristupom mo zemo bitno pove cati klasu funkcija s kojima mo zemo ra cunati. Ako je gre ska dovoljno mala, recimo reda veli cine osnovne gre ske zaokru zivanja u, onda je pripadna aproksimacija fN (x) gotovo jednako dobra kao i f (x). Algoritam za ra cunanje fN (x) u zadanoj to cki x bitno ovisi u tome da li N znamo unaprijed ili ne. Ako ga ne znamo, onda se obi cno koristi sumacija unaprijed, sve dok se izra cunata suma ne stabilizira na zadanu to cnost. Koliko to mo ze biti opasno, ve c smo vidjeli u primjeru za sin x. Zbog toga se sumacija unaprijed koristi samo kao zadnje uto ci ste. Vrlo cesto se N mo ze unaprijed odrediti iz analiti ckih svojstava funkcije f , tako da dobijemo uniformnu aproksimaciju s to cno s cu na nekom kompaktu. Obi cno se nije jako bitno za taj kompakt uzima neki segment u R, odnosno neki krug u C. Cak da N bude savr sen, tj. najmanji mogu ci, ako je takav N te sko izra cunati. Katkad je sasvim dobra i pribli zna vrijednost za N . Tada je fN polinom poznatog stupnja N i mo zemo koristiti Hornerovu shemu i njene varijacije za ra cunanje fN (x). Trenutno ne ulazimo u to kako se nalaze takve aproksimacije. Tome cemo posvetiti punu pa znju u poglavlju o aproksimacijama. Zasad recimo samo to da se izbjegava direktno kori stenje redova potencija (8.2.1) i pripadnih polinomnih aproksimacija u obliku (8.2.2), zbog lo se uvjetovanosti sustava funkcija {1, (x x0 ), (x x0 )2 , . . . , (x x0 )n , . . .} i nejednolikog rasporeda pogre ske e(x) = f (x) fN (x) na domeni aproksimacije. Umjesto reda potencija (8.2.1), standardno se koriste razvoji oblika

f (x) =
n=0

an pn (x),

(8.2.3)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 167

gdje je {pn | n N0 } neki ortogonalni sustav funkcija na domeni aproksimacije. U aproksimaciji elementarnih i manje elementarnih tzv. specijalnih funkcija vrlo sevljevi polinomi, zbog skoro jednolikog rasporeda gre cesto se koriste tzv. Cebi ske na domeni. Kasnije cemo pokazati i algoritam za nala zenje takve kvaziuniformne sevljeva ekonomizacija). aproksimacije iz poznatog reda potencija (tzv. Cebi Razvoj funkcije f u red oblika (8.2.3) je o cita generalizacija reda potencija. Njega, takoder, po istom principu, mo zemo iskoristiti za aproksimaciju funkcije f , ako znamo da on konvergira prema f na nekoj domeni. Rezanjem reda dobivamo aproksimaciju funkcije f
N

fN (x) =
n=0

an pn (x),

(8.2.4)

sto je o cita generalizacija polinoma iz (8.2.2). Naravno, da bismo izra cunali fN (x) moramo znati sve koecijente an i sve funkcije pn . Medutim, u ve cini primjena nemamo direktnu formulu za ra cunanje vrijednosti pn (x) u zadanoj to cki x, za sve n N0 . Umjesto toga, znamo da funkcije pn zadovoljavaju neku, relativno jednostavnu rekurziju po n. Funkcije pn ne moraju biti polinomi. Dovoljno je da ih mo zemo rekurzivno ra cunati! Pristup ra cunanju vrijednosti fN (x) je isti kao i ranije. Ako unaprijed ne znamo N , onda se sumacija vr si unaprijed, a pn (x) ra cuna redom iz rekurzije. S druge strane, iz teorije aproksimacija, vrlo cesto je mogu ce unaprijed na ci koliko clanova N treba uzeti za (uniformnu) zadanu to cnost. Tada bi bilo zgodno koristiti neku generalizaciju Hornerove sheme za brzo izvrednjavanje fN oblika (8.2.4) i to je cilj ovog odjeljka.

8.2.1.

Izvrednjavanje rekurzivno zadanih funkcija

Budu ci da ortogonalni polinomi zadovoljavaju tro clane, homogene rekurzije, a vrlo se cesto koriste, posebnu pa znju posvetit cemo ba s takvim rekurzijama. Osim toga, tro clane rekurzije istog op ceg oblika vrijede i za mnoge specijalne funkcije koje ne moraju biti ortogonalne. Zato pretpostavljamo da funkcije pn , za n N0 , zadovoljavaju rekurziju oblika pn+1 (x) + n (x)pn (x) + n (x)pn1 (x) = 0, n = 1, 2 , . . . , (8.2.5)

s tim da su poznate po cetne funkcije p0 i p1 , i sve funkcije n , n , za n N, koje su obi cno jednostavnog oblika. Primijetite da potencije pn (x) = xn zadovoljavaju dvo clanu homogenu rekurziju pn (x) xpn1 (x) = 0, n N,

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 168

uz p0 (x) = 1, pa je (8.2.5) zaista generalizacija polinomnog slu caja. Sli can algoritam za brzo izvrednjavanje fN mo ze se napraviti i kad pn zadovoljavaju cetvero clane ili vi se clane rekurzije, ali se takve rekurzije rijetko pojavljuju u praksi. Algoritam je vrlo sli can izvrednjavanju realnog polinoma u kompleksnoj to cki. Deniramo rekurziju za koecijente BN +2 = BN +1 = 0, Bn = an n (x)Bn+1 n+1 (x)Bn+2 , Uvr stavanjem u formulu (8.2.4) za fN (x), dobivamo
N N

n = N, . . . , 0.

(8.2.6)

fN (x) = =

an pn (x) =
n=0 N 1 n=1 N 1 n=0

(Bn + n (x)Bn+1 + n+1 (x)Bn+2 ) pn (x)


N N +1

Bn+1 pn+1 (x) +


n=0

n (x)Bn+1 pn (x) +
n=1

n (x)Bn+1 pn1 (x)

=
n=1

Bn+1 (pn+1 (x) + n (x)pn (x) + n (x)pn1 (x))

+ B0 p0 (x) + B1 p1 (x) + 0 (x)B1 p0 (x) = B0 p0 (x) + B1 p1 (x) + 0 (x)B1 p0 (x). Pripadni silazni algoritam izvrednjavanja ima sljede ci oblik. Algoritam 8.2.1. (Generalizirana Hornerova shema za fN (x)) B1 := 0; B0 := aN ; for k := N 1 downto 0 do begin; B2 := B1 ; B1 := B0 ; B0 := ak k (x) B1 k+1 (x) B2 ; end; fN (x) := B0 p0 (x) + B1 (p1 (x) + 0 (x) p0 (x));
Ako trebamo izra cunati i derivaciju fN (x), do pripadnog algoritma mo zemo do ci deriviranjem relacije (8.2.4) N fN (x) = n=0

an pn (x),

i deriviranjem rekurzije (8.2.5), tako da dobijemo i rekurziju za funkcije pn . Poku sajte to napraviti sami.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 169

Medutim, postoji i jednostavniji put, deriviranjem rekurzije (8.2.6), sli cno kao u algoritmu Bairstowa. Ovdje je to jo s bitno jednostavnije, jer imamo samo jednu varijablu. Koecijente Bn shvatimo kao funkcije od x, sto oni zaista i jesu. Zatim deriviramo (8.2.6), s tim da Bn ozna cava derivaciju od Bn po x, u to cki x. Takvim formalnim deriviranjem dobivamo rekurziju za koecijente Bn . BN +2 = BN +1 = 0, BN +2 = BN +1 = 0, Bn = an n (x)Bn+1 n+1 (x)Bn+2 , n = N, . . . , 0. Bn = n (x)Bn+1 n (x)Bn +1 n ( x ) B n = N, . . . , 0. n+2 n+1 (x)Bn+2 , +1
Odavde odmah vidimo da je i BN = 0. Uz standardnu oznaku bn = n (x)Bn+1 n +1 (x)Bn+2 ,

n = N, . . . , 0,

s tim da je o cito bN = 0, rekurziju za Bn mo zemo napisati u obliku Bn = bn n (x)Bn +1 n+1 (x)Bn+2 ,

n = N, . . . , 0,

sto ima skoro isti oblik kao i rekurzija za Bn , osim zamjene an u bn . Kona cni rezultat, takoder, dobivamo deriviranjem ranijeg kona cnog rezultata fN (x) = B0 p0 (x) + B1 (p1 (x) + 0 (x)p0 (x)), odakle slijedi
fN (x) = B0 p0 (x) + B0 p0 (x) + B1 (p1 (x) + 0 (x)p0 (x) + 0 (x)p0 (x)), + B1 (p1 (x) + 0 (x)p0 (x)). Dakle, da bismo izra cunali fN (x), dovoljno je znati samo derivacije po cetnih funkcija p0 i p1 , koje su obi cno jednostavne. Naravno, treba znati i derivacije n , n funkcija iz polazne tro clane rekurzije, ali i one su obi cno jednostavne. Rekurzija za derivacije pn nas uop ce ne zanima, iako ju nije te sko napisati. Vidimo da nam za ra cunanje fN (x) treba i rekurzija za ra cunanje fN (x), pa se te dvije vrijednosti obi cno zajedno ra cunaju, a ne svaka posebno. Tada rekurzije za Bn i Bn provodimo u istoj petlji. Kona cni rezultati izgledaju komplicirano, ali kad u njih uvrstimo konkretne objekte, vrlo rijetko ostanu svi clanovi. Obi cno se te formule svedu na fN (x) = B0 , fN (x) = B0 . Algoritam 8.2.2. (Generalizirana Hornerova shema za fN (x) i fN (x))

B1 := 0;

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 170

B0 := aN ; B1 := 0; B0 := 0; for k := N 1 downto 0 do begin; B2 := B1 ; B1 := B0 ; B0 := ak k (x) B1 k+1 (x) B2 ; B2 := B1 ; B1 := B0 ; b := k (x) B1 k +1 (x) B2 ; B0 := b k (x) B1 k+1(x) B2 ; end; fN (x) := B0 p0 (x) + B1 (0 (x) p0 (x) + p1 (x)); fN (x) := B0 p0 (x) + B0 p0 (x) + B1 (p1 (x) + 0 (x) p0 (x) + 0 (x) p0 (x)) + B1 (p1 (x) + 0 (x) p0 (x)); Istim putem mo zemo izvesti i rekurzije za ra cunanje vi sih derivacija fN (x), za k 2. Zanimljivo je da u praksi to gotovo nikada nije potrebno. Razlog le zi u cinjenici da gotovo sve korisne familije funkcija pn , n N, zadovoljavaju neke diferencijalne jednad zbe drugog reda, s parametrom n. Jasno je da tada treba koristiti odgovaraju cu diferencijalnu jednad zbu za ra cunanje fN (x), ali i to je vrlo rijetko potrebno. Cak i algoritam za derivacije se rijetko koristi. Naime, ako znamo na ci, tj. izra cunati koecijente an u prikazu
(k )

f (x) =
n=0

an pn (x),

s dovoljnom to cno s cu, za n N , tako da je pripadni fN (x) dovoljno dobra aproksimacija, onda se ne isplati koristiti
fN (x) N

=
n=0

an pn (x)

kao aproksimaciju za f (x), jer ona obi cno ima manju to cnost od aproksimacije za f . Puno je bolje izra cunati koecijente an (to nisu derivacije) u pravom razvoju derivacije f po istim funkcijama pn , a ne po njihovim derivacijama. Dakle, za f koristimo aproksimaciju oblika
N fN (x)

=
n=0

an pn (x),

koja ne mora imati istu duljinu, ali zato ima zeljenu to cnost.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 171

Slo zenost ovih algoritama klju cno ovisi o slo zenosti ra cunanja svih potrebnih funkcija p0 , p1 , n , n , i njihovih derivacija, pa je besmisleno brojati pojedina cne aritmeti cke operacije na nivou op ceg algoritma. U prakti cnim aproksimacijama se naj ce s ce koriste tzv. ortogonalne familije funkcija pn , koje cine ortogonalnu bazu u nekom prostoru funkcija, obzirom na neki skalarni produkt na tom prostoru. Vrlo cesto je pn polinom stupnja n, za svaki n N0 . Neke primjere klasi cnih ortogonalnih polinoma i pripadnih rekurzija dajemo ne sto kasnije. Medutim, ve c smo rekli da funkcije pn ne moraju biti polinomi i prvi primjer je ba s tog tipa.

8.2.2.

Izvrednjavanje Fourierovih redova

Za aproksimaciju periodi ckih funkcija standardno koristimo Fourierove redove. Pretpostavimo, radi jednostavnosti, da je f periodi cka funkcija na segmentu [, ]. Tada, uz relativno blage pretpostavke, funkciju f mo zemo razviti u Fourierov red oblika an cos(nx) +
n=0 n=1

bn sin(nx).

Umjesto a0 , standardno se pi se a0 /2, ali to nije bitna razlika. Zanemarimo trenutno pitanje konvergencije ovog reda i zna cenja njegove sume. Uo cimo samo da ove trigonometrijske funkcije tvore ortogonalan sustav funkcija, obzirom na skalarni produkt deniran integralom. Pretpostavimo da su nam koecijenti an i bn poznati. Na s zadatak je izra cunati aproksimaciju oblika
N N

fN (x) =
n=0

an cos(nx) +
n=1

bn sin(nx),

gdje je N unaprijed zadan. Ovakav izraz se cesto zove i trigonometrijski polinom. Vidimo da se on sastoji iz dva dijela, kosinusnog i sinusnog, pa cemo tako i sastaviti algoritam. Usput, sjetimo se da Fourierov red parne funkcije f (x) = f (x) ima samo kosinusni dio, a Fourierov red neparne funkcije f (x) = f (x) ima samo sinusni dio razvoja. Pretpostavimo stoga da je f parna funkcija i trebamo izra cunati aproksimaciju oblika
N

fN (x) =
n=0

an cos(nx).

U direktnoj sumaciji trebamo N ra cunanja funkcije cos, za cos(nx), uz n 1. Iako to danas vi se ne traje pretjerano dugo, mo zemo na ci i bolji algoritam, koji treba samo jedno jedino ra cunanje funkcije cos.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 172

Da bismo dobili polazni oblik aproksimacije (8.2.4) iz generalizirane Hornerove sheme, o cito treba denirati pn (x) = cos(nx). Nedostaje nam jo s samo tro clana homogena rekurzija za ove funkcije. Medutim, i to ide lako, ako se sjetimo formule koja sumu kosinusa pretvara u produkt cos a + cos b = 2 cos ab a+b cos . 2 2

Dovoljno je uzeti a = (n + 1)x i b = (n 1)x. Dobivamo cos((n + 1)x) + cos((n 1)x) = 2 cos(nx) cos x, pa tra zena rekurzija ima oblik pn+1 (x) 2 cos x pn (x) + pn1 (x) = 0, odakle slijedi da u op coj rekurziji (8.2.5) treba uzeti n (x) = 2 cos x, Rekurzija (8.2.6) za Bn ima oblik BN +2 = BN +1 = 0, Bn = an + 2 cos x Bn+1 Bn+2 , n = N, . . . , 0. n (x) = 1, n N. n N,

Vidimo da n (x) i n (x) ne ovise o n, a n (x) ne ovisi ni o x, ve c je konstanta.

Po cetne funkcije su p0 (x) = 1 i p1 (x) = cos x, pa je kona cni rezultat fN (x) = B0 p0 (x) + B1 (p1 (x) + 0 (x)p0 (x)) = B0 1 + B1 ( cos x 2 cos x 1) = B0 B1 cos x. Sad imamo sve elemente za generaliziranu Hornerovu shemu. Algoritam 8.2.3. (Fourierov red parne funkcije) B1 := 0; B0 := aN ; alpha := 2 cos x; for k := N 1 downto 0 do begin; B2 := B1 ; B1 := B0 ; B0 := ak + alpha B1 B2 ; end; fN (x) := B0 0.5 alpha B1 ;

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 173

Ovaj algoritam zaista tro si jedan jedini kosinus, pod cijenu jednog mno zenja se stabilnosti ti s 0.5. Sto ce, on je podjednako stabilan kao i direktna sumacija. Male vrijednosti cos(nx) ionako ne dobivamo s malom relativnom, ve c malom apsolutnom gre skom.
Ako trebamo izra cunati i derivaciju fN (x), za pripadni algoritam trebamo n (x) = 2 sin x, n (x) = 0,

n N.

Onda je bn = 2 sin x Bn+1 , i a formalnim deriviranjem fN (x) = B0 B1 cos x dobivamo


fN (x) = B0 B1 cos x + B1 sin x. Bn = bn + 2 cos x Bn +1 Bn+2 ,

n = N, . . . , 0, n = N, . . . , 0,

Dakle, cijeli taj algoritam treba jo s samo jedan sinus. I tog bismo mogli izbaciti, tako da sinus izrazimo preko kosinusa, sin x = 1 cos2 x, ali to se ve c ne isplati, jer moramo paziti na znak, a oduzimanje mo ze dovesti do nepotrebnog gubitka to cnosti u sinusu. Pretpostavimo sad da je f neparna funkcija. Trebamo izra cunati aproksimaciju oblika
N

fN (x) =
n=1

bn sin(nx).

Suma ovdje ide od 1, pa treba biti malo oprezan. Zgodniji je zapis


N 1

fN (x) =
n=0

bn+1 sin((n + 1)x).

Nije ba s lijepo ostaviti indeks N u fN , ali sad je o cito da treba denirati pn (x) = sin((n + 1)x). Zatim koristimo formulu sin a + sin b = 2 sin a+b ab cos , 2 2

i uzmemo a = (n + 2)x i b = nx. Dobivamo sin((n + 2)x) + sin(nx) = 2 sin((n + 1)x) cos x,

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 174

pa tra zena rekurzija ima oblik pn+1 (x) 2 cos x pn (x) + pn1 (x) = 0, n N,

sto je potpuno isti oblik kao i za parne funkcije, odnosno za pn (x) = cos(nx). Dakle, rekurzija za pripadne Bn ima isti oblik, samo starta od N 1 BN +1 = BN = 0, Bn = bn+1 + 2 cos x Bn+1 Bn+2 , n = N 1, . . . , 0.

Po cetne funkcije su p0 (x) = sin x i p1 (x) = sin(2x) = 2 sin x cos x, pa je kona cni rezultat fN (x) = B0 p0 (x) + B1 (p1 (x) + 0 (x)p0 (x)) = B0 sin x + B1 (2 sin x cos x 2 cos x sin x) = B0 sin x. Algoritam mo zete i sami napisati. Za op ci Fourierov red koji ima i parni i neparni dio, treba spojiti prethodne algoritme. Jedina je neugoda sto je neparni za 1 kra ci, jer starta s N 1. Ako nas to ba s jako smeta, onda mo zemo i malo druga cije postupiti u neparnom dijelu. Umjetno deniramo da je b0 = 0 i pi semo
N

fN (x) =
n=0

bn sin(nx).

Zatim uzmemo pn (x) = sin(nx). Rekurzija za pn , naravno, ostaje ista, a za Bn sad vrijedi produljena rekurzija BN +1 = BN = 0, Bn = bn + 2 cos x Bn+1 Bn+2 , n = N, . . . , 0.

Po cetne funkcije su p0 (x) = 0 i p1 (x) = sin x, pa je kona cni rezultat fN (x) = B0 p0 (x) + B1 (p1 (x) + 0 (x)p0 (x)) = B0 0 + B1 ( sin x 2 cos x 0) = B1 sin x. To pokazuje da B0 uop ce ne treba ra cunati, ali ba s to i o cekujemo, kad smo rekurziju pomakli za jedan indeks navi se! Spomenimo na kraju da obje funkcije cos(nx) i sin(nx) zadovoljavaju istu diferencijalnu jednad zbu drugog reda y + n2 y = 0.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 175

8.2.3.

Klasi cni ortogonalni polinomi

U aproksimacijama i rje savanju diferencijalnih jednad zbi naj ce s ce se susre cemo s pet tipova klasi cnih ortogonalnih polinoma. Za polinome {p0 , p1 , p2 , . . . , pn , . . .}, pri cemu indeks polinoma ozna cava njegov stupanj, re ci cemo da su ortogonalni obzirom na te zinsku funkciju w , w (x) 0 na intervalu [a, b], ako vrijedi
b

w (x) pm (x) pn (x) dx = 0,


a

za m = n.

Te zinska funkcija odreduje sistem polinoma do na konstantni faktor u svakom od polinoma. Izbor takvog faktora zove se jo s i standardizacija ili normalizacija. Cebi sevljevi polinomi prve vrste sevljevi polinomi prve vrste obi Cebi cno se ozna cavaju s Tn . Oni su ortogonalni na intervalu [1, 1] obzirom na te zinsku funkciju w (x) = Vrijedi
1

1 . 1 x2

Oni zadovoljavaju rekurzivnu relaciju

za m = n, Tm (x) Tn (x) za m = n = 0, dx = , 1 x2 /2, za m = n = 0. Tn+1 (x) 2xTn (x) + Tn1 (x) = 0,

0,

uz start T0 (x) = 1, Za njih postoji i eksplicitna formula Tn (x) = cos(n arccos x). sevljev polinom prve vrste Tn zadovoljava diferencijalnu jedOsim toga, n-ti Cebi nad zbu (1 x2 )y xy + n2 y = 0. T1 (x) = x.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 176

Graf prvih par polinoma izgleda ovako.


y 1 0.75 0.5 0.25 1 0.75 0.5 0.25 0.25 0.5 0.75 1 x T1 (x) T2 (x) T3 (x) T4 (x)

0.25 0.5 0.75 1

sevljevi polinomi prve vrste transformirani na interval Katkad se koriste i Cebi [0, 1], u oznaci Tn . Kori stenjem linearne (preciznije, ane) transformacije [0, 1] x := 2x 1 [1, 1] dolazimo do svih svojstava tih polinoma. Na primjer, relacija ortogonalnosti tada postaje 1 za m = n, 0, Tm (x) Tn (x) za m = n = 0, dx = , x x2 /2, za m = n = 0, 0
Tn +1 (x) 2(2x 1)Tn (x) + Tn1 (x) = 0,

a rekurzivna relacija

uz start
T0 (x) = 1, T1 (x) = 2x 1.

Cebi sevljevi polinomi druge vrste sevljevi polinomi druge vrste obi Cebi cno se ozna cavaju s Un . Oni su ortogonalni na intervalu [1, 1] obzirom na te zinsku funkciju w (x) = 1 x2 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 177

Vrijedi
1

1 x2 Um (x) Un (x) dx =

0, za m = n, /2, za m = n.

sevljevi polinomi prve vrste Oni zadovoljavaju istu rekurzivnu relaciju kao Cebi Un+1 (x) 2xUn (x) + Un1 (x) = 0, samo uz malo druga ciji start U0 (x) = 1, Za njih postoji i eksplicitna formula Un (x) = sin((n + 1) arccos x) . sin(arccos x) U1 (x) = 2x.

sevljev polinom druge vrste Un zadovoljava diferencijalnu jedOsim toga, n-ti Cebi nad zbu (1 x2 )y 3xy + n(n + 2)y = 0. Graf prvih par polinoma izgleda ovako.
y 5 4 3 2 1 1 0.75 0.5 0.25 1 2 3 4 0.25 0.5 0.75 1 x U1 (x) U2 (x) U3 (x) U4 (x)

Legendreovi polinomi Legendreovi polinomi obi cno se ozna cavaju s Pn . Oni su ortogonalni na intervalu [1, 1] obzirom na te zinsku funkciju w (x) = 1.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 178

Vrijedi
1

Pm (x) Pn (x) dx =
1

0, za m = n, 2/(2n + 1), za m = n.

Oni zadovoljavaju rekurzivnu relaciju (n + 1)Pn+1 (x) (2n + 1)xPn (x) + nPn1 (x) = 0, uz start P0 (x) = 1, P1 (x) = x. Osim toga, n-ti Legendreov polinom Pn zadovoljava diferencijalnu jednad zbu (1 x2 )y 2xy + n(n + 1)y = 0. Graf prvih par polinoma izgleda ovako.
y 1 0.75 0.5 0.25 1 0.75 0.5 0.25 0.25 0.5 0.75 1 x P1 (x) P2 (x) P3 (x) P4 (x)

0.25 0.5 0.75 1

Laguerreovi polinomi Laguerreovi polinomi obi cno se ozna cavaju s Ln . Oni su ortogonalni na intervalu [0, ) obzirom na te zinsku funkciju w (x) = ex .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 179

Vrijedi

ex Lm (x) Ln (x) dx =
0

0, za m = n, 1, za m = n.

Oni zadovoljavaju rekurzivnu relaciju (n + 1)Ln+1 (x) + (x 2n 1)Ln (x) + nLn1 (x) = 0, uz start L0 (x) = 1, L1 (x) = 1 x. Osim toga, n-ti Laguerreov polinom Ln zadovoljava diferencijalnu jednad zbu xy + (1 x)y + ny = 0. Graf prvih par polinoma izgleda ovako.
y 3 2 1 0 1 2

L1 (x) L2 (x) 1 2 3 4 5 6 x L3 (x) L4 (x)

U literaturi se cesto nailazi na jo s jednu rekurziju za Laguerreove polinome Ln+1 (x) + (x 2n 1)Ln (x) + n2 Ln1 (x) = 0, uz jednaki start L0 (x) = 1, L1 (x) = 1 x. Usporedivanjem ove i prethodne rekurzije dobivamo da je Ln (x) = n! Ln (x),

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 180

tj. radi se samo o druga cijoj normalizaciji ortogonalnih polinoma. Lako je pokazati da vrijedi 0, za m = n, ex Lm (x) Ln (x) dx = 2 (n!) , za m = n.
0

Hermiteovi polinomi Hermiteovi polinomi obi cno se ozna cavaju s Hn . Oni su ortogonalni na intervalu (, ) obzirom na te zinsku funkciju w (x) = ex . Vrijedi

ex Hm (x) Hn (x) dx =

0, za m = n, n 2 n! , za m = n.

Oni zadovoljavaju rekurzivnu relaciju Hn+1 (x) 2xHn (x) + 2nHn1 (x) = 0, uz start H0 (x) = 1, H1 (x) = 2x. Osim toga, n-ti Hermiteov polinom Hn zadovoljava diferencijalnu jednad zbu y 2xy + 2ny = 0.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 181

Graf prvih par polinoma izgleda ovako.


y 250 200 150 100 50 H1 (x) H2 (x) 3 2 1 50 1 2 3 x H3 (x) H4 (x)

8.3.

Stabilnost rekurzija i generalizirane Hornerove sheme

Stabilnost generalizirane Hornerove sheme u velikoj mjeri ovisi o tome koliko je stabilna rekurzija za funkcije pn . Naime, ako u razvoju
N

fN (x) =
n=0

an pn (x),

uzmemo da je aN = 1, i an = 0, za n < N , onda je fN = pN . Dakle, generaliziranu Hornerovu shemu mo zemo koristiti i kao silazni algoritam za izvrednjavanje funkcija pN . Pitanje je da li je to bolje od direktnog ra cunanja pN unaprijed po osnovnoj rekurziji pn+1 (x) + n (x)pn (x) + n (x)pn1 (x) = 0, n = 1, 2 , . . . , N 1 .

Za precizan odgovor, treba analizirati stabilnost ove rekurzije za pn . Prije toga, pogledajmo koliki je utjecaj te stabilnosti na generaliziranu Hornerovu shemu. Stvar, naravno, bitno ovisi i o koecijentima an u prikazu fN . Za lijepe funkcije, ti koecijenti obi cno relativno brzu trnu, tj. te ze prema nuli.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 182

Takvi mali koecijenti an , za ve ce n, bitno prigu suju gre ske u ra cunanju pn (x). Isti efekt, samo manje vidljivo, vrijedi i u silaznom algoritmu. U tom smislu, prethodni primjer je ekstremni, jer je zadnji koecijent jednak 1, a svi prethodni su 0. Isto kao sto su polinomi analiti cke funkcije, ali kona cnost razvoja uni stava potrebu za smanjivanjem koecijenata kad n . Dakle, na polinomnom slu caju ce se eventualna nestabilnost najja ce vidjeti. Iako to nije sasvim precizan argument, o cito je klju cno analizirati ba s polinomni slu caj. Zbog toga, a i radi jednostavnosti, u nastavku gledamo samo polinomni slu caj fN = pN . Generalno mo zemo odmah zaklju citi da opasnost nastupa kad niz vrijednosti p0 (x), p1 (x), . . . , pN (x) naglo pada po apsolutnoj vrijednosti. Tada o cekujemo kra cenja u osnovnoj rekurziji, sto rezultira i gubitkom to cnosti. Dva su pitanja na koja bi bilo zgodno na ci odgovor. Kako se tada pona sa silazni algoritam?

Mo ze li se nekim trikom, poput okretanja rekurzije, popraviti stabilnost? Umjesto op ceg odgovora, koji bi nas odveo predaleko, ilustrirajmo situaciju na jednom klasi cnom primjeru. Neka je pn (x) = enx . Ove funkcije generiraju tzv. eksponencijalne polinome
N

fN (x) =
n=0

an enx .

O cito je da mo zemo sastaviti razne rekurzije za pn . Dvo clana ima oblik pn+1 (x) ex pn (x) = 0, n N0 .

gdje je ch x = (ex + ex )/2.

Nije te sko napraviti i tro clanu homogenu rekurziju po ugledu na trigonometrijske funkcije. pn+1 (x) 2 ch x pn (x) + pn1 (x) = 0, n N,

O cito je da pn (x) monotono raste za x > 0 i monotono pada za x < 0. Testirajmo stabilnost ove rekurzije i pripadne generalizirane Hornerove sheme za ra cunanje pn (x) = enx u to ckama x = 1 i x = 1.

8.4.

Besselove funkcije i Millerov algoritam

Op cenito nije potrebno znati funkcije p0 i p1 da bi se mogla koristiti silazna varijanta za ra cunanje pN . Dovoljno je znati neku vezu medu funkcijama pn koja se

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 183

lako ra cuna, a takve su cesto poznate. Na primjer, to su funkcije izvodnice oblika

F (x) =
n=0

qn pn (x),

gdje se F (x) ra cuna nekom analiti ckom formulom bez upotrebe pn (x), tj. F (x) mo zemo na ci neovisno o funkcijama pn . Millerov algoritam (po J. C. P. Milleru, 1954. godine) primjenjuje se kada vrijednosti funkcija pn vrlo brzo padaju kad n raste (za sve x ili u nekom podru cju vrijednosti za argumente), a gre ska zaostaje. Pretpostavimo da funkcije pn zadovoljavaju neku homogenu rekurziju, na primjer tro clanu, koja je naj ce s ca u praksi pn+1 (x) + n (x)pn (x) + n (x)pn1 (x) = 0, n = 1, 2 , . . .

Poznavanje bilo kojeg pn ( cak ni p0 niti p1 ) nije potrebno. Treba znati samo koecijente n i n .

8.4.1.

Op ca forma Millerovog algoritma

Poka zimo kako funkcionira Millerov algoritam. Odaberimo startnu vrijednost indeksa M od koje cemo po ceti ovisno o vrijednosti N indeksa funkcije koju tra zimo. Ako tra zimo pN (x) (ili pN (x), . . . , p0 (x), ili samo neke od njih), M se obi cno odabere tako da je M > N i vrijedi pM (x) to cnost ra cunanja. pN (x) To obi cno garantira i da je
M

FM (x) :=
n=0

qn pn (x),

barem jednako to cna aproksimacija za F (x), sto cemo kasnije iskoristiti. Stavimo p M +1 = 0, p M = 1 i ra cunamo brojeve p n , za n = M 1, . . . , 0, unatrag po rekurziji za pn (x): p n = (n+1 (x) pn+1 + p n+2 ) , n+1 (x) n = M 1, . . . , 0.

Zbog homogenosti rekurzije, dobiveni niz vrijednosti p M , . . . , p 0

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 184

je vrlo pribli zno proporcionalan stvarnim vrijednostima pM (x), . . . , p0 (x), barem u podru cju od pN (x) do p0 (x), tj. vrijedi pn (x) p n c, za n N . Treba jo s na ci normalizacioni faktor c. Sada iskoristimo cinjenicu da znamo koecijente qn u razvoju funkcije izvodnice F po funkcijama pn

F (x) =
n=0

qn pn (x).

Umjesto nepoznatih vrijednosti pn (x) uvrstimo p n i numeri ckim zbrajanjem izra cu namo aproksimaciju FM
M

FM :=
n=0

qn p n .

Gornji indeks sumacije mo ze biti i bitno manji od M , ako znamo da pn (x) vrlo brzo padaju kad n raste. U prethodnoj sumi dovoljno je uzeti toliko clanova da se izra cunata vrijednost FM stabilizira na to cnost ra cunala ili tra zenu to cnost. Zatim direktno analiti cki izra cunamo F (x) po poznatoj formuli i stavimo c := F (x) , FM

sto je tra zeni normalizacioni faktor, uz pretpostavku da je FM (x) dovoljno dobra aproksimacija za F (x). Na kraju izra cunamo pn (x) = p n c cju vrijedi vrlo dobra za sve one n izmedu 0 i N koji nas zanimaju, jer u tom podru proporcionalnost pn (x) p n .

Vrlo cesto se startna vrijednost M odreduje iz nekih poznatih relacija za familiju funkcija pn (x) ili eksperimentalno, pove cavanjem n sve dok se ne postigne zeljena to cnost za pN (x). Naravno, ovim se algoritmom mo ze ra cunati i p0 (x).

8.4.2.

Izvrednjavanje Besselovih funkcija

Besselove funkcije prvi puta je uveo Bessel, 1824. godine, promatraju ci jedan problem iz tzv. dinami cke astronomije, vezan uz zgodan na cin zapisa polo zaja planeta koji se kre ce po elipsi oko Sunca. Da bi dobio formulu prikladnu za prakti cno ra cunanje, Bessel je tra zenu veli cinu prikazao kao red funkcija poznatih podataka. U tom redu se, kao koecijenti, javljaju funkcije oblika 1 Jn (x) =

cos(x sin n) d,

n N,

(8.4.1)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 185

koje zovemo Besselovim funkcijama prve vrste. O cito se ova denicija mo ze pro siriti na n Z i tada je Jn (x) = (1)n Jn (x). Na zalost, ni za jednu od ovih funkcija ne postoji neka jednostavna formula ili oblik za ra cunanje. Relaciju (8.4.1) mo zemo iskoristiti i za numeri cko ra cunanje vrijednosti Jn (x), za zadane n N0 i x R, tako da upotrijebimo neku od metoda numeri cke integracije. Medutim, postoje i mnogo br zi algoritmi za postizanje iste tra zene to cnosti izra cunate vrijednosti Jn (x). U klasi cnom pristupu preko funkcija izvodnica, Besselove funkcije mo zemo n denirati kao koecijente uz t u razvoju
t 1/t exp x = Jn (x) tn . 2 n=

(8.4.2)

Nije te sko dokazati da je ova denicija ekvivalentna integralnoj reprezentaciji (8.4.1). Iz (8.4.2) mogu se izvesti mnoge va zne relacije za Besselove funkcije. Na primjer, Besselove funkcije zadovoljavaju tro clanu rekurziju Jn+1 (x) 2n Jn (x) + Jn1 (x) = 0, x n N. (8.4.3)

Takoder, vrijedi J1 (x) = J0 (x). Dakle, kad bismo znali izra cunati J0 (x) i J1 (x) (ili J0 (x)), onda bismo iz (8.4.3) mogli izra cunati i Jn (x). Osim toga, generaliziranom Hornerovom shemom mogli bismo onda ra cunati i razne razvoje po Besselovim funkcijama. Na zalost, to je tako samo u teoriji. Rekurzija (8.4.3) je izrazito nestabilna unaprijed. Da bismo to pokazali, promotrimo pona sanje vrijednosti Besselovih funkcija Jn (x) u ovisnosti o n i x.

Iz (8.4.2) mo ze se pokazati da Besselove funkcije Jn zadovoljavaju diferencijalnu jednad zbu x2 y + xy + (x2 n2 )y = 0. Ovu jednad zbu mo zemo promatrati na cijeloj kompleksnoj ravnini i u slu caju kad n nije cijeli broj. Tad se, umjesto n, obi cno koristi oznaka za parametar jednad zbe. Jedno od rje senja ove jednad zbe su Besselove funkcije prve vrste J , koje imaju bitno svojstvo da su ograni cene u 0 kad je Re 0. Analiti cki im je oblik J (x) = 1 x 2

(x2 /4)k , k =0 k ! ( + k + 1)

(8.4.4)

gdje su i x, op cenito, kompleksni brojevi. U nastavku gledamo pona sanje ovih funkcija samo za nenegativne realne indekse 0 i argumente x 0. Ako je cijeli broj, onda prethodna relacija glasi Jn (x) = 1 x 2
n

(x2 /4)k . k =0 k ! (n + k )!

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 186

Oba reda o cito konvergiraju za x 0, a donji cak na cijelom skupu C. Na prvi pogled izgleda kao da smo time rije sili i problem ra cunanja vrijednosti J0 (x) i J1 (x). Zaista, ovaj red vrlo brzo konvergira za relativno male x, pa se mo ze koristiti za ra cunanje. Medutim, za malo ve ce x, kad je x n (ili ) i dalje, dobivamo sli cno pona sanje kao i kod aproksimacije trigonometrijskih funkcija Taylorovim redom, tj. dolazi do sve ve ceg kra cenja zbrajanjem uzastopnih clanova reda (8.4.4). Gra cki, prve tri Besselove funkcije izgledaju ovako
y J0 (x) 1 0.75 0.5 0.25 0 0.25 0.5 2 4 6 8 10 12 14 16 18 20 x J1 (x) J2 (x)

sljede ce tri ovako


y J3 (x) 1 0.75 0.5 0.25 0 0.25 0.5 2 4 6 8 10 12 14 16 18 20 x J4 (x) J5 (x)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 187

a, recimo, deseta Besselova funkcija ovako


y

1 0.75 0.5 0.25 0 0.25 0.5 2 4 6 8 10 12 14 16 eksponencijalno pona sanje

J10 (x) trigonometrijsko pona sanje

18

20

Uo cite da se podru cje eksponencijalnog pona sanja mijenja u trigonometrijsko podru cje pribli zno za x = , kao sto smo i o cekivali iz Taylorovog reda. Gledamo li Besselove funkcije ne kao funkcije od x, nego za ksni x, kao funkcije indeksa , onda Besselove funkcije pokazuju ovakvo pona sanje za J (k ), k = 1, 2, 3,
J J (1) 1 0.75 0.5 0.25 0 0.25 0.5 1 2 3 4 5 6 J (2) J (3)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 188

za J (k ), k = 4, 5, 6,
J J (4) 1 0.75 0.5 0.25 0 0.25 0.5 2 4 6 8 10 12 J (5) J (6)

odnosno, J (10) izgleda ovako:


J (10)

1 0.75 0.5 0.25 0 0.25 0.5 2 4 6 8 10 12 14 16 trigonometrijsko pona sanje

J (10) eksponencijalno pona sanje

18

20

Primijetite da i po postoji podru cje trigonometrijskog pona sanja koje za x trne u eksponencijalno. Vidimo da kad n raste, u rekurziji (8.4.3) dobivamo sve manje i manje brojeve, sto zna ci da mora do ci do kra cenja. To pokazuje da je rekurzija nestabilna u rastu cem smjeru po n, cim udemo u eksponencijalno podru cje.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 189

Za ilustraciju nestabilnosti mo zemo uzeti x = 1 i ra cunati vrijednosti Jn (x) koriste ci rekurziju (8.4.3) uzlazno po n, u extended preciznosti. Dobiveni rezultati na 18 decimala (apsolutno) dani su u sljede coj tablici. n 0 1 2 3 4 5 6 7 8 9 izra cunati Jn (1) to cni Jn (1)

0.765197686557966552 0.765197686557966552 0.440050585744933516 0.440050585744933516 0.114903484931900481 0.114903484931900481 0.019563353982668406 0.019563353982668406 0.002476638964109955 0.002476638964109955 0.000249757730211237 0.000249757730211234 0.000020938338002418 0.000020938338002389 0.000001502325817779 0.000001502325817437 0.000000094223446486 0.000000094223441726 0.000000005249325991 0.000000005249250180 .

10 0.000000000264421352 0.000000000263061512 11 0.000000000039101058 0.000000000011980067 12 0.000000000595801917 0.000000000000499972 Kra cenje, a time i gubitak relativne to cnosti po cinje odmah za n = 2, ulaskom u eksponencijalno podru cje. Medutim, to se ne vidi u ovoj tablici, jer su rezultati prikazani apsolutno, a ne relativno. No, za n = 11 nemamo vi se niti jednu to cnu znamenku, a za n = 12 gubimo i monotoni pad po n. Vidimo da se dogada ne sto sli cno kao kod ra cunanja enx , sto upu cuje na okretanje rekurzije i primjenu Millerovog algoritma. Kori stenjem Millerovog algoritma dobivamo izuzetno dobre rezultate (drugi stupac tablice, koji je to can), a funkcija izvodnica koja se pritom koristi za normalizaciju je vrlo jednostavna J0 (x) + 2(J2 (x) + J4 (x) + + J2k (x) + ) = 1. Ova relacija izlazi direktno iz (8.4.2) za t = 1, kad iskoristimo parnost i neparnost Besselovih funkcija po n, tj. Jn = (1)n Jn .

Za prakti cnu primjenu Millerovog algoritma po zeljno je znati precizno pona sanje rekurzije (8.4.3). Uo cimo da je x ksan, a zanima nas pona sanje Jn (x) za velike n. Mo ze se pokazati da u eksponencijalnom podru cju vrijedi tzv. asimptotska relacija ex 1 J (x) , (8.4.5) 2 2

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 190

za ksni x i velike , tj. za . To pokazuje da se Jn (x), gledano po n, za velike n pona sa kao cn , nn+0.5 gdje je cn = (ex/2)n / 2, a to vrlo brzo trne kad n raste. Uz malo pa znje, odavde se mo ze izra cunati po cetni indeks M za Millerov algoritam, tako da osiguramo potrebnu to cnost. Na sli can na cin mo ze se opisati i pona sanje Besselovih funkcija J kada je ksan, a gledamo male ili velike argumente x. Za ksni , kad x 0 iz prvog clana Taylorovog reda dobivamo i asimptotsku relaciju J (x) 1 x 2

1 , ( + 1)

koja je, o cito, dobra aproksimacija za x u eksponencijalnom podru cju blizu nule. S druge strane, za x n, Jn (x) se pona sa poput kosinusa, tj. oscilira. Prava relacija u tom trigonometrijskom podru cju je J (x) 2 cos x , x 4 2 (8.4.6)

Napomenimo jo s da su sve potrebne vrijednosti J (x) za crtanje prethodnih 6 slika izra cunate sumacijom Taylorovog reda (8.4.4) unaprijed, sve dok zadnji dodani clan ne padne ispod zadane to cnosti. U prikazanom rasponu po i po x, kra cenje je minimalno (23 dekadske zna cajne znamenke). Jedini zanimljivi dio tog algoritma je ra cunanje vrijednosti funkcije, o cemu ce uskoro biti vi se rije ci. Naravno, za crtanje grafova nam i ne treba neka velika to cnost funkcijskih vrijednosti. U principu, savr seno dovoljno je imati 3 zna cajne znamenke u izra cunatoj 3 vrijednosti funkcije, tj. relativnu to cnost reda veli cine 10 . Za vrijednosti blizu nule, ne trebamo ni toliko. Dovoljna je relativna to cnost istog reda veli cine, ali obzirom na cijelu skalu, tj. raspon vrijednosti funkcije na cijelom grafu. Gre sku od jedne tisu cinke skale nitko ne ce ni primijetiti. Naime, ako je cijeli graf visok 10 cm, onda je ta gre ska na slici manja od desetinke milimetra! Drugo je pitanje u koliko to caka treba izra cunati vrijednost funkcije da bi se dobro nacrtao graf. Odgovor na to pitanje slijedi iz ocjena gre ske raznih vrsta aproksimacija, a posebno interpolacije, sto cemo napraviti u poglavlju o aproksimacijama. Zasad recimo samo to da je svaki od ovih grafova nacrtan kori stenjem 101 to cke, uz jednak razmak po x osi, a i to je bitno previ se. Tridesetak to caka je sasvim dovoljno za vizuelno to can graf na ovim slikama.

za ksni , kad x . To cno zna cenje relacija (8.4.5) i (8.4.6) bit ce obja snjeno u sljede cem odjeljku o asimptotskim razvojima. Uobi cajeno se koristi oznaka , a ne , za takve asimpotske relacije.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 191

Besselove funkcije imaju vrlo velike primjene u zici, u mnogim modelima, po cev od difrakcije svjetlosti do energetskih nivoa u kvantnoj mehanici. Kori stenjem Millerovog algoritma, zajedno s Newtonovom metodom za nala zenje nulto caka funkcija, dobro se mogu izra cunati i nulto cke Besselovih funkcija, koje se, takoder, vrlo cesto koriste. Za razliku od crtanja grafova Besselovih funkcija, za numeri cko ra cunanje njihovih nulto caka trebamo maksimalnu mogu cu to cnost funkcijskih vrijednosti (barem u apsolutnom smislu), a to se posti ze upravo Millerovim algoritmom.

8.5.

Asimptotski razvoj

Sve aproksimacije koje smo do sada promatrali dobivene su rezanjem konvergentnih razvoja po nekom sustavu funkcija, tj. rezanjem konvergentnih redova na kona cnu sumu. U relaciji (8.2.3) koristili smo razvoj funkcije f oblika

f (x) =
n=0

an pn (x),

kojeg smo aproksimirali kona cnom parcijalnom sumom (8.2.4)


N

fN (x) =
n=0

an pn (x),

podrazumijevaju ci da je rije c o konvergentnom redu u to cki x, tj. da ostatak reda te zi prema nuli po N , za ksni x
N

lim (f (x) fN (x)) = lim

an pn (x) = 0.
n=N +1

Strogo formalno, ako se sjetimo denicije sume reda, i sam zapis za f (x) u obliku reda je sinonim za konvergenciju u ovom smislu. Eventualna uniformna konvergencija za sve x na nekoj domeni je dobrodo sla, ali nije bitna za ideju ove aproksimacije. U ovom odjeljku cemo pokazati da zamjenom uloge N i x u konvergenciji razvoja dobivamo novi pojam asimptotskog razvoja, kojeg vrlo ekasno mo zemo iskoristiti i za prakti cno ra cunanje. Ovaj pristup se naj ce s ce koristi za ra cunanje vrijednosti integrala, pa ga je zgodno uvesti ba s na takvim primjerima. Neka je f funkcija denirana integralom

f (x) =
0

ext cos t dt

(8.5.1)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 192

za realne nenegativne vrijednosti parametra x. Poku sajmo ovaj intergal izra cunati tako da cos t razvijemo u red potencija po t, a zatim dobiveni red integriramo clan po clan. Dobivamo redom

f (x) =
0

ext 1 e
xt

t2 t4 + dt 2! 4!

=
0

dt

e
0

xt

t2 dt + 2!

ext
0

t4 dt . 4!

Za integraciju clan po clan, treba izra cunati integrale oblika

I2n (x) =
0

ext

t2n dt, (2n)!

za n N0 . Za n = 0 odmah dobivamo

I0 (x) =
0

1 ext dt = ext x

=
t=0

1 , x

jer ostaje samo vrijednost na donjoj granici, a na gornjoj granici znamo da ext 0 kad t . Za 2n > 0 parcijalnom integracijom izlazi

I2n (x) =
0

t2n 1 d ext (2n)! x

1 t2n = ext x (2n)! 1 = I2n1 (x). x Odavde indukcijom slijedi

1 + x t=0

ext
0

t2n1 dt (2n 1)!

. x2n+1 Kad ove integrale uvrstimo natrag u red za f , dobivamo I2n (x) = f (x) = I0 (x) I2 (x) + I4 (x) = x . +1 1 1 1 3 + 5 . x x x

Na kraju, ako je x > 1, onda red na desnoj strani konvergira i vrijedi f (x) = x2 (8.5.2)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 193

Ovaj rezultat mo zemo dobiti i direktno iz (8.5.1) dvostrukom parcijalnom integracijom.


f (x) =
0

xt

cos t dt =
0

ext d(sin t)

=e

xt

1 sin t + x t=0

ext sin t dt.


0

Prvi clan je nula na obje granice, pa ostaje 1 f (x) = x

ext d( cos t)

1 1 = ext cos t 2 x x t=0

ext cos t dt
0

1 1 = 2 f (x). x x Mno zenjem s x2 , za x > 0, dobivamo x2 f (x) = x f (x), pa zaklju cujemo da vrijedi (8.5.2), samo uz bla zu pretpostavku x > 0. Poku sajmo primijeniti istu ideju za funkciju g deniranu integralom

g (x) =
0

ext dt, 1+t

(8.5.3)

opet uz pretpostavku da je x > 0. O cekujemo jo s bolje rezultate, jer podintegralna funkcija jo s malo br ze trne kad t . Ovdje vrijedi 1/(1 + t) 0 kad t , dok je cos t u funkciji f samo ograni cen izmedu 1 i 1. Supstitucijom razvoja 1 = 1 t + t2 1+t

dobivamo redom

g (x) =
0

ext (1 t + t2 ) dt

=
0

xt

dt

e
0

xt

t dt +
0

ext t2 dt .

Za integraciju clan po clan, treba izra cunati integrale oblika

In (x) =
0

ext tn dt,

n N0 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 194

Usporedbom s integralima In (x) za funkciju f iz prethodnog primjera odmah vidimo da je In (x) = n! In (x), n N0 , pa je n! , n N0 . xn+1 Kad ove integrale uvrstimo natrag u red za g , dobivamo In (x) = g (x) = I0 (x) I1 (x) + I2 (x) = 1 1! 2! 3! 2 + 3 4 + . x x x x (8.5.4)

Medutim, ovaj red divergira za sve kona cne vrijednosti x i relacija (8.5.4) je besmislena. Dakle, funkciju g iz (8.5.3) ne mo zemo izra cunati na ovaj na cin. Za sto je ovaj postupak bio uspje san u prvom primjeru, a ostao bez rezultata u drugom? Odgovor je jednostavan. Razvoj funkcije cos t konvergira za sve vrijednosti t, tj. na cijeloj domeni integracije. cak i ja ce, on konvergira uniformno na svakom kona cnom intervalu za t. Zbog toga smijemo iskoristiti integraciju clan po clan na svakom kona cnom intervalu, a zatim pustiti gornju granicu integracija na limes t .

U drugom slu caju, razvoj funkcije 1/(1 + t) konvergira samo za t < 1, a divergira za t 1. Rezultat iz (8.5.4) treba shvatiti kao posljedicu integracije reda clan po clan, ali na intervalu na kojem taj red ne konvergira uniformno.

Sve dosad re ceno su standardne cinjenice o redovima i integraciji iz matese mati cke analize. Medutim, ako cijelu stvar gledamo malo manje teorijski, a vi prakti cno, onda nam nitko ne brani da poku smo sumirati prvih nekoliko clanova reda na desnoj strani u (8.5.4), za neku ksnu vrijednost x. Idemo vidjeti sto ce se dogoditi, iako je to u potpunoj suprotnosti s poznatom teorijom! Ozna cimo s gn (x) parcijalne sume prvih n clanova reda iz (8.5.4) gn (x) = 1 1! 2! 3! (n 1)! 2 + 3 4 + + (1)n1 . x x x x xn (8.5.5)

Uzmimo neki malo ve ci x, recimo x = 10, tako da nazivnici relativno brzo padaju i izra cunajmo prvih nekoliko vrijednosti gn (10). Za usporedbu, trebamo jo s i to cnu vrijednost g (10). Numeri ckom integracijom mo ze se izra cunati da je g (10) = 0.0915633339397880819 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 195

Sljede ca tablica pokazuje izra cunate vrijednosti gn (10) i pripadne pogre ske. n 0 1 2 3 4 5 6 7 8 9 izra cunati gn (10) 0.090000000000000000 0.091400000000000000 0.091520000000000000 0.091541600000000000 0.091545632000000000 gre ska g (10) gn (10)

0.100000000000000000 0.008436666060211918 0.092000000000000000 0.000436666060211918 0.091640000000000000 0.000076666060211918 0.091592000000000000 0.000028666060211918 0.091581920000000000 0.000018586060211918

0.001563333939788082 0.000163333939788082 0.000043333939788082 0.000021733939788082 0.000017701939788082 0.000021330739788082

10 0.091581920000000000 0.000018586060211918 11 0.091542003200000000 12 0.091589903360000000 0.000026569420211918

Dobivene vrijednosti su sasvim dobre aproksimacije! Vidimo da je g9 (10) najbolja aproksimacija, koja daje skoro 5 to cnih decimala i skoro 4 to cne vode ce znamenke. Naravno, za n 10 pogre ske sve vi se rastu i rezultati postaju beskorisni. Sve u svemu, rezultat uop ce nije lo s, kad uzmemo da je nastao sumiranjem iz divergentnog reda. Idemo jo s na ci i obja snjenje za ovaj prili cno neo cekivani uspjeh. Jasno je da treba promatrati gre sku n-te parcijalne sume iz (8.5.5) u ksnoj to cki x. Neka je en (x) := g (x) gn (x).

Ako jo s i razvoj funkcije 1/(1 + t) napi semo u istom obliku kao zbroj prvih n clanova plus ostatak, (1)n tn 1 = 1 t + t2 + (1)n1 tn1 + , 1+t 1+t i to uvrstimo u deniciju (8.5.3) za g , dobivamo da je gre ska en (x) upravo odgovaraju ci integral ostatka u prethodnoj relaciji, en (x) = (1)
n xt n 0

e t dt, 1+t

jer sad smijemo integrirati kona cnu sumu clan po clan. Ovu gre sku nije te sko ocijeniti. O cito je 1 1, t 0, 1+t

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 196

pa je |en (x)| =

xt n 0

e t dt 1+t

ext tn dt =
0

n! . xn+1

(8.5.6)

To pokazuje da je pogre ska n-te parcijalne sume manja od apsolutne vrijednosti prvog odba cenog clana. Osim toga, zato sto clanovi alterniraju po predznaku, pogre ska ima isti predznak kao i prvi odba ceni clan. Dakle, clanove reda mo zemo iskoristiti za ocjenu pogre ske i zbrajanje clanova treba zaustaviti to cno ispred apsolutno najmanjeg clana. Iz ocjene (8.5.6) za pogre sku n-te parcijalne sume odmah slijede dva zaklju cka. Ako gledamo konvergenciju u ksnoj to cki x > 0, onda je |en (x)| za n , tj. nema govora o konvergenciji parcijalnih suma gn (x) prema g (x), sto odgovara ranijem zaklju cku da pripadni red divergira u svakoj to cki x > 0. S druge strane, ako uzmemo da je n ksan, onda vrijedi |en (x)| 0 za x , (8.5.7)

sto odgovara konvergenciji, ali sa zamijenjenim ulogama n i x. Takvu vrstu konvergencije zovemo asimptotska konvergencija, u ovom slu caju, u okolini to cke +.

Parcijalne sume gn iz (8.5.5) generiraju red na desnoj strani (8.5.4), za kojeg ka zemo da je asimptotski razvoj funkcije g u okolini to cke +, a relaciju (8.5.4) pi semo u obliku g (x) 1 1! 2! 3! (n 1)! 2 + 3 4 + + (1)n1 + x x x x xn (x + ), (8.5.8)

gdje ozna cava asimptotsku konvergenciju reda na desnoj strani ove relacije, u smislu (8.5.7). Prije precizne denicije ovog pojma, objasnimo jo s malo vrijednost prethodnog zaklju cka. Relacija (8.5.7) vrijedi za svaki n N, sto zna ci da svaku od funkcija gn mo zemo koristiti za aproksimaciju funkcije g , samo to moramo napraviti za dovoljno velike vrijednosti x, tj. na odgovaraju coj okolini to cke +. Takvom aproksimacijom ne mo zemo posti ci proizvoljno veliku to cnost, odnosno proizvoljno malu gre sku, kao kod obi cne konvergencije. Ovisno o x, postoji minimalna gre ska koju mo zemo dobiti (gledano po n) i bolje ne ide. Medutim, i to se uspje sno mo ze iskoristiti za prakti cno ra cunanje. Osim toga, ovaj rezultat ima i teorijsku vrijednost. Uzmimo da je n = 1 u (8.5.7). To zna ci da se, u prvoj aproksimaciji, funkcija g pona sa kao g1 u okolini

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 197

to cke +, tj. da g (x) pada kao 1/x, kad x +. Iz (8.5.6) dobivamo i ocjenu gre ske za takvu aproksimaciju. Preciznije, imamo g (x) g1 (x) = g (x) 1/x = e1 (x) i iz (8.5.6) slijedi |e1 (x)|

ext t dt =
0

1 , x2

pa odmah vidimo da vrijede sljede ce dvije relacije asimptotskog pona sanja. Prva relacija je g (x) g1 (x) = O (1/x2) (x +) i ona slu zi kao osnova za deniciju asimptotskog razvoja. Druga relacija je g (x) g1 (x) = o(g1 (x)) (x +), ili, ekvivalentno (jer g1 (x) = 0 za x > 0) g (x) = 1. x+ g1 (x) lim Posljednju relaciju obi cno pi semo u obliku g (x) g1 (x) (x +) (8.5.9)

Napomenimo da ista oznaka ima razli cita zna cenja u relacijama (8.5.8) i (8.5.9). U (8.5.9) je relacija asimptotskog pona sanja i ta relacija je simetri cna, cak relacija ekvivalencije. Za razliku od toga, u (8.5.8) ozna cava asimptotski razvoj i nije simetri cna. Lijevo je funkcija, a desno je red potencija (red funkcija). Medutim, zbog toga sto iz (8.5.8) slijede (8.5.9) i sli cni zaklju cci za aproksimacije gn s vi se clanova reda, ova oznaka se tradicionalno koristi u oba zna cenja. Naime, relaciju (8.5.9) mo zemo interpretirati i kao skra ceni zapis nekog asimptotskog razvoja, s tim da je naveden samo prvi clan razvoja. Ali oprezno, tada zapis g (x) g1 (x) (po deniciji) zna ci samo g (x) lim = 1, x+ g1 (x) i nema govora o nekoj asimptotskoj konvergenciji oblika (8.5.7), jer ne postoje ostali clanovi razvoja (nema parametra n). Upravo tako treba interpretirati i asimptotske relacije za Besselove funkcije iz prethodnog odjeljka. Precizna denicija asimptotskog razvoja u okolini neke to cke bazirana je na deniciji asimptotskog niza u okolini te to cke.

Sve to slijedi samo iz prvog clana asimptotskog razvoja. Ako znamo vi se clanova, dobivamo sve preciznije informacije o pona sanju fukcije g u okolini +.

i citamo g (x) je asimptotski jednako g1 (x) kad x +, sto zna ci da relativna zi prema nuli kad x +. gre ska izmedu g i g1 te

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 198

Denicija 8.5.1. (Asimptotski niz) Neka je D R neka domena i c Cl D neka to cka iz zatvara ca skupa D , s tim da c mo ze biti i + ili . Nadalje, neka je n : D R, n N0 , niz funkcija za kojeg vrijedi n (x) = o(n1 (x)) (x c u D ), za svaki n N. Tada ka zemo da je (n ) asimptotski niz kad x c u skupu D . Podsjetimo, to zna ci da svaka funkcija n raste bitno sporije od prethodne funkcije n1 u okolini to cke c, u smislu da vrijedi
x c xD

lim

n (x) = 0, n1 (x)

sto uklju cuje i pretpostavku da je n1 (x) = 0 na nekoj okolini to cke c gledano u skupu D , osim eventualno u samoj to cki c. Ista denicija vrijedi i za kompleksne domene D C, a to cka c mo ze biti i . Denicija 8.5.2. (Asimptotski razvoj) Neka je (n ), n N0 , asimptotski niz kad x c u skupu D . Formalni red funkcija

an n
n=0

je asimptotski razvoj funkcije f kad x c u skupu D , u oznaci

f (x)

an n (x)
n=0

(x c u D ) ,

(8.5.10)

ako za svaki N N vrijedi relacija asimptotskog pona sanja


N 1

f (x) =
n=0

an n (x) + O (N (x))

(x c u D ),

tj. apsolutna gre ska izmedu f i (N 1)-e parcijalne sume reda raste najvi se jednako brzo kao i N -ti clan asimptotskog niza, u okolini to cke c. Navedeni red funkcija treba interpretirati samo kao oznaku, tj. u cisto formalnom smislu, jer on mo ze biti divergentan u svakoj to cki domene. Uo cimo da iz prethodne dvije denicije odmah slijedi i
N 1

f (x) =
n=0

an n (x) + o(N 1 (x)) (x c u D ),

za svaki N N. To zna ci da apsolutna gre ska izmedu f i bilo koje parcijalne sume reda raste bitno sporije od zadnjeg clana u parcijalnoj sumi, u okolini to cke c.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 199

Tipi cni primjeri asimptotskih nizova su obi cne i logaritamske potencije n (x) = (x c)n ili n (x) = (log(x c))n ,

za n N0 , u okolini to cke c R (ili C). Pripadni asimptotski razvoji su obi cni redovi potencija

f (x) ili logaritamskih potencija

n=0

an (x c)n

(x c u D ),

f (x)

n=0

an (log(x c))n

(x c u D ).

U praksi se naj ce s ce se koriste asimptotski nizovi u okolini to cke oblika n (x) = xn ili n (x) = (log x)n ,

za n N0 , koji nastaju supstitucijom x 1/x iz nizova u okolini to cke c = 0. Za obi cne (inverzne) potencije, asimptotski razvoj (8.5.10) ima ve c poznati oblik f (x) sto, po deniciji, zna ci da vrijedi
N 1

an n n=0 x

(x u D ),

f (x) =
n=0

an + O (xN ) (x u D ). xn

Tada nema smisla govoriti o rastu, ve c o padu funkcija u okolini to cke . Apsolutna gre ska izmedu f i (N 1)-e parcijalne sume reda pada barem jednako brzo kao i xN , odnosno bitno br ze od zadnjeg clana u sumi, koji je proporcionalan s x(N 1) . Povijesno gledano, H. Poincar e je 1886. godine denirao asimptotski razvoj ba su ovom obliku. Napomenimo jo s da asimptotsko pona sanje mo ze bitno ovisiti o domeni D , ne samo zbog podru cja denicije funkcija, ve c zbog mogu ce restrikcije to caka po kojima se gledaju limesi kad x te zi prema c. Ako svi navedeni limesi kad x c vrijede i kad umjesto D uzmemo osnovni skup R ili C, tj. bezuvjetno ( sto ne sto ka ze i o domeni D ), onda se koristi skra cena oznaka (x c), bez navodenja domene D . Ako je jo s i c = , onda se, tradicionalno, oznaka (x ) mo ze i ispustiti, tj. podrazumijeva se razvoj u okolini to cke .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 200

Mo ze se dogoditi da funkcija f nema asimptotski razvoj na zadanoj domeni D u smislu prethodne denicije. Ako je g poznata ili zadana funkcija takva da f /g ima asimptotski razvoj, onda se umjesto relacije (8.5.10) za f /g , cesto koristi i oznaka

f (x) g (x)

n=0

an n (x) (x c u D ).

Ako je a0 = 0, onda prvi clan ovog razvoja daje i asimptotsko pona sanje funkcije f , tj. vrijedi f (x) a0 g (x), kad x c u D . U protivnom, ako je prvih k koecijenata razvoja jednako nuli, tj. a0 = . . . = ak1 = 0 i ak = 0, onda vrijedi sli cna relacija (koja?). Analogno, ako f g ima asimptotski razvoj, gdje je g poznata funkcija, obi cno pi semo

f (x) g (x) +

n=0

an n (x) (x c u D ).

8.6.

Veri zni razlomci i racionalne aproksimacije

Na po cetku ovog poglavlja zaklju cili smo da efektivno mo zemo ra cunati samo racionalne aproksimacije funkcija. Ako dobro pogledate sve sto smo do sada napravili, onda mo zete zaklju citi da se sve dosada snje aproksimacije svode na polinome ili sume polinomnog oblika, u kojima su potencije zamijenjene nekim drugim funkcijama. U tim aproksimacijama, dijeljenje nismo bitno iskoristili u obliku aproksimacije, ve c samo za ra cunanje funkcija po kojima se razvija. Preciznije, sve dosada snje aproksimacije imaju oblik linearne kombinacije nekih funkcija baze, pa tim aproksimacijama prirodno odgovara teorija linearnih ili vektorskih prostora, a tek za analizu konvergencije i ocjenu gre ske trebamo ne sto bogatiju strukturu. Ako se sjetimo nekih rezultata iz analize, poput Weierstraovog teorema o uniformnoj aproksimaciji funkcije polinomima na kompaktu, moglo bi nam se u ciniti da uop ce nema potrebe za drugim vrstama aproksimacija. S druge strane, prirodno je o cekivati da dodavanjem operacije dijeljenja u oblik aproksimacione funkcije mo zemo posti ci znatno bolje aproksimacije za razne klase funkcija, koriste ci pribli zno isti broj aritmeti ckih operacija. Pravu usporedbu polinomnih i racionalnih aproksimacija ostavljamo za poglavlje o aproksimacijama. Medutim, za prakti cnu primjenu racionalnih aproksimacija trebamo dobre algoritme za njihovo izvrednjavanje. Pretpostavimo da je zadana racionalna funkcija oblika R(x) = Pn (x) , Qm (x)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 201

gdje su Pn i Qm polinomi stupnjeva n i m, respektivno,


n m

Pn (x) =
k =0

ak xk ,

Qm (x) =
k =0

bk xk .

O cito je da izvrednjavanje prethodne funkcije mo zemo izvr siti kori stenjem dvije Hornerove sheme (za polinom u brojniku i nazivniku) i jednim dijeljenjem na kraju. Broj potrebnih operacija je n + m mno zenja, n + m zbrajanja i jedno dijeljenje. Ipak, takvo izvrednjavanje racionalne funkcije nije idealno, jer se ono mo ze izvr siti s manje operacija. Postoji jo s jedan problem kod takvog pristupa. Pretpostavite da je vrijednost funkcije R(x0 ) neki broj razumnog reda veli cine. Na zalost, mo ze se dogoditi, i to nije tako rijetko, da je taj broj dobiven dijeljenjem dva vrlo velika broja koja nisu prikaziva u aritmetici ra cunala. Na neki na cin, tada bi trebalo vr siti neku normalizaciju u Hornerovoj shemi, cim nam kvocijent prijede neku zadanu veli cinu, a tada algoritam postaje stra sno kompliciran. Na primjer, ako aproksimiramo vrijednost funkcije th x (ili bilo koju drugu funkciju f za koju vrijedi da f (x) ne te zi u kad x ) u to cki x0 , x0 veliko, racionalna aproksimacija bit ce omjer dva polinoma. Ako zelimo racionalnu aproksimaciju koja ima stupanj polinoma bar jedan u brojniku i nazivniku, onda ce polinomi u brojniku i nazivniku za veliki x0 te ziti u , a sama vrijednost funkcije bit ce broj nekog razumnog reda veli cine.

U teoriji nepolinomnih aproksimacija mogu ce je pokazati da su, uz neke uvjete, najbolje racionalne aproksimacije one kojima je stupanj polinoma u brojniku jednak onom u nazivniku ili se eventualno razlikuje za jedan. U tom slu caju racionalnu aproksimaciju mo zemo napisati kao veri zni razlomak, pa ce i brzina ra cunanja i problem preljeva (overow) biti rije seni na cinom izvrednjavanja takvog veri znog razlomka. No prije no sto upoznamo tzv. funkcionalne veri zne razlomke, upoznajmo se s brojevnim veri znim razlomcima.

8.6.1.

Brojevni veri zni razlomci


R = b0 + b1 + b2 + b3 + a1 a2 a3 a4 b4 +

Izraz oblika

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 202

zovemo (brojevni) veri zni razlomak. Ovakav zapis je obi cno prevelik za matemati cke knjige, pa su smi sljeni alternativni zapisi. U razli citoj literaturi nailazimo na tri oblika zapisa veri znih razlomaka R = b0 ; a1 a2 a3 , , ,... , b1 b2 b3 R = b0 + a1 | a2 | a3 | + + + , | b1 | b2 | b3

i mo zda najzgodniji zapis R = b0 + a1 a2 a3 . b1 + b2 + b3 + (8.6.1)

Ako u beskona cnom veri znom razlomku uzmemo samo kona cno mnogo clanoan a1 a2 a3 , (8.6.2) b1 + b2 + b3 + bn onda se takav izraz zove n-ta konvergencija veri znog razlomka R. Ako postoji vrijednost veri znog razlomka (8.6.1), onda se ona denira kao Rn = b0 + R = lim Rn ,
n

va,

gdje je Rn n-ta konvergencija denirana izrazom (8.6.2). Drugim rije cima, va zno je znati kako ekasno izra cunati Rn .

8.6.2.

Uzlazni algoritam za izvrednjavanje brojevnih veri znih razlomaka

Promatrajmo n-tu konvergenciju veri znog razlomka, koju mo zemo prikazati kao racionalni broj, kvocijent Pn i Qn Rn = Pn a1 a2 a3 an = b0 + + + + . Qn b1 b2 b3 bn

Za nultu konvergenciju je R0 = P0 = b0 , Q0

pa mo zemo izabrati da je P0 = b0 , Q0 = 1 (mogli smo i druga cije birati, jedini je uvjet da je P0 /Q0 = b0 ). Za sljede cu konvergenciju vrijedi R1 = a1 b0 b1 + a1 b1 P0 + a1 P1 = b0 + = = . Q1 b1 b1 b1 Q0

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 203

Ako jo s deniramo P1 = 1, Q1 = 0, onda prethodna relacija glasi R1 = P1 b1 P0 + a1 P1 = , Q1 b1 Q0 + a1 Q1

tj. ponovno mo zemo zatra ziti da vrijedi da je brojnik jednak brojniku, a nazivnik nazivniku, tj. da je P1 = b1 P0 + a1 P1 , Q1 = b1 Q0 + a1 Q1 . Te dvije relacije su baza rekurzije. Primijetite, ako za Pn i Qn vrijede relacije Pn = bn Pn1 + an Pn2 , Qn = bn Qn1 + an Qn2 , onda za Rn+1 vrijedi Rn+1 = gdje je
Pn +1 , Qn+1

Pn +1 = bn +

Qn+1

an+1 Pn1 + an Pn2 bn+1 an+1 an+1 Pn1 = Pn + Pn1 , = (bn Pn1 + an Pn2 ) + bn+1 bn+1 an+1 Qn1 + an Qn2 = bn + bn+1 an+1 an+1 = (bn Qn1 + an Qn2 ) + Qn1 = Qn + Qn1 . bn+1 bn+1
Pn+1 = bn+1 Pn +1 , Qn+1 = bn+1 Qn+1 ,

Deniramo li

onda Rn+1 ostaje nepromijenjen (brojnik i nazivnik su skalirani), a prethodna rekurzija postaje Pn+1 = bn+1 Pn + an+1 Pn1 , Qn+1 = bn+1 Qn + an+1 Qn1 , cime smo dokazali korak indukcije. Drugim rije cima, deniramo li P1 = 1, Q1 = 0, P0 = b0 , Q0 = 1, (8.6.3)

onda, indukcijom dobivamo tzv. uzlazni algoritam izvrednjavanja veri znog razlomka Pk = bk Pk1 + ak Pk2 , Qk = bk Qk1 + ak Qk2 , k = 1, 2, . . . , n. (8.6.4)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 204

Primijetite da se u ovakvom zapisu algoritma lako mogu dodavati novi ak i bk , tzv. karike u veri znom razlomku. Iz (8.6.4) lako se cita da su Pk i Qk dva rje senja diferencijske jednad zbe yk bk yk1 ak yk2 = 0. Uo cite da bi nam u algoritmu (8.6.4) odgovaralo da su ili ak ili bk jednaki 1, tako da ne moramo mno ziti tim koecijentima. To se mo ze posti ci kori stenjem tzv. ekvivalentne transformacije. Neka su wk , za k 1, proizvoljni brojevi razli citi od 0 i w1 = w0 = 1. Tvrdimo da izvrednjavanjem veri znog razlomka R = b0 + w0 w1 a1 w1 w2 a2 w2 w3 a3 . w1 b1 + w2 b2 + w3 b3 + (8.6.5)

dobijemo isti R kao u (8.6.1). Ozna cimo sa Sn i Tn brojnik i nazivnik n-te konvergencije prethodnog veri znog razlomka
Rn =

Sn w0 w1 a1 w1 w2 a2 w2 w3 a3 wn1 wn an = b0 + . + + + Tn w1 b1 w2 b2 w3 b3 wn bn

Pogledajmo u kojem su odnosu Sk i Tk obzirom na Pk i Qk . Prvo napi simo rekurzije za Sk i Tk , jednostavno supstituiraju ci nove, pro sirene ak i bk Sk = wk bk Sk1 + wk1wk ak Sk2 , Tk = wk bk Tk1 + wk1 wk ak Tk2 , uz S 1 = 1 , T1 = 0, S0 = b0 , T0 = 1. Tvrdimo da postoji veza izmedu Pk i Sk , te Qk i Tk . Vrijedi
k k

k = 1, 2, . . . , n,

Sk = P k

wi ,
i=1

Tk = Qk

wi ,
i=1

k = 1, . . . , n.

Dokaz se provodi indukcijom po k . Za bazu indukcije uzmimo k = 1, 2. Iz rekurzija dobivamo: P1 = b1 P0 + a1 P1 , P2 = b2 P1 + a2 P0 , S1 = w1 b1 S0 + w0 w1 a1 S1 = w1 b1 P0 + w1 a1 P1 = w1 (b1 P0 + a1 P1 ) = w1 P1 , S2 = w2 b2 S1 + w1 w2 a2 S0 = w2 b2 w1 P1 + w1 w2 a2 P0 = w1 w2 (b2 P1 + a2 P0 ) = w1 w2 P2 .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 205

Za korak indukcije, pretpostavimo da vrijedi


k k 1

Sk = P k za neke k , k 1. Tada vrijedi

wi ,
i=1

Sk 1 = P k 1

wi
i=1

Sk+1 = wk+1bk+1 Sk + wk wk+1ak+1 Sk1


k k 1

= wk+1bk+1 Pk

i=1

wi + wk wk+1 ak+1 Pk1


k +1

wi wi

i=1 k +1 i=1

= (bk+1 Pk + ak+1 Pk1)

i=1

wi = Pk+1

sto je i trebalo pokazati. Na sli can se na cin dokazuje i relacija za Tk i Qk . Dakle, vrijedi
n+1 Rn

Sn = = Tn

Pn Qn

wi
i=1 n+1

= wi

Pn = Rn . Qn

i=1

Sada mo zemo pojednostavniti veri zni razlomak R, tj. svesti ga na alternativnu formu, tako da u rekurziji (8.6.4) ili ak ili bk budu jednaki 1. Pretpostavimo da su ak = 0 za sve k 1. Budu ci da je izbor wk , k 1, proizvoljan (do na to da ne smiju biti 0), onda wk izaberemo tako da vrijedi w1 a1 = 1, Odatle odmah slijedi da je w1 = odnosno op cenito w2k = a1 a3 a2k1 , a2 a4 a2k w2k+1 = a2 a4 a2k , a1 a3 a2k+1 1 , a1 w2 = 1 a1 = , w1 a2 a2 w3 = 1 a2 = , w2 a3 a1 a3 ..., w1 w2 a2 = 1, ..., wn1 wn an = 1.

sto se dokazuje indukcijom. Time smo dobili tzv. II tip veri znog razlomka kojem su brojnici jednaki 1, tj. dobili smo veri zni razlomak oblika R = b0 + 1 1 1 b1 + b2 + b3 + .

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 206

Pripadna uzlazna rekurzija za izvrednjavanje ima oblik Pk = bk Pk1 + Pk2 , Qk = bk Qk1 + Qk2 , uz start (8.6.3). S druge strane, mo zemo posti ci i da su nazivnici jednaki 1. Pretpostavimo da su bk = 0 za sve k 1. Budu ci da je izbor wk , k 1, proizvoljan (do na to da ne smiju biti 0), onda wk izaberemo tako da vrijedi w1 b1 = 1, tj. stavljanjem w2 b2 = 1, ..., wn bn = 1, k = 1, 2, . . . , n,

1 bk dobivamo tzv. I tip veri znog razlomka kojem su nazivnici jednaki 1, tj. dobili smo veri zni razlomak oblika a1 a2 a3 R = b0 + + . 1 1+ 1+ Koecijenti ak su jednaki wk = a1 = odnosno op cenito ak = a1 , b1 a2 = a2 , b1 b2 ak a3 = a3 , b2 b3

. bk1 bk Pripadna rekurzija za uzlazno izvrednjavanje je Pk = Pk1 + ak Pk2 , Qk = Qk1 + ak Qk2 , uz start (8.6.3). k = 1, 2, . . . , n,

8.6.3.

Eulerova forma veri znih razlomaka i neki teoremi konvergencije

Ako brojeve izaberemo tako da je zbroj brojnika i nazivnika jednak jedan (osim kod prve karike), tj. ako uzmemo w1 b1 = 1, wk1 wk ak + wk bk = 1, k = 2, 3 , . . . ,

onda se veri zni razlomak svede na tzv. Eulerovu formu 1 2 3 R = b0 + + . + 1 (1 2 ) (1 3 )+

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 207

Da bismo uspostavili vezu po cetnog veri znog razlomka i dobivenog veri znog razlomka u Eulerovoj formi, napi simo rekurzije za veri zni razlomak u Eulerovoj formi kori stenjem varijabli Sk i Tk . Promatrajmo drugu rekurziju iz (8.6.4) za Qk (odnosno Tk , jer nas zanima ta rekurzija za veri zni razlomak u Eulerovoj formi). Uz T1 = 0, T0 = 1, dobivamo T1 = T0 + 1 T1 , Uo cite da je T1 = 1, pa vrijedi Tk = 1 za sve k 0. Time se od dvije rekurzije za ra cunanje n-te konvergencije veri znog razlomka koristi samo ona prva, tj. vrijedi Rk = Sk . Iz R1 = S1 = 1, R0 = S0 = b0 izlazi R1 = R0 + 1 R1 , Rk = (1 k )Rk1 + k Rk2 , k 2. Ne mogu se svi veri zni razlomci mogu svesti na Eulerov oblik. Ako i samo ako su svi Qk = 0 (u rekurziji za po cetni veri zni razlomak), onda se veri zni razlomak mo ze svesti na Eulerovu formu. znog razlomka. Dokaz te Nadimo vezu izmedu originalnog i Eulerovog veri cinjenice je ponovno kori stenjem indukcije. Prvo poka zimo da za sve wk vrijedi wk = Qk1 , Qk k 1. (8.6.6) Tk = (1 k )Tk1 + k Tk2 , k 2.

Iz w1 b1 = 1, uz pretpostavku da je b1 = 0 slijedi da je w1 = 1 Q0 = , b1 Q1

sto je baza indukcije. Pretpostavimo da za za neki wn vrijedi wn = Qn1 . Qn

Iz denicione relacije za Eulerov veri zni razlomak slijedi da je wn wn+1 an+1 + wn+1 bn+1 = 1, pa primjenom pretpostavke indukcije dobivamo wn+1 = 1 wn an+1 + bn+1 = 1 Qn1 an+1 + bn+1 Qn = Qn Qn = , Qn1 an+1 + Qn bn+1 Qn+1

cime je dokazan korak indukcije.

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 208

Iz relacije (8.6.6) i denicije k = wk1wk ak uz dogovor w0 = 1, odmah slijedi da je k = Qk2 ak , Qk k 2. (8.6.7)

Eulerovu formu veri znog razlomka, uglavnom cemo koristiti pri dokazivanju tvrdnji. Da bismo dokazali konvergenciju veri znog razlomka, potraban nam je jednostavan izraz za Rk , po mogu cnosti neki red. Prvo, iz rekurzija za Pk i Qk nadimo koliko je Rk Rk1 , a zatim i Rk Rk2 . Za k 1 vrijedi Rk Rk1 = Pk 1 Pk Qk1 Pk1 Qk Pk = Qk Qk1 Qk Qk1 (bk Pk1 + ak Pk2)Qk1 Pk1 (bk Qk1 + ak Qk2 ) = Qk Qk1 ak (Pk1 Qk2 Pk2 Qk1 ) = Qk Qk1 ak ak1 (Pk2 Qk3 Pk3 Qk2 ) = = Qk Qk1 ak ak1 a1 . = (1)k+1 Qk Qk1

(8.6.8)

Na sli can se na cin dokazuje da je Rk Rk2 = (1)k bk ak1 a1 , Qk Qk2 k 2. (8.6.9)

Kori stenjem relacije (8.6.6) mo zemo (8.6.8) zapisati u terminima k (ponovno uz pretpostavku da su svi Qi razli citi od 0). Vrijedi Rk Rk1 = (1)k+1 ak ak1 a1 = (1)k+1 k k1 1 . Qk Qk1 (8.6.10)

Rekurzivnom primjenom (8.6.10) dobivamo da je


k

Rk = (1)k+1 k k1 1 + Rk1 = b0 + Ako veri zni razlomak konvergira, onda je

i=1

(1)i+1 i i1 1 .

R = lim Rk = b0 +
k i=1

(1)i+1 i i1 1 ,

(8.6.11)

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 209

pa je |Rk R| =

i=k +1

(1)i+1 i i1 1 .

Sada mo zemo izre ci i dokazati neke rezultate o konvergenciji veri znih razlomaka. Teorem 8.6.1. Ako su ak , bk > 0, tada vrijede nejednakosti R1 > R3 > > R2k1 > , R0 < R2 < < R2k < R2m1 > R2k za svako m i k . Dokaz: Ako su ak , bk > 0, onda su to i Qk (po rekurziji). Nakon toga, dokaz trivijalno slijedi raspisivanjem relacije (8.6.9) za parne i neparne indekse. Teorem 8.6.2. Ako su ak , bk > 0 i vrijedi ak bk i bk > 0 za k 1, gdje je neka konstanta, onda je veri zni razlomak (8.6.1) konvergentan. Dokaz: Budu ci da su ak , bk > 0, onda su to i Qk , pa iz (8.6.7) izlazi a1 a2 ai 1 2 i = > 0, Qi Qi1 pa je red u (8.6.11) alterniraju ci. Po Leibnitzovom kriteriju dovoljno je pokazati da n-ti clan tog reda te zi u 0 i da mu clanovi opadaju po apsolutnoj vrijednosti. Da bismo pokazali konvergenciju, dovoljno je pokazati da je i q < 1 (DAlembertov kriterij konvergencije). Iz (8.6.7) dobivamo Qi2 ai Qi2 ai Qi2 Qi2 i = ai = < = . Qi bi Qi1 + ai Qi2 ai Qi1 + ai Qi2 Qi1 + Qi2 U prethodnoj jednakosti potrebno je samo pokazati da postoji donja ograda za Qi1 , sto slijedi iz uvjeta bk > 0 i rekurzije za Qi . To cnije, lako se dokazuje da je Qi Qi1 , pa odatle slijedi da je Qi2 1 i < = < 1. (1 + )Qi2 1+ Takoder, po Leibnitzovom kriteriju, gre ska koju smo napravili ako R aproksimiramo s Rk manja je ili jednaka prvom odba cenom clanu u redu, tj. vrijedi a1 a2 ak+1 |Rk R| . Qk Qk+1

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 210

8.6.4.

Silazni algoritam za izvrednjavanje brojevnih veri znih razlomaka

Vratimo se jo s jednom na izvrednjavanje veri znih razlomaka. Prethodni je teorem dao neke ocjene o tome koliko dobro Rn aproksimira R. Zbog toga, mo zemo pretpostaviti da nam je unaprijed poznato koliko konvergencija trebamo da bismo dobro aproksimirali neki veri zni razlomak. Krenemo li od silazno od bn , onda ce sljede ca rekurzija izvrednjavati Rn . Deniramo Fn = bn (ili Fn+1 = ) i ra cunamo Fk = bk + na kraju cemo dobiti Rn = F0 . Primijetite da silazna rekurzija u svakom koraku ima to cno jedno zbrajanje i jedno dijeljenje, za razliku od uzlazne, koja u svakom koraku (u op cem slu caju) ima 4 mno zenja i 2 zbrajanja. Ova dva tipa rekurzija analogon su izvrednjavanja polinoma: silazna rekurzija analogon je Hornerove sheme, a uzlazna je analogon potenciranja i zbrajanja. Dapa ce, mo ze se pokazati da je silazna rekurzija za izvrednjavanje veri znih razlomaka optimalna sto se broja operacija ti ce, cak iako su dozvoljene transformacije koecijenata veri znog razlomka prije po cetka izvrednjavanja. ak+1 , Fk+1 k = (n), n 1, . . . , 0,

8.6.5.

Funkcijski veri zni razlomci

Funkcijski veri zni razlomci mogu se dobiti na vi se na cina, i mogu imati vi se oblika. Veri zne razlomke koji ce varijablu imati u brojniku zvat cemo veri zni razlomci tipa I i op cenito ce imati oblik f (x) = 0 + x x1 x x2 x x3 . 1 + 2 + 3 + (8.6.12)

Funkcijski veri zni razlomci mogu imati i varijablu u nazivniku, a takve cemo veri zne razlomke zvati veri zni razlomci tipa II. Op cenito, oni imaju oblik f (x) = b0 + a1 a2 a3 . (x + b1 )+ (x + b2 )+ (x + b3 )+ (8.6.13)

Izvrednjavanje veri znih razlomaka oba tipa vrlo je sli cno izvrednjavanju brojevnih veri znih razlomaka. Za izvrednjavanje n-te konvergencije fn (x) veri znih

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 211

razlomaka prvog tipa, mo zemo koristiti silazni algoritam. Stavimo Fn = n (ili Fn+1 = ), a zatim ra cunamo Fk = k + i na kraju je fn (x) = F0 . Za izvrednjavanje n-te konvergencije veri znih razlomaka drugog tipa mo zemo koristiti, takoder, silazni algoritam. Stavimo Fn = bn (ili Fn+1 = ), a zatim ra cunamo ak+1 Fk = bk + , k = (n), n 1, . . . , 0, x + Fk+1 i na kraju je fn (x) = F0 . Kako dolazimo do veri znih razlomaka? Obi cno je ne sto lak se do ci do veri znih razlomaka tipa I, a zatim ih mo zemo pretvoriti u tip II. Ako imamo zadanu funkciju f , uobi cajeno se veri zni razlomak nalazi nestandardiziranim postupkom kad se funkcija zapisuje pomo cu same sebe. Da bismo to bolje objasnili, pogledajmo to na primjeru jedne funkcije. Primjer 8.6.1. Razvijmo u veri zni razlomak prvog tipa funkciju f (x) = 1 + x. Prvo, potrebno funkciju malo druga cije zapisati. Lako se provjerava da je 1+x=1+ x . 1+ 1+x x xk+1 , Fk+1 k = (n), n 1, . . . , 0,

Ako ponovimo ovaj raspis u nazivniku razlomka, dobivamo veri zni razlomak 1+x=1+ x x x . 2+ 2+ 2+

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 212

Navedimo neke od poznatih veri znih razlomaka, bez njihova izvoda: ex = 1 x x x x x x x . 1 1+ 2 3+ 2 5+ 2 7+ x x x x x x x = 1 + + + + , 1 2 3 2 5 2 7 x x x 4x 4x 9x 9x 16x 16x , 1+ 2+ 3+ 4+ 5+ 6+ 7+ 8+ 9+ x= (2n + 1) , 2

ln(x + 1) =

x2 x2 x2 x2 x tg x = , 1 3 5 7 x arctg x = x th x = x Arth x =

x2 x2 4x2 9x2 16x2 , 1+ 3+ 5+ 7+ 9+ x2 x2 x2 x2 1+ 3+ 5+ 7+ x2 x2 4x2 9x2 16x2 . 1 3 5 7 9

Svi ovi veri zni razlomci su prvog tipa. Ima li koristi znati kako bi izgledao njihov drugi tip? Na primjer sesta konvergencija veri znog razlomka za 1 + x bi izgledala ovako, redom, prvi tip, racionalna funkcija, drugi tip: 1+x =1+ =7+ x x x x x x 7x3 + 56x2 + 112x + 64 = 2+ 2+ 2+ 2+ 2+ 2 x3 + 24x2 + 80x + 64 112 24/7 8/63 . + + (x + 20) (x + 8/3) (x + 4/3)

vidimo? Iako drugi tip ima kompliciranije koecijente, ima upola manje Sto karika za izvrednjavanje, pa ce to dva puta ubrzati postupak izvrednjavanja. Kako cemo od prethodnog veri znog razlomka prvog tipa dobiti veri zni razlomak drugog tipa? Postupak se obavlja u dva koraka. U prvom se koraku od veri znog razlomka prvog tipa dobiva racionalna funkcija. Pogledajmo silazni algoritam za izvrednjavanje veri znog razlomka prvog tipa. Fk zelimo napisati kao kvocijent dva polinoma, pa mo zemo denirati uk Fk = . vk Tada silazna rekurzija glasi uk (x xk+1 )vk+1 = k + . vk uk+1

8. IZVREDNJAVANJE FUNKCIJA

IZVREDNJAVANJE FUNKCIJA 213

Kao sto smo to i prije radili, izjedna cimo brojnike i nazivnike funkcija s obje strane. Dobivamo uk = k uk+1 + (x xk+1 )vk+1 , vk = uk+1. Naravno vk mo zemo eliminirati uvr stavanjem iz druge jednad zbe u prvu, pa dobivamo uk = k uk+1 + (x xk+1 )uk+2, k = n, n 1, . . . , 0, uz start un+2 = 0, un+1 = 1. Kona cno, n-ta je konvergencija jednaka fn (x) = F0 = u0 u0 = . v0 u1

Da bismo iz racionalne funkcije dobili drugi tip veri znog razlomka, potrebno je koristiti silaznu rekurziju za drugi tip i usporedivati s u0 /u1 . Iz silazne rekurzije za drugi tip izlazi u0 a1 = b0 + , u1 x + F1 pa mo zemo pisati u0 = u1 b0 + a1 R1 . Zatim ponovimo postupak i dobivamo u1 = R1 b1 + a2 R2 . Ova rekurzija se prekida kad je stupanj polinoma 0. Algoritam za pretvaranje racionalne funkcije u drugi tip veri znog razlomka je sljede ci. Denira se R1 = u0 i R0 = u1 . Zatim se vrti petlja Rk1 = Rk bk + ak+1 Rk+1 sve dok ne postane Rx = 1. Pritom je bk = b0 , k = 0, bk + x, k = 0. za k = 0, 1, 2, . . .

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 214

9. Rje savanje nelinearnih jednad zbi


9.1. Op cenito o iterativnim metodama

Ra cunanje nulto caka nelinearnih funkcija jedan je od naj ce s cih zadataka primijenjene matematike. Op cenito, neka je zadana funkcija f : I R, gdje je I neki interval. Tra zimo sve one x I za koje je f (x) = 0. Takvi x-evi zovu se rje senja, korijeni pripadne jednad zbe ili nulto cke funkcije f . U pravilu, pretpostavljamo da je f neprekidna na I i da su joj nulto cke izolirane. U protivnom postojao bi problem konvergencije.
y y

Tra zenje nulto cki na zadanu to cnost sastoji se od dvije faze.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 215

1. Izolacije jedne ili vi se nulto cki, tj. nala zenje intervala I unutar kojeg se nalazi bar jedna nulto cka. Ovo je te zi dio posla i obavlja se na temelju analize toka funkcije. 2. Iterativno nala zenje nulto cke na tra zenu to cnost. Postoji mnogo metoda za nala zenje nulto caka nelinearnih funkcija na zadanu to cnost. One se bitno razlikuju po tome ho ce li uvijek konvergirati, tj. imamo li sigurnu konvergenciju ili ne i po brzini konvergencije. Uobi cajen je slu caj da brze metode nemaju sigurnu konvergenciju, dok je sporije metode imaju. Denirajmo brzinu konvergencije metode Denicija 9.1.1. Niz iteracija (xn , n N0 ) konvergira prema to cki s redom konvergencije p, p 1 ako vrijedi | xn | c | xn1 |p , nN (9.1.1)

za neki c > 0. Ako je p = 1, ka zemo da niz konvergira linearno prema . U tom je slu caju nu zno da je c < 1 i obi cno se c naziva faktor linearne konvergencije. Relacija (9.1.1) katkad nije zgodna za linearne iterativne algoritme. Ako u (9.1.1) upotrijebimo indukciju za p = 1, c < 1, onda dobivamo da je | xn | cn | x0 |, n N. (9.1.2)

Katkad ce biti mnogo lak se pokazati (9.1.2) nego (9.1.1). I u slu caju (9.1.2), re ci cemo da niz iteracija konvergira linearno s faktorom c.

9.2.

Metoda raspolavljanja (bisekcije)

Najjednostavnija metoda nala zenja nulto caka funkcije je metoda raspolavljanja. Ona funkcionira za neprekidne funkcije, ali zbog toga ima i najlo siju ocjenu pogre ske. Osnovna pretpostavka za po cetak algoritma raspolavljanja je neprekidnost funkcije f na intervalu [a, b] uz pretpostavku da vrijedi f (a) f (b) < 0.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 216

Prethodna relacija zna ci da funkcija f ima na intervalu [a, b] bar jednu nulto cku.
y y

a b x

a b x

Obratno, ako je to ne mora zna citi da f nema unutar [a, b] nulto cku. Na primjer, moglo se dogoditi da smo lo se separirali nulto cke i da f ima unutar [a, b] paran broj nulto caka, ili nulto cku parnog reda.
y y

f (a) f (b) > 0,

b x

b x

Dok je za prvi primjer s prethodne slike lako, boljom separacijom nulto cki posti ci f (a) f (b) < 0, za drugi je primjer to nemogu ce! Dakle, nulto cke parnog reda nemogu ce je na ci metodom bisekcije. Ako vrijede startne pretpostavke metode, metoda raspolavljanja konvergirat ce prema nekoj nulto cki iz intervala [a, b]. Algoritam raspolavljanja je vrlo jednostavan. Ozna cimo s pravu nulto cku funkcije, a zatim s a0 := a, b0 := b i x0 polovi ste [a0 , b0 ], tj. x0 = a0 + b0 . 2

U n-tom koraku algoritma konstruiramo interval [an , bn ] kojemu je duljina polovina duljine prethodnog intervala, ali tako da je nulto cka ostala unutar intervala [an , bn ].

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 217

Konstrukcija intervala [an , bn ] sastoji se u raspolavljanju intervala [an1 , bn1 ] to ckom xn1 i to tako da je an = xn1 , bn = bn1 an = an1 , bn = xn1 Postupak zaustavljamo kad je | xn | . Pitanje je kako cemo znati da je prethodna relacija ispunjena ako ne znamo ? Jednostavno! Budu ci da je xn polovi ste intervala [an , bn ], a [an , bn ], onda je | xn | bn xn , pa je dovoljno staviti zahtjev bn xn . Gra cki, metoda raspolavljanja izgleda ovako
y

ako je f (an1 ) f (xn1 ) > 0, ako je f (an1 ) f (xn1 ) < 0.

x0 x1 b x

Algoritam za metodu raspolavljanja je sljede ci. Algoritam 9.2.1. (Metoda raspolavljanja) x := (a + b)/2; while b x > do begin; if f (x) f (b) < 0.0 then a := x else b := x; x := (a + b)/2; end; { Na kraju je x . }

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 218

Iz konstrukcije metode lako se izvodi pogre ska n-te aproksimacije nulto cke . Vrijedi | xn | bn xn = Primijetite da je 1 1 1 (bn an ) = 2 (bn1 an1 ) = = n+1 (b a). (9.2.1) 2 2 2

ba = b x0 , 2 pa bismo kori stenjem te relacije (9.2.1) mogli pisati kao | xn | 1 (b x0 ). 2n

Ova relacija podsje ca na (9.1.2), ali zdesna se nigdje ne pojavljuje | x0 |. Ipak desna strana daje nam naslutiti da ce konvergencija biti dosta spora. Relacija (9.2.1) omogu cava sa unaprijed odredimo koliko je koraka raspolavljanja potrebno da bismo postigli to cnost . Da bismo postigli da je | xn | , dovoljno je zahtijevati da je 1 (b a) . n 2 +1 Mno zenjem prethodne jednad zbe s 2n+1 i dijeljenjem s dobivamo ba 2n+1 , a zatim logaritmiranjem dobivamo log(b a) log (n + 1) log 2, odnosno n log(b a) log 1, log 2 n N0 .

Ako je funkcija f jo s i klase C 1 [a, b], tj. ako f ima i neprekidnu prvu derivaciju, mo ze se dobiti dinami cka ocjena za udaljenost aproksimacije nulto cke od prave nulto cke. Po Teoremu srednje vrijednosti za funkciju f imamo f (xn ) = f () + f ( )(xn ), pri cemu je izmedu xn i . Prvo iskoristimo da je nulto cka, tj. f () = 0, a zatim uzmemo apsolutne vrijednosti obje strane. Dobivamo |f (xn )| = |f ( )| | xn |. (9.2.2)

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 219

Primijetite da je |f ( )| m1 , m1 = min |f (x)|.


x[a,b]

Ako je m1 > 0, uvr stavanjem prethodne ocjene u (9.2.2) izlazi | xn | |f (xn )| . m1

Drugim rije cima, ako zelimo da je | xn | , dovoljno je zahtijevati da je |f (xn )| , m1 odnosno da vrijedi |f (xn )| m1 .

9.3.

Regula falsi (metoda pogre snog polo zaja)

U prethodnom poglavlju opisali smo metodu raspolavljanja, koja ima sigurnu konvergenciju, ali je vrlo spora. Prirodan je poku saj ubrzavanja te metode je regula falsi . Konstruirat cemo metodu koja ce, ponovno biti konvergentna, cim se nulto cka nalazi unutar [a, b]. Pretpostavimo da je funkcija f : [a, b] R neprekidna na [a, b] i da vrijedi f (a) f (b) < 0. Aproksimirajmo funkciju f pravcem koji prolazi to ckama (a, f (a)), (b, f (b)). Nulto cku tada mo zemo aproksimirati nulto ckom tog pravca, to ckom x0 . Nakon toga, pomaknemo ili to cku a ili to cku b u x0 , ali tako da je unutar novodobivenog intervala ostala nulto cka. Postupak ponavljamo sve dok nismo postigli zeljenu to cnost.
y

x0

x1 b x

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 220

To cka x0 dobiva se jednostavno iz jednad zbe pravca, pa je x0 = b f (b) ba . f (b) f (a) (9.3.1)

Postoji nekoliko ozbiljnih problema s ovom metodom, iako je aproksimacija pravcem i zatvaranje nulto cke u odredeni interval sasvim dobra ideja. Izvedimo red konvergencije metode. Iskoristimo relaciju (9.3.1) za x0 , pomno zimo je s 1 i dodajmo s obje strane. Odatle, uz oznaku (f [a, b] je prva podijeljena razlika) f (b) f (a) , f [a, b] = ba izlazi x0 = b + f (b) f (b) = ( b) 1 + f [a, b] ( b)f [a, b] f (b) f () f [b, ] = ( b) 1 + (b ) = ( b) 1 + ( b)f [a, b] ( b)f [a, b] f [b, ] f [a, b] f [b, ] = ( b) 1 = ( b) f [a, b] f [a, b] f [a, b, ] = ( b) ( a) , f [a, b]

pri cemu je po deniciji f [a, b, ] druga podijeljena razlika f [a, b, ] = f [b, ] f [a, b] . a [a, b]. 1 f ( ), 2

Ako je f klase C 1 [a, b], onda po Teoremu srednje vrijednosti imamo f [a, b] = f ( ),

Na sli can na cin, ako je f klase C 2 [a, b], lako je dokazati da je f [a, b, ] =

gdje se nalazi izmedu minimima i maksimuma vrijednosti a, b, . Iskoristimo li te dvije relacije, za funkcije klase C 2 [a, b] dobivamo sljede cu ocjenu x0 = ( b) ( a) f ( ) . 2 f ( ) (9.3.2)

Da bismo pojednostavnili analizu, pretpostavimo da je f () = 0 i je jedini korijen unutar [a, b]. Takoder, pretpostavimo da je f (a) 0 za sve x [a, b]. Razlikujemo dva slu caja:

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 221

Slu caj f (x) > 0. U tom je slu caju f konveksna rastu ca funkcija, a spojnica to caka (a, f (a)) i (b, f (b)) se uvijek nalazi iznad funkcije f . Uvr stavanjem podataka o prvoj i drugoj derivaciji u (9.3.2), dobivamo da je desna strana (9.3.2) ve ca od 0, tj. > x0 , pa ce se u sljede cem koraku pomaknuti a. Isto ce se dogoditi u svim narednim koracima. Drugim rije cima, neprestano ostaje desno od aproksimacija xn . Promatramo li (9.3.2), to zna ci da je b ksan, pa za proizvoljnu iteraciju xn dobivamo xn = ( b) ( an ) f (n ) . 2 f ( n )

Uzimanjem apsolutnih vrijednosti zdesna i slijeva, slijedi da je u tom slu caju konvergencija regule falsi linearna. Pogled na sli cnu ocjenu za metodu bisekcije, odmah ka ze da ne bi trebalo biti prete sko konstruirati primjere kad je metoda bisekcije br za no regula falsi . Slu caj f (x) < 0. U ovom slu caju je aproksimacija nulto cke uvijek desno od , a uvijek se pomi ce b. Analiza ovog slu caja vrlo je sli cna prethodnom.

9.4.

Metoda sekante

Ako graf funkcije f aproksimiramo sekantom, sli cno kao kod regule falsi , samo ne zahtijevamo da nulto cka funkcije f ostane zatvorena unutar posljednje dvije iteracije, dobili smo metodu sekante. Time smo izgubili svojstvo sigurne konvergencije, ali se nadamo da ce metoda, kad konvergira konvergirati br ze nego regula falsi . Po cinjemo s dvije po cetne to cke x0 i x1 i povla cimo sekantu kroz (x0 , f (x0 )), (x1 , f (x1 )). Ta sekanta sije ce os x u to cki x2 . Postupak nastavljamo povla cenjem sekante kroz posljednje dvije to cke (x1 , f (x1 )) i (x2 , f (x2 )). Formule za metodu sekante dobivaju se iteriranjem po cetne formule za regulu falsi , tako da dobivamo xn+1 = xn f (xn ) xn xn1 . f (xn ) f (xn1 ) (9.4.1)

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 222

Gra cki to izgleda ovako.


y

x1

x2 x0

x3 x

Primijetite da je tre ce iteracija iza sla izvan po cetnog intervala, pa metoda sekante ne mora konvergirati. Jednako tako, da smo prirodno numerirali prve dvije to cke, tako da je x0 < x1 , imali bismo konvergenciju prema rje senju. Iskoristimo li ocjenu (9.3.2) za svaki n, dobit cemo rad konvergencije metode sekante, uz odgovaraju ce pretpostavke. Imamo xn+1 = ( xn ) ( xn1 ) f (n ) . 2 f ( n ) (9.4.2)

Teorem 9.4.1. Neka su f , f i f neprekidne za sve x u nekom intervalu koji sadr zi jednostruku nulto cku (f () = 0). Ako su po cetne aproksimacije x0 i x1 izabrane dovoljno blizu , niz iteracija xn konvergirat ce prema s redom konvergencije p, gdje je 1+ 5 1.618. p= 2 Dokaz: Budu ci da je f () = 0, u nekoj okolini nulto cke , I = [ , + ], > 0, mo zemo denirati max |f (x)| M = xI . 2 min |f (x)|
xI

Za sve x0 , x1 I , kori stenjem (9.4.2), dobivamo | x2 | | x1 | | x0 | M. Da bismo skratili zapis, ozna cimo s en = xn gre sku n-te iteracije (aproksimacije nulto cke). Mno zenjem prethodne nejednakosti s M dobivamo M |e2 | M |e1 | M |e0 |.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 223

Nadalje, pretpostavimo da su x0 i x1 izabrani tako da je = max{M |e0 |, M |e1 |} < 1. Odatle odmah slijedi da je M |e2 | 2 < . Odatle zaklju cujemo da je |e2 | < odnosno x2 [ , + ] = I. Primijenimo li induktivno taj argument, dobivamo M |e3 | M |e2 |M |e1 | 2 = 3 M |e4 | M |e3 |M |e2 | 5 . Op cenito, ako je M |en1 | qn1 , onda je M |en+1 | M |en |M |en1 | qn +qn1 = qn+1 , pa je qn+1 = qn + qn1 , n 1, s q0 = q1 = 1. Prethodna rekurzija je rekurzija za Fibonaccijeve brojeve i lako se ra cuna njeno eksplicitno rje senje tj. dovoljno je rije siti diferencijsku jednad zbu qn+1 qn qn1 = 0, uz zadane po cetne q0 = q1 = 1. Karakteristi cna jednad zba je k 2 k 1 = 0, pa su njena rje senja k1,2 Ozna cimo li 1 5 = . 2 M |en | qn , = max{|e0 |, |e1 |} , M

1+ 5 1 5 r0 = , r1 = , 2 2 onda je op ce rje senje te diferencijske jednad zbe


n n qn = c0 r0 + c1 r1 .

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 224

Konstante c0 i c1 odredujemo iz po cetnih uvjeta. Dobivamo 1 = q0 = c0 + c1 1 = q1 = c0 r0 + c1 r1 . Rje savanjem ovog para jednad zbi, dobivamo 1 c0 = r0 , 5 pa je 1 c1 = r1 , 5 n 0.

1 n+1 n+1 qn = (r0 r1 ), 5 r0 1.618,

Budu ci da je
n+1 onda za velike n r1 0, pa je

r1 0.618,

1 qn (1.618)n+1. 5 Vratimo se na en . Ovim smo pokazali da je |en | 1 qn , M n 0.

Ovaj kvazidokaz (jer su svugdje gornje ograde) daje nam samo ideju o redu konvergencije, koji je zaista p = r0 , ali je pravi dokaz mnogo te zi. Kod metode sekante postoji nekoliko problema. Prvi je da mo ze divergirati ako po cetne aproksimacije nisu dobro odabrane. Drugi problem koji se mo ze javiti je kra cenje u kvocijentu xn xn1 f (xn ) f (xn1 ) kad xn . Osim toga, budu ci da iteracije ne zatvaraju nulto cku nije lako re ci kad treba zaustaviti iterativni proces. Kona cno, primijetite da je za svaku iteraciju metode sekante potrebno samo jednom izvrednjavati funkciju f i to u to cki xn , jer f (xn1 ) cuvamo od prethodne iteracije.

Budu ci da qn za n , dobivamo da xn .

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 225

9.5.

Metoda tangente (Newtonova metoda)

Ako graf funkcije f umjesto sekantom, aproksimiramo tangentom, dobili smo metodu tangente ili Newtonovu metodu. Sli cno kao i kod sekante, time smo izgubili svojstvo sigurne konvergencije, ali se nadamo da ce metoda brzo konvergirati. Pretpostavimo da je zadana po cetna to cka x0 . Ideja metode je povu ci tangentu u to cki (x0 , f (x0 )) i denirati novu aproksimaciju x0 u to cki gdje ona sije ce os x.
y

x1

x0

Geometrijski izvod je jednostavan. U to cki xn napi se se jednad zba tangente i pogleda se gdje sije ce os x. Jednad zba tangente je y f (xn ) = f (xn )(x xn ), odakle izlazi da je nova aproksimacija xn+1 := x xn+1 = xn f (xn ) . f (xn )

Primijetite da je prethodna formula usko vezana uz metodu sekante, jer je f (xn ) f (xn ) f (xn1 ) . xn xn1

Do Newtonove metode mo ze se do ci i na druga ciji na cin. Pretpostavimo li da je funkcija f dva puta neprekidno derivabilna (na nekom podru cju oko ), onda je mo zemo razviti u Taylorov red oko xn do uklju civo prvog clana. Dobivamo f (x) = f (xn ) + f (xn )(x xn ) + f (n ) (x xn )2 , 2

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 226

pri cemu je n izmedu x i xn . Uvr stavanjem x = , dobivamo f (n ) 0 = f () = f (xn ) + f (xn )( xn ) + ( xn )2 . 2

Premje stanjem, uz pretpostavku f (xn ) = 0, izlazi = xn


f (xn ) 2 f ( n ) ( x ) . n f (xn ) 2f (xn )

Primijetite da prva dva clana zdesna daju xn+1 , pa dobivamo xn+1 = ( xn )2 f (n ) . 2f (xn ) (9.5.1)

Iz (9.5.1), odmah citamo da je Newtonova metoda, kad konvergira kvadrati cno konvergentna. Ipak, treba biti oprezan, jer takav zaklju cak vrijedi samo ako f (xn ) ne te zi u 0 tijeku cijelog procesa, tj. ako je f () = 0 (drugim rije cima, ako je nulto cka jednostruka). Sli cno, kao kod metode sekante, mo zemo dokazati sljede ci teorem o konvergenciji Newtonove metode. Teorem 9.5.1. Neka su f , f i f neprekidne za sve x u nekom intervalu koji sadr zi jednostruku nulto cku (f () = 0). Ako je po cetna aproksimacija x0 izabrana dovoljno blizu , niz iteracija xn konvergirat ce prema s redom konvergencije p = 2. Cak stovi se, vrijedi xn+1 f () = . n ( xn )2 2 f ( ) lim Dokaz: Izaberimo interval I = [ , + ] i neka je M= 2 min |f (x)|
xI

max |f (x)|
xI

Za sve x0 I , kori stenjem (9.5.1), dobivamo | x1 | M | x0 |2 , odnosno Izaberimo | x0 | i M | x0 | < 1. Tada je M | x1 | (M | x0 |)2 . M | x1 | M | x0 |,

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 227

sto pokazuje da je Primjenom istog argumenta, induktivno dobivamo | xn | , | xn+1 | M | xn |2 , i induktivno M | xn | (M | x0 |)2 ,
n

| x1 | | x0 | . M | xn | < 1 M | xn+1 | (M | xn |)2 , 1 n (M | x0 |)2 . M

za sve n 1. Da bismo pokazali konvergenciju iskoristimo (9.5.1). Imamo

| xn |

Budu ci da je M | x0 | < 1, to pokazuje da xn za n .

Budu ci da u (9.5.1) n le zi izmedu xn i , onda mora biti n za n . Zbog toga je xn+1 f (n ) f () = lim = . lim n 2f (xn ) n ( xn )2 2 f ( ) Jednostavnim rije cima, ovaj teorem daje dovoljne uvjete za tzv. lokalnu konvergenciju Newtonove metode prema jednostrukoj nulto cki. Lokalnost se odnosi na to da po cetna aproksimacija mora biti dovoljno blizu nulto cke | x0 | . Veli cina odredena je drugim uvjetom M | x0 | < 1 koji daje sigurnu konvergenciju. Naravno, tada je 1 | x0 | < , M pa bi ispalo da treba uzeti = 1/M . To, na zalost, ne mora vrijediti, jer M op cenito ovisi o . Ipak, u nekim situacijama mo zemo iskoristiti sli can uvjet za osiguranje konvergencije Newtonove metode. Pretpostavimo da smo locirali nulto cku funkcije f u segmentu [a, b] i znamo 2 da je f klase C na tom segmentu. Neka je M2 = max |f (x)|,
x[a,b]

m1 = min |f (x)|.
x[a,b]

Ako je f jo s i strogo monotona na [a, b], onda je m1 > 0 (a vrijedi i obrat). Tada f ima jedinstvenu jednostruku nulto cku u [a, b]. Umjesto lokalnog M , izra cunamo globalnu veli cinu M2 M := . 2m1

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 228

Ako vrijedi

1 ba < , 2 M onda mo zemo uzeti = (b a)/2, a startna to cka je polovi ste intervala x0 := (a + b)/2. Zbog |x0 | < 1/M , imamo sigurnu konvergenciju iteracija prema nulto cki. Ako vrijedi i ja ci uvjet ba< 1 , M

onda bilo koja startna to cka x0 [a, b] daje sigurnu konvergenciju.

Naravno, to mo zemo iskoristiti samo ako imamo dovoljno informacija o funkciji f da mo zemo izra cunati M , odnosno M2 i m1 . Umjesto M2 , mo zemo uzeti i neku gornju ogradu za M2 , a umjesto m1 , neku pozitivnu donju ogradu za m1 . Ove dvije veli cine M2 i m1 daju i lokalne ocjene gre ske iteracija u Newtonovoj metodi, uz uvjet da su sve iteracije u [a, b]. Iz ranije relacije (9.5.1) xn = f (n1 ) ( xn1 )2 , 2f (xn1 )

gdje je n1 izmedu i xn1 , odmah slijedi | xn | M2 ( xn1 )2 . 2m1

Ova ocjena nije naro cito korisna za praksu, jer ne znamo. Uo cite da smo sli cnu ocjenu ve c imali u prethodnom teoremu, samo s M umjesto M . Za dvije susjedne iteracije u Newtonovoj metodi takoder vrijedi veza preko Taylorove formule f (xn ) = f (xn1 ) + f (xn1 )(xn xn1 ) + f (n1 ) (xn xn1 )2 , 2

pri cemu je n1 izmedu xn1 i xn . Po deniciji iteracija u Newtonovoj metodi vrijedi i f (xn1 ) + f (xn1 )(xn xn1 ) = 0, pa je f (n1) (xn xn1 )2 . 2 Koriste ci pretpostavku xn1 , xn [a, b], dobivamo f (xn ) = |f (xn )| M2 (xn xn1 )2 . 2

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 229

Kao i kod metode bisekcije, ako je m1 > 0, iz (9.2.2) slijedi ocjena | xn | Kombinacijom ovih ocjena dobivamo | xn | M2 (xn xn1 )2 , 2m1 |f (xn )| . m1

sto se mo ze iskoristiti u praksi. Ako je tra zena to cnost, onda test M2 (xn xn1 )2 2m1 garantira da je | xn | , do na gre ske zaokru zivanja. Naravno, mo zemo koristiti i raniji test |f (xn )| . m1 U ovim ocjenama gre ske koristili smo pretpostavku da je f strogo monotona na [a, b]. Ako i druga derivacija ima ksni predznak na tom intervalu, onda mo zemo dobiti i globalnu konvergenciju Newtonove metode. Teorem 9.5.2. Neka je f C 2 [a, b] i f (a) f (b) < 0. Ako f i f nemaju nulto cku u [a, b], tj. ako f i f imaju ksni predznak na [a, b], onda Newtonova metoda konvergira prema (jedinstvenoj jednostrukoj) nulto cki funkcije f , za svaku startnu aproksimaciju x0 [a, b] za koju vrijedi f (x0 ) f (x0 ) > 0. Dokaz: Pretpostavimo, na primjer, da je f > 0 i f > 0 na cijelom [a, b]. Tada, jer f raste, mora biti f (a) < 0 i f (b) > 0. Zbog f > 0, startna aproksimacija mora zadovoljavati f (x0 ) > 0. U praksi mo zemo uzeti x0 = b, jer je to jedina to cka za koju sigurno znamo da vrijedi f (x0 ) > 0. Neka je (xn , n N0 ), niz iteracija generiran Newtonovom metodom iz startne to cke x0 za koju je f (x0 ) > 0 xn+1 = xn f (xn ) . f (xn )

Za po cetak, znamo da je x0 > . Tvrdimo da je < xn x0 za svaki n N0 . Dokaz ide indukcijom, a bazu ve c imamo. Pretpostavimo da je < xn x0 . Onda je f (xn ) > 0 i f (xn ) > 0, pa je xn+1 < xn x0 ,

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 230

sto pokazuje da (xn ) monotono pada. Iz Taylorove formule je 0 = f () = f (xn ) + f (xn )( xn ) + f (n ) ( xn )2 , 2

pri cemu je n (, xn ) [a, b]. Zbog toga je f (n ) > 0, pa je f (xn ) + f (xn )( xn ) < 0, odakle slijedi xn+1 = xn f (xn ) > . f (xn )

Dakle, niz (xn ) je odozdo ograni cen s i monotono pada pa postoji limes := lim xn .
n

Odmah znamo i da je x0 , tj. [a, b]. Prijelazom na limes u formuli za Newtonove iteracije dobivamo = f ( ) , f ( )

odakle, koriste ci f ( ) = 0, slijedi f () = 0. No, znamo da f ima jedinstvenu nulto cku u [a, b] pa mora biti = . Preostala tri slu caja za predznake prve i druge derivacije se dokazuju potpuno analogno. Uvjet f (x0 ) f (x0 ) > 0 na izbor startne to cke u prethodnom teoremu ima vrlo jednostavnu geometrijsku interpretaciju. Ako pogledamo graf funkcije f na [a, b], startnu to cku x0 treba odabrati na strmijoj strani funkcije. Primijetite da ra cunanje u Newtonovoj metodi, iako ima ve ci red konvergencije nego sekanta, mo ze trajati dulje (naravno uz istu to cnost rezultata). Obja snjenje le zi u cinjenici da se za svaki korak Newtonove metode mora izra cunati i vrijednost funkcije i vrijednost derivacije u to cki. Ako se derivacija komplicirano ra cuna, sekanta ce biti br za. Prethodni teoremi daju samo dovoljne uvjete konvergencije pojedinih iterativnih metoda. U prakti cnom ra cunanju cesto imamo samo interval [a, b] u kojem smo locirali nulto cku funkcije f , a nemamo dodatne informacije o funkciji f iz kojih bismo mogli izvu ci zaklju cak o konvergenciji br zih iterativnih metoda. Zbog toga se ove metode katkad kombiniraju s metodom bisekcije na sljede ci na cin. Prvo izra cunamo novu iteraciju po br zoj metodi i ako ona ostaje u trenutnom intervalu, onda ju prihva camo i s njom nastavljamo iteracije i skra cujemo interval. U protivnom, radimo korak bisekcije za smanjivanje intervala.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 231

9.6.

Metoda jednostavne iteracije

Pretpostavimo da tra zimo , rje senje jednad zbe x = g (x). (9.6.1)

uz x0 kao po cetnu aproksimaciju za . Primijetite da Newtonova metoda pripada klasi jednostavnih iteracija, jer je g (x) = x f (x) . f (x)

Deniramo jednostavnu iteracionu funkciju (iteracionu funkciju koja pamti samo jednu prethodnu to cku) s xn+1 = g (xn ), n 0,

Rje senja, tj. to cke za koje je x = g (x), zovu se ksne to cke od g . Uobi cajeno, mi smo zainteresirani f (x) = 0, pa taj problem treba reformulirati na problem (9.6.1). Postoji mnogo na cina za tu reformulaciju. Primjer 9.6.1. Reformulirajmo problem x2 a = 0, a>0

u oblik (9.6.1). Na primjer, to mo zemo napraviti na jedan od sljede cih na cina: 1. x = x2 + x a, ili op cenitije x = x + c(x2 a) za neki c = 0, 2. x = a/x, 3. x = 0.5 (x + a/x). Prirodno je pitanje kako se razli cite jednostavne iteracije pona saju. Odgovor cemo dobiti nizom sljede cih tvrdnji. Lema 9.6.1. Neka je funkcija g neprekidna na intervalu [a, b] i neka je a g (x) b, x [a, b],

u oznaci g ([a, b]) [a, b]. Tada jednostavna iteracija x = g (x) ima bar jedno rje senje na [a, b]. Dokaz: Za neprekidnu funkciju g (x) x na intervalu [a, b] vrijedi g (a) a 0, g (b) b 0. Drugim rije cima, funkcija g (x) x je promijenila predznak na intervalu [a, b], a to mo ze samo prolaskom kroz nulto cku (neprekidna je!).

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 232

Lema 9.6.2. Neka je funkcija g neprekidna na [a, b] i neka je g ([a, b]) [a, b]. Nadalje, pretpostavimo da postoji konstanta , 0 < < 1, takva da vrijedi |g (x) g (y )| |x y |, xn = g (xn1 ), konvergira prema za proizvoljni x0 [a, b]. Dokaz: Prema prethodnoj lemi, postoji bar jedno rje senje [a, b]. Poka zimo da ne postoji vi se od jednog rje senja. Da bismo to pokazali, pretpostavimo suprotno, tj. postoje barem dva rje senja. Uzmimo bilo koja dva od tih rje senja i nazovimo ih i iz [a, b]. Budu ci da su to rje senja, vrijedi g () = i g ( ) = . Po pretpostavci, uva zavaju ci prethodne jednakosti, dobivamo | | = | g ( ) g ( )| | | , ili drugim rije cima Budu ci da je 1 > 0, mora biti = . (1 ) | | 0. x, y [a, b]. n1

Tada x = g (x) ima jedinstveno rje senje unutar [a, b]. Takoder, niz iteracija

Doka zimo jo s konvergenciju jednostavnih iteracija za proizvoljnu startnu to cku x0 [a, b]. Prvo, uo cimo da xn1 [a, b] povla ci da je xn = g (xn1 ) [a, b]. Nadalje, vrijedi | xn | = |g () g (xn1 )| | xn1 |, odnosno indukcijom po n dobivamo | xn | n | x0 |, n 1.

Ako pustimo n , onda n 0, pa vrijedi xn . g (x) g (y ) = g ( )(x y ), za sve x, y [a, b]. Deniramo onda mo zemo pisati |g (x) g (y )| = |x y |, Primijetite mo ze biti ve ci od 1!

Ako je g derivabilna na [a, b], onda je po Teoremu srednje vrijednosti izmedu x i y

= max |g (x)|,
x[a,b]

(9.6.2)

x [a, b].

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 233

Teorem 9.6.1. Neka je funkcija g neprekidno diferencijabilna na [a, b], neka je g ([a, b]) [a, b], i neka za iz (9.6.2) vrijedi < 1. Tada vrijedi: 1. x = g (x) ima to cno jedno rje senje na [a, b], lim xn = , (9.6.3)

2. za proizvoljni x0 [a, b], za jednostavnu iteraciju xn+1 = g (xn ), n 0 vrijedi


n

| xn | n | x0 | i xn+1 = g ( ). n x n lim

Dokaz: Sve tvrdnje ovog teorema dokazane su u prethodne dvije leme, osim posljednje relacije o brzini konvergencije. Vrijedi xn+1 = g () g (xn ) = g (n )( xn ), xn+1 = lim g (n ) = g (). n xn n 0,

gdje je n neki broj izmedu i xn . Budu ci da xn , onda i n , pa vrijedi


n

lim

Poka zimo koliko je pretpostavka (9.6.3) zna cajna, tj. pretpostavimo da je |g ()| > 1. Tada, ako imamo niz xn+1 = g (xn ) i rje senje = g (), vrijedi

xn+1 = g () g (xn ) = g (n )( xn ). Za xn dovoljno blizu , onda je i i |g (n )| > 1, pa je | xn+1 | | xn |, pa konvergencija metode nije mogu ca. Prethodni teorem se mo ze malo i pojednostavniti, tako da se ne navodi eksplicitno interval [a, b]. Teorem 9.6.2. Neka je rje senje jednostavne iteracije x = g (x) i neka je g neprekidno diferencijabilna na nekoj okolini od i neka je |g ()| < 1. Tada vrijede svi rezultati Teorema 9.6.1., uz pretpostavku da je x0 dovoljno blizu .

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 234

Dokaz: Uzmimo I = [ , + ] takav da je


xI

max |g (x)| < 1.

Tada je g (I ) I , jer | x| povla ci

| g (x)| = |g () g (x)| = |g ( )|| x| | x| .

Sada mo zemo primijeniti prethodni teorem za [a, b] = I . Primjer 9.6.2. U primjeru 9.6.1., denirali smo tri iteracione funkcije. 1. Ako je g (x) = x2 + x a, onda je g (x) = 2x + 1 i u nulto cki = a je g ( a) = 2 a + 1 > 1, pa ta iteraciona funkcija ne ce konvergirati. U op cenitijem je slu caju g (x) = x + c(x2 a), pa je g (x) = 1 + 2cx i g ( a) = 1 + 2c a. Da bismo osigurali konvergenciju, mora biti 1 < 1 + 2c a < 1, odnosno 1 < c < 0. a

2. Ako je g (x) = a/x, onda je g (x) = a/x2 , pa je g ( a) = 1. 3. Ako je g (x) = 0.5 (x + a/x), onda je g (x) = 0.5 (1 a/x2 ), pa je g ( a ) = 0. Ovaj odjeljak zavr sit cemo promatranjem jednostavnih iteracionih funkcija, ali vi seg reda konvergencije, kao sto je, na primjer Newtonova metoda. Teorem 9.6.3. Neka je rje senje od x = g (x) i neka je g p puta neprekidno diferencijabilna za sve x u okolini , za neki p 2. Nadalje, pretpostavimo da je g () = = g (p1) () = 0. xn+1 = g (xn ), imat ce red konvergencije p i
(p) xn+1 p 1 g ( ) lim = (1) . n ( xn )p p!

(9.6.4)

Ako je startna vrijednost x0 dovoljno blizu , iteraciona funkcija n0

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 235

Dokaz: Razvijmo g (x) u okolini do uklju civo (p 1)-ve potencije i napi simo ostatak. Zatim, uvrstimo x = xn , pa dobivamo xn+1 = g (xn ) = g ()+ g ()(xn )+ + g (p) (n ) g (p1) () (xn )p1 + (xn )p , (p 1)! p!

za neki n izmedu xn i . Iskoristimo li da je g () = i pretpostavku (9.6.4), slijedi xn+1 = + odnosno xn+1 = g (p) (n ) (xn )p , p! g (p) (n ) (xn )p . p!

Sada mo zemo primijeniti prethodni Teorem, koji pokazuje da ce iteraciona funkcija konvergirati. Nadalje, to zna ci da xn , pa i n , sto daje tra zenu relaciju.

Kori stenjem prethodnog teorema mo zemo analizirati i Newtonovu metodu za koju je f (x) g (x) = x . f (x) Deriviranjem dobivamo da je g (x) = 1 pa je g ( ) = 0 , uz pretpostavku da je f () = 0. Na sli can na cin, dobivamo g () = f () , f ( ) (f (x))2 f (x)f (x) f (x)f (x) = , (f (x))2 (f (x))2

pa ako je f () = 0, mo zemo pokazati da je red konvergencije Newtonove metode jednak 2. Ako je f () = 0, f () = 0, onda ce red konvergencije biti barem 3.

9.7.

Newtonova metoda za vi sestruke nulto cke

Promotrimo sto ce se dogoditi s konvergencijom Newtonove metode, ako funkcija f ima neprekidnih prvih p + 1 derivacija i p-struku, p 2 nulto cku u . Tada vrijedi f () = f () = = f (p1) () = 0, f (p) () = 0.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 236

Samu funkciju f mo zemo napisati i u obliku f (x) = (x )p h(x), h() = 0. (9.7.1)

Ograni cimo se samo na cjelobrojne p i promatrajmo Newtonovu metodu kao jednostavnu iteraciju, f (x) xn+1 = g (xn ), g (x) = x . f (x) Deriviranjem (9.7.1) dobivamo jednostavniji oblik za derivaciju f (x) = p(x )p1h(x) + (x a)p h (x), pa je g (x) = x Deriviranjem funkcije g dobivamo g (x) = 1 tako da je (x )h(x) . ph(x) + (x )h (x)

h(x) d h(x) (x ) , ph(x) + (x )h (x) dx ph(x) + (x )h (x) g ( ) = 1

1 = 0 za p > 1, p sto pokazuje linearnu konvergenciju. Prema teoremu 9.6.1., faktor konvergencije bit ce g () = 1 1/p, sto je vrlo sporo. U prosjeku to je podjednako brzo kao bisekcija za p = 2 ili cak lo sije od bisekcije za p 3. Kako mo zemo popraviti (ubrzati) Newtonovu metodu za p-struke nulto cke, p 2. Prvo pretpostavimo da znamo p. Deniramo iteracionu funkciju g (x) = x p Tada je g (x) = 1 p f (x) . f (x)

(f (x))2 f (x)f (x) f (x)f (x) = 1 p + p . (f (x))2 (f (x))2

Iskoristimo li oblik funkcije f , dobivamo f (x) = (x )p h(x) f (x) = (x )p1 [ph(x) + (x )h (x)] f (x) = (x )p2 [p(p 1)h(x) + 2p(x )h (x) + (x )2 h (x)], pa je f (x)f (x) 1 lim =1 . x (f (x))2 p

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 237

Odatle odmah slijedi


x

lim g (x) = 0,

sto pokazuje da ova modikacija osigurava barem kvadrati cno konvergentnu metodu. Sto cemo napraviti ako unaprijed ne znamo p? Primijetimo da funkcija u(x) = f (x) (x )p h(x) (x )h(x) = = p 1 f (x) (x ) [ph(x) + (x )h (x)] ph(x) + (x )h (x)

ima jednostruku nulto cku u . Drugim rije cima, obi cna Newtonova metoda, ali primijenjena na u(x) konvergirat ce kvadrati cno, xn+1 = xn gdje je u (x) = u(xn ) , u (xn )

(f (x))2 f (x)f (x) f (x) = 1 u(x), (f (x))2 f (x) sto pokazuje da cemo dobiti kvadrati cnu konvergenciju, iako ne znamo red nulto cke, ali uz ra cunanje jo s jedne derivacije funkcije (f ). Sli cno vrijedi i za metodu sekante, koju cemo ubrzati, kao da radimo s jednostrukim nulto ckama, ako primijenimo metodu sekante za funkciju u xn+1 = xn u(xn ) xn xn1 . u(xn ) u(xn1 )

I u ovom slu caju postoji cijena, a to je ra cunanje f .

9.8.

Hibridna BrentDekkerova metoda

BrentDekkerova metoda smi sljena je kao metoda koja ce imati sigurnu konvergenciju, a nadamo se da ce konvergirati br ze nego metoda sekante, u najboljem slu caju kvadrati cno. Ona ne zahtijeva ra cunanje derivacija, pa ako joj je red konvergencije u prosjeku bolji od sekante, mo zemo o cekivati da ce metoda po brzini biti sli cna Newtonovoj, ali ce imati sigurnu konvergenciju. Metoda se sastoji od tri dijela, koje grubo mo zemo opisati kao inverznu kvadratnu interpolaciju, metodu sekante i metodu bisekcije. Algoritam po cinje metodom sekante koja generira tre cu to cku. Ako se prema nekim kriterijima ta to cka prihva ca kao dobra, mo zemo nastaviti raditi s kvadratnom interpolacijom kroz posljednje tri to cke, ali inverznom (uloga x i y zamijenjena) i time dobivamo cetvrtu to cku. Ako je tre ca to cka odba cena kao lo sa, radi se jedan korak metode bisekcije. Drugim rije cima, metoda se vrti izmedu svoja tri sastavna dijela, a mi se nadamo da ce rijetko koristiti bisekciju.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 238

To cni parametri kad se neka aproksimacija nulto cke prihva ca kao dobra, odnosno odbacuje kao lo sa su dosta slo zeni. Metoda je sastavni dio velikih numeri ckih biblioteka programa, kao sto je IMSL.

9.9.

Primjeri

Prije konkretnih primjera, zanimljivo je napomenuti da se u praksi mo ze sasvim dobro numeri cki procijeniti red konvergencije iterativne metode i taj podatak iskoristiti kao dodatna informacija o konvergenciji metode. Kao najjednostavniji primjer za usporedbu metoda za nala zenje nulto caka uzmimo da treba izra cunati 3 1.5. Taj problem mo zemo interpretirati i kao tra zenje realne pozitivne nulto cke funkcije f (x) = x3 1.5. Primjer 9.9.1. Nulto cka funkcije f (x) = arctg(x) je x = 0, ali Newtonova metoda ne ce konvergirati iz svake startne to cke x0 . Na ci cemo to cku za koju vrijedi
|x0 |

Kako cemo na ci to cku cikliranja? Funkcija f (x) = arctg x je neparna, pa da bismo dobili cikliranje, dovoljno je da tangenta na funkciju u to cki presije ce os x u to cki . Jednad zba tangente na arctg u to cki je y arctg = pa ce tangenta sije ci os x u , ako je arctg = 2 , 1 + 2 1 (x ), 1 + 2

< | | Newtonova metoda sa startom x0 konvergira, |x0 | > | | Newtonova metoda sa startom x0 divergira, |x0 | = | | Newtonova metoda sa startom x0 ciklira.

cime smo dobili nelinearnu jednad zbu po . O cito, postoje dva rje senja, suprotnih predznaka, i nije ih te sko izra cunati metodom bisekcije = 1.39174520027073489.

9. RJESAVANJE NELINEARNIH JEDNADZBI

NELINEARNE JEDNADZBE 239

Nacrtajmo grafove Newtonove metode za sve tri mogu cnosti za x0 , recimo za x0 = 1, x0 = i x0 = 1.5.
y

0.57

1.0

1.69

1.5

2.32

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 240

10. Aproksimacija i interpolacija


10.1. Op ci problem aproksimacije

je problem aproksimacije? Ako su poznate neke informacije o funkciji f , Sto deniranoj na nekom skupu X R, na osnovu tih informacija zelimo f zamijeniti nekom drugom funkcijom na skupu X , tako da su f i bliske u nekom smislu. Skup X je naj ce s ce interval oblika [a, b] (mo ze i neograni cen), ili diskretni skup to caka. Problem aproksimacije javlja se u dvije bitno razli cite formulacije. (a) Znamo funkciju f (analiti cki ili sli cno), ali je njena forma prekomplicirana za ra cunanje. U tom slu caju odaberemo neke informacije o f i po nekom kriteriju odredimo aproksimacionu funkciju . U ovom slu caju mo zemo birati informacije o f koje cemo koristiti. Jednako tako, mo zemo ocijeniti gre sku dobivene aproksimacije, obzirom na pravu vrijednost funkcije f . (b) Ne znamo funkciju f , nego samo neke informacije o njoj, na primjer, vrijednosti na nekom skupu to caka. Zamjenska funkcija odreduje se iz raspolo zivih informacija, koje, osim samih podataka, mogu uklju civati i o cekivani oblik pona sanja podataka, tj. funkcije . U ovom se slu caju ne mo ze napraviti ocjena pogre ske bez dodatnih informacija o nepoznatoj funkciji f . Varijanta (b) je puno ce s ca u praksi. Naj ce s ce se javlja kod mjerenja nekih veli cina, jer, osim izmjerenih podataka, poku savamo aproksimirati i podatke koji se nalaze izmedu izmjerenih to caka. Primijetite da se kod mjerenja javljaju i pogre ske mjerenja, pa postoje posebne tehnike za ubla zavanje tako nastalih gre saka. Funkcija bira se prema prirodi modela, ali tako da bude relativno jednostavna za ra cunanje. Ona obi cno ovisi o parametrima ak , k = 0, . . . , m, koje treba odrediti po nekom kriteriju, (x) = (x; a0 , a1 , . . . , am ). Kad smo funkciju zapisali u ovom obliku, kao funkciju koja ovisi o parametrima ak , onda ka zemo da smo odabrali op ci oblik aproksimacione funkcije.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 241

Oblike aproksimacionih funkcija mo zemo (grubo) podijeliti na: (a) linearne aproksimacione funkcije, (b) nelinearne aproksimacione funkcije. Bitne razlike izmedu ove dvije grupe aproksimacionih funkcija opisujemo u nastavku.

10.1.1.

Linearne aproksimacione funkcije

Op ci oblik linearne aproksimacione funkcije je (x) = a0 0 (x) + a1 1 (x) + + am m (x), gdje su 0 , . . . , m poznate funkcije koje znamo ra cunati. Primijetite da se linearnost ne odnosi na oblik funkcije , ve c na ovisnost o parametrima ak koje treba odrediti. Prednost ovog oblika aproksimacione funkcije je da odredivanje parametara ak obi cno vodi na sustave linearnih jednad zbi. Naj ce s ce kori steni oblici linearnih aproksimacionih funkcija su: 1. algebarski polinomi, k (x) = xk , k = 0, . . . , m, tj. (x) = a0 + a1 x + + am xm . Nije nu zno da (x) zapisujemo u bazi {1, x, . . . , xm }. Vrlo cesto je neka druga baza bitno pogodnija, na primjer, {1, (x x0 ), (x x0 ) (x x1 ), . . . }, gdje su x0 , x1 , . . . zadane to cke; 2. trigonometrijski polinomi, pogodni za aproksimaciju periodi ckih funkcija, recimo, u modeliranju signala. Za funkcije k uzima se m + 1 funkcija iz skupa {1, cos x, sin x, cos 2x, sin 2x, . . . }. Katkad se koristi i faktor u argumentu sinusa i kosinusa koji slu zi za kontrolu perioda, a ponekad se biraju samo parne ili samo neparne funkcije iz ovog skupa; 3. po dijelovima polinomi (splajn funkcije). Ako su zadane to cke x0 , . . . , xn , onda se splajn funkcija na svakom podintervalu svodi na polinom odredenog ksnog (niskog) stupnja, tj.
[xk1 ,xk ]

= pk ,

k = 1, 2, . . . , n,

a pk su polinomi naj ce s ce stupnjeva 1, 2, 3 ili 5. U to ckama xi obi cno se zahtijeva da funkcija zadovoljava jo s i tzv. uvjete ljepljenja vrijednosti funkcije i nekih njenih derivacija ili nekih aproksimacija za te derivacije. Splajnovi se danas cesto koriste zbog dobrih svojstava obzirom na gre sku aproksimacije i kontrolu oblika aproksimacione funkcije.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 242

10.1.2.

Nelinearne aproksimacione funkcije

Naj ce s ce kori steni oblici nelinearnih aproksimacionih funkcija su: 4. eksponencijalne aproksimacije (x) = c0 eb0 x + c1 eb1 x + + cr ebr x , koje imaju n = 2r + 2 nezavisna parametra, a opisuju, na primjer, procese rasta i odumiranja u raznim populacijama, s primjenom u biologiji, ekonomiji i medicini; 5. racionalne aproksimacije b0 + b1 x + + br xr (x) = , c0 + c1 x + + cs xs

koje imaju n = r + s +1 nezavisni parametar, a ne r + s +2, kako formalno pi se. Naime, razlomci se mogu pro sirivati (ili skalirati), pa ako su bi , ci parametri, onda su to i tbi , tci , za t = 0. Zbog toga se uvijek ksira jedan od koecijenata bi ili ci , a koji je to obi cno slijedi iz prirode modela. Ovako denirane racionalne funkcije imaju mnogo bolja svojstva aproksimacije nego polinomi, a pripadna teorija je relativno nova.

10.1.3.

Kriteriji aproksimacije

Interpolacija Interpolacija je zahtjev da se funkcije f i podudaraju na nekom kona cnom skupu to caka. Te to cke obi cno nazivamo cvorovima interpolacije. Ovom zahtjevu se mo ze, ali i ne mora dodati zahtjev da se u cvorovima, osim funkcijskih vrijednosti, poklapaju i vrijednosti nekih derivacija. Drugim rije cima, u najjednostavnijem obliku interpolacije, kad tra zimo samo podudaranje funkcijskih vrijednosti, od podataka o funkciji f koristi se samo informacija o njenoj vrijednosti na skupu od (n + 1) to caka, tj. podaci oblika (xk , fk ), gdje je fk := f (xk ), za k = 0, . . . , n. Parametri a0 , . . . , an (primijetite da parametara mora biti to cno onoliko koliko i podataka!) odreduju se iz uvjeta (xk ; a0 , a1 , . . . , an ) = fk , k = 0, . . . , n,

sto je, op cenito, nelinearni sustav jednad zbi. Ako je aproksimaciona funkcija linearna, onda za parametre ak dobivamo sustav linearnih jednad zbi koji ima to cno n + 1 jednad zbi za n + 1 nepoznanica. Matrica tog sustava je kvadratna, sto bitno olak sava analizu egzistencije i jedinstvenosti rje senja za parametre interpolacije.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 243

Minimizacija pogre ske Minimizacija pogre ske je drugi kriterij odredivanja parametara aproksimacije. Funkcija bira se tako da se minimizira neka odabrana norma pogre ske e(x) = f (x) (x) u nekom odabranom prostoru funkcija za na nekoj domeni X . Ove aproksimacije, cesto zvane i najbolje aproksimacije po normi, dijele se na diskretne i kontinuirane, prema tome minimizira li se norma pogre ske e na diskretnom ili kontinuiranom skupu podataka X . Standardno se kao norme pogre ske koriste 2-norma i -norma. Za 2-normu pripadna se aproksimacija zove srednjekvadratna, a metoda za njeno nala zenje zove se metoda najmanjih kvadrata. Funkcija , odnosno njeni parametri, se tra ze tako da bude min e(x) 2 .

U diskretnom slu caju X = {x0 , . . . , xn }, kad raspi semo prethodnu relaciju, dobivamo
n k =0

(f (xk ) (xk ))2 min,

a u kontinuiranom
b

(f (x) (x))2 dx min .

Preciznije, minimizira se samo ono pod korijenom, jer to daje jednako rje senje kao da se minimizira i korijen! Za sto se ba s minimiziraju kvadrati gre saka? To ima veze sa statistikom, jer se izmjereni podaci obi cno pona saju kao normalna slu cajna varijabla, s o cekivanjem koje je to cna vrijednost podatka. Odgovaraju ci kvadrati su varijanca i nju treba minimizirati. U slu caju -norme pripadna se aproksimacija zove minimaks aproksimacija, a parametri se biraju tako da se nade min e(x)
.

U diskretnom slu caju tra zi se


k =0,...,n

max |f (xk ) (xk )| min, max |f (x) (x)| min .

a u kontinuiranom
x[a,b]

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 244

U nekim problemima ovaj je tip aproksimacija po zeljniji od srednjekvadratnih, jer se tra zi da maksimalna gre ska bude minimalna, tj. najmanja mogu ca, ali ih je op cenito mnogo te ze izra cunati (na primjer, dobivamo problem minimizacije nederivabilne funkcije!). Napomenimo jo s da smo u prethodnim primjerima koristili uobi cajene (diskretne i kontinuirane) norme na odgovaraju cim prostorima funkcija, ovisno o domeni X . Naravno, normirani prostor u kojem tra zimo aproksimacionu funkciju ovisi o problemu kojeg rje savamo. Nerijetko u praksi, norme, pored funkcije uklju cuju i neke njene derivacije. Primjer takve norme je norma
b

f =
a

(f (x))2 + (f (x))2 dx,

recimo, na prostoru C 1 [a, b] svih funkcija koje imaju neprekidnu prvu derivaciju na segmentu [a, b], ili na nekom jo s ve cem prostoru. Pri kraju ovog uvoda u op ci problem aproksimacije funkcija postaje jasno koji su klju cni matemati cki problemi koje treba rije siti: egzistencija i jedinstvenost rje senja problema aproksimacije, sto ovisi o tome koje funkcije f aproksimiramo kojim funkcijama (dva prostora) i kako mjerimo gre sku, analiza kvalitete dobivene aproksimacije vrijednost najmanje pogre ske i pona senje funkcije gre ske e (jer norma je ipak samo broj), konstrukcija algoritama za ra cunanje najbolje aproksimacije. Objasnimo jo s koja je uloga parametrizacije aproksimacionih funkcija. O cito, rije c je o izboru prikaza ili baze u prostoru aproksimacionih funkcija ili na cinu zadavanja tog prostora. Dok prva dva problema uglavnom ne ovise o parametrizaciji, kao sto cemo vidjeti, dobar izbor baze je klju can korak u konstrukciji to cnih i ekasnih algoritama. Lako se vidi da problem interpolacije mo zemo smatrati specijalnim, ali posebno va znim slu cajem aproksimacije po normi na diskretnom skupu X cvorova interpolacije uz neku od standardnih normi na kona cnodimenzionalnim prostorima. Posebnost se ogleda u cinjenici da se dodatno tra zi da je minimum norme pogre ske jednak nuli, sto je onda ekvivalentno odgovaraju cim uvjetima interpolacije. Na primjer, uzmimo da je X = {x0 , . . . , xn } i tra zimo aproksimacionu funkciju u prostoru Pn svih polinoma stupnja najvi se n. Kao kriterij aproksimacije uzmimo neku p-normu (1 p ) vektora e pogre ske funkcijskih vrijednosti na skupu X , tj. zahtjev je
n

= f

=
k =0

|f (xk ) (xk )|p

1/p

min,

1 p < ,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 245

odnosno e O cito je e
p

= f

= max |f (xk ) (xk )| min .


k =0,...,n

= 0 ekvivalentno uvjetima interpolacije f (xk ) = (xk ), k = 0, . . . , n,

samo nije jasno da li se to mo ze posti ci, tj. da li postoji takva aproksimaciona funkcija Pn za koju je minimum gre ske jednak nuli, tako da je i interpolaciona funkcija. U sljede cem odjeljku pokazat cemo da je odgovor potvrdan za ovaj primjer.

10.2.

Interpolacija polinomima

Pretpostavimo da imamo funkciju f zadanu na diskretnom skupu razli citih to caka xk , k = 0, . . . , n, tj. xi = xj za i = j . Poznate funkcijske vrijednosti u tim to ckama skra ceno ozna cavamo s fk = f (xk ). Primijetite da pretpostavka o razli citosti to caka nije bitno ograni cenje. Naime, kad bismo dozvolili da je xi = xj uz i = j , ili f ne bi bila funkcija (ako je fi = fj ) ili bismo imali redundantan podatak, koji mo zemo ispustiti (ako je fi = fj ). Ako je [a, b] segment na kojem koristimo interpolaciju (i promatramo gre sku), u praksi su to cke obi cno numerirane tako da vrijedi a x0 < x1 < < xn b.

10.2.1.

Egzistencija i jedinstvenost interpolacionog polinoma

Za polinomnu interpolaciju vrijedi sljede ci teorem. Teorem 10.2.1. Neka je n N0 . Za zadane to cke (xk , fk ), k = 0, . . . , n, gdje je xi = xj za i = j , postoji jedinstveni (interpolacioni) polinom stupnja najvi se n (x) := pn (x) = a0 + a1 x + + an xn za koji vrijedi pn (xk ) = fk , k = 0, . . . , n. Dokaz: Neka je pn = a0 + a1 x + + an xn polinom stupnja najvi se n. Uvjete interpolacije mo zemo napisati u obliku pn (x0 ) = a0 + a1 x0 + + an xn 0 = f0 pn (x1 ) = a0 + a1 x1 + + an xn 1 = f1 pn (xn ) = a0 + a1 xn + + an xn n = fn .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 246

Drugim rije cima, treba provjeriti ima li ovaj sustav od (n + 1)-e linearne jednad zbe s (n + 1)-om nepoznanicom a0 , . . . , an jedinstveno rje senje. Dovoljno je provjeriti da li je (kvadratna) matrica tog linearnog sustava regularna. To mo zemo napraviti ra cunanjem vrijednosti determinante te matrice. Ta determinanta je tzv. Vandermondeova determinanta 1 x0 1 x1 . . Dn = . . . . 1 xn1 1 xn Deniramo determinantu koja nali ci funkcija od x: 1 1 . Vn (x) = . . x2 0 x2 1 . . . 2 xn1 x2 n xn 0 xn 1 . . . xn n1 xn n

na Dn , samo umjesto xn , posljednji je redak x0 x1 . . . x2 0 2 x1 . . . 2 xn1 x2 xn 0 xn 1 . . . xn n1 n x

1 xn1 1 x

Primijetimo da je Dn = Vn (xn ). Gledamo li Vn (x) kao funkciju od x, lako se vidi razvojem po posljednjem retku, da je to polinom stupnja najvi se n u varijabli x, s vode cim koecijentom Dn1 uz xn . S druge strane, ako za x redom uvr stavamo x0 , . . . , xn1 , determinanta Vn (x) ce imati dva jednaka retka pa ce biti Vn (x0 ) = Vn (x1 ) = = Vn (xn1 ) = 0, tj. to cke x0 , . . . , xn1 su nulto cke polinoma Vn (x) stupnja n. Da bismo to cno odredili polinom stupnja n, ako su poznate njegove nulto cke, potrebno je samo znati njegov vode ci koecijent. U ovom slu caju, pokazali smo da je to Dn1 . Odatle odmah slijedi da je Vn (x) = Dn1 (x x0 ) (x x1 ) (x xn1 ). Kad uvrstimo x = xn , dobivamo rekurzivnu relaciju za Dn Dn = Dn1 (xn x0 ) (xn x1 ) (xn xn1 ). Ako znamo da je D0 = 1, sto je trivijalno, dobivamo da je Dn =
0j<in

(xi xj ).

Budu ci da je xi = xj za i = j , onda je Dn = 0, tj. matrica linearnog sustava je regularna, pa postoji jedinstveno rje senje a0 , . . . , an za koecijente polinoma pn , odnosno jedinstven interpolacioni polinom.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 247

Ovaj teorem u potpunosti rje sava prvo klju cno pitanje egzistencije i jedinstvenosti rje senja problema polinomne interpolacije u njegovom najjednostavnijem obliku, kad su zadane funkcijske vrijednosti u medusobno razli citim to ckama. Takav oblik interpolacije, kad tra zena funkcija (u ovom slu caju polinom) mora interpolirati samo funkcijske vrijednosti zadane funkcije, obi cno zovemo Lagrangeova interpolacija. U op cenitijem slu caju, mo zemo zahtijevati interpolaciju zadanih vrijednosti funkcije i njezinih uzastopnih derivacija. Takvu interpolaciju zovemo Hermiteova interpolacija. Ne sto kasnije cemo pokazati da problem Hermiteove interpolacije mo zemo rije siti kao grani cni slu caj Lagrangeove, kad dozvolimo vi sestruko ponavljanje istih cvorova, tj. otpustimo ograni cenje na medusobnu razli citost cvorova. Za po cetak, moramo rije siti preostala dva problema vezana uz polinomnu Lagrangeovu interpolaciju, a to su: konstrukcija algoritama i analiza gre ske.

10.2.2.

Potrebni algoritmi

Koje algoritme trebamo? Odgovor, naravno, ovisi o tome sto zelimo posti ci interpolacijom. Kao i kod svih aproksimacija, o cita izravna primjena je zamjena funkcijskih vrijednosti f (x) vrijednostima interpolacionog polinoma pn (x), i to u to ckama x koje u principu nisu cvorovi interpolacije, posebno ako vrijednosti od f ne znamo u ostalim to ckama, ili se f te sko ra cuna, pa smo jedva izra cunali i ove vrijednosti od f koje smo iskoristili za interpolaciju. Dakle, sigurno trebamo algoritam za ra cunanje vrijednosti interpolacionog polinoma u nekoj zadanoj to cki x koja nije cvor. Naime, zato sto interpoliramo, u cvorovima je lako vrijednosti od f su poznate i jednake onima od pn , pa ih je dovoljno potra ziti u tablici. To caka x u kojima zelimo izra cunati pn (x) mo ze biti vrlo mnogo, a gotovo nikad nije samo jedna. Zbog toga se problem ra cunanja vrijednosti pn (x) uvijek rje sava u dvije faze: 1. prvo nademo polinom pn , jer on ne ovisi o to cki x, ve c samo o zadanim podacima (xk , fk ), k = 0, . . . , n, 2. zatim, za svaku zadanu to cku x izra cunamo pn (x). Prvu fazu je dovoljno napraviti samo jednom i zato svaku od ovih faza treba realizirati posebnim algoritmom. Dodatno, zelimo sto br zi algoritam, posebno u drugoj fazi, jer se on tamo puno puta izvr sava. Medutim, ne cemo zahtijevati brzinu na u strb stabilnosti, ako se to mo ze izbje ci, bez ve ceg gubitka brzine. zna Pogledajmo detaljnije prvu fazu. Sto ci na ci polinom pn ? Broj podataka n + 1 u potpunosti odreduje vektorski prostor polinoma Pn u kojem, prema teo-

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 248

remu 10.2.1, postoji jedinstveni polinom pn koji interpolira zadane podatke. Izaberimo neku bazu {b0 , b1 , . . . , bn } u tom prostoru Pn . Polinom pn se mo ze jednozna cno prikazati kao linearna kombinacija polinoma bi iz te baze. Dakle, da bismo na sli pn , treba (i dovoljno je) na ci koecijente ai u prikazu
n

pn =
i=0

ai bi .

Njih mo zemo na ci tako da u ovu relaciju uvrstimo sve uvjete interpolacije


n

pn (xk ) =
i=0

ai bi (xk ) = fk ,

k = 0, . . . , n,

i tako dobijemo linearni sustav reda n + 1 za nepoznate koecijente. Matrica tog linearnog sustava je sigurno regularna (doka zite!), a njezini elementi imaju oblik Bi+1,k+1 = bi (xk ), za i, k = 0, . . . , n. U pripadnom algoritmu, prvo treba izra cunati sve elemente matrice linearnog sustava, a zatim ga rije siti. Ako pretpostavimo da znamo prikaze svih polinoma bi u standardnoj bazi i koristimo Hornerovu shemu za izvrednjavanje u svim to ckama, onda svako izvrednjavanje traje najvi se O (n) operacija. Takvih izvrednjavanja ima najvi se (n + 1)2 , pa sve elemente matrice sustava mo zemo izra cunati s najvi se O (n3 ) operacija. Za posebne izbore baza i cvorova, ovaj broj operacija mo ze biti i bitno manji. Gaussovim eliminacijama ili LR faktorizacijom mo zemo rije siti dobiveni line3 arni sustav za najvi se O (n ) operacija. Dakle, ukupan broj operacija u algoritamu za prvu fazu je najvi se reda veli cine O (n3 ). To, samo po sebi i nije tako lo se, jer se izvr sava samo jednom. Medutim, u nastavku cemo pokazati da pa zljivim izborom baze to mo zemo napraviti i bitno br ze. Algoritam za izvrednjavanje pn (x) u drugoj fazi, takoder, fundamentalno ovisi o izboru baze u Pn . Naravno, iz prve faze treba zapamtiti izra cunati vektor koecijenata ai . Tada se ra cunanje pn (x) u zadanoj to cki x svodi na ra cunanje sume
n

pn (x) =
i=0

ai bi (x).

U najop cenitijem obliku, to cno po ovoj relaciji, imamo n + 1-u Hornerovu shemu za izvrednjavanje bi (x) i jo s jedan skalarni produkt (ili linearnu kombinaciju). Ukupno trajanje je O (n2 ), sto je vrlo skupo, kad usporedimo s obi cnom Hornerovom shemom. Uo cite da ova dva op ca algoritma za interpolaciju mo zemo sa zeto prikazati u obliku: 1. izaberi bazu u Pn i nadi koecijente od pn u toj bazi,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 249

2. u zadanoj to cki x izra cunaj linearnu kombinaciju polinoma baze s poznatim koecijentima u linearnoj kombinaciji. Iz prethodne analize slijedi da bi bilo vrlo po zeljno odabrati bazu tako da druga faza ima najvi se O (n) operacija, tj. da traje linearno, a ne kvadratno, u funkciji od n. Kad u ovom kontekstu pogledamo tvrdnju i dokaz teorema 10.2.1., odmah mo zemo zaklju citi da to odgovara izboru standardne baze bi (x) = xi , i = 0, . . . , n, u prostoru Pn . U prvoj fazi za nala zenje koecijenata interpolacionog polinoma u standardnoj bazi ne moramo koristiti samo ve c spomenute numeri cke metode. Osim njih, uz malo pa znje, mo zemo koristiti cak i Cramerovo pravilo. Determinanta Dn sustava je Vandermondeova, a sve ostale potrebne determinante se jednostavnim razvojem po stupcu svode na linearne kombinacije Vandermondeovih (za 1 manjeg reda). Ako njih izrazimo preko Dn , dobivamo opet algoritam koji treba O (n3 ) operacija. Nadalje, vidimo da se druga faza svodi upravo na Hornerovu shemu, tj. ima ja linearno trajanje. Cak ce od toga, sto se brzine ti ce, ovim izborom baze dobivamo optimalan najbr zi mogu ci algoritam za izvrednjavanje u drugoj fazi. Na zalost, u pogledu stabilnosti, situacija je mnogo manje ru zi casta, posebno u prvoj fazi. Matrica sustava mo ze imati skoro linearno zavisne retke, a da cvorovi uop ce nisu patolo ski rasporedeni. Dovoljno je samo da su razumno bliski i relativno daleko od nule ( sto je centar baze). Na primjer xk = k + 10p , k = 0, . . . , n,

gdje je p iole ve ci pozitivni eksponent, recimo p = 5. Zbog toga se ovaj izbor baze ne koristi u praksi, ve c samo za dokazivanje u teoriji, jer baza ne ovisi o cvorovima. Problemu izbora baze za prikaz interpolacionog polinoma mo zemo, sasvim op cenito, pristupiti na 3 na cina. 1. Jednostavna baza, komplicirani koecijenti. Fiksiramo jednostavnu bazu u Pn , neovisno o zadanim podacima, ali tako da dobijemo brzo izvrednjavanje. Zatim nademo koecijente od pn u toj bazi. Sva ovisnost o zadanim podacima ulazi u koecijente, pa je prva faza spora. 2. Jednostavni koecijenti, komplicirana baza. Podijelimo ovisnost o zadanim podacima tako da koecijenti jednostavno ovise o zadanim podacima i lako se ra cunaju (na primjer, jednaki su zadanim funkcijskim vrijednostima fk ). Tada je prva faza brza, ali zato baza komplicirano ovisi o cvorovima, pa je druga faza spora, jer u svakoj to cki x izvrednjavamo sve funkcije baze. 3. Kompromis izmedu baze i koecijenata. Pustimo da baza jednostavno ovisi o cvorovima, a koecijenti mogu ovisiti o svim zadanim podacima, ali tako da dobijemo jednostavne algoritme u obje faze.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 250

Ove pristupe je najlak se ilustrirati preko slo zenosti rje savanja linearnog sustava za koecijente. Prvim pristupom dobivamo puni linearni sustav za cije rje savanje treba (n3 ) operacija. Ako baza ne ovisi o cvorovima, taj sustav mo ze biti vrlo nestabilan, kao u ranijem primjeru standardne baze. Drugi pristup vodi na dijagonalni linearni sustav u kojem se rje senje cita ili traje najvi se O (n) operacija. No, tada je izvrednjavanje u svakoj to cki sporo, jer svi polinomi baze imaju puni stupanj n. Primjer takve baze je tzv. Lagrangeova baza. U zadnjem pristupu bazu izaberemo tako da dobijemo (donje)trokutasti linearni sustav. Za nala zenje koecijenata tada trebamo samo O (n2 ) operacija. Tako dobivamo tzv. Newtonovu bazu u kojoj stupnjevi polinoma bi rastu, tj. vrijedi deg bi = i, kao i u standardnoj bazi. Osim toga, za bi vrijedi jednostavna rekurzija koja vodi na brzi linearni algoritam izvrednjavanja. Ova 3 pristupa mo zemo vrlo lijepo ilustrirati na jednostavnom primjeru linearne interpolacije, tj. kad je n = 1. Problem linearne interpolacije se svodi na nala zenje jednad zbe pravca p koji prolazi kroz dvije zadane to cke (x0 , f0 ) i (x1 , f1 ). Standardni oblik jednad zbe pravca je p(x) = a0 + a1 x. Iz uvjeta interpolacije dobivamo linearni sustav za koecijente a0 i a1 p(x0 ) = a0 + a1 x0 = f0 p(x1 ) = a0 + a1 x1 = f1 , odakle slijedi a0 = ili f0 x1 f1 x0 , x1 x0 a1 = f1 f0 , x1 x0

p(x) =

f0 x1 f1 x0 f1 f0 + x. x1 x0 x1 x0

Pravac p mo zemo napisati i kao te zinsku sredinu zadanih funkcijskih vrijednosti f0 i f1 , u obliku p(x) = f0 b0 (x) + f1 b1 (x), gdje su b0 (x) i b1 (x) funkcije koje treba na ci. Iz uvjeta interpolacije sada dobivamo jednad zbe p(x0 ) = f0 b0 (x0 ) + f1 b1 (x0 ) = f0 p(x1 ) = f0 b0 (x1 ) + f1 b1 (x1 ) = f1 . Bez dodatnih pretpostavki, iz ovih jednad zbi ne mo zemo odrediti b0 (x) i b1 (x), jer takvih funkcija ima puno. Pretpostavimo stoga da su obje funkcije, takoder, polinomi prvog stupnja i to specijalnog oblika, tako da ovaj linearni sustav postane dijagonalan. Tada iz vandijagonalnih elemenata dobivamo uvjete b1 (x0 ) = 0, b0 (x1 ) = 0,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 251

a onda za dijagonalne elemente dobivamo b0 (x0 ) = 1, b1 (x1 ) = 1.

Vidmo da su polinomi b0 i b1 rje senja specijalnih problema interpolacije bi (xk ) = ik , i, k = 0, 1,

tj. bi mora biti nula u svim cvorovima osim i-tog, a u i-tom mora imati vrijednost 1. To zna ci da znamo sve nulto cke od bi , a vrijednost vode ceg koecijenta izlazi iz bi (xi ) = 1. Odmah mo zemo napisati te dvije funkcije baze u obliku b0 (x) = pa je x x1 , x0 x1 b1 (x) = x x0 , x1 x0

x x1 x x0 + f1 x0 x1 x1 x0 sto odgovara jednad zbi pravca kroz dvije to cke. Ovo je Lagrangeov oblik interpolacionog polinoma. Vidimo da funkcije baze b0 i b1 ovise o oba cvora interpolacije. p(x) = f0 Jednad zbu pravca mo zemo napisati i tako da pravac prolazi kroz jednu to cku (x0 , f0 ) i ima zadani koecijent smjera p(x) = f0 + k (x x0 ). Ovaj oblik automatski zadovoljava prvi uvjet interpolacije p(x0 ) = f0 , a iz drugog uvjeta p(x1 ) = f0 + k (x1 x0 ) = f1 f1 f0 , x1 x0 sto je poznata formula za koecijent smjera pravca kroz dvije to cke. Dobiveni oblik za p f1 f0 p(x) = f0 + (x x0 ) x1 x0 je Newtonov oblik interpolacionog polinoma. Njega mo zemo interpretirati na jo s nekoliko na cina. Prvo, to je i Taylorov oblik za p napisan oko to cke x0 , s tim da je podijeljena razlika k ba s derivacija od p u to cki x0 (i, naravno, svakoj drugoj to cki). k= Nadalje, prvi clan ovog oblika za p, u ovom slu caju konstanta f0 , je interpolacioni polinom stupnja 0 za zadanu prvu to cku (x0 , f0 ). Dakle, ovaj oblik za p odgovara korekciji interpolacionog polinoma kroz prethodne to cke, kad dodamo jo s jednu novu to cku (x1 , f1 ). To isto vrijedi i u op cem slu caju. se lako izra cuna k

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 252

Na kraju, ovaj oblik pravca mo zemo dobiti tako da u prostoru P1 izaberemo bazu b0 , b1 , koja daje donjetrokutasti linearni sustav za koecijente c0 i c1 u prikazu p(x) = c0 b0 (x) + c1 b1 (x). Uvjeti interpolacije daju jednad zbe p(x0 ) = c0 b0 (x0 ) + c1 b1 (x0 ) = f0 p(x1 ) = c0 b0 (x1 ) + c1 b1 (x1 ) = f1 . Kako cemo dobiti donjetrokutasti linearni sustav? Postavljamo redom uvjete na polinome baze, stupac po stupac, i jo s imamo na umu prethodnu interpretaciju dopunjavanja ranijeg interpolacionog polinoma. Za polinom b0 u prvom stupcu nemamo nikavih uvjeta, pa uzmemo najjednostavniju oblik, koja odgovara interpolaciji stupnja 0 u prvom cvoru, a to je b0 (x) = 1. Iz prve jednad zbe (supstitucija unaprijed) odmah dobivamo i c0 = f0 . Za polinom b1 u drugom stupcu dobivamo to cno jedan uvjet b1 (x0 ) = 0. Opet uzmemo najjednostavniji oblik polinoma koji zadovoljava taj uvjet, a to je b1 (x) = (x x0 ). To, usput, odgovara i dizanju stupnja interpolacije kod dodavanja novog cvora. Supstitucijom unaprijed izlazi i koecijent c1 c1 = f1 f0 . x1 x0

Kao sto cemo vidjeti, ovaj postupak se mo ze nastaviti. Op cenito, iz uvjeta da stupac s polinomom bi ima donjetrokutasti oblik dobivamo da bi mora imati nulto cke u svim prethodnim cvorovima x0 , . . . , xi1 , pa mo zemo uzeti bi (x) = (x x0 ) (x xi1 ), sto opet odgovara dizanju stupnja. Kako op cenito izgledaju koecijenti ci , opisat cemo malo kasnije.

10.2.3.

Lagrangeov oblik interpolacionog polinoma

Da bismo na sli koecijente interpolacionog polinoma, nije nu zno rje savati linearni sustav za koecijente. Interpolacioni polinom pn mo zemo odmah napisati kori stenjem tzv. Lagrangeove baze {k , k = 0, . . . , n} prostora polinoma Pn
n

pn (x) =
k =0

fk k (x),

(10.2.1)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 253

pri cemu je k (x) = (x x0 ) (x xk1 ) (x xk+1 ) (x xn ) (xk x0 ) (xk xk1 ) (xk xk+1 ) (xk xn ) n k (x) x xi = := , k = 0, . . . , n. k (xk ) i=0 xk xi
i=k

(10.2.2)

Polinomi k su stupnja n, pa je pn polinom stupnja najvi se n. Osim toga, vrijedi k (xi ) = 0, za i = k , 1, za i = k .

Uvrstimo li to u (10.2.1), odmah slijedi da se suma u (10.2.1) svodi na jedan jedini clan za i = k , tj. da vrijedi pn (xk ) = fk . Oblik (10.2.1)(10.2.2) zove se Lagrangeov oblik interpolacionog polinoma. Taj polinom mo zemo napisati u jo s jednom, zgodnijem obliku. Deniramo
n

(x) = pa je k (x) =

k =0

(x xk ),

Uvr stavanjem u (10.2.1) dobivamo da je pn (x) = (x) Uo cimo da je

(x) . (x xk ) k (xk ) fk . k =0 (x xk ) k (xk )


n

(10.2.3)

k (xk ) = (xk ), pa (10.2.3) mo zemo pisati kao pn (x) = (x) fk . k =0 (x xk ) (xk )


n

(10.2.4)

Ova se forma mo ze koristiti za ra cunanje vrijednosti polinoma u to cki x = xk , k = 0, . . . , n. Prednost je sto se za svaki novi x ra cuna samo (x) i (x xk ), dok se k (xk ) = (xk ) izra cuna samo jednom za svaki k i cuva u tablici, jer ne ovisi o x. Ukupan broj operacija je proporcionalan s n2 , a za ra cunanje u svakoj novoj to cki x, trebamo jo s reda veli cine n operacija. Ipak, u praksi se ne koristi ovaj oblik interpolacionog polinoma, ve c ne sto bolji Newtonov oblik. Lagrangeov oblik interpolacionog polinoma uglavnom se koristi u teoretske svrhe (za dokaze).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 254

10.2.4.

Ocjena gre ske interpolacionog polinoma

Ako znamo jo s neke informacije o funkciji f , mo zemo napraviti i ocjenu gre ske interpolacionog polinoma. Teorem 10.2.2. Pretpostavimo da funkcija f ima (n + 1)-u derivaciju na segmentu [a, b] za neki n N0 . Neka su xk [a, b], k = 0, . . . , n, medusobno razli citi cvorovi interpolacije, tj. xi = xj za i = j , i neka je pn interpolacioni polinom za funkciju f u tim cvorovima. Za bilo koju to cku x [a, b] postoji to cka iz otvorenog intervala xmin := min{x0 , . . . , xn , x} < < max{x0 , . . . , xn , x} =: xmax takva da za gre sku interpolacionog polinoma vrijedi e(x) := f (x) pn (x) =
n

(x) f (n+1) ( ), (n + 1)!

(10.2.5)

pri cemu je (x) :=

k =0

(x xk ).

Dokaz: Ako je x = xk , za neki k {0, . . . , n}, iz uvjeta interpolacije i denicije polinoma dobivamo da su obje strane u (10.2.5) jednake 0, pa teorem o cito vrijedi ( mo ze biti bilo koji). Pretpostavimo stoga da x nije cvor interpolacije. Tada je (x) = 0 i gre sku interpolacije mo zemo prikazati u obliku e(x) = f (x) pn (x) = (x)s(x), s time da je s(x) korektno deniran cim x nije cvor. Uzmimo sad da je x ksan i deniramo funkciju g (t) = e(t) (t)s(x) = e(t) (t) e(x) , (x) t [a, b]. (10.2.6)

Funkcija pogre ske e ima to cno onoliko derivacija (po t) koliko i f , i one su neprekidne kad su to i odgovaraju ce derivacije od f . Budu ci da x nije cvor, to isto vrijedi i za (n+1) funkciju g , tj. g je korektno denirana na [a, b]. Nadimo koliko nulto caka ima funkcija g . Ako za t uvrstimo xk , dobivamo g (xk ) = e(xk ) (xk ) Jednako tako je i g (x) = e(x) e(x) = 0. e(x) = 0, (x) k = 0, . . . , n.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 255

i ja Drugim rije cima, g ima barem n + 2 nulto cke na [a, b]. Cak ce, sve te nulto cke su na segmentu [xmin , xmax ]. Budu ci da je g derivabilna na tom segmentu, po Rolleovom teoremu slijedi da g ima barem n + 1 nulto cku na otvorenom intervalu (xmin , xmax ). Induktivnom primjenom Rolleovog teorema zaklju cujemo da g (j ) ima bar n + 2 j nulto caka na (xmin , xmax ), za j = 0, . . . , n + 1. Dakle, za j = n + 1 dobivamo da (n+1) g ima bar jednu nulto cku (xmin , xmax ). pa je e(n+1) (t) = f (n+1) (t), (n+1) (t) = (n + 1)!. Uvr stavanjem u n + 1-u derivaciju denicione formule (10.2.6) za g dobivamo g (n+1) (t) = e(n+1) (t) (n+1) (t) e(x) e(x) = f (n+1) (t) (n + 1)! . (x) (x)

Iskoristimo jo s da je pn polinom stupnja najvi se n, a polinom stupnja n + 1,

Kona cno, ako uva zimo da je g (n+1) ( ) = 0, onda je 0 = g (n+1) ( ) = f (n+1) ( ) (n + 1)! odnosno e(x) = sto je upravo (10.2.5). Ako je f (n+1) ograni cena na [a, b] ili, ja ce, ako je f C n+1 [a, b], onda se iz prethodnog teorema mo ze dobiti sljede ca ocjena gre ske interpolacionog polinoma za funkciju f u to cki x [a, b] |f (x) pn (x)| | (x)| Mn+1 , (n + 1)! Mn+1 := max |f (n+1) (x)|.
x[a,b]

e(x) , (x)

(x) f (n+1) ( ), (n + 1)!

Ova ocjena direktno slijedi iz (10.2.5), a korisna je ako relativno jednostavno mo zemo izra cunati ili odozgo ocijeniti Mn+1 .

10.2.5.

Newtonov oblik interpolacionog polinoma

Lagrangeov oblik interpolacionog polinoma nije dobar kad zelimo dizati stupanj interpolacionog polinoma da bismo eventualno pobolj sali aproksimaciju i smanjili gre sku, zbog toga sto interpolacioni polinom moramo ra cunati od po cetka. Postoji forma interpolacionog polinoma kod koje je mnogo lak se dodavati to cke interpolacije, tj. dizati stupanj interpolacionog polinoma. Neka je pn1 interpolacioni polinom koji interpolira funkciju f u to ckama xk , k = 0, . . . , n 1. Neka je pn

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 256

interpolacioni polinom koji interpolira funkciju f jo s i u to cki xn . Polinom pn tada mo zemo napisati u obliku pn (x) = pn1 (x) + c(x), gdje je c korekcija, polinom stupnja n. Takoder, mora vrijediti c(xk ) = pn (xk ) pn1 (xk ) = f (xk ) f (xk ) = 0, k = 0, . . . , n 1 . (10.2.7)

Vidimo da su xk nulto cke od c, pa ga mo zemo napisati u obliku c(x) = an (x x0 ) (x xn1 ). Nadalje, iz zadnjeg uvjeta interpolacije pn (xn ) = f (xn ), dobivamo f (xn ) = pn (xn ) = pn1 (xn ) + c(xn ) = pn1 (xn ) + an (xn x0 ) (xn xn1 ), odakle lako izra cunavamo vode ci koecijent an polinoma c an = f (xn ) pn1 (xn ) f (xn ) pn1 (xn ) = . (xn x0 ) (xn xn1 ) (xn )

Nakon ovog, imamo sve elemente za ra cunanje pn (x) u bilo kojoj to cki x, kori stenjem relacije (10.2.7). Taj koecijent bit ce n-ta podijeljena razlika, u oznaci an = f [x0 , x1 , . . . , xn ]. Drugim rije cima, dobivamo rekurzivnu formulu za podizanje stupnja interpolacionog polinoma pn (x) = pn1 (x) + (x x0 ) (x xn1 )f [x0 , . . . , xn ]. (10.2.8)

Da bismo bolje opisali an , vratimo se na Lagrangeov oblik interpolacionog polinoma. Primijetimo da je an koecijent uz vode cu potenciju xn u pn . Iskoristimo relaciju (10.2.4), tj. nadimo koecijent uz xn u toj relaciji. Dobivamo f [x0 , x1 , . . . , xn ] = f (xk ) . k =0 (xk )
n

(10.2.9)

Iz formule (10.2.9) slijede neka svojstva podijeljenih razlika. Ako permutiramo cvorove, opet dobijemo istu podijeljenu razliku. Druga korisna formula je rekurzivna denicija podijeljenih razlika f [x0 , . . . , xn ] = f [x1 , . . . , xn ] f [x0 , . . . , xn1 ] . xn x0

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 257

Izvedimo tu formulu. Vrijedi f [x1 , . . . , xn ] = = f (xk ) k =1 (xk x1 ) (xk xk 1 ) (xk xk +1 ) (xk xn )


n1 n

n1

f (xk )(xk x0 ) k =1 (xk x0 ) (xk xk 1 ) (xk xk +1 ) (xk xn ) f (xn )(xn x0 ) + (xn x0 ) (xn xn1 )

f [x0 , . . . , xn1 ] = =

n1

f (xk ) k =0 (xk x0 ) (xk xk 1 ) (xk xk +1 ) (xk xn1 ) f (xk )(xk xn ) k =1 (xk x0 ) (xk xk 1 ) (xk xk +1 ) (xk xn ) f (x0 )(xn x0 ) . (x0 x1 ) (x0 xn )

Oduzimanjem dobivamo f [x1 , . . . , xn ] f [x0 , . . . , xn1 ]


n1

f (xk )(xn x0 ) k =1 (xk x0 ) (xk xk 1 ) (xk xk +1 ) (xk xn ) f (xn )(xn x0 ) f (x0 )(xn x0 ) + + (xn x0 ) (xn xn1 ) (x0 x1 ) (x0 xn ) n f (xk ) = (xn x0 ) f [x0 , . . . , xn ], = (xn x0 ) k =0 (xk ) =

cime je dokazana tra zena formula. Ostaje jo s vidjeti sto je start rekurzije za podijeljenje razlike. Ako znamo da je konstanta koja prolazi to ckom (x0 , f (x0 )), interpolacioni polinom stupnja 0, onda je a0 = f [x0 ] = f (x0 ). Jednako tako vrijedi f [xk ] = f (xk ),

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 258

pa tablicu podijeljenih razlika lako sastavljamo. xk x0 x1 . . . xn1 xn f [xk ] f [x0 ] f [x0 , x1 ] f [x1 ] . . . f [xn1 ] f [xn1 , xn ] f [xn ] f [x1 , x2 ] . . . f [xn2 , xn1 ] f [xn2 , xn1 , xn ] f [x0 , x1 , x2 ] . . . .. .. . . f [x0 , . . . , xn ] f [xk , xk+1 ] f [xk , xk+1 , xk+2 ] f [x0 , . . . , xn ]

Dakle, kad uva zimo rekurziju i oblik polinoma c(x) u (10.2.8), dobivamo da je oblik Newtonovog interpolacionog polinoma pn (x) = f [x0 ] + (x x0 )f [x0 , x1 ] + (x x0 ) (x x1 )f [x0 , x1 , x2 ] + + (x x0 ) (x xn1 )f [x0 , x1 , . . . , xn ]. Primijetite da nam od tablica podijeljenih razlika treba samo gornja dijagonala, pa cemo se u ra cunanju podijeljenih razlika mo ci slu ziti jednodimenzionalnim poljem. Pretpostavimo da je na po cetku algoritma u i-tom elementu polja f spremljena funkcijska vrijednost f (xi ). Na kraju algoritma u polju f ostavit cemo redom f [x0 ], f [x0 , x1 ], . . . , f [x0 , . . . , xn ]. Algoritam 10.2.1. (Algoritam ra cunanja podijeljenih razlika) for i := 1 to n do for j := n downto i do f [j ] := (f [j ] f [j 1])/(x[j ] x[j i]); I gre sku interpolacionog polinoma (koja je jednaka onoj kod Lagrangeovog), mo zemo pisati kori stenjem podijeljenih razlika. Neka je xn+1 (a, b) realan broj koji nije cvor. Konstruirajmo interpolacioni polinom koji prolazi to ckama x0 , . . . , xn i xn+1 . Dobivamo pn+1 (x) = f [x0 ] + (x x0 )f [x0 , x1 ] + (x x0 ) (x x1 )f [x0 , x1 , x2 ] + + (x x0 ) (x xn1 )f [x0 , x1 , . . . , xn ] + (x x0 ) (x xn )f [x0 , x1 , . . . , xn , xn+1 ] = pn (x) + (x x0 ) (x xn )f [x0 , x1 , . . . , xn , xn+1 ]. Budu ci da je pn+1 (xn+1 ) = f (xn+1 ),

(10.2.10)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 259

onda iz relacije (10.2.10) slijedi f (xn+1 ) = pn (xn+1 ) + (xn+1 x0 ) (xn+1 xn )f [x0 , x1 , . . . , xn , xn+1 ]. Usporedimo li tu formulu s ocjenom gre ske iz Teorema 10.2.2. (napisanu u to cki xn+1 , a ne x) (xn+1 ) (n+1) f (xn+1 ) pn (xn+1 ) = f ( ), (n + 1)! odmah se cita da je f [x0 , x1 , . . . , xn , xn+1 ] = f (n+1) ( ) (n + 1)!

za neki I . Prethodna se formula uobi cajeno pi se u ovisnosti o varijabli x, tj. xn+1 se zamijeni s x (Prije nam to nije odgovaralo zbog pisanja interpolacionog polinoma u varijabli x) f [x0 , x1 , . . . , xn , x] = f (n+1) ( ) . (n + 1)! (10.2.11)

Zajedno s (10.2.10), Newtonov interpolacioni polinom tada poprima oblik Taylorovog polinoma (s gre skom nastalom zanemarivanjem vi sih clanova), samo razvijenog oko to caka x0 , . . . , xn . To nas motivira da interpolacioni polinom u to cki x izvrednjavamo na sli can na cin kao sto se Hornerovom shemom izvrednjava vrijednost polinoma. Pretpostavimo da u polju f na mjestu i pi se f [x0 , x1 , . . . , xi ]. Algoritam 10.2.2. (Algoritam izvrednjavanja interpolacionog polinoma) sum := f [n]; for i := n 1 downto 0 do sum := sum (x xi ) + f [i]; { Na kraju je pn (x) = sum . }

10.2.6.

Koliko je dobar interpolacioni polinom?

U praksi se obi cno koriste interpolacioni polinomi niskih stupnjeva do 5. Za sto? Kod nekih funkcija za neki izbor to caka interpolacije, pove cavanje stupnja interpolacionog polinoma mo ze dovesti do pove canja gre saka. Zbog toga se umjesto visokog stupnja interpolacionog polinoma u praksi koristi po dijelovima polinomna interpolacija. Njema cki matemati car Runge prvi je uo cio probleme koji nastupaju kod interpolacije na ekvidistantnoj mre zi i konstruirao funkciju (poznatu kao funkcija Runge), koja ima svojstvo da niz Newtonovih interpolacionih polinoma na ekvidistantnoj mre zi ne konvergira prema toj funkciji.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 260

Primjer 10.2.1. (Runge, 1901.) Promotrimo funkciju f (x) = 1 , 1 + x2 x [5, 5]. 10 , n

i izaberimo ekvidistantne cvorove interpolacije xk , k = 0, . . . , n xk = 5 + kh, h= k = 0, . . . , n.

Zanima nas pona sanje gre saka koje nastaju dizanjem stupnja n interpolacionog polinoma. Po Teoremu 10.2.2, uva zavanjem relacije (10.2.11), dobivamo en (x) = f (x) pn (x) = (x) f [x0 , x1 , . . . , xn , x]. Tvrdimo da vrijedi f [x0 , x1 , . . . , xn , x] = f (x)
r

(1)r+1 (1 + x2 k)

1, x,

ako je n = 2r + 1, ako je n = 2r .

(10.2.12)

k =0

Prvo poka zimo za n = 2r + 1, indukcijom po r . U tom slu caju imamo paran broj interpolacijskih to caka, koje su simetri cne obzirom na ishodi ste, tj. zadovoljavaju xk = xnk . Ako je r = 0, onda je n = 1 i x1 = x0 , a zbog parnosti funkcije f i f (x0 ) = f (x0 ). Izra cunajmo podijeljenu razliku f [x0 , x1 , x] = f [x0 , x0 , x] = f [x0 , x] f [x0 , x0 ] x x0 f (x) f (x0 ) 1 = f (x) . = 2 2 x x0 1 + x2 0

Time je pokazana baza indukcije. Provedimo korak indukcije ali s r u r + 1, tj. ska cemo za 2 u n. Neka vrijedi (10.2.12) za n = 2r + 1 i bilo koji skup od r + 1 parova simetri cnih to caka (xk = xnk ). Neka je m = n + 2 = 2(r + 1) + 1. Deniramo funkciju g (x) = f [x1 , . . . , xm1 , x]. Zbog denicije g , po pretpostavci indukcije, vrijedi g (x) = f (x) ar , ar =
r

(1)r+1 (1 + x2 k)

k =1

Po deniciji podijeljenjih razlika, lako je pokazati da vrijedi g [x0 , xm , x] = f [x0 , . . . , xm , x].

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 261

Osim toga je g [x0 , xm , x] = ar f [x0 , xm , x] = ar f (x)

1 , 1 + x2 0

sto zaklju cuje korak indukcije. Za paran n, dokaz je vrlo sli can. Budu ci da je (x xk ) (x xnk ) = (x xk ) (x + xk ) = x2 x2 k, onda je za n = 2r + 1
n k =0 r

(x xk ) =

k =0

(x2 x2 k ).

U parnom je slu caju n = 2r , xr = 0, pa izdvajanjem srednje to cke dobivamo


n k =0 r 1

(x xk ) = x

k =0

(x2 x2 k) =

1 r 2 (x x2 k ), x k=0

ili zajedno
n r

(x) =

k =0

(x xk ) =

k =0

(x2 x2 k)

1, 1/x,

ako je n = 2r + 1, ako je n = 2r .

Time smo pokazali zeljeni oblik formule za podijeljene razlike. Ako tu formulu uvrstimo u gre sku, dobivamo en (x) = f (x) pn (x) = (x) f (x) = (1)r+1 f (x) gn (x), gdje je gn (x) = x2 x2 k . 2 1 + x k k =0
r r

(1)r+1 (1 + x2 k)

1, x,

ako je n = 2r + 1, ako je n = 2r .

k =0

(10.2.13)

Funkcija f pada od 0 do 5, pa se zbog simetrije, njena najve ca vrijednost nalazi u 0, a najmanja u 5, pa imamo 1 f (x) 1. 26 Zbog toga, konvergencija Newtonovih polinoma ovisi samo o gn (x). Osim toga je i gn parna, tj. gn (x) = gn (x), pa mo zemo sve gledati na intervalu [0, 5]. I apsolutnu vrijednost funkcije gn mo zemo napisati na malo neobi can na cin |gn (x)| = eh ln |gn (x)|
1/h

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 262

Prema (10.2.13), za eksponent eksponencijalne funkcije imamo


r

h ln |gn (x)| = h Tvrdimo da je


n

ln
k =0

x2 x2 k . 2 1 + xk x2 x2 k 1 + x2 k

lim h ln |gn (x)| = lim h


r 0

ln
k =0

=
5

ln

x2 2 d =: q (x). 1 + 2

Ostavimo li zasad jednakost posljednje sume i integrala po strani (treba na ci malo slo zeniji limes), primijetimo da se integral mo ze izra cunati analiti cki
0

ln
5

x2 2 d = (5 + x) ln(5 + x) + (5 x) ln(5 x) 5 ln 26 2 arctg 5. 1 + 2

Analizom toka funkcije vidimo da q (x) ima jednu nulto cku u intervalu [0, 5], prili zno jednaku 3.63 (mo zemo ju i to cnije odrediti). Preciznije, zbog parnosti funkcije q , na [5, 5] vrijedi q (x) = 0 za |x| = 3.63, q (x) < 0 za |x| < 3.63, q (x) > 0 za 3.63 < |x| 5. Za |x| > 3.63 i h = 10/n slijedi dakle da je
n

lim |gn (x)| = , en (x) ,

pa i tj. niz interpolacijskih polinoma divergira za |x| > 3.63! Zanimljivo je da, ako umjesto ekvidistantnih to caka interpolacije u primjeru Runge uzmemo neekvidistantne, to cnije tzv. Cebi sevljeve to cke, onda ce porastom stupnja niz interpolacionih polinoma konvergirati prema funkciji f . Na intervalu sevljeve to [a, b], Cebi cke su xk = 1 2k + 1 a + b + (a b) cos , 2 2n + 2 k = 0, . . . , n.

Zadatak 10.2.1. Doka zite da vrijedi


0 n

lim h ln |gn (x)| =

ln
5

x2 2 d. 1 + 2

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 263

Uputa: O cito je ln i lako se vidi da je


r r 0

x2 x2 k = ln |x + xk | + ln |x xk | ln |1 + x2 k| 1 + x2 k

lim

k =0 r

h ln |1 +

x2 k|

=
5 0

ln |1 + 2 | d ln |x | d,

lim

k =0

h ln |x xk | =

zbog neprekidnosti podintegralnih funkcija i denicije Riemannovog integrala, budu ci je rije c o specijalnim Darbouxovim sumama. Za dokaz da je
r r 0

lim

k =0

h ln |x + xk | =

ln |x + | d,

potrebno je napraviti nu analizu i posebno razmatrati situacije |x + xk | < , |x + xk | > , za neki mali 0 < < 1 (ili se pozvati na ja ce teoreme iz teorije mjere). Primjer 10.2.2. Promotrimo grafove interpolacionih polinoma stupnjeva 16 koji interpoliraju funkciju f (x) = log(x) za x [0.1, 10] sevljevoj mre na ekvidistantnoj i Cebi zi. Primijetit cete da je gre ska interpolacije najve ca na prvom podintervalu bez obzira na stupanj interpolacionog polinoma. Razlog le zi u cinjenici da funkcija log(x) ima singularitet u 0, a po cetna to cka interpolacije je blizu. Prva grupa slika su redom funkcija (crno) i interpolacioni polinom (crveno) sevljevu mre za ekvidistantnu mre zu, te pripadna gre ska, a zatim to isto za Cebi zu.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 264

10

Ekvidistantna mre za, interpolacioni polinom stupnja 1.

y 1 0.5 1 0.5 2 3 4 5 6 7 8 9 10 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 1.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 265

10

Ekvidistantna mre za, interpolacioni polinom stupnja 2.

y 1 0.5 1 0.5 2 3 4 5 6 7 8 9 10 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 2.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 266

10

Ekvidistantna mre za, interpolacioni polinom stupnja 3.

y 0.5 0.25 1 0.25 0.5 2 3 4 5 6 7 8 9 10 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 3.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 267

10

Ekvidistantna mre za, interpolacioni polinom stupnja 4.

y 0.5 0.25 1 0.25 0.5 2 3 4 5 6 7 8 9 10 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 4.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 268

10

Ekvidistantna mre za, interpolacioni polinom stupnja 5.

y 0.25

1 0.25

10

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 5.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 269

10

Ekvidistantna mre za, interpolacioni polinom stupnja 6.

y 0.25

1 0.25

10

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 6.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 270

10

sevljeva mre Cebi za, interpolacioni polinom stupnja 1.

y 0.25 1 0.5 1 2 3 4 5 6 7 8 9 10 x

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 1.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 271

10

sevljeva mre Cebi za, interpolacioni polinom stupnja 2.

y 0.25 1 0.5 1 2 3 4 5 6 7 8 9 10 x

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 2.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 272

10

sevljeva mre Cebi za, interpolacioni polinom stupnja 3.

y 0.125 1 0.25 0.5 2 3 4 5 6 7 8 9 10 x

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 3.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 273

10

sevljeva mre Cebi za, interpolacioni polinom stupnja 4.

y 0.125 1 0.25 0.5 2 3 4 5 6 7 8 9 10 x

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 4.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 274

10

sevljeva mre Cebi za, interpolacioni polinom stupnja 5.

y 0.1 1 2 3 4 5 6 7 8 9 10 x

0.25

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 5.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 275

10

sevljeva mre Cebi za, interpolacioni polinom stupnja 6.

y 0.1 1 2 3 4 5 6 7 8 9 10 x

0.25

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 6. Primjer 10.2.3. Ve c smo pokazali na primjeru Runge da interpolacioni polinomi koji interpoliraju funkciju f (x) = 1 1 + x2 za x [5, 5]

na ekvidistantnoj mre zi ne konvergiraju. S druge strane, pogledajmo sto se dogada s polinomima koji interpoliraju tu funkciju u Cebi sevljevim to ckama. Interpolacioni polinomi su stupnjeva 16, 8, 10, 12, 14, 16 (parnost funkcije!).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 276

Ponovno, kao i u pro slom primjeru, grafovi su u parovima.


y

Ekvidistantna mre za, interpolacioni polinom stupnja 1.

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 1.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 277

Ekvidistantna mre za, interpolacioni polinom stupnja 2.

0.5

1 0.5

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 2.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 278

Ekvidistantna mre za, interpolacioni polinom stupnja 3.

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 3.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 279

Ekvidistantna mre za, interpolacioni polinom stupnja 4.

0.5

1 0.5

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 4.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 280

Ekvidistantna mre za, interpolacioni polinom stupnja 5.

0.5

1 0.5

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 5.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 281

Ekvidistantna mre za, interpolacioni polinom stupnja 6.

0.5

1 0.5

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 6.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 282

Ekvidistantna mre za, interpolacioni polinom stupnja 8.

y 1

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 8.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 283

1 1 2

Ekvidistantna mre za, interpolacioni polinom stupnja 10.

y 2

1 1 2

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 10.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 284

y 4 3 2 1 6 5 4 3 2 1 1 2 3 1 2 3 4 5 6 x

Ekvidistantna mre za, interpolacioni polinom stupnja 12.

y 3 2 1 6 5 4 3 2 1 1 2 3 4 1 2 3 4 5 6 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 12.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 285

y 7 5 3 1 6 5 4 3 2 1 1 3 5 1 2 3 4 5 6 x

Ekvidistantna mre za, interpolacioni polinom stupnja 14.

y 5 3 1 6 5 4 3 2 1 1 3 5 7 1 2 3 4 5 6 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 14.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 286

y 10 6 2 6 5 4 3 2 1 2 6 10 14 1 2 3 4 5 6 x

Ekvidistantna mre za, interpolacioni polinom stupnja 16.

y 14 10 6 2 6 5 4 3 2 1 2 6 10 1 2 3 4 5 6 x

Ekvidistantna mre za, gre ska interpolacionog polinoma stupnja 16.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 287

sevljeva mre Cebi za, interpolacioni polinom stupnja 1.

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 1.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 288

y 1

sevljeva mre Cebi za, interpolacioni polinom stupnja 2.

y 1

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 2.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 289

sevljeva mre Cebi za, interpolacioni polinom stupnja 3.

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 3.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 290

sevljeva mre Cebi za, interpolacioni polinom stupnja 4.

0.25 6 5 4 3 2 1 0.5 1 2 3 4 5 6 x

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 4.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 291

sevljeva mre Cebi za, interpolacioni polinom stupnja 5.

0.5

1 0.25

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 5.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 292

sevljeva mre Cebi za, interpolacioni polinom stupnja 6.

y 0.5

0.25

1 0.25

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 6.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 293

sevljeva mre Cebi za, interpolacioni polinom stupnja 8.

y 0.125

0.25

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 8.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 294

sevljeva mre Cebi za, interpolacioni polinom stupnja 10.

y 0.125

0.125

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 10.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 295

sevljeva mre Cebi za, interpolacioni polinom stupnja 12.

y 0.075

0.075

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 12.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 296

sevljeva mre Cebi za, interpolacioni polinom stupnja 14.

0.05

0.05

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 14.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 297

sevljeva mre Cebi za, interpolacioni polinom stupnja 16.

0.025

0.025

sevljeva mre Cebi za, gre ska interpolacionog polinoma stupnja 16.

10.2.7.

Konvergencija interpolacionih polinoma

Interpolacija polinomima vrlo je zna cajna zbog upotrebe u raznim postupcima u numeri ckoj analizi, kao sto su numeri cka integracija, deriviranje, rje savanje diferencijalnih jednad zbi i jo s mnogo toga.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 298

Medutim, sa stanovi sta teorije aproksimacije, interpolacija se ne pokazuje kao sredstvo kojim mo zemo do ci do dobrih aproksimacija funkcija. Istina, poznati Weierstraov teorem tvrdi da za svaku neprekidnu funkciju f (x) postoji niz polinoma stupnja n, nazovimo ih Bn (x), tako da f (x) Bn (x)

za n .

Na zalost, primjer funkcije Runge pokazuje da ovakav rezultat op cenito ne vrijedi za Lagrangeove interpolacijske polinome niz polinoma generiran ekvidistantnim mre zama ne konvergira prema toj funkciji ni po to ckama (za x dovoljno blizu ruba intervala), a kamo li uniformno. Postoje i jo s gori primjeri divergencije. Dovoljno je uzeti manje glatku funkciju od funkcije Runge. Primjer 10.2.4. (Bernstein, 1912.) Neka je f (x) = |x| i neka je pn (x) interpolacijski polinom u n + 1 ekvidistantnih to caka u [1, 1]. Tada |f (x) pn (x)| 0, kad n , samo u tri to cke: x = 1, 0, 1. Na prvi pogled se cini da to sto interpolacija ne mora biti dobra aproksimacija funkcije ovisi o izboru cvorova interpolacije. To je samo djelimi cno to cno, tj. izborom to caka interpolacije mo zemo pobolj sati aproksimativna svojstva interpolacionih polinoma. Drugi bitni faktor kvalitete je glatko ca funkcije. Iz primjera funkcije Runge vidi se da je Lagrangeova interpolacija dobrih svojstava aproksimacije u sredini intervala, ali ne i na rubovima. Pitanje je, da li neki izbor neekvidistantne mre ze, s cvorovima koji su bli ze rubovima intervala, mo ze popraviti konvergenciju. Odgovor nije potpuno jednostavan. Iako se mogu kon sevljeve) na kojima se funkcija Runge bolje aproksimira struirati mre ze (poput Cebi interpolacionim polinomima, to je nemogu ce napraviti za svaku neprekidnu funkciju. Sljede ci teorem je egzistencijalnog tipa, ali ukazuje na to da je nemogu ce na ci dobar izbor to caka interpolacije za svaku funkciju. Teorem 10.2.3. (Faber, 1914.) Za svaki mogu ci izbor to caka interpolacije postoji neprekidna funkcija f , za ciji interpolacijski polinom pn (x) stupnja n vrijedi f (x) pn (x)

0.

10.2.8.

Hermiteova i druge interpolacije polinomima

Do sada smo promatrali problem interpolacije polinomima u kojem su zadane samo funkcijske vrijednosti fi u cvorovima interpolacije xi . Takva interpolacija

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 299

funkcijskih vrijednosti se obi cno zove Lagrangeova interpolacija ( cak i kad ne koristimo samo polinome kao aproksimacione ili interpolacione funkcije). Lagrangeova interpolacija nikako ne iscrpljuje sve mogu ce slu cajeve interpolacije polinomima. Mogu ce su razne generalizacije ovog problema za funkcije f koje imaju dodatna svojstva, recimo, ve ci broj derivacija (globalno, ili barem, u okolini svakog cvora). Da bismo jednostavno do sli do tih generalizacija, ponovimo ukratko izvod i konstrukciju Lagrangeove interpolacije polinomom. Tra zeni polinom pn mora zadovoljavati interpolacione jednad zbe pn (xi ) = fi = f (xi ), i = 0, . . . , n. (10.2.14)

Zapis polinoma pn u standardnoj bazi potencija 1, x, . . . , xn vodi na linearni sustav s Vandermondeovom matricom, a za pripadnu Vandermondeovu determinantu (vidjeti teorem 10.2.1.) pokazali smo da vrijedi 1 1 V (x0 , . . . , xn ) := det . . .

x0 x1 . . .

x2 0 x2 1 . . . x2 n

1 xn

. . . xn 0 . . . xn 1 = . . . . . . xn n

0i<j n

(xj xi ).

(10.2.15)

Iz pretpostavke o medusobnoj razli citosti cvorova xk slijedi regularnost sustava i egzistencija i jedinstvenost polinoma pn . Lagrangeov interpolacijski polinom pn mo ze se napisati i eksplicitno u tzv. Lagrangeovoj formi, koja se cesto zove i Lagrangeova interpolacijska formula. Ako deniramo n + 1 polinom {i (x)}n i=0 specijalnim interpolacijskim uvjetima i (xj ) := ij , (10.2.16)

gdje je ij Kroneckerov simbol, tada Lagrangeov interpolacijski polinom koji udovoljava uvjetima (10.2.14) mo zemo zapisati kao
n

pn (x) =
i=0

f (xi )i (x).

(10.2.17)

Tra zene polinome i stupnja n, koji su jednozna cno odredeni interpolacijskim uvjetima (10.2.16), mo zemo pogoditi
n

i (x) =
j =0 j =i

x xj , xi xj

i = 0, . . . , n.

(10.2.18)

Funkcije i zovu se funkcije Lagrangeove baze.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 300

Zadatak 10.2.2. Doka zite da su funkcije Lagrangeove baze linearno nezavisne i cine skup izvodnica za prostor polinoma stupnja n, sto opravdava naziv baza. Postoji jo s jedan slu caj koji se mo ze rije siti jednostavnom formulom, a posebno ga tretiramo zbog va znosti za teoriju numeri cke integracije (preciznije, Gaussovih integracionih formula). U svakom cvoru xi , osim funkcijske vrijednosti fi = f (xi ), interpoliramo i vrijednost derivacije fi = f (xi ). Teorem 10.2.4. Postoji jedinstveni polinom h2n+1 stupnja najvi se 2n+1, koji zadovoljava interpolacijske uvjete h2n+1 (xi ) = fi , h2n+1 (xi ) = fi , i = 0, . . . , n,

gdje su xi medusobno razli cite to cke i fi , fi zadani realni brojevi. Dokaz: Egzistenciju polinoma h2n+1 (x) mo zemo dokazati konstruktivnim metodama konstrukcijom eksplicitne baze, sli cno kao i za Lagrangeov polinom. Neka su hi,0 (x) = [1 2(x xi )i (xi )] 2 i (x) 2 hi,1 (x) = (x xi ) i (x), (10.2.19)

gdje su i funkcije Lagrangeove baze (10.2.18). Direktno mo zemo provjeriti da su hi,0 (x) i hi,1 (x) polinomi stupnja 2n + 1 koji zadovoljavaju sljede ce relacije hi,0 (xj ) = ij , hi,0 (xj ) = 0, hi,1 (xj ) = 0, hi,1 (xj ) = ij ,
n

za i, j = 0, . . . , n.

Ako deniramo polinom formulom h2n+1 (x) =


i=0

fi hi,0 (x) + fi hi,1 (x) ,

(10.2.20)

lagano provjerimo da h2n+1 zadovoljava uvjete teorema. Obzirom da iz gornjeg ne slijedi jedinstvenost, moramo ju dokazati posebno. Neka je q2n+1 (x) bilo koji drugi polinom koji ispunjava interpolacijske uvjete teorema. Tada je h2n+1 (x) q2n+1 (x) polinom stupnja ne ve ceg od 2n + 1, koji ima nulto cke multipliciteta barem 2 u svakom cvoru interpolacije xi , tj. barem 2n + 2 nulto cke, sto je mogu ce samo ako je identi cki jednak nuli. Polinomi hi,0 , hi,1 , zovu se funkcije Hermiteove baze, a polinom h2n+1 obi cno se zove Hermiteov interpolacijski polinom. Zadatak 10.2.3. Poka zite da za funkcije Lagrangeove, odnosno Hermiteove baze, vrijedi
n n

i (x) = 1,
i=0 i=0

hi,0 (x) = 1.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 301

Zadatak 10.2.4. Poka zite da za funkcije Lagrangeove, odnosno Hermiteove baze, vrijedi
n n

xi hi,0 (x) + hi,1 (x) = x,


i=0 i=0

(x xi ) 2 i (x) i (xi ) = 0.

Za ocjenu gre ske Hermiteove interpolacije vrijedi vrlo sli can rezultat kao i za obi cnu Lagrangeovu interpolaciju (teorem 10.2.2.). Teorem 10.2.5. Gre ska kod interpolacije Hermiteovim polinomom h2n+1 (x) (v. teorem 10.2.4.) funkcije f C (2n+2) [xmin , xmax ] u n + 1 cvorova x0 , . . . , xn je oblika e(x) := f (x) h2n+1 (x) = gdje su i kao u teoremu 10.2.2. Dokaz: Iz uvjeta interpolacije znamo da je f (x) = h2n+1 (x) i f (x) = h2n+1 (x) za x = x0 , . . . , xn , pa o cekujemo da je f (x) h2n+1 (x) C 2(x) za neku konstantu C . Deniramo li F (x) = f (x) h2n+1 (x) C 2 (x), vidimo da F ima nulto cke multipliciteta 2 u x0 , . . . , xn , tj. F (xk ) = F (xk ) = 0 za k = 0, . . . , n. Izaberemo li neki xn+1 [xmin , xmax ] razli cit od postoje cih cvorova, mo zemo odrediti konstantu C tako da vrijedi F (xn+1 ) = 0. Kako F (x) sada ima (barem) n + 2 nule, F ima n + 1 nulu u nekim to ckama izmedu njih. Ona takoder ima nule u x0 , . . . , xn , pa ukupno ima (barem) 2n + 2 nula. No onda F ima bar 2n + 1 nula, F 2n nula, itd., na osnovu Rolleovog teorema. Na kraju, F (2n+2) ima barem jednu nulu u promatranom intervalu, ozna cimo ju s . Deriviranjem izraza za F (x) dobijemo F (2n+2) ( ) = f (2n+2) ( ) C (2n + 2)! = 0, odakle izra cunamo C . Uvrstimo li taj rezultat u izraz za gre sku, dobijemo F (xn+1 ) h2n+1 (xn+1 ) = f (2n+2) ( ) 2 (xn+1 ). (2n + 2)! f (2n+2) ( ) 2 (x), (2n + 2)!

Ali kako je xn+1 proizvoljan, razli cit samo od cvorova x0 , . . . , xn , mo zemo ga zamijeniti s proizvoljnim x. Na kraju primijetimo da je gornji rezultat to can i za x {x0 , . . . , xn }, jer su obje strane nula, pa dokaz slijedi.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 302

Hermiteov interpolacioni polinom, naravno, osim u Lagrangeovom obliku, mo zemo zapisati i u Newtonovom obliku koriste ci podijeljene razlike, ali sada i s dvostrukim cvorovima. Sto to zna ci? Poku sajte ga sami izvesti! (Taj oblik cemo kasnije uvesti i iskoristiti za zapis po dijelovima polinomne interpolacije.) Ponekad se naziv Hermiteova interpolacija koristi i za op cenitiji slu caj pro sirene Hermiteove interpolacije koji uklju cuje i vi se derivacije od prvih. Bitno je samo da u odredenom cvoru xi interpoliramo redom funkcijsku vrijednost i prvih nekoliko (uzastopnih) derivacija. Pretpostavimo da u cvoru xi koristimo li > 0 podataka (funkcija i prvih li 1 derivacija). Tada je zgodno gledati xi kao cvor multipliciteta li 1 i uvesti posebne oznake tj za medusobno razli cite cvorove (uzmimo da ih je d + 1): x0 xn = t0 , . . . , t0 , . . . , td , . . . , td ,
l0 ld

uz ti = tj za i = j , s tim da je l0 + + ld = n + 1. Problem pro sirene Hermiteove senje. interpolacije, takoder, ima jedinstveno rje Zadatak 10.2.5. Neka su t0 , t1 , . . . , td zadani medusobno razli citi cvorovi i neka su l0 , l1 , . . . , ld zadani prirodni brojevi koji zadovoljavaju d l = n + 1. Poka zite da i=0 i za svaki skup realnih brojeva {fij | j = 1, . . . , li , i = 0, . . . , d} postoji jedinstveni polinom hn , stupnja ne ve ceg od n, za koji vrijedi
j 1) h( (ti ) = fij , n

j = 1, . . . , li ,

i = 0, . . . , d.

Uputa: Konstrukcija Hermiteove baze postaje vrlo komplicirana (poku sajte!). Zato zapi site hn kao linearnu kombinaciju potencija, formulirajte problem interpolacije matri cno i analizirajte determinantu dobivenog linearnog sustava. Ta determinanta je generalizacija Vandermondeove determinante iz (10.2.15), bez pretpostavke da su cvorovi razli citi, pa ju, takoder, ozna cavamo s V (x0 , . . . , xn ). Doka zite da vrijedi V (x0 , . . . , xn ) = (tj ti )li lj
d li 1

! ,
i=0 =1

0i<j d

odakle slijedi egzistenicija i jedinstvenost polinoma hn . Op ceniti slu caj interpolacije funkcije i derivacija, koji obuhva ca gornje interpolacije kao specijalni slu caj, mo ze se zapisati na sljede ci na cin. Neka je E matrica tipa (m +1) (n +1) s elementima Eij koji su svi 0, osim n +1 njih, koji su jednaki 1, i neka je zadan skup od m + 1 to caka x0 < x1 < < xm . Tada problem nala zenja polinoma P (x) stupnja n koji zadovoljava Eij (P (j 1) (xi ) cij ) = 0, i = 0, . . . , m, j = 1, . . . , n + 1,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 303

za neki izbor brojeva cij , zovemo HermiteBirkhoovim interpolacijskim problemom. U punoj op cenitosti, kako je formuliran, problem mo ze i nemati rje senje. Identikacija matrica E koje vode na regularne sisteme jednad zbi ve c je dosta izu cena. I na kraju, spomenimo da i time problem nije do kraja iscrpljen. Mogu ce je umjesto derivacija zadavati razne linearne funkcionale u cvorovima. Jedan specijalni problem u kojem su ovi linearni funkcionali linearne kombinacije derivacija, donekle je prou cen. Taj se problem cesto naziva pro sirena HermiteBirkhoova interpolacija, a u vezi je s numeri ckim metodama za rje savanje diferencijalnih jednad zbi. Zadatak 10.2.6. Zapisom polinoma P u standardnoj bazi potencija formulirajte matri cno problem pro sirene HermiteBirkhoove interpolacije.

10.3.

Interpolacija po dijelovima polinomima

U pro slom smo poglavlju pokazali da polinomna interpolacija visokog stupnja mo ze imati vrlo lo sa svojstva, pa se u praksi ne smije koristiti. Umjesto toga, koristi se po dijelovima polinomna interpolacija, tj. na svakom podintervalu je
[xk1 ,xk ]

= pk ,

k = 1, 2, . . . , n,

a pk su polinomi niskog (ksnog) stupnja. Za razliku od polinomne interpolacije funkcijskih vrijednosti, gdje je bilo dovoljno da su cvorovi interpolacije medusobno razli citi, ovdje pretpostavljamo da su rubovi podintervala interpolacije uzlazno numerirani, tj. da vrijedi a = x0 < x1 < < xn = b. To jo s ne osigurava da je funkcija (mogu ca dvozna cnost u dodirnim to ckama podintervala), ali o tome cemo voditi ra cuna kod zadavanja uvjeta interpolacije. Preciznije, pretpostavimo da na svakom podintervalu [xk1 , xk ] koristimo polinom stupnja m, tj. da je
[xk1 ,xk ]

= pk ,

k = 1, . . . , n.

Svaki polinom pk (stupnja m) je odreden s (m + 1)-im koecijentom, odnosno, ukupno moramo odrediti koecijente polinoma za n podintervala, tj. ukupno (m + 1) n koecijenata. Interpolacioni uvjeti su (xk ) = fk , k = 0, . . . , n, (10.3.1)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 304

sto za svaki polinom daje po 2 uvjeta pk (xk1 ) = fk1 pk (xk ) = fk , k = 1, . . . , n, (10.3.2)

odnosno, ukupno imamo 2n uvjeta interpolacije. Uo cimo da smo postavljenjem prethodnih uvjeta interpolacije osigurali neprekidnost funkcije , jer je pk1 (xk1 ) = pk (xk1 ), k = 2, . . . , n.

Primijetimo da uvjeta interpolacije ima 2n, a moramo na ci (m + 1) n koecijenata. Bez dodatnih uvjeta to je mogu ce napraviti samo za m = 1, tj. za po dijelovima linearnu interpolaciju. Za m > 1 moraju se dodati uvjeti na glatko cu interpolacione funkcije u cvorovima interpolacije.

10.3.1.

Po dijelovima linearna interpolacija

Osnovna ideja po dijelovima linearne interpolacije je umjesto jednog polinoma visokog stupnja koristiti vi se polinoma, ali stupnja 1. Na svakom podintervalu pk je jedinstveno odreden. Obi cno ga zapisujemo relativno obzirom na po cetnu to cku intervala (stabilnost) u obliku pk (x) = c0,k + c1,k (x xk1 ) za x [xk1 , xk ], k = 1, . . . , n.

Taj interpolacioni polinom mo zemo zapisati u Newtonovoj formi pk (x) = f [xk1 ] + f [xk1 , xk ] (x xk1 ), pa se odmah vidi da vrijedi c0,k = f [xk1 ] = fk1 fk fk1 c1,k = f [xk1 , xk ] = , xk xk1 k = 1, . . . , n.

Ako zelimo aproksimirati vrijednost funkcije f u to cki x [a, b], prvo treba prona ci izmedu kojih se cvorova to cka x nalazi, tj za koji k vrijedi xk1 x xk . Tek tada mo zemo ra cunati koecijente pripadnog linearnog polinoma. Za tra zenje tog intervala koristimo algoritam binarnog pretra zivanja.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 305

Algoritam 10.3.1. (Binarno pretra zivanje) low := 0; high := n; while (high low ) > 1 do begin mid := (low + high ) div 2; if x < xmid then high := mid else low := mid end; Trajanje ovog algoritma je proporcionalno s log2 (n). Ako je funkcija f klase C 2 [a, b] (na intervalu na kojem aproksimiramo), onda je pogre ska takve interpolacije zapravo maksimalna pogre ska od n linearnih interpolacija. Na podintervalu [xk1 , xk ] ocjena gre ske linearne interpolacije je |f (x) pk (x)| pri cemu je (x) = (x xk1 )(x xk ),
k M2 = x[xk1 ,xk ] k M2 | (x)|, 2!

max

|f (x)|.

Ocijenimo (x) na [xk1 , xk ], tj. nadimo po apsolutnoj vrijednosti njen maksimum. Funkcija mo ze imati maksimum samo na otvorenom intervalu (xk1 , xk ), a nikako na rubu ( cvorovi interpolacije gre ska je 0). Nadimo lokalni ekstrem funkcije (x) = (x xk1 )(x xk ). Deriviranjem izalazi pa je kandidat za lokalni ekstrem to cka xe = (x) = 2x (xk1 + xk ), (xk1 + xk ) . 2

Tvrdimo da je to ba s i lokalni minimum, jer se radi o paraboli (a ona nema ineksiju). Nevjerni Tome mogu to provjeriti, recimo, deriviranjem (xe ) = 2 > 0. Vrijednost funkcije u lokalnom ekstremu je (xe ) = (xe xk1 )(xe xk ) = xk xk1 xk1 xk (xk xk1 )2 = . 2 2 4

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 306

Osim toga, za bilo koji x (xk1 , xk ) vrijedi (x) < 0. Odatle, prijelazom na apsolutnu vrijednost, odmah slijedi da je xe to cka lokalnog maksimuma za | | i | (x)| | (xe )| (xk xk1 )2 , 4 x [xk1 , xk ].

Deniramo li maksimalni razmak cvorova h = max {hk = xk xk1 },


1k n

onda, na citavom [a, b], mo zemo pisati 1 M2 h2 |f (x) (x)| = M2 h2 . 2! 4 8 Drugim rije cima ako ravnomjerno pove cavamo broj cvorova, tako da h 0, onda i maksimalna gre ska te zi u 0. Na primjer, za ekvidistantne mre ze, tj. za mre ze za koje vrijedi xk = a + kh, h= ba n

je pogre ska reda veli cine h2 , odnosno n2 i potrebno je dosta podintervala da se dobije sasvim umjerena to cnost aproksimacije. Na primjer, za h = 0.01, tj. za n = 100, gre ska aproksimacije je reda veli cine 104 . Druga je mana da aproksimaciona funkcija nije dovoljno glatka, tj. ona je samo neprekidna. Zbog ta dva razloga (dosta to caka za umjerenu to cnost i pomanjkanje glatko ce), obi cno se na svakom podintervalu koriste polinomi vi sih stupnjeva. Ako stavimo m = 2, tj. na svakom podintervalu postavimo kvadratni polinom, moramo na ci 3n koecijenata, a imamo 2n uvjeta interpolacije. Ako zahtijevamo da aproksimaciona funkcija ima u unutarnjim cvorovima interpolacije x1 , . . . , xn1 neprekidnu derivaciju, onda smo dodali jo s n 1 uvjet. A treba nam jo s jedan! Ako i njega postavimo (a to ne mo zemo lijepo, simetri cno), onda bismo mogli na ci i takvu aproksimaciju. Ona se uobi cajeno ne koristi, jer kontrolu derivacije mo zemo napraviti samo na jednom rubu (to bi odgovaralo inicijalnim problemima). Preciznije re ceno, po dijelovima kvadratna interpolacija nema pravu zikalnu podlogu, pa se vrlo rijetko koristi (katkad kod ra cunarske grake). Za razliku od po dijelovima parabolne interpolacije, po dijelovima kubna interpolacija ima vrlo va znu zikalnu podlogu i vjerojatno je jedna od naj ce s ce kori stenih metoda interpolacije uop ce.

10.3.2.

Po dijelovima kubna interpolacija

Kod po dijelovima kubne interpolacije, restrikcija aproksimacione funkcije na svaki interval je kubi cni polinom kojeg obi cno zapisujemo relativno obzirom na

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 307

po cetnu to cku intervala u obliku pk (x) = c0,k + c1,k (x xk1 ) + c2,k (x xk1 )2 + c3,k (x xk1 )3 za x [xk1 , xk ], k = 1, . . . , n. (10.3.3)

Budu ci da ukupno imamo n kubnih polinoma, od kojih svakome treba odrediti 4 koecijenta, ukupno moramo odrediti 4n koecijenata. Uvjeta interpolacije je 2n, jer svaki kubni polinom pk mora interpolirati rubove svog podintervala [xk1 , xk ], tj. mora vrijediti pk (xk1 ) = fk1 k = 1, . . . , n. pk (xk ) = fk , Ovi uvjeti automatski osiguravaju neprekidnost funkcije . Obi cno zelimo da interpolaciona funkcija bude glada barem klase C 1 [a, b], tj. da je i derivacija funkcije neprekidna i u cvorovima. Dodavanjem tih uvjeta za svaki kubni polinom, dobivamo jo s 2n uvjeta pk (xk1 ) = sk1 pk (xk ) = sk , k = 1, . . . , n,

pri cemu su sk neki brojevi. Njihova uloga mo ze biti vi sezna cna, pa cemo je detaljno opisati kasnije. Zasad, mo zemo zami sljati da su brojevi sk neke aproksimacije derivacije u cvorovima. Primijetite da je takvim izborom dodatnih uvjeta osigurana neprekidnost prve derivacije, jer je pk1 (xk1 ) = pk (xk1 ) = sk1 , k = 2, . . . , n.

Ako pretpostavimo da su sk nekako zadani brojevi, nadimo koecijente interpolacionog polinoma pk . Ponovno, najzgodnije je koristiti Newtonov oblik interpolacionog polinoma, ali sada s tzv. dvostrukim cvorovima, jer su u xk1 i xk dani i funkcijska vrijednost i derivacija. Sto, zapravo, zna ci dvostruki cvor? Pretpostavimo li da se u podijeljenoj razlici dva cvora pribli zavaju jedan drugom, onda je podijeljena razlika na limesu lim f [xk , xk + hk ] = lim f (xk + hk ) f (xk ) = f (xk ), hk 0 hk

hk 0

naravno, pod uvjetom da f ima derivaciju u to cki xk . Drugim rije cima, vrijedi f [xk , xk ] = f (xk ).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 308

U na sem slu caju, ako u to cki xk derivaciju f (xk ) zadajemo ili aproksimiramo s sk , onda je f [xk , xk ] = sk . Sada mo zemo napisati tablicu podijeljenih razlika za kubni interpolacioni polinom koji ima dva dvostruka cvora xk1 i xk . To je najjednostavnije predo citi si kao kubni interpolacioni polinom koji prolazi kroz cetiri to cke: xk1 , to ckom koja je jako blizu xk1 , to ckom koja je jako blizu xk i to ckom xk . Kad se te dvije to cke koje su jako blizu stope sa svojim parom, dobivamo dva dvostruka cvora, pa tablica podijeljenih razlika izgleda ovako: xk xk1 xk1 f [xk ] fk1 sk 1 fk1 f [xk1 , xk ] xk xk fk sk fk sk f [xk1 , xk ] hk f [xk1 , xk ] sk1 hk sk + sk1 2f [xk1, xk ] h2 k f [xk , xk+1 ] f [xk , xk+1 , xk+2 ] f [xk , xk+1 , xk+2 , xk+3 ]

Forma Newtonovog interpolacionog polinoma ostat ce po obliku jednaka kao u slu caju da su sve cetiri to cke razli cite, pa imamo pk (x) = f [xk1 ] + f [xk1 , xk1 ] (x xk1 ) + f [xk1 , xk1 , xk ] (x xk1 )2 + f [xk1 , xk1 , xk , xk ] (x xk1 )2 (x xk ) uz uva zavanje da je f [xk1 , xk1 ] = sk1 f [xk1 , xk ] sk1 f [xk1 , xk1 , xk ] = hk sk + sk1 2f [xk1, xk ] f [xk1 , xk1 , xk , xk ] = . h2 k Uvr stavanjem xk1 i xk u prethodnu formulu, odmah mo zemo provjeriti da je pk (xk1 ) = fk1 , pk (xk ) = fk , pk (xk1 ) = sk1, pk (xk ) = sk .

(10.3.4)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 309

Drugim rije cima, na sli smo tra zeni pk . Usporedimo li forme (10.3.3) i (10.3.4), dobit cemo koecijente ci,k . Jednad zbu (10.3.4) mo zemo malo druga cije zapisati, tako da polinom bude napisan po potencijama od (x xk1 ). Posljednji clan tog polinoma mo zemo napisati kao (x xk1 )2 (x xk ) = (x xk1 )2 (x xk1 + xk1 xk ) = (x xk1 )2 (x xk1 hk ) = (x xk1 )3 hk (x xk1 )2 . Sada (10.3.4) glasi pk (x) = f [xk1 ] + f [xk1 , xk1 ] (x xk1 ) + (f [xk1 , xk1 , xk ] hk f [xk1 , xk1 , xk , xk ]) (x xk1 )2 + f [xk1 , xk1 , xk , xk ] (x xk1 )3 . Usporedivanjem koecijenata uz odgovaraju ce potencije prethodne relacije i relacije (10.3.3), za sve k = 1, . . . , n, dobivamo c0,k = pk (xk1 ) = fk1 , c1,k = pk (xk1 ) = sk1 , p (xk1 ) = f [xk1 , xk1 , xk ] hk f [xk1 , xk1 , xk , xk ], c2,k = k 2 p (xk1 ) c3,k = k = f [xk1 , xk1 , xk , xk ]. 6 Promotrimo li bolje posljednje dvije relacije, otkrivamo da se isplati prvo izra cunati koecijent c3,k , a zatim ga upotrijebiti za ra cunanje c2,k . Dobivamo c3,k = c2,k sk + sk1 2f [xk1, xk ] , h2 k f [xk1 , xk ] sk1 = hk c3,k . hk

Drugim rije cima, ako znamo sk , onda nije problem na ci koecijente po dijelovima kubne interpolacije. Ostaje nam samo pokazati kako bismo mogli birati sk -ove. Ponovno, postoje dva bitno razli cita na cina.

10.3.3.

Po dijelovima kubna Hermiteova interpolacija

Vrijednosti sk mo zemo izabrati tako da su one ba s jednake derivaciji zadane funkcije u odgovaraju coj to cki, tj. da vrijedi sk = f (xk ).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 310

U tom slu caju je kubni polinom odreden lokalno, tj. ne ovisi o drugim kubnim polinomima, jer su mu na rubovima zadane funkcijske vrijednosti i vrijednosti derivacija. Takva se interpolacija zove po dijelovima kubna Hermiteova interpolacija. Nadimo gre sku takve interpolacije, uz pretpostavku da je funkcija f C 4 [a, b]. Prvo, pronadimo gre sku na intervalu [xk1 , xk ]. Interpolacioni polinom s dvostrukim cvorovima na rubu pona sa se kao polinom koji ima cetiri razli cita cvora, takva da se parovi cvorova u rubu stope. Zbog toga, mo zemo promatrati i gre sku interpolacionog polinoma reda 3 koji interpolira funkciju f u to ckama xk1 , xk i jo s dvijema to ckama koje su blizu xk1 i xk . Gre sku takvog interpolacionog polinoma mo zemo ocijeniti s Mk |f (x) pk (x)| 4 | (x)|, 4! pri cemu je (x) = (x xk1 )2 (x xk )2 ,
k M4 = x[xk1 ,xk ]

max

|f (4) (x)|.

Ostaje samo jo s prona ci u kojoj je to cki intervala [xk1 , xk ] maksimum funkcije | |. Dovoljno je na ci sve lokalne ekstreme funkcije i u njima provjeriti vrijednost. Derivirajmo (x) = 2(x xk1 )(x xk )2 + 2(x xk1 )2 (x xk ) = 2(x xk1 )(x xk )(2x xk1 xk ). Budu ci da maksimum gre ske ne mo ze biti u rubovima intervala, jer su tamo to cke interpolacije (tj. minimumi gre ske i | |), onda je jedino jo s mogu ce da se ekstrem dosti ze u nulto cki od jednakoj xe = (xk1 + xk ) . 2

Lako se provjerava da je to lokalni maksimum. Vrijednost u xe je kvadrat vrijednosti gre ske za po dijelovima linearnu interpolaciju na istoj mre zi cvorova (xe ) = (xe xk1 )2 (xe xk )2 = (xk xk1 )4 . 16

Odatle, prijelazom na apsolutnu vrijednost, odmah slijedi da je xe to cka lokalnog maksimuma za | | i | (x)| | (xe )| (xk xk1 )4 , 16 x [xk1 , xk ].

Deniramo li, ponovno, maksimalni razmak cvorova h = max {hk = xk xk1 },


1k n

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 311

onda, na citavom [a, b], mo zemo pisati |f (x) (x)| M4 h4 1 = M4 h4 . 4! 16 384

Drugim rije cima, ako ravnomjerno pove cavamo broj cvorova, tako da h 0, onda i maksimalna gre ska te zi u 0. Ipak, u cijelom ovom pristupu ima jedan problem. Vrlo cesto derivacije funkcije u to ckama interpolacije nisu poznate. Zamislite, recimo, to cke dobivene mjerenjem. No, tada mo zemo aproksimirati prave vrijednosti derivacije kori stenjem vrijednosti funkcije u susjednim to ckama. Ostaje jo s samo pokazati kako.

10.3.4.

Numeri cko deriviranje

Problem koji trebamo rije siti je kako aproksimirati derivaciju diferencijabilne funkcije f u nekoj to cki, recimo x0 i susjednim to ckama x1 , . . . , xn , kori stenjem samo vrijednosti funkcije f u zadanim to ckama. Taj problem mo zemo rije siti kori stenjem interpolacionog polinoma. Tada, uz n+1 pretpostavku da je f klase C [a, b], funkciju f mo zemo napisati (vidjeti relaciju (10.2.5)) kao f (x) = pn (x) + en (x), gdje je pn (x) interpolacioni polinom napisan, recimo, u Newotnovoj formi pn (x) = f [x0 ] + (x x0 )f [x0 , x1 ] + + (x x0 ) (x xn1 )f [x0 , x1 , . . . , xn ], a en (x) gre ska interpolacionog polinoma en (x) = (x) f (n+1) ( ). (n + 1)!

Deriviranjem interpolacionog polinoma, a zatim uvr stavanjem x = x0 dobivamo pn (x0 ) = f [x0 , x1 ] + (x0 x1 )f [x0 , x1 , x2 ] + + (x0 x1 ) (x0 xn1 )f [x0 , x1 , . . . , xn ]. Ako pretpostavimo da f ima jo s jednu neprekidnu derivaciju, tj. da je f klase n+2 C [a, b], onda dobivamo i da je en (x0 ) = f (n+1) ( ) (x0 x1 ) (x0 xn ). (n + 1)!

Dakle, pn (x0 ) je aproksimacija derivacije funkcije f u to cki x0 i vrijedi f (x0 ) = pn (x0 ) + en (x0 ).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 312

Ako ozna cimo s H = max |x0 xk |,


k

onda je, za H 0, gre ska

en (x0 )

reda veli cine en (x0 ) O (H n ).

To nam pokazuje da aproksimaciona formula za derivaciju mo ze biti proizvoljno visokog reda n, ali takve formule s velikim n imaju ograni cenu prakti cnu vrijednost. Poka zimo kako se ta formula pona sa za niske n. Za n = 1 imamo p1 (x0 ) = f [x0 , x1 ] = pri cemu smo napravili gre sku e1 (x0 ) f (2) ( ) f (2) ( ) (x0 x1 ) = h, = 2! 2 f1 f0 f1 f0 = , x1 x0 h

uz pretpostavku da je f C 3 [x0 , x1 ]. Gre ska je reda veli cine O (h) za h 0.

Za n = 2, uzmimo to cke x1 i x2 koje se nalaze simetri cno oko x0 (to je poseban slu caj!), tj. x1 = x0 + h, x2 = x0 h. Puno sugestivnija notacija to caka u tom slu caju je da s x1 ozna cimo x2 , jer onda to cke pi semo u prirodnom redosljedu: x1 , x0 , x1 . U tom slu caju je p2 (x0 ) = f [x0 , x1 ] + (x0 x1 )f [x0 , x1 , x1 ]. Izra cunajmo potrebne podijeljene razlike. xk x1 f [xk ] f1 f [xk , xk+1 ] f0 f1 h f1 f0 h f [xk , xk+1 , xk+2 ]

x0

f0

f1 2f0 + f1 2h2

x1 Uvr stavanjem dobivamo p2 (x0 ) =

f1

f1 f0 f1 2f0 + f1 f1 f1 h = . 2 h 2h 2h

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 313

Ovu posljednju formulu cesto zovemo simetri cna (centralna) razlika, jer su to cke x1 i x1 simetri cne obzirom na x0 . Takva aproksimacija derivacije ima bolju ocjenu gre ske nego obi cne podijeljene razlike, tj. vrijedi e2 (x0 ) = f (3) ( ) f (3) ( ) (x0 x1 ) (x0 x1 ) = h2 . 6 6

Poka zimo sto bi se zbivalo kad to cke x1 i x1 (odnosno x2 ) ne bismo simetri cno rasporedili oko x0 . Na primjer, uzmimo x1 = x0 + h, x2 = x0 + 2h.

Iako su i u ovom slu caju to cke ekvidistantne, deriviramo u najljevijoj, a ne u srednjoj to cki. Pripadna tablica podijeljenih razlika je xk x0 f [xk ] f0 f [xk , xk+1 ] f1 f0 h f2 f1 h f [xk , xk+1 , xk+2 ]

x1

f1

f2 2f1 + f0 2h2

x2

f2

Kona cno, aproksimacija derivacije u x0 je p2 (x0 ) = f [x0 , x1 ] + (x0 x1 )f [x0 , x1 , x1 ] = = f2 + 4f1 3f0 , 2h f1 f0 f2 2f1 + f0 h h 2h2

dok je gre ska jednaka e2 (x0 ) = f (3) ( ) f (3) ( ) (x0 x1 ) (x0 x2 ) = h2 , 6 3

tj. gre ska je istog reda veli cine O (h2 ), medutim konstanta je dvostruko ve ca nego u prethodnom (simetri cnom) slu caju. Primijetite da formula za derivaciju postaje sve to cnija sto su bli ze to cke iz kojih se derivacija aproksimira, tj. sto je h manji, naravno, uz pretpostavku da je funkcija f dovoljno glatka. Medutim, to vrijedi samo u teoriji. U praksi, mnogi podaci su mjereni, pa nose neku pogre sku, u najmanju ruku zbog gre saka zaokru zivanja. Kao sto ste vidjeli u prethodnim primjerima, osnovu numeri ckog deriviranja cine podijeljene razlike, pa ako su to cke bliske, dolazi do kra cenja. To nije slu cajno.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 314

Do kra cenja mora do ci, zbog neprekidnosti funkcije f . Problem je to izrazitiji, sto su to cke bli ze, tj. sto je h manji. Dakle, za numeri cko deriviranje imamo dva opre cna zahtjeva na veli cinu h. Manji h daje bolju ocjenu gre ske, ali ve cu gre sku zaokru zivanja. Ilustrirajmo to analizom simetri cne razlike, f (x0 ) = f1 f1 + e2 (x0 ), 2h e2 (x0 ) = h2 f (3) ( ) . 6

Pretpostavimo da smo, umjesto vrijednosti f1 i f1 , uzeli malo perturbirane vrijednosti f1 = f1 + 1 , f1 = f1 + 1 , |1 |, |1| . Ako odatle izrazimo f1 i f1 i uvrstimo ih u formulu za derivaciju, dobivamo f (x0 ) = f1 f1 1 1 + e2 (x0 ). 2h 2h

Prvi clan s desne strane je ono sto smo mi zaista izra cunali kao aproksimaciju derivacije, a ostalo je gre ska. Da bismo analizu napravili jednostavnijom, pretpostavimo da je h prikaziv u ra cunalu i da je gre ska pri ra cunanju kvocijenta u podijeljenoj razlici zanemariva. U tom je slu caju napravljena ukupna gre ska err 2 = f (x0 ) f1 f1 1 1 = + e2 (x0 ). 2h 2h

Ogradimo err 2 po apsolutnoj vrijednosti. Gre ska u prvom clanu je najve ca ako su 1 i 1 suprotnih predznaka, maksimalne apsolutne vrijednosti . Za drugi clan koristimo ocjenu za e2 (x0 ), pa zajedno dobivamo |err 2 | M3 2 + h, h 6 M3 =
x[x1 ,x1 ]

max |f (3) (x)|.

Lako se vidi da je ocjena na desnoj strani najbolja mogu ca, tj. da se mo ze dosti ci. Ozna cimo tu ocjenu s e(h) M3 2 e(h) := + h. h 6 Pona sanje ove ocjene i njezina dva clana u ovisnosti od h mo zemo prikazati sljede cim grafom. Plavom bojom ozna cen je prvi clan /h oblika hiperbole, koji dolazi od gre ske u podacima, a crvenom bojom drugi clan oblika parabole, koji predstavlja maksimalnu gre sku odbacivanja kod aproksimacije derivacije podijeljenom razlikom.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 315

Zelena boja ozna cava njihov zbroj e(h).

h0

Odmah vidimo da e(h) ima minimum po h. Taj minimum se lako ra cuna, jer M3 + h=0 h2 3 izlazi da se lokalni, a onda (zbog e (h) > 0 za h > 0) i globalni minimum posti ze za e (h) = h0 = Najmanja vrijednost funkcije je e(h0 ) = 3 M3 2 3
1/3

iz

3 M3

1/3

2/3 .

To pokazuje da cak i u najboljem slu caju, kad je ukupna gre ska najmanja, dobivamo 2/3 da je ona reda veli cine O ( ), a ne O (), kao sto bismo zeljeli. To predstavlja zna cajni gubitak to cnosti. Posebno, daljnje smanjivanje koraka h samo pove cava gre sku! Isti problem se javlja, i to u jo s ozbiljnijem obliku, u formulama vi seg reda za aproksimaciju derivacija. Kako tada izgleda prethodni graf? Sto se dogada kad aproksimiramo vi se derivacije?

10.3.5.

Po dijelovima kubna kvazihermiteova interpolacija

Sad se mo zemo vratiti problemu kako napraviti po dijelovima kubnu Hermiteovu interpolaciju, ako nemamo zadane derivacije. U tom slu caju derivacije mo zemo aproksimirati na razli cite na cine, a samu interpolaciju cemo zvati kvazihermiteova po dijelovima kubna interpolacija.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 316

Primijetite da u slu caju aproksimacije derivacije, gre ska po dijelovima kubne interpolacije ovisi o tome koliko je dobra aproksimacija derivacije. Najjednostavnije je uzeti podijeljene razlike kao aproksimacije derivacija u cvorovima. One mogu biti unaprijed (do na posljednju) ili unazad (do na prvu). Ako koristimo podijeljene razlike unaprijed, onda je fk+1 fk , za k = 0, . . . , n 1, xk+1 xk sk = fn fn1 , za k = n. xn xn1 f1 f0 , za k = 0, x1 x0 sk = fk fk1 , za k = 1, . . . , n. xk xk1

a ako koristimo podijeljene razlike unazad, onda je

Medutim, prema prethodnom odjeljku, gre ska koju smo napravili takvom aproksimacijom derivacije je reda veli cine O (h) u derivaciji, odnosno O (h2 ) u funkcijskoj vrijednosti, sto je dosta lo se. Prethodnu aproksimaciju mo zemo pone sto popraviti ako su to cke xk ekvidistantne, a koristimo simetri cnu razliku (osim na lijevom i desnom rubu gdje to nije mogu ce). Uz oznaku h = xk xk1 , u tom slu caju mo zemo staviti f1 f0 , za k = 0, h fk+1 fk1 sk = , za k = 1, . . . , n 1, 2h f fn1 n , za k = n. h

U ovom ce se slu caju gre ska obzirom na obi cne podijeljene razlike popraviti tamo gdje se koristi simetri cna razlika. Na zalost, najve ce gre ske ostat ce u prvom i posljednjem podintervalu, gdje nije mogu ce koristiti simetri cnu razliku. Kao sto smo vidjeli, postoje i bolje aproksimacije derivacija, a pripadni kvazihermiteovi kubni polinomi obi cno dobivaju ime po na cinu aproksimacije derivacija. Ako derivaciju u to cki xk aproksimiramo tako da povu cemo kvadratni interpolacioni polinom kroz xk1 , xk i xk+1 , a zatim ga deriviramo, pripadna kvazihermiteova interpolacija zove se Besselova po dijelovima kubi cna interpolacija. Naravno, u prvoj i posljednjoj to cki ne mo zemo postupiti na jednak na cin (jer nema lijeve, odnosno desne to cke). Zbog toga derivaciju u x0 aproksimiramo tako da povu cemo

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 317

kvadratni interpolacioni polinom kroz x0 , x1 i x2 , i njega deriviramo u x0 . Sli cno, derivaciju u xn aproksimiramo tako da povu cemo kvadratni interpolacioni polinom kroz xn2 , xn1 i xn , i njega deriviramo u xn . U unutra snjim cvorovima xk , za k = 1, . . . , n 1, dobivamo p2,k (x) = fk1 + f [xk1 , xk ](x xk1 ) + f [xk1 , xk , xk+1 ](x xk1 ) (x xk ), a zatim, deriviranjem i uvr stavanjem xk sk = p2,k (xk ) = f [xk1 , xk ] + f [xk1 , xk , xk+1 ](xk xk1 ). Uz oznaku prethodna se formula mo ze napisati i kao sk = f [xk1 , xk ] + hk hk = xk xk1 , k = 1, . . . , n,

f [xk , xk+1 ] f [xk1 , xk ] hk+1 f [xk1 , xk ] + hk f [xk , xk+1 ] = , hk + hk+1 hk + hk+1

tj. sk je te zinska srednja vrijednost podijeljene razlike unaprijed i unatrag. Za k = 0 pripadni polinom je p2,1 (x) = f0 + f [x0 , x1 ](x x0 ) + f [x0 , x1 , x2 ](x x0 ) (x x1 ). Deriviranjem, pa uvr stavanjem x0 dobivamo s0 = p2,1 (x0 ) = f [x0 , x1 ] + f [x0 , x1 , x2 ](x0 x1 ) = Za k = n pripadni polinom je p2,n1 (x) = fn2 + f [xn2 , xn1 ](x xn2 ) + f [xn2 , xn1 , xn ](x xn2 ) (x xn1 ). Deriviranjem, pa uvr stavanjem xn dobivamo sn = p2,n1 (xn ) = f [xn2 , xn1 ](xn xn2 ) + f [xn2 , xn1 , xn ](xn xn2 ) + f [xn2 , xn1 , xn ](xn xn1 ) (hn1 + 2hn ) f [xn2 , xn1 ] hn f [xn1 , xn ] = . hn1 + hn

(2h1 + h2 ) f [x0 , x1 ] h1 f [x1 , x2 ] . h1 + h2

Dakle, za Besselovu po dijelovima kubi cnu interpolaciju stavljamo (2h1 + h2 ) f [x0 , x1 ] h1 f [x1 , x2 ] , h1 + h2 hk+1 f [xk1 , xk ] + hk f [xk , xk+1 ] , sk = hk + hk+1 za k = 0, za k = 1, . . . , n 1,

(hn1 + 2hn ) f [xn2 , xn1 ] hn f [xn1 , xn ] , za k = n. hn1 + hn

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 318

Gre ska u derivaciji (vidjeti prethodni odjeljak) je reda veli cine O (h2 ), sto zna ci 3 da je gre ska u funkciji reda veli cine O (h ). Postoji jo s jedna varijanta aproksimacije derivacija s imenom. Akima je 1970. godine dao sljede cu aproksimaciju koja usrednjava podijeljene razlike, s ciljem da se sprije ce oscilacije interpolacione funkcije : sk = uz wk = |f [xk , xk+1 ] f [xk1 , xk ]| i w1 = w0 = w1 , wn1 = wn = wn+1 . Za k = 0 i k = n, ove formule se ne mogu odmah iskoristiti, bez dodatnih denicija. Naime, kra cenjem svih te zina wk u formuli za k = 0 dobivamo da je s0 = f [x1 , x0 ] + f [x0 , x1 ] . 2 wk+1f [xk1 , xk ] + wk1 f [xk , xk+1 ] , wk+1 + wk1 k = 0, 1, . . . , n 1, n,

Ostaje nam samo jo s denirati sto je f [x1 , x0 ]. Podijeljenu razliku f [x0 , x1 ] mo zemo interpretirati kao sredinu dvije susjedne podijeljene razlike, tj. mo zemo staviti f [x0 , x1 ] = Odatle slijedi da je f [x1 , x0 ] = 2f [x0 , x1 ] f [x1 , x2 ], odnosno 3f [x0 , x1 ] f [x1 , x2 ] 2 i to je prakti cna formula za s0 . Na sli can na cin, mo zemo dobiti i relaciju za sn s0 = sn = 3f [xn1 , xn ] f [xn2 , xn1 ] . 2 f [x1 , x0 ] + f [x1 , x2 ] . 2

Akimin je algoritam dosta popularan u praksi i nalazi se u standardnim numeri ckim paketima, poput IMSL-a, iako je to cnost ovih formula za aproksimaciju derivacije relativno slaba. Op cenito, za neekvidistantne to cke, gre ska u derivaciji je reda veli cine samo O (h), a to zna ci samo O (h2 ) za funkcijske vrijednosti. Ako su to cke ekvidistantne, onda je gre ska reda veli cine O (h2) za derivaciju, a O (h3 ) za funkciju, tj. kao i kod Besselove po dijelovima kvazihermitske interpolacije. Medutim, ova slabija to cnost je potpuno u skladu s osnovnim ciljem Akimine aproksimacije derivacija. U mnogim primjenama, aproksimacijom zelimo dobiti geometrijski ili vizuelno po zeljan, lijepo izgledaju ci oblik aproksimacione funkcije , pa makar i na u strb to cnosti. Tipi can primjer je (pribli zno) crtanje grafova

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 319

funkcija, gdje iz nekog relativno malog broja zadanih podataka (to caka) treba, i to brzo, dobiti veliki broj to caka za crtanje vizuelno glatkog grafa. Iako nije nu zno da nacrtani graf ba s interpolira zadane podatke (male, za oko nevidljive gre ske sigurno mo zemo tolerirati), interpolacija obi cno daje najbr zi algoritam. Ostaje jo s pitanje kako posti ci vizuelnu glatko cu? O cita heuristika je izbjegavanje naglih promjena u derivaciji. Drugim rije cima, zelimo izgladiti dobivene podatke za derivaciju, a to su izra cunate podijeljene razlike. Problem izgladivanja podataka je klasi cni problem numeri cke analize. Jedan od najjednostavnijih i najbr zih pristupa je zamjena podatka srednjom vrijedno s cu podataka preko nekoliko susjednih to caka. Ova ideja je vrlo bliska numeri ckoj integraciji, jer integracija izgladuje funkciju, pa cemo tamo dati precizniji opis i opravdanje numeri ckog izgladivanja podataka. Ako bolje pogledamo Akimine formule za aproksimaciju derivacije, one se svode na te zinsko usrednjavanje podijeljenih razlika preko nekoliko susjednih to caka cu to cke s ciljem izgladivanja derivacije (pa onda i funkcije). Vidimo da na sk utje xk2 , . . . , xk+2 , tj. usrednjavanje ide preko 5 susjednih to caka, osim na rubovima. Sli cno mo zemo interpretirati i Besselove formule. Tamo usrednjavanje ide preko 3 susjedne to cke. Aproksimacija derivacije mogla bi se napraviti jo s i bolje, ako povu cemo interpolacioni polinom stupnja 3 koji prolazi to ckama xk , xk1 , xk+1 i jednom od to caka xk2 ili xk+2 (nesimetri cnost, jer za kubni polinom trebamo 4 to cke, pa s jedne strane od xk uzimamo dvije, a s druge samo jednu to cku) i njega deriviramo u xk (uz pa zljivo deriviranje na rubovima). Takvim postupkom mo zemo dobiti gre sku u funkcijskoj vrijednosti O (h4). Primijetite da bolja aproksimacija derivacija nije potrebna, jer je gre ska kod po dijelovima Hermiteove kubi cne interpolacije takoder reda veli cine O (h4). Kvazihermiteova po dijelovima kubi cna interpolacija je takoder lokalna, tj. promjenom jedne to cke promijenit ce se samo nekoliko susjednih kubi cnih polinoma. To cno koliko, ovisi o tome koju smo aproksimaciju derivacije izabrali.

10.3.6.

Kubi cna splajn interpolacija

Brojeve s0 , . . . , sn mo zemo odrediti na jo s jedan na cin. Umjesto da su sk neke aproksimacije derivacije funkcije f u cvorovima, mo zemo zahtijevati da se sk biraju tako da funkcija bude jo s glada da joj je i druga derivacija neprekidna, tj. da je klase C 2 [a, b]. Nagibe s1 , . . . , sn1 odredujemo iz uvjeta neprekidnosti druge derivacije u unutarnjim cvorovima x1 , . . . xn1 . Takva se interpolacija zove (kubi cna) splajn interpolacija.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 320

Mo zemo li iz tih uvjeta jednozna cno izra cunati splajn? Prisjetimo se, imamo 4n koecijenata kubi cnih polinoma. Uvjeta interpolacije (svaki polinom mora interpolirati rubne to cke svog podintervala) ima 2n. Uvjeta ljepljenja prve derivacije u unutarnjim to ckama ima n 1 (toliko je unutarnjih to caka) i jednako je toliko uvjeta ljepljenja druge derivacije. Dakle, imamo ukupno 4n 2 uvjeta, a moramo odrediti 4n koecijenata. Odmah vidimo da nam nedostaju 2 uvjeta da bismo te koecijente mogli odrediti. Kako se oni biraju, to ostavimo za kasnije. Za po cetak, prva derivacija se lijepi u unutarnjim to ckama cim postavimo zahtjev da je (xk ) = sk u tim to ckama, bez obzira na to koliki je sk i ima li on zna cenje aproksimacije derivacije (vidjeti po cetak odjeljka o po dijelovima kubi cnoj interpolaciji). To nam omogu cava da sk -ove odredimo i na neki drugi na cin. Zbog toga, ostaje nam samo postaviti uvjete ljepljenja druge derivacije u unutarnjim cvorovima. Zahtjev je
p k (xk ) = pk +1 (xk ),

k = 1, . . . , n 1 .

Ako polinome pk pi semo u formi (10.3.3) relativno obzirom na po cetnu to cku podintervala, tj. ako je pk (x) = c0,k + c1,k (x xk1 ) + c2,k (x xk1 )2 + c3,k (x xk1 )3 , onda je p k (x) = 2c2,k + 6c3,k (x xk 1 ) pk+1 (x) = 2c2,k+1 + 6c3,k+1 (x xk ), p k (xk ) = 2c2,k + 6c3,k (xk xk 1 ) pk+1 (xk ) = 2c2,k+1 .

pa je

Drugim rije cima, podijelimo li prethodne jednad zbe s 2, uvjet ljepljenja glasi c2,k + 3c3,k (xk xk1 ) = c2,k+1. (10.3.5)

Ostaje samo ispisati koecijente ci,k iz ve c ranije dobivenih relacija, u terminima fk i sk . Ponovimo sk + sk1 2f [xk1, xk ] c3,k = , h2 k f [xk1 , xk ] sk1 c2,k = hk c3,k . hk Uvr stavanjem u (10.3.5), dobivamo f [xk1 , xk ] sk1 sk + sk1 2f [xk1 , xk ] +2 hk hk f [xk , xk+1 ] sk sk+1 + sk 2f [xk , xk+1 ] = . hk+1 hk+1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 321

Sredivanjem dobivamo 3f [xk1 , xk ] + sk1 + 2sk 3f [xk , xk+1 ] 2sk sk+1 = . hk hk+1 Pomno zimo li prethodnu relaciju s hk hk+1 i prebacimo li sve sk na lijevu stranu, a clanove koji nemaju sk na desnu stranu, za k = 1, . . . , n 1, dobivamo hk+1 sk1 + 2(hk + hk+1 )sk + hk sk+1 = 3(hk+1f [xk1 , xk ] + hk f [xk , xk+1 ]). Ovo je linearni sustav s (n + 1)-om nepoznanicom i (n 1)-om jednad zbom. Ako na neki na cin zadamo rubne nagibe s0 i sn , onda ostaje to cno n 1 nepoznanica. Matrica tako dobivenog linearnog sustava je trodijagonalna

2(h1 + h2 ) h3

h1 2(h2 + h3 ) .. . h2 .. . .. . hn2 2(hn1 + hn )

hn1

2(hn2 + hn1 ) hn

i strogo dijagonalno dominantna po recima, jer je 2(hk + hk+1 ) > hk + hk+1 ,

pa je i regularna (Ger sgorin). Dakle, ovaj linearni sustav sigurno ima jedinstveno rje senje s1 , . . . sn1 . Osim toga, za rje savanje mo zemo koristiti Gaussove eliminacije ili LR faktorizaciju bez pivotiranja, a pripadni algoritam smo ve c napravili. Primijetite, sada sk nisu nezavisni, nego ovise jedan o drugom. To zna ci da aproksimacija vi se nije lokalna, jer se promjenom jedne to cke mijenjaju svi polinomi. Preciznije, promjena jedne vrijednosti fk0 mijenja desne strane u 3 jednad zbe (za k0 1, k0 i k0 + 1), ali se zbog toga promijeni cijeli vektor rje senja sustava, tj. svi sk -ovi. I tada se mo ze pokazati da su promjene lokalizirane najvi se se promjene sk -ovi za k blizu k0 , a promjene padaju prema rubovima. Posljednje otvoreno pitanje je kako mo zemo izabrati s0 i sn . Oni se ne moraju direktno zadati, ve c se uobi cajeno zadaju rubni uvjeti na funkciju iz kojih se odreduju s0 i sn ili jo s dvije jednad zbe linearnog sustava (prva i zadnja). Postoji nekoliko tradicionalnih na cina zadavanja rubnih uvjeta, odnosno jednad zbi koje nedostaju.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 322

(a) Potpuni splajn Ako je poznata derivacija funkcije f u rubovima, a to je, recimo slu caj kod rje savanja rubnih problema za obi cnu diferencijalnu jednad zbu, onda je prirodno zadati s0 = f (x0 ), sn = f (xn ). Takav oblik splajna se katkad zove potpuni ili kompletni splajn. Gre ska aproksimacije u funkcijskoj vrijednosti je O (h4 ). (b) Zadana druga derivacija u rubovima Ako je poznata druga derivacija funkcije f u rubovima, onda treba staviti f (x0 ) = (x0 ) = p 1 (x0 ), f (xn ) = (xn ) = p n (xn ).

Ostaje jo s samo izraziti p 1 (x0 ) preko s0 , s1 , a pn (xn ) preko sn1 i sn . Znamo da je

c2,1 = pa iz izraza za c2,1 izlazi

f (x0 ) p 1 (x0 ) = , 2 2

3f [x0 , x1 ] 2s0 s1 f (x0 ) = , h1 2 ili, ako sredimo, dobivamo jednad zbu 2s0 + s1 = 3f [x0 , x1 ] h1 f (x0 ). 2

Ovu jednad zbu treba dodati kao prvu u linearni sustav. Sli cno, kori stenjem da je p n (xn ) = 2c2,n + 6c3,n hn , te uvr stavanjem izraza za c2,n i c3,n , izlazi i sn1 + 2sn = 3f [xn1 , xn ] + hn f (xn ). 2

Tu jednad zbu dodajemo kao zadnju u linearni sustav. Dobiveni linearni sustav ima (n +1)-u jednad zbu i isto toliko nepoznanica, a mo ze se pokazati da ima i jedinstveno rje senje. Ponovno, gre ska aproksimacije u funkcijskoj vrijednosti je O (h4). (c) Prirodni splajn Ako zadamo tzv. slobodne krajeve, tj ako je (x0 ) = (xn ) = 0

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 323

dobivamo prirodnu splajn interpolaciju. Na isti na cin kao u (b), dobivamo dvije dodatne jednad zbe 2s0 + s1 = 3f [x0 , x1 ], sn1 + 2sn = 3f [xn1 , xn ].

Ako aproksimirana funkcija f nema na rubu druge derivacije jednake 0, onda je gre ska aproksimacije u funkcijskoj vrijednosti O (h2 ), a ako ih ima, onda je (kao u (b) slu caju) gre ska O (h4 ). (d) Numeri cka aproksimacija derivacija Ako ni sta ne znamo o pona sanju derivacije funkcije f na rubovima, bolje je ne zadavati njeno pona sanje. Preostala dva parametra mogu se odrediti tako da numeri cki aproksimiramo ili ili u rubovima, koriste ci kao aproksimaciju odgovaraju cu derivaciju kubnog interpolacionog polinoma koji prolazi to ckama x0 , . . . , x3 , odnosno xn3 , . . . , xn . Bilo koja od ovih varijanti daje pogre sku reda O (h4 ).

(e) Not-a-knot splajn Mogu c je i druga ciji pristup. Umjesto neke aproksimacije derivacije, koristimo tzv. not-a-knot (nije cvor) uvjet. Parametre s0 i sn biramo tako da su prva dva i posljednja dva kubna polinoma jednaka, tj. da je p1 = p2 , pn 1 = pn .

Ekvivalentno, to zna ci da se u cvoru x1 zalijepi i tre ca derivacija polinoma p1 i p2 , odnosno da se u cvoru xn1 zalijepi tre ca derivacija polinoma pn1 i pn . Te zahtjeve mo zemo pisati kao
p 1 (x1 ) = p2 (x1 ), p n1 (xn1 ) = pn (xn1 ).

Zahtjev p ci da su vode ci koecijenti polinoma p1 i p2 jednaki, tj. 1 (x1 ) = p2 (x1 ) zna da je c3,1 = c3,2 .

Pridru zimo li taj zahtjev zahtjevu ljepljenja druge derivacije, c2,1 + 3c3,1 hk = c2,2 , dobivamo f [x0 , x1 ] s0 s1 + s0 2f [x0 , x1 ] f [x1 , x2 ] s1 s1 + s0 2f [x0 , x1 ] +2 = h2 . h1 h1 h2 h2 1 Sredivanjem, izlazi h2 s0 + (h1 + h2 )s1 = (h1 + 2(h1 + h2 ))h2 f [x0 , x1 ] + h2 1 f [x1 , x2 ] . h1 + h2

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 324

Na sli can na cin dobivamo i zadnju jednad zbu (hn1 + hn )sn1 + hn1 sn = (hn + 2(hn1 + hn ))hn1 f [xn1 , xn ] + h2 n f [xn2 , xn1 ] . hn1 + hn2

Kao i dosad, gre ska aproksimacije za funkcijske vrijednosti je O (h4 ). Objasnimo jo s porijeklo naziva not-a-knot za ovaj tip odredivanja dodatnih jednad zbi. Standardno, kubi cni splajn je klase C 2 [a, b], tj. funkcija ima neprekidne druge derivacije u unutarnjim cvorovima x1 , . . . , xn1 . Tre ca derivacija funkcije op cenito puca u tim cvorovima, jer se tre ce derivacije polinoma pk i pk+1 ne moraju zalijepiti u xk , za k = 1, . . . , n 1. Kad uzmemo u obzir da su svi polinomi pk kubni, onda je njihova tre ca derivacija ujedno i zadnja netrivijalna derivacija (sve vi se derivacije su nula). Dakle, zadnja netrivijalna derivacija splajna puca u unutarnjim cvorovima. Ova cinjenica, u terminologiji teorije splajn funkcija, odgovara tome da svi unutarnji cvorovi splajna imaju multiplicitet 1, jer je multiplicitet cvora jednak broju zadnjih derivacija koje pucaju ili mogu pucati u tom cvoru (derivacije se broje unatrag, po cev od zadnje netrivijalne, koja odgovara stupnju polinoma). U tom smislu, pove canje glatko ce splajna u (unutarnjem) cvoru smanjuje multiplicitet tog cvora. Prethodni zahtjev da se i zadnje netrivijalne derivacije splajna zalijepe u cvorovima x1 i xn1 odgovara tome da njihov multiplicitet vi se nije 1, nego 0. Cvorovi multipliciteta 0, naravno, nisu pravi cvorovi splajna, jer u njima nema pucanja derivacija (jednako kao i u svim ostalim to ckama iz [a, b] koje nisu cvorovi). Medutim, to ne zna ci da cvorove x1 i xn1 mo zemo izbaciti, jer u njima i dalje moraju biti zadovoljeni uvjeti interpolacije (x1 ) = f1 i (xn1 ) = fn1 . Dakle, te to cke ostaju cvorovi interpolacije, iako nisu cvorovi splajna u smislu pucanja derivacija. (f) Ostali rubni uvjeti Svi dosad opisani na cini zadavanja rubnih uvjeta cuvaju trodijagonalnu strukturu linearnog sustava za parametre sk , pod uvjetom da eventualne dodatne jednad zbe prirodno dodamo kao prvu i zadnju. Za aproksimaciju periodi ckih funkcija na intervalu koji odgovara periodu, ovakvi oblici zadavanja rubnih uvjeta nisu pogodni. Da bismo o cuvali periodi cnost, prirodno je postaviti tzv. periodi cke rubne uvjete. U praksi se naj ce s ce koristi zahtjev periodi cnosti prve i druge derivacije na rubovima (x0 ) = (xn ), sto vodi na jednad zbe p1 (x0 ) = pn (xn ),
p 1 (x0 ) = pn (xn ).

(x0 ) = (xn ),

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 325

Dobiveni linearni sustav vi se nije trodijagonalan. Probajte napraviti ekasan algoritam za njegovo rje savanje, tako da slo zenost ostane linearna u n. U slu caju potrebe, dozvoljeno je i kombinirati razne oblike rubnih uvjeta u jednom i drugom rubu. Primjer 10.3.1. Nadite po dijelovima kubi cnu Hermiteovu interpolaciju za podatke xk fk fk 0 1 0 1 2 1 2 0 . 1

O cito, treba povu ci dva kubna polinoma p1 i p2 . Polinom p1 vrijedi na [0, 1], a p2 na [1, 2]. Prije ra cunanja ovih polinoma, uvedimo jo s skra cenu oznaku za podijeljene razlike reda j , po ugledu na oznaku za derivacije vi seg reda, f [j ] [xk ] := f [xk , . . . , xk+j ], tako da tablice imaju kra ce naslove stupaca. Za prvi polinom imamo sljede cu tablicu podijeljenih razlika xk 0 0 1 1 Iz nje dobivamo p1 (x) = 1 + (1 + 1)(x 0)2 1(x 0)3 = 1 + 2x2 x3 . Na sli can na cin, za p2 dobivamo tablicu podijeljenih razlika xk 1 1 2 2 pa je fk 2 2 0 0 f [1] [xk ] 1 2 1 f [2] [xk ] f [3] [xk ] fk 1 1 2 2 f [1] [xk ] 0 1 1 f [2] [xk ] f [3] [xk ] j 0,

1 0

3 3

p2 (x) = 2 + (x 1) + (3 6)(x 1)2 + 6(x 1)3 = 2 + (x 1) 9(x 1)2 + 6(x 1)3 .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 326

Primjer 10.3.2. Neka je f (x) = sin(x). Nadite prirodni splajn koji aproksimira funkciju f na [0, 1] s cvorovima interpolacije xk = 0.2k , za k = 0, . . . , 5. Izra cunajte vrijednost tog splajna u to cki 0.55. Budu ci da su to cke ekvidistantne s razmakom h = 0.2, srednje jednad zbe linearnog sustava za splajn su hsk1 + 4hsk + hsk+1 = 3(hf [xk1 , xk ] + hf [xk , xk+1 ]), Dodatne jednad zbe (prva i zadnja) za prirodni splajn su 2s0 + s1 = 3f [x0 , x1 ] s4 + 2s5 = 3f [x4 , x5 ]. Za desnu stranu sustava trebamo izra cunati prve podijeljene razlike xk 0.0 0.2 0.4 0.6 0.8 1.0 fk 0.0000000000 0.5877852523 0.9510565163 0.9510565163 0.5877852523 0.0000000000 f [xk , xk+1 ] 2.9389262615 1.8163563200 0.0000000000 1.8163563200 2.9389262615 k = 1, . . . , 4 .

Iz svih ovih podataka dobivamo linearni sustav

0.4 0.2 s0 1.7633557569 2.8531695489 0.2 0.8 0.2 s1 s2 0.2 0.8 0.2 = 1.0898137920 0.2 0.8 0.2 1.0898137920 s3 0.2 0.8 0.2 s4 2.8531695489 0.2 0.4 s5 1.7633557569 Rje senje tog linearnog sustava za nagibe je s0 = s5 = 3.1387417029, s1 = s4 = 2.5392953786, s2 = s3 = 0.9699245271.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 327

Budu ci da se to cka x = 0.55 nalazi u intervalu [x2 , x3 ] = [0.4, 0.6], restrikcija splajna na taj interval je polinom p3 , kojeg nalazimo iz tablice podijeljenih razlika xk 0.4 0.4 0.6 0.6 fk 0.9510565163 0.9510565163 0.9510565163 0.9510565163 f [1] [xk ] 0.9699245271 0.0000000000 0.9699245271 f [2] [xk ] f [3] [xk ]

4.8496226357 4.8496226357

0.0000000000

Odavde odmah slijedi da je taj kubi cni polinom jednak p3 (x) = 0.9510565163 + 0.9699245271(x 0.4) 4.8496226357(x 0.4)2 , tj. p3 je zapravo kvadratni polinom. Pogledajmo jo s aproksimacije za funkciju, prvu i drugu derivaciju u to cki 0.55. funkcija j=0 f (j ) (0.55) (j ) (0.55) gre ska 0.9876883406 0.9874286861 0.0002596545 prva derivacija j=1 0.4914533661 0.4849622636 0.0064911026 druga derivacija j=2 9.7480931932 9.6992452715 0.0488479218

Vidimo da su aproksimacije vrlo to cne, iako je h relativno velik. To je zato sto funkcija f (x) = sin(x) zadovoljava prirodne rubne uvjete f (0) = f (1) = 0, kao i prirodni splajn. Gre ska aproksimacije funkcije je reda veli cine O (h4 ), prve derivacije O (h3 ), a druge derivacije O (h2 ).

10.4.

Interpolacija polinomnim splajnovima za matemati care

Iskustvo s polinomnom interpolacijom ukazuje da polinomi imaju dobra lokalna svojstva aproksimacije, ali da globalna uniformna pogre ska mo ze biti vrlo velika. Niti posebnim izborom cvorova interpolacije ne mo zemo ukloniti taj fenomen. Name ce se prirodna ideja da izbjegavamo visoke stupnjeve polinoma, ali da konstruiramo polinome niskog stupnja na nekoj subdiviziji segmenta od interesa, tj. da razmotrimo po dijelovima polinomnu interpolaciju. Ako je funkcija koju zelimo interpolirati glatka, zelimo sa cuvati sto je mogu ce ve cu glatko cu takvog interpolanta. To nas vodi na zahtijev da za po dijelovima linearne aproksimacije zahtijevamo globalnu neprekidnost, za po dijelovima paraboli cne

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 328

aproksimacije globalnu diferencijabilnost, itd. Po dijelovima polinomne funkcije koje zadovoljavaju zadane uvjete glatko ce zovemo polinomne splajn funkcije. Koecijente u nekoj reprezentaciji polinomnog splajna odredit cemo iz uvjeta interpolacije, kao i u slu caju polinomne interpolacije. Takav specijalni izbor splajna zove se interpolacijski polinomni splajn. U sljede ca dva odjeljka istra zit cemo konstrukciju i svojstva aproksimacije linearnog i kubi cnog splajna. Dok je za linearni splajn o cito mogu ce zahtijevati najvi se neprekidnost na cijelom segmentu od interesa (zahtijev za lijepljenjem prve derivacije vodi na funkciju koja je globalno linearna), za kubi cne je splajnove 1 2 mogu ce zahtijevati pripadnost prostorima C ili C , tj. mogu ce je na ci dva kubi cna splajna. Splajnovi parnog stupnja mogu biti problemati cni, kao sto pokazuje sljede ca intuitivna diskusija. Zamislimo da je segment od interesa za interpolaciju [a, b], i neka je neka njegova subdivizija (podjela na podintervale) zadana mre zom cvorova a = x0 < x1 < x2 < < xN 1 < xN = b. (10.4.1)

Paraboli cki splajn S2 mora biti polinom stupnja najvi se 2 (parabola) na svakom intervalu subdivizije, tj. imamo po 3 nepoznata parametra (koecijenti polinoma stupnja 2) na svakom intervalu. Ukupno dakle treba na ci 3N slobodnih parametara. Zahtijev da vrijedi S2 C 1 [a, b] vezuje 2(N 1) od tih parametara (neprekid nost S2 i S2 u N 1 unutra snjih cvorova x1 , . . . , xN 1 ). Ostaju dakle N +2 slobodna parametra. Zahtijevamo li da S2 bude interpolacijski, tj. da vrijedi S2 (xi ) = fi , i = 0, . . . , N,

ostaje slobodan samo jedan parametar. Taj bismo parametar mogli odrediti dodavanjem jo s jednog cvora interpolacije, ili nekim dodatnim uvjetom na rubu cijelog intervala recimo, zadavanjem derivacije. Medutim, jasno je da se taj parametar ne mo ze odrediti simetri cno iz podataka. To je problem i s ostalim splajn interpolantima parnog stupnja. Zadatak 10.4.1. Nadite sto je u gornjoj diskusiji neformalno, i sto je potrebno za precizan matemati cki dokaz. Ako je prostor polinomnih splajnova S (n) stupnja n deniran zahtjevima: (1) s S (n) = s|[xi,xi+1 ] Pn (Pn je prostor polinoma stupnja n); (2) s C n1 [x0 , xN ], poka zite da je S (n) vektorski prostor, i doka zite da je dim S (n) = n + N .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 329

10.4.1.

Linearni splajn

Najjednostavniji linearni interpolacijski splajn S1 odreden je uvjetom globalne neprekidnosti i uvjetom interpolacije S1 (xi ) = fi , i = 0, . . . , N,

na mre zi cvorova subdiviziji segmenta [a, b] zadanoj s (10.4.1). O cito imamo S1 (x) = fi x xi x xi xi+1 x + fi+1 = fi + (fi+1 fi ), hi hi hi x [xi , xi+1 ],

gdje je hi = xi+1 xi , za i = 0, . . . , N 1. Algoritam za ra cunanje je trivijalan, pa mo zemo odmah ispitati pogre sku, odnosno, razmotriti svojstva interpolacijskog linearnog splajna obzirom na glatko cu funkcije koja se interpolira, u raznim normama koje se koriste za aproksimaciju. U dokazima cemo koristiti jednu sporednu lemu. Lema 10.4.1. Ako je f C [a, b] i , imaju isti znak, tada postoji [a, b] tako da vrijedi f (a) + f (b) = ( + )f ( ). Dokaz: Ako je f (a) = f (b) tvrdnja je o cigledna, jer mo zemo uzeti = a ili = b. Ako je f (a) = f (b), tada funkcija (x) = f (a) + f (b) ( + )f (x) poprima suprotne predznake na krajevima intervala, pa zbog neprekidnosti postoji (a, b) tako da je ( ) = 0. Tvrdnja vrijedi i ako je = 0, uz = b, odnosno, = 0, uz = a. Za precizno odredivanje reda konvergencije aproksimacija neprekidne funkcije f zgodno je uvesti oznake i (f ) =
x ,x [x

max

i ,xi+1 ]

|f (x ) f (x )|,

i = 0, . . . , N 1 ,

(f ) = max i (f ).
0iN 1

Vrijednost i (f ) zovemo oscilacija funkcije f na podintervalu [xi , xi+1 ], a (f ) je (o cito) najve ca oscilacija po svim podintervalima mre ze. Uo cite da glatko ca funkcije f nije potrebna u deniciji ovih veli cina, pa ih koristimo za ocjenu gre ske u slu caju da je f samo neprekidna, ali ne i derivabilna funkcija. Isto vrijedi i za zadnju (najvi su) neprekidnu derivaciju funkcije. Takoder, kod ocjene gre saka, zgodno je uvesti skra cenu oznaku D za operator deriviranja funkcije f jedne varijable, kad je iz konteksta o cito po kojoj varijabli se derivira. Onda n-tu derivaciju funkcije f u to cki x mo zemo pisati u bilo kojem od sljede ca tri oblika dn D n f (x) = n f (x) = f (n) (x). dx

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 330

Pokazuje se da je prvi oblik najpregledniji u zapisu nekih duga ckih formula. Da bismo olak sali razumijevanje teorema o ocjenama gre ske splajn interpolacije koji slijede, objasnimo odmah osnovnu ideju za uvodenje oznake (f ) i njezinu ulogu u ocjeni gre ske. Jednostavno re ceno, (f ) slu zi tome da napravimo nu razliku izmedu ograni cenosti i neprekidnosti funkcije f na nekom intervalu. Za dobivanje korisnih ocjena, obi cno, uz ograni cenost, pretpostavljamo jo s i integrabilnost funkcije. Neprekidnost je, o cito, ja ce svojstvo. Za ilustraciju, uzmimo da je f derivabilna funkcija na [a, b]. Onda je prva derivacija Df i ograni cena funkcija na [a, b], cim postoji derivacija u svakoj to cki segmenta, s tim da uzimamo jednostrane derivacije (limese) u rubovima. Drugim rije cima, postoji njezina norma Df

= sup |Df (x)|.


x[a,b]

Ako je prva derivacija i integrabilna, to ozna cavamo s f L1 [a, b]. Gornji indeks 1 ozna cava da je rije c o prvoj derivaciji funkcije f , a donji indeks ozna cava ograni cenost (preciznija denicija prostora L1 [ a, b ] zahtijeva teoriju mjere i inte grala). Naravno, prva derivacija ne mora biti neprekidna na [a, b], da bi bila integrabilna. Ako je Df i neprekidna, onda je f C 1 [a, b] (oznaka koju smo odavno koristili). Jedan od rezultata koje zelimo dobiti ocjenom gre ske je uniformna konvergencija splajn interpolacije kad pove cavamo broj cvorova, tj. pronjujemo mre zu (barem uz neke blage uvjete). Za uniformnu konvergenciju, o cito, treba promatrati maksimalnu gre sku na cijelom intervalu, tj. zanimaju nas tzv. uniformne ocjene u normi. Iz iskustva polinomne interpolacije, jasno je da moramo iskoristiti lokalno pona sanje funkcije i splajn interpolacije na podintervalima mre ze. Kako cemo lokalnost dobro ugraditi u ocjenu gre ske? S jedne strane, kvaliteta ocjene mora ovisiti o svojstvima (glatko ci) funkcije koju aproksimiramo (interpoliramo). Dakle, trebamo dobru globalnu mjeru lokalnog pona sanja funkcije. Za ograni cene (integrabilne) funkcije koristimo normu na [a, b], koja, o cito, postoji. Na zalost, lokalnost tu ne poma ze, jer maksimum normi po podintervalima daje upravo normu na cijelom intervalu. Neprekidna funkcija je, naravno, i ograni cena i integrabilna. Medutim, za neprekidne funkcije, (f ) daje bitno precizniju uniformnu ocjenu gre ske od globalne norme, jer uklju cuje lokalno pona sanje po podintervalima najve ca lokalna oscilacija mo ze biti mnogo manja od globalne oscilacije na cijelom intervalu! S druge strane, ocjena gre ske mora uklju civati ovisnost o nekoj veli cini koja mjeri gusto cu mre ze, odnosno razmak cvorova. Ako pronjavanjem mre ze zelimo dobiti konvergenciju, odmah je jasno da to pronjavanje mora biti ravnomjerno

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 331

u cijelom [a, b], tj. maksimalni razmak susjednih cvorova := max hi h


0iN 1

mora te ziti prema nuli. Da bismo izbjegli ovisnost o svim hi , standardno se ocje , koja se jo ne gre ske izra zavaju upravo u terminima veli cine h s zove i dijametar mre ze. Teorem 10.4.1. (Uniformna ocjena pogre ske linearnog splajna) Neka je S1 (x) linearni interpolacijski splajn za funkciju f . Obzirom na svojstva glatko ce funkcije f vrijedi: (1) ako je f C [a, b] tada je S1 (x) f (x) (2) ako je f L1 [a, b] tada je S1 (x) f (x) (3) ako je f C [a, b]
N 1 i=0

(f );

h Df 2

C 1 [xi , xi+1 ] tada je S1 (x) f (x)

h (Df ); 4

(4) ako je f C [a, b]

N 1 i=0

L2 [xi , xi+1 ] tada je S1 (x) f (x)

2 h D2f 8

Dokaz: Neka je t := (x xi )/hi . Prema (10.4.1.) gre ska je E (x) := S1 (x) f (x) = (1 t)fi + tfi+1 f (x), x [xi , xi+1 ]. (10.4.2)

Uo cimo da je x [xi , xi+1 ] ekvivalentno s t [0, 1], pa (1 t) i t imaju isti (pozitivni) predznak, ili je jedan od njih jednak nula. Ako je f C [a, b], onda prema Lemi 10.4.1. postoji [xi , xi+1 ] takav da vrijedi E (x) = f ( ) f (x), pa je |E (x)| i (f ) (f ). Ako je prva derivacija ograni cena i integrabilna, vrijedi
xi xi+1

fi = f (x) +
x

Df (v ) dv,

fi+1 = f (x) +
x

Df (v ) dv.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 332

Supstitucijom u (10.4.2) dobijemo


x xi+1

E (x) = (1 t) i |E (x)| (1 t) Slijedi


x

Df (v ) dv + t
xi x

Df (v ) dv

xi+1

xi

|Df (v )| dv + t

|Df (v )| dv.

xi+1

|E (x)| (1 t)

dv + t
xi x

dv

Df

= 2t(1 t) hi Df

Kako parabola 2t(1 t) ima maksimum 1/2 u t = 1/2, dokazali smo da vrijedi |E (x)| 1 h Df 2
.

Neka je sada f C [a, b] klase C 1 na svakom podintervalu mre ze (eventualni prekidi prve derivacije mogu biti samo u cvorovima mre ze). Prema Taylorovoj formuli s Lagrangeovim oblikom ostatka fi = f (x) t hi Df ( ), fi+1 = f (x) + (1 t) hi Df ( ), , [xi , xi+1 ].

Supstitucijom u (10.4.2) dobijemo E (x) = t(1 t) hi (Df ( ) Df ( )), odakle slijedi |E (x)| t(1 t) hi i (Df ), pa opet ocjenom parabole na desnoj strani dobijemo da vrijedi |E (x)| 1 h (Df ). 4

Na kraju, ako f ima na svakom podintervalu ograni cenu i integrabilnu drugu derivaciju, tada vrijedi Taylorova formula s integralnim oblikom ostatka
xi

fi = f (x) t hi Df (x) +

(xi v ) D 2f (v ) dv
xi+1

fi+1 = f (x) + (1 t) hi Df (x) +

(xi+1 v ) D 2f (v ) dv,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 333

pa iz formule (10.4.2) slijedi


xi xi+1 2

E (x) = (1 t) Odavde lako slijedi

(xi v ) D f (v ) dv + t 1 2 h t(1 t) D 2 f 2 i

(xi+1 v ) D 2f (v ) dv. 1 2 h D2f 8

|E (x)|

Zadatak 10.4.2. Doka zite da se u slu cajevima (3) i (4) teorema 10.4.1. mo ze ocijeniti i gre ska u derivaciji, to cnije, da vrijedi: (3) DS1 (x) Df (x) (4) DS1 (x) Df (x)

(Df ); h D2f 2

Teoremi poput teorema 10.4.1. pripadaju grupi teorema koji se nazivaju direktni teoremi teorije aproksimacija. Iako u daljnjem ne cemo slijediti ovaj pristup do krajnjih detalja, primijetimo da se prirodno pojavljuju dva va zna pitanja. (1) Da li su navedene ocjene najbolje mogu ce, tj. da li smo zbog tehnike dokazivanja napravili na nekom mjestu pregrubu ocjenu, iskoristili nedovoljno nu nejednakost, pa zapravo mo zemo dobiti bolji red konvergencije? Da li su i konstante u ocjeni gre ske najbolje mogu ce? (2) Ako dalje pove cavamo glatko cu funkcije koja se interpolira, mo zemo li dobiti sve bolje i bolje ocjene za gre sku, na primjer, u slu caju linearnog splajna, ocjene s h2 , h3 , i tako redom? Teoremi koji se bave problematikom kao u (2) zovu se inverzni teoremi teorije aproksimacija. U ve cini slu cajeva to su iskazi tipa red aproksimacije naveden u direktnom teoremu je najbolji mogu ci. Doista, da nije tako, trebalo bi dopuniti ili popraviti direktni teorem! Ocjena optimalnosti konstanti je neugodan problem, koji za op ci stupanj splajna nije rije sen treba konstruirati primjer funkcije na kojoj se dosti ze konstanta iz direktnog teorema. Sli cni su i tzv. teoremi zasi cenja teorije aproksimacija, koji poku savaju odgovoriti na drugo pitanje: mo ze li se bolje aproksimirati funkcija ako su pretpostavke na glatko cu ja ce? I ovi teoremi su u principu negativnog karaktera na primjer, za linearni splajn mo zemo staviti da je f C [a, b], ali red aproksimacije ce ostati h2 . Sam prostor u kojem se aproksimira jednostavno ne mo ze to cnije reproducirati funkciju koja se aproksimira, nedostaje mu snage aproksimacije. Iako se u daljnjem ne cemo baviti op cim teoremima aproksimacije, svi direktni teoremi koji slijede optimalni su u smislu postojanja odgovaraju cih inverznih teorema i teorema zasi cenja.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 334

Zadatak 10.4.3. Poka zite da u slu caju (4) teorema 10.4.1. funkcija f (x) = x2 igra ulogu ekstremale, tj. da vrijedi = umjesto , pa je ocjena ujedno i najbolja mogu ca. Zadatak 10.4.4. Ako je f C [a, b] DS xi + hi 2 = Df xi +
N 1 i=0

C 3 [xi , xi+1 ], tada vrijedi i = 0, . . . , N 1 .

hi + O (h2 i ), 2

Iz toga mo zemo zaklju citi da red aproksimacije derivacije u specijalno izabranim to ckama mo ze biti i vi si od optimalnog; to je efekt superkonvergencije.

10.4.2.

Hermiteov kubi cni splajn

Kao i u slu caju Hermiteove interpolacije polinomima, mo zemo razmatrati i Hermiteovu interpolaciju splajn funkcijama. Ako presko cimo paraboli cke splajnove (v. raniju diskusiju), prvi je netrivijalni slu caj po dijelovima kubi cnih splajnova s globalno neprekidnom derivacijom. Denicija 10.4.1. Neka su u cvorovima a = x0 < x1 < < xN = b zadane vri jednosti fi , fi , za i = 0, . . . , N . Hermiteov interpolacijski kubi cni splajn je funkcija 1 H C [a, b] koja zadovoljava (1) H (x) = ai0 + ai1 (x xi ) + ai2 (x xi )2 + ai3 (x xi )3 , za svaki x [xi , xi+1 ]; (2) H (xi ) = fi , DH (xi ) = fi , za i = 0, . . . , N . Koriste ci Hermiteovu bazu iz teorema 10.2.4. na svakom podintervalu mre ze [xi , xi+1 ], lagano vidimo da vrijedi H (x) = 1 (t)fi + 2 (t)fi+1 + 3 (t)hi fi + 4 (t)hi fi+1 , gdje je 1 (t) = (1 t)2 (1 + 2t), 3 (t) = t(1 t2 ), t= x xi , hi (10.4.3)

Napomenimo jo s samo da kod ra cunanja treba prvo izra cunati koecijente Ai i Bi formulama fi+1 fi + (fi + fi+1 ), hi fi+1 fi Bi = Ai + fi , hi Ai = 2 za i = 0, . . . , N 1,

2 (t) = t2 (3 2t), 4 (t) = t2 (1 t).

(10.4.4)

i zapamtiti ih. Za zadanu to cku x [xi , xi+1 ], Hermiteov splajn ra cunamo formulom H (x) = fi + (thi ) [fi + t(Bi + tAi )]. (10.4.5)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 335

Obzirom na cinjenicu da su nam derivacije fi naj ce s ce nepoznate, preostaje nam samo da ih aproksimiramo iz zadanih vrijednosti funkcije. To je problem pribli zne Hermiteove interpolacije, i tada ne mo zemo vi se o cekivati isti red konvergencije. Vrijednost Hermiteove interpolacije je, medutim, vi se teorijska nego prakti cna, kao sto cemo vidjeti kasnije. U tom smislu koristit cemo sljede ci direktni teorem. Teorem 10.4.2. Za Hermiteov kubi cni splajn, ovisno o glatko ci funkcije f , vrijede sljede ce uniformne ocjene pogre ske: (1) ako je f C 1 [a, b] tada je H (x) f (x) (2) ako je f L2 [a, b] tada je H (x) f (x) (3) ako je f C 1 [a, b]
N 1 i=0

3 h (Df ); 8

1 2 h D2f 16

C 2 [xi , xi+1 ] tada je

H (x) f (x) (4) ako je f C 1 [a, b]


N 1 i=0

1 2 h (D 2 f ); 32

L3 [xi , xi+1 ] tada je

H (x) f (x) (5) ako je f C 1 [a, b]


N 1 i=0

1 3 h D3f 96

C 3 [xi , xi+1 ] tada je

H (x) f (x) (6) ako je f C 1 [a, b]


N 1 i=0

1 3 h (D 3f ); 192

L4 [xi , xi+1 ] tada je

H (x) f (x)

1 4 h D4f 384

Dokaz: U svim slu cajevima treba analizirati gre sku E (x) := H (x) f (x) = fi 1 (t) + fi+1 2 (t) + hi fi 3 (t) + hi fi+1 4 (t) f (x). Ako fi , fi+1 zamijenimo njihovim Taylorovim razvojem oko to cke x = xi + thi s ostatkom u Lagrangeovom obliku, dobijemo E (x) = hi [(1 t) 2 (t) Df ( ) t 1 (t) Df ( ) + 3 (t)fi + 4 (t)fi+1 ].

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 336

U daljnjem oznake , , . . . ozna cavaju to cke u [xi , xi+1 ]. Prema Lemi 10.4.1. mo zemo grupirati clanove istog znaka (prvi i tre ci, drugi i cetvrti), pa dobijemo ) Df ( E (x) = hi t(1 t)(1 + 2t 2t2 ) [Df ( )], odakle slijedi ocjena gre ske po to ckama |E (x)| hi t(1 t)(1 + 2t 2t2 ) i(Df ). Odavde odmah slijedi tvrdnja (1), uzimanjem maksimuma polinoma u varijabli t. Ako f ima drugu derivaciju ograni cenu i integrabilnu, razvijemo opet fi , fi , fi+1 , fi+1 oko to cke x, ali koriste ci Taylorovu formulu s integralnim oblikom ostatka. Nakon kra ceg ra cuna dobijemo integralnu reprezentaciju gre ske
x

E (x) =
xi

(1 t)2 [thi + (1 + 2t)(v xi )] D 2f (v ) dv


xi+1

+
x

t2 [(1 t)hi + (3 2t)(xi+1 v )] D 2 f (v ) dv.

Zamjenom varijable v xi = hi dobivamo


2 E (x) = h2 i 1 (t, ) D f (xi + hi ) d + 0

gdje je

2 (t, ) D 2 f (xi + hi ) d , (10.4.6)

1 (t, ) = (1 t)2 [(1 + 2t) t], 2 (t, ) = t2 [(3 2t)(1 ) (1 t)].

Ne mo zemo upotrijebiti teorem o srednjoj vrijednosti za integrale, jer 1 (t, ) mijenja znak; to cnije 1 (t, ) = 0 za = t/(1 + 2t). Medutim, [0, t] = [0, ) [ , t], a na svakom od podintervala 1 je konstantnog znaka, pa teorem srednje vrijednosti za integrale mo zemo upotrijebiti po dijelovima.
t t

1 (t, ) D f (xi + hi ) d = D f ( )
0 2 0

1 (t, ) d + D f ( )

1 (t, ) d

= Analogno
t

t (1 t)2 {4t2 D 2 f ( ) D 2 f ( )}. 2(1 + 2t)

2 (t, ) D 2 f (xi + hi ) d =
0

(1 t)2 t2 ) D 2 f ( {4(1 t2 ) D 2f ( )} . 2(3 2t)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 337

Iz (10.4.6) dobivamo
2 2 h2 i t (1 t) E (x) = {4t2 (3 2t) D 2 f ( ) (3 2t) D 2f ( ) 2[3 + 4t(1 t)] ) (1 + 2t) D 2f ( + 4(1 t2 )(1 + 2t) D 2 f ( )} .

Primijenimo li lemu 10.4.1. na neprekidne funkcije istog znaka, dobivamo ocjenu |E (x)|
2 2 2h2 i t (1 t) i (D 2 f ). 3 + 4t(1 t)

Maksimalna vrijednost desne strane posti ze se za t = 1/2, odakle slijedi |E (x)| 1 2 h i (D 2 f ), 32 i

sto dokazuje ocjenu (3). Ocjena (2) proizlazi lagano iz iste ocjene gre ske po to ckama. Ako je f po dijelovima klase C 3 , sli cno dobivamo E (x) = h3 i gdje su sada

t 1

1 (t, ) D 3 f (xi + hi ) d +
0 t

2 (t, ) D 3 f (xi + hi ) d

1 (t, ) = (1 t)2 t

(1 + 2t) , 2 (3 2t)(1 ) . 2

2 (t, ) = t2 (1 ) (1 t) +

Zbog simetrije, dovoljno je razmatrati t [0, 1/2], pa slijedi |E (x)| 2 3 t2 (1 t)3 h i (D 3 f ). 3 i (3 2t)2
.

Odavde slijedi ocjena gre ske za E (x) t = 1/2. Sli cno slijedi i ocjena (4).

Maksimalna gre ska je u xi + hi /2, tj. za

Na kraju, ako f ima ograni cenu i integrabilnu cetvrtu derivaciju na svakom podintervalu, tada je 1 E (x) = h4 6 i

0 t 1

1 (t, ) D 4 f (xi + hi ) d +
t

2 (t, ) D 4 f (xi + hi ) d

gdje su

1 (t, ) = (1 t)2 2 [3t + (1 + 2t) ], 2 (t, ) = t2 (1 )2 [3(1 t) + (3 2t)(1 )],

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 338

pa zaklju cujemo da vrijedi t2 (1 t)2 4 hi D 4 f 4! Odavde se lagano dobije ocjena za E (x) . |E (x)|
,

t [0, 1].

(10.4.7)

1 4 Zadatak 10.4.5. Poka zite da za f C 1 [a, b] N caj (6) iz preti=0 L [xi , xi+1 ] (slu hodnog teorema) vrijede sljede ce ocjene za derivacije: 3 3 DH (x) Df (x) h D4f , 216 1 2 D 2 H (x) D 2 f (x) h D4f , 12 1 D 3 H (x) D 3 f (x) h D4f . 2 Uputa: Treba derivirati integralnu reprezentaciju za E (x), tj. na ci integralnu reprek zentaciju za D E (x), k = 1, 2, 3.

Zadatak 10.4.6. Poku sajte za prvih pet slu cajeva (klasa glatko ce funkcije f ) iz teorema 10.4.2. izvesti sli cne ocjene za one derivacije koje imaju smisla obzirom na pretpostavljenu glatko cu. Prema pro slom zadatku, ocjene treba tra ziti u obliku ef r Mf , r {0, 1, 2, 3}, D r H (x) D r f (x) Cr h gdje su Cr konstante ovisne o r , a osnovni eksponenti ef i mjere funkcije Mf ovise samo o klasi funkcije (ne i o r ), pa se mogu pro citati iz teorema (r = 0). Uvjerite se da ocjene imaju smisla samo za r ef , a dokazuju se sli cnom tehnikom. Zadatak 10.4.7. (Superkonvergencija) Uz pretpostavke dodatne glatko ce funkcije f , u posebno izbaranim to ckama mo ze se dobiti i vi si red aproksimacije pojedinih derivacija funkcije f . (a ) U to ckama x ze se aproksimirati s O (h4 i := xi + hi /2 prva derivacija mo i ), a 2 tre ca s O (hi ). To cnije, vrijedi h4 i D 4 f (x ) + O (h5 i ), 1920 h2 3 3 D H (x ) = D f (x ) + i D 4 f (x ) + O (h3 i ). 40 (b ) U to ckama x i := xi + (3 3)hi /6 druga derivacija mo ze se aproksimirati s O (h3 ) . To c nije, vrijedi i 3 3 hi 5 2 2 D H ( x) = D f ( x) D f ( x) + O (h4 i ). 540 Nadite uz koje pretpostavke dodatne glatko ce funkcije f vrijede ove tvrdnje i ocjene, i doka zte ih. DH (x ) = Df (x )

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 339

10.4.3.

Potpuni kubi cni splajn

Zahtijevamo li neprekidnost druge derivacije od po dijelovima kubi cnih funkcija, dolazimo prirodno na deniciju potpunog kubi cnog splajna, koji se cesto jo s zove i samo kubi cni splajn. Cilj nam je razmotriti algoritme za konstrukciju kubi cnih splajnova koji interpoliraju zadane podatke vrijednosti funkcije, ali ne i njezine derivacije, jer tra zimo ve cu glatko cu. Takav splajn zovemo kubi cni interpolacijski splajn. Od svih splajn funkcija, kubi cni interpolacijski splajn je vjerojatno najvi se kori sten i najbolje izu cen u smislu aproksimacije i brojnih primjena, od aproksimacije u raznim normama, do rje savanja rubnih problema za obi cne diferencijalne jednad zbe. Ime splajn (eng. spline) ozna cava elasti cnu letvicu koja se mogla u cvrstiti na rebra brodova kako bi se modelirao oblik oplate; to cna etimologija rije ci pomalo je zaboravljena. U matemati ckom smislu pojavljuje se prvi put u radovima Eulera, oko 1700. godine, i slijedi mehani cku deniciju elasti cnog stapa. Sredi snja linija s takvog stapa (ona koja se ne deformira kod transverzalnog optere cenja) u linearnoj teoriji elasti cnosti ima jednad zbu D 2 (EI D2 s(x)) = f (x), gdje je E Youngov modul elasti cnosti stapa, a I moment inercije presjeka stapa oko njegove osi. Pretpostavimo li da je stap izraden od homogenog materijala, i da ne mijenja popre cni presjek (E i I su konstante), dolazimo na jednad zbu D 4 s = f, gdje je f vanjska sila po jedinici duljine. U odsustvu vanjske sile (f = 0), sredi snja linija s elasti cne letvice je dakle kubi cni polinom. Ako je letvica u cvr s cena u osloncima s koordinatama xi , i = 0, . . . , N , tre ca derivacija u tim to ckama ima diskontinuitet (ova cinjenica je posljedica zakona odr zanja momenta, i trebalo bi ju posebno izvesti). Izmedu oslonaca, na podintervalima [xi , xi+1 ], sredi snja linija je i dalje kubi cni polinom, ali u to ckama xi imamo prekid tre ce derivacije. Dakle, s je po dijelovima kubi cni polinom, a druga derivacija s je globalno neprekidna. Denicija 10.4.2. Neka su u cvorovima a = x0 < x1 < < xN = b zadane vrijednosti fi , za i = 0, . . . , N . Potpuni interpolacijski kubi cni splajn je funkcija 2 S3 C [a, b] koja zadovoljava uvjete (1) S3 (x) = ai0 + ai1 (x xi ) + ai2 (x xi )2 + ai3 (x xi )3 , za svaki x [xi , xi+1 ]; (2) S3 (xi ) = fi , za i = 0, . . . , N .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 340

Kako se S3 na svakom od N podintervala odreduje s 4 koecijenta, ukupno imamo 4N koecijenata koje treba odrediti. Uvjeti glatko ce (funkcija, prva i druga derivacija u unutra snjim cvorovima) ve zu 3(N 1) koecijenata, a uvjeti interpolacije N + 1 koecijenata. Preostaje dakle odrediti 4N 3(N 1) (N + 1) = 2 dodatna koecijenta. Dodatni uvjeti obi cno se zadaju u rubovima intervala, stoga naziv rubni uvjeti. U praksi se naj ce s ce koriste sljede ci rubni uvjeti: (R1) (R2) (R3) (R4) DS3 (a) = Df (a), D 2 S3 (a) = 0, D 2 S3 (a) = D 2 f (a), DS3 (a) = DS3 (b), DS3 (b) = Df (b), (potpuni rubni uvjeti); 2 D S3 (b) = 0, (prirodni rubni uvjeti); (10.4.8) 2 2 D S3 (b) = D f (b); D 2 S3 (a) = D 2 S3 (b), (periodi cki rubni uvjeti).

Tradicionalno se naziv potpuni splajn koristi za splajn oderden rubnim uvjetima (R1) interpolacije prve derivacije u rubovima. Splajn odreden prirodnim rubnim uvjetima (R2) zove se prirodni splajn. Njega mo zemo smatrati specijalnim slu cajem rubnih uvjeta (R3) interpolacije druge derivacije u rubovima, naravno, uz uvjet da sama funkcija zadovoljava prirodne rubne uvjete. Na kraju, splajn odreden periodi ckim rubnim uvjetima (R4) zove se periodi cki splajn, a koristi se za interpolaciju periodi ckih funkcija f s periodom [a, b] (tada je f0 = fN i f zadovoljava periodi cke rubne uvjete). Algoritam za konstrukciju interpolacijskog kubi cnog splajna mo zemo izvesti na dva na cina. U prvom, za nepoznate parametre koje treba odrediti uzimamo vrijednosti prve derivacije splajna u cvorovima. Tradicionalna oznaka za te parametre je mi := DS3 (xi ), za i = 0, . . . , N . U drugom, za nepoznate parametre uzimamo vrijednosti druge derivacije splajna u cvorovima, koriste ci globalnu neprekidnost 2 2 D S3 , uz tradicionalnu oznaku Mi := D S3 (xi ), za i = 0, . . . , N . Napomenimo odmah da se ta dva algoritma dosta ravnopravno koriste u praksi, a za ocjenu gre ske trebamo i jednog i drugog, pa cemo napraviti oba izvoda. Prvi algoritam dobivamo primijenom Hermiteove interpolacije, ali ne zadajemo derivacije, ve c nepoznate derivacije mi ostavljamo kao parametre, koje treba odrediti tako da se postigne globalna pripadnost splajna klasi C 2 [a, b]. Drugim rije cima, tra zimo da S3 zadovoljava uvjete interpolacije S3 (xi ) = fi , DS3 (xi ) = mi , za i = 0, . . . , N , gdje su fi zadani, a mi nepoznati. Uz standardne oznake iz prethodnog odjeljka, prema (10.4.3), S3 mo zemo na svakom podintervalu napisati u obliku S3 (x) = fi (1 t)2 (1 + 2t) + fi+1 t2 (3 2t) + mi hi t(1 t)2 mi+1 hi t2 (1 t), (10.4.9)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 341

gdje je t = (x xi )/hi , za x [xi , xi+1 ]. Parametre mi , mi+1 moramo odrediti tako da je druga derivacija D 2 S3 neprekidna u unutra snjim cvorovima. Budu ci da je D 2 S3 (x) = slijedi D 2 S3 (xi + 0) = 6 fi+1 fi mi mi+1 (6 12t) + (4 + 6t) + (2 + 6t), 2 hi hi hi fi+1 fi 4mi 2mi+1 , h2 hi hi i 4mi fi fi1 2mi1 + + . 2 hi1 hi1 hi1 fi+1 fi fi fi1 + i , hi hi1

D 2 S3 (xi 0) = 6 Uz oznake i = hi1 , hi1 + hi i = 1 i ,

ci = 3 i

uvjete neprekidnosti D 2 S3 u xi , za i = 1, . . . , N 1, mo zemo napisati u obliku i mi1 + 2mi + i mi+1 = ci , i = 1, . . . , N 1 . (10.4.10)

Dobili smo N 1 jednad zbi za N + 1 nepoznanica mi , pa nam fale jo s dvije jednad zbe. Naravno, uvjetima (10.4.10) treba dodati jo s neke rubne uvjete. Za rubne uvjete (R1), (R2) i (R3) dobivamo linearni sustav oblika
2m0 + 0 m1 = c0 , i mi1 + 2mi + i mi+1 = ci , N mN 1 + 2mN = cN .

i = 1, . . . , N 1 ,

(10.4.11)

Koecijenti 0 , c0 , N i cN odreduju se ovisno o rubnim uvjetima. Za rubne uvjete (R1) imamo c c 0 = N = 0, 0 = 2Df (a), N = 2Df (b),

a za rubne uvjete (R3)


0 = N = 1,

c 0 = 3

f1 f0 h0 2 D f (a), h0 2

c N = 3

fN fN 1 hN 1 2 + D f (b). hN 1 2

Prirodni rubni uvjeti (R2) su specijalni slu caj (R3), uz D 2 f (a) = D 2 f (b) = 0. Ako je f periodi cka funkcija, onda je f0 = fN i m0 = mN (periodi cki rubni uvjet na prvu derivaciju). Da bismo zapisali uvjet periodi cnosti druge derivacije, mo zemo na periodi cki na cin produljiti mre zu, tako da dodamo jo s jedan cvor xN +1 , ali tako da je xN +1 xN = x1 = x0 , tj. hN = h0 . Zbog pretpostavke periodi cnosti, moramo staviti fN +1 = f1 i mN +1 = m1 . Na taj na cin, uvjet periodi cnosti druge

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 342

derivacije postaje ekvivalentan uvjetu neprekidnosti druge derivacije u to cki xN , tj. jednad zbi oblika (10.4.10) za i = N . Kad iskoristimo sve pretpostavke f0 = fN , fN +1 = f1 , m0 = mN , mN +1 = m1 , hN = h0 ,

dobivamo sustav od samo N jednad zbi 2m1 + 1 m2 + 1 mN = c1 , i mi1 + 2mi + i mi+1 = ci , N m1 + N mN 1 + 2mN = cN .

i = 2, . . . , N 1 ,

(10.4.12)

Uo cite da smo jednad zbu m0 = mN ve c iskoristili za eliminaciju nepoznanice m0 . Ostaje odgovoriti na o cito pitanje: da li dobiveni linearni sustavi imaju jedinstveno rje senje. Teorem 10.4.3. Postoji jedinstveni interpolacijski kubi cni splajn koji zadovoljava jedan od rubnih uvjeta (R1)(R4). Dokaz: U svim navedenim slu cajevima lako se vidi da je matrica linearnog sustava strogo dijagonalno dominantna, sto povla ci regularnost. Naime, svi dijagonalni elementi su jednaki 2, a zbroj izvandijagonalnih elemenata je najvi se i + i = 1, (uz dogovor = i = ). N 0 N 0 Algoritam 10.4.1. (Interpolacijski kubi cni splajn) (1) Rije si linearni sustav (10.4.11) ili (10.4.12); (2) Binarnim pretra zivanjem nadi indeks i tako da vijedi x [xi , xi+1 ); (3) Hornerovom shemom (10.4.5) izra cunaj S3 (x). Primijetimo da je za rje savanje sustava potrebno samo O (N ) operacija, obzirom na specijalnu vrp castu strukturu matrice. Takoder, matrica ne ovisi o vrijednostima funkcije koja se interpolira, pa se korak (1) u Algoritmu 10.4.1. sastoji od LR faktorizacije matrice, koju treba izra cunati samo jednom. Za ra cunanje vrijednosti S3 (x) obi cno se koriste formule (10.4.4)(10.4.5). Ako je potrebno ra cunati splajn u mnogo to caka (recimo, u svrhu brze reprodukcije grafa splajna), mo zemo napisati algoritam konverzije, tj. na ci vezu izmedu denicionog oblika splajna (v. deniciju 10.4.2.) i oblika danog formulama (10.4.4)(10.4.5). Deniciona reprezentacija splajna kao kubi cne funkcije na svakom podintervalu subdivizije zove se ponekad i po dijelovima polinomna reprezentacija, ili skra ceno PPreprezentacija. Zadatak 10.4.8. Kolika je to cno u steda u broju aritmeti ckih operacija potrebnih za ra cunanje S3 (x) pri prijelazu na PPreprezentaciju? Jo s br zi oblik reprezentacije

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 343

je standardni kubni polinom S3 (x) = bi0 + bi1 x + bi2 x2 + bi3 x3 , za svaki x [xi , xi+1 ]. Njega ne treba koristiti. Za sto? Kao sto smo ve c rekli, u nekim slu cajevima ugodnija je druga reprezentacija interpolacijskog kubi cnog splajna, u kojoj se, umjesto mi , kao nepoznanice javljaju 2 Mi := D S (xi ), za i = 0, . . . , N . Zbog popularnosti i ceste implementacije izvedimo ukratko i ovu reprezentaciju. Na svakom podintervalu [xi , xi+1 ] kubi cni splajn S3 je kubi cni polinom kojeg odredujemo iz uvjeta interpolacije funkcije i druge derivacije u rubovima S3 (xi ) = fi , S3 (xi+1 ) = fi+1 , D 2 S3 (xi ) = Mi , D 2 S3 (xi+1 ) = Mi+1 .

Ovaj sustav jednad zbi ima jedinstveno rje senje (doka zite to), odakle onda mo zemo izra cunati koecijente kubnog polinoma. Medutim, tra zenu reprezentaciju mo zemo jednostavno i pogoditi, ako S3 (x) na [xi , xi+1 ] napi semo kao linearnu interpolaciju funkcijskih vrijednosti plus neka korekcija. Odmah se vidi da tra zena korekcija ima oblik linearne interpolacije druge derivacije puta neki kvadratni faktor koji se poni stava u rubovima. Dobivamo oblik S3 (x) = fi (1 t) + fi+1 t h2 i t(1 t) [Mi (2 t) + Mi+1 (1 + t)], 6

gdje je opet t = (x xi )/hi , za x [xi , xi+1 ] i i = 0, . . . , N 1. Odavde lako izlazi DS3 (x) = fi+1 fi hi [Mi (2 6t + 3t2 ) + Mi+1 (1 3t2 )], hi 6 Mi+1 Mi . hi

D 2 S3 (x) = Mi (1 t) + Mi+1 t, D 3 S3 (x) =

Interpolacija druge derivacije u cvorovima ne garantira da je i prva derivacija neprekidna. To treba dodatno zahtijevati. Kako je fi+1 fi hi (2Mi + Mi+1 ), hi 6 fi fi1 hi1 DS3 (xi 0) = + (Mi1 + 2Mi ), hi1 6 DS3 (xi + 0) = iz uvjeta neprekidnosti prve derivacije u unutra snjim cvorovima dobivamo N 1 jednad zbi tra zenog linearnog sustava i Mi1 + 2Mi + i Mi = 6 hi1 + hi fi+1 fi fi fi1 , hi hi1 (10.4.13)

za i = 1, . . . , N 1, gdje je, kao i prije, i = hi1 /(hi1 + hi ) i i = 1 i .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 344

Zadatak 10.4.9. Napi site nedostaju ce jednad zbe za rubne uvjete, i poka zite da je matrica sustava strogo dijagonalno dominantna. Na kraju, primijetimo da je algoritam za ra cunanje vrijednosti S3 (x) vrlo sli can ranijem, s tim sto treba primijeniti malo druga ciju Hornerovu shemu (ekvivalent formula (10.4.4)(10.4.5) za algoritam 10.4.1.): S3 (x) = fi + t {(fi+1 fi ) (xi+1 x) [(xi+1 x + hi )Mi + (hi + x xi )Mi+1 ]}, gdje je Mi := Mi /6. Ocjena gre ske za potpuni kubi cni splajn je te zi problem nego za Hermiteov kubi cni splajn, budu ci da su koecijenti zadani implicitno kao rje senje jednog linearnog sustava. Teorem 10.4.4. Neka je S3 interpolacijski kubi cni splajn za funkciju f koji zadovoljava jedan od rubnih uvjeta (R1)(R4) u (10.4.8). Tada vrijedi D r S3 (x) D r f (x)

ef r Mf , Cr h

r = 0, 1 , 2 , 3 ,

gdje su Cr konstante (ovisne o r ), ef osnovni eksponenti i Mf mjere funkcije (ef i Mf ovise samo o klasi funkcije, ne i o r ), dani sljede com tablicom: Klasa funkcije C 1 [a, b] L2 [a, b] C 2 [a, b] L3 [a, b] C [a, b] C 2 [a, b] s tim da je :=
2 i

Mf (Df ) D2f

ef 1 2 2 3 3 4

C0 9 8 13 48 19 96 41 864 41 1728 5 384 maxi hi mini hi

C1 4 0.86229 2 3 4 27 2 27 1 24

C2

C3

(D 2 f ) D f C [xi , xi+1 ] L4 [xi , xi+1 ]


3 3 3

4 1 4 3 + 2 9 1 2 3 + 2 9 3 8

(D f ) D4f

4 3 1+ 9 1 1 + 2

mjera neuniformnosti mre ze (u zadnjem stupcu tablice).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 345

Mjesta u tablici koja nisu popunjena zna ce da ne postoje odgovaraju ce ocjene. Napomenimo, takoder, da rijetko kori stene ocjene koje odgovaraju jo s ni zoj 1 glatko ci funkcije f , na primjer, f C [a, b] ili f L [a, b] nisu navedene, iako se mogu izvesti (dokaz nije trivijalan). Osim toga, nije poznato da li su sve konstante optimalne, iako se to mo ze pokazati u nekim va znim slu cajevima (na primjer, u zadnjem redu tablice, koji podrazumijeva najve cu glatko cu, sve su konstante najbolje mogu ce). Dokaz: Doka zimo neke od ocjena u teoremu 10.4.4. (preostale poka sajte dokazati sami). Neka je H Hermitski interpolacijski kubi cni splajn i S := S3 interpolacijski kubi cni splajn. Tada gre sku mo zemo napisati kao E (x) := S (x) f (x) = [H (x) f (x)] + [S (x) H (x)]. Oba interpolacijska splajna S (x) i H (x) mo zemo reprezentirati preko Hermiteove baze na svakom intervalu [xi , xi+1 ] (v. (10.4.9), (10.4.3)), pa oduzimanjem tih reprezentacija slijedi S (x) f (x) = [H (x) f (x)] + hi [t(1 t)2 (mi Df (xi )) (1 t)t2 (mi+1 Df (xi+1 ))]. Odavde je |S (x) f (x)| |H (x) f (x)| + hi t(1 t) max |mi Df (xi )|.
i

(10.4.14)

Za derivaciju imamo DS (x) Df (x) = [DH (x) Df (x)] + [(1 t)(1 3t) (mi Df (xi )) t(2 3t) (mi+1 Df (xi+1 ))], pa je stoga |DS (x) Df (x)| |DH (x) Df (x)| (10.4.15) + [(1 t)|1 3t| + t|2 3t|] max |mi Df (xi )|.
i

Ocjene za |H (x) f (x)| izveli smo u teoremu 10.4.4., a ocjene za |DH (x) Df (x)| mogu se izvesti na sli can na cin (v. zadatke 10.4.5. i 10.4.6.). Ostaje dakle ocijeniti drugi clan na desnoj strani u (10.4.14) i (10.4.15). Za drugu derivaciju znamo da je D 2 S (x) = Mi (1 t) + Mi+1 t,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 346

pa zaklju cujemo da je D 2 S (x) D 2 f (x) = (1 t) (Mi D 2 f (xi )) + t (Mi+1 D 2 f (xi+1 ) + (1 t) D 2 f (xi ) + t D2 f (xi+1 ) D 2 f (x). Ali, kako je (1 t)D 2 f (xi )+ tD2 f (xi+1 ) D 2 f (x) pogre ska kod interpolacije funkcije 2 D f linearnim splajnom S1 (teorem 10.4.1.), mo zemo ju i ovako ocijeniti |D 2 S (x) D 2 f (x)| |S1 (x) D 2 f (x)| + max |Mi D 2 f (xi )|.
i

(10.4.16)

Sli cno je i za tre cu derivaciju |D 3 S (x) D 3 f (x)| |DS1 (x) D 3 f (x)| + 2 max |Mi D 2 f (xi )|. (10.4.17) mini hi i

Ako pogledamo nejednakosti (10.4.14), (10.4.15), (10.4.16) i (10.4.17), vidimo da preostaje ocijeniti maxi |mi Df (xi )| i maxi |Mi D 2 f (xi )|. Ove ocjene, kao i sve druge, ovise o klasi funkcija. Tvrdimo da vrijedi max |mi Df (xi )| qf ,
i

gdje je qf dan sljede com tablicom za 6 karakteristi cnih klasa funkcija: Klasa funkcije C 1 [a, b] L2 [a, b] C 2 [a, b] L3 [a, b] C 2 [a, b] C 2 [a, b]
i

qf 3 (Df ) 5 h D2f 6 2 h (D 2 f ) 3 4 2 h D3f 27 2 2 h (D 3 f ) 27 1 3 h D4f 24

C 3 [xi , xi+1 ] L4 [xi , xi+1 ]

Da doka zemo ovu tablicu, pretpostavimo rubne uvjete (R1) na derivaciju. Uvedemo li u linearnom sustavu (10.4.11) nove nepoznanice qi := mi Df (xi ), dobijemo sustav q0 = 0, i qi1 + 2qi + i qi+1 = c i , qN = 0, i = 1, . . . , N 1 ,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 347

gdje su desne strane c i = 3i fi+1 fi fi fi1 + 3i hi hi1 i Df (xi1 ) 2Df (xi ) i Df (xi+1 ). (10.4.18)

Da bismo ocijenili |qi |, zapi simo ovaj sustav u matri cnom obliku Aq = c , ili q = A1 c . Vidimo odmah da je A = 2I +B , gdje je B matrica koja sadr zi samo izvandijagonalne elemente i i i . Zbog i + i 1 (jednakost vrijedi u svim jednad zbama, osim prve i zadnje), slijedi B 1. Sada nije te sko ocijeniti A1 A=2 I+ 1 B 2 = A1

1 1 1 B 2 2

1.

Na kraju, iz q = A1 c slijedi |qi | q

A1

= max |c i|.
i

Drugim rije cima, da bismo dokazali ocjene iz tablice za qf , dovoljno je ocijeniti |c i |. Pretpostavimo da je f C 1 [a, b] i iskoristimo Lagrangeov teorem o srednjoj vrijednosti za prva dva clana u izrazu (10.4.18) za c i . Tada je i + i = 1, pa je c i = 3i Df (i,i+1) + 3i Df (i1,i) i Df (xi1 ) 2Df (xi ) i Df (xi+1 ) = i [Df (i1,i) Df (xi1 )] + 2i [Df (i1,i) Df (xi )] + i [Df (i,i+1) Df (xi+1 )] + 2i [Df (i,i+1) Df (xi )], odakle slijedi cime smo dokazali prvu ocjenu u tablici za qf . |c i | 3(i + i ) (Df ) = 3 (Df ),

Ako je f C 2 [a, b] i L4 i mo zemo razviti fi1 , [xi , xi+1 ], u izrazu (10.4.18) za c Df (xi1 ), fi+1 , Df (xi+1 ) u Taylorov red oko xi , koriste ci integralni oblik ostatka. Napomenimo da nam nije potrebna neprekidnost tre ce derivacije. U tom slu caju imamo dakle c i = 3i Df (xi) + hi 2 h2 D f (xi ) + i D 3 f (xi + 0) 2 6 1 + 6hi + 3i Df (xi )
xi+1

xi

(xi+1 v )3 D 4 f (v ) dv

hi1 2 h2 D f (xi ) + i1 D 3 f (xi 0) 2 6 1 6hi1


xi1

xi

(xi1 v )3 D 4 f (v ) dv

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 348

i Df (xi ) + hi D 2 f (xi ) +

h2 i D 3 f (xi + 0) 2 1 + 2
xi+1

xi

(xi+1 v )2 D 4 f (v ) dv

2Df (xi ) i h2 Df (xi ) hi1 D f (xi ) + i1 D 3 f (xi 0) 2


2

1 + 2

xi1

xi

(xi1 v )2 D 4 f (v ) dv .

Clanovi s Df (xi ), D 2 f (xi ), D 3 f (xi + 0) i D 3 f (xi 0) se skrate, pa ostaje samo i c i = 2


xi+1

xi

(xi+1 v )3 (xi+1 v )2 D 4 f (v ) dv hi
xi1

i + 2

xi

(xi1 v )3 (xi1 v )2 D 4 f (v ) dv. hi1

Zamijenimo li varijable supstitucijom hi := v xi u prvom integralu, odnosno, hi1 := v xi1 u drugom integralu, dobivamo i h3 i c i = 2
1

(1 )2 D 4 f (xi + hi ) d
1

i h3 i1 + 2 Odavde lagano ocijenimo 1 |c i | D4f 2 1 = D4f 24

2 (1 ) D 4 f (xi1 + hi1 ) d.

ih3 i
0

(1 ) d +

i h3 i1
0

2 (1 ) d

3 (i h3 i + i hi1 ).

Uvr stavanjem i , i (v. 10.4.10) dobivamo |c i | Na kraju, kako je


2 hi hi1 h2 i + hi1 D4f 24 hi + hi1 .

2 h2 i + hi1 max{hi , hi1 }, hi + hi1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 349

dolazimo do zadnje ocjene u tablici za qf |c i | 1 3 h D4f 24


.

Upotrebom Taylorove formule, teorema o srednjoj vrijednosti i leme 10.4.1., na ve c poznati na cin, dokazuju se i ostale ocjene u tablici. Napomenimo jo s, da je sli cnu analizu potrebno napraviti i za druge tipove rubnih uvjeta. Pokazuje se da rezultati i tehnika dokaza ne ovise mnogo o tipu rubnih uvjeta. To, naravno, vrijedi samo uz pretpostavku da funkcija f zadovoljava iste rubne uvjete kao i splajn, ako rubni uvjet ne ovisi o funkciji (na primjer, (R2) ili (R4)). U protivnom, dobivamo slabije ocjene. Nadalje, za ocjenu druge i tre ce derivacije, moramo na ci ocjene oblika max |Mi D 2 f (xi )| Qf .
i

I u ovom slu caju imamo tablicu s 4 ocjene, u ovisnosti o klasi funkcije: Klasa funkcije C 2 [a, b] L3 [a, b] C 2 [a, b] C 2 [a, b]
i

Qf 3 (D 2 f ) 4 3 h D3f 9 2 3 h (D 3 f ) 9 1 2 h D4f 4

C 3 [xi , xi+1 ] L4 [xi , xi+1 ]

Tehnika dokaza ove tablice je dosta sli cna onoj za prethodnu tablicu, s time da se oslanja na linearni sustav (10.4.13), pa ocjene ostavljamo kao zadatak. Da bismo na kraju dokazali ovaj teorem, ograni cimo se na najglatkiju klasu 2 4 funkcija C [a, b] i L [xi , xi+1 ]; tehnika dokaza potpuno je ista i za sve druge klase. Klju cna je ocjena (10.4.14): |S (x) f (x)| |H (x) f (x)| + hi t(1 t) max |mi Df (xi )|.
i

Prvi dio cini gre ska kod interpolacije Hermiteovim splajnom, za koju, prema (10.4.7), znamo da vrijedi t2 (1 t)2 4 |H (x) f (x)| hi D 4 f 4!
,

t=

x xi [0, 1], hi

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 350

a drugi dio pro citamo u tablici za maxi |mi Df (xi )|. Ukupno je dakle |S (x) f (x)| 1 4 t(1 t) [1 + t(1 t)] max h4 i D f i 24

5 4 h D4f 384

Zanimljivo je da ova ocjena samo 5 puta ve ca od ocjene za Hermiteov interpolacijski splajn, koji zahtijeva poznate derivacije funkcije f u svim cvorovima interpolacije, a ovdje ih koristimo samo na rubu (uz rubne uvjete (R1)).

10.5.

Diskretna metoda najmanjih kvadrata

Ponovno, neka je funkcija f zadana na diskretnom skupu to caka x0 , . . . , xn . Takoder, pretpostavljamo da je tih to caka mnogo vi se nego nepoznatih parametara aproksimacione funkcije. Aproksimaciona funkcija (x, a0 , . . . , am ) odreduje se iz uvjeta da je 2-norma vektora pogre saka u cvorovima aproksimacije najmanja mogu ca, tj. tako da minimiziramo
n

S=

k =0

(f (xk ) (xk ))2 min .

Ovu funkciju S (kvadrat 2-norme vektora gre ske) interpretiramo kao funkciju nepoznatih parametara S = S (a0 , . . . , am ). O cito je uvijek S 0, bez obzira kakvi su parametri. Dakle, zadatak je minimizirati funkciju S kao funkciju vi se varijabli a0 , . . . , am . Ako je S dovoljno glatka funkcija, a ova je (jer je funkcija u parametrima ak ), nu zni uvjet ekstrema je S = 0, ak k = 0, . . . , m.

Takav pristup vodi na tzv. sustav normalnih jednad zbi.

10.5.1.

Linearni problemi i linearizacija

Ilustrirajmo to na najjednostavnijem primjeru, kad je aproksimaciona funkcija pravac.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 351

Primjer 10.5.1. Zadane su to cke (x0 , f0 ), . . . , (xn , fn ), koje po diskretnoj metodi najmanjih kvadrata aproksimiramo pravcem (x) = a0 + a1 x. Gre ska aproksimacije u cvorovima koju minimiziramo je
n n

S = S (a0 , a1 ) =

k =0

(fk (xk ))2 =

k =0

(fk a0 a1 xk )2 min .

Nadimo parcijalne derivacije po parametrima a0 i a1 :


n S 0= = 2 (fk a0 a1 xk ), a0 k =0

0=

n S = 2 (fk a0 a1 xk )xk . a1 k =0

Dijeljenjem s 2 i sredivanjem po nepoznanicama a0 , a1 , dobivamo linearni sustav


n n

a0 (n + 1) + a1
n k =0 n

xk =
k =0 n

fk fk xk .
k =0

a0
k =0

xk + a1
k =0

x2 k =

Uvedemo li standardne skra cene oznake


n n

s =
k =0

x k,

t =
k =0

fk x k,

0,

onda linearni sustav mo zemo pisati kao s0 a0 + s1 a1 = t0 s1 a0 + s2 a1 = t1 . (10.5.1)

Nije te sko pokazati da je matrica sustava regularna, sto slijedi iz linearne nezavisnosti vektora (1, 1, . . . , 1)T i (x0 , x1 , . . . , xn )T , uz uvjet da imamo barem dvije razli cite to cke xk (prirodan uvjet za pravac), pa postoji jedinstveno rje senje sistema. Samo rje senje dobiva se rje savanjem linearnog sustava (10.5.1). Ostaje jo s pitanje da li smo dobili minimum, ali i to nije te sko pokazati, kori stenjem drugih parcijalnih derivacija (dovoljan uvjet minimuma je pozitivna denitnost Hesseove matrice). Ipak, provjera da je to minimum, mo ze i puno lak se. Budu ci da se radi o zbroju kvadrata, S predstavlja paraboloid s otvorom prema gore u varijablama a0 , a1 , pa je jasno da takvi paraboloidi imaju minimum. Zbog toga se nikad ni ne provjerava da li je dobiveno rje senje minimum za S .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 352

Za funkciju mogli bismo uzeti i polinom vi seg stupnja, (x) = a0 + a1 x + + am xm , ali postoji opasnost da je za malo ve ce m (m 10) dobiveni sustav vrlo lo se uvjetovan (blizak singularnom), pa dobiveni rezultati mogu biti jako pogre sni. Zbog toga se to nikada, ovako direktno, ne radi. Ako se uop ce koriste aproksimacije polinomima vi sih stupnjeva, onda se to radi kori stenjem ortogonalnih polinoma. Linearni model diskretnih najmanjih kvadrata je potpuno primjenjiv na op cu linearnu funkciju (x) = a0 0 (x) + am m (x), gdje su 0 , . . . , m poznate (zadane) funkcije. Ilustrirajmo to ponovno na op coj linearnoj funkciji s 2 parametra.

Primjer 10.5.2. Zadane su to cke (x0 , f0 ), . . . , (xn , fn ), koje po diskretnoj metodi najmanjih kvadrata aproksimiramo funkcijom oblika (x) = a0 0 (x) + a1 1 (x). Postupak je potpuno isti kao u pro slom primjeru. Opet minimiziramo kvadrat 2-norme vektora pogre saka aproksimacije u cvorovima
n n

S = S (a0 , a1 ) =

k =0

(fk (xk ))2 =

k =0

(fk a0 0 (xk ) a1 0 (xk ))2 min .

Sredivanjem parcijalnih derivacija 0= 0=


n S = 2 (fk a0 0 (xk ) a1 1 (xk )) 0 (xk ), a0 k =0 n S = 2 (fk a0 0 (xk ) a1 1 (xk )) 1 (xk ), a1 k =0

po varijablama a0 , a1 , uz dogovor da je
n n n

s0 =
k =0 n

2 0 (xk ), fk 0 (xk ),
k =0

s1 =
k =0 n

0 (xk )1 (xk ), fk 1 (xk ),


k =0

s2 =
k =0

2 1 (xk ),

t0 =

t1 =

dobivamo potpuno isti oblik linearnog sustava s0 a0 + s1 a1 = t0 s1 a0 + s2 a1 = t1 . Ovaj sustav ima ista svojstva kao i u prethodnom primjeru. Poka zite to!

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 353

ako nelinearno ovisi o parametrima? Dobili bismo nelinearni sustav Sto jednad zbi, koji se relativno te sko rje sava. Uglavnom, problem postaje ozbiljan optimizacijski problem, koji se, recimo, mo ze rje savati metodama pretra zivanja ili nekim drugim optimizacijskim metodama, posebno prilagodenim upravo za rje savanje nelinearnog problema najmanjih kvadrata (na primjer, LevenbergMarquardt metoda). Postoji i drugi pristup. Katkad se jednostavnim transformacijama problem mo ze transformirati u linearni problem najmanjih kvadrata. Na zalost, rje senja lineariziranog problema najmanjih kvadrata i rje senja originalnog nelinearnog problema, u principu, nisu jednaka. Problem je u razli citim mjerama za udaljenost (gre sku). Ilustrirajmo, ponovno, nelinearni problem najmanjih kvadrata na jednom jednostavnom primjeru. Primjer 10.5.3. Zadane su to cke (x0 , f0 ), . . . , (xn , fn ), koje po diskretnoj metodi najmanjih kvadrata aproksimiramo funkcijom oblika (x) = a0 ea1 x . Gre ska aproksimacije u cvorovima (koju minimiziramo) je
n n

S = S (a0 , a1 ) =

k =0

(fk (xk )) =

k =0

(fk a0 ea1 xk )2 min .

Parcijalnim deriviranjem po varijablama a0 i a1 dobivamo 0= 0=


n S = 2 (fk a0 ea1 xk ) ea1 xk , a0 k =0 n S = 2 (fk a0 ea1 xk )a0 xk ea1 xk , a1 k =0

sto je nelinearan sustav jednad zbi. S druge strane, ako logaritmiramo relaciju (x) = a0 ea1 x , dobivamo ln (x) = ln(a0 ) + a1 x. Moramo logaritmirati jo s i vrijednosti funkcije f u to ckama xk , pa uz supstitucije h(x) = ln f (x), i (x) = ln (x) = b0 + b1 x, hk = h(xk ) = ln fk , k = 0, . . . , n,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 354

gdje je b0 = ln a0 ,
n

b1 = a1 ,
n

dobivamo linearni problem najmanjih kvadrata S = S (b0 , b1 ) = (hk (xk ))2 = (hk b0 b1 xk )2 min .

k =0

k =0

Na kraju, iz rje senja b0 i b1 ovog problema, lako o citamo a0 i a1 a0 = eb0 , a1 = b1 .

Uo cite da ovako dobiveno rje senje uvijek daje pozitivan a0 , tj. linearizacijom dobivena funkcija (x) ce uvijek biti ve ca od 0. Nekako je odmah jasno da to nije pravo rje senje za sve po cetne podatke (xk , fk )! No, mo zemo li na ovako opisani na cin linearizirati sve po cetne podatke? O cito je ne, jer mora biti fk > 0 da bismo mogli logaritmirati. Ipak, i kad su neki fk 0, nije te sko, kori stenjem translacije svih podataka dobiti fk + translacija > 0, pa onda nastaviti postupak linearizacije. Poku sajte korektno formulirati linearizaciju! Kona cno, evo i popisa nekoliko funkcija koje su cesto u upotrebi i njihovih standardnih linearizacija u problemu najmanjih kvadrata. (a) Funkcija (x) = a0 xa1 linearizira se logaritmiranjem (x) = log (x) = log(a0 ) + a1 log x, hk = log fk , k = 0, . . . , n.

Drugim rije cima, dobili smo linearni problem najmanjih kvadrata


n

S = S (b0 , b1 ) = gdje je

k =0

(hk b0 b1 log(xk ))2 min, b1 = a1 .

b0 = log(a0 ),

U ovom slu caju, da bismo mogli provesti linearizaciju, moraju biti i xk > 0 i fk > 0. (b) Funkcija (x) = linearizira se na sljede ci na cin (x) = 1 = a0 + a1 x, (x) hk = 1 , fk k = 0, . . . , n. 1 a0 + a1 x

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 355

Pripadni linearni problem najmanjih kvadrata je


n

S = S (a0 , a1 ) =

k =0

(hk a0 a1 xk )2 min .

x a0 + a1 x mo zemo linearizirati na vi se na cina. Prvo, mo zemo staviti (x) = (x) = 1 1 = a0 + a1 , (x) x hk = 1 , fk k = 0, . . . , n.

(c) Funkciju

Pripadni linearni problem najmanjih kvadrata je


n

S = S (a0 , a1 ) = Mo ze i ovako (x) =

k =0

(hk a0

1 a1 )2 min . xk

x = a0 + a1 x, (x)

hk =

xk , fk

k = 0, . . . , n.

Pripadni linearni problem najmanjih kvadrata je


n

S = S (a0 , a1 ) =

k =0

(hk a0 a1 xk )2 min .

(d) Funkcija (x) = linearizira se stavljanjem (x) =

1 a0 + a1 ex 1 , fk

1 = a0 + a1 ex , (x)

hk =

k = 0, . . . , n.

Pripadni linearni problem najmanjih kvadrata je


n

S = S (a0 , a1 ) =

k =0

(hk a0 a1 exk )2 min .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 356

10.5.2.

Matri cna formulacija linearnog problema najmanjih kvadrata

Da bismo formirali matri cni zapis linearnog problema najmanjih kvadrata, moramo preimenovati nepoznanice, naprosto zato da bismo matricu, vektor desne strane i nepoznanice u linearnom sustavu pisali u uobi cajenoj formi (standardno su nepoznanice x1 , . . . , xm , a ne a0 , . . . , am ). Pretpostavimo da imamo skup mjerenih podataka (tk , yk ), k = 1, . . . , n, i da zelimo taj model aproksimirati funkcijom oblika (t). Ako je (t) linearna, tj. ako je (t) = x1 1 (t) + + xm m (t), onda bismo zeljeli prona ci parametre xj tako da mjereni podaci (tk , yk ) zadovoljavaju
m

yk =
j =1

xj j (tk ),

k = 1, . . . , n.

Ako ozna cimo akj = j (tk ), bk = yk , onda prethodne jednad zbe mo zemo u matri cnom obliku pisati kao Ax = b. Ako je mjerenih podataka vi se nego parametara, tj. ako je n > m, onda ovaj sustav jednad zbi ima vi se jednad zbi nego nepoznanica, pa je preodreden. Kao sto smo ve c u uvodu rekli, postoji mnogo na cina da se odredi najbolje rje senje, ali zbog statisti ckih razloga to je cesto metoda najmanjih kvadrata, tj. odredujemo x tako da minimizira gre sku r = Ax b (r se cesto zove rezidual) min r
x 2

= min Ax b 2 ,
x

A Rn m ,

b Rn .

(10.5.2)

Ako je rang(A) < m, onda rje senje x ovog problema o cito nije jedinstveno, jer mu mo zemo dodati bilo koji vektor iz nul-potprostora od A, a da se rezidual ne promijeni. S druge strane, medu svim rje senjima x problema najmanjih kvadrata uvijek postoji jedinstveno rje senje x najmanje norme, tj. koje jo s minimizira i x 2 .

10.5.3.

Karakterizacija rje senja

Prvo, karakterizirajmo skup svih rje senja problema najmanjih kvadrata. Teorem 10.5.1. Skup svih rje senja problema najmanjih kvadrata (10.5.2) ozna cimo s S = {x Rm | Ax b 2 = min}.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 357

Tada je x S ako i samo ako vrijedi sljede ca relacija ortogonalnosti AT (b Ax) = 0. Dokaz: Pretpostavimo da x zadovoljava AT r = 0, Tada za bilo koji x Rm imamo r = b Ax = r + Ax Ax = r A(x x ). Ako ozna cimo e=xx , onda je r
2 2

(10.5.3)

r = b Ax .

= r T r = ( r Ae)T ( r Ae) = r T r + Ae 2 2,

sto je minimizirano kad je x = x . S druge strane, pretpostavimo da je AT r =z =0 i uzmimo x=x + z. Tada je r=r Az i r
2 2

= rT r = r T r 2z T z + 2 (Az )T (Az ) < r T r

za dovoljno mali , pa x nije rje senje u smislu najmanjih kvadrata. Relacija (10.5.3) cesto se zove sustav normalnih jednad zbi i uobi cajeno se pi se u obliku AT Ax = AT b. Matrica AT A je simetri cna i pozitivno semidenitna, a sustav normalnih jednad zbi je uvijek konzistentan, jer je AT b R(AT ) = R(AT A). Cak stovi se, vrijedi i sljede ci teorem. Teorem 10.5.2. Matrica AT A je pozitivno denitna ako i samo ako su stupci od A linearno nezavisni, tj. ako je rang(A) = m.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 358

Dokaz: Ako su stupci od A linearno nezavisni, tada za svaki x = 0 vrijedi Ax = 0 (denicija linearne nezavisnosti), pa je za takav x xT AT Ax = Ax tj. AT A je pozitivno denitna. S druge strane, ako su stupci linearno zavisni, tada postoji x0 = 0 takav da je Ax0 = 0, pa je za takav x0 T xT 0 A Ax0 = 0. Ako je x takav da je Ax = 0, onda je xT AT Ax > 0, pa je AT A pozitivno semidenitna. Iz prethodnog teorema slijedi, da ako je rang(A) = m, onda postoji jedinstveno rje senje problema najmanjih kvadrata, koje je dano s x = (AT A)1 AT b, r = b A(AT A)1 AT b.
2 2

> 0,

Ako je S Rn potprostor, onda je PS Rnn ortogonalni projektor na S , ako je R(PS ) = S i 2 T PS = PS , PS = PS . Nadalje, vrijedi i pa je I PS projektor na ortogonalni komplement od S . (I P S )2 = I P S , (I P S )P S = 0 ,

Tvrdimo da postoji jedinstveni ortogonalni projektor na S . Pretpostavimo da postoje dva ortogonalna projektora P1 i P2 . Za sve z Rn , onda vrijedi (P 1 P 2 )z
2 2

= z T P 1 (I P 2 )z + z T P 2 (I P 1 )z = 0 . Odatle odmah slijedi da je P1 = P2 , tj. ortogonalni je projektor jedinstven. Iz geometrijske interpretacije problema najmanjih kvadrata odmah vidimo da je Ax ortogonalna projekcija vektora b na R(A).

= z T (P 1 P 2 P 1 P 1 P 2 + P 2 )z

T T T T = z T (P 1 P 2 )T (P 1 P 2 )z = z T (P 1 P1 P2 P1 P1 P2 + P2 P 2 )z

b Ax

R(A)

Ax

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 359

Takoder r = (I PR(A) )b i u slu caju punog ranga matrice A vrijedi PR(A) = A(AT A)1 AT . Ako je rang(A) < m, onda A ima netrivijalni nul-potprostor i rje senje problema najmanjih kvadrata nije jedinstveno. Istaknimo jedno od rje senja x . Skup svih rje senja S onda mo zemo opisati kao S = {x = x + z | z N (A)}. Ako je x N (A), onda je x
2 2

= x

2 2

+ z 2 2,

pa je x jedinstveno rje senje problema najmanjih kvadrata koje ima minimalnu 2normu.

10.5.4.

Numeri cko rje savanje problema najmanjih kvadrata

Postoji nekoliko na cina rje savanja problema najmanjih kvadrata u praksi. Obi cno se koristi jedna od sljede cih metoda: 1. sustav normalnih jednad zbi, 2. QR faktorizacija, 3. dekompozicija singularnih vrijednosti, 4. transformacija u linearni sustav. Sustav normalnih jednad zbi Prva od navedenih metoda je najbr za, ali je najmanje to cna. Koristi se kad je A A pozitivno denitna i kad je njena uvjetovanost mala. Matrica AT A rastavi se faktorizacijom Choleskog, a zatim se rije si linearni sustav
T

AT Ax = AT b. Ukupan broj aritmeti ckih operacija za ra cunanje AT A, AT b, te zatim faktorizaciju Choleskog je nm2 + 1 m3 + O (m2 ). Budu ci da je n m, onda je prvi clan dominantan 3 T u ovom izrazu, a potje ce od formiranja A A.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 360

Kori stenje QR faktorizacije u problemu najmanjih kvadrata Ponovno, pretpostavimo da je AT A pozitivno denitna. Polazimo od rje senja problema najmanjih kvadrata dobivenog iz sustava normalnih jednad zbi x = (AT A)1 AT b. Zatim napi semo QR faktorizaciju matrice A A = QR = Q0 R0 , gdje je Q0 ortogonalna matrica tipa (n, m), a R0 trokutasta tipa (m, m) i uvrstimo u rje senje. Dobivamo
T T T T x = (AT A)1 AT b = (R0 Q0 Q0 R0 )1 R0 Q0 b T T T 1 T T T 1 T = (R0 R0 )1 R0 Q0 b = R0 R0 R0 Q0 b = R0 Q0 b,

tj. x se dobiva primjenom invertirane skra cene QR faktorizacije od A na b (po analogiji s rje savanjem linearnih sustava, samo sto A ne mora imati inverz). Preciznije, da bismo na sli x, rje savamo trokutasti linearni sustav R0 x = QT 0 b. Na ovakav se na cin naj ce s ce rje savaju problemi najmanjih kvadrata. Nije te sko 2 3 2 pokazati da je cijena ra cunanja 2nm 3 m , sto je dvostruko vi se nego za sustav normalnih jednad zbi kad je n m, a pribli zno jednako za m = n.

QR faktorizacija mo ze se koristiti i za problem najmanjih kvadrata kad matrica A nema puni stup cani rang, ali tada se koristi QR faktorizacija sa stup canim pivotiranjem (na prvo mjesto dovodi se stupac ciji radni dio ima najve cu normu). Za sto ba s tako? Ako matrica A ima rang r < m, onda njena QR faktorizacija ima oblik R11 R12 A = QR = Q 0 0 , 0 0 gdje je R11 nesingularna reda r , a R12 neka r (m r ) matrica. Zbog gre saka zaokru zivanja, umjesto pravog R, izra cunamo R11 R12 R = 0 R22 . 0 0 Naravno, zeljeli bismo da je R22 2 vrlo mala, reda veli cine A 2 , pa da je mo zemo zaboraviti, tj. staviti R22 = 0 i tako odrediti rang od A. Na zalost, to nije uvijek

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 361

tako. Na primjer, bidijagonalna matrica



1 2

A=

1 .. .. . . .. . 1
1 2

je skoro singularna (det(A) = 2n ), njena QR faktorizacija je Q = I , R = A, i nema niti jednog R22 koji bi bio po normi malen. Zbog toga koristimo pivotiranje, koje R11 poku sava dr zati sto bolje uvjetovanim, a R22 po normi sto manjim. Dekompozicija singularnih vrijednosti i problem najmanjih kvadrata Vjerojatno jedna od najkorisnijih dekompozicija i s teoretske strane (za dokazivanje cinjenica) i s prakti cne strane je dekompozicija singularnih vrijednosti (engl. singular value decomposition) ili, skra ceno, SVD. Teorem 10.5.3. Neka je A proizvoljna matrica tipa n m, n m. Tada se A mo ze dekomponirati kao A=U V = U V , 0 gdje je = diag(1 , . . . , m ), 1 m 0, U = [U, U0 ] je n n, a V je m m unitarna matrica. Stupce matrice U (u oznaci ui ) zovemo lijevi singularni vektori, stupce matrice V (u oznaci vi ) desni singularni vektori, a dijagonalne elemente matrice singularne vrijednosti. Ako je n < m, dekompozicija singularnih vrijednosti denira se za A . Ako je A realna, U i V su, takoder, realne. Prije samog formalnog dokaza, objasnimo zna cenje dekompozicije. Ako o matrici A razmi sljamo kao zapisu operatora koji preslikava vektor x Rm u vektor n y = Ax R , onda mo zemo izabrati ortogonalni koordinatni sustav u Rm (osi su mu jedini cni vektori stupci u V ) i drugi ortogonalni koordinatni sustav u Rn (osi su mu jedini cni vektori stupci u U ), takve da je zapis tog operatora u tom paru baza dijagonalna matrica. Drugim rije cima, A preslikava vektor
m

x=
i=1

i vi

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 362

u y = Ax =

i i ui,
i=1

tj. svaka se matrica mo ze dijagonalizirati u paru baza, ako smo joj za domenu i sliku izabrali odgovaraju ce ortogonalne koordinatne sustave (baze). Dokaz: Dokaz se provodi indukcijom po n i m. Pretpostavljamo da postoji dekompozicija singularnih vrijednosti od matrice dimenzije (n 1) (m 1) i dokazujemo da tada postoji i za n m matricu. Pretpostavljamo da je A = 0, jer u protivnom je = 0, a U i V su proizvoljne unitarne matrice. Baza indukcije je za m = 1, jer je n m. Napi simo tu jednostup canu matricu u obliku A = U V , gdje je U= A , A 2 = A 2, V = 1.
2

Za korak indukcije, izaberemo vektor v , takav da je v ba s dosti ze maksimum 2-norme za A, tj. vrijedi A Deniramo jedini cni vektor u=
2

= 1 i na njemu se

= max Ax
x
2 =1

= Av 2 .

Av . Av 2

Vektore u i v dopunimo matricama U , odnosno V , tako da U0 = [u, U ], V0 = [v, V ]

budu redom n n i m m unitarne matrice. Sad mo zemo pisati


U0 AV0 =

u U

A [v, V ] =

u Av u AV U Av U AV

(10.5.4)

Po deniciji vektora u i v je u Av = v A Av Av = Av 2 Av
2 2 2

= Av

= A

:= .

Nadalje, zbog ortogonalnosti stupaca unitarne matrice U0 , svi stupci matrice U su okomiti na vektor u, pa je U u = 0. Onda je i U Av = U u Av
2

= 0.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 363

Tvrdimo i da je u AV = 0. Ozna cimo s


A1 = U0 AV0 ,

w = u AV , w . 0 B

B = U AV .

Relacija (10.5.4) tada glasi A1 = Zbog unitarne invarijantnosti 2-norme je = A


2 = U0 AV0 2

= A1 2 .

S druge strane, za proizvoljni vektor z = 0 vrijedi A1 odnosno A1 Izaberimo z= Onda je A1 2 2 z


2 2 2 2

= max
x=0

A1 x 2 A1 z 2 , x 2 z 2 A1 z 2 . . w

= =

2 A1 2 2 (

+ w w

2 2) 2

A1 z

2 2

= A1

2 2 2 2 2 ( 2 + w 2 2) ,

w 0 B

= ( 2 + w w )2 + Bw
2

pa vidimo da je Dijeljenjem s ( 2 + w 2 2 ) dobivamo 2 = A sto je mogu ce samo za w = 0. Drugim rije cima, vrijedi
U0 AV0 = 2 2 2 2 2 2 2 A1 2 2 ( + w 2 ) ( + w 2 ) .

= A1

2 2

2 + w 2 2,

0 . 0 B

Sada mo zemo iskoristiti pretpostavku indukcije na matricu B , B = U1 1 V1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 364

pa dobivamo
U0 AV0

0 = 0 U1 1 V1

1 0 = 0 U1

0 0 1

1 0 0 V1

odakle odmah slijedi tvrdnja. Ako zelimo biti potpuno precizni, treba jo s silazno poredati singularne vrijednosti. To se posti ze primjenom matrica permutacije P1 reda m, i P2 reda n, tako da matrica 0 := P2 P1 0 1 ima silazno poredanu dijagonalu. Lako se vidi da je P2 = P1 0 , 0 Inm

gdje je Inm jedini cna matrica reda n m. Na kraju, znamo da su P1 i P2 unitarne matrice, a produkt unitarnih matrica je opet unitarna matrica, pa su U := U0 1 0 P2 , 0 U1 V := V0 1 0 P1 , 0 V1

unitarne matrice i vrijedi A = U V . Nabrojimo neka svojstva SVD-a. Budu ci da je rije c o mnogo tvrdnji koje su (uglavnom) neovisne, radi lak seg pra cenja, podijelit cemo iskaz teorema u tvrdnje i svaku od njih odmah i dokazati. Teorem 10.5.4. Neka je A = U V T dekompozicija singularnih vrijednosti (SVD) realne matrice A tipa n m, n m. Tvrdnja 1. Ako je A simetri cna matrica reda m sa svojstvenim vrijednostima i i ortonormalnim svojstvenim vektorima ui, tj. ako je svojstvena dekompozicija za A oblika A = U U T , = diag(1 , . . . , m ), U = [u1 , . . . , um ], UU T = I,

onda je SVD matrice A A = U V T , gdje je i = |i| i vi = sign(i )ui, uz dogovor da je sign(0) = 1. Dokaz: O cit iz denicije SVD-a.
2 Tvrdnja 2. Svojstvene vrijednosti simetri cne matrice AT A su i . Desni singularni vektori vi su pripadni svojstveni vektori.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 365

Dokaz: Vrijedi AT A = V T U T U V T = V 2 V T i to je svojstvena dekompozicija od AT A.


2 Tvrdnja 3. Svojstvene vrijednosti matrice AAT su i i jo s n m njih koje su jednake nula. Lijevi singularni vektori ui su pripadni svojstveni vektori za svojstvene 2 vrijednosti i . Za preostale nula svojstvene vrijednosti, mo zemo kao svojstvene vektore uzeti bilo kojih n m vektora koji s prethodnima cine ortogonalnu matricu (dopuna do ortonormirane baze).

Dokaz: Uzmemo puni SVD, s kvadratnom matricom U . Onda je AAT = U 2 0 2 0 V T V [T , 0] U T = U U T = [U, U0 ] [U, U0 ]T , 0 0 0 0 0

sto je svojstvena dekompozicija od AAT . Tvrdnja 4. Neka je A kvadratna matrica reda m, i neka je A = U V T SVD od A, uz = diag(1 , . . . , m ), U = [u1 , . . . , um ], V = [v1 , . . . , vm ]. Neka je H= 0 AT A 0 .

Tada je 2m svojstvenih vrijednosti od H jednako i , a pripadni svojstveni vektori su 1 vi . 2 ui Dokaz: Uvrstimo SVD od A u formulu za H . Onda je H= 0 AT A 0 = 0 V U T T U V 0 = 0 V U 0 0 0 0 UT VT 0 .

Lako se provjerava da je matrica 1 I I Q= 2 I I ortogonalna i da vrijedi Q 0 0 QT = . 0 0

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 366

Kona cno, zaklju cujemo da je H= 0 V U 0 QT Q 0 0 UT QT Q 0 VT 0 0 0 1 V V 2 U U


T

1 V V = 2 U U sto je svojstvena dekompozicija od H .

Tvrdnja 5. Ako A ima puni rang, onda je rje senje problema najmanjih kvadrata min Ax b
x 2

jednako x = V 1 U T b, tj. dobiva se primjenom invertiranog skra cenog SVD-a od A na b. Dokaz: Vrijedi Budu ci da je A punog ranga, to je i . Zbog unitarne ekvivalencije 2-norme, vrijedi U V x b
T 2 2

Ax b
T

2 2

= U V T x b 2 2.
2 2 2 2

= U (U V x b) = V x U b T U0 b
T T

UT T U0

(U V x b)
2 2

= V T x U T b

T + U0 b 2 2.

Prethodni izraz se minimizira ako je prvi clan jednak 0, tj. ako je x = V 1 U T b. Usput dobivamo i vrijednost minimuma min Ax b
x 2 T = U0 b 2.

Tvrdnja 6. Neka je A kvadratna matrica reda m i pretpostavimo da je A nesingularna. Ako je 1 najve ca, a m najmanja singularna vrijednost od A, onda je 1 1 A 2 = 1 , A1 2 (A) = A 2 A1 2 = . 2 = m , m Dokaz: Zbog unitarne ekvivalencije 2-norme, vrijedi A A1
2 2

= U T AV

=
2

= 1
2 1 = m .

= U T A1 V

= 1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 367

Tvrdnja 7. Pretpostavimo da je 1 r > r+1 = = m = 0. Tada je rang(A) = r . Nul-potprostor od A, tj. potprostor svih vektora v za koje je Av = 0, je potprostor razapet sa stupcima vr+1 , . . . , vm od V . Slika operatora A, tj. potprostor svih vektora oblika Aw za sve w , razapet je stupcima u1 , . . . , ur od U . Dokaz: Ponovno, napi simo SVD kori stenjem kvadratnih matrica U i V . Budu ci da su obje ortogonalne, one su nesingularne, pa je rang(A) = rang() = r , po pretpostavci. Takoder, v je u nul-potprostoru od A ako i samo ako je V T v u nulpotprostoru od U T AV = := , 0 jer je Av = 0 ako i samo ako je U T AV (V T v ) = 0. Ali, nul-potprostor matrice je, o cito razapet stupcima (r + 1) do m jedini cne matrice Im , pa je nul-potprostor od A razapet sa V puta ti stupci, tj. sa stupcima (r + 1) do m matrice V . Sli can argument vrijedi i za ostatak dokaza. Tvrdnja 8. Neka je S m1 jedini cna sfera u Rm , S m1 = {x Rm | x
2

= 1} .

Neka je A S m1 slika od S m1 kad se jedini cna sfera preslika operatorom A, A S m1 = {Ax | x Rm , x


2

= 1} .

Ta slika A S m1 je elipsoid sa sredi stem u ishodi stu od Rm i glavnim osima i ui , za i = 1, . . . , m. Dokaz: Radi jednostavnosti, pretpostavimo da je A kvadratna i nesingularna. Matrica V je ortogonalna, pa ona preslikava jedini cne vektore u neke druge jedini cne vektore, tj. vrijedi V T S m1 = S m1 . Budu ci da je v S m1 ako i samo ako je v 2 = 1, onda je w S m1 ako i samo ako je 1 w 2 = 1 ili
m i=1

wi i

= 1.

Time je deniran elipsoid s glavnim osima i ei . Kona cno, mno zenjem svakog w = v matricom U rotira taj elipsoid (oko ishodi sta), tako da se svaki vektor ei preslika u ui . Dobiveni elipsoid ima glavne osi i ui . Isti argument vrijedi i u op cem slu caju n m i kad je rang(A) = r m. m1 Matrica V radi isto, a S je elipsoid s glavnim osima i ei , za i = 1, . . . , r (za i > r , ostale osi i ei su nula). Na kraju, U rotira taj elipsoid po istom pravilu.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 368

Tvrdnja 9. Zapi simo matrice U i V iz SVD-a od A u stup canom obliku U = [u1 , . . . , um], V = [v1 , . . . , vm ].

Onda matricu A (preko SVD-a) mo zemo pisati kao zbroj matrica ranga 1
m

A = U V T =
i=1

T i ui vi .

Matricu Ak , istog tipa kao i A, ranga rang(Ak ) k < m, koja je po 2-normi najbli za matrici A, mo zemo zapisati kao
k

Ak = U k V T =
i=1

T i ui vi ,

pri cemu je k = diag(1 , . . . , k , 0, . . . , 0). Pritom je A Ak


2

= k+1

se k . najmanja udaljenost izmedu A i svih matrica ranga najvi Dokaz: Ovo je, zapravo, tvrdnja o najboljoj aproksimaciji matrice A matricom ni zeg ranga i njihovoj udaljenjosti u 2-normi. Prema konstrukciji, Ak ima rang najvi se k i vrijedi
m

A Ak

=
i=k +1

T i ui vi 2

= U diag(0, . . . , 0, k+1 , . . . , m )V T

= k+1 .

Ostaje pokazati da je to i najbli za matrica ranga najvi se k matrici A. Neka je B bilo koja matrica istog tipa za koju vrijedi rang(B ) k . Onda njezin nul-potprostor ima dimenziju barem m k . S druge strane, potprostor razapet vektorima v1 , . . . , vk+1 ima dimenziju k + 1, pa sigurno postoji netrivijalni vektor koji se nalazi u njegovom presjeku s nul-potprostorom od B . Neka je h pripadni jedini cni vektor koji se nalazi u presjeku ta dva potprostora. Onda je Bh = 0 i AB
2

(A B )h = V h
T 2

= Ah
T

= U V T h
2

k+1 V h

= k+1 .

Zadnja nejednakost je posljedica pretpostavke da je h linearna kombinacija vektora v1 , . . . , vk+1 . Ovom tvrdnjom smo zavr sili teorem 10.5.4. o svojstvima dekompozicije singularnih vrijednosti.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 369

Uo cite da u prethodnom teoremu, u tvrdnji 5, pi se rje senje problema najmanjih kvadrata kad je matrica A punog ranga. Uobi cajeno se SVD primjenjuje u metodi najmanjih kvadrata i kad matrica A nema puni stup cani rang. Rje senja su istog oblika (sjetite se, vi se ih je), samo sto moramo znati izra cunati inverz matrice kad ona nije regularna, tj. kad ima neke nule na dijagonali. Takav inverz zove se generalizirani inverz i ozna cava sa + ili . U slu caju da je = pri cemu je 1 regularna, onda je + =
1 0 1 . 0 0

1 0 , 0 0

Jo s preciznije, za problem najmanjih kvadrata tada vrijedi sljede ca propozicija. Propozicija 10.5.1. Neka matrica A ima rang r < m. Rje senje x koje minimizira Ax b 2 mo ze se karakterizirati na sljede ci na cin. Neka je A = U V T SVD od A i neka je 1 0 A = U V T = [U1 , U2 ] [V1 , V2 ]T = U1 1 V1T , 0 0 gdje je 1 nesingularna, reda r , a matrice U1 i V1 imaju r stupaca. Neka je := min (1 ), najmanja ne-nula singularna vrijednost od A. Tada se sva rje senja problema najmanjih kvadrata mogu napisati u formi
1 T x = V1 1 U1 b + V2 z,

gdje je z proizvoljni vektor. Rje senje x koje ima minimalnu 2-normu je ono za koje je z = 0, tj. 1 T x = V1 1 U1 b, i vrijedi ocjena x
2

b 2 .

Dokaz: Nadopunimo matricu [U1 , U2 ] stupcima matrice U3 do ortogonalne matrice reda n, i ozna cimo je s U . Kori stenjem unitarne invarijantnosti 2-norme, dobivamo Ax b
2 2

= U T (Ax b) =

2 2

1 V1T x

T U2 b T U3 b

T U1 b

T U1 T T = U2 (U1 1 V1 x b) T U3

2 T + U2 b 2 2 T + U3 b 2 2.

T = 1 V1T x U1 b 2

2 2

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 370

O cito, izraz je minimiziran kad je prva od tri norme u posljednjem redu jednaka 0, tj. ako je T 1 V1T x = U1 b, ili
1 T x = V1 1 U1 b.

Stupci matrica V1 i V2 su medusobno ortogonalni, pa je V1T V2 z = 0 za sve vektore z . Odavde vidimo da x ostaje rje senje problema najmanjih kvadrata i kad mu dodamo V2 z , za bilo koji z , tj. ako je
1 T x = V1 1 U1 b + V2 z.

To su ujedno i sva rje senja, jer stupci matrice V2 razapinju nul-potprostor N (A) (tvrdnja 7. teorema 10.5.4.). Osim toga, zbog spomenute ortogonalnosti vrijedi i x
2 2 1 T = V1 1 U1 b 2 2

+ V2 z 2 2,

a to je minimalno za z = 0. Na kraju, za to minimalno rje senje vrijedi ocjena x


2 1 T = V1 1 U1 b 2 1 T = 1 U1 b 2

T U1 b

b 2 .

Primjerom se lako pokazuje da je ova ocjena dosti zna. Rje senje problema najmanjih kvadrata kori stenjem SVD-a je najstabilnije, a mo ze se pokazati da je, za n m, njegovo trajanje pribli zno jednako kao i trajanje 4 3 rje senja kori stenjem QR-a. Za manje n, trajanje je pribli zno 4nm2 3 m + O (m2 ). Transformiranje problema najmanjih kvadrata na linearni sustav Ako matrica A ima puni rang po stupcima, onda problem najmanjih kvadrata mo zemo transformirati i na linearni sustav razli cit od sustava normalnih jednad zbi. Simetri cni linearni sustav I A r b = , T A 0 x 0 ekvivalentan je sustavu normalnih jednad zbi. Ako napi semo prvu i drugu blokkomponentu r + Ax = b, AT r = 0, onda uvr stavanjem r -a iz prve blok-jednad zbe u drugu dobivamo sustav AT (b Ax) = 0. Prvi sustav ima bitno manji raspon elemenata od sustava normalnih jednad zbi. Osim toga, ako je matrica A lo se uvjetovana, kod tog sustava mo zemo lak se koristiti iterativno pronjavanje rje senja.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 371

10.6.

Op ci oblik metode najmanjih kvadrata

Nakon sto smo napravili osnovni oblik diskretne metode najmanjih kvadrata, na sli can na cin mo zemo rije siti i op ci problem aproksimacije po metodi najmanjih kvadrata, tj. u 2-normi. Dovoljno je uo citi da je diskretna 2-norma generirana obi cnim euklidskim skalarnim produktom na kona cno dimenzionalnim prostorima. Po istom principu, u op cem slu caju, radimo na nekom unitarnom prostoru s nekim skalarnim produktom, a pripadna norma je generirana tim skalarnim produktom. Na po cetku zgodno je uvesti oznake koje nam omogu cavaju da diskretni i neprekidni slu caj analiziramo odjednom, u istom op cem okru zenju unitarnih prostora.

10.6.1.

Te zinski skalarni produkti

Unitarni prostor U je vektorski prostor na kojem je deniran skalarni produkt.

10.7.

Familije ortogonalnih funkcija

Za dvije funkcije re ci cemo da su ortogonalne, ako je njihov skalarni produkt jednak 0. Na primjer, za neprekidnu ili diskretnu mjeru d, te funkcije u i v koje imaju kona cnu normu mo zemo denirati skalarni produkt kao u(x) v (x) d.

Postoji mnogo familija ortogonalnih funkcija. Evo nekoliko primjera takvih familija (sistema). Ortogonalni polinomi;

Trigonometrijski polinomi.

10.8.

Neka svojstva ortogonalnih polinoma

Ortogonalni polinomi imaju jo s i niz dodatnih dobrih svojstava, zbog kojih se mogu konstruktivno primijeniti u raznim granama numeri cke matematike. Sljede ci niz teorema sadr zi samo neka osnovna svojstva koja cemo kasnije iskoristiti za konstrukciju algoritama. Sva ta svojstva su direktna posljedica ortogonalnosti polinoma i ne ovise bitno o tome da li je skalarni produkt diskretan ili kontinuiran.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 372

Medutim, na ovom mjestu je zgodno napraviti razliku izmedu diskretnih i kontinuiranih skalarnih produkata, prvenstveno radi jednostavnosti iskaza, dokaza i kasnijeg pozivanja na ove teoreme. Pa zljivije citanje ce samo potvrditi da bitne razlike nema. Standardno cemo promatrati neprekidni skalarni produkt
b

u, v =
a

w (x)u(x)v (x) dx

generiran te zinskom funkcijom w 0 na [a, b]. Ako svi polinomi pripadaju odgovaraju cem prostoru kvadratno integrabilnih funkcija, onda postoji pripadna familija ortogonalnih polinoma koju ozna cavamo s {pn (x) | n 0}. Dogovorno smatramo da je stupanj polinoma pn ba s jednak n, za svaki n 0. Paralelno cemo promatrati i diskretni skalarni produkt
n

u, v =
i=0

wi u(xi )v (xi )

generiran medusobno razli citim cvorovima x0 , . . . , xn i pripadnim pozitivnim te zinama w0 , . . . , wn . Pripadni unitarni prostor funkcija na zadanoj mre zi cvorova (izomorfno) sadr zi sve polinome stupnja manjeg ili jednakog n, pa sigurno postoji pripadna baza ortogonalnih polinoma koju ozna cavamo s {pk (x) | 0 k n}. Opet uzimamo je stupanj polinoma pk ba s jednak k , za svaki k {0, . . . , n}. Teorem 10.8.1. Neka je {pn (x) | n 0} familija ortogonalnih polinoma na intervalu [a, b] s te zinskom funkcijom w (x) 0. Ako je f polinom stupnja m, tada vrijedi m f, pn f= pn . n=0 pn , pn Dokaz: Prvo, poka zimo da se svaki polinom mo ze napisati kao kombinacija ortogonalnih polinoma stupnja manjeg ili jednakog njegovom. Dokaz ide kori stenjem GramSchmidtove ortogonalizacije. Poka zimo, redom, da se monomi {1, x, x2 , . . . } mogu prikazati pomo cu ortogonalnih polinoma.

Ako je stupanj ortogonalnog polinoma 0, on je nu zno konstanta razli cita od nule, tj. vrijedi p0 (x) = c0,0 , c0,0 = 0, pa se prvi monom 1 mo ze napisati kao 1= 1 c0,0 p0 (x).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 373

Za polinome stupnja jedan, konstrukcija slijedi iz GramSchmidtovog procesa ortogonalizacije sustava funkcija {1, x} p1 (x) = c1,1 x + c1,0 p0 (x), tj. vrijedi x= 1 c1,1 c1,1 = 0,

[p1 (x) c1,0 p0 (x)].

Kori stenjem indukcije u GramSchmidtovom procesu na {1, x, x2 , . . . , xn }, dobivamo pn (x) = cn,n xn + cn,n1 pn1 (x) + + cn,0p0 (x), cn,n = 0, gdje su p0 , p1 , . . . , pn1 dobiveni ortogonalizacijom iz {1, x, . . . , xn1 }, pa je xn = 1 cn,n [pn (x) cn,n1pn1 (x) cn,0 p0 (x)].

Neka je f bilo koji polinom stupnja (manjeg ili jednakog) m, za neki m N0 . Tada se f mo ze napisati kao linearna kombinacija monoma {1, x, . . . , xm }, prikazom u standardnoj bazi. Budu ci da se svaki monom mo ze napisati kao linearna kombinacija ortogonalnih polinoma stupnja manjeg ili jednakog od stupnja tog monoma, odmah slijedi da se i f mo ze napisati kao neka linearna kombinacija ortogonalnih polinoma stupnjeva manjih ili jednakih m, tj. da vrijedi
m

f=
j =0

bj pj .

Ostaje samo odrediti koecijente bj . Mno zenjem prethodne relacije te zinskom funkcijom w , pa polinomom pn , a zatim integriranjem na [a, b], tj. skalarnim mno zenjem s pn , dobivamo
m

f, pn =
j =0

bj pj , pn = bn pn , pn ,

koriste ci ortogonalnost pj i pn , za j = n. Odatle odmah slijedi da je bn = jer je pn


2

f, pn , pn , pn

= pn , pn > 0.

Razvoj polinoma f stupnja m iz prethodnog teorema mo zemo napisati i tako da suma ide do , a ne do m, samo su svi dodatni koecijenti bn = 0, za n > m. To je posljedica sljede ce tvrdnje.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 374

Korolar 10.8.1. Ako je f polinom stupnja manjeg ili jednakog m 1, onda je f, pm = 0, tj. pm je okomit na f . Dakle, pm je okomit na sve polinome stupnja strogo manjeg od m. Dokaz: Po prethodnom teoremu, f se mo ze razviti po ortogonalnim polinomima stupnja manjeg ili jednakog m 1
m1

f (x) =
n=0

bn pn (x).

Mno zenjem s w (x)pm (x), te integriranjem, dobivamo da je


m1

f, pm =
n=0

bn pn , pm = 0,

zbog svojstva ortogonalnosti ortogonalnih polinoma pn , pm = 0, za n = m. Teorem 10.8.2. Neka je {pn (x) | n 0} familija ortogonalnih polinoma na intervalu [a, b] s te zinskom funkcijom w (x) 0. Tada svaki polinom pn ima to cno n razli citih (jednostrukih) realnih nulto caka na otvorenom intervalu (a, b). Dokaz: Neka su x1 , x2 , . . . , xm sve nulto cke polinoma pn za koje vrijedi: a < xi < b,

pn (x) mijenja predznak u xi . Budu ci da je pn stupnja n, po osnovnom teoremu algebre, polinom pn ima ukupno n nulto caka, pa onih koje zadovoljavaju prethodna dva svojstva ima manje ili jednako n. Pretpostavimo da je nulto caka koje zadovoljavaju tra zena dva svojstva striktno manje od n, tj. m < n. Poka zimo da je to nemogu ce. Deniramo polinom B (x) = (x x1 ) (x xm ). Po deniciji to caka x1 , . . . , xm , polinom pn (x)B (x) = (x x1 ) (x xm )pn (x) ne mijenja znak prolaskom kroz to cke x1 , . . . , xm , tj. citav polinom ne mijenja znak na (a, b). Preciznije, to implicira oblik funkcije pn pn (x) = h(x)(x x1 )r1 (x xm )rm ,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 375

pri cemu moraju biti svi ri neparni, a h(x) ne smije promijeniti predznak na (a, b). Mno zenjem s B (x), dobivamo pn (x)B (x) = h(x)(x x1 )r1 +1 (x xm )rm +1 . Nadalje, vrijedi
b

w (x)B (x)pn (x) dx = 0,


a

budu ci da je to integral nenegativne funkcije. S druge je strane taj integral skalarni produkt od B (polinom stupnja m < n) i sa pn (polinom stupnja n), pa je po prethodnom korolaru
b

w (x)B (x)pn (x) dx = B, pn = 0.


a

To je, o cito kontradikcija, pa je pretpostavka o stupnju polinoma B bila pogre sna, tj. mora biti m = n. Budu ci da pn ima to cno n nulto caka x1 , . . . , xn u kojima mijenja predznak, one moraju biti jednostruke, jer je pn (xi ) = 0. Neka je ponovno zadana familija ortogonalnih polinoma na intervalu [a, b] i neka su prva dva koecijenta funkcije pn jednaki pn (x) = An xn + Bn xn1 + . zmo napisati i kao Takoder, tada pn mo pn (x) = An (x xn,1 )(x xn,2 ) (x xn,n ). Deniramo takoder i an = An+1 , An n = pn , pn > 0 .

pri cemu su

Teorem 10.8.3. (tro clana rekurzija) Neka je {pn (x) | n 0} familija ortogonalnih polinoma na intervalu [a, b] s te zinskom funkcijom w (x) 0. Tada za n 1 vrijedi rekurzija pn+1 (x) = (an x + bn )pn (x) cn pn1 (x), bn = an Bn+1 Bn , An+1 An cn = An+1 An1 n . A2 n1 n

Dokaz: Promatrajmo polinom G(x) = pn+1 (x) an xpn (x) = (An+1 xn+1 + Bn+1 xn + ) = Bn+1 An+1 Bn n x + . An An+1 x(An xn + Bn xn1 + ) An

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 376

O cito, polinom G je stupnja manjeg ili jednakog n, pa ga mo zemo napisati kao linearnu kombinaciju ortogonalnih polinoma stupnja manjeg ili jednakog n, tj. G(x) = dn pn (x) + + d0 p0 (x) za neki skup konstanti di . Ra cunanjem di izlazi di = G, pi 1 = ( pn+1 , pi an xpn , pi ). pi , pi i

Budu ci da je pn+1 , pi = 0 za i n i da za i n 2 vrijedi


b

xpn , pi =
a

w (x)pn (x)xpi (x) dx = 0,

zaklju cujemo da je stupanj polinoma xpi (x) manji ili jednak n 1. Kombiniranjem ta dva rezultata, dobivamo di = 0 za 0 i n 2, pa je zbog toga G(x) = dn pn (x) + dn1 pn1 (x) pn+1 (x) = (an x + dn )pn (x) + dn1 pn1 (x). Ostaje jo s samo pokazati koliki su koecijenti dn1 i dn . Iz prve od dvije prethodne cih koecijenata funkcije G i vode cih koecijenata funrelacija, usporedivanjem vode cije s desne strane, dobivamo relaciju za dn . Teorem 10.8.4. (ChristoelDarbouxov identitet) Neka je {pn (x) | n 0} familija ortogonalnih polinoma na intervalu [a, b] s te zinskom funkcijom w (x) 0. Za njih vrijedi sljede ci identitet pk (x)pk (y ) pn+1 (x)pn (y ) pn (x)pn+1 (y ) = . k an n (x y ) k =0 Dokaz: Manipulacijom tro clane rekurzije.
n

10.9.

Trigonometrijske funkcije

Trigonometrijske funkcije {1, cos x, cos 2x, cos 3x, . . . , sin x, sin 2x, sin 3x, . . . }

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 377

cine ortogonalnu familiju funkcija na intervalu [0, 2 ] uz mjeru d = dx na [0, 2 ], 0 ina ce.
2

Poka zimo da je to zaista istina. Neka su k, N0 . Tada vrijedi


2

1 sin kx sin x dx = 2

(cos(k + )x cos(k )x) dx.

U slu caju da je k = , onda je prethodni integral jednak 1 sin(k + )x x 2 k+ Ako je k = , onda je jednak 1 sin(k + )x sin(k )x 2 k+ k Drugim rije cima, vrijedi
2 2 2

= .
0

= 0.
0

sin kx sin x dx =

0 , k = , , k = ,

k, = 1, 2, . . . ,

Na sli can na cin, pretvaranjem produkta trigonometrijskih funkcija u zbroj, mo zemo pokazati da je
2

te, takoder, da je

k = , cos kx cos x dx = 2, k = = 0, , k = > 0,


2

0,

k, = 0, 1, . . . ,

sin kx cos x dx = 0,

k = 1, 2 , . . . ,

= 0, 1 , . . . ,

Ako periodi cku funkciju f osnovnog perioda duljine 2 zelimo aproksimirati redom oblika a0 f (t) = + (ak cos kx + bk sin kx), 2 k =1 onda, mno zenjem odgovaraju cim trigonometrijskim funkcijama i integriranjem, za koecijente u redu formalno dobivamo 1 ak =
2

f (x) cos kx dx,


0

1 bk =

f (x) sin kx dx.


0

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 378

Prethodni red poznat je pod imenom Fourierov red, a koecijenti kao Fourierovi koecijenti. Posebno, ako Fourierov red odsije cemo za k = m i dobijemo trigonometrijski polinom, koji je najbolja L2 aproksimacija za f u klasi trigonometrijskih polinoma stupnja manjeg ili jednakog m, obzirom na normu
2 1/2

=
0

|u(t)| dt

10.9.1.

Diskretna ortogonalnost trigonometrijskih funkcija

Umjesto neprekidne, za pripadnu mjeru mo zemo uzeti i diskretnu mjeru, pa umjesto integrala, dobivamo sume. Da bismo dobili zeljeni razvoj moramo poznavati relacije diskretne relacije ortogonalnosti. Teorem 10.9.1. Za trigonometrijske funkcije, na mre zi od to caka 0, 1, . . . , N , uz oznaku 2 2 xk = kx, x = x, N +1 N +1 vrijede sljede ce relacije ortogonalnosti
N

sin xk sin x =
x=0 N

0, k = i k = = 0, (N + 1)/2, k = = 0,

sin xk cos x = 0
x=0 N

uz uvjet da je k + N .

k = , cos xk cos x = (N + 1)/2, k = = 0, x=0 N + 1, k = = 0,

0,

Dokaz: Doka zimo samo prvu relaciju. Iskoristimo formulu za pretvaranje produkta dva sinusa u zbroj trigonometrijskih funkcija. Vrijedi sin xk sin x = sin 2 2 kx sin x N +1 N +1 1 2 2 = cos (k )x cos (k + )x 2 N +1 N +1

Ako je k + N , onda su za x = 0, 1, . . . , N onda su argumenti prvog kosinusa s desne strane redom 2 4 2N 0, (k ), (k ), . . . , (k ). N +1 N +1 N +1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 379

Ako je k = , onda su svi argumenti prvog kosinusa 0, pa je


N

cos
x=0

N 2 (k )x = cos 0 = N + 1, N +1 x=0

k = .

2 (k ) N +1 podsje caju na argumente (N + 1)-og korijena iz 1 (vi sak je (k )). Ozna cimo s j , j = 0, . . . , N sve (N + 1)-ve korijene iz 1, Za slu caj k = koristimo znanje iz kompleksne analize. Clanovi j = cos Nadalje, ozna cimo s 2j 2j + i sin . N +1 N +1 (10.9.1)

2 2 + i sin . N +1 N +1 Primijetite da se tada svi (N + 1)-vi korijeni iz 1 mogu, kori stenjem De Moivreove formule (za potenciranje kompleksnih brojeva) napisati kao = cos j = j . O cito svi j zadovoljavaju jednad zbu xN +1 1 = 0. Iskoristimo li da su j svi korijeni te jednad zbe, nju mo zemo napisati u faktoriziranom obliku kao xN +1 1 = (x 0 )(x 1 ) (x N ). Usporedivanjem clanova uz N -tu potenciju slijeva i zdesna, dobivamo
N

0= Iskoristimo li (10.9.1) dobivamo


N N

j .

j =0

0=
j =0

j =
j =0

cos

N 2j 2j +i sin . N +1 N +1 j =0

Budu ci da je kompleksan broj jednak 0, nuli moraju biti jednaki i njegov realni i njegov imaginarni dio. Drugim rije cima, vrijedi 2j cos = 0, N +1 j =0
N N

sin
j =0

2j = 0. N +1

Vratimo se na po cetak. Trebali smo dokazati da je


N

cos
j =0

2j (k ) = 0 . N +1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 380

Primijetimo da su argumenti kosinusa u prethodnoj formuli argumenti (N + 1)-og korijena iz 1, pomno zeni s (k ), sto zna ci da su to argumenti od ( j )(k) = ( (k))j . To bi odgovaralo izboru korijena = cos 2 (k ) 2 (k ) + i sin N +1 N +1

umjesto . Odmah je jasno da vrijedi


N N

j =
j =0 j =0

j ,

pa je dokazano da je
N

cos
j =0

2j (k ) = 0. N +1

Na sli can se na cin pokazuje da je


N

cos
j =0

2j (k + ) = 0, N +1

za j + k = 0, cime je pokazana relacija ortogonalnosti za sinuse. Ovo zna ci da restrikcije funkcija cos 2 kx, N +1 sin 2 kx N +1 (10.9.2)

pri cemu su dozvoljeni k N0 za kosinuse i k N za sinuse, na mre zi {0, . . . , N } mo zemo koristiti kao ortogonalnu familiju. Linearne kombinacije funkcija (10.9.2) zvat cemo trigonometrijski polinom. Na zalost baze takvih trigonometrijskih polinoma ovise o parnosti N . Neparan broj to caka Neka je zadan neparan broj to caka M = {0, 1, . . . , N = 2L}. Za bazu se tada uzima prvih L + 1 kosinusa (prvi je konstanta) i prvih L sinusa, a pripadna trigonometrijska aproksimacija ima oblik TN (x) = pri cemu je xk =
L a0 + (ak cos xk + bk sin xk ), 2 k =1

(10.9.3)

2 2 kx := kx. N +1 2L + 1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 381

Koecijenti trigonometrijskog polinoma odreduju se iz relacija ortogonalnosti na uobi cajeni na cin, mno zenjem lijeve i desne strane u (10.9.3) izabranom funkcijom baze uz koju je odgovaraju ci koecijent. Ako trigonometrijski polinom TN interpolira funkciju f u x M, tj. ako je Tn (x) = f (x) onda mno zemjem (10.9.3) s cos x , 0, i upotrebom relacija ortogonalnosti dolazimo do koecijenata a
L L a0 f (x) cos x = cos x + ak cos xk cos x + bk sin xk cos x . 2 k =1 k =1

Zbrajanjem po svim x dobivamo


L 2L L 2L a0 2L f (x) cos x = cos 0 cos x + ak cos xk cos x + bk sin xk cos x 2 x=0 x=0 x=0 x=0 k =1 k =1 2L + 1 = a . 2 2L

Odatle odmah zaklju cujemo da je (pi su ci k umjesto ) ak = 2 2L + 1


2L

f (x) cos xk ,
x=0

k = 0, . . . , L.

Na sli can na cin, mno zenjem sa sin x , > 0, i zbrajanjem po svim x dobivamo
L 2L L 2L a0 2L f (x) sin x = cos 0 sin x + ak cos xk sin x + bk sin xk sin x 2 x=0 x=0 x=0 x=0 k =1 k =1 2L + 1 = b . 2 2L

Sli cno kao kod ak , imamo bk = 2 2L + 1


2L

f (x) sin xk ,
x=0

k = 1, . . . , L.

Dakle, u slu caju neparnog broja to caka koecijenti u (10.9.3) su ak = bk = 2 2L + 1 2 2L + 1


2L

f (x) cos xk ,
x=0 2L

k = 0, . . . , L, k = 1, . . . , L.

f (x) sin xk ,
x=0

Zadatak 10.9.1. Poka zite da za bilo koju to cku x , ne nu zno iz M vrijedi TN (x ) = 1 2L + 1


2L 2L

f (x)
x=0 k =0

cos

2 k (x x ) 2L + 1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 382

Paran broj to caka Neka je zadan paran broj to caka M = {0, 1, . . . , N = 2L 1}. Za bazu se tada uzima prvih L + 1 kosinusa (prvi je konstanta) i prvih L 1 sinusa, a pripadna trigonometrijska aproksimacija ima oblik 1 a0 L1 + (ak cos xk + bk sin xk ) + aL cos xL , TN (x) = 2 2 k =1 pri cemu je xk = 2 kx := kx. N +1 L (10.9.4)

Na sli can na cin kao kod neparnog broja to caka, koecijenti u (10.9.4) su 1 ak = L bk =
2L1

f (x) cos xk ,
x=0 2L1

k = 0, . . . , L, k = 1, . . . , L 1 .

1 2L

f (x) sin xk ,
x=0

Zadatak 10.9.2. Poka zite da i u slu caju neparnog i u slu caju parnog broja to caka, TN ima period N + 1. Zbog toga se jednostavno koristi za interpolaciju trigonometrijskih funkcija, a dovoljno je zadati samo to cke x iz jednog perioda. Primjer 10.9.1. Funkcija f ima period 3 i zadana je tabli cno s xk fk 0 0 1 1 2 1

Nadimo trigonometrijski polinom koji interpolira f u svim to ckama iz Z, a zatim izra cunajmo TN (1/2) i TN (3/2). Budu ci da je N = 2, broj to caka je neparan, pa je 1 2 2 T2 (x) = a0 + a1 cos x + b1 sin x. 2 3 3 Prema formulama za koecijente, dobivamo 2 4 (0 cos 0 + 1 cos 0 + 1 cos 0) = 3 3 2 2 4 2 a1 = 0 cos 0 + 1 cos + 1 cos = 3 3 3 3 2 2 4 b1 = 0 sin 0 + 1 sin + 1 sin = 0. 3 3 3 a0 =

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 383

Prma tome, trigonometrijski polinom koji interpolira zadane to cke je 2 2 2 T2 (x) = cos x. 3 3 3 Odatle se odmah mo ze izra cunati da je 2 2 1 T2 (1/2) = cos = 3 3 3 3 2 2 4 T2 (3/2) = cos = . 3 3 3 Metoda majnanjih kvadrata za trigonometrijske funkcije I za metodu najmanjih kvadrata mo zemo koristiti trigonometrijske polinome, jer je dovoljno uzeti podskup baze prostora. Sli cno kao kod interpolacije biramo po cetni dio baze (10.9.2). Takoder moramo paziti na parnost/neparnost broja to caka N i na parnost/neparnost stupnja trigonometrijskog polinoma M , M N . Ilustrirajmo to na slu caju N = 2L paran (broj to caka neparan) i M = 2m paran (neparna dimenzija potprostora). Trigonometrijski polinom odgovaraju ceg stupnja je m 1 TM (x) = A0 = (Ak cos xk + Bk sin xk ), (10.9.5) 2 k =1 gdje je 2 2 xk = kx := kx. N +1 2L + 1 Metoda najmanjih kvadrata minimizira kvadrat gre ske
2L

S=

x=0

(f (x) TM (x))2 min .

Tvrdimo da je rje senje problema mininizacije trigonometrijski interpolacijski polinom kojemu je Ak = ak , k = 0, . . . , m Bk = bk , k = 1, . . . , m, a koecijenti ak i bk se ra cunaju po formulama za interpolaciju. Primijetite da u to ckama interpolacije x, x = 0, . . . , 2L interpolacijski polinom ima istu vrijednost kao funkcija f , pa je dovoljno (u to ckama interpolacije) usporedivati interpolacijski trigonometrijski polinom TN , N = 2L i trigonometrijski polinom TM , M = 2m dobiven metodom najmanjih kvadrata. Vrijedi m 1 TN (x) TM (x) = (a0 A0 ) + ((ak Ak ) cos xk + (bk Bk ) sin xk ) 2 k =1
L

+
k =m+1

(ak cos xk + bk sin xk ).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 384

Dakle, u to ckama interpolacije x vrijedi f (x) TM (x) = TN (x) TM (x). Gre ska S koju minimiziramo dobiva se upotrebom relacija ortogonalnosti. Izlazi
2L

S := =

2L m 1 (a0 A0 )2 + ((ak Ak ) cos xk + (bk Bk ) sin xk )2 4 x=0 x=0 k =1 2L L

x=0 2L

(TN (x) TM (x))2

+
x=0 k =m+1

(ak cos xk + bk sin xk )2

2L m 1 2 (ak Ak )2 cos2 xk = (a0 A0 ) (2L + 1) + 4 x=0 k =1

2L

+ 2(ak Ak )(bk Bk ) cos xk sin xk + (bk Bk )2 sin2 xk


L 2 2 2 (a2 k cos xk + 2ak bk cos xk sin xk + bk sin xk )

+
x=0 k =m+1

1 2L + 1 m = (a0 A0 )2 (2L + 1) + (ak Ak )2 + (bk Bk )2 ) 4 2 k=1 + 2L + 1 L (a2 + b2 k ). 2 k=m+1 k Ak = ak , Bk = bk , i njena minimalna vrijednost jednaka je Smin = 2L + 1 L (a2 + b2 k ). 2 k=m+1 k k = 0, . . . , m k = 1, . . . , m,

Prema tome, odmah je vidljivo da je gre ska S minimalna ako je

Ovaj oblik minimalne gre ske nije prakti can, jer uobi cajeno ne znamo ak , bk za k > m. Zadatak 10.9.3. Doka zite da vrijedi Smin 2L + 1 2 2L + 1 m 2 = (f (x)) a0 (ak + b2 k) 4 2 k=1 x=0
2 2L

kori stenjem relacija ortogonalnosti. Prethodni oblik gre ske cesto se koristi za detekciju stupnja trigonometrijskog polinoma, jer nagli pad gre ske pri dizanju stupnja trigonometrijskog polinoma zna ci da smo otkrili stupanj polinoma. Gre ska pritom ne mora biti 0, jer je pojava mogla imati slu cajne gre ske koje smo ionako zeljeli maknuti.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 385

Zadatak 10.9.4. Izvedite metodu najmanjih kvadrata za tri preostala slu caja: 1. broj to caka paran N = 2L 1, dimenzija prostora neparna M = 2m, 3. broj to caka paran N = 2L 1, dimenzija prostora parna M = 2m 1. Zadatak 10.9.5. Neka je funkcija f zadana na mre zi to caka M = {0, 1, . . . , P 1}, P neparan (tj. to caka je paran broj) i neka je P period funkcije f , tj. f (x + P ) = f (x). Poka zite da su tada ak = bk = 2 P 2 P
L

2. broj to caka neparan N = 2L, dimenzija prostora parna M = 2m 1,

f (x) cos
x=L+1 L

2 kx, P 2 kx, P

k = 0, . . . , L k = 1, . . . , L 1 .

f (x) sin
x=L+1

Ako je f neparna funkcija f (x) = f (x), poka zite da je ak = 0, bk = 4 P k = 0, . . . , L


L1

f (x) sin
x=1

2 kx, P

k = 1, . . . L 1 .

Ako je f parna funkcija f (x) = f (x), poka zite da je ak = 2 4 (f (0) + f (L) cos k ) + P P k = 1, . . . L 1 .
L1

f (x) cos
x=1

2 kx, P

k = 0, . . . , L

bk = 0,

Zadatak 10.9.6. Rije site prethodni zadatak uz uvjet da je P = 2L + 1, tj. da funkcija ima neparan period.

10.10.

Minimaks aproksimacija

Neka je f neprekidna funkcija na [a, b]. Ako usporedujemo polinomne aproksimacije funkcije f dobivene razli citim metodama, pitamo se koja je od njih najbolja, tj. koja daje najmanju maksimalnu gre sku. Ozna cimo s n (f ) maksimalnu gre sku aproksimacije n (f ) = inf f p .
deg(p)n

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 386

To zna ci de ne postoji polinom stupnja manjeg ili jedmakog n koji bi bolje od p aproksimirao funkciju f na danom intervalu. Nas, naravno interesira za koji se polinom dosti ze ta gre ska n (f ) = f p n . Ako je polinom pn jedinstven, zanima nas kako ga mo zemo konstruirati. Polinom p zovemo minimaks aproksimacija funkcije f na intervalu [a, b]. n Poka zimo kako se najbolja aproksimacija pona sa na jednom jednostavnom primjeru. Primjer 10.10.1. Nadimo polinom prvog stupnja p 1 (x) = a0 + a1 x koji je minimaks x aproksimacija funkcije f (x) = e na intervalu [1, 1], tj. da vrijedi
x[1,1]

max |ex a0 a1 x| min .

Da bismo rije sili problem, potrebno je malo geometrijskog zora. Nacrtajmo graf funkcije ex i promatrajmo gre sku svih polinomnih aproksimacija err(x) = ex (a0 + a1 x) na zadanom intervalu.
y

x3

Prvo, odmah je jasno da linearna minimaks aproksimacija mora sje ci graf funkcije ex na zadanom intervalu u to cno dvije to cke, nazovimo ih x1 , x2 takve da je 1 < x1 < x2 < 1. U protivnom, ako polinom ne sije ce graf niti u jednoj to cki, ili ako ga sije ce u to cno jednoj to cki, mo ze se pokazati da postoji bolja aproksimacija. Poka zite to! zbu pravca kroz to cke Iz crte za odmah naslu cujemo i rje senje. Nadimo jednad 1 (1, e ) i (1, e). Zatim, nadimo koecijent a0 takav da je taj pravac tangenta funkcije ex u nekoj to cki x3 . Rje senje zadatka je pravac paralelan s prethodna dva, jednako udaljen od oba. Odmah je jasno da ce postojati to cno tri to cke u kojima ce se dostizati maksimalne pogre ske: rubovi intervala i x3 .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 387

Poka zimo sad precizno da su na sa zaklju civanja ispravna. Ozna cimo 1 = max | err(x)|.
x[1,1]

Ve c smo zaklju cili da pogre ska mora imati tri ekstrema, tj. mora vrijediti err(1) = 1 , err(1) = 1 , err(x3 ) = 1 .

Budu ci da je err(x) derivabilna, onda mo zemo uvjet maksimuma pogre ske u x3 napisati i kori stenjem derivacije, tj. err (x3 ) = 0. Sad mo zemo skupiti sve cetiri jednad zbe koje trebamo zadovoljiti e1 a0 + a1 = 1 e a0 a1 = 1 Rje senje te cetiri jednad zbe je e e1 1.1752 2 x3 = ln a1 0.1614 1 x3 1 = e1 + (e e1 ) 0.2788 2 4 a0 = 1 + (1 x3 )a1 1.2643. a1 = Graf pogre ske ima karakteristi can osciliraju ci izgled.
y 0.2788 x3 1 0.2788 1 x

ex3 a0 a1 x3 = 1 ex3 a1 = 0.

Kori stenjem tzv. Remesovog algoritma mo zemo konstruirati i kubi cni polinom koji najbolje aproksimira istu funkciju. Taj polinom je
2 3 p 3 (x) = 0.994579 + 0.995668x + 0.542973x + 0.179533x .

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 388

Ako nacrtamo graf tog polinoma, on se na slici ne ce razlikovati od funkcije,


y

jer ce gre ska biti iznimno mala, reda veli cine 0.0055 i opet karakteristi cno osciliraju ca.
y 0.0055

0.0055

Za dobru uniformnu aproksimaciju zadane funkcije f , realno je o cekivati da je gre ska jednako tako uniformno distribuirana na intervalu aproksimacije i da varira po predznaku. Iznijet cemo dva vrlo va zna teorema, od kojih prvi daje egzistenciju minimaks aproksimacije i va zno svojstvo o oscilaciji gre saka. Drugi ocjenjuje pogre sku minimaks aproksimacije n polinoma stupnja n, bez da se sam polinom izra cuna. Teorem 10.10.1. (Cebi sevljev teorem o oscilacijama gre saka) Neka je f C [a, b] i n 0. Tada postoji jedinstven polinom pn stupnja manjeg ili jednakog n za koji je n (f ) = f p n . Taj polinom je karakteriziran sljede cim svojstvom: postoje barem n + 2 to cke a x0 < x1 < < xn < xn+1 b za koje je pri cemu je = 1 i ovisi samo o f i n.
j f (xj ) p n (xj ) = (1) n (f ),

j = 0, . . . , n + 1,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 389

Dokaz prethodnog teorema je tehni cki, vrlo duga cak i provodi se obratom po kontrapoziciji. Teorem 10.10.2. (de la ValleePoussin) Neka je f C [a, b] i n 0. Pretpostavimo da polinom P stupnja manjeg ili jednakog n zadovoljava f (xj ) P (xj ) = (1)j ej , j = 0, 1 , . . . , n + 1

a ej su razli citi od 0 i istog predznaka, za xj vrijedi a x0 < x1 < < xn < xn+1 b. Tada je
0j n+1

min |ej | n (f ) = f p n (x)

f P

Dokaz: Posljednja nejednakost (gornja ograda) u prethodnoj formuli posljedica je denicije minimaks aproksimacije, tj. da polinom p ske manji n ima maksimum pogre ili jednak od svih ostalih polinoma P . Donja ograda za n (f ) dokazuje se pretpostavljanjem suprotnog. Pretpostavimo da je n (f ) < min |ej |.
0j n+1

Budu ci da je n (f ) inmum (zaboravimo na cas da smo dokazali i minimum), onda sigurno postoji bar jedan polinom Q stupnja manjeg ili jednakog n koji se nalazi izmedu n (f ) i minimuma |ej |, tj. vrijedi n (f ) f Q

<

0j n+1

min |ej |.

Primijetite da polinomi P i Q nisu jednaki! Deniramo R(x) = P (x) Q(x). R je polinom stupnja manjeg ili jedankog n. Zbog jednostavnosti, pretpostavimo da su svi ej > 0 (isti argument radit ce i ako su svi manji od 0). Izra cunajmo vrijednosti polinoma R u to ckama xj . Po cnimo s x0 i promotrimo predznak rezultata R(x0 ) = P (x0 ) Q(x0 ) = (f (x0 ) Q(x0 )) (f (x0 ) P (x0 )) = (f (x0 ) Q(x0 )) e0 . Budu ci da je |f (x0 ) Q(x0 )| < min |ej | = min ej e0 , onda je R(x0 ) = f (x0 ) Q(x0 )) e0 < 0.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 390

Nadalje je R(x1 ) = P (x1 ) Q(x1 ) = (f (x1 ) Q(x1 )) (f (x1 ) P (x1 )) = (f (x1 ) Q(x1 )) + e1 . Ponovno, zbog |f (x1 ) Q(x1 )| < min |ej | = min ej e1 , slijedi da je R(x1 ) = (f (x1 ) Q(x1 )) + e1 > 0. Induktivno, dobivamo da je sign(R(xj )) = (1)j +1 , j = 0, . . . , n + 1,

tj. R oscilira tako da ima bar n + 2 razli cita predznaka, tj. da predznak promijeni bar n + 1 puta. Ali R je polinom stupnja n, pa predznak mo ze mijenjati samo u nulto ckama. Po osnovnom teoremu algebre znamo da polinom R stupnja n 1 ima to cno n nulto caka, a ne bar (n + 1)-nu. Jedina mogu cnost koja ostaje je da je R ba s nul-polinom, tj. da je P = Q, sto je suprotno pretpostavci. Predod zbu o tome kako se pona sa najbolja aproksimacija s porastom stupnja n daje sljede ci teorem. Teorem 10.10.3. (Jackson) Neka funkcija f ima k neprekidnih derivacija za neki k 0. Cak stovi se pretpostavimo da f (k) zadovoljava
ax,y b

sup |f (k) (x) f (k) (y )| M |x y |

za neki M > 0 i neki 0 < 1, tj. ka ze se da f zadovoljava H olderov uvjet s eksponentom . Tada postoji konstanta dk nezavisna o f i n za koju je n (f ) Mdk , nk+ n 1.

Ako u prethodnom teoremu zelimo izbje ci H olderov uvjet, dovoljno je pretpostaviti da f im k neprekidnih derivacija. Umjesto k -te derivacije svugdje dalje u teoremu koristimo (k 1)-u, stavljamo = 1 i M = f (k)
.

Tada se H olderov uvjet svede na obi cni teorem srednje vrijednosti, a kao rezultat dobivamo d k 1 n (f ) k f (k) . n Nadalje, ako je f beskona cno puta derivabilna, tada p n konvergira prema f uniformno na [a, b] br ze nego bilo koja potencija 1/nk , k 1.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 391

10.10.1.

Remesov algoritam

Tra zenje minimaks aproksimacije p ze se prona ci iterativnim algoritn za f mo mom poznatijim kao drugi Remesov algoritam. Ovdje treba napomenuti da se taj algoritam mo ze generalizirati i na racionalne funkcije i na slu caj kad funkcija f nije zadana na intervalu, nego na skupu to caka (tada se on zove diferencijalni algoritam korekcije). Remesov algoritam koristi svojstvo oscilacije gre ske koje mora imati minimaks aproksimacija. Iteracije imaju tri dijela. Prvi korak Zadane su n + 2 to cke a x0 < x1 < < x(0) n < xn+1 b. koje odreduju polinom p stupnja deg(p) n iz uvjeta f (xi ) p(xi ) = (1)i E,
(0) (0) (0) (0) (0)

i = 0, . . . , n + 1,

pri cemu zahtjevamo da pogre ska E (koju jo s ne znamo) oscilira s jednakim amplitudama. Prehodna ralacija vodi na linearni sustav s n + 2 nepoznanice od kojih su n + 1 koecijenti polinoma p, a posljednja je E . Drugi korak Rije simo linearni sustav, tj. odredimo redom a0 , . . . , a(0) n (koecijente polinoma p) i nadimo pirpadni E , zovimo ga E0 . Tre ci korak Tra zimo novih n + 2 to caka. Deniramo funkciju
n (0)

h0 (x) = f (x)
(0)

ai xi .
i=0

(0)

Funkcija h0 ima u to ckama xi vrijednosti E0 (to su gre ske) koje alterniraju (0) po predznaku. Zbog toga, nije te sko pokazati da u okolini svake to cke xi postoji (1) to cka xi takva da u njoj h0 (x) ima ekstrem i to istog predznaka kao sto je predznak (0) (0) (0) (1) (1) f (xi ) p(xi ). Nakon toga zamjenjujemo xi s xi . Naravno, rubne to cke x0 i (1) xn+1 moraju ostati u [a, b]. Ove nove to cke xi lokalnih ekstrema funkcije h0 moraju sadr zavati i to cku u kojoj |h0 | dosti ze globalni maksimum na [a, b]. Naime, ako je x to cka u kojoj |h0 | poprima globalnu maksimalnu vrijednost na [a, b] h0
(1)

= f p

= |f ( x) p( x)|,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 392

i ona nije medu to cakama xi , onda treba onda treba zamijeniti jednu od to caka (1) xi to ckom x , tako da h0 i na tom novom skupu to caka alternira po znaku. Mo ze se pokazati da se to uvijek mo ze napraviti. Primjernom teorema 10.10.2. dobivamo da je m :=
i=0,...,n+1 (1) (1) (1) (1)

(1)

min

|f (xi ) p(xi )| n (f ) M :=

i=0,...,n+1

max |f (xi ) p(xi )|.

Ako je omjer M/m dovoljno blizu 1, smatramo da je nadeni p dovoljno blizu polinomne minimaks aproksimacije za f . U protivnom, treba ponoviti drugi, pa tre ci korak, samo na novim to ckama xi . Ovaj proces generirat ce niz polinomnih aproksimacija ce uniformno konvergirati prema minimaks polinomnoj aproksimaciji.
(1)

10.11.

Skoro minimaks aproksimacije

Vidjeli smo da minimaks aproksimaciju nije jako lako izra cunati. Zbog toga, bili bismo zadovoljni i pribli znom minimaks aproksimacijom. Ako se prisjetimo sevljevog teorema o oscilaciji gre Cebi ske, mo zemo do ci do metode koja daje dobru pribli znu minimaks aproksimaciju. sevljevi polinomi, koji zadoVidjet cemo da su u tu svrhu vrlo pogodni Cebi voljavaju sljede cu relaciju ortogonalnosti
1

sevljevim polinomima, potrebno je samo supAko zelimo funkciju f razviti po Cebi stituirati podatke u op ci algoritam. Zelimo odrediti koecijente ck u razvoju funkcije f po Cebi sevljevim polinomima. Ako je razvoj napi semo u obliku f (x) =
c0 T0 (x) + ci Ti (x), 2 i=1

za m = n, Tm (x) Tn (x) , za m = n = 0, dx = 1 x2 /2, za m = n = 0.

0,

(10.11.1)

onda cemo, formalno gledaju ci, koecijent cj dobiti ako pomno zimo prethodnu relaciju s Tj (x), zatim te zinskom funkcijom w i integriramo od 1 do 1. Dobivamo formulu 1 2 f (x)Tj (x) cj = dx. 2 1 x 1 Ozna cimo s fn po cetni komad razvoja, tj. neka je fn (x) =
n c0 T0 (x) + ci Ti (x). 2 i=1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 393

Ako je f C [1, 1] tada razvoj (10.11.1) konvergira, u smislu da je


1 n 1

lim

1 f (x) fn (x) 1 x2

dx = 0.

Za uniformnu konvergenciju, mo zemo pokazati dosta jak rezultat n (f ) f fn

4+

4 ln n n (f ). 2

Kako se pona sa gre ska odbacivanja reda? Ako se prisjetimo da je Tn (x) = cos n, onda se mo ze pokazati da vrijedi

x = cos ,

f (x) fn (x) =

i=n+1

ci Ti (x) cn+1 Tn+1 (x) = cn+1 cos(n + 1),

ako je cn+1 = 0 i ako koecijenti ci brzo konvergiraju k 0. Iz denicije Tn+1 izlazi |Tn+1 (x)| = | cos(n + 1)| 1, 1 x 1.

Nulto cke i ekstreme polinoma Tn+1 nije te sko izra cunati. Nulto cke pripadnog kosinusa su na odgovaraju cem intervalu su (n + 1)j = pa su nulto cke Tn+1 jednake xj = cos (2j + 1) , 2(n + 1) j = 0, . . . , n. (2j + 1) , 2 j = 0, . . . , n,

S druge strane, lokalni ekstremi se posti zu kad je (n + 1)k = k, pa su ekstremi Tn+1 jednaki xk = cos Drugim rije cima, vrijedi Tn+1 (xk ) = (1)k , k = 0, . . . , n + 1. k , (n + 1) k = 0, . . . , n + 1. k = 0, . . . , n + 1,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 394

Primijetite da tih ekstrema ima to cno n + 2 i da alterniraju po znaku. Ako to iskoristimo za funkciju cn+1 Tn+1 , onda je jasno da ona ima n + 2 lokalna ekstrema sevljevom teoremu o oscilaciji gre jednakih amplituda. Po Cebi saka, odatle odmah izlazi da je fn skoro minimaks aproksimacija za f (ovo skoro minimaks potje ce od toga sto je gre ska odbacivanja clanova reda pribli zno jednaka cn+1 Tn+1 ). sevljevim polinomima. Postoji jo s jedan razlog za sto se koristi razvoj po Cebi Vrijedi sljede ci teorem. Teorem 10.11.1. Za ksni prirodni broj n, promatrajmo minimizacijski problem n =
deg(P )n1 1x1

inf

( max |xn + P (x)|),

gdje je P polinom. Minimum n se dosti ze samo za xn + P (x) = Pripadna pogre ska je n = 1 2 n1 1 2 n1 . Tn (x).

Zbog toga vrijedi da je

Dokaz: Iz tro clane rekurzije, nije te sko induktivno dokazati da je vode ci koecijent Tn jednak Tn (x) = 2n1xn + clanovi ni zeg stupnja, n 1. 1 2 n1 Budu ci da su to cke xk = cos Tn (x) = xn + clanovi ni zeg stupnja. k , n

j = 0, . . . , n,

lokalni ekstremi od Tn , u kojima je Tn (xk ) = (1)k , i Polinom 1 = xn < xn1 < < x1 < x0 = 1. 1 2 n1 ima vode ci koecijent 1 i vrijedi
1x1 2n1

k = 0, . . . , n

Tn

max

Tn =

1 2 n1

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 395

Zbog toga je n

. 2 n1 Poka zimo da je n ba s jednak desnoj strani. Pretpostavimo suprotno, tj. da je n < 1 2 n1 .

Pokazat cemo da to vodi na kontradikciju. Denicija n i prethodna pretpostavka pokazuju da postoji polinom M takav da je M (x) = xn + P (x), gdje je n max |M (x)| <
1x1

deg(P ) n 1, 1 2 n1 . (10.11.2)

Deniramo R(x) =

1 2 n1

Tn (x) M (x).

Tvrdimo da ce se vode ci koecijenti funkcija s desne strane skratiti, pa je deg(R) n 1. Ispitajmo vrijednosti funkcije R u lokalnim ekstremima funkcije Tn . Iz (10.11.2) redom, izlazi R(x0 ) = R(1) = R(x1 ) = Tj. za polinom R vrijedi Budu ci da ima bar n + 1 razli citi predznak, to mora postojati bar n nulto caka, sto je mogu ce damo ako je R = 0. Odatle odmah izlazi da je M (x) = 1 2 n1 Tn (x). sign(R(xk )) = (1)k . 1 2 n1 1 2 n1 M (1) > 0

M (x1 ) < 0, . . .

Sad bi jo s trebalo pokazati da je to jedini polinom s takvim svojstvom. Taj dio dokaza vrlo je sli can ovom sto je ve c dokazano.

10.12.

Interpolacija u Cebi sevljevim to ckama

Ako se prisjetimo problema interpolacije, onda znamo da je gre ska interpolacionog polinoma stupnja n jednaka f (x) pn (x) = (x x0 ) (x xn ) (n+1) f ( ). (n + 1)!

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 396

Vrijednost (n +1)-ve derivacije ovisi o to ckama interpolacije, ali nije jednostavno re ci kako. Ipak, ono sto mo zemo kontrolirati je izbor to caka interpolacije. Pretpostavimo da interpoliramo funkciju na intervalu [1, 1]. Ako na s interval nije [1, 1], nego [a, b], onda ga linearnom transformacijom y = cx + d mo zemo svesti na zadani interval. Dakle izaberimo to cke interpolacije xj [1, 1] tako da minimiziraju max |(x x0 ) (x xn )|.
1x1

Polinom u prethodnoj relaciji je stupnja n +1 i ima vode ci koecijent 1. Po Teoremu 10.11.1., minimum cemo dobiti ako stavimo (x x0 ) (x xn ) = 1 Tn+1 (x), 2n

a minimalna ce vrijednost biti 1/2n . Odatle odmah citamo da su cvorovi x0 , . . . xn nulto cke polinoma Tn+1 , a njih smo ve c izra cunali da su jednake xj = cos (2j + 1) , 2n + 2 j = 0, . . . , n.

10.13.

Cebi sevljeva ekonomizacija

sevljevi polinomi mogu se koristiti za smanjivanje stupnja interpolacionog Cebi polinoma, uz minimalni gubitak to cnosti. Takav postupak zove se ekonomizacija. Pretpostavimo da je zadan proizvoljni polinom stupnja n pn (x) = an xn + an1 xn1 + + a1 x + a0 . na intervalu [1, 1]. Taj polinom zelimo zamijeniti polinomom stupnja za jedan manjeg tako da je gre ska koja je pritom nastala minimalna mogu ca
x[1,1]

max |pn (x) pn1 (x)| min .

Rje senje problema se ne ce promijeniti ako normiramo vode ci koecijent na 1, tj. ako tra zimo 1 max (pn (x) pn1 (x)) min . x[1,1] an Prema Teoremu 10.11.1. o minimalnom otklanjanju od polinoma xn , izlazi da mora biti 1 1 max (pn (x) pn1 (x)) n1 , x[1,1] an 2

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 397

s tim da jednakost vrijedi kad je 1 1 (pn (x) pn1 (x)) = n1 Tn (x). an 2 Drugim rije cima, izbor pn1 (x) je pn1 (x) = pn (x) an Tn (x), 2 n1

a s tim izborom je maksimalna gre ska jednaka max |pn (x) pn1 (x)| = |an | max |an | 1 (pn (x) pn1 (x)) = n1 . an 2

x[1,1]

x[1,1]

Primjer 10.13.1. Funkciju f (x) = ex aproksimiramo na intervalu [1, 1] Taylorovim polinomom oko 0 stupnja cetiri p4 (x) = 1 + x + Gre ska odbacivanja tog polinoma je |R4 (x)| M5 5 |x |, 5! M5 = max |f (5) (x)|.
x[1,1]

x2 x3 x4 + + . 2 6 24

Odmah se vidi da je M5 = e, pa je gre ska odbacivanja |R4 (x)| e 5 e |x | 0.023, 120 120

za 1 x 1. Pretpostavimo da mo zemo tolerirati gre sku 0.05, pa poku sajmo spustiti stupanj polinoma. Nije te sko na ci T4 , recimo iz rekurzije T4 (x) = 8x4 8x2 + 1. Pokazali smo da mora biti p3 (x) = p4 (x) a4 x2 x3 x4 1 T ( x ) = 1 + x + + + (8x4 8x2 + 1) 4 4 1 2 2 6 24 8 24 191 13 2 1 3 = +x+ x + x . 192 24 6

Tim sni zavanjem stupnja, napravljena je gre ska |p4 (x) p3 (x)| 1 1 = 0.0053. 3 24 2 192

Pribrojimo li tu gre sku gre sci odbacivanja, onda je ukupna gre ska manja ili jednaka 0.023 + 0.0053 = 0.0283, sto je prema uvjetima zadatka dozvoljiva gre ska.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 398

Naravno, stupanj polinoma p3 mo zemo poku sati jo s smanjiti. Budu ci da je T3 (x) = 4x3 3x, dobivamo p2 (x) = p3 (x) 191 13 1 1 a3 T3 (x) = + x + x2 + x3 (4x3 3x) 3 1 2 192 24 6 46 191 9 13 = + x + x2 . 192 8 24

Pritom je napravljena gre ska |p3 (x) p2 (x)| = 1 1 = 0.042. 64 24

Dodamo li tu gre sku na ve c akumuliranu gre sku 0.0283, onda je ukupna gre ska 0.0283 + 0.042 > 0.05, sto je bila dozvoljena tolerancija. Postoji jo s jedan na cin ekonomizacije. Znamo da se funkcije mogu razviti u red po Cebi sevljevim polinomima oblika
1 ck Tk (x), f (x) = c0 + 2 k =1

|x| 1,

sevljev polinom i a koecijenti u razvoju su integrali koji u sebi sadr ze f , Cebi sevljeve polinome. Koecijente ck u ovom razvoju mo te zinsku funkciju za Cebi zemo, i to relativno brzo, numeri cki izra cunati, koriste ci algoritme na bazi diskretne or sevljevih polinoma. Taj postupak opisujemo u sljede togonalnosti Cebi cem odjeljku. S druge strane, ako znamo (ili lako ra cunamo) koecijente am u redu potencija

f (x) =
m=0

am xm ,

sevljevim polinomima, pa nakon toga onda potencije xm mo zemo razviti po Cebi primijeniti postupak ekonomizacije (odbacivanjem clanova) da dobijemo ravnomjernije pona sanje pogre ske. Mo ze se pokazati da vrijedi
[n/2]

(2x) = 2
k =1

n Tn2k (x), k

pri cemu je k = 1/2 za k = n/2, 1 ina ce.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 399

Taj razvoj napisan posebno za parne, a posebno za neparne potencije je (2x)2m = (2x)2m+1 = 2
m 2m 2m +2 T2k (x) m k =1 m k m

k =0

2m + 1 T2k+1 (x). mk

Ako za polinomnu aproksimaciju uzmemo polinom stupnja n, uvr stavanjem razvoja po Cebi sevljevim polinomima dobivamo
n b0 fn (x) = am x = + bm Tm (x), 2 m=1 m=0 m n

gdje su koecijenti
2in

b2k = 2
i=k

2i a2i , i k 22i

2i+1n

b2k+1 = 2
i=k

2i + 1 a2i+1 . i k 22i

Vrlo se cesto dogada da su jedan ili nekoliko posljednjih koecijenata bm maleni, pa odbacivanje posljednjih clanova bitno ne smanjuje to cnost aproksimacije. Drugim rije cima, smanjili smo stupanj aproksimacije. Takvo smanjivanje stupnja zove se i relaksacija stupnja aproksimacije.

10.14.

Diskretne ortogonalnosti polinoma Tn

sevljevi polinomi kosinusi, onda oni zadovoljavaju diskretne Budu ci da su Cebi relacije ortogonalnosti vrlo sli cne onima koje zadovoljavaju trigonometrijske funkcije. sevljevog polinoma Tn , tj. neka je Neka su x nulto cke Cebi Tn (x ) = cos(n ) = 0. Nije te sko izra cunati da je tada x = cos( ), = (2 + 1) , 2n = 0, . . . , n 1 .

sevljeve polinome, u nulto Za Cebi ckama vrijede sljede ce relacije ortogonalnosti


n1 n1

Uj,k =
=0

Tj (x )Tk (x ) =
=0

cos j cos k ,

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 400

gdje je

sevljevim polinomima koriste Sada mo zemo funkciju razviti po Cebi ci prethodnu relaciju diskretne ortogonalnosti. Mo ze se pokazati da vrijedi sljede ci teorem. Teorem 10.14.1. Neka je fn (x) aproksimacija za f (x), fn (cos ) = ili fn (x) = Tada je dk = 2 n1 2 n1 f (cos ) cos k = f (x )Tk (x ). n =0 n =0 d 0 n1 + dk Tk (x). 2 k =1 (10.14.1) d 0 n1 + dk cos k, 2 k =1

j, k < n, j = k , Uj,k = n/2 j = k , 0 < j < n, n j = k = 0.

Pretpostavimo da je f neprekidna na [1, 1], osim najvi se u kona cno mnogo to caka, gdje ima ograni cene skokove. Tada se f mo ze razviti u konvergentan red oblika f (x) = gdje je 2 ck =
1 c0 + ck Tk (x), 2 k=1

(10.14.2)

2 f (x)Tk (x) dx = 1 x2

f (cos ) cos k d.
0

Osim toga, postoji veza izmedu koecijenata u diskretnom i kontinuiranom razvoju:

d 0 = c0 + 2 d k = ck +

r =1 r =1

(1)r c2rn
r =1

(1)r c2rnk +

(1)r c2rn+k ,

k = 1, . . . , n 1 .

Sljede ci teorem govori o gre skama koje smo napravili aproksimacijom fn obzirom na f . Teorem 10.14.2. Neka je n (x) = f (x) fn (x),

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 401

pri cemu su fn i f zadani s (10.14.1) i (10.14.2). Za gre sku n tada vrijedi


2n1

n (cos ) = cos n cn + 2
r =1

cn+r cos r + c3n cos 2n


2n1

sin 2n c3n sin n + 2

c3n+r r =1 2n1
r =1

sin(n + r ) + c5n sin 3n

+ cos 3n c5n cos 2n + 2 odnosno, pribli zno

c5n+r cos(2n + r ) + c7n cos 4n , 2cn+1 cos . cn

n (cos ) cn cos n 1 + Posebno, vrijedi

n (cos ) = 0. Iz prethodnih teorema uo cavamo da x le ze u unutra snjosti intervala. U mnogim je primjenama je korisno dozvoliti aproksimaciju i u rubnim to ckama 1 i to ckama koje le ze u sredini medu . Primijetite da su to ekstremi odgovaraju ceg Cebi sevljevog polinoma. Sada mo zemo napraviti sli can niz tvrdnji kao za diskretnu ortogonalnost u nulto ckama. sevljevog polinoma Tn , tj. neka je Neka su x ekstremi Cebi x = cos( ), = , n = 0, . . . , n.

sevljeve polinome, u ekstremima vrijede sljede Za Cebi ce relacije ortogonalnosti


n1 1 Vj,k = (Tj (x0 )Tk (x0 ) + Tj (xn )Tk (xn )) + Tj (x )Tk (x ) 2 =1 n1 1 = ( cos j0 cos k0 + cos jn cos kn ) + cos j cos k , 2 =1

gdje je Vj,k =

sevljevim polinomima koriste Sada mo zemo funkciju razviti po Cebi ci prethodnu relaciju diskretne ortogonalnosti. Mo ze se pokazati da vrijedi sljede ci teorem. Teorem 10.14.3. Neka je fn (x) aproksimacija za f (x), fn (cos ) = ili e0 n1 en + ek cos k + cos n, 2 2 k =1

j, k < n, j = k , n/2 j = k , 0 < j < n, n j = k = 0 ili j = k = n.

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 402

fn (x) = Tada je

en e0 n1 + ek Tk (x) + Tn (x). 2 2 k =1

(10.14.3)

2 f (1) + (1)k f (1) n1 ek = + f (cos ) cos k n 2 =1 2 f (1) + (1)k f (1) n1 = + f (x )Tk (x ) . n 2 =1 Osim toga, postoji veza izmedu koecijenata u diskretnom i kontinuiranom razvoju:

e0 = c0 + 2 en = 2cn + 2

c2rn
r =1

c(2r+1)n
r =1

ek = ck +
r =1

c2rnk +
r =1

c2rn+k ,

k = 1, . . . , n 1 .

Sljede ci teorem govori o gre skama koje smo napravili aproksimacijom fn obzirom na f . Teorem 10.14.4. Neka je n (x) = f (x) fn (x), pri cemu su fn i f zadani s (10.14.3) i (10.14.2). Za gre sku n tada vrijedi

n (cos ) = 2 sin n odnosno, pribli zno

cn+r sin r
r =1

n (cos ) 2 sin n sin cn+1 1 + Posebno, vrijedi n (cos ) = 0.

2cn+2 cos . cn+1

Ako se ck iz razvoja f integrira po trapeznoj formuli (vidjeti kasnije), onda se takvom aproksimacijom dobivaju koecijenti ek . I dk su koecijenti koji se dobivaju pribli znom integracijom ck (modiciranom trapeznom formulom, odnosno, tzv. midpoint pravilom).

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 403

10.15.

Thieleova racionalna interpolacija

Racionalne funkcije bolje aproksimiraju funkcije koje imaju singularitete, nego sto to mogu polinomi. Jasno je da polinomi ne mogu dobro aproksimirati funkciju u okolini to cke prekida, jer ih oni sami nemaju. Prvo, denirajmo recipro cne razlike, a zatim veri zni razlomak koji ce interpolirati funkciju f u to ckama x1 , . . . , xn (ovdje su indeksi od 1, a ne od 0). Recipro cne razlika nultog i prvog reda deniraju se redom kao 0 (x0 ) = f (x0 ), a one vi sih redova rekurzivno kao k (x0 , . . . , xk ) = x0 xk + k2 (x1 , . . . , xk1 ), k1 (x0 , . . . , xk1 ) k1 (x1 , . . . , xk ) k 2. 1 (x0 , x1 ) = x0 x1 , f (x0 ) f (x1 )

Za ra cunanje recipro cnih razlika obi cno se koristi tablica vrlo sli cna onoj za podijeljene razlike. Kao sto cemo to pokazati kasnije, algoritam koji ce koristiti recipro cne razlike numerirat ce to cke indeksima od 1 do n (zbog toga u tablici nema x0 ). xk x1 x2 . . . xn1 xn f (xk ) f (x1 ) 1 (x1 , x2 ) f (x2 ) . . . f (xn1 ) 1 (xn1 , xn ) f (xn ) 1 (x1 , x2 ) . . . 1 (xn2 , xn1 ) 2 (xn2 , xn1 , xn ) 2 (x1 , x2 , x3 ) . . . .. .. . . n1 (x1 , . . . , xn ) 1 (xk , xk+1 ) 2 (xk , xk+1 , xk+2 ) n1 (x1 , . . . , xn )

Uz recipro cne razlike, cesto se deniraju i inverzne razlike 0 (x0 ) = f (x0 ), odnosno k (x0 , . . . , xk ) = xk xk1 , k1(x0 , . . . , xk2 , xk ) k1(x0 , . . . , xk2 , xk1 ) k 2. 1 (x0 , x1 ) = x1 x0 , 0 (x1 ) 0 (x0 )

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 404

Postoji i veza izmedu inverznih i recipro cnih razlika. Nije te sko pokazati da vrijedi 0 (x0 ) = 0 (x0 ), 1 (x0 , x1 ) = 1 (x0 , x1 ), odnosno za k 2 k (x0 , . . . , xk ) = k (x0 , . . . , xk ) k2 (x0 , . . . , xk2 ). Poka zimo da vrijedi jedan va zan identitet iz kojeg cemo izvesti Thieleovu formulu. Prvo, u formuli za recipro cne razlike uzmemo x0 kao varijablu i ozna cimo je s x. Tvrdimo da je f (x) = f (x1 ) + x x2 x xn1 x x1 + + 1 (x1 , x2 ) 2 (x1 , x2 , x3 ) n1 (x1 , . . . , xn )+ x xn (10.15.1) . n (x, x1 , . . . , xn ) n2 (x1 , . . . , xn1 ) 1 (x, x1 ) = slijedi da je x x1 f (x) f (x1 ) x x1 . 1 (x, x1 ) (10.15.2)

Iz

f (x) = f (x1 ) + Zatim, iz formule 2 (x, x1 , x2 ) = slijedi da je 1 (x, x1 ) = 1 (x1 , x2 ) +

x x2 + 0 (x1 ) 1 (x, x1 ) 1 (x1 , x2 ) x x2 . 2 (x, x1 , x2 ) 0 (x1 )

Uvr stavanjem tog izraza u (10.15.2) dobivamo f (x) = f (x1 ) +

x x1 . x x2 1 (x1 , x2 ) + 2 (x, x1 , x2 ) 0 (x1 )

(10.15.3)

Kona cno, formulu (10.15.1) dobivamo indukcijom po n, uz kori stenje denicije inverznih razlika. Poka zimo jo s jednu zanimljivu cinjenicu vezanu uz formulu (10.15.1). Ako izbri semo zadnji clan, onda ce za racionalnu funkciju (veri zni razlomak) R(x) = f (x1 ) + x x1 x x2 x xn1 + + 1 (x1 , x2 ) 2 (x1 , x2 , x3 ) n1 (x1 , . . . , xn ) (10.15.4)

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 405

vrijediti R(xi ) = f (xi ), i = 1, . . . , n. To se odmah vidi iz (10.15.1), ako krenemo od xn , jer je clan x xn n (x, x1 , . . . , xn ) n2 (x1 , . . . , xn1 ) (10.15.5)

jednak 0 za x = xn , pa je R(xn ) = f (xn ). Nakon toga, gledamo R(xn1 ) i f (xn1 ). Oni su za jednu verigu kra ci i to za onu verigu koja sadr zi clan razlike (10.15.5). U svakoj daljnjoj to cki xn2 , . . . , x1 , veri zni je razlomak kra ci za jednu verigu od prethodne. Formula (10.15.4) zove se Thielova interpolaciona formula. Poka zimo na nekoliko primjera koliko je dobra ta interpolacija. Primjer 10.15.1. Aproksimirajte tg 1.565 kori stenjem Thieleove interpolacione formule, ako znamo vrijednosti funkcije tg u to ckama xi = 1.53 + 0.01 i, i = 0, . . . , 4. Prvo izra cunajmo recipro cne razlike. xk 1.53 1.54 1.55 1.56 1.57 f (xk ) 24.49841 0.001255851 32.46114 0.000640314 48.07848 0.000224507 92.62050 0.000008597 1255.76557 0.0308670 0.0207583 0.0106889 2.96838 3.56026 2.97955 1 2 3 4

Thielova interpolacija daje R(x) = 24.49841 + x 1.53 x 1.54 x 1.55 x 1.56 . + 0.001255851 24.5293+ 2.96713+ 3.59113 R(1.565) = 172.5208, dok je prava vrijednost tg(1.565) = 172.5211.

Uvr stavanjem 1.565 dobivamo

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 406

I sumacija redova mo ze se znatno ubrzati kori stenjem racionalne ekstrapolacije. Pretpostavimo da treba izra cunati

S=
n=0

an .

Ozna cimo s SN , N -tu parcijalnu sumu reda


N

SN =
n=0

an .

Ove vrijednosti SN mo zemo interpretirati kao vrijednosti neke funkcije f u to ckama N , ili u nekim drugim to ckama, na primjer, u to ckama 1/N , SN = f O cito je da vrijedi S = S = f (0). Ideja je f (0) izra cunati kao ekstrapoliranu vrijednost od f (1), f ili za neke vi se N , iz f 1 1 ,f ,..., N1 N2 N1 < N2 < 1 1 ,f ,..., 2 3 1 . N

Primjer 10.15.2. Treba izra cunati S= kori stenjem racionalne ekstrapolacije. Uzet cemo N = 1, 2, 4, 8, 16 i izra cunati SN = 1 . 2 n=1 n
N

1 , 2 n=1 n

Shvatimo li to kao funkciju od x = 1/N i ozna cimo S (x) = SN , onda mo zemo

10. APROKSIMACIJA I INTERPOLACIJA

APROKSIMACIJA I INTERPOLACIJA 407

formirati tablicu recipro cnih razlika. x S (x) 1 2 3 4

1 1.584346533 16 1 8 1 4 1 2 1 1.527422052 1.423611111 1.25 1

1.097945891 1.204112002 1.44 2

0.238678243 0.166126405 0.089285214

4.826059143 0.016938420 9.947195880

Thielova interpolacija daje 1 1 1 1 x x x 16 8 4 2 R(x) = 1.584346533 + . 1.097945891+ 1.823024776+ 5.924005034+ 0.255616663 x Uvr stavanjem 0 dobivamo R(0) = 1.644927974, 2 = 1.644934067. 6 Zanimljivo je spomenuti sto se dobije ako samo zbrajamo clanove reda i ne ekstrapoliramo. Vidjet cemo da taj red vrlo sporo konvergira. Na primjer, dobivamo S = S3000 = 1.644601, S30000 = 1.644901, S10000 = 1.644834, S100000 = 1.644924. dok je prava vrijednost

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 408

11. Numeri cka integracija


11.1. Op cenito o integracionim formulama

Zadana je funkcija f : I R, gdje je I obi cno interval (mo ze i beskona can). Zelimo izra cunati integral funkcije f na intervalu [a, b],
b

I (f ) =
a

f (x) dx.

(11.1.1)

Svi znamo da je deriviranje (barem analiti cki) jednostavan postupak, dok integriranje to nije, pa se integrali analiti cki u lijepoj formi mogu izra cunati samo za malen skup funkcija f . Zbog toga, u ve cini slu cajeva ne mo zemo iskoristiti osnovni teorem integralnog ra cuna, tj. NewtonLeibnitzovu formulu za ra cunanje I (f ) preko vrijednosti primitivne funkcije F od f u rubovima intervala
b

I (f ) =
a

f (x) dx = F (b) F (a).

Drugim rije cima, jedino sto nam preostaje je pribli zno, numeri cko ra cunanje I (f ). Osnovna ideja numeri cke integracije je izra cunavanje I (f ) kori stenjem vrijednosti funkcije f na nekom kona cnom skupu to caka. Recimo odmah da postoje i integracione formule koje koriste i derivacije funkcije f , ali o tome kako se one dobivaju i cemu slu ze, bit ce vi se rije ci ne sto kasnije. Op ca integraciona formula ima oblik I (f ) = Im (f ) + Em (f ), pri cemu je m + 1 broj kori stenih to caka, Im (f ) pripadna aproksimacija integrala, a Em (f ) pritom napravljena gre ska. Ovakve formule za pribli znu integraciju funkcija jedne varijable (tj. na jednodimenzionalnoj domeni) cesto se zovu i kvadraturne formule, zbog interpretacije integrala kao povr sine ispod krivulje.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 409

Ako koristimo samo funkcijske vrijednosti za aproksimaciju integrala, onda aproksimacija Im (f ) ima oblik
m

Im (f ) =
k =0

wk f (xk ),
(m)

(m)

(m)

(11.1.2) zovu se cvorovi

pri cemu je m neki unaprijed zadani prirodni broj. Koecijenti xk (m) integracije, a wk te zinski koecijenti.

U op cem slu caju, za ksni m, moramo nekako odrediti 2m + 2 nepoznatih koecijenata. Uobi cajen na cin njihovog odredivanja je zahtjev da su integracione formule egzaktne na vektorskom prostoru polinoma sto vi seg stupnja. Za sto ba s tako? Ako postoji Taylorov red za funkciju f i ako on konvergira, onda bi to zna cilo da integraciona formula egzaktno integrira po cetni komad Taylorovog reda, tj. Taylorov polinom. Drugim rije cima, gre ska bi bila mala, tj. jednaka integralu gre ske koji nastaje kad iz Taylorovog reda napravimo Taylorov polinom. Zbog linearnosti integrala kao funkcionala (f (x) + g (x)) dx = f (x) dx + g (x) dx, (11.1.3)

dovoljno je gledati egzaktnost tih formula na nekoj bazi vektorskog prostora, recimo na {1, x, x2 , x3 , . . . , xm , . . .}, jer svojstvo (11.1.3) onda osigurava egzaktnost za sve polinome do najvi seg stupnja baze. Ako su cvorovi ksirani, recimo ekvidistantni, onda dobivano tzv. Newton Cotesove formule, za koje moramo odrediti m + 1 nepoznati koecijent (te zine). Uvjeti egzaktnosti na vektorskom prostoru polinoma tada vode na sustav linearnih jednad zbi. Kasnije cemo pokazati da se te formule mogu dobiti i kao integrali interpolacionih polinoma stupnja m za funkciju f na zadanoj (ekvidistantnoj) mre zi cvorova. S druge strane, mo zemo ksirati samo neke cvorove, ili dozvoliti da su svi cvorovi slobodni. Ove posljednje formule zovu se formule Gaussovog tipa. U slu caju Gaussovih formula (ali mo ze se i kod te zinskih NewtonCotesovih formula) uobi cajeno je (11.1.1) zapisati u obliku
b

I (f ) =
a

w (x)f (x) dx,

(11.1.4)

pri cemu je funkcija w 0 tzv. te zinska funkcija. Ona ima istu ulogu gusto ce mjere kao i kod metode najmanjih kvadrata. Ideja je razdvojiti podintegralnu

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 410

funkciju na dva dijela, tako da singulariteti budu uklju ceni u w . Gaussove se formule nikad ne ra cunaju direktno iz uvjeta egzaktnosti, jer to vodi na nelinearni sustav jednad zbi. Pokazat cemo da postoji veza Gaussovih formula, funkcije w i ortogonalnih polinoma obzirom na funkciju w na intervalu [a, b], koja omogu cava ekasno ra cunanje svih parametara za Gaussove formule. Na kraju ovog uvoda spomenimo jo s da postoje primjene u kojima je korisno tra ziti egzaktnost integracionih formula na druga cijim sustavima funkcija, koji nisu prostori polinoma do odredenog stupnja.

11.2.

NewtonCotesove formule

NewtonCotesove formule zatvorenog tipa imaju ekvidistantne cvorove, s tim da je prvi cvor u to cki x0 := a, a posljednji u xm := b. Preciznije, za zatvorenu (to se cesto ispu sta) NewtonCotesovu formulu s (m + 1)-nom to ckom cvorovi su xk
(m)

= x0 + khm ,

k = 0, . . . , m,

hm =

ba . m

Drugim rije cima, osnovni je oblik NewtonCotesovih formula


b m

f (x) dx Im (f ) =

wk f (x0 + khm ).
k =0

(m)

(11.2.1)

11.2.1.

Trapezna formula

Izvedimo najjednostavniju (zatvorenu) NewtonCotesovu formulu za m = 1. Za m = 1, aproksimacija integrala (11.2.1) ima oblik I1 (f ) = w0 f (x0 ) + w1 f (x0 + h1 ), pri cemu je ba = b a, 1 pa je x0 = a i x1 = b. Da bismo olak sali pisanje, kad znamo da je m = 1, mo zemo (1) (1) izostaviti gornje indekse u wk , tj., radi jednostavnosti, pi semo wk := wk . Dakle, moramo prona ci te zine w0 i w1 , tako da integraciona formula egzaktno integrira polinome sto vi seg stupnja na intervalu [a, b], tj. da za polinome f sto vi seg stupnja bude h := h1 =
b (1) (1)

f (x) dx = I1 (f ) = w0 f (a) + w1 f (b).


a

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 411

Stavimo, redom, uvjete na bazu vektorskog prostora polinoma. Ako je f neki od polinoma baze vektorskog prostora, morat cemo izra cunati njegov integral. Zbog toga je zgodno odmah izra cunati integrale oblika
b

xk dx,
a

k 0,

a zatim rezultat koristiti za razne k . Vrijedi


b

xk+1 x dx = k+1
k

=
a

bk+1 ak+1 . k+1

(11.2.2)

Za f (x) = 1 = x0 dobivamo
b

ba=

x0 dx = w0 1 + w1 1.

Odmah je o cito da iz jedne jednad zbe ne mo zemo odrediti dva nepoznata parametra, pa moramo zahtjevati da integraciona formula bude egzaktna i na polinomima stupnja 1. Za f (x) = x izlazi b2 a2 = 2
b

x dx = w0 a + w1 b.

Sada imamo dvije jednad zbe s dvije nepoznanice w0 + w1 = b a b2 a2 aw0 + bw1 = . 2 Pomno zimo li prvu jednad zbu s a i dodamo drugoj, dobivamo (b a)w1 = b2 a2 b2 2ab + a2 (b a)2 a(b a) = = . 2 2 2 1 h (b a) = . 2 2 h 1 (b a) = , 2 2

Budu ci da je a = b, dijeljenjem s b a, dobivamo w1 =

Drugu te zinu w0 lako izra cunamo iz prve jednad zbe linearnog sustava w0 = b a w1 =

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 412

pa je w0 = w1 . Vidimo da je integraciona formula I1 (f ) dobivena iz egzaktnosti na svim polinomima stupnja manjeg ili jednakog 1, i glasi
b

f (x) dx

h (f (a) + f (b)). 2

Ta formula zove se trapezna formula. Odakle joj ime? Napi semo li je na malo druga ciji na cin, kao b f (a) + f (b) f (x) dx (b a), 2 a odmah cemo vidjeti da je (f (a) + f (b))/2 srednjica, a b a visina trapeza sa slike.
y f (b)

f (a)

Drugim rije cima, povr sinu ispod krivulje zamijenili smo (tj. aproksimirali) povr sinom trapeza. Koliko je ta zamjena dobra? Ovisi o funkciji f . Sve dok pravac razumno aproksimira oblik funkciju f , gre ska je mala. Na primjer, za funkciju
y f (a)

f (b)

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 413

pravac nije dobra aproksimacija za oblik funkcije f . Da smo nacrtali funkciju f simetri cnije oko sjeci sta, moglo bi se dogoditi da je gre ska vrlo mala, jer bi se ono sto je previ se ura cunato u povr sinu s jedne strane skratilo s onim sto je premalo ura cunato s druge strane. S numeri ckog stanovi sta, takav pristup je opasan. Trapezna integraciona formula ne ce egzaktno integrirati sve polinome stupnja 2. To nije te sko pokazati, jer ve c za f (x) = x2 vrijedi b3 a3 = 3
b

x2 dx = I1 (x2 ) =
a

a2 + b2 (b a). 2

Slika nas upu cuje na jo s jednu cinjenicu. Povu cemo li kroz (a, f (a)), (b, f (b)) linearni interpolacioni polinom, a zatim ga egzaktno integriramo od a do b, dobivamo trapeznu formulu. Poka zimo da je to tako. Interpolacioni polinom stupnja 1 koji prolazi kroz zadane to cke je p1 (x) = f (a) + f [a, b] (x a). Njegov integral na [a, b] je
b

p1 (x) dx = f (a)x a f [a, b]x + f [a, b]


2

x2 2

b a

= (b a)f (a) +

(b a) f (a) + f (b) f [a, b] = (b a) . 2 2

Ovaj nam pristup omogu cava i ocjenu gre ske integracione formule, preko ocjene gre ske interpolacionog polinoma, uz uvjet da mo zemo ocijeniti gre sku interpolacionog polinoma (tj. ako f ima dovoljan broj neprekidnih derivacija). Neka je funkcija f C 2 [a, b]. Gre ska interpolacionog polinoma stupnja 1 koji funkciju f interpolira u to ckama (a, f (a)), (b, f (b)) na intervalu [a, b] jednaka je e1 (x) = f (x) p1 (x) = Drugim rije cima, vrijedi
b

f ( ) (x a) (x b). 2

E1 (f ) =
a

f ( ) (x a) (x b) dx. 2

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 414

Ostaje samo izra cunati E1 (f ). Iskoristit cemo generalizaciju teorema srednje vrijednosti za integrale. Ako su funkcije g i w integrabilne na [a, b] i ako je w (x) 0 na [a, b], a m = inf g (x), M = sup g (x),
x[a,b] x[a,b]

onda vrijedi
b b b

m
a

w (x) dx

w (x)g (x) dx M

w (x) dx.
a

Prethodna formula lako se dokazuje, jer je m g (x) M = mw (x) g (x)w (x) Mw (x), pa je
b b b

m
a

w (x) dx

w (x)g (x) dx M

w (x) dx.
a

(11.2.3)

Digresija za nematemati care. inf ( citati inmum) je minimum funkcije koji se ne mora dosti ci. Na primjer, funkcija g (x) = x na (0, 1) nema minimum, ali je
x(0,1)

(11.2.4)

inf x = 0.

Sli cno vrijedi i za sup ( citati supremum). Supremum je maksimum funkcije koji se ne mora dosti ci. Na primjer, funkcija iz relacije (11.2.4) nema ni maksimum, ali je sup x = 1.
x(0,1)

Kori stenjem relacije (11.2.3), lako dokazujemo integralni teorem srednje vrijednosti s te zinama. Teorem 11.2.1. Neka su funkcije g i w integrabilne na [a, b] i neka je m = inf g (x),
x[a,b]

M = sup g (x).
x[a,b]

Nadalje, neka je w (x) 0 na [a, b]. Tada postoji broj , m M takav da vrijedi
b b

w (x)g (x) dx =
a a

w (x) dx.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 415

Posebno, ako je g neprekidna na [a, b], onda postoji broj takav da je


b b

w (x)g (x) dx = g ( )
a a

w (x) dx.

Dokaz: Ako je
b

w (x) dx = 0,
a

onda je po (11.2.3) i
b

w (x)g (x) dx = 0,
a

pa za mo zemo uzeti proizvoljan realan broj. Ako je


b

w (x) dx > 0,
a

onda dijeljenjem formule (11.2.3) s prethodnim integralom dobivamo


b

m pa za mo zemo uzeti

w (x)g (x) dx
b a

w (x) dx

M,

w (x)g (x) dx
b a

. w (x) dx

Posljednji zaklju cak teorema slijedi iz cinjenice da neprekidna funkcija na segmentu posti ze sve vrijednosti izmedu minimuma i maksimuma, pa mora posti ci i . Drugim rije cima, postoji takav da je = g ( ). Prisjetite se, ve c smo pokazali da je
b

E1 (f ) =
a

f ( ) (x a) (x b) dx. 2

Primijetite da je funkcija (x a) (x b) 0 na [a, b], 2

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 416

pa mo zemo uzeti w (x) = (x a) (x b) , 2 g (x) = f ( ).

Po generaliziranom teoremu srednje vrijednosti, ako je f C 2 [a, b], ( sto zna ci da je f C 0 [a, b]), vrijedi da je
b

E1 (f ) = f ( )

(x a) (x b) dx. 2

Ovaj se integral jednostavno ra cuna. Integriranjem dobivamo


b

(b a)3 h3 (x a) (x b) dx = = , 2 12 12 h3 . 12

pa je E1 (f ) = f ( )

11.2.2.

Simpsonova formula

Izvedimo sljede cu (zatvorenu) NewtonCotesovu formulu za m = 2, poznatu pod imenom Simpsonova formula. Za m = 2, aproksimacija integrala (11.2.1) ima oblik I2 (f ) = w0 f (x0 ) + w1 f (x0 + h2 ) + w2 f (x0 + 2h2 ), ba . 2 Ponovno, da bismo olak sali pisanje, kad znamo da je m = 2, mo zemo, radi jednos(2) tavnosti, izostaviti gornje indekse u wk := wk . Oprez, to nisu isti wk i h kao u trapeznoj formuli! Kad uvrstimo zna cenje h u aproksimacionu formulu, dobivamo h := h2 = I2 (f ) = w0 f (a) + w1 f a+b + w2 f (b). 2 pri cemu je
(2) (2) (2)

Stavimo uvjete na egzaktnost formule na vektorskom prostoru polinoma sto vi seg stupnja. Moramo postaviti najmanje tri jednad zbe, jer imamo tri nepoznata koecijenta. Za f (x) = 1 dobivamo
b

ba=

x0 dx = w0 1 + w1 1 + w2 1.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 417

Za f (x) = x izlazi b2 a2 = 2
b

x dx = w0 a + w1

a+b + w2 b. 2

Kona cno, za f (x) = x2 dobivamo b3 a3 = 3


b

x2 dx = w0 a2 + w1

(a + b)2 + w2 b2 . 4

Sada imamo linearni sustav s tri jednad zbe i tri nepoznanice w0 + w1 + w2 = b a b2 a2 a+b w1 + bw2 = aw0 + 2 2 3 2 b a3 ( a + b ) w1 + b2 w2 = . a2 w0 + 4 3 Rje savanjem ovog sustava, dobivamo w0 = w2 = h ba = , 3 6 w1 = 4h 4(b a) = . 3 6

Drugim rije cima, integraciona formula I2 (f ) dobivena je iz egzaktnosti na svim polinomima stupnja manjeg ili jednakog 2, i glasi
b

f (x) dx

a+b h f (a) + 4f + f (b) . 3 2

Simpsonova formula ima jo s jednu prednost. Iako je dobivena iz uvjeta egzaktnosti na vektorskom prostoru polinoma stupnja manjeg ili jednakog 2, ona egzaktno integrira i sve polinome stupnja 3. Dovoljno je pokazati da egzaktno integrira f (x) = x3 . Egzaktni integral jednak je
b

x3 dx =
a

b4 a4 , 4

a po Simpsonovoj formuli, za f (x) = x3 dobivamo I2 (x3 ) = ba 3 a+b 3 a +4 + b3 6 2 ba 3 b4 a4 = (a + a2 b + ab2 + b3 ) = . 4 4

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 418

Ponovno, nije te sko pokazati da je i ova formula interpolaciona. Ako povu cemo b a+b kvadratni interpolacioni polinom kroz (a, f (a)), ( a+ , f ( )) i ( b, f ( b )), a zatim ga 2 2 egzaktno integriramo od a do b, dobivamo Simpsonovu formulu. Ako pogledamo kako ona funkcionira na funkcijama koje smo ve c integrirali trapeznom formulom, vidjet cemo da joj je gre ska bitno manja. Posebno, na prvom primjeru, kvadratni interpolacioni polinom tako dobro aproksimira funkciju f , da se one na grafu ne razlikuju.
y f (b) y f (a) f (a) f (b)

Gre sku Simpsonove formule ra cunamo sli cno kao kod trapezne, integracijom gre ske kvadratnog interpolacionog polinoma e2 (x) = f (x) p2 (x) = a+b f ( ) (x a) x (x b). 6 2

Dakle, za gre sku Simpsonove formule vrijedi


b

E2 (f ) =
a

e2 (x) dx.

Na zalost, funkcija

a+b (x b) 2 nije vi se ksnog znaka na [a, b], pa ne mo zemo direktno primijeniti generalizirani teorem srednje vrijednosti. Pretpostavimo da je f C 4 [a, b]. Ozna cimo (x a) x c := i deniramo w (x) =
a x

a+b 2

(t a) (t c) (t b) dt.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 419

Tvrdimo da vrijedi w (a) = w (b) = 0, Skiciramo li funkciju f (t) = (t a)(t c)(t b) odmah vidimo da je ona centralno simetri cna oko srednje to cke
f (t)

w (x) > 0,

x (a, b).

(11.2.5)

pa ce integral rasti od 0 do svog maksimuma (plava povr sina), a zatim padati (kad cje) do 0. dode u crveno podru Ostaje samo jo s napisati gre sku interpolacionog polinoma kao podijeljenu razliku. To smo pokazali op cenito u poglavlju o Newtonovom interpolacionom polinomu, a posebno za n = 3 vrijedi f [a, b, c, x] = f ( ) . 6

Uz oznaku (11.2.5), gre sku Simpsonove formule, onda mo zemo napisati kao
b

E2 (f ) =
a

w (x)f [a, b, c, x] dx.

Parcijalnom integracijom ovog integrala dobivamo


b b

E2 (f ) = w (x)f [a, b, c, x]

w (x)
a

d f [a, b, c, x] dx. dx

Prvi clan je o cito jednak 0, jer je w (a) = w (b) = 0. Ostaje jo s srediti drugi clan. Kod splajnova smo obja snjavali da je podijeljena razlika s dvostrukim cvorom jednaka derivaciji funkcije. Na sli can je na cin derivacija tre ce podijeljene razlike

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 420

f [a, b, c, x] po x, cetvrta podijeljena razlika s dvostrukim cvorom x. Prema tome, dobivamo formulu gre ske u obliku
b

E2 (f ) =

w (x)f [a, b, c, x, x] dx.


a

Sad je funkcija w nenegativna i mo zemo primijeniti generalizirani teorem srednje vrijednosti. Izlazi
b

E2 (f ) = f [a, b, c, , ]

w (x) dx,
a

gdje je a b. Napi semo li f [a, b, c, , ] kao derivaciju, dobivamo f (4) ( ) E2 (f ) = 4!


b

w (x) dx.
a

Ostaje jo s samo integrirati funkciju w . Vrijedi


x

w (x) = =

a x c

(t a) (t c) (t b) dt = zamjena varijable y = t c
x c

(y h)y (y + h) dy =
4 2 x c

(y 3 h2 y ) dy

= Nadalje je
b b

y y h2 4 2

=
h

(x c )4 (x c)2 h4 h2 + . 4 2 4

w (x) dx =
a a h

(x c )4 (x c)2 h4 dx = zamjena varijable y = x c h2 + 4 2 4 y4 y 2 h4 y5 y 3 h4 y h2 + dy = h2 + 4 2 4 20 6 4 h5 h5 h5 + 20 6 4 = 4 5 h. 15


h h

=
h

=2

Kad to uklju cimo u formulu za gre sku, dobivamo f (4) ( ) 4 5 h5 (4) E2 (f ) = h = f ( ). 24 15 90 Primijetite, gre ska je za red veli cine bolja no sto bi po upotrijebljenom interpolacionom polinomu trebala biti.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 421

11.2.3.

Produljene formule

Nije te sko pokazati da su sve NewtonCotesove formule integrali interpolacionih polinoma na ekvidistantnoj mre zi. Ako ne valja dizanje stupnjeva interpolacionih polinoma na ekvidistantnoj mre zi, onda ne ce biti dobri niti njihovi integrali. Poka zimo to na primjeru Runge. Prava vrijednost integrala je
5

dx = 2 arctg 5 2.74680153389003172. 1 + x2

Sljede ca tablica pokazuje aproksimacije integrala izra cunate NewtonCotesovim formulama raznih redova i pripadne gre ske. Red formule m Aproksimacija integrala Gre ska 1 0.38461538461538462 2.36218614927464711 2 6.79487179487179487 4.04807026098176315 3 2.08144796380090498 0.66535357008912674 4 2.37400530503978780 0.37279622885024392 5 2.30769230769230769 0.43910922619772403 6 3.87044867347079978 1.12364713958076805 7 2.89899440974837875 0.15219287585834703 8 1.50048890712791179 1.24631262676211993 9 2.39861789784183472 0.34818363604819700 10 4.67330055565349876 1.92649902176346704 11 3.24477294027858525 0.49797140638855353 12 0.31293651575343889 3.05973804964347061 13 1.91979721683238891 0.82700431705764282 14 7.89954464085193082 5.15274310696189909 15 4.15555899270655713 1.40875745881652541 16 6.24143731477308329 8.98823884866311501 17 0.26050944143760372 2.48629209245242800 18 18.87662129010920670 16.12981975621917490 19 7.24602608588196936 4.49922455199193763 20 26.84955208882447960 29.59635362271451140 O cito je da aproksimacije ne konvergiraju prema pravoj vrijednosti integrala. Potpunije opravdanje ovog pona sanja dajemo ne sto kasnije. I sto sad? Ne smijemo dizati red formula, jer to postaje opasno. Rje senje je vrlo sli cno onome sto smo primijenili kod interpolacije. Umjesto da di zemo red

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 422

formule, podijelimo interval [a, b] na vi se dijelova, recimo, jednake duljine, i na svakom od njih primijenimo odgovaraju cu integracionu formulu niskog reda. Tako dobivene formule zovu se produljene formule. Na primjer, za funkciju koju smo ve c razmatrali, produljena trapezna formula s 2 podintervala izgledala bi ovako.
y

x0

x1

x2

Op cenito, produljenu trapeznu formulu dobivamo tako da cijeli interval [a, b] podijelimo na n podintervala oblika [xk1 , xk ], za k = 1, . . . , n, s tim da je a = x0 < x1 < < xn1 < xn = b, i na svakom od njih upotrijebimo obi cnu trapeznu formulu. Znamo da je tada
b n xk

f (x) dx =
a k =1xk1

f (x) dx,

pa na isti na cin zbrojimo i obi cne trapezne aproksimacije u produljenu trapeznu aproksimaciju. Najjednostavniji je slu caj kad su to cke xk ekvidistantne, tj. kad je svaki podinterval [xk1 , xk ] iste duljine h. To zna ci da je xk = a + kh, k = 0, . . . , n, h= ba . n

Aproksimacija produljenom trapeznom formulom je


b

f (x) dx = h
a

1 1 T f0 + f1 + + fn1 + fn + En (f ), 2 2

T pri cemu je En (f ) gre ska produljene formule. Nju mo zemo zapisati kao zbroj gre saka osnovnih trapeznih formula na podintervalima n T En (f ) = k =1

f (k )

h3 . 12

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 423

Gre ska ovako napisana nije naro cito lijepa i korisna, pa ju je potrebno napisati malo druga cije h3 n 1 n T En (f ) = f ( k ) . 12 n k=1 Izraz u zagradi je aritmeti cka sredina vrijednosti drugih derivacija u to ckama k . Taj se broj sigurno nalazi izmedu najmanje i najve ce vrijednosti druge derivacije funkcije f na intervalu [a, b]. Budu ci da je f neprekidna na [a, b], onda je broj u zagradi vrijednost druge derivacije u nekoj to cki [a, b], pa formulu za gre sku mo zemo pisati kao
T En (f )

h3 n (b a)h2 = f ( ) = f ( ). 12 12

Iz ove formule izvodimo va znu ocjenu za broj podintervala potrebnih da se postigne zadana to cnost za produljenu trapeznu metodu
T |En (f )|

(b a)h2 (b a)3 M2 = M2 , 12 12n2

M2 = max |f (x)|.
x[a,b]

T Zelimo li da je |En (f )| , onda je dovoljno tra ziti da bude

(b a)3 M2 , 12n2 odnosno da je n (b a)3 M2 , 12 n cijeli broj.

Na sli can se na cin izvodi i produljena Simpsonova formula. Primijetite, osnovna Simpsonova formula ima 3 to cke, tj. 2 podintervala, pa produljena formula mora imati, takoder, paran broj podintervala. Pretpostavimo stoga da je n paran broj. Ograni cimo se samo na ekvidistantni slu caj. Onda je ponovno h= ba , n xk = a + kh, k = 0, . . . , n.

Aproksimaciju integrala produljenom Simpsonovom formulom dobivamo iz


b n/2 x2k

f (x) dx =
a k =1x2k2

f (x) dx,

tako da na svakom podintervalu [x2k2 , x2k ], duljine 2h, primijenimo obi cnu Simpsonovu formulu, za k = 1, . . . , n/2. Zbrajanjem izlazi
b

f (x) dx =
a

h S f0 + 4f1 + 2f2 + 4f3 + 2f4 + + 4fn1 + fn + En (f ), 3

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 424

S pri cemu je En (f ) gre ska produljene formule. Nju mo zemo zapisati kao zbroj gre saka osnovnih Simpsonovih formula na podintervalima n/2 S En (f ) = k =1

f (4) (k )

h5 . 90

Opet je gre sku korisno napisati malo druga cije


S En (f ) =

h5 (n/2) 2 n/2 (4) f ( k ) . 90 n k=1

Sli cnim zaklju civanjem kao kod trapezne formule, izraz u zagradi mo zemo zamijeniti s f (4) ( ), [a, b], pa dobivamo
S En (f ) =

h5 n (4) (b a)h4 (4) f ( ) = f ( ). 180 180

Ponovno, iz ove formule izvodimo ocjenu za broj podintervala potrebnih da se postigne zadana to cnost za Simpsonovu metodu
S |En (f )|

(b a)h4 (b a)5 M4 = M4 , 180 180n4

M4 = max |f (4) (x)|.


x[a,b]

S Zelimo li da je |En (f )| , onda je dovoljno tra ziti da bude

(b a)5 M4 , 180n4 odnosno da je n


4

(b a)5 M4 , 180

n paran cijeli broj.

11.2.4.

Primjeri

Primjer 11.2.1. Izra cunajte vrijednost integrala


2

xex dx
1

kori stenjem (produljene) Simpsonove formule tako da gre ska bude manja ili jednaka 106 . Nadite pravu vrijednost integrala i pogre ske. Koliko je podintervala potrebno za istu to cnost kori stenjem (produljene) trapezne formule?

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 425

Prmo, moramo ocijeniti pogre sku za produljenu trapeznu i produljenu Simpsonovu formulu. Za to su nam potrebni maksimumi apsolutnih vrijednosti druge i cetvrte derivacije na zadanom intervalu. Derivacije su redom f (1) (x) = (1 x)ex , f (4) (x) = (x 4)ex , f (2) (x) = (x 2)ex , f (5) (x) = (5 x)ex . f (3) (x) = (3 x)ex ,

Nadimo maksimume apsolutnih vrijednosti derivacija na zadanom intervalu. Prvo ocijenimo gre sku za produljenu trapeznu formulu. Na intervalu [1, 2] je f (3) (x) > 0, sto zna ci da f (2) raste. Uo cimo jo s da je na zadanom intervalu f (2) (x) 0, pa je maksimum apsolutne vrijednosti druge derivacije u lijevom rubu, tj. M2 = max |f (2) (x)| = |f (2) (1)| = e1 0.367879441171.
x[1,2]

Broj podintervala nT za produljenu trapeznu formulu je nT (b a)3 M2 = 12 e1 175.09, 12 106

pa je najmanji broj podintervala nT = 176. Sada ocijenimo gre sku za produljenu Simpsonovu formulu. Na intervalu [1, 2] je f (x) > 0, sto zna ci da f (4) raste. Takoder je i f (4) (x) < 0, sto zna ci da je njen maksimum po apsolutnoj vrijednosti ponovno u lijevom rubu, tj.
(5)

M4 = max |f (4) (x)| = |f (4) (1)| = 3 e1 1.103638323514.


x[1,2]

Za gre sku produljene Simpsonove formule imamo nS


4

(b a)5 M4 = 180

3 e1 8.85, 180 106

tj. treba najmanje nS = 10 podintervala. Sad mo zemo upotrijebiti produljenu Simpsonovu formulu s 10 podintervala (11

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 426

cvorova). Imamo k 0 1 2 3 4 5 6 7 8 9 10 Sada je S0 = f (x0 ) + f (x10 ) = 0.63855000765, S1 = 4(f (x1 ) + f (x3 ) = f (x5 ) + f (x7 ) + f (x9 )) = 6.5995485226, S2 = 2(f (x2 ) + f (x4 ) + f (x6 ) + f (x8 )) = 2.6544824628. Vrijednost integrala po Simpsonovoj formuli je Is = 0.1 (S0 + S1 + S2 ) = 0.3297526998. 3 xk 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 f (xk ) 0.3678794412 0.3661581921 0.3614330543 0.3542913309 0.3452357495 0.3346952402 0.3230344288 0.3105619909 0.2975379988 0.2841803765 0.2706705665

U ovom konkretnom slu caju mo zemo bez puno napora izra cunati i egzaktnu vrijednost integrala. Jedina korist od toga je da vidimo koliko je zaista ocjena za Simpsonovu metodu bliska sa stvarnom gre skom. Parcijalna integracija daje
2

xe
1

dx =

u = x, du = dx x dv = e dx, v = ex
2 1

= xe

x 1

+
1

ex dx

= e1 2e2 ex = e1 2e2 e2 + e1 = 2e
1

3e

0.3297530326.

Drugim rije cima, prava pogre ska je I IS = 0.3297530326 0.3297526998 = 3.328 107 , tj. ocjena gre ske nije daleko od prave pogre ske.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 427

11.2.5.

Midpoint formula

Ako u NewtonCotesovim formulama ne interpoliramo (pa onda niti ne integriramo) jednu ili obje rubne to cke, dobili smo otvorene NewtonCotesove formule. Ako deniramo x1 := a, xm+1 := b i hm = ba , m+2

onda otvorene NewtonCotesove formule imaju oblik


b m

f (x) dx Im (f ) =

wk f (x0 + khm ).
k =0

(m)

(11.2.6)

Vjerojatno najkori stenija i najpoznatija otvorena NewtonCotesova formula je ona najjednostavnija za m = 0, poznata pod imenom midpoint formula (formula srednje to cke). Dakle za bismo odredili midpoint formulu, moramo na ci koecijent w0 := w0 takav da je b a+b f (x) dx = w0 f 2 a egzaktna na vektorskom prostoru polinoma sto vi seg stupnja. Za f (x) = 1, imamo
b (0)

ba= odakle odmah slijedi da je


b

1 dx = w0 ,
a

f (x) dx = (b a)f

a+b . 2

Gre ska te integracione formule je integral gre ske interpolacionog polinoma stupnja 0 (konstante), koji interpolira funkciju f u srednjoj to cki. Ako deniramo
x

w (x) =
a

(t c) dt,

c :=

a+b , 2

onda koriste ci istu tehniku kao kod izvoda gre ske za Simpsonovu formulu, izlazi da je gre ska midpoint formule
b

E0 (f ) =
a

e0 (x) dx = f ( )

(b a)3 . 24

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 428

Da bismo izveli produljenu formulu, podijelimo interval [a, b] na n podintervala i na svakom upotrijebimo midpoint formulu. Tada vrijedi
M In (f ) = h(f1 + + fn ) + En (f ),

h=

ba , n

xk = a + k

1 h, 2

M pri cemu je En (f ) ukupna gre ska koja je jednaka M En (f )

h3 n 1 n h3 n h2 (b a) h3 = f ( k ) = f ( k ) = f ( ) = f ( ). 24 24 n k=1 24 24 k =1

11.3.

Rombergov algoritam

Pri izvodu Rombergovog algoritma koristimo se sljede cim principima: udvostru cavanjem broja podintervala u produljenoj trapeznoj metodi,

eliminacijom clana gre ske iz dvije susjedne produljene formule. Ponovljena primjena ovog principa zove se Richardsonova ekstrapolacija.

Asimptotski razvoj ocjene pogre ske za trapeznu integraciju daje EulerMacLaurinova formula. Teorem 11.3.1. Neka je m 0, n 1, m, n cijeli brojevi. Deniramo ekvidistantnu mre zu s n podintervala na [a, b], tj. h= ba , n xk = a + kh, k = 0, . . . , n.

Pretpostavimo da je f C (2m+2) [a, b]. Za pogre sku produljene trapezne metode vrijedi b m d2i T En (f ) = f (x) dx In (f ) = + Fn,m , 2i n i =1 a gdje su koecijenti d2i = a ostatak je Fn,m (b a)2m+2 x a (2m+2) = B 2m+2 f (x) dx. 2 m +2 (2m + 2)!n h a
b

B2i (b a)2i (f (2i1) (b) f (2i1) (a)), (2i)!

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 429

Ovdje su B2i Bernoullijevi brojevi,


1

Bi =

Bi (x) dx,
0

i 1,

a B i je periodi cko pro sirenje obi cnih Bernoullijevih polinoma B i (x) = Bi (x), B i (x 1), za 0 x 1, za x 1.

Ovo je jedan od klasi cnih teorema numeri cke analize i njegov se dokaz mo ze na ci u mnogim knjigama. Umjesto dokaza, nekoliko obja snjenja. Bernoullijevi polinomi zadani su implicitno funkcijom izvodnicom t(ext 1) = et 1 ti Bi (x) . i! i=0 B2 (x) = x2 x

Prvih nekoliko Bernullijevih polinoma su: B0 (x) = 0 B3 (x) = x3

B1 (x) = x

3x2 x + B4 (x) = x2 (1 x)2 . 2 2 Uvijek vrijedi Bi (0) = 0 za i 0. Rekurzivne relacije su Bi (x) =

Iz prethodne se formule integracijom mogu dobiti Bi (x), jer je slobodni clan jednak 0. Bernoullijevi brojevi takoder su denirani implicitno t = t e 1
1

iBi1 (x), za i paran i i 4, i(Bi1 (x) + Bi1 ), za i neparan i i 3.

Bi
i=0

ti , i!

odakle se integracijom na [0, 1] po x u rekurziji za Bi (x) dobiva Bi = Bi (x) dx,


0

i 1. 1 , 42 3617 = 510

Prvih nekoliko Bernoullijevih brojeva: 1 1 1 B0 = 1, B1 = , B2 = , B4 = , 2 6 30 1 5 691 7 B8 = , B10 = , B12 = , B14 = , 30 66 2730 6 i dalje vrlo brzo rastu po apsolutnoj vrijednosti B60 2.139994926 1034 .

B6 = B16

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 430

Veza izmedu jednih i drugih Bernoullijevih polinoma je Bi (x) = Bi (x)+ Bi , za i 0. Rombergov algoritam dobivamo tako da eliminiramo clan po clan iz reda za ocjenu gre ske na osnovu vrijednosti integrala s duljinom koraka h i h/2. Za podintegralne funkcije koje nisu dovoljno glatke, takoder, se mo ze (uz blage pretpostavke) asimptotski dobiti razvoj pogre ske. Posebno to vrijedi za funkcije s algebarskim (x ) i/ili logaritamskim (ln x) singularitetima.

Napomena 11.3.1. U literaturi se mo ze na ci i malo druga cija denicija Bernoullijevih polinoma, ozna cimo ih s Bi (x). Oni su zadani implicitno funkcijom izvodnicom text ti = B (x) . et 1 i=0 i i!

(0) Izvedimo sad Rombergov algoritam. Ozna cimo s In trapeznu formulu s duljinom intervala h = (b a)/n. Iz EulerMacLaurinove formule, ako je n paran, za asimptotski razvoj gre ske imamo

(0) I In =

I In/2

(0)

d dm d2 + 44 + + 2 + Fn,m 2 n n n2m (0) (0) (0) 4d 16d4 22m d2m + + + + Fn/2,m . = 2 n2 n4 n2m

(0)

(0)

(0)

Ako prvi razvoj pomno zimo s 4 i oduzmemo mu drugi razvoj, skratit ce se prva (0) gre ska s desne strane d2 , tj. dobit cemo
(0) 4(I In ) (I In/2 ) = (0)

12d4 60d6 + . 4 n n6

(0)

(0)

Izlu civanjem clanova koji imaju I na lijevu stranu, a zatim dijeljenjem, dobivamo I=
(0) 4In In/2 (0)

4d 20d6 4 + . 4 n n6

(0)

(0)

Prvi clan zdesna mo zemo uzeti kao bolju, popravljenu aproksimaciju integrala, u oznaci (0) (0) 4In In/2 (1) In = , n paran, n 2. 3 (2) (4) (6) Niz In , In , In je novi integracijski niz. Njegova je gre ska
(1) I In =

d4 d + 66 + , 4 n n d6 = 20d6 .
(1) (0)

(1)

(1)

gdje je

d4 = 4d4 ,

(1)

(0)

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 431

(1) Nadimo eksplicitnu formulu za In . Zbog podjele na odgovaraju ci broj podin(0) tervala, ako je h duljina podintervala za In , onda je h1 := 2h duljina podintervala (0) za In/2 , pa vrijede sljede ce formule (0) In =

In/2

(0)

h (f0 + 2f1 + 2fn1 + fn ) 2 h1 = (f0 + 2f2 + 2fn2 + fn ). 2

(1) Uvr stavanjem u In , dobivamo (1) = In

4h 1 1 2h 1 1 f0 + 2f1 + 2fn1 + fn f0 + 2f1 + 2fn1 + fn 3 2 2 3 2 2 h = (f0 + 4f2 + 2f4 + 4fn2 + fn ), 3

sto je Simpsonova formula s n podintervala. Sli can argument kao i prije mo zemo upotrijebiti i dalje. Vrijedi I Tada je 16(I odnosno
(1) In ) (1) In/2

16d4 64d6 = + + . 4 n n6
(1) In/2 )

(1)

(1)

(I

48d6 = + , n6
(1)

(1)

48d6 I= + . 15 15n6 Ponovno, prvi clan s desne strane proglasimo za novu aproksimaciju integrala
(2) In

(1) 16In In/2

(1)

(1) 16In In/2

(1)

15

n djeljiv s 4,

n 4.

Induktivno, ako nastavimo postupak, dobivamo Richardsonovu ekstrapolaciju


(k ) In

(k 1) 4k In In/2

(k 1)

4k 1

n 2k ,

pri cemu je gre ska jednaka


(k ) En

=I

(k ) In

d k+2 = 2 + = k (b a)h2k+2 f (2k+2) ( ), 2 k +2 n

(k )

a b.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 432

Sada mo zemo denirati Rombergovu tablicu I1 I2


(0) (0) (0)

I2

(1) (1)

I4 . . .

I4 . . .

I4 . . .

(2)

. .. .

Ako pogledamo omjere gre saka clanova u stupcu, uz pretpostavku dovoljne glatko ce, onda dobivamo (k ) En = 22k+2 , (k ) E2n tj. omjeri pogre saka u stupcu se moraju pona sati kao 1 4 4 4 . . . 1 16 16 . . . 1 64 . . . 1 . . . .. . .

Poka zimo na primjeru da prethodni omjeri pogre saka u stupcu vrijede samo ako je funkcija dovoljno glatka. Primjer 11.3.1. Rombergovim algoritmom s to cno s cu 1012 nadite vrijednosti integrala 1 1 1 x 3/2 e dx, x dx, x dx
0 0 0

i poka zite kako se pona saju omjeri pogre saka u stupcima. Pogledajmo redom funkcije. Eksponencijalna funkcija ima beskona cno mnogo neprekidnih derivacija, pa bi se ra cunanje integrala morala pona sati po predvidanju. Kao vrijednost, nakon 25 podintervala u trapeznoj formuli, dobivamo umjesto prave vrijednosti integrala I , pribli znu vrijednost I5 = 1.71828182845904524 I = e 1 = 1.71828182845904524 I I5 = 0.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 433

Poka zimo omjere pogre saka u stupcima, 0 1 2 3 4 5 1.0000 3.9512 3.9875 3.9969 3.9992 3.9998 1.0000 15.6517 15.9913 15.9777 15.9944

1.0000 62.4639 1.0000 63.6087 249.7197 1.0000 63.9017 254.4010 1000.5738 1.0000

a zatim samo eksponente omjera pogre saka (eksponenti od 2, koji bi ako je funkcija glatka morali biti 2k + 2). 0 1 2 3 4 5 1.0000 1.9823 1.9955 1.9989 1.9997 1.9999 1.0000 3.9682 3.9920 3.9980 3.9995

1.0000 5.9650 1.0000 5.9912 7.9642 1.0000 5.9978 7.9910 9.9666 1.0000

je s drugom funkcijom? Funkciji f (x) = x3/2 puca druga derivacija u 0, pa Sto bi zanimljivo pona sanje moralo po ceti ve cu drugom stupcu (za trapez je funkcija dovoljno glatka za ocjenu pogre ske). Kao vrijednost, nakon 215 podintervala u trapeznoj formuli, dobivamo umjesto prave vrijednosti integrala I , pribli znu vrijednost I15 = 0.40000000000004512 I = 2/5 = 0.40000000000000000 I I15 = 0.00000000000004512. je s omjerima pogre Primijetite da je broj intervala poprili cno velik! Sto saka? 0 1 2 3 4 5 6 . . . 1.0000 3.7346 3.8154 3.8721 3.9112 3.9381 3.9567 . . . 1.0000 5.4847 5.5912 5.6331 5.6484 5.6539 . . .

1.0000 5.6484 5.6559 5.6568 5.6568

1.0000 5.6566 1.0000 5.6568 5.6569 1.0000 5.6569 5.6569 1.0000 .. .

15 3.9981 5.6569

. 5.6569 1.0000

..

Primje cujemo da su se nakon prvog stupca omjeri pogre saka stabilizirali. Bit ce nam mnogo lak se provjeriti sto se dogada ako napi semo samo eksponente omjera

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 434

pogre saka. 0 1 2 3 4 5 6 . . . 1.0000 1.9010 1.9318 1.9531 1.9676 1.9775 1.9843 . . . 1.0000 2.4554 2.4832 2.4939 2.4978 2.4992 . . .

1.0000 2.4978 2.4998 2.5000 2.5000

1.0000 2.4999 1.0000 2.5000 2.5000 1.0000 2.5000 2.5000 2.5000 1.0000 .. .

15 1.9993 2.5000

. 2.5000 1.0000

..

Primijetite da su eksponenti omjera pogre saka od drugog stupca nadalje to cno za 1 ve ci od eksponenta same funkcije (integriramo!). Situacija s funkcijom f (x) = x mora biti jo s gora, jer njoj puca prva derivacija u 0. Nakon 215 podintervala u trapeznoj formuli ( sto je ograni cenje zbog veli cine polja u programu), ne dobivamo zeljenu to cnost I15 = 0.66666665510837633 I = 2/3 = 0.66666666666666667 I I15 = 0.00000001155829033. Omjeri pogre saka u tablici su: 1.0000 2.8200 1.0000 2.8267 2.8281 1.0000 2.8281 2.8284 2.8284 1.0000 2.8284 2.8284 1.0000 . .. .. . . . . 15 2.8271 2.8284 2.8284 1.0000 Pripadni eksponenti su 0 1 2 3 4 5 . . . 1.0000 1.4010 1.4324 1.4538 1.4681 1.4779 . . . 1.0000 1.4957 1.0000 1.4991 1.4998 1.0000 1.4998 1.5000 1.5000 1.0000 1.5000 1.5000 1.0000 . .. . . . 0 1 2 3 4 5 . . . 1.0000 2.6408 2.6990 2.7393 2.7667 2.7854 . . .

15 1.4993 1.5000

. 1.5000 1.0000

..

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 435

Ipak, u ova dva jednostavna primjera, mo ze se Rombergovom algoritmu pomo ci tako da supstitucijom u integralu dobijemo glatku funkciju. U oba slu caja, 2 ako stavimo supstituciju x = t , podintegralna ce funkcija imati beskona cno mnogo neprekidnih derivacija, pa ce se algoritam pona sati po ocjeni pogre ske. U literaturi postoji i malo druga cija oznaka za aproksimacije integrala u Rombergovoj tablici (k +1) (k ) 4m Tm1 Tm1 (k ) Tm = . 4m 1 Sama tablica ima oblik (0) T0 T0
(1) (2)

T1

(0) (1)

T0 . . .

T1 . . .

T2 . . .

(0)

. .. .

Poka zimo sad nekoliko primjera kako treba, odnosno ne treba koristiti Rombergov algoritam. Primjer 11.3.2. Izra cunajte kori stenjem Rombergovog algoritma pribli znu vrijednost integrala
1

sin(17x) dx
0

Tako da gre ska bude manja ili jednaka 104 . Napi simo tablicu (samo prvih par decimala, ostale pamtimo u ra cunalu, ali nemamo prostora za ispis) 0 0.00000 1 0.50000 0.66667 2 0.60355 0.63807 0.63616 3 0.62841 0.63671 0.63661 0.63662 4 0.00616 0.21768 0.27464 0.28910 0.29273 5 0.02832 0.03982 0.05698 0.06225 0.06362 6 0.03525 0.03756 0.03741 0.03710 0.03700 7 0.03690 0.03745 0.03745 0.03745 0.03745

0.06397 0.03697 0.03745

0.03697 0.03745

0.03745

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 436

je razlog stabilizacije oko jedne, pa oko druge vrijednosti? Nedovoljan broj podSto intervala u trapezu, koji ne opisuju dobro pona sanje funkcije.
y

Produljena trapezna formula s 2 podintervala.


y

Produljena trapezna formula s 4 podintervala.


y

Produljena trapezna formula s 8 podintervala.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 437

Produljena trapezna formula sa 16 podintervala.

11.4.

Te zinske integracione formule

Dosad smo detaljno analizirali samo nekoliko osnovnih NewtonCotesovih integracionih formula s malim brojem to caka i pripadne produljene formule. U ovom odjeljku napravit cemo op cu konstrukciju i analizu to cnosti za neke klase integracionih formula, uklju cuju ci op ce NewtonCotesove i Gaussove formule. Zelimo (pribli zno) izra cunati vrijednost integrala
b

Iw (f ) =
a

f (x)w (x) dx,

(11.4.1)

gdje je w pozitivna (ili barem nenegativna) te zinska funkcija za koju pretpostavljamo da je integrabilna na (a, b), s tim da dozvoljavamo da w nije denirana u rubovima a i b. Interval integracije mo ze biti kona can, ali i beskona can. Drugim rije cima, promatramo op ci problem jednodimenzionalne integracije zadane funkcije f po zadanoj neprekidnoj mjeri d generiranoj te zinskom funkcijom w na zadanoj domeni. Katkad koristimo i skra cenu oznaku I (f ), umjesto Iw (f ), za integral u (11.4.1), ako je w (x) = 1 na cijelom [a, b], ili kad je te zinska funkcija jasna iz konteksta, da skratimo pisanje. Kao i ranije, ovaj integral aproksimiramo te zinskom sumom funkcijskih vrijednosti funkcije f na kona cnom skupu to caka, Za razliku od ranijih oznaka, ovdje je zgodnije to cke numerirati od 1, a ne od 0. Dakle, op ca te zinska integraciona ili kvadraturna formula za aproksimaciju integrala Iw (f ) ima oblik
n

In (f ) =
k =1

wk f (xk ),

(n)

(n)

(11.4.2)

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 438

gdje je n prirodni broj. Kao i prije, gornje indekse (n) za cvorove i te zine cesto ne pi semo, ako su o citi iz konteksta, ali ne treba zaboraviti na ovisnost o n. Dakle, sasvim op cenito mo zemo pisati
b

Iw (f ) =
a

f (x)w (x) dx = In (f ) + En (f ),

(11.4.3)

gdje je En (f ) gre ska aproksimacije. Osnovnu podlogu za konstrukciju integracionih formula i ocjenu gre ske En (f ) daje sljede ci rezultat. Teorem 11.4.1. Ako je Iw (f ) iz (11.4.1) Riemannov integral, i ako je f bilo koja druga funkcija za koju postoji Iw (f ), onda vrijedi ocjena |Iw (f ) Iw (f )| w
1

f f

(11.4.4)

i postoji funkcija f za koju se ova ocjena dosti ze. Dokaz: Prvo uo cimo da w ne mora biti nenegativna, jer je rije c o Riemannovom integralu, ali zato treba pretpostaviti da je |w | integrabilna.

Ocjena izlazi direktno iz osnovnih svojstava Riemannovog integrala jer podintegralne funkcije moraju biti ograni cene. Dobivamo
b b

|Iw (f ) Iw (f )| = Iskoristimo ocjenu

a b

f (x)w (x) dx

f (x)w (x) dx
a

|w (x)| |f (x) f (x)| dx.

|f (x) f (x)| sup |f (x) f (x)| = f f


x[a,b]

x [a, b],

i deniciju L1 norme funkcije w (koja je apsolutno integrabilna po pretpostavci)


b

=
a

|w (x)| dx,

pa dobivamo tra zenu ocjenu. Ako za perturbiranu funkciju f uzmemo f (x) := f (x) + c sign(w (x)),

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 439

gdje je c > 0 bilo koja konstanta, onda u ocjeni (11.4.4) dobivamo jednakost, uz f f = c.

U ovoj formulaciji, za klasi cni Riemannov integral, domena [a, b] integracije mora biti kona cna. Teorem onda ka ze da je apsolutni broj uvjetovanosti za Iw (f ) upravo jednak w 1 i ne ovisi o f , ve c samo o Iw .

Ovaj rezultat mo ze se pro siriti i na neprave Riemannove integrale (beskona cna domena, singulariteti funkcija), i tada vi se ne vrijedi zaklju cak o broju uvjetovanosti. c je klju cna malo druga cija interpretacija Medutim, trenutno nam to nije bitno, ve ocjene (11.4.4). Zamislimo da je f neka aproksimacija (a ne perturbacija) funkcije f , koju zelimo iskoristiti za pribli zno ra cunanje integrala. Onda (11.4.4) daje ocjenu (apsolutne) pogre ske u integralu, preko gre ske aproksimacije funkcije u uniformnoj (L ) normi na [a, b]. Ono sto stvarno zelimo dobiti je niz aproksimacija integrala koji konvergira prema Iw (f ). Jedan od puteva da to postignemo je izbor odgovaraju ceg niza aproksimacija fn , n N, za funkciju f . Prethodna ocjena upu cuje na to da, u ovisnosti o n, za aproksimacione funkcije fn treba uzimati takve funkcije za koje znamo da mo zemo posti ci po volji dobru uniformnu aproksimaciju funkcije f , jer tada f fn

0 = |Iw (f ) Iw (fn )| 0,

n .

Uo cimo da ove aproksimacije, naravno, ovise o konkretnoj funkciji f . Da ne bismo za svaki novi f posebno konstruirali odgovaraju ci niz aproksimacija, po zeljno je da bilo koju funkciju f , za koju postoji integral Iw (f ), mo zemo dovoljno dobro aproksimirati nekim prostorom funkcija. Tj. umjesto niza pojedina cnih aproksimacija, koristimo niz vektorskih prostora aproksimacionih funkcija Vn , a za svaki pojedini f nademo pripadnu aproksimaciju fn Vn . Weierstraov teorem o uniformnoj aproksimaciji neprekidnih funkcija polinomima na kona cnom intervalu [a, b] sugerira da treba uzeti Vn kao prostor polinoma Pd stupnja manjeg ili jednakog d, gdje d ovisi o n (i raste s n). Kao sto cemo vidjeti, korisno je dozvoliti da bude d = n. Isti princip koristimo i za beskona cne domene, samo treba osigurati da su polinomi integrabilni s te zinom w . To posti zemo dodatnim zahtjevom na te zinsku funkciju w , tako da pretpostavimo da svi momenti te zinske funkcije
b

k :=
a

xk w (x) dx,

k N0 ,

(11.4.5)

postoje i da su kona cni. U nastavku pretpostavljamo da te zinska funkcija w zadovoljava ovu pretpostavku. Takve te zinske funkcije obi cno zovemo (polinomno) dopustivima.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 440

Napomenimo odmah da se ovaj pristup mo ze generalizirati i na bilo koji drugi sustav funkcija aproksimacionih funkcija {fn | n N} koji je gust u prostoru C [a, b] neprekidnih funkcija na [a, b]. Pripadni prostori Vn generirani su po cetnim komadima ovog sustava funkcija (kao linearne ljuske). Za prakti cnu primjenu ovog pristupa moramo mo ci efektivno izra cunati integral Iw (fn ) aproksimacione funkcije, i to za bilo koju funkciju f . To se najlak se posti ze tako da konstruiramo pripadnu integracionu formulu In koja je egzaktna na cijelom prostoru Vn = Pd aproksimacionih funkcija. Dakle, uvjet egzaktnosti za In je Iw (f ) = In (f ) ili En (f ) = 0, za sve f Vn . Iz relacija (11.4.3) i (11.4.4) odmah dobivamo i ocjenu gre ske pripadne integracione formule In (f ), za bilo koji f |En (f )| = |Iw (f ) In (f )| = |Iw (f ) Iw (fn )| w
1

f fn

11.5.

Gaussove integracione formule

Kao sto smo ve c rekli, Gaussove formule imaju dvostruko vi se slobodnih parametara nego NewtonCotesove, pa bi zbog toga trebale egzaktno integrirati polinome pribli zno dvostruko ve ceg stupnja od NewtonCotesovih. Za razliku od NewtonC otesovih formula, Gaussove integracijske formule su oblika
b n a

f (x) dx

wif (xi ),
i=1

u kojima to cke integracije xi nisu unaprijed poznate, nego se izra cunaju tako da gre ska takve formule bude najmanja. Motivirani prakti cnim razlozima, promatrat cemo malo op cenitije integracijske formule oblika
b n

w (x) f (x) dx

wi f (xi ),
i=1

gdje je w te zinska funkcija, pozitivna na otvorenom intervalu (a, b). Koecijente wi zovemo te zinski koecijenti ili, skra ceno, te zine integracione formule. Gornji specijalni slu caj u kojem je w 1 cine formule koje se zovu GaussLegendreove. Te zinska funkcija u op cem slu caju utje ce na te zine i to cke integracije, ali se ne pojavljuje eksplicitno u Gaussovoj formuli. Bitno je znati da se za neke te zinske funkcije na odredenim intervalima, cvorovi

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 441

i te zine standardno tabeliraju u priru cnicima. To su te zinska funkcija w 1 1 1 x2 1 x2 ex ex


2

interval [1, 1] [1, 1] [1, 1] [0, ) (, )

formula Gauss Legendre sev Cebi sev 2. vrste Cebi Laguerre Hermite

Glavni rezultat je sljede ci: ako zahtijevamo da formula integrira egzaktno polinome sto je mogu ce ve ceg stupnja, onda su to cke integracije xi nulto cke polinoma koji su ortogonalni na intervalu (a, b) obzirom na te zinsku funkciju w , a te zine wi mogu se eksplicitno izra cunati po formuli
b

wi =
a

w (x) i(x) dx,

i = 1, . . . , n.

Pritom je i poseban polinom Lagrangeove baze kojeg smo razmatrali u poglavlju o polinomnoj interpolaciji, deniran uvjetom i (xj ) = ij (v. (10.2.16)). Primijetimo samo da je kod numeri cke integracije zgodnije cvorove numerirati od x1 do xn , (za razliku od numeracije x0 do xn u poglavlju o interpolaciji), pa je i i polinom stupnja n 1. Kao sto se NewtonC otesove formule mogu dobiti integracijom Lagrangeovog interpolacijskog polinoma, tako se i Gaussove formule mogu dobiti integracijom Hermiteovog interpolacijskog polinoma. Takav pristup ekvivalentan je s pristupom u kojem zahtijevamo da Gaussove formule integriraju egzaktno polinome sto je mogu ce vi seg stupnja, tj. da vrijedi
b

w (x) xj dx =
a

n i=1

wi xj i,

j = 0, 1 , . . . , 2 n 1 .

Mogli bismo iskoristiti ovu relaciju da napi semo 2n jednad zbi za 2n nepoznanica xi i wi , medutim nepoznanice xi ulaze u sistem nelinearno, pa je ovakav pristup te zi. i dokaz da taj nelinearni sistem ima jedinstveno rje Cak senje nije jednostavan. Napi simo jo s jednom formulu za Hermiteov interpolacijski polinom h2n1 , stupnja 2n 1, koji u cvorovima integracije xi interpolira vrijednosti fi = f (xi )

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 442

i fi = f (xi ), za i = 1, . . . , n. Iz relacija (10.2.19) i (10.2.20) dobivamo


n

h2n1 (x) =
i=1 n

hi,0 (x) fi + hi,1 (x) fi


2 [1 2(x xi )i (xi )] 2 i (x) fi + (x xi ) i (x) fi .

=
i=1

Integracijom dobijemo
b n

w (x) h2n1 (x) dx =


a i=1

Ai fi + Bi fi ,

(11.5.1)

gdje su
b

Ai =
a b

w (x) [1 2(x xi )i (xi )] 2 i (x) dx, w (x) (x xi ) 2 i (x) dx.

(11.5.2)

Bi =
a

Integraciona formula (11.5.1) sli ci na Gaussovu integracionu formulu, osim sto ima dodatne clanove Bi fi , koji koriste i derivacije funkcije f u cvorovima integracije. Kad bi, kao u NewtonCotesovim formulama, cvorovi xi bili unaprijed zadani, iz uvjeta egzaktne integracije polinoma trebalo bi odrediti 2n parametara te zinskih koecijenata Ai , Bi . Zato o cekujemo da ovakva formula egzaktno integrira polinome do stupnja 2n 1 (dimenzija prostora je 2n). No, za upotrebu ove formule trebamo znati ne samo funkcijske vrijednosti f (xi ) u cvorovima, ve c i vrijednosti derivacije f (xi ) funkcije u tim cvorovima. Zato je ideja da probamo izbje ci kori stenje derivacija, tako da izborom cvorova xi poni stimo koecijente Bi uz derivacije fi . To cnost integracione formule mora ostati ista (egzaktna integracija polinoma stupnja do 2n 1), ali tako dobivena formula koristila bi samo funkcijske vrijednosti u cvorovima, tj. postala bi Gaussova integraciona formula. Zaista, odgovaraju cim izborom cvorova xi mo ze se posti ci da te zinski koecijenti Bi uz derivacije budu jednaki nula. Da bismo to dokazali, uvodimo posebni polinom cvorova (engl. node polynomial) n , koji ima nulto cke u svim cvorovima integracije n := (x x1 )(x x2 ) (x xn ). Taj polinom smo ve c susreli u poglavlju o Lagrangeovoj interpolaciji. Sljede ci rezultat govori o tome kako treba izabrati cvorove.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 443

Lema 11.5.1. Ako je n (x) = (x x1 ) (x xn ) ortogonalna s te zinom w na sve polinome ni zeg stupnja, tj. ako vrijedi
b

w (x) n (x) xk dx = 0,
a

k = 0, 1 , . . . , n 1 ,

(11.5.3)

onda su svi koecijenti Bi u (11.5.2) jednaki nula. Dokaz: Lagano provjerimo identitet (x xi )i (x) = Supstitucijom u izraz (11.5.2) za Bi slijedi 1 Bi = n (xi )
b

n (x) . (x ) n i

(11.5.4)

w (x) n (x) i (x) dx.


a

Kako je i polinom stupnja n 1, i po pretpostavci je n ortogonalna s te zinom w na sve takve polinome, tvrdnja slijedi. Lako se vidi da vrijedi i obrat ove tvrdnje, tj. da su svi koecijenti Bi = 0 u (11.5.1), ako i samo ako je polinom cvorova n ortogonalan na sve polinome ni zeg stupnja (do n 1), s te zinskom funkcijom w . Razlog tome je sto su funkcije i , i = 1, . . . , n, Lagrangeove baze zaista baza prostora Pn1 (zadatak 10.2.2.). Iz ranijih rezultata o ortogonalnim polinomima znamo da ortogonalni polinom stupnja n obzirom na w postoji i jednozna cno je odreden do na (recimo) vode ci koecijent. Da bismo dobili Gaussovu integracionu formulu u (11.5.1), polinom cvorova n mora biti ortogonalni polinom s vode cim koecijentom 1, tj. n postoji i jedinstven je. Nadalje, uvjet ortogonalnosti (11.5.3) jednozna cno odreduje raspored cvorova za Gaussovu integraciju. Iz teorema 10.8.2. slijedi da n ima n jednostrukih nulto caka u otvorenom intervalu (a, b) ( sto nam ba s odgovara za integraciju). Njegove nulto cke x1 , . . . , xn mo zemo samo permutirati (druga cije indeksirati), a uz standardni dogovor x1 < < xn , one su jednozna cno odredene. Time smo dokazali da postoji jedinstvena Gaussova integraciona formula oblika
b n

w (x) f (x) dx

wi f (xi ),
i=1

Cvorovi integracije xi su nulto cke ortogonalnog polinoma stupnja n na [a, b] s te zinskom funkcijom w , a te zinske koecijente mo zemo izra cunati iz (11.5.2), budu ci da je tada wi = Ai , za i = 1, . . . , n.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 444

Iskoristimo li pretpostavku ortogonalnosti iz leme 11.5.1., mo zemo pojednostavniti i izraze za koecijente wi = Ai u (11.5.2). Sasvim op cenito, koriste ci relaciju za Bi , koecijent Ai mo zemo napisati u obliku
b b

Ai =
a

w (x) [1 2(x

xi )i (xi )] 2 i (x) dx

=
a

w (x) 2 i (x) dx 2i (xi )Bi .

Uz uvjet ortogonalnosti (Gaussova integracija) je Bi = 0 i Ai = wi, pa je


b

wi =
a

w (x) 2 i (x) dx.

Podintegralna funkcija je nenegativna i 2 i je polinom stupnja 2(n 1) koji nije nul-polinom, pa desna strana mora biti pozitivna. Dakle, slijedi da su svi te zinski koecijenti u Gaussovoj integraciji pozitivni, wi > 0, za i = 1, . . . , n, sto je vrlo bitno za numeri cku stabilnost i konvergenciju. Poka zimo jo s da vrijedi i
b b

wi =
a

w (x) 2 i (x) dx

=
a

w (x) i (x) dx.

O cito, to je isto kao i dokazati


b b b

w (x) 2 i (x) dx
a

w (x) i(x) dx =
a a

w (x) i (x) (i (x) 1) dx = 0.

Ali polinom i (x) 1 se poni stava u to cki x = xi , po deniciji polinoma i , jer je i (xj ) = ij . Zna ci da i (x) 1 mora sadr zavati x xi kao faktor, tj. mo zemo napisati i (x) 1 = (x xi )q (x), gdje je q neki polinom stupnja n 2, za jedan manje od stupnja polinoma i . Dakle, i (x) (i (x) 1) = n (x) n (xi )(x xi ) (i (x) 1) = 1
(x ) n i

n (x) q (x),

pa je zbog ortogonalnosti n na sve polinome ni zeg stupnja


b

1 w (x) i (x) (i (x) 1) dx = n (xi )

w (x) n (x) q (x) dx = 0.


a

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 445

Pokazali smo da Gaussovu integracionu formulu mo zemo dobiti kao integral Hermiteovog interpolacijskog polinoma, uz odgovaraju ci izbor cvorova, a za te zinske koecijente vrijedi
b

wi =
a

w (x) i (x) dx.

(11.5.5)

Primijetimo da je ova formula za koecijente ista kao i ona u NewtonC otesovim formulama, sto je ovdje posljedica pretpostavke o ortogonalnosti. U oba slu caja do integracionih formula dolazimo interpolacijom funkcije u cvorovima. Poka zimo i primjerom da ortogonalnost produkta korijenskih faktora, tj. funkcije n (x) na sve polinome ni zeg stupnja zapravo odreduje to cke integracije xi . Primjer 11.5.1. Neka je w (x) = 1 i n = 3. Odredimo to cke integracije iz uvjeta ortogonalnosti. Uobi cajeno je da za interval integracije uzmemo (1, 1), budu ci da integrale na drugim intervalima mo zemo lagano ra cunati, ako podintegralnu funkciju transformiramo linearnom supstitucijom. Problem se dakle svodi na to da odredimo nulto cke kubi cne funkcije 3 (x) = a + bx + cx2 + x3 za koju vrijedi
1

3 (x) xk dx = 0,
1

k = 0, 1 , 2 .

Nakon integracije dobivamo sustav jednad zbi za koecijente a, b, c 2 2 2 2 2 2 a + c = 0, b + = 0, a + c = 0, 3 3 5 3 5 odakle nademo a = c = 0 i b = 3/5. Dobivamo 3 3 (x) = x3 x = x + 5 3 x x 5 3/5. 3 , 5

odakle slijedi da su to cke integracije xi = 3/5, 0,

Teorijski, ovaj pristup mo zemo iskoristiti za sve mogu ce intervale integracije i razne te zinske funkcije. Za ve ce n potrebno je odrediti nule polinoma visokog stupnja, sto je egzaktno nemogu ce, a numeri cki u najmanju ruku neugodno. Stoga je potrebno za specijalne te zine i intervale integracije do ci do dodatnih informacija o ortogonalnim polinomima. Na kraju, bilo bi dobro izra cunati formulom i te zinske faktore wi u Gaussovim formulama. Analiti cki je mogu ce do ci do ovakvih rezultata za mnoge specijalne te zine w (x) koje se pojavljuju u primjenama. Rije simo na po cetku va znu situaciju w 1, a = 1, b = 1. Pripadne formule nazvali smo GaussLegendreovima; u gornjem primjeru izra cunali smo to cke integracije za GaussLegendreovu formulu reda 3. Zadatak 11.5.1. Iz uvjeta egzaktnosti i poznatih to caka integracije za n = 3 izra cunajte te zinske koecijente wi . Primijetite da je sustav jednad zbi linearan, pa stoga ra cunanje ovih faktora ne predstavlja ve ce probleme.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 446

11.5.1.

GaussLegendreove integracione formule

Prepostavimo u daljnjem da je w 1 na intervalu (1, 1) i izvedimo specijalnu Gaussovu formulu, tj. GaussLegendre-ovu formulu
1 n

f (x) dx

wi f (xi ).
i=1

Kao sto znamo, Legendreov polinom stupnja n deniran je Rodriguesovom formulom 1 dn 2 Pn (x) = n (x 1)n . 2 n! dxn Tako denirani polinomi cine ortogonalnu bazu u prostoru polinoma stupnja n, tj. oni su linearno nezavisni i ortogonalni obzirom na skalarni produkt
1

P, Q :=
1

P (x) Q(x) dx.

(11.5.6)

Pojavljuju se prirodno u parcijalnim diferencijalnim jednad zbama, kod metode separacije varijabli za Laplaceovu jednad zbu u kugli. Za nas je bitno samo jedno specijalno svojstvo, iz kojeg slijede sva ostala: Lema 11.5.2. Legendreov polinom stupnja n ortogonalan je na sve potencije xk ni zeg stupnja, tj. vrijedi
1

xk Pn (x) dx = 0,
1

za

k = 0, 1 , . . . , n 1 ,

i vrijedi
1

xn Pn (x) dx =
1

2n+1 (n!)2 . (2n + 1)!

Dokaz: Uvr stavanjem Rodriguesove formule, nakon k (k < n) parcijalnih integracija dobivamo
1 n1 dn 2 n k d x ( x 1) dx = x (x2 1)n dxn dxn1 k =0 1 1 1 1

kxk1
1

d n1 2 (x 1)n dx dxn1

= = (1) k !

d nk 2 (x 1)n dx = 0, dxnk

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 447

pa smo dokazali prvu formulu. Za k = n, na isti na cin imamo


1

dn 2 x (x 1)n dx = (1)n n! dxn


n

(x 1) dx = 2n!
/2

(1 x2 )n dx

= {x = sin t} = 2n! Za zadnji integral parcijalnom integracijom izlazi


/2

cos2n+1 t dt.
0

cos
0

2n+1

cos2n t sin t t dt = 2n + 1
=0

/2 0

2n + 2n + 1

/2

cos2n1 t dt
0 /2

2n(2n 2) 2 = = (2n + 1)(2n 1) 3 pa je stoga


1

cos t dt,
0

dn 2 2n(2n 2) 2 x (x 1)n dx = 2n! . n dx (2n + 1)(2n 1) 3


n

Pomno zimo li brojnik i nazivnik s 2n(2n 2) 2 = 2n n!, a zatim, zbog denicije Legendreovog polinoma Pn , sve podijelimo s 2n n!, slijedi
1

xn Pn (x) dx =
1

1 2n n! 2n n! 2n+1 (n!)2 2 n ! = . 2n n! (2n + 1)! (2n + 1)!

Lema 11.5.3. Legendreovi polinomi su ortogonalni na intervalu (1, 1) obzirom na skalarni produkt (11.5.6)
1

Pm (x) Pn (x) dx = 0,
1

za

m = n.

Norma Legendreovog polinoma je


1

Pn

:=
1

[Pn (x)]2 dx =

2 . 2n + 1

Dokaz: Prva tvrdnja je direktna posljedica dokazane ortogonalnosti na potencije ni zeg

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 448

stupnja. Druga tvrdnja slijedi iz


1 1

[Pn (x)] dx =
1 n 1

1 2n n!

(2n)! n x + Pn (x) dx. n!

Potencije manje od x ne doprinose integralu, pa druga tvrdnja leme 11.5.2. povla ci


1

[Pn (x)]2 dx =
1

2 (2n)! 2n+1 (n!)2 = . n 2 2 (n!) (2n + 1)! 2n + 1

Lema 11.5.4. Legendreovi polinomi Pn imaju n nulto caka, koje su sve realne i razli cite, i nalaze se u otvorenom intervalu (1, 1). Dokaz: Dokaz ide iz denicije Legendreovih polinoma Pn (x) = 1 dn 2 (x 1)n , 2n n! dxn

induktivnom primjenom Rolleovog teorema. Polinom (x2 1)n je stupnja 2n i ima vi sestruke (n-terostruke) nulto cke u rubovima intervala 1. Prema Rolleovom teoremu, prva derivacija ima jednu nulto cku u intervalu (1, 1). Medutim, prva derivacija je, takoder, nula u 1, pa ukupno mora imati tri nulto cke u zatvorenom intervalu [1, 1]. Druga derivacija stoga ima dvije unutarnje nule po Rolleovom teoremu, i dvije u 1, pa ima ukupno cetiri nule u [1, 1]. I tako redom, vidimo da n 1-a derivacija ima n 1 unutarnju nulto cku i jo s dvije u 1. Na kraju zaklju cimo da n-ta derivacija, koja je do na multiplikativni faktor jednaka Pn , ima n unutarnjih nulto caka. Na taj na cin smo zapravo na sli to cke integracije u GaussLegendreovoj formuli i bez eksplicitnog rje savanja nelinearnog sistema jednad zbi za wi i xi , iz uvjeta egzaktne integracije potencija najve ceg mogu ceg stupnja. Taj rezultat rezimiran je u sljede cem teoremu. Teorem 11.5.1. Cvorovi integracije u GaussLegendreovoj formuli reda n su nulto cke Legendreovog polinoma Pn , za svaki n. Dokaz: Znamo da su to cke integracije xi nulto cke polinoma n po konstrukciji. Zbog uvjeta ortogonalnosti (11.5.3) polinom n , s vode cim koecijentom 1, proporcionalan je Legendreovom polinomu Pn . Vode ci koecijent u Pn lako izra cunamo iz Rodriguesove formule, odakle je 2n (n!)2 n (x) = Pn (x), (2n)!

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 449

pa vidimo da su sve nulto cke polinoma n zapravo nulto cke od Pn (lema 11.5.4.). Primjer 11.5.2. Iz Rodriguesove formule mo zemo izra cunati nekoliko prvih Legendreovih polinoma. P0 (x) = 1, 1 d 2 P1 (x) = (x 1) = x, 2 dx 1 1 d2 2 (x 1)2 = (3x2 1), P2 (x) = 2 8 dx 2 3 1 d 1 P3 (x) = (x2 1)3 = (5x3 3x), 3 48 dx 2 4 1 d 1 (x2 1)4 = (35x4 30x2 + 3), P4 (x) = 4 16 24 dx 8 1 P5 (x) = (63x5 70x3 + 15x), 8 1 (231x6 315x4 + 105x2 5), P6 (x) = 16 1 (429x7 693x5 + 315x3 35x), P7 (x) = 16 1 (6435x8 12012x6 + 6930x4 1260x2 + 35). P8 (x) = 128 Vidimo, na primjer, da su nulto cke od P3 identi cne s to ckama integracije koje smo dobili u primjeru 11.5.1., direktno iz uvjeta ortogonalnosti. Ra cunanje nulto caka Legendreovih polinoma (na ma sinsku to cnost!) nije jednostavan problem, budu ci da egzaktne formule postoje samo za male stupnjeve. Napomenimo za sad samo toliko, da postoje specijalni algoritmi, te da je dovoljno tabelirati te nulto cke jednom, pa brzina algoritma nije va zna, nego samo preciznost. Tabelirane nulto cke (kao i te zine wi ) mogu ce je na ci u gotovo svim standardnim knjigama i tablicama iz podru cja numeri cke analize. Postoji lak si na cin za ra cunanje Pn (x), zasnovan na cinjenici da Legendreovi polinomi zadovoljavaju tro clanu rekurziju, ciji se koecijenti mogu eksplicitno izra cunati. Ova rekurzivna formula igra va znu ulogu i u konstrukciji spomenutog specijalnog algoritma za tra zenje nulto caka. Lema 11.5.5. Legendreovi polinomi zadovoljavaju rekurzivnu formulu (n + 1)Pn+1 (x) = (2n + 1)xPn (x) nPn1 (x), s po cetnim vrijednostima P0 (x) = 1, P1 (x) = x. n 1,

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 450

Dokaz: +1 Kako je xPn (x) polinom stupnja n + 1 i {Pi }n i=0 baza za prostor polinoma stupnja do n + 1, postoje koecijenti ci tako da vrijedi
n+1

xPn (x) =
i=0

ci Pi (x).

Pomno zimo li obje strane s Pk (x) i integriramo od 1 do 1, zbog ortogonalnosti (lema 11.5.3.) slijedi
1 1

xPk (x) Pn (x) dx = ck


1 1

2 Pk (x) dx.

(11.5.7)

Ali za k < n 1 je xPk (x) polinom stupnja manjeg ili jednakog n 1, pa je Pn (x) ortogonalan na njega (lema 11.5.2.). Stoga je ck = 0 za k < n 1, a u sumi za xPn (x) ostaju samo zadnja tri clana xPn (x) = cn+1 Pn+1 (x) + cn Pn (x) + cn1 Pn1 (x). Treba jo s izra cunati koecijente cn+1 , cn i cn1 . Kako je Pn (x) = (2n)! (2n)! n n (x) = n x + ni ze potencije od x, n 2 2 (n!) 2 (n!)2 (11.5.8)

usporedimo li koecijente uz xn+1 u (11.5.8), dobivamo da je (2n)! (2n + 2)! = cn+1 n+1 , n 2 2 (n!) 2 [(n + 1)!]2 n+1 . 2n + 1 Lagano se vidi (iz Rodriguesove formule) da se u Legendreovim polinomima pojavljuju samo alterniraju ce potencije, tj. P2n je linearna kombinacija parnih potencija x2k , k = 0, . . . , n, a P2n+1 je linearna kombinacija neparnih potencija x2k+1 , k = 0, . . . , n. Iz rekurzije (11.5.8) na osnovu toga zaklju cimo da je cn = 0, pa preostaje samo izra cunati cn1 . Za k = n 1, iz (11.5.7) imamo da je cn+1 =
1 1

odakle slijedi da je

xPn1 (x) Pn (x) dx = cn1


1 1

2 Pn 1 (x) dx.

Zbog xPn1 (x) = 2n1 [(n (2(n 1))! xn + ni ze potencije od x 2 1)!]

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 451

i ortogonalnosti Pn na sve ni ze potencije od x, dobivamo (2n 2)! n 2 1 [(n 1)!]2


1 1

x Pn (x) dx = cn1
1 1

2 Pn 1 (x) dx.

Ovi integrali su poznati (lema 11.5.2. i lema 11.5.3.), pa slijedi cn 1 = n . 2n + 1

Tako smo na sli sve nepoznate koecijente u linearnoj kombinaciji (11.5.8), odakle odmah slijedi tro clana rekurzija. Primijetimo da smo usput dokazali i formulu
1

xPn1 (x) Pn (x) dx =


1

n 2 2n = 2 . 2n + 1 2n 1 4n 1

(11.5.9)

Zadatak 11.5.2. Budu ci da Legendreovi polinomi zadovoljavaju tro clanu rekurziju, mogu ce je napisati algoritam za brzu sumaciju parcijalnih suma redova oblika

an Pn (x),
n=0

poznat pod nazivom generalizirana Hornerova shema. Koriste ci rekurziju iz leme 11.5.5., napi site eksplicitno taj algoritam. Razvoji po Legendreovim polinomima pojavljuju se cesto kod rje savanja Laplaceove jednad zbe u sfernim koordinatama. Sljede ce dvije leme korisne su za dobivanje ekplicitnih formula za te zine u GaussLegendreovim formulama. Lema 11.5.6. (ChristoelDarbouxov identitet) Za Legendreove polinome Pn vrijedi
n

(t x)

k =0

(2k + 1)Pk (x)Pk (t) = (n + 1) [Pn+1(t)Pn (x) Pn (t)Pn+1 (x)].

Dokaz: Pomno zimo li rekurziju iz leme 11.5.5. (uz zamjenu n k ) s Pk (t), dobijemo (2k + 1)xPk (x)Pk (t) = (k + 1)Pk+1(x)Pk (t) + kPk1 (x)Pk (t). Zamijenimo li x i t imamo (2k + 1)tPk (t)Pk (x) = (k + 1)Pk+1 (t)Pk (x) + kPk1 (t)Pk (x).

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 452

Odbijanjem prve relacije od druge, slijedi (2k + 1)(t x)Pk (x)Pk (t) = (k + 1) [Pk+1 (t)Pk (x) Pk (t)Pk+1 (x)] k [Pk (t)Pk1 (x) Pk1 (t)Pk (x)]. Sumiramo li po k od 1 do n, sukcesivni clanovi u sumi na desnoj strani se krate, pa ostaju samo prvi i zadnji
n

(t x)

k =1

(2k + 1)Pk (x)Pk (t) = (n + 1) [Pn+1(t)Pn (x) Pn (t)Pn+1 (x)] (t x).

Zadnji clan mo zemo prebaciti na lijevu stranu kao nulti clan u sumi, a to je ba s ChristoelDarbouxov identitet. Lema 11.5.7. Derivacija Legendreovih polinoma mo ze se rekurzivno izraziti pomo cu samih Legendreovih polinoma, formulom
(1 x2 )Pn (x) + nxPn (x) = nPn1 (x),

n 1.

Dokaz: Polinom (1 x2 )Pn + nxPn je o cito stupnja manjeg ili jednakog od n + 1. Napi simo Pn kao linearnu kombinaciju potencija od x (pojavljuje se samo svaka druga potencija) Pn (x) = an xn + an2 xn2 + , pa je
Pn (x) = nan xn1 + (n 2)an2 xn3 + .

No, onda je
(1 x2 )Pn (x) + nxPn (x) = (nan + nan )xn+1 + O (xn1 ), tj. polinom (1 x2 )Pn + nxPn je zapravo stupnja n 1. Kao i u dokazu rekurzivne formule, moraju postojati koecijenti ci takovi da vrijedi n1 2 )P n (x)

(1 x

+ nxPn (x) =
i=0

ci Pi (x).

Pomno zimo ovu relaciju s Pk (x) i integriramo od 1 do 1. Zbog ortogonalnosti, na desnoj strani ostaje samo jedan clan 2 ck = 2k + 1
1 1

(1 x

) Pn (x) Pk (x) dx

+n
1

xPn (x) Pk (x) dx.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 453

Prvi integral integriramo parcijalno, pa kako se faktor (1 x2 ) poni stava na granicama integracije, slijedi 2 ck = 2k + 1
1

d Pn (x) [(1 x2 )Pk (x)] dx + n dx

xPn (x) Pk (x) dx.

Za k < n 1, oba integranda su oblika Pn (x) (polinom stupnja najvi se n 1), pa su svi ovi integrali jednaki nula (lema 11.5.2.), tj. ck = 0 za k < n 1. Za k = n 1 treba izra cunati dva integrala u prethodnoj relaciji. Drugi je jednostavan
1

n
1

xPn (x) Pn1 (x) dx = (11.5.9) =

2n2 . 4n2 1

U prvom integralu
1

Pn (x)

d [(1 x2 )Pn1 (x)] dx, dx

zbog prve tvrdnje u lemi 11.5.2. (ortgonalnost), doprinos daje samo vode ci clan u 2 (1 x )Pn1 (x), pa je taj integral jednak
1

Pn (x)
1

d (2n 2)! x2 n1 xn1 dx, dx 2 [(n 1)!]2

a zbog druge tvrdnje u lemi, integral se svodi na (2n 2)! 2n+1 (n!)2 2n(n + 1) ( n + 1) = . n 1 2 2 [(n 1)!] (2n + 1)! (2n + 1)(2n 1) Na kraju je cn 1 = 2n 1 2n(n + 1) 2n2 + = n, 2 (2n + 1)(2n 1) (2n + 1)(2n 1)

sto smo i htjeli dokazati. Lema 11.5.8. Te zinski faktori u GaussLegendreovim formulama mogu se eksplicitno izra cunati formulama wi = 2(1 x2 i) , 2 n [Pn1 (xi )]2

gdje su xi , i = 0, . . . , n, nulto cke Legendreovog polinoma Pn .

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 454

Dokaz: Neka je xi nulto cka polinoma Pn . Stavimo li t = xi u ChristoelDarbouxov identitet (lema 11.5.6.), dobivamo
n (n + 1)Pn+1 (xi )Pn (x) = (2k + 1)Pk (x)Pk (xi ). x xi k =0

Kad integriramo ovu jednakost od 1 do 1 i uzmemo u obzir da je k -ti Legendreov polinom ortogonalan na konstantu Pk (xi ), na desnoj strani preostane samo clan za k=0 1 2 Pn (x) dx = . (x xi ) (n + 1)Pn+1 (xi )
1

Tro clana rekurzija iz leme 11.5.5. u nulto cki xi Legendreovog polinoma Pn ima oblik (n + 1)Pn+1 (xi ) = nPn1 (xi ), pa je stoga
1

Pn (x) 2 dx = . (x xi ) nPn1 (xi )

Za te zinske koecijente wi vrijede relacije (11.5.5) i (11.5.4)


1 1

wi =
1

i (x) dx =
1

n (x) dx = (x )(x x ) n i i

Pn (x) dx, (x )(x x ) Pn i i (11.5.10)

pa je dakle wi =

2 . (x ) P nPn i n1 (xi )

Primijetimo da je ChristoelDarbouxov identitet potreban jedino zato da se izra cuna neugodan integral 1 Pn (x) dx, (x xi )
1

u kojem podintegralna funkcija ima uklonjivi singularitet. Na kraju, iskoristimo rekurzivnu formulu za derivacije Legendreovog polinoma iz leme 11.5.7. u specijalnom slu caju kada je x = xi . Dobivamo da vrijedi
(1 x2 i )Pn (xi ) = nPn1 (xi ).

Uvrstimo li taj rezultat u (11.5.10), tvrdnja slijedi. U dokazu prethodne leme 11.5.8. pokazali smo (usput) da u nulto cki xi Legendreovog polinoma Pn vrijedi
(1 x2 i )Pn (xi ) = nPn1 (xi ) = (n + 1)Pn+1 (xi ).

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 455

Ovu relaciju mo zemo iskoristiti na razli cite na cine u (11.5.10), sto daje pet raznih formula za te zinske koecijente u GaussLegendreovim formulama wi = 2(1 x2 2(1 x2 i) i) = 2 [nPn1 (xi )] [(n + 1)Pn+1 (xi )]2 2 2 = = nPn (xi ) Pn1 (xi ) (n + 1)Pn (xi ) Pn+1 (xi ) 2 = . 2 (x )]2 (1 xi ) [Pn i

(11.5.11)

Sljede ci teorem rezimira prethodne rezultate, i ujedno daje ocjenu gre ske za GaussLegendreovu integraciju. Teorem 11.5.2. Za funkciju f C 2n [1, 1] GaussLegendreova formula integracije glasi
1 n

f (x) dx =
1 i=1

wi f (xi ) + En (f ),

gdje su xi nulto cke Legendreovog polinoma Pn i koecijenti wi dani u (11.5.11). Za gre sku En (f ) vrijedi En (f ) = 22n+1 (n!)4 f (2n) ( ), (2n + 1) [(2n)!]3 (1, 1).

Dokaz: Treba samo dokazati formulu za ocjenu gre ske. Kako je GaussLegendreova formula zapravo integral Hermiteovog interpolacijskog polinoma, treba integrirati gre sku kod Hermiteove interpolacije, koju smo procijenili u teoremu 10.2.5., i uvrstiti odgovaraju ci n . Integracijom i primjenom teorema srednje vrijednosti za integrale, dobivamo 1 f (2n) ( ) 2 En (f ) = n (x) dx, (2n)!
1

za neki (1, 1). Kako je n (x) = 2n (n!)2 Pn (x), (2n)!

zbog poznatog kvadrata norme Legendreovog polinoma (lema 11.5.3.), imamo En (f ) = f (2n) ( ) 2n (n!)2 (2n)! (2n)!
2

2 22n+1 (n!)4 = f (2n) ( ). 2n + 1 (2n + 1) [(2n)!]3

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 456

Navedeni izraz za gre sku nije lagano primijeniti, budu ci da je potrebno na ci neku ogradu za vrlo visoku derivaciju funkcije f (red derivacije je dva puta ve ci nego kod NewtonC otesovih formula). Clan uz f (2n) ( ) vrlo brzo pada s porastom n. Na primjer, za n = 6, gre ska je oblika 1.6 1012 f (12) ( ). Da ocjena gre ske za Gaussove formule mo ze biti previ se pesimisti cna, pokazuje sljede ci primjer. Primjer 11.5.3. Primijenimo GaussLegendreovu formulu na integral
/2

log(1 + t) dt = 1 +
0

log 1 +

1 + 1. 2

Zamjena varijable t = (x + 1)/4 prebacuje integral na standardnu formu


1

(x + 1) log 1 + dx. 4 4

U ovom slu caju mo zemo lagano izra cunati bilo koju derivaciju podintegralne funkcije, koja raste s faktorijelima. Zapravo, sve ocjene gre ske formula za numeri cku integraciju pokazuju sli cno pona sanje (usporedite, na primjer, trapeznu i Simpsonovu formulu), ali Gaussove formule naro cito, budu ci da uklju cuju visoke derivacije. Tako je, na primjer, osma derivacija, koja je potrebna za Gaussovu formulu s cetiri to cke jednaka 9 7! , 4 (1 + t)8 pa je gre ska 7! puta ve ca nego da smo, recimo, integrirali trigonometrijsku funkciju sin ili cos, koje imaju ograni cene derivacije. Ipak, lagano vidimo da ve c sa sest to caka dobivamo 6 znamenaka to cno, iako ocjena gre ske uklju cuje faktor od 11!. Simpsonovoj formuli treba 64 to cke za istu to cnost. Mo zemo slutiti, da je za analiti cke funkcije mogu ca bolja ocjena gre ske. Korolar 11.5.1. (Uvjeti egzaktnosti) GaussLegendreova formula egzaktno integrira polinome stupnja 2n 1. Dokaz: O cito, budu ci da se gre ska, koja uklju cuje 2n-tu derivaciju, poni stava na takvim polinomima. Svojstvo iz gornjeg korolara mo ze se upotrijebiti za alternativni dokaz teorema 11.5.2., kao sto smo napomenuli na po cetku. Hermiteova interpolacija poslu zila je kao trik, da izbjegnemo rje savanje nelinearnog sistema koji proizilazi iz uvjeta egzaktnosti.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 457

Rekurziju za derivacije Legendreovih polinoma iz leme 11.5.7. mo zemo koristiti i za ra cunanje vrijednosti Pn (x)
(1 x2 )Pn (x) = n(Pn1 (x) xPn (x)),

n 1.

Na zalost, ova formulu ne mo zemo upotrijebiti u rubnim to cakama x = 1, zbog dijeljenja s nulom. Medutim, Legendreovi polinomi zadovoljavaju i mnoge druge rekurzivne relacije. Neke od njih dane su u sljede cem zadatku. Zadatak 11.5.3. Doka zite da za Legendreove polinoma vrijedi Pn (1) = 1, za n 0, sto opravdava izbor normalizacije. Takoder, doka zite da za n 1 vrijede rekurzivne relacije Pn (x) xPn 1 (x) = nPn1 (x), xPn (x) Pn 1 (x) = nPn (x), Pn+1 (x) Pn1 (x) = (2n + 1)Pn (x)
x

Pn (t) dt =
1

1 (Pn+1 (x) Pn1 (x)). 2n + 1

Na kraju, primijetimo da Gaussove formule mo zemo shvatiti i kao rje senje optimizacijskog problema: na ci to cke integracije tako da egzaktno integriramo polinom sto ve ceg stupnja sa sto manje cvorova. Rezultat su formule visoke to cnosti, koje se lagano implementiraju, i imaju vrlo mali broj izvrednjavanja podintegralne funkcije. Cijenu smo platili time sto ocjena gre ske zahtijeva vrlo glatku funkciju, sto upotreba takvih formula na nijoj mre zi zahtijeva ponovno ali takoder i time ra cunanje funkcije u drugim cvorovima, koji s cvorovima formule ni zeg reda nemaju ni sta zajedni cko. Kod pronjavanja mre ze cvorova za formule NewtonC otesovog tipa (na primjer, raspolavljanjem h), naprotiv, jedan dio cvorova ostaje zajedni cki, pa ve c izra cunate funkcijske vrijednosti mo zemo iskoristiti (kao u Rombergovom algoritmu).

11.5.2.

Druge Gaussove integracione formule

U praksi se cesto javljaju specijalni integrali koji uklju cuju te zinske funkcije x x 2 poput e , e i mnoge druge, na specijalnim intervalima, cesto neograni cenim. Jednostavnom linearnom supstitucijom nije mogu ce takve intervale i/ili te zinske funkcije prebaciti na interval (1, 1) i jedini cnu te zinsku funkciju situaciju u kojoj mo zemo primijeniti GaussLegendreove formule. Alternativa je iskoristiti odgovaraju ce Gaussove formule s prirodnom te zinskom funkcijom. Iz prethodnog odjeljka znamo da za cvorove integracije treba uzeti nulto cke funkcije n (x) = (x x1 ) (x xn ), s tim da vrijede relacije ortogonalnosti (11.5.3). Te zine wi onda mo zemo odrediti rje savanjem linearnog sistema, a

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 458

mo zda u specijalnim slu cajevima mo zemo do ci i do eksplicitnih formula, kao sto smo to u cinili u slu caju GaussLegendreovih formula. Postavlja se pitanje da li mo zemo do ci do formula za polinome koji su ortogonalni (obzirom na te zinsku funkciju w ) na polinome ni zeg stupnja, uklju civo i ostale formule na koje smo se oslanjali, poput tro clane rekurzije i sli cno (v. lema 11.5.2.). U mnogim va znim slu cajevima, ali ne i uvijek, mogu ce je analiti cki do ci do formula sli cnim onima u slu caju GaussLegendreove integracije. U drugim slu cajevima, koji nisu pokriveni egzaktnim formulama, u principu je mogu ce generirati ortogo sevljev algoritam) nalne polinome i numeri cki. Poznati postupci (Stieltjesov i Cebi ne pokrivaju, medutim, sve mogu ce situacije, tj. nisu uvijek numeri cki stabilni, sto ostavlja postora za daljnja istra zivanja. Slu cajevi tzv. klasi cnih ortogonalnih polinoma uglavnom se mogu karakterizirati na osnovu sljede ca dva teorema, od kojih je prvi egzistencijalni, i vezan uz teoriju rubnih problema za obi cne diferencijalne jednad zbe. Teorem 11.5.3. (Generalizirana Rodriguesova formula) Na otvorenom intervalu (a, b) postoji, do na multiplikativnu konstantu, jedinstvena funkcija Un (x) koja zadovoljava diferencijalnu jednad zbu D n+1 i rubne uvjete 1 D n Un (x) = 0 w (x)

Un (a) = DUn (a) = = D n1 Un (a) = 0, Un (b) = DUn (b) = = D n1 Un (b) = 0.

Ovdje opet koristimo oznaku D za operator deriviranja funkcije f jedne varijable, kad je iz konteksta o cito po kojoj varijabli se derivira, jer ta oznaka znatno skra cuje zapis nekih dugih formula. Onda n-tu derivaciju funkcije f u to cki x mo zemo pisati u bilo kojem od sljede ca tri oblika D n f (x) = dn f (x) = f (n) (x). dxn

Budu ci da nas interesiraju rje senja koja se mogu eksplicitno konstruirati, ne cemo dokazivati ovaj teorem. U svakom konkretnom slu caju, za zadane a, b i w (x), konstruirat cemo funkciju Un formulom. Napomenimo jo s da teorem 11.5.3. vrijedi i na neograni cenim i poluograni cenim intervalima, tj. u slu cajevima a = i/ili b = . Funkcije Un iz prethodnog teorema generiraju familiju ortogonalnih polinoma na (a, b) s te zinskom funkcijom w .

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 459

Teorem 11.5.4. Uz pretpostavke teorema 11.5.3., funkcije pn (x) = 1 D n Un (x) w (x)

su polinomi stupnja n koji su ortogonalni na sve polinome ni zeg stupnja na intervalu (a, b) obzirom na te zinsku funkciju w (x), tj. vrijedi
b

w (x) pn (x) xk dx = 0,
a

za

k = 0, 1 , . . . , n 1 .

Dokaz: Funkcija pn je o cito polinom stupnja n, jer je D n+1 pn (x) = 0. Da doka zemo ortogonalnost, pretpostavimo da je n 1. Za k = 0 imamo odmah po Newton Lebnitzovoj formuli
b b

w (x) pn (x) dx =
a a

D n Un (x) dx = (n 1) = D n1 Un (x) = 0,
a

zbog rubnih uvjeta D n1Un (a) = D n1 Un (b) = 0. Za 1 k n 1, integriramo parcijalno k puta i iskoristimo opet rubne uvjete koje zadovoljava funkcija Un . Dobivamo redom
b b

w (x)pn (x) x dx =
a a

xk D n Un (x) dx
b b

=x D

n1

Un (x)

xk1 D n1 Un (x) dx
a b b

=0

= k

k 1

n2

Un (x)

(k 1)

xk2 D n2 Un (x) dx
a b b

=0

= = (1)

k 1

k (k 1) 2 x D

nk

Un (x)
b

D nk Un (x) dx
a

=0

= (1)k k (k 1) 2 1 D nk1 Un (x)


=0

= 0,
a

jer je n k 1 0. Primijetimo da smo za dokaz ortogonalnosti iskoristili sve rubne uvjete na funkciju Un . Ovaj teorem u mnogim slu cajevima omogu cava efektivnu konstrukciju ortogonalnih polinoma.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 460

Primjer 11.5.4. Neka je w (x) = 1 na intervalu (1, 1). Nadimo pripadne ortogonalne polinome. Prema teoremu 11.5.3., prvi korak je rje savanje diferencijalne jednad zbe D n+1 (D n Un (x)) = D 2n+1 Un (x) = 0, uz rubne uvjete Un (1) = DUn (1) = = D n1 Un (1) = 0. Polinom 2n-tog stupnja koji se poni stava u krajevima mora, zbog simetrije, biti oblika 2 n Un (x) = Cn (x 1) , gdje je Cn proizvoljna multiplikativna konstanta (razli cita od nule). Tradicionalno, konstanta Cn uzima se u obliku Cn = 1 2n n! .

Pripadni ortogonalni polinomi su tada, prema teoremu 11.5.4., dani formulom Pn (x) = 1 2n n! D n (x2 1)n ,

tj. dobivamo, o cekivano, Legendreove polinome. Zadatak 11.5.4. Poka zite da je multiplikativna konstanta Cn odabrana tako da vrijedi Pn (1) = 1, za svako n. Takoder, poka zite da vrijedi |Pn (x)| 1, za svaki x [1, 1] i svaki n 0. To zna ci da Pn dosti ze ekstreme u rubovima intervala, sto je dodatno opravdanje za izbor normalizacije, jer je Pn = 1 na [1, 1]. Primjer 11.5.5. Neka je w (x) = ex na intervalu (0, ), za neki > 0. Nadimo pripadne ortogonalne polinome. Prema teoremu 11.5.3., trebamo prvo rije siti diferencijalnu jednad zbu D n+1 (ex D n Un (x)) = 0, uz rubne uvjete Un (0) = DUn (0) = = D n1 Un (0) = 0, Un () = DUn () = = D n1 Un () = 0. O cito je rje senje oblika Un (x) = ex (c0 + c1 x + + cn xn ) + d0 + d1 x + + dn1 xn1 . Rubni uvjet u to cki povla ci d0 = = dn1 = 0, a rubni uvjet u to cki 0 povla ci c0 = = cn1 = 0, pa je Un (x) = Cn xn ex . Polinomi za koje je = 1 i Cn = 1 zovu se tradicionalno Laguerreovi polinomi, u oznaci Ln . Njihova Rodriguesova formula je dakle Ln (x) = ex D n (xn ex ).

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 461

U op cem slu caju, za = 1, uz Cn = 1, lagano vidimo da je pn (x) = Ln (x). Tada vrijede relacije ortogonalnosti

ex Lm (x) Ln (x) dx = 0,
0

m = n.

Napomenimo jo s da oznaku Ln koristimo za ortonormirane Laguerreove polinome. Njih dobivamo izborom normalizacione konstante Cn = 1/n!, pa je Ln (x) = n! Ln (x). Primjer 11.5.6. Neka je w (x) = e x na intervalu (, ), za neki = 0. Nadimo pripadne ortogonalne polinome. Prema teoremu 11.5.3., trebamo prvo rije siti diferencijalnu jednad zbu D n+1 (e uz rubne uvjete Un () = DUn () = = D n1 Un () = 0. Lagano pogodimo da je Un (x) = Cn e
2 x2 2 x2 2 2

D n Un (x)) = 0,

Odaberemo li 2 = 1 i multiplikativnu konstantu Cn = (1)n , dolazimo do klasi cnih polinoma, koji nose ime Hermiteovi polinomi, u oznaci Hn , s Rodriguesovom formulom 2 2 Hn (x) = (1)n ex D n (ex ). U op cem slu caju, za 2 = 1, uz Cn = ()n , lagano vidimo da su polinomi koje tra zimo oblika 2 2 2 2 pn (x) = Hn (x) = ()n e x D n (e x ). Pripadne relacije ortogonalnosti su

2 x2

Hm (x) Hn (x) dx = 0,

m = n.

U literaturi se ponekad mo ze na ci jo s jedna denicija za klasi cne Hermiteove poli2 n nome, koja odgovara izboru = 1/2, uz Cn = (1) . Svi ortogonalni polinomi zadovoljavaju tro clane rekuzije (v. izvod Stieltjesovog algoritma uz metodu najmanjih kvadrata). Za Laguerreove i Hermiteove polinome mogu se analiti cki izra cunati koecijenti u rekurziji, postupkom koji je vrlo sli can onom kojeg smo u detalje proveli u slu caju Legendreovih polinoma. Primijetimo, sevljevi polinomi prve vrste zadovoljavaju relacije ortogonalnosti takoder, da i Cebi i tro clanu rekurziju, i da smo taj slu caj do kraja prou cili. Kako su cvorovi Gaussove

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 462

formule integracije reda n nulto cke odgovaraju ceg ortogonalnog polinoma pn , preostaje jo s samo izra cunati te zine wi po formuli (11.5.5). Sasvim op cenito, mo ze se pokazati da vrijedi
b

wi =
a

1 w (x) i (x) dx = pn (xi )

w (x)
a

pn (x) dx, x xi

gdje su i polinomi Lagrangeove baze, i te integrale treba na ci egzaktno. Formule za te zine mogu se dobiti za cijeli niz klasi cnih ortogonalnih polinoma, ali njihovo ra cunanje ovisi o specijalnim svojstvima, posebnim rekurzijama i identitetima oblika ChristoelDarbouxovog. Obzirom na duljinu ovih izvoda, zadovoljimo se s kratkim opisom nekoliko najpoznatijih Gaussovih formula. GaussLaguerreove formule Formule oblika
n

e
0

f (x) dx

wi f (xi )
i=1

zovu se GaussLaguerreove formule. Cvorovi integracije su nulto cke polinoma Ln deniranih Rodriguesovom formulom Ln (x) = ex a te zine u Gaussovoj formuli su wi = [(n 1)!]2 xi (n!)2 xi = [nLn1 (xi )]2 [Ln+1 (xi )]2 [(n 1)!]2 (n!)2 = Ln (xi ) Ln1 (xi ) Ln (xi ) Ln+1 (xi ) d n n x (x e ), dxn

= =

(n!)2 . xi [Ln (xi )]2 (n!)2 (2n) f ( ), (2n)!

Gre ska kod numeri cke integracije dana je formulom En (f ) = GaussHermiteove formule Formule oblika
n

(0, ).

ex f (x) dx

wi f (xi )
i=1

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 463

zovu se GaussHermiteove formule. Cvorovi integracije su nulto cke polinoma Hn deniranih Rodriguesovom formulom Hn (x) = (1)n ex a te zine u Gaussovoj formuli su 2n+1 n! 2n1 (n 1)! wi = = n[Hn1 (xi )]2 [Hn+1 (xi )]2 2n (n 1)! 2n+1 n! = = Hn (xi ) Hn1(xi ) Hn (xi ) Hn+1(xi ) 2n+1 n! . = (x )]2 [Hn i Gre ska kod numeri cke integracije dana je formulom n! (2n) f ( ), (, ). En (f ) = n 2 (2n)! GaussCebi sevljeve formule Formule oblika
1 n
2

d n x 2 (e ), dxn

1 f (x) dx 1 x2

wi f (xi )
i=1

sev zovu se GaussCebi sevljeve formule. Cvorovi integracije su nulto cke Cebi ljevih polinoma Tn (x) = cos(n arccos(x)). Izuzetno, te se nulto cke mogu eksplicitno izra cunati (2i 1) xi = cos . 2n Sve te zine wi su jednake wi = . n Gre ska kod numeri cke integracije dana je formulom En (f ) = 22n1 (2n)! f (2n) ( ), (1, 1).

Zadatak 11.5.5. Neka je te zinska funkcija w (x) = (x a) (b x) na intervalu (a, b), gdje su > 1 i > 1. Nadite funkciju Ur i napi site Rodriguesovu formulu! Pridru zeni ortogonalni polinomi zovu se Jacobijevi polinomi. Legendreovi i Cebi sevljevi polinomi specijalni su slu caj.

11. NUMERICKA INTEGRACIJA

NUMERICKA INTEGRACIJA 464

Pomo cu Gaussovih formula mo zemo jednostavno ra cunati neke odredene integrale analiti cki, kao sto se vidi iz sljede cih primjera. Primjer 11.5.7. Ako GaussLaguerreovom formulom reda n = 1 ra cunamo integral

ex dx,
0

imamo pribli znu formulu

ex f (x) dx f (1),

budu ci da je L1 (x) = 1 x, pa je x1 = 1 i w1 = 1/[L (1)]2 = 1. Kako formula egzaktno integrira konstante, za f (x) = 1 imamo

ex dx = f (1) = 1.
0

Sli cno, za f (x) = ax + b, budu ci da formula egzaktno integrira i linearne funkcije,

ex (ax + b) dx = f (1) = a + b.
0

sevljevom formulom ra Primjer 11.5.8. Ako GaussCebi cunamo


1

x4 dx 1 x2

seva reda 3, koja zahtijeva nulto zgodno je upotrijebiti formulu GaussCebi cke poli 3 noma T3 (x) = 4x 3x, a to su x1 = 0, x2,3 = 3/2. Formula vodi na egzaktan rezultat 1 x4 9 9 3 dx = 0 + + = . 2 3 16 16 8 1 x 1

12. METODE ZA RJESAVANJE OBICNIH DIFERENCIJALNIH JEDNADZBI

ODJ 465

12. Metode za rje savanje obi cnih diferencijalnih jednad zbi


12.1. Uvod

Ideja numeri ckog rje savanja je zamjena neprekidnog rje senja u vremenskom intervalu [x0 , b] pribli znim rje senjima u kona cnom skupu to caka {x0 , x1 , . . . , xN }. Obzirom na to iz koliko prethodnih to caka ra cunamo novu aproksimaciju yi u to cki xi , razlikujemo (a) jednokora cne metode (takve su na primjer RungeKutta metode) aproksimacija u yi ra cuna se samo iz vrijednosti aproksimacije u xi1 ;

Promatrat cemo inicijalni (po cetni ili Cauchyjev) problem za obi cnu diferencijalnu jednad zbu dy = f (y, x), y (x0 ) = y0 , (12.1.1) dx pri cemu pretpostavljamo da je funkcija f (y, x) neprekidna na vremenskom intervalu x0 x b i za < y < .

(b) vi sekora cne metode (takvi su na primjer prediktorkorektor parovi: Adams Bashfort metoda kao prediktor, AdamsMoulton kao korektor) aproksimacija u yi ra cuna se iz vrijednosti u vi se prethodnih to caka xk , xk+1 , . . . , xi1 . Ozna cimo s Y (x) pravo rje senje diferencijalne jednad zbe, a s y (x) aproksimaciju rje senja. Bez smanjenja op cenitosti, za izvod metoda mo zemo koristiti da su to cke xj ekvidistantne, tj. da vrijedi h = xj xj 1 , odnosno xj = x0 + jh, j = 0, 1 , . . . ,

12.2.

RungeKutta metode

Najjednostavnija metoda iz obitelji RungeKutta metoda je RungeKutta metoda prvog reda, poznatija po imenom Eulerova metoda. Izvod Eulerove metode

12. METODE ZA RJESAVANJE OBICNIH DIFERENCIJALNIH JEDNADZBI

ODJ 466

mo ze se napraviti na (barem) dva na cina. Prvi je lako shvatljiv, jer ima geometrijsku pozadinu, a generalizacija drugog na cina dat ce nam ideju za izvod RungeKutta metoda vi sih redova.
y

Y (x1 )

Y (x0 )

x0

x1

Povucimo u to cki x0 tangentu na pravo rje senje Y (x). Koriste ci vrijednost te tangente u x1 dobit cemo zeljenu aproksimaciju u x1 . Imamo Y (x1 ) Y (x0 ) Y = Y (x0 ) = f (x0 , y0), h h ili na drugi na cin zapisano: Y (x1 ) Y (x0 ) hY (x0 ) = hf (x0 , y0 ). Jasno je da ce se na sli can na cin dobivati i aproksimacije za rje senja u to ckama x2 , . . . , xN . Dakle, Eulerova metoda glasi: yn+1 = yn + hf (xn , yn ), n = 0, 1 , . . . ,

cke xj neekvidistantne, u prethodnoj formuli umjesto Takoder je jasno da ako su to h treba pisati hn varijabilna duljina koraka. Eulerova metoda se, kao sto smo ve c rekli mo ze izvesti i na drugi na cin. Funkcija Y razvije se u Taylorov red (do prvog clana) oko to cke xn : Y (x) = Y (xn ) + Y (xn )(x xn ) + Y (n ) (x xn )2 , 2

12. METODE ZA RJESAVANJE OBICNIH DIFERENCIJALNIH JEDNADZBI

ODJ 467

pri cemu to cka n se nalazi izmedu xn i x. Uvr stavanjem to cke xn+1 u prethodnu formulu dobivamo: Y (xn+1 ) = Y (xn ) + hY (xn ) + Y (n ) h2 , 2 xn n xn+1 .

Primijetimo da odavde slijedi da je gre ska aproksimacije u jednom koraku Eulerove 2 metode O(h ). Primijenimo li vi se koraka metode, gre ska se nakupi do O(h) dakle maksimalan red metode je 1 (eksponent od h). Op cenito, RungeKutta metode imaju oblik
p

yn+1 = yn +
i=1

wi ki

(12.2.1)

gdje su wi konstante, a ki je
i1

ki = hn f (xn + i hn , yn +
j =1

ij kj ),

pri cemu je 1 = 0. Ostali wi , i , ij odreduju se tako da formula sto bolje aproksimira rje senje diferencijalne jednad zbe. Razvijemo li lijevu i desnu stranu u (12.2.1) u Taylorov red oko to cke xn i ako izjedna cavamo prvih m koecijenata uz r hn , dobivamo da ne mo zemo izjedna citi vi se od m = p prvih koecijenata. Rezultiraju ca formula zove se RK (RungeKutta) metoda reda m. Uglavnom se promatraju RK metode do reda m = 4 zbog toga sto je broj ra cunanja funkcije maksimalan red metode 1 2 3 4 5 6 7 8 . 1 2 3 4 4 5 6 6

Za ksan m mo ze postojati vi se RK metoda. Tako za m = 2 dobivamo uvjete w 1 + w 2 = 1, 1 2 w2 = , 2 21 = 2 .

1 2 Interesantne RK2 metode imaju 2 = , i 1. Mi cemo koristiti samo onu za 2 3 = 1, koja glasi 1 yn+1 = yn + (k1 + k2 ), 2 gdje je k1 = hn f (xn , yn ) k2 = hn f (xn + hn , yn + k1 ). Pogre ska za jedan korak RK2 metode je O(h3 ), dok je za vi se koraka O(h2 ). n = 0, 1 , 2 , . . . ,

12. METODE ZA RJESAVANJE OBICNIH DIFERENCIJALNIH JEDNADZBI

ODJ 468

Na sli can na cin, mo ze se pokazati da postoji vi se RK metoda cetvrtog reda, od kojih je najpoznatija 1 yn+1 = yn + (k1 + 2k2 + 2k3 + k4 ), 6 gdje je k1 = hn f (xn , yn ) 1 1 k2 = hn f (xn + hn , yn + k1 ) 2 2 1 1 k3 = hn f (xn + hn , yn + k2 ) 2 2 k4 = hn f (xn + hn , yn + k3 ). Pogre ska za jedan korak RK4 metode je O(h5 ), dok je za vi se koraka O(h4 ). n = 0, 1 , 2 , . . . ,

12.2.1.

Varijabilni korak za RungeKutta metode

Sli cno kao kod Rombergovog algoritma, promatra se RK metoda s korakom h i h/2. Nakon toga, napravi se 1 korak RK metode s korakom h i 2 koraka metode s korakom h/2 (da se dode u istu to cku). Ideja je napraviti slijede ce: (a) ako se vrijednosti tako dobivenih aproksimacija dosta razlikuju, onda se korak smanji na h = h/2 i procedura se ponovi za h/2 i h/4 (oprez od neprekidnog smanjivanja koraka!!); (b) ako su vrijednosti tako dobivenih aproksimacije bliske, prihva ca se tako izra cunata vrijednost, a iz ocjene pogre ske predvida se h za slijede ci korak metode. Korist od varijabilnog koraka je da se za neke funkcije s puno manje ra cunanja mo ze dobiti rje senje na zadovoljavaju cu to cnost, nego kod ksnog koraka (koji ne kontrolira to cnost).

12.2.2.

RungeKutta metode za sustave jednad zbi

RungeKutta metode mogu se koristiti za pribli zno rje savanje sistema diferencijalnih jednad zbi i za pribli zno rje savanje diferencijalnih jednad zbi vi sih redova. Treba samo primijetiti da u slu caju sistema diferencijalnih jednad zbi, veli cine yn , ki i f (x, y ) imaju ulogu vektora, a ostale veli cine su skalari. Mo ze se pokazati da se jednostavnim zamjenama varijabli svaka diferencijalna jednad zba vi seg reda mo ze svesti na sistem prvog reda.

12. METODE ZA RJESAVANJE OBICNIH DIFERENCIJALNIH JEDNADZBI

ODJ 469

Primjer 12.2.1. Svedite na sistem diferencijalnih jednad zbi prvog reda i rije site RK2 metodom s korakom h = 0.1 diferencijalnu jednad zbu y + 2y + 3x = 5, u to cki x = 0.1. Ozna cimo s z = y . Deriviranjem i uvr stavanjem u polaznu jednad zbu dobivamo sistem diferencijalnih jednad zbi y = z z = 5 2z 3x uz po cetne uvjete y (0) = 1, z (0) = 2. Rje senje zadatka dobivamo odmah u prvom koraku 1 y1 y k11 k + 21 . = 0 + z1 z0 k k22 2 12 Uo cimo da je y z = z , 5 2z 3x y (0) 1 = . z (0) 2 y (0) = 1, y (0) = 2

Odatle, po formuli za RK2 slijedi k11 k12 Jednako tako, imamo = 0.1

2 0.2 = . 52230 0.1 = 1.2 , 2.1

y0 k + 11 z0 k12 odakle izra cunavamo k2 k21 k22 Sve zajedno daje y1 z1 = 1 1 + 2 2 = 0.1

2.1 0.21 = . 5 2 2.1 3 0.1 0.05 0.2 0.21 + 0.1 0.05 1.205 , 2.075

sto zna ci y (0.1) 1.205 i z (0.1) = y (0.1) 2.075.

12.3.

Vi sekora cne metode

Koriste se jer zahtijevaju manje izvrednjavanja funkcije nego RK metode. Na primjer, jedan prediktorkorektor (PC) par (samo ime mu ka ze i ulogu) reda 4 je:

12. METODE ZA RJESAVANJE OBICNIH DIFERENCIJALNIH JEDNADZBI

ODJ 470

prediktor yn+1 = yn + korektor yn+1 = yn +


(j ) (0)

h (55f (xn , yn ) 59f (xn1 , yn1 ) + 37f (xn2, yn2 ) 9f (xn3 , yn3)) 24

h (j ) (9f (xn+1 , yn+1 ) 19f (xn , yn ) 5f (xn1 , yn1) + f (xn2 , yn2)). 24

Ako se korektor koristi jednom (o cito je mogu ca i vi sestruka upotreba), onda se (j ) za novi korak ra cunaju to cno dvije funkcijske vrijednosti: f (xn , yn ) i f (xn+1 , yn+1 ), a sve ostale su ve c morale biti izra cunane u prethodnim koracima. (Uo cite da odgovaraju ca RK4 ima 4 izvrednjavanja funkcije.) Neugoda kori stenja vi sekora cnih metoda su to cke potrebne za start metode. U na sem slu caju PC para reda 4 za start metode potrebno je znanje funkcijskih vrijednosti u to ckama x0 , x1 , x2 i x3 .

12.4.

Krute (sti ) diferencijalne jednad zbe

Najva znija upotreba vi sekora cnih metoda je rje savanje (sistema) krutih diferencijalnih jednad zbi. Najpoznatija metoda poznata je kao Gearova metoda (po Williamu C. Gear-u) i sastoji se od Adams prediktora i korektora varijabilnog reda i varijabilnog koraka. Za diferencijalnu jednad zbu re ci cemo da je kruta, ako mala perturbacija po cetnih uvjeta dovede do velike perturbacije u rje senju problema. Primjer 12.4.1. Zadana je diferencijalna jednad zba y = 10(y x) 9, Op ce rje senje ove diferencijalne jednad zbe je y (x) = ce10x + x + 1. Partikularno rje senje za ovaj po cetni uvjet je y = x + 1. Ako malo perturbiramo po cetni uvjet na y (0) = 1 + , onda je partikularno rje senje te jednad zbe y = e10x + x + 1. Primijetite da je prvi faktor s desne strane dominiraju ci za malo ve ce x. Sto ce se u ra cunalu dogoditi s tom jednad zbom? Gre ske zaokru zivanja i pogre ske u svakom koraku metode djelovat ce kao perturbacija po cetnih uvjeta, pa ce se RK i sli cne metode raspasti rezultati ne ce imati nikakve veze s pravim rje senjem. y (0) = 1.

13. RUBNI PROBLEM ZA OBICNE DIFERENCIJALNE JEDNADZBE

RUBNI PROBLEM 471

13. Rubni problem za obi cne diferencijalne jednad zbe


Iz tradicionalnih ralzoga, kod rubnih problema za diferencijalne jednad zbe varijable se ozna cavaju s x (prostorna) i t (vremenska dimenzija). Pretpostavimo da je zadana diferencijalna jednad zba drugog reda x p(t)x r (t)x = q (t) uz rubne uvjete x(a) = xa x(b) = xb . (13.0.1)

13.1.

Egizstencija i jedinstvenost rje senja

Za rubni problem nije osigurana niti egzistencija niti jedinstvenost rje senja. Poka zimo to na jednostavnom primjeru koji znamo egzaktno rije siti. Primjer 13.1.1. Zadana je diferencijalna jednad zba x +x=0 uz rubne uvjete x(0) = 1 x( ) = 0. Op ce rje senje zadane ODJ je x(t) = a cos t + b sin t. Uvr stavanjem rubnih uvjeta dobivamo kontradikciju, x(0) = 1 = a x( ) = 0 = a,

13. RUBNI PROBLEM ZA OBICNE DIFERENCIJALNE JEDNADZBE

RUBNI PROBLEM 472

pa o cito ovaj problem nema rje senja. Ako rubne uvjete promijenimo u x(0) = 0 x( ) = 0 uo cimo da su rje senja ovog rubnog problema oblika x(t) = b sin t, b R.

13.2.

Metoda gadanja za linearne diferencijalne jednad zbe 2. reda

Svaku diferencijalnu jednad zbu drugog reda mo zemo zapisati kao sistem jednad zbi prvog reda, tako da se uvede x = y . Tada jednad zba (13.0.1) glasi x =y y = p(t)y + r (t)x + q (t) a odgovaraju ci rubni uvjeti su x(a) = xa y (a) = x (a) = ???. O cito je da taj rubni uvjet treba izvu ci iz informacije x(b) = xb . Pretpostavimo da prvi puta za x (a) stavimo x (a) = s1 , s1 R proizvoljan

i da uz tu pretpostavku rije simo inicijalni problem i njegovo rje senje ozna cimo s v (t). Drugi puta za x (a) stavimo x (a) = s2 , s2 R proizvoljan

i da uz tu pretpostavku rije simo inicijalni problem i njegovo rje senje ozna cimo s w (t). Zbog linearnosti jednad zbe, linearna kombinacija rje senja v i w je opet rje senje, pa odaberimo takvu kombinaciju da vrijedi x(b) = xb . Uo cimo da oba rje senja po stuju da je x(a) = xa , pa linearnu kombinaciju rje senja mo zemo pisati u obliku x(t) = v (t) + (1 )w (t) Ako uvrstimo dobivamo xb = x(b) = v (b) + (1 )w (b) =

xb w (b) v (b) w (b) i time je zadovoljen rubni uvjet x(b) = xb .

13. RUBNI PROBLEM ZA OBICNE DIFERENCIJALNE JEDNADZBE

RUBNI PROBLEM 473

13.3.

Nelinearna metoda gadanja


t x (1 )xx =t 2

Ako imamo nelinearnu jednad zbu 2. reda, na pr.: (13.3.1)

uz rubne uvjete x(1) = 2 x(3) = 1

zapi simo je, takoder u obliku sistema ODJ. Ponovno, kao i kod linearne metode gadanja, pretpostavimo da je x (1) = s1 x (1) = s2 rje senje v (t) rje senje w (t).

Zbog nelinearnosti vi se ne vrijedi argument linearne kombinacije rje senja, pa se do pravog rje senja mo ze sti ci iterativno. U to cki 3 rje senja su za (s1 , v (3)) i (s2 , w (3)), a mi zelimo da bude (st , 1). Nakon toga, ako v (3) ili w (3) nije 1, napravi se linearna interpolacija kroz to cke (s1 , v (3)) i (s2 , w (3)) w (3) v (3) y v (3) = (s s 1 ). s2 s1 Zelimo da bude y = 1, pa odatle izra cunamo s, sto je nova aproksimacija za st , tj. uzme se x (1) = s. Ovaj proces, ako se ponovi, mo ze, ali i ne mora konvergirati.

13.4.

Metoda kona cnih razlika

Pretpostavimo da je ponovno zadana ODJ (13.0.1) uz rubne uvjete x(a) = xa = oznaka = x0 x(b) = xb = oznaka = xn . Izaberimo mre zu ekvidistantnih to caka t0 = a, t1 , . . . , tn = b u kojima zelimo aproksimirati rje senje rubnog problema. Ozna cimo te aproksimacije s x0 , x1 , . . . , xn . Prva derivacija aproksimira se simetri cnom (centralnom) razlikom x = gdje je h = (b a)/n. dx dt =
t=ti

xi+1 xi1 2h

13. RUBNI PROBLEM ZA OBICNE DIFERENCIJALNE JEDNADZBE

RUBNI PROBLEM 474

Objasnimo za sto je simetri cna razlika bolja nego obi cna podijeljena razlika. Ako su to cke ti ekvidistantne, onda Taylorov razvoj u okolini ti glasi (t ti )3 (t ti )2 (3) x(t) = x(ti ) + x (ti )(t ti ) + x (ti ) + x ( ) , 2! 3! (13.4.1)

gdje je neka to cka izmedu t i ti . Uvr stavanjem u taj razvoj redom t = ti+1 = ti + h, a zatim t = ti1 = ti h dobivamo h3 h2 + x(3) ( ) 2! 3! 3 h2 h x(ti1 ) = x(ti ) x (ti )h + x (ti ) x(3) ( ) , 2! 3! x(ti+1 ) = x(ti ) + x (ti )h + x (ti ) pa oduzimanjem i dijeljenjem s 2h dobivamo x(ti+1 ) x(ti1 ) =x (ti ) + O(h2 ). 2h Da smo u istu formulu (13.4.1) uvrstili samo ti i ti+1 , dobili bismo x(ti+1 ) x(ti ) =x (ti ) + O(h), h sto je za red veli cine lo sije! Drugu derivaciju aproksimiramo drugom podijeljenom razlikom (podijeljena razlika dvije susjedne prve podijeljene razlike). dx dt dx dt Tada je x = d2 x dt2 =
t=ti

xi+1 xi h xi xi1 . h

=
t=ti1

=
t=ti

x (t = ti ) x (t = ti1 ) xi+1 2xi + xi1 = . h h2

Odavde se, uvr stavanjem u diferencijalnu jednad zbu i sredivanjem po xi1 , xi i xi+1 dobije trodijagonalni linearni sistem za to cke ti , i = 1, . . . , n 1 xi+1 2xi + xi1 xi+1 xi1 p(ti ) r (ti )xi = q (ti ). 2 h 2h Gre ska metode je c h2 , c R, dok gre ska metode kod metode gadanja ovisi o izabranoj RK metodi (RK4 gre ska c h4 ).

14. RJESAVANJE PARCIJALNIH DIFERENCIJALNIH JEDNADZBI

PDJ 475

14. Rje savanje parcijalnih diferencijalnih jednad zbi


14.1. Paraboli cke PDJ Provodenje topline
c u 2u = 2 x k t uz rubne uvjete u(0, t) = c1 (t) u(L, t) = c2 (t) i po cetni uvjet u(x, 0) = f (x) ili u (x, 0) = g (x). x

Paraboli cka diferencijalna jednad zba ima oblik (14.1.1)

14.1.1.

Eksplicitna metoda

Kao i kod rubnog problema za ODJ, aproksimirajmo derivacije na slijede ci na cin: j j 2u uj i+1 2ui + ui1 = x2 x=xi,t=tj (x)2 u t Uvr stavanjem dobivamo
+1 uj = i

=
x=xi ,t=tj

+1 uj uj i i . t

k t 2k t j (u j uj i+1 + ui1 ) + 1 i. 2 2 c(x) c(x)

Rje senje u j + 1om trenutku ra cuna se eksplicitno iz onog u j tom. Ozna cimo s r= k t . c(x)2

14. RJESAVANJE PARCIJALNIH DIFERENCIJALNIH JEDNADZBI

PDJ 476

Zbog stabilnosti rje senja dif. jednad zbe nu zno je uzeti r 1/2. Ovime se odreduje omjer vremenskih i prostornih koraka. Ako je po cetni uvjet glatka funkcija, mo ze se pokazati da je pogre ska najmanja ako se uzma r = 1/6. Primjer 14.1.1. Pretpostavimo da dvije velike zeljezne plo ce debele 1 cm s linearno rasprostranjenom temperaturom od 0 100 naglo spojimo toplijim krajevima, a ru bove tih plo ca dr zimo na 0 . Sto ce se s plo com dogadati tokom vremena? U po cetnom trenutku plo ce su zagrijane tako da je raspodjela temperature (po debljini) 100x za 0 x 1, f (x, 0) = 100(2 x) za 1 x 2. Na krajevima plo ca vrijede rubni uvjeti u(0, t) = 0 i u(2, t) = 0. Fizikalno je jasno da ce se na krajevima toplina gubiti, a temperatura polako ravnomjerno rasporedivati sirom plo ce. Ovakvo stanje plo ce opisivat ce jednad zba provodenja (14.1.1). Veli cine c, i k su konstante zeljeza: k vodljivost, c toplinski kapacitet i gusto ca materijala. Jednad zbu cemo rije siti eksplicitnom metodom. Budu ci da po cetni uvjet nije glatka funkcija (ima lom derivacije u 1), mo ze se pokazati da je na pr. r = 0.4 to cnije rje senje nego za r = 1/6. Primjer 14.1.2. Pretpostavimo da je k = c = = 1 u (14.1.1), tj. da rje savamo paraboli cku jednad zbu (14.1.1) uz uvjete uz rubne uvjete u(0, t) = 0 u(, t) = 0 i po cetni uvjet u(x, 0) = sin x, sto je glatka funkcija. Tada ce najbolji r biti r = 1/6. Osim toga, za ovu jednad zbu poznato je i pravo rje senje u(x, t) = et sin x ske. pa se mogu usporedivati gre

14.1.2.

CrankNicolsonova metoda

Razmatra se jednad zba provodenja uz iste rubne i po cetne uvjete kao i prije. Ako derivacije u (14.1.1) zamijenimo na slijede ci na cin
j j +1 j +1 +1 1 uj uj + uj i+1 2ui + ui1 i+1 2ui i1 + 2 (x)2 (x)2

+1 c uj uj i i k t

14. RJESAVANJE PARCIJALNIH DIFERENCIJALNIH JEDNADZBI

PDJ 477

dobili smo CrankNicolsonovu metodu. Ako r ozna cimo istu konstantu kao i prije, mo ze se pokazati da je ova metoda stabilna za razne r , pa se mo ze uzeti r = 1. Tada se metoda pojednostavljuje na
+1 j +1 +1 j j uj uj i1 + 4ui i+1 = ui1 + ui+1

sto daje trodijagonalni sistem (za vremenski korak). Rje senja ovom metodom ne sto lo sija po to cnosti od najbolje eksplicitne, ali se metoda jednostavno mo ze pobolj sati (Douglasova shema).

14.2.

Hiperboli cke PDJ Valna jednad zba


2u T g 2u = t2 w x2

Hiperboli cka diferencijalna jednad zba ima oblik (14.2.1)

uz rubne uvjete u(0, t) = c1 (t) u(L, t) = c2 (t) i po cetni polo zaj i po cetnu brzinu u(x, 0) = f (x) u(x, 0) = g (x) t gdje je g te zina zice, T napetost i w linearna gusto ca. Katkada se konstanta T g/w 2 ozna cava s c .

14.2.1.

Eksplicitna metoda

Derivacije se aproksimiraju na isti na cin kao i kod paraboli cke PDJ. Uvr stavanjem u jednad zbu dobivamo:
j j j +1 j 1 uj 2u j i i + ui 2 ui+1 2ui + ui1 = c . (t)2 (x)2

Ozna cimo s r=

c2 (t)2 . (x)2

Mo ze se pokazati da je ova shema stabilna, pa se mo ze uzeti r = 1 (tada je x = ct). U tom slu caju prethodno eksplicitno rje senje se pojednostavi na
+1 j j 1 uj = uj i i+1 + ui1 ui

(14.2.2)

14. RJESAVANJE PARCIJALNIH DIFERENCIJALNIH JEDNADZBI

PDJ 478

uz po cetne uvjete u0 i = f (xi ), i = 0, . . . , n.


1 Uo cite da nam je za start sistema potrebno i u ze na ci na jedan od i . To se mo slijede cih na cina:

(a) brzina se aproksimira prvom centralnom razlikom, pa je


1 1 u i = ui 2g (xi )t

(b) zna se egzaktno rje senje jednad zbe iz po cetnih uvjeta (DAlembertova formula) 1 1 u(x, t) = [f (x ct) + f (x + ct)] + 2 2c
x+ct

g ( ) d.
xct

Ako se uva zi da je x = ct i da je u prvom trenutku t jednak t = t, mo ze 1 se izra cunati ui . Uvr stavanjem u prethodnu formulu dobiva se u1 i 1 1 0 = u(xi , t) = [u0 i1 + ui+1 ] + 2 2c 1 1 0 = [u0 i1 + ui+1 ] + 2 2c x
xi+1 xi +x

g ( ) d
x i x

g ( ) d.
i1

Posljednji integral mo ze se aproksimirati Simpsonovom formulom. Primijetite 0 1 da sada mo zemo startati ra cunanje u2 cima, i , jer imamo ui i ui . Drugim rije 1 ovdje nam ui uop ce nije potreban. bend Primjer 14.2.1. Zica za duga cka je 80 cm, te ska 1 g. Napeta je silom jednakom te zini mase od 40 kg. Cijelo vrijeme je u cvr s cena na oba kraja. U to cki udaljenoj 20 cm od lijevog kraja iz ravnote znog polo zaja povu cemo zicu 0.6 cm prema gore. zice u svakom trenutku t, nadite koliko joj je vremena potrebno za Nadite otklon jedan kompletan period. Nadite frekvenciju titranja! Zica o cito zadovoljava jednad zbu (14.2.1) uz uz rubne uvjete u(0, t) = 0 u(80, t) = 0 i po cetni polo zaj i po cetnu brzinu u(x, 0) = u(x, 0) = 0. t 0.03x za 0 x 20 0.01x + 0.8 za 20 x 80,

14. RJESAVANJE PARCIJALNIH DIFERENCIJALNIH JEDNADZBI

PDJ 479

Primjer 14.2.2. Neka je c = 2 u jednad zbi (14.2.1). Ako zicu dugu 9 jedinica udarimo u ravnote znom polo zaju brzinom (vidi dolje), dobivamo uvjete u(0, t) = 0 u(9, t) = 0 i u(x, 0) = 0 u(x, 0) x = 3 sin . t 9 Ponovno, zgodno je promatrati gre ske u rje senju, jer se zna da je pravo rje senje jednako 27 x 4t x 4t u(x, t) = cos cos + . 8 9 9 9 9

Você também pode gostar