OSTRAVSKÁ UNIVERZITA P Ř ÍRODOVĚ DECKÁ FAKULTA NUMERICKÁ MATEMATIKA ZUZANA VÁCLAVÍKOVÁ OSTRAVA 4
Na této stánce mohou být základní tiážní údaje o publikaci
OBSAH PŘ EDMĚ TU Úvod Úvodní pojmy 5 Matematická a numeická úloha 5 Zdoje chyb 8 Podmíněnost úloh 4 Kontolní otázky Řešení nelineáních ovnic 5 Fomulace poblému 5 Gafická metoda 6 Iteační metody řešení nelineáních ovnic 7 Metody statovací 8 Metody zpřesňovací 5 4 Kontolní otázky, koespondenční úkol Řešení soustav lineáních ovnic 5 Fomulace poblému 6 Metody přímé 7 Metody iteační 46 4 Kontolní otázky, koespondenční úkol 49 4 Vlastní čísla a vlastní vektoy matic 5 4 Fomulace poblému 5 4 Částečný poblém vlastních čísel 54 4 Úplný poblém vlastních čísel 57 44 Kontolní otázky, koespondenční úkol 6 Řešení úloh 65
Závě 7 Liteatua 7
Úvod ÚVOD Milá čtenářko, milý čtenáři, předkládaná výuková opoa je opoou ke kuzu Numeická matematika, kteý je věnován numeickým metodám algeby Numeická matematika je v současné době ozvoje počítačové techniky nevyhnutnou součástí nejenom samotné matematiky, ale i spousty dalších technických, či ekonomických oboů Nabízí nám možnost řešit přibližnými metodami řadu poblémů, kteé matematicky nelze řešit vůbec a nebo je to technicky obtížné Tyto tety Vás seznámí se základními metodami po řešení nelineáních ovnic, soustav lineáních ovnic a výpočtem vlastních čísel matic V jednotlivých kapitolách je uváděn přibližný čas potřebný k postudování učiva, pokuste se poto studovat systematicky, postupně a dodžujte temíny V závěu každé kapitoly jsou Kontolní úlohy, kteé by jste po postudování měli být schopni vyřešit samostatně Spávnost řešení si můžete ověřit v kapitole Řešené úlohy Přesto, že dnes již eistuje mnoho pogamů, kteé zahnují algoitmy popisovaných metod, dopoučuji, aby jste si algoitmy zpacovali samostatně Z paktického důvodu ponechávám pouze na Vás, jaký softwae k páci použijete Kapitoly, a 4 obsahují koespondenční úkol, kteý je nutno zaslat ke kontole dle hamonogamu studia Bližší infomace o způsobu komunikace Vám sdělí tuto Z časových důvodů obsahuje studijní opoa pouze stučný popis těch nejzákladnějších numeických metod Podobnější infomace o jednotlivých metodách, jakož i popis dalších metod můžete naleznout v dopoučené liteatuře, kteá je uvedena v závěu tetů Přeji Vám mnoho úspěchů ve studiu Zuzana Václavíková Autoka studijní opoy Čas potřebný k postudování učiva předmětu: + hodin (teoie + řešení úloh
4
Úvodní pojmy 5 ÚVODNÍ POJMY V této kapitole se dozvíte: co to je numeická matematika a co jsou numeické úlohy; co jsou zdoje chyb a jak pacovat s přibližnými čísly; co je podmíněnost úloh a algoitmů Budete schopni: tansfomovat eálný poblém, případně matematickou úlohu na úlohu numeickou; odhadnou, jaké chyby budou mít vliv na kvalitu numeického řešení a učit chybové zatížení výsledku; učit, zda je takováto úloha dobře/špatně podmíněná, a tedy zda ji numeicky lze, nebo nelze úspěšně řešit Klíčová slova této kapitoly: numeická úloha, algoitmus, chyba, zdoje chyb, podmíněnost úlohy, stabilita algoitmu Čas potřebný k postudování učiva kapitoly: 4 + 4 hodiny (teoie + řešení úloh Původce studiem Pvní kapitola je úvodem do numeické matematiky Ukážeme si jaké úlohy lze numeicky řešit, co všechno obnáší výpočet přibližnými metodami a jak pacovat s nepřesnými čísly, abychom dosáhli co nejkvalitnějších výsledků Matematická a numeická úloha Než si vysvětlíme, co vlastně numeická matematika je, zkusme se zamyslet nad tím, jak se dá dospět od skutečného eálného poblému až k jeho řešení V technické pai tato cesta může být dvojí: epeimentální nebo výpočetní Epeimentálním řešením ozumíme poces, kdy necháme studovaný děj poběhnout a na základě výsledku zodpovíme otázky, kteé nás zajímaly Řešení výpočetní znamená, že na základě veličin, kteé mají na daný poces vliv a funkčních vztahů mezi nimi, matematicky vypočteme jak bude děj pobíhat Oba způsoby však mají svoje výhody i nevýhody Epeiment nám může výboně sloužit k ověření našeho výpočetního řešení, ale často se povést nedá Například, pokud nás zajímá, jaká teplota byla v době ledové, nezbývá nám nic jiného, než ji výpočetně odhadnout, potože čas vátit nemůžeme Samozřejmě je
6 třeba mít neustále na vědomí, že výpočetní řešení v konečném důsledku může, ale nemusí odpovídat skutečnosti, potože během výpočtu se dopouštíme spousty zaokouhlení a přiblížení Uvažujme již zmíněný eálný poblém: Jaká byla teplota v době ledové? Aby byl poblém výpočetně řešitelný, musí být převeden na tzv matematickou úlohu- což znamená převedení slovní úlohy do matematické podoby V našem případě vědec (fyzik, geolog, paleontolog, jednoznačně učí, co mělo na teplotu vliv a na základě těchto znalostí sestaví ovnice (nebo jiné matematické vztahy, jejichž řešením obdžíme hodnotu teploty Jsou-li tyto ovnice matematicky řešitelné, můžeme je vyřešit a dostaneme tak teoetické přesné řešení matematické úlohy Často se však stane, že ovnice řešit buďto nelze vůbec, nebo je to časově zdlouhavé, náočné, atp Potom nám nezbývá nic jiného, než se uspokojit alespoň s přibližným řešením matematické úlohy Matematickou úlohu tak převedeme na úlohu numeickou tj na jednoznačný popis funkčního vztahu mezi konečným počtem vstupních a výstupních dat (esp dat vyjádřitelných konečným počtem čísel Numeická úloha je tedy matematický model eálného poblému, kteý lze ealizovat na počítači v konečném čase Jednoznačná specifikace konečné posloupnosti opeací, pomocí kteých ze vstupních dat jednoznačně obdžíme výstupní data nazýváme algoitmem Matematická disciplína, kteá konstuuje a analyzuje metody, algoitmy a postupy po ealizaci numeických úloh na počítači se nazývá numeická matematika Příklad Přetansfomujte poblém na úlohu matematickou a poté na úlohu numeickou: Nalezněte řešení difeenciální ovnice y 4 y + 4y =, y( =, y ( = 4 Řešení: Reálný poblém je již ve tvau matematické úlohy, neboť máme přímo ovnici (lineání difeenciální ovnici řádu s konstantními koeficienty homogenní jejíž řešením obdžíme odpověď Úloha však není numeická, potože výstupní data-tj samotné řešení ovnice, je funkce y (, kteá není vyjádřitelná konečným počtem čísel (představuje nespočetně mnoha údajů- funkční hodnoty v každém eálném čísle, a těch je nespočetně Abychom úlohu převedli na numeickou, musíme z nespočetně mnoho výstupních dat vybat konečně mnoho, například tak, že budeme požadovat řešení difeenciální ovnice pouze v bodech =, =, =,, = 9, =, tedy výstupem bude hodnot, y, y, y,, y 9, y konkétně hodnoty ( ( ( ( ( Příklad Přetansfomujte poblém na úlohu matematickou a poté na úlohu numeickou: Nepřímým měřením byla zjišťována napínací síla lana Epeiment byl oganizován tak, že mezi dvěma body A, B upevněnými ve vzdálenosti c bylo zavěšeno lano délky d Na toto lano bylo zavěšeno závaží o hmotnosti m tak,
Úvodní pojmy 7 aby se nehýbalo V místě zavěšení závaží se vytvořil pavý úhel Zjistěte napínací sílu delší části lana Řešení: Epeiment si můžeme načtnout takto A c B α 9 d- F B F g X α = mg F A o V místě zavěšení se vytvořil pavý úhel, tedy víme, že úhel AXB je 9, dále označme úhel ABX jako α Z fyziky víme, že hmotnost závaží vyvolá tíhovou sílu F g = mg, kde g je tíhové zychlení, a tato síla se ozkládá na dvě složky napínacích sil: jedna ve směu od bodu B, označili jsme ji F B a duhá ve směu od bodu A, označená F A, přičemž se zachová úhel α (viz obázek Přeponu pavoúhlého tojúhelníku ABX jsme označili c, což je vzdálenost bodů A, B a odvěsny, d, neboť víme pouze to, že součet těchto stan je d - délka lana Zajímá nás velikost síly F B, víme, že F B = mg sinα a úhel α můžeme spočítat z tojúhelníku ABX jako sin α = c Z Pythagoovy věty učíme vzdálenost, potože + ( d = c, tedy d ± c d = My jsme si označili katší odvěsnu v tojúhelníku (uvědomme si, že značení mohlo být i obáceně, tedy po nás je vzdálenost menší ze dvou kořenů kvadatické ovnice, tudíž
8 d c d = Nyní již vidíme, že tato úloha vede na matematickou úlohu spočítat d c d F B = mg c Matematická úloha je záoveň i numeickou úlohou Vstupní data jsou čtyři hodnoty m, g, c, d a výstupní hodnota je jedno číslo F B Zdoje chyb Při vytváření matematického modelu eálného poblému, stejně tak i při samotném řešení numeickou cestou se vždy dopouštíme jisté idealizace Při sestavování matematické úlohy jsme často například nuceni použít fyzikální vztahy, kteé platí pouze za ideálních podmínek - třeba zanedbáváme tření, atp, nebo nejsme schopni zachytit všechny faktoy, kteé mají na daný děj vliv Rozdíl řešení eálného poblému a řešení matematické úlohy nazýváme chybou matematického modelu Chyba, kteé se dopouštíme při samotném numeickém řešeni nazýváme chybou metody Je nutné si uvědomit, že pokud je chyba matematického modelu příliš velká (model špatně popisuje eálnou situaci nebude výsledek odpovídat skutečnosti, bez ohledu na přesnost samotného řešení K posouzení kvality výsledku musíme vzít v úvahu i tzv chyby ve vstupních datech, potože ty jsou často výsledkem měření a každé měření je zatíženo chybou A nakonec jsou to chyby zaokouhlovací, způsobené ealizací výpočtu na počítači Označme skutečnou hodnotu nějakého čísla a ~ jeho přibližnou hodnotu, tzv apoimaci Chybu lze potom vyjádřit dvojím způsobem, jako absolutní chybu A ( = ~, kteá vystihuje odchylku, co do velikosti a elativní chybu R( ~ = ~, učující odchylku pocentuelně Příklad Vezměme číslo = = 44 a jeho apoimaci ~ = 4 Učete absolutní a elativní chybu apoimace Řešení: Absolutní chyba je A = ~ = 4 = 44 4 = ( 4 Relativní chyba je ~ A ( ( 4 R = ~ = ~ = = 988, 4 tedy odchylka apoimace od skutečné hodnoty činí přibližně 988 %
Úvodní pojmy 9 Poznámka d Zaokouhlování povádíme tak, aby zaokouhlovací chyba byla A(, kde d je počet desetinných míst na kteá zaokouhlujeme Tedy například chceme-li zaokouhlit na dvě desetinná místa, tak číslo 984 98, ale číslo 985 99 Šíření chyb Budeme-li pacovat s čísly přibližnými, naskýtá se otázka, jak se chyba apoimace bude během výpočtu kumulovat Platí následující věta Věta Nechť, jsou přesné hodnoty a ~ ~, jejich apoimace Potom platí a A ( ± = A( + A( b A( = A( ~ + A( ~ A( ~ + A( ~ c A = ~ Příklad Obě uvedená čísla jsou zaokouhlena spávně na uvedený počet desetinných míst Učete nejmenší inteval, v němž bude ležet součet, ozdíl, součin a podíl těchto čísel ~ = 7956, ~ y = 9 Řešení: Je-li číslo ~ = 7 956 spávně zaokouhleno na čtyři desetinná místa, znamená to, že zaokouhlovací chyba je A ( 5 4 = 5 a podobně A ( y = 5 = 5 Tedy chyba součtu a ozdílu těchto čísel dle předchozí věty bude A ( ± y = A( + A( y = 55, tudíž nejmenší inteval, ve kteém bude ležet součet těchto čísel je [( + y A( + y ;( + y + A( + y ] tedy 56 55; 56 + 55 = 55; 65 [ ] [ ] Nejmenší inteval, ve kteém bude ležet ozdíl čísel je [( y A( y ;( y + A( y ], tedy 4 656 55; 4656 + 55 = 4655; 46465 [ ] [ ]
Analogicky postupujeme u součinu a podílu Chyba součinu je A ( y = A( ~ y + A( y ~ = 9795 a inteval, v němž leží součin bude [( y A( y ( y + A( y ] [ 6 545; 6565] A( ~ y + A( y ~ Chyba podílu je ;, tedy A = ~ = 6769 a nejmenší inteval, y y 4567; 4675 ve kteém bude ležet podíl je [ ] Chyba při výpočtu funkčních hodnot V pai často potřebujeme učit chybu při výpočtu funkční hodnoty K odvození použijeme Tayloova ozvoje Nechť f ( X je funkce n -poměnných X = (,,, n a předpokládejme, že místo přesných hodnot X = (,,, n pacujeme s apoimacemi ~ X = ( ~, ~,, ~ n Tayloův ozvoj kolem bodu X ~ je ~ n ~ n ~ ( ( ~ ( ~ f f + f X = f X + + X i i X i i i= i i= i a zanedbáme-li členy duhého a vyšších řádu dostaneme, že chyba funkční hodnoty je přibližně ( ( ( ~ n f A f X f X f X = A( i Příklad Učete velikost chyby napínací síly delší části lana (viz příklad z předchozí části, pokud víte, že hmotnost závaží je m = ( ± kg, vzdálenost bodů A, B je c = ( 5 ± 5cm, délka lana d = ( 8 ± 5mm a tíhové zychlení i= dosazujeme zaokouhleno na dvě desetinná místa jako i g = 98 ms Řešení: V předchozím příkladě jsme ukázali, že napínací síla delší části lana je d c d F B = mg c Hodnoty vstupních veličin jsou zatížené chybami, připomeňme, že zápis m = ( ± kg znamená, že hmotnost závaží je m = kg a chyba s jakou jsme hmotnost naměřili je A( m = kg Hodnoty c, d musíme ještě převést na základní jednotky- tedy na mety, takže c = 5 m, A( c = 5 m, d = 8 m a A( d = 5 m Tíhové zychlení je zaokouhleno na dvě desetinná místa = 9 8 Hodnota spočítat jako g a tak ( g = 5 A F B je funkcí čtyř poměnných m, g, c, d, tedy velikost chyby F B lze
A Úvodní pojmy FB FB FB FB ( F = A( m + A( g + A( c + A( d B m g Po spočtení všech příslušných paciálních deivací a dosazení do tohoto vztahu obdžíme A c d d c d d c d ( F = g A( m + m A( g B c + mg c ( c d + d ( c d mg + + d c c c ( c d A( d Dosazením konkétních čísel a vyčíslením dostaneme A F B = 9 A( c + F B = 7 44 R = ( N, což znamená, že elativní chyba je ( 95 95% V pai se měření, jehož chyba je do 5 %, považuje za dobé F B N + a tedy asi Podmíněnost úloh Ukázali jsme si, že pokud jsou vstupní data zatížena chybou, potom tato chyba nejenom že nezmizí během výpočtu, ale naopak, může se ještě znásobovat Je tedy na místě ptát se jak moc se během řešení může chyba kumulovat, neboli jak velkou chybu na výstupu způsobí vstupní chyby Budeme říkat, že úloha je dobře podmíněná jestliže malá změna ve vstupních datech vyvolá malou změnu na výstupu Míu této změny vyjadřujeme číslem podmíněnosti c p, kteé je ovno podílu elativní chyby na výstupu a elativní chyby na vstupu Označíme-li vstupní hodnoty vektoem X a výstupní Y, potom R( Y c p = R( X Čím je číslo podmíněnosti větší, tím je úloha hůře podmíněná ( a tudíž i malá změna na vstupu způsobí velké chybové zatížení výstupu, po c p mluvíme o velmi špatně podmíněných úlohách U takovýchto úloh je vhodné zvážit, zda má vůbec smysl úlohu řešit, nebo zda není lepší pokusit se poblém přefomulovat na jinou matematickou či numeickou úlohu Algoitmus nazveme stabilní je-li dobře podmíněný a numeicky stabilní (tedy málo citlivý na zaokouhlovací chyby během ealizace na počítači
Příklad Učete, zda úloha stanovit Řešení: Vezměme = 57 A tan v okolí bodu 57 je dobře podmíněná Tato chyba na vstupu vyvolá na výstupu chybu a A ( = ( y = tan tan( + A( = tan57 tan58 = 64 4 vstupu je a elativní chyba na výstupu je R R ( ( y ( A = = ( y A y = 64 = 865 Relativní chyba na a tedy číslo podmíněnosti c = 7 58 Úloha stanovit tan v okolí bodu 57 je p velmi špatně podmíněná Souvisí to s faktem, že v bodě = π 57 funkce tan není definovaná 4 Kontolní otázky Kontolní otázky Rozhodněte, zda úloha je matematická, esp numeická 5 a Učete všechny kořeny ovnice + 4 + = b Spočítejte neučitý integál cos d Učete, co jsou vstupní a výstupní hodnoty Pokuste se popsat nějaký poblém ve vaší oblasti studia, převeďte ho na úlohu matematickou a poté na úlohu numeickou Chceme zjistit, z čeho je vyobena koule, a to tak, že změříme hustotu mateiálu, a poté učíme z tabulek, o jakou látku se může jednat Hustotu měříme nepřímo pomocí hmotnosti a objemu, potože platí m ρ =, V kde m je hmotnost koule, V je její objem Hmotnost a půmě koule d můžeme změřit přímo Převeďte na úlohu na numeickou Učete, co jsou d vstupní a výstupní hodnoty (Pomůcka Objem koule s poloměem = je 4 V = π 4 Předpokládejte, že uvedená čísla jsou spávně zaokouhlena na daný počet desetinných míst Učete absolutní a elativní chybu a nejmenší inteval, ve kteém bude ležet výsledek
Úvodní pojmy a 58+79 b 8-84 c 65*54 d 594/5 Povšimněte si náůst elativní chyby v případě odečítání téměř stejných čísel a náůst absolutní chyby při dělení malým číslem (číslem s nulami za desetinnou čákou Těmto situacím se poto v numeických výpočtech snažíme vyhnout 5 Spočítejte chybu měření (absolutní i elativní, kteé jsme popsali v příkladě, jestliže půmě koule jsme naměřili d = ( 5 ± 5cm a hmotnost m = ( 5845 ± 5kg π 6 Rozhodněte, zda úloha učit cos v okolí bodu je dobře podmíněná Spočtěte číslo podmíněnosti 7 Učete, zda numeická úloha učit hustotu koule pomocí hmotnosti a půměu (dle příkladu je dobře podmíněná, vzhledem na změny měření a hmotnosti b půměu koule Shnutí kapitoly Abychom mohli úspěšně používat metody numeické matematiky k výpočtům konkétních poblému, je nutno mít pořád na paměti izika, kteá to sebou nese Je poto nevyhnutné pochopit, co je to přibližná hodnota (apoimace a její chyba a jak se během výpočtu chovají Rovněž je potřebné dokázat tansfomovat úlohu tak, aby byla dobře podmíněná a tudíž numeické řešení vedlo ke spávným výsledkům Pokud jste byli schopni samostatně vyřešit kontolní otázky, jste na nejlepší cestě k pochopení dalších kapitol
Řešení nelineáních ovnic 5 Ř EŠENÍ NELINEÁRNÍCH ROVNIC V této kapitole se dozvíte: co je iteační poces; jak numeicky naleznout kořeny nelineáních ovnic, kteé analyticky řešit nelze, nebo lze jen velice obtížně; co jsou metody statovací a zpřesňovací a jak je vhodně kombinovat, abychom dosáhli co nejkvalitnějšího numeického řešení Budete schopni: úplně numeicky vyřešit nelineání ovnici (metodou gafickou, statovací i zpřesňovací; odhadnou chybu řešení; zhodnotit kvalitu numeického řešení a případně navhnout možnosti zlepšení výpočtu Klíčová slova této kapitoly: iteace, iteační poces, konvegence iteačního pocesu, ychlost konvegence Čas potřebný k postudování učiva kapitoly: 6 + 6 hodin (teoie + řešení úloh Původce studiem Většinu nelineáních ovnic nelze řešit jinak než numeicky V této kapitole popíšeme nejzákladnější metody numeického řešení a načtneme, jak dané metody vhodně kombinovat k dosažení co nejlepšího řešení Fomulace poblému Nechť funkce f : R R je definována a spojitá na intevalu [ a, b] = α a,b, takové, že Hledáme tzv kořen ovnice f (, tedy eálné číslo [ ] f ( α =
6 Poznámka Po jednoduchost se budeme zabývat hledáním kořene jedné nelineání ovnice, avšak někteé uvedené metody můžeme zobecnit po soustavu n -obecně n n nelineáních ovnic Uvažujme zobazení F : R R definováno v oblasti n Ω R Označíme-li složky funkce F = ( F,, F n, můžeme soustavu zapsat ve tvau F,, = ( n (,, Fn (,, n = Hledáme n -tici α = ( α,, αn Ω, po kteou F ( α = F ( α,, αn = F ( α,, α = F F n n = ( α,, α = n n, neboli Gafická metoda Řešíme-li ovnici f ( = je vhodné nejdříve užít tzv gafické metody řešení, neboli obyčejné načtnutí gafu, kteé nám dá jistou představu o počtu kořenů ovnice a jejich lokalizaci Příklad Nalezněte nejmenší kladný kořen ovnice e cos = Řešení: Gafické řešení můžeme povést dvojím způsobem Buďto si načtneme přímo gaf funkce y = e cos, kořeny ovnice budou půsečíky gafu funkce a osy (gaf, nebo načtneme do téhož gafu dvě funkce y = e, y = cos a kořeny budou půsečíky gafů funkcí y a y (gaf
Řešení nelineáních ovnic 7 Gaf ep( - *cos( y 5 5 - -5 5-5 - Gaf ep(, *cos( y 5 5 5 - -5 5 Čevenou bavou je načtnutý gaf funkce y = e, modře gaf y = cos Z, obou gafů je vidět, že hledaný kořen ovnice leží v intevalu [ ] Iteační metody řešení nelineáních ovnic U numeických metod, kteým se budeme v této kapitole věnovat, budeme postupovat tak, že skutečné řešení hledáme jako limitu vhodně zvolené posloupnosti přibližných apoimací řešení Takovým metodám říkáme iteační Jednotlivé pvky této posloupnosti nazýváme iteace a nultý pvek iteační posloupnosti nazýváme počátečná apoimace, nebo počátečné přiblížení
8 U iteačních metod nás budou zajímat především dvě otázky: Zda námi sestavená vhodná posloupnost jednotlivých iteací skutečně konveguje k hledanému řešení a pokud ano, jak ychle konveguje V pai se dělíme iteační metody řešení nelineáních ovnic do dvou skupin, na metody statovací a metody zpřesňovací Metody statovací jsou za daných předpokladů vždy konvegentní, nezávisle na kvalitě počátečného přiblížení, ale konvegence je zpavidla velice pomalá Naopak metody zpřesňovací jsou podstatně ychlejší, ale velmi citlivé na počátečnou apoimaci- ke konvegenci vyžadují, aby počátečná apoimace dostatečně kvalitně přibližovala hledané řešení Chceme-li využít přednosti obou typů metod, je ozumné je při řešení nelineání ovnice vhodně kombinovat- nejdříve užít metody statovací, pomocí ní učit dostatečně kvalitní přiblížení hledaného kořene a poté ho zpřesňovat metodou zpřesňovací dokud nebude chyba menší než předem zadaná toleance Poznámka V pai máme vždy představu, jak kvalitně si přejeme výsledek zjistit, neboli jaké maimální možné chyby se můžeme dopustit, aby po měl nás výsledek ještě smysl Mluvíme o předem zadané toleanci U řešení nelineáních ovnic může být náš požadavek dvojího typu: buď požadujeme, aby α ~ α < ε, tedy aby se apoimace kořene od skutečného kořene lišila maimálně o malou hodnotu ε, f ~ α <, tedy povolíme, že funkční hodnota v nebo požadujeme, aby ( δ apoimaci kořene může být místo skutečné nuly (kořen ovnice menší než nějaké malé číslo δ Metody statovací Metoda bisekce Nejjednodušší z metod statovacích je tzv metoda půlení intevalu, neboli metoda bisekce Předpokládejme, že hledáme kořen eálné funkce f spojité na intevalu I = [ a,b ] a navíc předpokládejme, že funkční hodnoty v koncových bodech intevalu mají opačná znaménka, tedy f ( a f ( b < Tyto podmínky nám zaučují, že v intevalu I = [ a,b ] eistuje alespoň jeden kořen, tedy alespoň jedno α [ a,b ] po kteé f ( α = (Spojíme-li bod nad osou s bodem pod osou spojitou čaou, musíme nutně pojít osou, tedy bodem α - viz obázek
Řešení nelineáních ovnic 9 y = f ( a α b a + b I =,b, bod s =, ozpůlí inteval na dva další [ a,s ] a [ s,b ], přičemž hledaný kořen ovnice bude ležet v tom z nich, po kteý mají funkční hodnoty v kajních bodech opět opačná znaménka Střed intevalu [ a ] s = b a = a α b I, kde I k je ten k, k s k, k v jehož koncových bodech nabývá funkce f opačná znaménka Kořen α leží v každém z intevalů I k a vzhledem k faktu, že délka intevalů se zmenšuje vždy o polovinu, budeme se k číslu α konvegentně Tímto postupem vytvoříme posloupnost intevalů { k} k = z intevalů [ a s ], [ b ] přibližovat Délka k -tého intevalu I k je b k a k = ( b a = ( b a = = ( b a k k k k k
Můžeme tedy udělat odhad chyby (neboli učit hodnotu maimální možné chyby, b a kteé jsme se mohli dopustit Po odhad chyby platí ak α k b a espektive bk α k Algoitmus metody bisekce: Nechť ε je maimální možná chyba, se kteou chceme učit řešení nelineání ovnice f ( = Nechť inteval I = [ a,b ] je takový, že f ( a f ( b < Vstup: ε, a : = a, b : = b Opakuj a + b s : = a : = s jestliže b : = s jestliže konec jestliže dokud b a ε I k = a, b Výstup: [ ] f f f ( a f ( s > ( a f ( s < ( a f ( s = Poznamenejme ještě, že metoda bisekce je sice pomalá, ale konveguje vždy, nezávisle na vlastnostech funkce f Příklad Učete metodou bisekce nejmenší kladný kořen ovnice e cos = s chybou menší než ε = Jako počáteční apoimaci použijte inteval zjištěný I ;, pacujte na 6 desetinných míst gafickou metodou [ ] = Řešení: Nejdříve ověříme, zda lze metodu bisekce použít Funkce f ( = e cos je spojitá funkce, navíc f ( = a f ( = 67677 (funkce nabývá v kajních bodech intevalu hodnoty s opačným znaménkem, tedy metodu bisekce můžeme použít Výsledky jednotlivých výpočtů podle algoitmu jsou seřazeny do následující tabulky
kok k a k Řešení nelineáních ovnic b k s ( k f s k bk ak 5 < 5 75 > 5 5 75 65 > 5 5 65 565 > 5 4 5 565 55 < 65 5 55 565 546875 > 5 6 55 546875 596 565 V šestém koku algoitmus skončil, potože chyba 6-té iteace je již v toleanci požadované přesnosti, 565 ε Za apoimaci kořene zjištěné metodou bisekce s požadovanou přesností ε = lze považovat kteékoliv číslo I 55; 546875 z intevalu [ ] 6 = Metoda egula-falsi Velice podobnou metodou jako metoda bisekce je metoda egula-falsi Mějme tedy eálnou funkci f spojitou na intevalu I = [ a,b ] a předpokládejme, že funkční hodnoty v koncových bodech intevalu mají opačná f a f b Přiozená otázka je zda nelze inteval místo znaménka, tedy ( ( < půlení dělit jiným bodem s k, kteý by využil vlastnosti samotné funkce f k uychlení konvegence Takovým bodem může být například půsečík přímky pocházející body A = [ a, f ( a ] a B = [ b, f ( b ] s osou (viz obázek A s a b y = f ( B Snadno se dá ukázat, že s k f ( ak ( ( ( b k ak b f a = ak f k k Samotný algoitmus metody egula-falsi je potom analogický algoitmu metody f : bisekce, jako zastavovací podmínka se zpavidla používá ( δ s k
Vstup: δ, a : = a, b : = b Opakuj dokud ( s δ Výstup: I k = [ a, b] s : = a a : = s b : = s konec f f f ( a ( ( ( b a b f a f ( a f ( s > f ( a f ( s < f ( a f ( s = jestliže jestliže jestliže Metoda egula-falsi je vždy konvegentní metoda, není však vhodná po užití blízko kořene jestliže po Říkáme, že posloupnost { k } konveguje k číslu α ychlostí řádu k platí k + α = C k α + o( k α po C g k = o h k po k označuje, že (Připomeňme, že symbol ( ( ( g( k lim = ( k h k Pakticky to znamená: čím větší, tím ychlejší konvegence Dá se ukázat, že metoda egula-falsi konveguje ychlostí řádu = Mějme však pořád na paměti, že ychlost konvegence vystihuje chování asymptotické po k, což se na několika pvních iteacích se nemusí znatelně pojevit Příklad Učete metodou egula-falsi nejmenší kladný kořen ovnice e cos =, poces zastavte bude-li f ( s k δ = Jako počáteční apoimaci použijte I ;, pacujte na 6 desetinných míst inteval zjištěný gafickou metodou [ ] = Řešení: Metodu lze použít, neboť podmínky jsou stejné jako u metody bisekce, ty jsme již ověřili v předchozím příkladě Výsledky výpočtů jsou uvedeny v tabulce kok k a k b k s f ( 79-9698 79 56-5766 56 5577-58 5577 57668-58 Hledaný kořen uvedené ovnice s přesností ( k s k f je = 57668
Řešení nelineáních ovnic Metoda posté iteace Věta Nechť funkce ϕ je na nějakém intevalu I spojitá a platí I : ϕ (tzv zobazení do sebe ( I q [ ; : ( ϕ( y q y, y I Potom v intevalu I eistuje pávě jeden kořen α ovnice ϕ( posloupnost { k} k = učena fomulí k + = ϕ( k ke kořenu α ϕ (kontaktivní zobazení = a konveguje po každé I Metoda posté iteace vychází z tvzení této věty Přepišme ovnici f ( = do tvau = ϕ( tak, aby funkce ϕ splňovala předpoklady věty a sestojme posloupnost iteací k + = ϕ( k po nějaké I Jednotlivé členy posloupnosti pak můžeme považovat za apoimace hledaného řešení α Poznámka Podmínku předchozí věty lze po difeencovatelnou funkci nahadit podmínkou q ; : ϕ q [ ( I Poznamenejme ještě, že podmínky věty jsou ke konvegenci metody posté iteace po libovolnou počáteční apoimaci I postačující, nikoliv však nutné Můžou tedy nastat případy, že funkce ϕ nesplňuje tyto předpoklady a poces přesto konveguje po nějakou počáteční apoimaci Nemáme-li jinou možnost jak ovnici f ( = přepsat, můžeme povést několik iteací a z tabulky ihned vidíme, zda metoda konveguje, nebo nekonveguje Je-li funkce ϕ difeencovatelná, dá se využitím Tayloova ozvoje ukázat, že ychlost konvegence metody posté iteace je = pokud ϕ ( α, případně = ϕ α =, ϕ α pokud ( ( Algoitmus: Vstup: δ, I + := ϕ f k + Výstup: k + Opakuj k ( k dokud ( δ Příklad Apoimujte metodou posté iteace cos = nejmenší kladný kořen ovnice k + δ = Jako počáteční I ;, pacujte na 6 e, poces zastavte bude-li f ( 5 apoimaci použijte inteval zjištěný gafickou metodou [ ] desetinných míst =
4 Řešení: V našem případě můžeme použít dva způsoby přepisu ovnice cos =, a to do tvau a e = accos a = ln cos b ( V případě a dostaneme iteační předpis e k = k + accos, v případě b předpis k + = ln( cos k Jednotlivé iteace jsou seřazeny v tabulce V obou případech jsme vzali za počátečnou apoimaci = 5 e iteace e k k + = accos = 5 ( cos k + = ln k = 5 675 5656 49 5578 74658 5484 4 5 5479 5 5476 6 57997 Z tabulky vidíme, že v případě iteačního předpisu e k = k + accos poces diveguje, záoveň lze snadno ověřit, že funkce ( e ϕ = accos nesplňuje na intevalu I = [,] předpoklady uvedené věty (nepomůže ani I =,7 zmenšení intevalu např na [ ] V případě iteačního předpisu = ln( cos k + k jsou podmínky věty splněny, metoda konveguje Hledaný kořen uvedené ovnice s danou přesností je 6 = 57997
Řešení nelineáních ovnic 5 Metody zpřesňovací Newtonova metoda (Metoda tečen Hledáme kořen ovnice f ( = na intevalu I, předpokládejme, že funkce f je na I spojitá a difeencovatelná, tj po každé I eistuje f ( Můžeme tedy použít Tayloova ozvoje funkce f v okolí bodu I : f ( = f ( + f ( ( + Po kořen α platí f ( α =, tedy = f α = f + f α ( ( ( ( + Vezmeme-li v úvahu pouze pvní dva členy ozvoje, můžeme za apoimaci kořene považovat f ( = f ( Nyní použijme Tayloův ozvoj funkce f v okolí bodu, analogicky obdžíme přesnější apoimaci kořene : f ( = f ( Opakováním tohoto postupu dostaneme iteační posloupnost { k} k = zvolená počáteční apoimace a ( k ( k + = k f k f, kde je Na místě je však otázka, zda bude taková posloupnost vždy konvegovat, a pokud ano tak zda bude konvegovat k hledanému kořenu α Postačující podmínku konvegence nám dává následující věta Věta Nechť funkce f je na intevalu I [ a, b] difeencovatelná Nechť f ( po každé [ a, b] [ a, b] f ( nemění znaménko Potom pokud ( a f ( b < f ( a f ( b < b a, < b a f ( a f ( b I = spojitá a alespoň dvakát a nechť po každé f a záoveň, tak Newtonova metoda konveguje po každé Samotný algoitmus Newtonovy metody je analogický algoitmu metody posté iteace: Vstup: δ, I Výstup: k + f ( k Opakuj k + = k f ( k dokud f ( δ k +
6 Poznámka Uvědomíme-li si, že pvní deivace funkce je směnicí tečny v daném bodě, potom každá iteace k + je půsečíkem osy a tečny ke křivce y = f (, vedené bodem [ k, f ( k ] (viz gaf, poto se metoda často nazývá metodou tečen Newtonova metoda konveguje ychlostí řádu = f ( k Jako zastavovací podmínku lze také použít < ε f ( k y = f ( Příklad Apoimujte Newtonovou metodou nejmenší kladný kořen ovnice e cos =, jako počáteční apoimaci použijte hodnotu = 5, pacujte na 8 desetinných míst Řešení: Deivace funkce f ( = e cos je funkce f ( = e + sin jednotlivých iteací jsou seřazeny v tabulce iteace k k 5485 597858 597856 4 597856 Hodnoty Vidíme, že na uvedený počet desetinných míst se již apoimace nemění od 9 čtvtého koku Přesnost iteace = 597856 je f ( 597856 =
Řešení nelineáních ovnic 7 Metoda sečen Na metodu sečen lze pohlížet jako na zobecnění Newtonovy metody po funkce, kteé nejsou difeencovatelné Víme, že deivaci možno apoimovat tzv difeenčním podílem f ( ( ( k f k f k, k k což tedy znamená, že nevedeme bodem [ k, f ( k ] tečnu, ale vedeme dvěma body [ k, f ( k ], [ k, f ( k ] sečnu- poto název metoda sečen V pai to ovšem znamená, že na začátku potřebujeme znát dvě počáteční apoimace, a iteační předpis bude mít tva k k k + = k f ( k f ( k f ( k Metoda sečen patří mezi metody intepolační, neboť tento postup můžeme taky chápat jako nahazení funkce f lineáním intepolačním polynomem učeným hodnotami [ k, f ( k ], [ k, f ( k ] a hledáním kořene tohoto polynomu, místo samotné funkce f Rychlost konvegence je = ( + 5 6, tedy o něco menší než u metody Newtonovy Algoitmus Vstup: δ,, I Výstup: k + Opakuj = f ( k + dokud f ( δ k + k k f k ( f ( k k k Příklad Apoimujte metodou sečen nejmenší kladný kořen ovnice e cos =, jako počáteční apoimace použijte hodnoty =, =, pacujte na 6 desetinných míst Řešení: Hodnoty jednotlivých iteací jsou seřazeny v tabulce Iteace k k 79 56 54456 4 5967 5 59785
8 6 59785 Z tabulky vidíme, že na daný počet desetinných míst se iteace od 5-tého koku 6 nemění Přesnost iteace 5 = 59785 je f ( 59785 8 Metoda sečen nemusí vždy konvegovat, je nutné, aby počáteční apoimace byly již dostatečně přesné Je poto vhodné kombinovat ji s metodou statovací, a to konkétně metodou egula-falsi, neboť je pincipialně stejná Jak jsme se již zmínili, metody statovací i zpřesňovací mají svoje výhody i nevýhody Po dosažení co nejlepšího výsledku při řešení konkétního příkladu je vhodné oba typy kombinovat Seznámili jsme se s metodami statovacími i zpřesňovacími, a jsme tedy připaveni kompleně vyřešit úlohu Příklad Hospodář má u domu kuhový távník o poloměu a jde dát kozu na pastvu Chce jí připevnit povázkem na obvod távníku tak, aby mu mohla vyžat maimálně polovinu távy Jak dlouhý musí být povázek? Řešení: Převeďme nejdříve slovní úlohu na úlohu matematickou, případně numeickou Celý poblém můžeme načtnout takto: k k ρ = P S R A Q Kuh omezený kužnicí k, se středem S a poloměem ρ =, představuje távník, kteý chceme ozdělit kužnicí k, se středem A, A k a poloměem, na dvě obsahově stejné části
Řešení nelineáních ovnic 9 Označili jsme P, Q půsečíky obou kužnic a velikost úhlu cílem je stanovit velikost poloměu PAQ = Našim Soustřeďme se na dva shodné, ovnoamenné tojúhelníky ΔQSA a Δ PSA Rovnoamenné poto, že stany QS = AS = = a podobně PS = AS = = Stana SA ozděluje úhel na polovinu, tedy PAS = = QAS Víme, že v ovnoamenném tojúhelníku leží poti stejným stanám stejné úhly, tudíž APS = PAS = a AQS = QAS = Součet úhlů v tojúhelníku je 8 neboli π, a tak zbylé úhly v tojúhelnících budou PSA = π = QSA Navíc úsečky PQ a AS jsou na sebe kolmé Označme dále S k obsah kuhu vymezeného kužnicí k (obsah távníku, a S, S obsahy jednotlivých vchlíků: S vchlík kužnice k vymezený tětivou PQ S vchlík kužnice k vymezený tětivou PQ, přičemž požadujeme, aby S + S = Sk (kužnice k dělí kuh k na dvě části se stejným obsahem Obsah kuhu S k = π = π Obsah vchlíku S (polomě je = ρ a úhel výseče ( π ( ( π sin( ( bude S = π a podobně obsah vchlíku S (polomě je a úhel výseče bude S ( sin = Po dosazení do vztahu S + S = Sk dostaneme ( ( π sin( ( π + ( sin = π, co představuje jednou ovnici o dvou neznámých a Potřebujeme ještě duhou ovnici, vztah mezi a Užijeme-li vlastností pavoúhlých tojúhelníku Δ RSQ a Δ ARQ obdžíme RQ sin( π =
tedy RQ sin =, ( π sin sin = = = cos sin sin Nyní máme dvě ovnice o dvou neznámých ( ( π sin( ( π + ( sin = π = cos kteé můžeme řešit dvěma způsoby: z duhé ovnice vyjádříme a dosadíme do ovnice pvní (tím dostaneme ovnici vzhledem k neznáme, vyřešíme jí a poté dopočteme neznámý polomě nebo z duhé ovnice vyjádříme, dosadíme do pvní ovnice a jejím vyřešením dostaneme Hodnota nás nezajímá, tudíž jí zpětně dopočítat nemusíme Možnost je matematicky i numeicky koektnější, neboť počítá hledanou hodnotu přímo a nezatěžuje výpočet chybou půběžného výpočtu pomocné hodnoty Tuto cestu ponecháme čtenáři jako domácí cvičení a ukážeme si možnost, kteá je tošku přehlednější Povedeme-li popsané úpavy a užijeme součtových vzoců, vede ovnice na tva ( π + ( + cos sin = π, nebo po úpavě π + cos sin = Tato ovnice není analyticky řešitelná, jediná možnost je řešení numeické Řešení budeme hledat ve třech kocích: gaficky učíme inteval, kde se hledaný kořen ovnice nachází použijeme statovací metodu na získání dostatečně kvalitní apoimace řešení použijeme metodu zpřesňovací π Načtněme nejdříve gaf Řešíme ovnici + cos sin =
Řešení nelineáních ovnic /*PI - sin( + *cos( y 75 5 5 5 5 75 5-5 Záponé hodnoty nás nezajímají, navíc hodnota ( ; π neboť se jedná o úhel (viz náčtek úlohy Jediné řešení ovnice, kteé má po naší úlohu smysl leží v intevalu I 5; 5 = [ ] Použijeme-li jako statovací metodu bisekci po takto stanovený počáteční inteval, obdžíme hodnoty Iteace k a k b k s f ( 5 5 875 > 875 5 875 < 875 875 5 < 875 5 955 < Funkce je difeencovatelná, můžeme tedy jako zpřesňovací metodu použít Newtonovou metodu Deivace funkce f ( = π + cos sin je f ( = sin Hodnoty získané Newtonovou metodou s počátečnou apoimací = 955 jsou uvedeny v tabulce Iteace k k 955 9584486 956957 9569579 4 9569579 9 Přesnost = 9569579 je k s k
Nyní dopočteme hledanou hodnotu poloměu z duhé ovnice = cos, 9569579 = cos 587847 Označme F ( = cos a A ( absolutní chybu, se kteou jsme získali hodnotu Potom absolutní chyba poloměu bude df A ( = A(, d tedy A( = sin A( Po dosazení vidíme, že řád chyby zůstává stejný, tedy 9 Odpověď Hospodář musí uvázat kozu na povázek dlouhý 587947 jednotky 4 Kontolní otázky, koespondenční úkol Kontolní otázky Učete numeicky největší záponý kořen ovnice sin + = s přesností δ = 8 Použijte kombinaci metody bisekce a Newtonovy metody Pacujte na desetinných míst Učete numeicky duhý nejmenší kladný kořen ovnice 5 ln sin = a metodou bisekce b metodou egula-falsi Výsledek zpřesněte na δ = 8 c metodou Newtonovou d metodou sečen Nalezněte pvní kladný kořen ovnice ln + = metodou bisekce a posté iteace Výsledek zpřesněte Newtonovou metodou
Řešení nelineáních ovnic Část po zájemce Pokuste se ozšířit metodu posté iteace po řešení soustavy nelineáních ovnic Řešte metodou posté iteace soustavu nelineáních ovnic sin y = (Pomůcka: použijte vyjádření 5 y = = ln y + sin y y = 5 ln y a jako počátečnou apoimaci vezměte vekto (, T Pokuste se ozšířit Newtonovou metodu po řešení soustavy nelineáních ovnic (Pomůcka: Zapíšeme-li soustavu ve tvau F ( =, deivace v iteačním předpisu přejde v tzv Jacobiovu matici F a je nulový vekto Načtněte řešení soustavy sin y = 5 y = ln y F i j, kde F i jsou složky Shnutí kapitoly Cílem této kapitoly bylo seznámení se základními numeickými metodami po řešení nelineáních ovnic a jejich vhodným použitím z hlediska výhod a nevýhod, jakož i pochopení pincipu iteačních metod, kteé se v numeice velice často objevují Pokud jste zvládli zpacovat algoitmy všech popsaných metod a vyřešili kontolní otázky, pokuste se samostatně vypacovat koespondenční úkol Koespondenční úkol Nepřímým měřením se zjišťovala hodnota a pomocí hodnot, y přičemž funkční y závislost a = a(, y byla a = + e, kde hodnota byla získána jako y kladný kořen ovnice e ( = Hodnota y = 77± 5 Diskutujte použití alespoň tří postupů ůzných metod vzhledem k faktu, že hodnotu a potřebujeme získat s přesností ε Poté spočtěte hledanou hodnotu a s přesností ε = každým z uvedených postupů Diskutujte možnosti zpřesnění tohoto měření
4
Řešení soustav lineáních ovnic 5 Ř EŠENÍ SOUSTAV LINEÁRNÍCH ROVNIC V této kapitole se dozvíte: jak numeicky řešit soustavy lineáních ovnic; co jsou metody příme, jakou oli haje výbě hlavního pvku a kdy je nutno ho použít; jak využít tyto metody k numeickému výpočtu inveze matic; jak pacují metody iteační; jak využít speciálního tvau matice soustavy k numeickému řešení Budete schopni: numeicky vyřešit soustavu lineáních ovnic metodami přímými (Gaussovou eliminační metodou a metodou LU ozkladu a ozhodnout, zda je nutno použít metodu s výběem hlavního pvku, či nikoliv; řešit soustavu lineáních ovnic metodami iteačními; použít tyto metody po nalezení inveze matice Klíčová slova této kapitoly: matice soustavy, ozšířená matice soustavy,hlavní pvek eliminace, hlavní ovnice eliminace, metoda přímá, metoda iteační Čas potřebný k postudování učiva kapitoly: + hodin (teoie + řešení úloh Původce studiem V této kapitole popíšeme dvě třídy numeických metod řešení soustav lineáních ovnic, a to metody přímé a iteační Na konkétních příkladech pak ukážeme možnosti použití jednotlivých metod z hlediska jejich výhod a nevýhod Tato kapitola předpokládá základní znalosti z lineání algeby, případně teoie matic
6 Fomulace poblému Nechť a a a + a + a + a m m + + a n + + a n + + a n mn n = b = b n = b m je soustava m lineáních ovnic o n neznámých,, n Řešit soustavu lineáních ovnic znamená učit n-tici čísel,, n vyhovujících všem m ovnicím Označíme-li A = ( a ij, b = ( b,, b T m a = (,, T n, můžeme soustavu zapsat v maticovém tvau A = b Matice A se nazývá matice soustavy, sloupcový vekto b nazýváme vekto pavých stan a matici ( A b ozšířená matice soustavy Připomeňme, že soustava ovnic má řešení pávě tehdy, když hodnost matice soustavy je ovna hodnosti ozšířené matice soustavy h( A = h( A b Je-li m = n a matice A egulání (tj deteminant je nenulový, potom po daný vekto b eistuje pávě jedno řešení soustavy A = b, tzv teoetické (přesné řešení t = A b Je-li h ( A = h( A b < n má soustava ovnic nekonečně mnoho řešení, tzv obecné řešení, ve tvau nh( A = + α, po libovolné čísla α i, kde je řešení nehomogenní soustavy a u i jsou lineáně nezávislé vektoy, tzv řešení příslušné homogenní soustavy Numeické metody řešení soustav lineáních ovnic dělíme do dvou skupin, na metody přímé (finitní iteační (přibližné Metody přímé jsou takové, kteé pokud pomineme chyby zaokouhlovací, vedou k teoetickému, přesnému řešení Metody iteační konstuují iteační posloupnost přibližných řešení, po kteé chceme, aby konvegovala k řešení přesnému K chybě zaokouhlovací přistupuje navíc chyba metody U všech metod nás budou zajímat především tři věci Rychlost metody- tedy počet potřebných aitmetických opeací, požadavky na paměť počítače a přesnost vypočteného řešení i= i u i
Řešení soustav lineáních ovnic 7 Metody přímé Gaussova eliminační metoda Jedna z nejstaších a nejznámějších metod řešení soustav lineáních ovnic je Gaussova eliminační metoda Je založená na vlastnosti, že ekvivalentní úpavy matice (tedy násobení řádku nenulovým číslem, přičtení někteého řádku k jinému nemají na řešení vliv- řešení soustavy zůstává stejné Metoda postupuje tak, že ozšířenou matici soustavy upavuje ekvivalentními maticovými úpavami až do tvau tojúhelníkového (nejčastěji honího a poté substitucí (zpětnou dopočte řešení Ukažme si tento postup na konkétním příkladě Příklad Řešte soustavu 5 = + = + = + Řešení: Rozšířená matice soustavy bude ( = 5 b A, tuto matici budeme upavovat na honí tojúhelníkový tva tak, že pomocí pvku na pozici hlavní diagonály = a vhodným vynásobením pvního řádku a přičtením ke zbylým řádkům vyloučíme pvky na pozicích = a a = a, čili pvky pvního sloupce ležící pod hlavní diagonálou Pvní řádek vynásobíme číslem (tzv multiplikátoem a přičteme k řádku duhému 9 5 5 a analogicky pvní řádek vynásobíme multiplikátoem a přičteme k řádku třetímu 4 9 5 9 5 Nyní se nám povedlo vyloučit- eliminovat- všechny pvky pvního sloupce pod hlavní diagonálou Povedli jsme tzv fázi eliminace
8 Stejným způsobem pokačujeme dále eliminací pvků duhého sloupce ležících pod hlavní diagonálou Opět pomocí pvku na diagonále a = (již naší upavené matice budeme vylučovat pvky pod diagonálou- v našem případě pvek a = Musíme tedy duhý řádek ponásobit multiplikátoem a přičíst ke třetímu 5 9 4 5 9 Realizací tzv fáze eliminace jsme matici převedli na honí tojúhelníkový tva Samotné řešení obdžíme zpětnou substitucí Z posledního řádku (představuje třetí ovnici dostáváme =, tedy =, dosadíme do duhého řádku (ovnice 5 = 9, po vyčíslení =, a konečně dosazením do pvního řádku (ovnice + dostaneme = Řešení uvedené soustavy tří ovnic o třech neznámých je vekto ( T = =,, Poznámka Multiplikátoy příslušných fází eliminace jsou v podstatě podíly ( j a ij m ij = ( j a, kde jj j značí inde fáze eliminace, inde i příslušný řádek, ke kteému multiplikáto náleží a honí inde ( j u čísel a ij, čísla v příslušných pozicích matice vzniklé po ( úpavami se pvky matice mění a jj znamená, že se jedná o j -fázi eliminace (neboť V našem případě jsme měli multiplikátoy pvní fáze m =, m = a multiplikáto duhé fáze m = Označme L dolní tojúhelníkovou matici s jedničkami na diagonále a s pvky m pod diagonálou, v našem případě L = ij
Řešení soustav lineáních ovnic 9 Označme dále U honí tojúhelníkovou matici, vzniklou z matice A eliminací, tedy U = 5 Snadno lze ověřit, že platí LU = A Takový ozklad (na dolní a honí tojúhelníkovou matici, říkáme mu LU -ozklad matice, lze povést po každou čtvecovou matici A, po kteou deteminanty det A po k =,, n, kde A je matice typu ( k k k, sestavená ze společných pvků pvních k-řádků a k- sloupců matice A Budeme-li požadovat, aby matice L měla na diagonále jedničky, je ozklad jednoznačný k Algoitmus Gaussovy eliminační metody můžeme schématicky zapsat takto: ( T Vstup: n, ( ( A = a ij, ( ( b = a, n+,, a n, n+ (tedy ozšířená matice soustavy ( ( ( A b = a ij po i =,, n a j =,, n, n + Opakuj po k =,,, n Opakuj po i = k +, k +,, n ( k a ik m ik = ( k a ( Výstup: ( i U =, a ij kk Opakuj po j = k +, k +,, n, n + ( k ( k ( k a = + ij aij mikakj ( ( ( ( ( n y = a, n+, a, n+, a, n+,, an, n+ Gauss-Jodanova metoda Vaťme se zpátky k samotnému pocesu eliminace U Gaussovy eliminační metody jsme skončili eliminaci ve chvíli, kdy byla matice převedena na honí tojúhelníkový tva, tj byly vynulovány pvky pod hlavní diagonálou a samostatně jsme povedli zpětnou substituci Nic nám však nebání zahnout poces substituce, neboli dopočtení samotného řešení do pocesu eliminace Budeme-li pokačovat z honí tojúhelníkové matice eliminací tak, abychom dospěli až k matici jednotkové, potom řešení soustavy budou pvky na pozicích původních pavých stan v ozšířené matici soustavy Ukažme si to na předchozím příkladě Gaussovou eliminační metodou jsme převedli ozšířenou matici soustavy na tva
4 9 5 Pokačujme nyní v eliminaci dále Nejdříve vynulujeme pvky duhého sloupce ležící nad hlavní diagonálou K pvnímu řádku přičteme -násobku řádku duhého 9 5 9 5 Nyní vynulujeme pvky třetího sloupce ležící nad diagonálou, k pvnímu řádku přičteme 5 -násobku třetího řádku a ke duhému přičteme -násobku třetího řádku 6 9 5 Matice je ve tvau diagonálním, můžeme jí tedy upavit na jednotkovou vhodným vynásobením každého z řádků: pvní řádek není nutno upavovat, duhý řádek vynásobíme a třetí řádek číslem : 6 Matice soustavy je ve tvau jednotkovém, řešení soustavy se objevilo na pozici vektou pavých stan, neboť jednotlivé řádky ozšířené matice představují ovnice = = = Tato modifikace Gaussovy eliminační metody se nazývá Gauss-Jodanova metoda Přednosti jsou především v tom, že jí lze snadno použít k řešení maticových ovnic B AX =, kde A je matice typu ( n m,, B je typu ( m, a řešení X je matice typu ( n, Taková maticová ovnice představuje řešení soustav m lineáních ovnic o n neznámých Tuto metodu lze také použít po stanovení řešení nedoučené soustavy lineáních ovnic (míň ovnic než neznámých
Řešení soustav lineáních ovnic 4 Příklad Řešte soustavu ovnic: = + = + Řešení: Hodnost matice soustavy a ozšířené matice soustavy jsou ( ( = = b A h A h, tedy řešení bude ve tvau u + α =, po libovolné R α Rozšířenou matici soustavy musíme upavit, abychom mohli naleznout řešení a to tak, že nulu na diagonále v posledním řádku nahadíme jedničkou a přidáme k vektou pavých stan další sloupcový vekto ( T,,, tedy Tuto soustavu řešíme Gauss-Jodanovou metodou 4 4 7 4 7 4 4 7 4 4 Sloupcový vekto T, 4, 4 7 představuje řešení nehomogenní soustavy a vekto ( T,, řešení u příslušné homogenní soustavy Obecné řešení nedoučené soustavy je ve tvau ( T T,,, 4, 4 7 + = α Je zřejmé, že obě eliminační metody jsou metody přímé, tedy vedou ke zcela přesnému řešení V obou uvedených případech jsme pacovali po jednoduchost s čísly celými a bez zaokouhlování V pai se však setkáváme se soustavami daleko většími a chceme-li pacovat na konečný počet desetinných míst, jsme nuceni zaokouhlovat Uvědomíme-li si,
4 kolik aitmetických opeací zahnuje poces eliminace, je na místě otázka, jak se malá chyba ve vstupních datech pojeví na výstupu Předpokládejme, že matice soustavy je A, kteá má ozklad A = LU Vlivem ~ zaokouhlování však eliminací získáme matice L, U ~ odpovídající jiné matici ~ ~ ~ ~ A = LU Tedy získané řešení odpovídá soustavě s maticí A, nikoliv soustavě s maticí A Zajímá nás ozdíl A A ~ Předpokládejme, že matice U ~ se liší od matice U o matici chyb E, a podobně matice L ~ od matice L o chybovou matici F, tedy ~ U = U + E ~ L = L + F Potom platí ~ ~ ~ A A = LU LU = LU ( U + E( L + F = UF + LE + EF, což znamená, že pokud budou pvky matice L (multiplikátoy nebo pvky matice U příliš velká čísla (co do absolutní hodnoty, bude ozdíl A A ~ mnohonásobně větší než vstupní chybové zatížení E nebo F a samotné řešení tudíž špatné Za etém lze považovat případ, kdy metodu v tomto tvau nelze použít vůbec, a to když v někteé fázi eliminace je diagonální pvek ( k a kk =, potože ( k a ik multiplikáto je m ik = ( k a a víme, že nulou dělit nelze (můžeme to chápat i kk tak, že multiplikáto by byl nekonečno V těchto případech říkáme, že algoitmus je nestabilní a jsme nuceni ho modifikovat Eliminace s výběem hlavního pvku Pvek, jehož postřednictvím vybíáme multiplikáto k-té fáze (a pomocí něhož nulujeme ostatní pvky v příslušném sloupci nazýváme hlavní pvek (pivot k-té fáze Rovnice (příslušný řádek matice, z níž vybíáme hlavní pvek k- té fáze nazýváme hlavní ovnice k-té fáze V Gaussově eliminační metodě popsané v předchozím odstavci jsme za hlavní pvek vybali vždy automaticky pvek diagonální, pováděli jsme tzv eliminaci bez výběu hlavního pvku Nyní bude naší snahou vybíat hlavní pvek tak, aby multiplikátoy byly co nejmenší čísla, tedy budou to pvky co do absolutní hodnoty největší Výbě hlavního pvku můžeme povádět v k-té fázi ze všech pvků matice, vzniklé vynecháním řádků a sloupců, kteé obsahovaly hlavní pvky předchozích fází, tzv eliminace s úplným výběem, nebo pouze z někteých pvků, tzv eliminace s částečným výběem a řádkovým, pokud v k-té fázi eliminace vybíáme za hlavní pvek ten, kteý má největší absolutní hodnotu z těch pvků k-tého řádku patřícím
Řešení soustav lineáních ovnic 4 zbývajícím n k + sloupcům, kteé do k-té fáze neobsahovaly hlavní pvek předchozí fáze b sloupcovým, pokud v k-té fázi eliminace vybíáme za hlavní pvek ten, kteý má největší absolutní hodnotu z těch pvků k-tého sloupce patřícím zbývajícím n k + řádkům, kteé nebyly do k-té fáze hlavními řádky Příklad Řešte Gaussovou eliminační metodou s výběem a řádkovým b sloupcovým c úplným soustavu + = + = + = 6 Řešení: a V fázi vybíáme pvek s největší absolutní hodnotou z pvků řádku, tedy ma(,, Všechny pvky mají stejnou absolutní hodnotu, vybeeme tedy ten, kteý má nejmenší sloupcový inde, tj pvek v pozici a = a povedeme eliminaci 4 6 4 6 5 Ve fázi eliminace vybíáme s největší absolutní hodnotou z pvků řádku, komě sloupce, potože již obsahoval v předchozí fázi hlavní pvek, tedy ma 4, 6 Hlavní pvek bude pvek v pozici a = 6 Povedeme eliminaci ( 4 6 4 4 6 4 5 4 8 Vhodným přeindeováním sloupců můžeme matici přepsat do tojúhelníkového tvau Zpětnou substitucí dostaneme, =, = = b V fázi vybíáme pvek s největší absolutní hodnotou z pvků sloupce, ma,,, tj pvek v pozici a a povedeme eliminaci tedy ( 4 4 6 9 Ve fázi eliminace vybíáme s největší absolutní hodnotou z pvků sloupce, komě řádku, potože již obsahoval v předchozí fázi hlavní pvek, tedy =
44 ( 4, ma Hlavní pvek bude pvek v pozici a = Povedeme eliminaci 4 4 4 4 5 5 9 9 Vhodným přeindeováním řádků můžeme matici přepsat do tojúhelníkového tvau Zpětnou substitucí dostaneme =, =, = c V fázi vybíáme pvek s největší absolutní hodnotou ze všech pvků ma(,,,,,,,,, opět je několik pvků stejných Vybeeme ten s nejmenším indeováním, tj pvek v pozici a = a povedeme eliminaci 4 4 6 9 Ve fázi eliminace vybíáme s největší absolutní hodnotou z pvků matice, komě řádku a sloupce, potože již obsahovaly v předchozí fázi hlavní pvek, tedy ma( 4,,, Hlavní pvek bude pvek v pozici a = Povedeme eliminaci 4 4 4 4 5 5 9 9 Zpětnou substitucí dostaneme řešení =, =, = Poznámka Při ozhodování, zda použít Gaussovou eliminační metodu s výběem hlavního pvku, nebo bez výběu mějme pořád na paměti, že pokud budeme hlavní pvek vybíat, potom komě aitmetických opeací samotné eliminace je počítač nucen povést sovnání pvků a výbě největšího co do absolutní hodnoty, a to v každém koku eliminace, což je po větší soustavy časově velice náočné Je poto vždy potřeba zvážit, zda je nutný výbě pvku, a pokud ano, zda postačí pouze výbě řádkový, esp sloupcový, nebo je-li nutný výbě úplný