Moderné vzdelávanie pre vedomostnú spoločnosť Projekt je spolufinancovaný zo zdrojov EÚ NUMERICKÁ MATEMATIKA A MATEMATICKÁ ŠTATISTIKA Stavebná fakulta Doc.Ing. Roman Vodička, PhD. RNDr. PavolPurcz, PhD.
Táto publikácia vznikla za finančnej podpory z Európskeho sociálneho fondu v rámci Operačného programu VZDELÁVANIE. Prioritná os 1 Reforma vzdelávania a odbornej prípravy. Opatrenie 1. Vysoké školy a výskum a vývoj ako motory rozvoja vedomostnej spoločnosti. Názov projektu: Balík doplnkov pre ďalšiu reformu vzdelávania na TUKE ITMS 611393 NÁZOV: Numerická matematika a matematická štatistika AUTORI: Vodička Roman, Purcz Pavol VYDAVATEĽ: Technická univerzita v Košiciach ROK: 15 VYDANIE: prvé NÁKLAD: 5 ks ROZSAH: 17 strán ISBN: 978-8-553-4-3 Rukopis neprešiel jazykovou úpravou. Za odbornú a obsahovú stránku zodpovedajú autori.
Moderné vzdelávanie pre vedomostnú spoločnosť Projekt je spolufinancovaný zo zdrojov EÚ NUMERICKÁ MATEMATIKA A MATEMATICKÁ ŠTATISTIKA Stavebná fakulta Doc.Ing. Roman Vodička, PhD. RNDr. PavolPurcz, PhD.
Úvod Poslanie Poskytnúť teoretické poznatky potrebné v štúdiu odborných predmetov a aplikovať získané vedomosti na riešenie technicky orientovaných úloh s p metód numerickej matematiky a matematickej štatistiky. Obsah a ciele Cieľom publikácie je oboznámiť študentov s potrebným matematickým aparátom využívaným v numerickej matematike (NM) a v matematickej štat (MŠ). V každej kapitole sú uvedené definície pojmov a ich vlastnosti, potrebné na riešenie úloh. Publikácia obsahuje definície všetkých potrebných a potrebné matematické vety a tvrdenia, z ktorých niektoré sú ajdokázané v rámciriešených príkladov.publikácia ďalejobsahuje riešené príklady aj úlohy na samostatné riešenie s výsledkami podľa nasledujúceho obsahu. 1. NM Lineárne a nelineárne rovnice. NM Interpolácia a aproximácia 3. NM Diferenciálne rovnice 4. MŠ Teória pravdepodobnosti 5. MŠ Popisná štatistika 6. MŠ Odhady a hypotézy 7. MŠ Korelácia a regresia Prerekvizičné znalosti Matematika I. (P. Purcz, R. Vodička, TU Košice, 1, ISBN 978-8-553-179-4) Matematika II. (P. Purcz, R. Vodička, TU Košice, 1, ISBN 978-8-553-181-7) Úvod
Moderné vzdelávanie pre vedomostnú spoločnosť Projekt je spolufinancovaný zo zdrojov EÚ NUMERICKÁ MATEMATIKA A MATEMATICKÁ ŠTATISTIKA Stavebná fakulta Doc.Ing. Roman Vodička, PhD. RNDr. Pavol Purcz, PhD.
Táto publikácia vznikla za finančnej podpory z Európskeho sociálneho fondu v rámci Operačného programu VZDELÁVANIE. Prioritná os 1 Reforma vzdelávania a odbornej prípravy. Opatrenie 1. Vysoké školy a výskum a vývoj ako motory rozvoja vedomostnej spoločnosti. Názov projektu: Balík doplnkov pre ďalšiu reformu vzdelávania na TUKE ITMS 611393 NÁZOV: Numerická matematika a matematická štatistika AUTORI: Vodička Roman, Purcz Pavol VYDAVATEĽ: Technická univerzita v Košiciach ROK: 15 VYDANIE: prvé NÁKLAD: 5 ks ROZSAH: 17 strán ISBN: 978-8-553-4-3 Rukopis neprešiel jazykovou úpravou. Za odbornú a obsahovú stránku zodpovedajú autori.
Moderné vzdelávanie pre vedomostnú spoločnosť Projekt je spolufinancovaný zo zdrojov EÚ NUMERICKÁ MATEMATIKA A MATEMATICKÁ ŠTATISTIKA Stavebná fakulta Doc.Ing. Roman Vodička, PhD. RNDr. Pavol Purcz, PhD.
Úvod Poslanie Poskytnúť teoretické poznatky potrebné v štúdiu odborných predmetov a aplikovať získané vedomosti na riešenie technicky orientovaných úloh s použitím metód numerickej matematiky a matematickej štatistiky. Obsah a ciele Cieľom publikácie je oboznámiť študentov s potrebným matematickým aparátom využívaným v numerickej matematike (NM) a v matematickej štatistike (MŠ). V každej kapitole sú uvedené definície pojmov a ich vlastnosti, potrebné na riešenie úloh. Publikácia obsahuje definície všetkých potrebných pojmov a potrebné matematické vety a tvrdenia, z ktorých niektoré sú aj dokázané v rámci riešených príkladov. Publikácia ďalej obsahuje riešené príklady aj úlohy na samostatné riešenie s výsledkami podľa nasledujúceho obsahu. 1. NM Lineárne a nelineárne rovnice. NM Interpolácia a aproximácia 3. NM Diferenciálne rovnice 4. MŠ Teória pravdepodobnosti 5. MŠ Popisná štatistika 6. MŠ Odhady a hypotézy 7. MŠ Korelácia a regresia Prerekvizičné znalosti Matematika I. (P. Purcz, R. Vodička, TU Košice, 1, ISBN 978-8-553-179-4) Matematika II. (P. Purcz, R. Vodička, TU Košice, 1, ISBN 978-8-553-181-7) Úvod
Kapitola 1. (Lineárne a nelineárne rovnice) Poslanie Nájsť približné riešenie rôznych typov rovníc a ich sústav Ciele 1. Oboznámiť študentov s niektorými numerickými metódami riešenia rovnice f(x) =.. Naučiť študentov približne riešiť sústavy lineárnych rovníc pomocou matíc a jednoduchých iteračných metód. 3. Využiť minimalizáciu kvadratických funkcionálov na riešenie sústav lineárnych rovníc. 4. Naučiť študentov metódy na približné riešenie sústav nelineárnych rovníc. Prerekvizičné znalosti matice; sústavy lineárnych rovníc; funkcie; derivácia a jej vlastnosti; minimum funkcie Úvod Cieľom tejto kapitoly je formulovať a ukázať metodiku niektorých základných úloh numerickej matematiky pri riešení rôznych typov algebraických rovníc. Začneme s nelineárnymi rovnicami typu f(x) =, pre ktoré ukážeme dve základné metódy. Pravda existujú aj iné, ktoré sa dajú nájsť v literatúre. V ďalšej časti sa budeme venovať sústavám rovníc. Najprv si ukážeme metódy na riešenie sústav lineárnych rovníc. Pre ne spomenieme dve skupiny metód. Jedna skupina je založená na úprave sústavy na jednoduchý iteračný vzorec, druhá zasa na tom, že riešenie istého typu sústav lineárnych rovníc je určené minimom vhodného kvadratického funkcionálu. Metódy tohto typu sú v súčasnosti veľmi využívané v rôznych komerčných softvéroch, ktoré využívajú aj stavební inžinieri. Na záver kapitoly si predvedieme aj metódy na riešenie sústav nelineárnych rovníc. Kapitola 1. (Lineárne a nelineárne rovnice) 1
Lineárne a nelineárne rovnice Numerické metódy riešenia rovnice f(x)= Mnohé nelineárne rovnice sa nedajú riešiť presne, preto potrebujeme metódy, ktoré umožnia nájsť približné riešenie s ľubovoľnou presnosťou V prvej časti sa teda zoznámime s s niektorými numerickými metódami riešenia rovnice f(x) =. Najprv ukážeme najprv ako sa robí tzv. separácia koreňov a potom neskôr sa zoznámime s niektorými konkrétnymi postupmi na výpočet koreňa rovnice s jednou neznámou. Koreňom rovnice f(x) = v obore reálnych čísel rozumieme také reálne číslo ˆx, pre ktoré je f(ˆx) =. Predpokladáme, že f je spojitá funkcia. Pre niektoré konkrétne typy rovníc sú známe matematické vzorce a postupy, ktoré umožňujú nájsť presne jeden alebo aj všetky ich korene. Vo všeobecnosti to však neplatí a tak pre väčšinu úloh dokážeme nájsť riešenie len približne, t.j. nájsť približnú hodnotu koreňa ˆx. Takúto hodnotu nazývame inak aj aproximáciou daného koreňa. Pri výpočte koreňov rovnice f(x) = postupujeme takto: metódami separácie určíme interval, v ktorom leží práve jeden reálny koreň, vhodnou numerickou metódou vypočítame z tohto intervalu približnú hodnotu tohto koreňa s požadovanou presnosťou. Separáciu koreňa môžeme robiť dvojako. Prvý spôsob je grafická metóda. Rovnicu f(x) = upravíme na tvar g(x) = h(x) tak, že ľahko dokážeme načrtnúť grafy oboch funkcií, g(x) aj h(x). X-ové súradnice vzniknutých priesečníkov predstavujú hľadané riešenia. Na základe uvedenej skutočnosti vieme potom určiť jednotlivé intervaly, v ktorých leží už len jediný koreň. Príklad 1.1 Separujme korene rovnice x sin x π 4. Riešenie. Danú rovnicu upravíme na tvar x = sin x + π a zostrojíme grafy oboch funkcií (pozri Obr.1.1). Zároveň z tohto obrázka ľahko vyčítame, že 4 daná rovnica má práve jeden reálny koreň, ktorý leží niekde v intervale < ; π >. Príklad 1. Separujme korene rovnice e x x =. Riešenie. Rovnicu upravíme na tvar exp x = x + a znovu zostrojíme grafy oboch funkcií (pozri Obr.1.). Podobne, ako v predchádzajúcom príklade aj teraz ľahko vidíme, že daná rovnica má tiež len jeden reálny koreň, ktorý leží niekde v intervale < 1; >. Okrem toho môžeme koreň separovať vyšetrením časti priebehu funkcie. Najprv pomocou tabuľky hodnôt funkcie f(x) nájdeme také hodnoty a a b tak, že f(a).f(b) <. Ak v < a; b > naviac f (x) nemení znamienko, tak, že môžeme povedať, že v < a; b > leží jediný reálny koreň danej rovnice, lebo Kapitola 1. (Lineárne a nelineárne rovnice)
Obr. 1.1: Grafy funkcií y = x a y = sin x + π 4. Obr. 1.: Grafy funkcií y = x + a y = e x. funkcia je monotónna. Ak tomu tak nie je, potom pomocou tabuľky tento interval zužujeme, až kým podmienka o nemennosti znamienka f (x) nebude platiť, t.j. nájdeme nové hodnoty c a d tak, že < c; d > < a, b > a f(c).f(d) < a f (x) už nemení znamienko na < c; d >. Podobnú vlastnosť pre separáciu koreňa môžeme formulovať aj vo vzťahu o krivosti (t.j. konvexnosti a konkávnosti) a druhej derivácie funkcie f. Kapitola 1. (Lineárne a nelineárne rovnice) 3
Príklad 1.3 Separujme korene rovnice x 3 + x 1 =. Riešenie. Zostrojíme Tabuľku 1.1 pre niekoľko funkčných hodnôt a porovnáme ich znamienka. Vidíme, že v intervale < ; 1 > leží určite aspoň jeden Tabuľka 1.1: x -1 1 f(x) -3-1 1 reálny koreň. Ďalej, f (x) = 3x + 1, z čoho jasne vyplýva, že f (x) už nemení znamienko na < ; 1 > a tak v tomto intervale sa nachádza len jediný koreň. Príklad 1.4 Separujme kladný koreň rovnice x 4 + x + 1 =. Riešenie. Tabuľka 1.: x 1 f(x) 1-1 Zostrojíme Tabuľku 1. pre niekoľko funkčných hodnôt a porovnáme ich znamienka. Vidíme, že v intervale < ; 1 > leží určite aspoň jeden reálny koreň. Tabuľka 1.3: x,5 1 f(x) 1 1,5-1 Ďalej, f (x) = 16x 3 + 4x = 4x(1 4x ). Nakoľko je jasné, že f (, 5) = a tak f (x) mení znamienko na < ; 1 >, zostrojíme ďalšiu Tabuľku 1.3, ktorá poukazuje na fakt, že aj v zúženom intervale < 1 ; 1 > leží ten istý koreň danej rovnice a na tomto intervale už f (x) nemení znamienko. Poznamenajme, že existuje aj viacero ďalších metód zaoberajúcich sa problémom separácie koreňov, o ktorých sa čitateľ môže viac dozvedieť z priloženého zoznamu literatúry. Ak už poznáme interval, kde koreň leží, môžeme ho nájsť so zvolenou presnosťou. Ukážeme si dve numerické metódy na riešenie rovnice f(x) =. Kapitola 1. (Lineárne a nelineárne rovnice) 4
V numerickej matematike nepočítame koreň úplne presne, ale s určitou vopred požadovanou presnosťou. Nech x k+1 a x k sú dve za sebou vypočítané priblíženia koreňa x. Potom x k+1 nazývame približným riešením rovnice f(x) = s presnosťou ε ak platí: x k+1 x k < ε. Existuje viacero iteračných metód, ktoré vyžadujú splnenie rôznych vstupných predpokladov a v závislosti od charakteru zadanej úlohy majú aj odlišnú rýchlosť konvergencie, t.j. potrebné množstvo iteračných krokov na dosiahnutie konečného riešenia spĺňajúceho danú presnosť. Prvou a veľmi jednoduchou metódou je metóda polovičného delenia intervalu. Jednoduchosť metódy spočíva v tom, že na vstupe nevyžaduje žiadne dodatočné podmienky okrem základnej, t.j. aby sme mali k dispozícii také hodnoty a a b tak, že f(a).f(b) < a vedeli zaručiť, že v intervale < a; b > leží jediný reálny koreň danej úlohy typu f(x) =. Postup riešenia je potom nasledovný: A1. vypočítame hodnotu f(x)v polovici intervalu< a; b >, t.j. f(c), kde c = a+b B1. ak f(c) =, potom číslo c je presným riešením rovnice f(x) =. V opačnom prípade interval < a; b > nahradíme jeho pravou alebo ľavou polovicou, v závislosti od toho, v ktorej polovici leží hľadané riešenie. Ak f(a).f(c) < [f(a).f(c) > ], koreň rovnice leží v ľavej [pravej] polovici intervalu < a; b >. Prepísaním pravej [ľavej] hranice intervalu, t.j. položením b = c [a = c] dostaneme nový interval < a; b > polovičnej dĺžky C1. ak b a < ε, za riešenie môžme považovať napr. posledne vypočítanú hodnotu c, v opačnom prípade sa vrátime na bod A1 a celý postup opakujeme znovu. Príklad 1.5 Metódou polovičného delenia s presnosťou ε =, 1 určte záporný koreň rovnice x 4 + x 5 =. Riešenie. Tabuľka 1.4: x -1 - -3 f(x) -5-6 -13-5 Postupným vypočítaním viacerých funkčných hodnôt (Tabuľka 1.4) vidíme, že hľadané riešenie sa nachádza v intervale < 3; >. Stredom tohto intervalu je číslo, 5 a pretože f( 3).f(, 5) >, hľadané riešenie sa nachádza v novom intervale <, 5; >. Stredom tohto nového intervalu je číslo, 5. Nakoľko f(, 5).f(, 5) <, koreň rovnice treba hľadať v ďalšom intervale <, 5;, 5 >, atď. Takto pokračujeme ďalej, až v štrnástom kroku (Tabuľka 1.5) dostaneme interval <, 33386;, 3338 >. Pretože dĺžka tohto intervalu je rovná číslu, 6 môžme hodnotu, 3338 považovať za hľadané riešenie. Kapitola 1. (Lineárne a nelineárne rovnice) 5
Tabuľka 1.5: i a b -3-1 -,5 - -,5 -,5 3 -,375 -,5 4 -,375 -,315 5 -,34375 -,315 6 -,34375 -,3813 7 -,33594 -,3813 8 -,33594 -,333 9 -,33398 -,333 1 -,33398 -,3331 11 -,33398 -,3335 1 -,33398 -,33374 13 -,33386 -,33374 14 -,33386 -,3338 Ďalšou metódou je Newtonova metóda známa aj ako metóda dotyčníc. Oproti predchádzajúcej metóde (polovičného delenia intervalu) je táto metóda oveľa rýchlejšia, ale vyžaduje na vstupe splnenie viacerých podmienok. Okrem základnej podmienky, t.j. existencie takých hodnôt a a b tak, že f(a).f(b) < a vedeli zaručiť, že v intervale < a; b > leží jediný reálny koreň danej úlohy typu f(x) =, musí ešte naviac platiť, že f (x) nemení znamienko na < a; b > (t.j. f(x) je buď len konvexná alebo len konkávna na < a; b >). Riešenie môžme začať z ľubovoľného bodu ξ < a; b >, pre ktorý platí: f(ξ).f (ξ) >. Postup riešenia je potom nasledovný: A. položíme x = ξ B. ďalej počítame postupne x k+1 = x k f(x k) f (x k ), pre k =, 1,,... Dá sa ukázať, že postupnosť hodnôt x, x 1, x,... konverguje ku presnému riešeniu ˆx rovnice f(x) =. Geometrické znázornenie tohto postupu v prípade určovania 3 bodov x, x 1, x, x 3 je uvedené na obrázku Obr.1.3. C. ak je splnená podmienka x k+1 x k < ε pre najmenšie k N potom príslušnú hodnotu x k+1 môžme považovať za riešenie danej úlohy, v opačnom prípade sa vrátime na bod A a celý postup opakujeme znovu. Kapitola 1. (Lineárne a nelineárne rovnice) 6
Obr. 1.3: Princíp aproximácie koreňa Newtonovou metódou dotyčníc. Z podmienok uvedených pre túto metódu vyplýva, že existujú 4 možnosti pre tvar funkcie na intervale < a; b >. Podmienka f(ξ).f (ξ) > v prípade I. a II. je splnená, ak napr. ξ = a, v prípade III. a IV ak napr. ξ = b (pozri Obr.1.4). Príklad 1.6 Newtonovou metódou s presnosťou ε =, 1 určte záporný koreň rovnice x 4 + x 5 =. Riešenie. Postupným vypočítaním viacerých funkčných hodnôt (Tabuľka 1.6) vidíme, že hľadané riešenie sa nachádza v intervale < 3; >. Tabuľka 1.6: x -1 - -3 f(x) -5-6 -13-5 Keďže f (x) = 1x > na celom intervale < 3; >, podmienka f(ξ).f (ξ) > je splnená napr. pre ξ = 3. Položíme teda x = 3 a podľa bodu.) bude x 1 = 3 f( 3) 5 = 3 =, 5983. Počítame podobne ďalšie hodnoty (Tabuľka 1.7) až do x f ( 3) 16 5, pričom preverujeme po každom Kapitola 1. (Lineárne a nelineárne rovnice) 7
Obr. 1.4: Grafy konvexných a konkávnych funkcií. Tabuľka 1.7: x -3 x 1 -,583 x -,35583 x 3 -,33416 x 4 -,33384 x 5 -,333839 kroku podmienku na zadanú presnosť, ktorá je splnená prvýkrát práve pre hodnotu x 5, resp. teda platí: x 5 x 4 < ε, takže môžeme hodnotu, 333839 považovať za hľadané riešenie. Príklad 1.7 Nájdite približnú hodnotu kladného riešenia rovnice sinh x=x s presnosťou ε=,1. Riešenie. Na začiatok si pripomeňme, že funkcia g(x)= sinh x je nepárna časť prirodzenej exponenciálnej funkcie definovaná vzťahom sinh x= ex e x. Prvým krokom je separácia koreňa x. Grafickým spôsobom je koreň určený súradnicou x priesečníka grafov funkcií g(x) a h(x)=x pre x>, viď obr. 1.5. Obrázok zodpovedá aj počtárskemu odhadu, keď e x zanedbáme voči e x (pre x>,3 je e x <,1) a vieme, že e <8 a e,5 >1, teda x ;,5. Kapitola 1. (Lineárne a nelineárne rovnice) 8
y 1 1 8 6 4 g(x) h(x).5 1 1.5.5 3 x Obr. 1.5: g(x) = sinh x a h(x) = x Nájdime približné riešenie Newtonovou metódou. V intervale ;,5 je evidentne práve jeden koreň, zodpovedá tomu aj kladná prvá a druhá derivácia funkcie f(x)= sinh x x: f (x)= cosh x, f (x)= sinh x na tomto intervale (funkcia je rastúca a konvexná). Ako začiatočnú iteráciu zvolíme ten krajný bod ξ intervalu separácie, v ktorom (f(ξ) f (ξ)) > a teda f(ξ)> podľa odhadu vieme, že to je ξ=,5. A tak môžeme iterovať: x () =,5, x (1) =,4, x () =,181, x (3) =,1773, x (4) =,1773, x. = x (4). x (1) =,5 f(,5) f (,5) =,5 1,5 4,13 x () =,4 f(,4) f (,4) =,4,163,75 x (3) =,181 f(,181) f (,181) =,181,91,484 x (4) =,1773 f(,1773) 1 5 =,1773 5 f (,1773),4679. =,4, x (1) x () =,6 ε,. =,181, x () x (1) =,59 ε,. =,1773, x (3) x () =,37 ε,. =,1773, x (4) x (3) < 1 4 < ε, Približná hodnota kladného koreňa danej rovnice je x. =,1773, s presnosťou ε. To že toto číslo naozaj vyjadruje odhad riešenia je vidieť aj v čitateli posledného iteračného vzorca, podľa ktorého f(,1773). =5 1 5, teda sinh x (4). =x (4). Kapitola 1. (Lineárne a nelineárne rovnice) 9
Lineárne a nelineárne rovnice Približné riešenie sústav lineárnych algebraických rovníc Pri praktických výpočtoch, najmä na počítačoch, sa rozsiahle sústavy riešia najmä približnými metódami. V lineárnej algebre sme sa naučili hľadať presné riešenia sústav lineárnych rovníc ako aj zodpovedať otázku ich riešiteľnosti. V niektorých častiach numerickej matematiky, napr. pri riešení parciálnych diferenciálnych rovníc (ale aj iných, bežných úloh technickej praxe) sa stretávame s potrebou riešenia systémov lineárnych rovníc so zaručenou jednoznačnosťou hľadaného riešenia. Vtedy je možné uplatniť o.i. aj viaceré dobre známe jednoduché a pomerne rýchle numerické postupy, ktoré síce poskytnú len približné riešenie s určitou chybou, ktoré je ale postačujúce v daných aplikáciách. V tejto časti si ukážeme dva takéto algoritmy, ktoré vychádzajú z jednej spoločnej platformy. Nech je daná sústava n lineárnych rovníc s n neznámych tvaru a 11 x 1 + a 1 x +... + a 1n x n = b 1, a 1 x 1 + a x +... + a n x n = b,..., a n1 x 1 + a n x +... + a nn x n = b n. (1) V maticovom tvare je túto sústavu možné potom zapísať nasledovným spôsobom: A x = b, pričom a 11 a 1... a 1n x 1 b 1 a 1 a... a n A =...., x = x., b = b.. a n1 a n... a nn Z lineárnej algebry vieme, že daná sústava má jednoznačné riešenie, ak matica A = (a ij ) je regulárna. Zaveďme si teraz niektoré pojmy, ktoré budeme používať. Štvorcovú maticu A = (a ij ) rádu n nazývame diagonálne dominantnou, ak platí: n n a ii > a ij, alebo a ii > a ji pre všetky i = 1,,..., n. j=1; j i j=1; j i x n b n Kapitola 1. (Lineárne a nelineárne rovnice) 1
Pod riadkovou, resp. stĺpcovou normou štvorcovej matice A = (a ij ) rádu n rozumieme číslo: A m = max,,...,n n j a ij, resp. A e = max j=1,,...,n n a ij. i Pod Frobeniovou normou matice A = (a ij ) rádu n rozumieme číslo: n A k = Ukážme si teraz algoritmy dvoch metód. Prvou je Jacobiho iteračná metóda. Pri aplikácii tejto metódy vychádzame zo štandardného maticového tvaru sústavy Ax = b. Predpokladajme, že sústava má všetky prvky na hlavnej diagonále nenulové. Potom môžme každú rovnicu upraviť na nasledovný tvar: x i = 1 a ii (b i n j=1; j i n a ij. j=1 a ij x j ); i = 1,,..., n. Vo všeobecnosti vlastne prevádzame sústavu tvaru Ax = b na tvar x = Ux + V a z tohto tvaru potom vytvoríme postupnosť iteračných vzťahov v tvare: x (k+1) = Ux (k) + V; k =, 1,,... pričom x () je ľubovoľná počiatočná aproximácia. Ak takto vytvorená postupnosť x (k), k =, 1,,... konverguje, hovoríme o konvergentnom iteračnom procese, resp. o konvergentnej metóde. Pritom platí: Ak postupnosť x (k), k =, 1,,... konverguje, konverguje k riešeniu danej úlohy. Ak niektorá z noriem matice U (riadková, stĺpcová alebo Frobeniova) je menšia než jedna, potom postupnosť x (k), k =, 1,,... konverguje k jedinému riešeniu danej úlohy x ( ) nezávisle na voľbe počiatočnej aproximácie x () ; t.j. lim k x (k) i = x ( ) i pre všetky i = 1,,..., n. Ak je matica sústavy rovníc A v diagonálne dominantnom tvare, Jacobiho metóda konverguje pre ľubovoľnú voľbu počiatočnej aproximácie x (). Akákoľvek sústava lineárnych rovníc s jednoznačným riešením sa ekvivalentnými úpravami dá previesť na sústavu s diagonálne dominantnou maticou. Poznamenajme pritom, že ako počiatočnú aproximáciu x () volíme väčšinou nulový vektor (,,..., ). Je dobré tiež spomenúť, že existujú aj iné podmienky pre konvergenciu riešenia tejto úlohy a nájdeme ich v citovanej literatúre. Keďže presné riešenie nepoznáme, používame ako kritérium Kapitola 1. (Lineárne a nelineárne rovnice) 11
zastavenia iteračného postupu podmienku x (k+1) x (k) < ε. Teda akonáhle pri iteračnom procese zistíme, že podmienka x (k+1) i súčasne pre všetky i = 1,,..., n; kde ε je dopredu zadaná presnosť, je potom aj x (k+1) x ( ) < ε U 1 U dostatočne presnú aproximáciu presného riešenia x ( ). Pre praktický výpočet používame potom plný, neskrátený zápis systému n iteračných rovníc: x (k) i < ε platí a hodnotu x(k+1) možno považovať za x (k+1) 1 = 1 a 11 x (k+1) = 1 a. x (k+1) n = 1 a nn (b 1 n j=1; j 1 a 1jx (k) j ), (b n j=1; j a jx (k) j ), (b n n j=1; j n a njx (k) j ). () Príklad 1.8 Riešme Jacobiho metódou sústavu s presnosťou ε =, 1. 5x 1 +, 1x +, 9x 3 = 1, 8x 1 + 4x, 1x 3 =, 18x 1, 6x + 3x 3 = 4, 5. Riešenie. Keďže daný systém spĺňa podmienku dominantnej diagonály, je zaručené, že iteračný proces bude konvergovať k presnému riešeniu úlohy. Sústavu upravíme teda na tvar: x 1 =, 4x, 18x 3 x = 5, x 1 +, 3x 3. x 3 = 1, 5, 6x 1 +, x Zvolíme Potom x () = 1, 97 1, 994 1, 993 x (1) = 5, x () = 4, 915, x (3) = 4, 9166, x (4) = 4, 91633. 1, 5 1, 5 1, 561 1, 564 Keďže pre iterácie x (3) a x (4) je splnená podmienka pre presnosť riešenia, môžme vektor riešení x (4) považovať za konečné riešenie danej úlohy. Kapitola 1. (Lineárne a nelineárne rovnice) 1
Druhou metódou je Gaussova-Seidelova iteračná metóda. Pri aplikácii tejto metódy vychádzame z toho istého tvaru sústavy ako pri Jacobiho metóde ako aj jej maticového zápisu Ax = b. Na rozdiel od Jacobiho metódy pri výpočte každej novej aproximovanej zložky x (k+1) i vektora x (k+1) používame všetky najnovšie známe potrebné iné zložky, t.j. buď z vektora x (k+1) alebo z x (k) podľa predpisu: x (k+1) i = 1 i 1 (b i a ij x (k+1) j a ii j=1 n j=i+1 a ij x (k) j ); i = 1,,..., n; k =, 1,,... Pre voľbu vektora počiatočnej aproximácie ako aj pre podmienky konvergencie platia všetky poznatky uvedené pri popise Jacobiho metódy. Zdôraznime hlavne podmienku diagonálnej dominancie, ktorá postačuje ku konvergencii metódy pri ľubovoľnej voľbe počiatočnej iteráce x (). Príklad 1.9 Vyriešme Gaussova-Seidelovou metódou sústavu s presnosťou ε =, 5. 7x 1 x + x 3 = 3x 1 8x + x 3 = 11 x 1 + 6x + 5x 3 = 8 Riešenie. Keďže daný systém nespĺňa podmienku dominantnej diagonály, je potrebné ho upraviť na iný tvar, ktorý bude takejto podmienke vyhovovať, napr. pripočítaním druhej rovnice ku tretej. Dostaneme novú sústavu: 7x 1 x + x 3 = 3x 1 8x + x 3 = 11 4x 1 x + 7x 3 = 19 Táto sústava už spĺňa podmienku dominantnej diagonály a tak je zaručené, že iteračný proces bude konvergovať k presnému riešeniu úlohy.pre výpočet postupných aproximácií hľadaného riešenia pre k =, 1,,... použijeme potom nasledovné rovnice: x (k+1) 1 = + 7 7 x(k) 1 7 8x(k) 3 x = 11 + 3 8 8 x(k+1) 1 + 1 4 x(k) 3 x 3 = 19 4 7 7 x(k+1) 1 + 7 x(k+1) Ako počiatočnú aproximáciu môžme zvoliť tentoraz napr. aj vektor tzv. absolútnych členov, t.j.: x () = 7 11 8 19 7... Kapitola 1. (Lineárne a nelineárne rovnice) 13
Potom 1, 6636531 1, 8998334 1, 439448 x (1) = 1, 96311, x () = 1, 87781, x (3) =, 99896563. 3, 138697 3, 138697 3, 354941 Keďže pre iterácie x () a x (3) je splnená podmienka pre presnosť riešenia, môžeme vektor riešení x (3) považovať za konečné riešenie danej úlohy. Príklad 1.1 Nájdite približné riešenie sústavy rovníc s presnosťou ε=,1 pomocou Jacobiho metódy a porovnajte s riešením pomocou Gaussovej- Seidelovej metódy x 1 +7x x 3 = 6, 6x 1 x + x 3 = 8, 5x 1 x +4x 3 = 11. Riešenie. Pre zabezpečenie konvergencie metódy k presnému riešeniu je potrebné upraviť sústavu tak, aby jej matica bola riadkovo diagonálne dominantná. Upravme preto sústavu v maticovom zápise vymenením prvých dvoch riadkov a odčítaním druhého riadku od tretieho 7 1 6 6 1 1 8 6 > 1 + 1 6 1 1 8 7 1 6 7 > + 1, 5 4 11 1 1 3 3 3 > 1 + 1 čím je táto podmienka splnená. Vyjadíme z k-tej rovnice k-tu premennú a zapíšeme v iteračnom tvare pre Jacobiho metódu x (n+1) 1 = 1 6 x (n+1) = 1 7 ( (n) 8 +x x (n) ) 3, ( (n) 6 x 1 +x (n) ) 3, x (n+1) 3 = 1 ( (n) 3+ x 1 +x (n) 3 ). Iterácie konvergujú k presnému riešeniu x pri akejkoľvek voľbe x (), preto volíme nulovú začiatočnú iteráciu a iterujeme, kým nie je splnené kritérium Kapitola 1. (Lineárne a nelineárne rovnice) 14
ukončenia iteračného procesu: x () =, 1(8 + ) x (1) 6 = 1( 6 + ). 1,333 1,333 =,857, x (1) x () = 7,857 1(3 + + ) 1, 1, = 1,333 ε 3 1(8,857 1,) x () 6 = 1( 6 1,333 + 1,). 1,4,39 = 1,95, x () x (1) = 7,38 1(3 + 1,333,857) 1,159,159 =,39 ε 3 1(8 1,95 1,159) x (3) 6 = 1( 6 1,4 + 1,159).,958,66 =,984, x (3) x () = 7,111 =,4 ε, 1(3 + 1,4 1,59),955,4 3 1(8,984,955) x (4) 6 = 1( 6,958 +,955). 1,1,5 =,994, x (4) x (3) = 7,1 =,5 ε, 1(3 +,958,984),991,36 3 1(8,994,991) x (5) 6 = 1( 6 1,1 +,991). 1,3,7 = 1,4, x (5) x (4) = 7,1 =,1 ε, 1(3 + 1,1,994) 1,,9 3 1(8 1,4 1,) x (6) 6 = 1( 6 1,3 + 1,) =.,999,4 1,1, x (6) x (5) = 7,3 =,4 < ε. (3 + 1,3 1,4) 1,, 1 3 V šiestej iterácii je konvergenčné kritérium splnené, teda x T. = (,999 1,1 1, ) s presnosťou ε. Pri použití Gaussovej-Seidelovej metódy je iteračný predpis daný vzťahmi x (n+1) 1 = 1 6 x (n+1) = 1 7 ( (n) 8 +x x (n) ) 3, ( (n+1) 6 x 1 +x (n) ) 3, x (n+1) 3 = 1 ( (n+1) 3+ x 1 +x (n+1) 3 ), Kapitola 1. (Lineárne a nelineárne rovnice) 15
a kritérium zastavenia výpočtu je splnené po menšom počte iterácií (s tým istým x () ) 1 (8 + ) x () =, x (1) 6 = 1( 6 1,333 + ) =. 1,333,955 1,4 1, 1,38, x () =,983, x (3) = 1,, x (4) = 1,, x (4) x (3) < ε. 7 (3 + 1,333 1,38) 1,3,991 1,1 1, 1 3 Lineárne a nelineárne rovnice Gradientné metódy riešenia sústav lineárnych rovníc Efektívny spôsob riešenia sústav rovníc so symetrickými maticami V súčasnosti sa pri riešení istých druhov sústav lineárnych rovníc osvedčila metóda, ktorá je založená na nasledujúcej myšlienke. Ak máme danú kvadratickú funkciu jednej reálnej premennej x f(x)= 1 a x b x, pričom predpokladáme kladné a a ľubovoľné číslo b, je minumum tejto funkcie riešením rovnice a x=b. Pre n-ticu reálnych čísel x= (x 1, x,..., x n ) teda potrebujeme kvadratický funkcionál premennej x, ktorý je určený štvorcovou maticou A s n riadkami a stĺpcovým vektorom b tiež s n riadkami: f(x)= 1 x Ax x b. (1.1) Pravda tak ako pri jednej premennej sme potrebovali a kladné, aj tu potrebujeme, aby matica A bola kladná. Príklad 1.11 Zistime podmienku pre maticu A, aby funkcionál f(x)= 1 x Ax x b mal minimum a toto minimum bolo určené riešením rovnice Ax=b. Riešenie. Pre x= (x 1, x,..., x n ) je nutná podmienka minima f v bode w f(x) x k = pre všetky k=1,,..., n. Keďže xm x k =1 pre k=m a inak to je, dostaneme pre každé k=1,,..., n ( ( f(x) = 1 n n ) ) ( n n ) x i A ij x j x i b i = 1 n ( 1 ( A kj x j + x i A ik b k = Ax + A x ) ) b. x k x k j=1 k Takže pre minimalizujúci bod w máme rovnicu 1 ( ) A + A w = b. Ak chceme, aby w bolo riešením sústavy Ax=b, matica A musí byť symetrická, teda A=A. Kapitola 1. (Lineárne a nelineárne rovnice) 16
Ak spočítame druhú deriváciu funkcie f pre každé k=1,,..., n a pre každé l=1,,..., n a pri uvažovanej symetrii matice A, dostaneme ( ( n )) f(x) = 1 n A kj x j + x i A ik = 1 x l x k x l (A kl + A lk ) = A kl. Matica A sústavy teda musí mať všetky hlavné subdeterminanty kladné, čo je podmienkou minima funkcie n premenných. j=1 Symetrickú maticu nazývame pozitívne definitná, ak pre všetky nenulové x je súčin x Ax kladný. Podmienkou pozitívnej definitnosti symetrickej matice, je podľa Sylvestrovho kritéria, aby všetky hlavné subdeterminanty boli kladné, teda ak platí: x Ax > pre všetky x A 11 > A 11 A 1 A 1 A > A 11 A 1 A 13 A 11 A 1 A 1n A 1 A A 3 A 31 A 3 A 33 > A 1 A A n.... > (1.).. A n1 A n A nn Pre symetrickú pozitívne definitnú maticu A nadobúda kvadratický funkcionál (1.1) minimum pre vektor x, ktorý je riešením sústavy lineárnych rovníc Ax=b pri ľubovoľnom vektore b. Príklad 1.1 Overme pozitívnu definitnosť symetrickej matice A= ( ) 4 1 1 4 1 z definície aj podľa Sylvestrovho kritéria. 1 4 Riešenie. Praktickejšie je použiť kritérium. Podľa neho A 11 =4> a ďalšie podmienky dostaneme výpočtom determinantov: 4 1 4 1 1 4 = 16 1 = 15 >, 1 4 1 = 64 4 4 = 56 >. 1 4 Všetky tri determinaty sú kladné, matica je symetrická pozitívne definitná. Pri použití definície musíme upravovať výrazy, keď x= (x 1, x, x 3 ) : x Ax = ( ) 4 1 x 1 x 1 x x 3 1 4 1 x = ( ) 4x 1 + x x 1 x x 3 x 1 + 4x + x 3 1 4 x 3 x + 4x 3 = 4x 1 + x 1 x + 4x + x x 3 + 4x 3 = 3x 1 + (x 1 + x ) + x + (x + x 3 ) + 3x 3. Kapitola 1. (Lineárne a nelineárne rovnice) 17
Nerovnica platí, pretože v poslednom výraze sčítame nezáporné členy (druhé mocniny). Zistime ešte, kedy nastane rovnosť. To bude len v prípade, keď všetky sčítance sú nulové, teda 3x 1=, (x 1 + x ) =, x =, (x + x 3 ) =, 3x 3=. A to je možné iba ak x 1 =, x = aj x 3 = a vektor x je nulový. To dokazuje pozitívnu definitnosť, pretože pre všetky nenulové x je výraz x Ax kladný. Hľadajme minimum funckionálu f (1.1) s použitím jednokrokovej iteračnej metódy, kde budeme iteráciu (k+1) hľadať v tvare x=x (k) + αd (k), kde d (k) je niektorý, vopred určený smer, v ktorom hľadáme minimum f. V takom prípade jedinou neznámou je číslo α a jeho hodnotu, ktorou minimalizujeme f označíme α (k) a hodnotu x zasa x (k+1), teda f(x (k+1) ) = f(x (k) + α (k) d (k) ) = min f(x (k) + αd (k) ). (1.3) α Fukncionál f má minimum, keď A je symetrická pozitívne definitná matica, takže aj pri nájdení stacionárneho bodu iba vzhľadom k α to bude pre danú funkciu ˆf(α)=f(x (k) + αd (k) ) bod minima. Pre hľadaný stacionárny bod platí = dˆf(α) dα = d ( 1 ) ) ) ) (x (k) + αd (k) A (x (k) + αd (k) (x (k) + αd (k) b = α(d (k) ) Ad (k) +(d (k) ) Ax (k) (d (k) ) b = α(d (k) ) Ad (k) (d (k) ) r (k), dα (1.4) kde sme v poslednom výraze použili rezíduum r (k) pre k-tú iteráciu. Riešenie α (k) tejto rovnice je α (k) = (d(k) ) r (k) (d (k) ) Ad (k), pričom definujeme r(k) = b Ax (k) (1.5) Príklad 1.13 Nájdime v akom vzťahu je rezíduum k funkcionálu f. Riešenie. Podľa príkladu 1.11 vieme, že pre symetrickú maticu A platí f(x (k) ) x i = ( Ax (k) b ) i = r(k) i, čo, ak to napíšeme pomocou vektorov, znie grad f(x (k) )= r (k). Keďže gradient určuje smer, v ktorom sa hodnoty funkcie najviac zväčšujú, rezíduum určuje smer najväčšieho spádu funkcie. Otázkou ostáva, ako voliť smery d (k) v iteračnom procese. Tento smer by mal zodpovedať smeru, v ktorom hodnoty funkcionálu f čo najviac klesajú. Prirodzenou voľbou pre takúto myšlienku je vziať rezíduum v danom bode, keďže v jeho smere má funkcia maximálny spád. Týmto spôsobom dostaneme jednoduchú iteračnú metódu, ktorej sa hovorí metóda najväčšieho spádu, a ktorej algoritmus sa na základe vzorcov odvodených v rovniciach (1.4) a (1.5), pri voľbe d (k) =r (k) dá zapísať nasledovne: Kapitola 1. (Lineárne a nelineárne rovnice) 18
A3. Zvolíme x () a požadovanú presnosť ε; vypočítame z definície r () = b Ax () ; k=. B3. Vypočítame minimalizujúci koeficient α (k) pomocou vzorca (viď (1.5)) C3. Nájdeme ďalšiu iteráciu riešenia a jeho rezíduum α (k) = (r(k) ) r (k) (r (k) ) Ar (k). x (k+1) = x (k) + α (k) r (k), r (k+1) = r (k) α (k) Ar (k). D3. Ak platí x (k+1) x (k) < ε (príp. r (k+1) < ε), skončíme výpočet a x x (k+1). V opačnom prípade k zväčšíme o jedna a pokračujeme bodom B3. Poznamenajme, že druhý vzorec v C3 sme dostali z toho prvého použitím druhého vzťahu v rovnici (1.5). Tento algoritmus sa však často nepoužíva, lebo obyčajne je konvergencia pomalá a algoritmus sa dá vylepšiť. Jedným takým vylepšením je metóda združených gradientov, ktorá hľadá iterácie tak, aby všetky rezíduá boli na seba ortogonálne, teda aby spĺňali vzťah (r (k) ) r (i) = pre všetky i k. Táto ortogonalita spôsobí, že r (n) =, lebo neexistuje n+1 nenulových ortogonálnych n-tíc. Nulové rezíduum znamená, že x (n) je presným riešením sústavy rovníc Ax=b. Pravda, ak sú výsledky priebežne zaokrúhľované, nulové rezíduum nedostaneme prakticky nikdy. To však vôbec nie je na škodu, lebo hľadáme riešenie s presnosťou ε. Takáto postupnosť rezíduí sa dá nájsť za predpokladu, že minimalizujúce združené smery d (k) spĺňajú predpoklad A-ortogonálnosti, t.j. (d (k) ) Ad (i) = pre všetky i k. Efektívny algoritmus pre metódu združených gradientov môžeme napísať nasledovne: A4. Zvolíme x () a požadovanú presnosť ε; vypočítame z definície r () = b Ax () ; položíme d () = r () ; k=. B4. Vypočítame minimalizujúci koeficient α (k) pomocou vzorca (viď (1.5)), ďalšiu iteráciu riešenia a jeho rezíduum α (k) = (r(k) ) r (k) (d (k) ) Ad (k), x(k+1) = x (k) + α (k) d (k), r (k+1) = r (k) α (k) Ad (k). C4. Nájdeme ďalší koeficient a príslušný združený smer: β (k) = (r(k+1) ) r (k+1) (r (k) ) r (k), d (k+1) = r (k+1) + β (k) d (k) Kapitola 1. (Lineárne a nelineárne rovnice) 19
D4. Ak platí x (k+1) x (k) < ε (príp. r (k+1) < ε), skončíme výpočet a x x (k+1). V opačnom prípade k zväčšíme o jedna a pokračujeme bodom B4. V oboch prípadoch používame pre zastavenie iteračného procesu skôr kritérium s rezíduom, pretože tieto rezíduá priamo počítame v rámci algoritmov, vo vzorcoch z C3 resp. B4. Poznamenajme ešte, že ak na nájdenie x (k+1) použijeme smer d (k), použijúc minimalizáciu zo vzťahu (1.4), a rezíduum r (k+1) určuje najväčší spád funkcie f (1.1) v bode x (k+1), musia byť d (k) a r (k+1) ortogonálne, teda (d (k) ) r (k+1) = pre ľubovoľné k. Príklad 1.14 Odvoďme vzorce pre výpočet α (k) a β (k) v metóde združených gradientov. Riešenie. Vzorec (1.5) nám udáva α (k). Pre jeho stotožnenie so vzorcom z B4, potrebujeme upraviť čitateľ. Ak druhý vzorec v C4 skalárne vynásobíme r (k+1), dostaneme (r (k+1) ) d (k+1) = (r (k+1) ) r (k+1) + β (k) (r (k+1) ) d (k). Posledný člen vypadne z dôvodu ortogonálnosti spomenutej v odstavci nad týmto príkladom. Zvyšok vzťahu nám určí potrebnú úpravu vzorca (1.5). Pre nájdenie β (k) druhý vzorec v C4 skalárne vynásobíme Ad (k) a v dôsledku A-ortogonálnosti združených smerov d (k) dostaneme = (d (k+1) ) Ad (k) = (r (k+1) ) Ad (k) + β (k) (d (k) ) Ad (k), z čoho máme β (k) = (r(k+1) ) Ad (k) (d (k) ) Ad (k). Ak chceme dostať to, čo tvrdí C4, dosaďme v čitateli za Ad (k) a následne vzorec pre α (k) zo vzťahov v B4. A tiež potrebujeme ortogonalitu rezíduí: (r (k+1) ) r (k) =. Úpravami získame a to je hľadaný vzťah. β (k) = (r(k+1) ) Ad (k) (d (k) ) Ad (k) = (r(k+1) ) 1 α (k) ( r (k+1) r (k)) (d (k) ) Ad (k) = (r (k+1) ) 1 (r (k) ) r (k) (d (k) ) Ad (k) r (k+1) (d (k) ) Ad (k) = (r(k+1) ) r (k+1) (r (k) ) r (k), Príklad 1.15 Vypočítajte dve iterácie v riešení sústavy 8x 1 x = 17, x 1 +8x = 1, metódou združených gradientov, vypočítajte aj normy ich rezíduí. Kapitola 1. (Lineárne a nelineárne rovnice)
Riešenie. Riešenie uskutočníme v maticovom tvare. Označme A = ( ) ( ) 8 1 17, b =. 1 8 1 Presvedčme sa, že matica sústavy A je symetrická a pozitívne definitná: symetria je zrejmá a keďže det A> aj A 11 >, aj pozitívna definitnosť je splnená. Zvolíme nulovú začiatočnú iteráciu a vypočítame požadované dve iterácie ( ) ( ) 146 x () =, r () = d () = b (), Ad () =, 97 ( ) ( ) 17 17 1 1 α () = ( ) ( ) = 389 17 146 345 1 97 ( ) ( ),5,5,961,961 β (1) = ( ) ( 17 17 1 1 ( ) ( ),5,5,961,961 α (1) = ( ) ( ) = 1,176,553 3,493 8,351,931 6,895 α () = 1 ( ) 17 1. =,113, x (1) = ) = 1,176 389 ( ) ( ) ( ) ( ) 17 1,91 17 +,113 =, r (1) =,113 1 1,13 1. =,3, d (1) = ( ). 1,91 =,141, x () = +,141 1,13 ( ) ( ),5 17 +,3 =,961 1 ( ) ( ),553 1,999 =, r () =,931,999 ( ),553, Ad (1) =,931 ( ),5,141,961 ( ) 146 = 97 ( ) 3,493, 6,895 ( ),5,,961 ( ) ( ) 3,493,9 =. 6,895,11 Všimnime si, ako klesali normy razíduí: r () = 17, r (1) =,961, r () =,11. Po dvoch iteráciách norma rezídua klesla o tri rády. Poznamenajme, že bez zaokrúhľovacích chýb by táto norma mala byť nulová, pretože sme riešili sústavu s dvoma neznámymi. Porovnajme: ( ) ( ) 146 x () =, r () = d () = b (), Ad () =, 97 ( ) ( ) 17 17 1 ( 146 97 ) = 389 345, x(1) = ( ) + 389 ( ) ( 17 6613 ) ( ) = 345 17 1945, r (1) = 389 345 1 1 176 345 ( ) ( 146 945 ) = 176 313, 97 345 Kapitola 1. (Lineárne a nelineárne rovnice) 1
β (1) = ( 945 176 313 345 ( 17 1 α (1) = ) ( 945 176 313 345 ) ( 17 ) 1 ) ( 945 176 313 345 ( 7131537 1191634 536733 595815 ) = 3571 1191634, d(1) = ) ( 945 176 313 345 ) ( 3159115 595815 7874991 1191634 ( 945 ) 176 313 + 3571 ( ) 17 = 345 1191634 1 ) = 345 ( 6613 ) 457, x() = 345 1945 + 345 176 457 Každopádne by však nikto nerátal s takýmito strašnými zlomkami. ( 7131537 ) 1191634 536733, Ad (1) = 595815 ( 3159115 ) 595815 7874991, 1191634 ( 7131537 ) ( ) ( 1191634 945 536733 =, r () = 1 595815 176 313 345 ) 345 457 ( 3159115 ) 595815 7874991 = 1191634 Nakoniec zdôraznime, že pri použitých algoritmoch vyžadujeme, aby matica A bola symetrická pozitívne definitná. Avšak aj v opačnom prípade sa sústava Ax=b s jednoznačným riešením dá ľahko modifikovať na sústavu s pozitívne definitnou maticou. Stačí vynásobiť pôvodnú sústavu zľava maticou A a dostaneme A Ax=A b. (1.6) Matica tejto sústavy A A je vždy symetrická a je aj pozitívne definitná, ak je matica A nesingulárna. Pravda, takéto modifikácie sústavy sa nepoužívajú často, pretože vlastnosti matice A A potrebné pre numerické riešenie sústavy spôsobia pomalú konvergenciu aj v metóde združených gradientov. V takom prípade radšej použijeme iné gradientné metódy, vhodné pre všeobecné sústavy rovníc. Tie však v rámci tohto kurzu diskutovať nebudeme. Lineárne a nelineárne rovnice Približné riešenie sústav nelineárnych rovníc Nelineárne fyzikálne zákony ponúknu na riešenie nelineárne rovnice ( ). Aj keď samozrejme daný problém popíšeme vo všeobecnosti, prakticky sa zameriame potom len na riešenie dvoch rovníc o dvoch neznámych. Vychádzame pritom z numerického riešenia jednej rovnice o jednej neznámej, teda typu f(x) =, ktorej riešením sme sa sa zaoberali hneď v prvej časti tejto kapitoly. V niečom sa popis tohoto riešenia môže javiť ako dosť podobný, ale rozšírenie prináša aj viaceré zložitosti, ako napr. určovanie počiatočnej aproximácie, dôkaz konvergencie procesu iterácie na zvolenej oblasti a pod.. Ukážeme si jednu metódu a tou bude Newtonova metóda. Uvažujme sústavu nelineárnych rovníc v tvare: f i (x 1, x,..., x n ) =, i = 1,,..., n; pričom x = (x 1, x,..., x n ) a F = (f 1, f,..., f n ) T. V o vektorovom tvare je potom možno danú sústavu zapísať jednoducho: F (x) =. Kapitola 1. (Lineárne a nelineárne rovnice)
Ak funkcie f i, i = 1,,..., n sú spojito diferencovateľné v nejakom okolí bodu x, potom podľa Taylorovej vety platí: f i (x 1 + τ 1, x + τ,..., x n + τ n ) = f i (x 1, x,..., x n ) = n j=1 f i (x 1, x,..., x n ) τ j + o( τ ), x j o( τ ) kde lim τ τ =, alebo vo vektorovom tvare: F (x + τ) F (x) F (x).τ = o( τ ), kde τ = (τ 1, τ,..., τ n ) T, τ = max[ τ 1, τ,..., τ n ] a F (x) je matica parciálnych derivácií ( f i(x) x j ) n i,j=1. Teraz si sformulujeme, ako vyzerajú podmienky na úspešné použitie tejto metódy, teda aby sme mali zabezpečenú konvergenciu iteračného procesu. Nech v nejakom okolí Ω a = {x : x x < a}pre riešenia x rovnice F (x) = sú splnené nasledovné podmienky: A5. (F (x)) 1 a 1, x Ω a, B5. F (x 1 ) F (x ) F (x )(x 1 x ) a x x 1, x 1, x Ω a, C5. x () Ω b, kde b = min{a, (a 1.a ) 1 }, kde (F (x)) 1 je inverzná matica k matici parciálnych derivácií F (x). Potom iteračný proces daný vzťahom konverguje ku riešeniu x ( ). x (k+1) = x (k) (F (x (k) )) 1.F (x (k) ) Výraz (F (x (k) )) 1.F (x (k) ) vyjadruje prírastok R(x (k) ), ktorý vyhovuje rovnici (F (x (k) )) 1.R(x (k) ) = F (x (k) ). Výpočet podľa vyššie uvedeného iteračného vzťahu ukončíme, ak R(x (k) ) < ε, kde ε je dopredu zadaná presnosť výpočtu. Výber počiatočnej iterácie x () je možné urobiť buď na základe grafického náčrtu alebo výpočtom tak, aby x () bolo dostatočne blízko hľadanému riešeniu x, t.j. aby v nejakom okolí x () platili podmienky konvergencie A5 až C5, keďže na tomto mieste neuvádzame príslušný dôkaz. Príklad 1.16 Newtonovou metódou s presnosťou ε =, 3 určte približne riešenie (x 1, x ), ktoré vyhovuje nasledovnej sústave nelineárnych rovníc x 1 +, 9x 1 =, x 1 x =. Kapitola 1. (Lineárne a nelineárne rovnice) 3
Riešenie. Ak sa všetky prvé parciálne derivácie funkcií nemenia veľmi rýchlo, potom počiatočnú aproximáciu x () môžme určiť graficky alebo výpočtom pomocného systému rovníc x 1 + x = 1, x 1 x =. V našom prípade situáciu vhodne popisuje Obr.1.6). Vidíme, že sústava bude mať dve rôzne dvojice riešení. Zvoľme napr. x () = [ 1, 5; ] a budeme Obr. 1.6: Grafy funkcií pre určenie počiatočnej aproximácie. aproximovať riešenie ležiace v okolí tohto bodu. V tomto prípade vektor F (x) a matica F (x) vyzerajú nasledovne: ( ) ( ) x1 +, 9x F (x) = 1 1, 9 x, F 1 x (x) =. x 1 1 Inverznú maticu (F (x)) 1 je možné určiť známym postupom z lineárnej algebry a tak: ( ) (F (x)) 1 1 1, 9 =. 1 + 1, 8x 1 x 1 1 Po dosadení do iteračného vzťahu a vykonaní všetkých potrebných aritmetických operácií dostávame postupne: x (1) = [ 1, 779411; 3, 8836], Kapitola 1. (Lineárne a nelineárne rovnice) 4
x () = [ 1, 747517; 3, 5797], x (3) = [ 1, 74789; 3, 533], x (4) = [ 1, 74789; 3, 53]. Vzhľadom k vopred požadovanej presnosti posledne vypočítanú iteráciu x (4) už môžme považovať za hľadanú aproximáciu riešenia danej úlohy. Výber počiatočnej iterácie x () je možné urobiť aj pre druhé riešenie. Urobme to teraz výpočtom. Sústavu x 1 + x = 1, je možné vyriešiť priamym výpočtom. Riešenie tvoria dve dvojice: x 1 x =, [ 1 + 5 [ 1 5 ; 3 5 ], ; 3 + 5.] Ak zvolíme teraz x () = [ 1+ 5 ; 3 5 ], potom po opakovaní vyššie popísaného postupu obdržíme nasledovnú postupnosť iterácií: x (1) = [, 636116;, 44316], x () = [, 635978;, 44468], x (3) = [, 635978;, 44468]. Vzhľadom k vopred požadovanej presnosti posledne vypočítanú iteráciu x (3) už môžme považovať za hľadanú aproximáciu riešenia danej úlohy. Príklad 1.17 Newtonovou metódou s presnosťou ε =, 3 určte približne riešenie (x 1, x ), ktoré vyhovuje nasledovnej sústave nelineárnych rovníc x 1 + x = 1,, x 3 1 =, 8. Kapitola 1. (Lineárne a nelineárne rovnice) 5
Obr. 1.7: Grafy funkcií pre určenie počiatočnej aproximácie. Riešenie. Opäť situáciu vhodne popisuje obrázok Obr.1.7). Vidíme, že znovu aj táto sústava bude mať dve rôzne dvojice riešení. Zvoľme napr. x () = [1;, 5] a budeme aproximovať riešenie ležiace v okolí tohto bodu. V tomto prípade vektor F (x) a matica F (x) vyzerajú nasledovne: ( ) ( ) x F (x) = 1 + x 1, x 3, F 1, 8 x1 x (x) =. 3x Inverznú maticu (F (x)) 1 je možné takisto určiť známym postupom z lineárnej algebry a tak: (F (x)) 1 = 1 ( ) x. 6x 3x x 1 Po dosadení do iteračného vzťahu a vykonaní všetkých potrebných aritmetických operácií dostávame postupne: x (1) = [, 933333;, 583333], x () = [, 98345;, 581553], x (3) = [, 98318;, 58157]. Vzhľadom k vopred požadovanej presnosti posledne vypočítanú iteráciu x (4) už môžme považovať za hľadanú aproximáciu riešenia danej úlohy. Treba podotknúť, že úloha má ešte jedno iné riešenie, ktoré si čitateľ na základe popísaných postupov už určite bude vedieť určiť aj sám. Kapitola 1. (Lineárne a nelineárne rovnice) 6
Samohodnotiace otázky a úlohy na samostatné riešenie 1. Popíšte základný rozdiel (vstupné podmienky vs. rýchlosť konvergencie) medzi Newtonovou metódou a metódou polovičného delenia intervalu!. Je Gaussova-Seidelova iteračná metóda v každom prípade efektívnejšia ako Jacobiho? Skúste nájsť kontrapríklad! 3. Prečo je dôležité, aby matica A bola symetrická pozitívne definitná pre metódu združených gradientov? 4. Ako zdôvodníte, že metóda združených gradientov pri presnom počítaní vedie k presnému riešeniu po konečnom počte iteračných krokov? Zamyslite sa nad odvodením všetkých vzorcov z metódy združených gradientov! 5. Viete dokázať, že matica A A vo vzťahu (1.6) je symterická pozitívne definitná? 6. Skúste nájsť hlavnú príčinu väčšej obtiažnosti riešenia sústavy nelineárnych rovníc oproti lineárnym! V úlohách 1. až 1. vyriešte s presnosťou nelineárne rovnice s presnosťou ε =, 1. 1. x e x 5, 5 =.. ln x 1 8x =. 3. cos x 8 5x =. 4. sin x 5 3 x + 4 =. 5. tan x 1 5 x 1 = (najmenší kladný koreň). 6. arctan x x + 4 =. 7. x4 x 3 x 1 = (kladný koreň). 8. x + 1 1 5 x 4x + 1 =. 9. x 1+x x + 4x + 1 = (kladný koreň). 1. 4x3 5x 1x + 65 = (najväčší kladný koreň). V úlohách 11. až 16. vyriešte s presnosťou ε =, 1 nelineárne rovnice. 11. ex + x 4 =. 1. e x + x =. 13. e x ln x =. 14. ln (x + 3) x =. 15. x sin x 1 = (najmenší kladný koreň). 16. x ( + ln x) 1 =. Kapitola 1. (Lineárne a nelineárne rovnice) 7
V úlohách 11. až 16. vyriešte s presnosťou ε =, 1 nelineárne rovnice. 17. x sin x 1 = (záporný koreň). 18. x ln x 1 =. 19. ex ln x 1 =.. x x 4 + e x =. 1. ln x ex + 9 =. V úlohách. až 5. vyriešte nasledujúce systémy lineárnych rovníc Jacobiho iteračnou metódou s presnosťou ε =, 1.. 1x 1 + x + x 3 = 1 x 1 + 1x + x 3 = 13 x 1 + x + 1x 3 = 14. 3. 1, 9x 1 +, 1x +, 9x 3 = 7, 1x 1 + 9, 8x + 1, 3x 3 = 1, 3, 9x 1 + 1, 3x + 1, 1x 3 = 4, 6. 4. x 1 + x + 6x 3 = 4 6x 1 4x x 3 = 11, 33 x 1 + 6x x 3 = 3. 5. x 1 + 3x x 3 = 1 x 1, 3x +, 4x 3 = 3 x 1 +, 5x + x 3 = 3. V úlohách 6. až 9. vyriešte nasledujúce systémy lineárnych rovníc Gauss-Seidlovou iteračnou metódou s presnosťou ε =, 1. 6. x 1 + x 5x 3 = 8 x 1 1x + x 3 = 1 5x 1 x x 3 = 4. 7., 95x 1 1x + 1, x 3 =, 3, 1x 1 +, x, 64x 3 = 1 x 1 1, 9x + 1x 3 = 1. 8. x 1 + 3x x 3 = 1 x 1 +, 5x + x 3 = 3 x 1, 3x +, 4x 3 = 3. 9. 9x 1 + x x 3 = 1 x 1 + x + 9x 3 = 8 x 1 + 9x + x 3 =. Kapitola 1. (Lineárne a nelineárne rovnice) 8
V úlohách 3. až 35. nájdite približné riešenie sústavy lineárnych rovníc metódou združených gradientov so zadanou presnosťou ε. Začiatočnú iteráciu si zvoľte. 3. ε =,5, 6x 1 3x = 5 3x 1 + x =. 31. ε =,5, 7x 1 x = 5 x 1 6x = 5. 3. ε =,1, 34. ε =,1, 1x 1 + x + x 3 = 1 x 1 + 1x + x 3 = 13. 33. ε =,1, x 1 + x 1x 3 = 14 4x 1 x x 3 = 3 x 1 + 4x x 3 =. 35. ε =,1, x 1 x + 4x 3 = 3 9x 1 + x x 3 = 1 x 1 + 9x + x 3 =. x 1 + x + 6x 3 = 8 5x 1 x x 3 = 6 x 1 + 5x = 7. x 1 + 3x 3 = 36. Predchádzajúce úlohy preriešte aj metódou najväčšieho spádu. Nájdite tretiu iteráciu riešenia touto metódou a vypočítajte normu rezídua tretej iterácie. Začiatočnú iteráciu si zvoľte.. V úlohách 37. až 41. vyriešte s danou presnosťou a spôsobom voľby počiatočnej aproximácie sústavy nelineárnych rovníc. 37. x 1 x, = ; x 1 x, = ; ε =, ; graficky. 38. 1, 1 3x 1 x = ; 18 3, 1x 1 4x = ; ε =, 1; výpočtom. 39. x 5, 1 = ; 1, 5x x 1 1 x = ; ε =, 1; výpočtom. 4. x cos x 1 sin π 1 = ; x x 4 1, 5 = ; ε =, 1; graficky. 41. 1 x 1 16 x = ; 1 x 1 8 x 4 = ; ε =, 1; graficky. Kapitola 1. (Lineárne a nelineárne rovnice) 9
Záver V tejto kapitole sme sa venovali niektorým základným metódam používaným na riešenie rovnice f(x) = a sústav lineárnych aj nelineárnych rovníc. Neprebrali sme zďaleka všetky metódy, ale ukázali sme jednak tie najzákladnejšie, ale zároveň aj dostatočne efektívne tak, aby ich bolo možné použiť pri riešení rôznych úloh nielen aplikovanej matematiky ale aj ďalších odborných oblastiach v technickej praxi. Literatúra [1] Budinský, B., Charvát, J.: Matematika I, Praha 1987. [] Charvát J., Hála M., Šibrava Z.: Příklady k Matematice I, ČVUT Praha,. [3] Eliáš J., Horváth J., Kajan J.: Zbierka úloh z vyššej matematiky, časť I. (3.vyd.198), Alfa, Bratislava. [4] Ivan, J.: Matematika I, Bratislava 1983. [5] Kreyszig, E.: Advanced Engineering Mathematics, New York 1993. [6] Šoltés V., Juhásová Z.: Zbierka úloh z vyššej matematiky I, Košice 1995. [7] G. I. Marčuk Metody numerické matematiky. Academia, Praha, 1987. [8] Z. Dostál Optimal Quadratic Programming Algorithms. Springer, Berlin, 9. Riešenia úloh Odpovede na samohodnotiace otázky, ak ich neviete sformulovať, a aj mnohé iné odpovede nájdete v odporúčanej literatúre. 1. 3. základný interval :< 5; 6 > Newtonova metóda : x = 5, x 3 = 5, 5811, metóda polovičného delenia :< 5, 58; 5, 59 >, 1 delení základný interval : < ; 1 > Newtonova metóda : x =, x =,, metóda polovičného delenia : <, 199;, >, 1 delení. 4. základný interval : < ; 3 > Newtonova metóda : x =, x 3 =, 1139, metóda polovičného delenia : <, 11;, 1 >, 1 delení základný interval : < 3; 4 > Newtonova metóda : x = 4, x 3 = 3, 484, metóda polovičného delenia : < 3, 48; 3, 49 >, 1 delení Kapitola 1. (Lineárne a nelineárne rovnice) 3
5. 7. 9. 18. 4. základný interval : < ; 1 > Newtonova metóda : x = 1, x 4 =, 85314, metóda polovičného delenia : <, 853;, 854 >, základný interval : < ; 3 > Newtonova metóda : x = 3, x 5 =, 7747, metóda polovičného delenia : <, 77;, 78 >, základný interval : < 4; 5 > Newtonova metóda : x = 5, x 3 = 4, 41148, metóda polovičného delenia : < 4, 411; 4, 41 >, základný interval : < 1; > Newtonova metóda : x =, x 5 = 1, 53158 k = 9 x 1 4, 6657 x 7, 6185 5. k = 9 x 1, 997 x, 945 6. 1 delení 1 delení 6. 8. 1 delení základný interval : < 1; >. x 1, 1579 x 1, 3684 základný interval : < ; 3 > Newtonova metóda : x = 3, x 3 =, 6194, metóda polovičného delenia : <, 6;, 63 >, základný interval : < ; 1 > Newtonova metóda : x = 1, x 3 =, 51813, metóda polovičného delenia : <, 518;, 519 >, 1. Newtonova metóda : x = 1, x 4 =, 71766; základný interval : < 3; 4 > Newtonova metóda : x = 4, x 4 = 3, 718; k = 6 k = 4 k = 9 7. x 1, 716 x, 696 základný interval : < 6; 7 > 1 delení 1 delení Newtonova metóda : x = 7, x 4 = 6, 5. k = 7 x 1 1, 1 x 1, x 3 1, k = 5 3. k = 7 x 1, 9999 x 1, 1 x 3, 1 x 3 9, 471 x 3, 8749 x 3 1, 841 x 3 1, 1939,8538 1, 1, x 3, 8746 x 3, 9999 31. nevhodné 3. nevhodné 33. 1,6566 34., 35. 1, 37. a)x () = (; ), x (3) (, 33;, 1989); b)x () = 3,97 1, 1, (1; 1), x (3) (1, 1787; 1, 1893) 38. x () = (; 3), x () (, 13376;, 984934) 39. x () = (5; ), x (4) (5, 99588; 1, 93649) 4. a)x () = ( π;, 8), 4 x(4) (, 7135;, 7591); b)x () = ( π;, 8), 4 x(4) (, 7135;, 7591) 41. a)x () = (; 1), x (4) (, 3941; 1, 1547); b)x () = (; 1), x (4) (, 3941; 1, 1547); c)x () = ( ; 1), x (4) (, 3941; 1, 1547); d)x () = ( ; 1), x (4) (, 3941; 1, 1547) 8. x 1, 9894 x, 949 9. x 1, 9999 x 1, 9999 3. ( ) 5,33 9, Kapitola 1. (Lineárne a nelineárne rovnice) 31
Kapitola. (Interpolácia a aproximácia) Poslanie Odhadnúť hodnotu funkcie, ktorú nepoznáme, tiež jej deriváciu a určitý integrál Ciele 1. Popísať k čomu nám slúži interpolácia.. Zistiť predpis polynomickej funkcie, ktorá prechádza zadanými bodmi. 3. Nájsť hodnotu polynómu, ktorý je zadaný prostredníctvom niekoľkých bodov. 4. Nájsť najvhodnejší polynóm nízkeho stupňa, ktorý aproximuje veľké množstvo experimentálnych údajov. 5. Odhadnúť hodnotu derivácie funkcie danej tabuľkou. 6. Aproximovať hodnotu určitého integrálu pomocou približných vzorcov. Prerekvizičné znalosti polynómy; funkcie; derivácia; minimum funkcie; Taylorova veta; určitý a neurčitý integrál Kapitola. (Interpolácia a aproximácia) 1