1 / 45

Cvičenia

Cvičenia. Metódy numerickej matematiky I Odhady chýb pri numerickom výpočte Riešenie nelineárnych rovníc Systémy lineárnych rovníc. Matematický model, numerická metóda. Veda: ľudská činnosť zameraná na pochopenie akýchkoľvek pozorovaných javov.

kendall
Download Presentation

Cvičenia

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cvičenia Metódy numerickej matematiky I Odhady chýb pri numerickom výpočte Riešenie nelineárnych rovníc Systémy lineárnych rovníc

  2. Matematický model, numerická metóda Veda: ľudská činnosť zameraná na pochopenieakýchkoľvek pozorovaných javov • existujúce teórie verifikujeme experimentmi, treba ich naplánovať • (napr. sú veľmi nákladné) • v mnohých prípadoch experimenty nie je možné vykonať: • podmienky (energie, teploty, tlaky, rozmery, ...) • nie je možné zrealizovať v laboratóriu • treba predpovedať výsledky experimentovbez realizácie samotného experimentu • chceme hlbšie spoznať fyziku, ktorú • nám teórie popisujú

  3. Matematický model, numerická metóda • Matematický model sú rovnice vystihujúce základné vlastnostifyzikálneho systému prostredníctvom premenných popisujúcich systém • cieľ je, aby sme riešením rovníc matematického modelu dostali • predpoveď výsledkov experimentu • rovnice môžu byť veľmi zložité, analyticky neriešiteľné, • preto používame numerické metódy • Numerická metóda • nahradí zložitejšiu úlohu postupnosťou jednoduchších, • ktoré umožňujú výsledok získať s určitou presnosťounapr. transformuje rovnice platné pre spojitý systém na systém algebraických rovnícdiskrétneho modelu, ktoré sa riešia na počítači

  4. Matematický model, numerická metóda Numerická matematika časť matematiky, ktorá vyvíja, analyzuje a aplikuje metódy výpočtov s číslami s konečnou presnosťou Numerická úloha- úloha numericky riešiť rovnice (väčšinou získané aproximáciou získanou zahrnutou v numerickej metóde) predpokladáme, že rovnice jednoznačne špecifikujú vzťah medzi vstupnými a výstupnými veličinami Algoritmus numerickej úlohy(po diskretizácii matematického modelu) špecifikácia konečnej postupnosti operácií, ktorou z vstupných údajov vypočítame výsledky ( toto nepatrí do samotného algoritmu numerickej metódy ale súvisí s ním: ) Pre- a post-processingdáta - vstupy a výstupy - môžeme z rôznych dôvodov pred alebo po výpočte upravovať preprocessing – pred aplikovaním numerického algoritmupostprocessing – po aplikovaní numerického algoritmu

  5. Zdroje a typy chýb pri numerickom riešení získame vždy približné hodnoty aby získané hodnoty mali výpovednú hodnotu, potrebujeme vedieť, ako presne sme ich vypočítali chyba výsledku – rozdiel medzi získanou a “skutočnou” hodotouvo fyzikálnom systéme (pričom skutočná hodnota (presné číslo) je hodnota existujúca len v našej abstrakcii, skutočná hodnota musí byť chápaná v zmysle: určená na základe nekonečného počtu meraní) hlavné príčiny vzniku chyby: (matematický model– konštrukcia zahŕňa zjednodušenia) numerická metóda – aproximovanie rovníc modelu dáta – neurčitosti (neistoty) ich hodnôt (- konečný počet meraní) reprezentácia čísel – použitie čísel s konečným počtom cifier aritmetické operácie (+, x, –, /)

  6. Zdroje a typy chýb model budeme pri aplikovaní numerickej metódypovažovať za presný chybu vznikajúcu použitím aproximácie v numerickej metódeodhadneme (obyčajne sa dá urobiť analyticky) neistoty v dátach a chyby vznikajúce pri reprezentácii čísel budúvykonaním aritmetických operácií spolu interagovať – budemesa snažiť odhadnúť odhadnúť ich vplyv na chybu výsledku model: dáta: p = 10.13± 0,01 kPa, n = 1.31± 0,01 mol,T = 273.8± 0,3K numerická metóda: hľadanie koreňov kubickej rovnice numerická úloha: nájsť koreň: V (iteratívne) reprezentácia čísel: použitápresnosť čísel (zaokrúhľovanie) chyby ar. operácií: x, /, +, -, (odmocnina)

  7. Príklad – chyba numerickej metódy Chyba numerickej metódy vzniká pri aproximovaní rovníc modelu, získame jednoduchšiu, numericky riešiteľnú úlohou Odhad tejto chyby je dôležitou súčasťou riešenia (analyticky) Príklad: Výpočet hodnoty funkcie sin1sčítaním konečného počtu členov Taylorovho rozvoja pre x = 1. Je známe, že sčítaním prvých n členov postupnosti sa dopustíme chyby veľkosti najviac (alternujúci rad – skúste si ukázať) pre x> 1 platí od istého n

  8. Definície chýb za predpokladu, že poznáme presné riešenie (čo je veľmi zriedkavý prípad) absolútna chyba aproximácie relatívna chyba vo väčšine prípadov používame odhady chýb - neistoty v určení veličín odhad absolútnej chyby = každé nezáporné číslo (neistota určenia x) odhad relatínej chyby = každé nezáporné číslo (relatívna neistota určenia x)

  9. Šírenie chýb aj pokiaľ nepoužijeme žiadnu numerickú metódu – zjednodušenie úlohy, samotný výpočet výsledku zo vzorca zo zadaných vstupných hodnôt s neistotami bude mať neistotu dôležitý je odhad absolútnej ale aj relatívnej chyby (relatívna neistota často indikuje zhoršenie presnosti aj keď absolútna neistota sa nezmení) odhad absolútnej chyby výsledku odhad relatívnej chyby výsledku relatívna chyba x

  10. Šírenie chýb pri výpočte potom pre rozdiely dostávame Pri odčítaní dvoch blízkych čísel dochádza k strate platných cifier Príklad: takže má jednu platnú cifru, zatiaľ čo aj majú štyri platné cifry.

  11. Šírenie chýb pri výpočte Pri odčítaní dvoch blízkych čísel dochádza k strate platných cifier 49.98949 50.01848 00.02899 49.99000 50.02000 00.03000 00.00051 00.00152 00.00101 Príklad: náš odhad absolútnej chyby: absolútna chyba sa nezhorší, relatívna podstatne platné cifry sa odčítali

  12. Zaokrúhľovacie chyby • pri numerických výpočtoch vždy pracujeme s číslami zaokrúhlenými na určitý počet desatinných miest(číslicové počítače: nutnosť)- pri výpočte po každej aritmetickej operáciivýsledok zaokrúhlený • prvé verzie počítačov prebytočné desatinné miesta • iba odstraňovali, samozrejme, že je to menej presné, • snaha presadiť lepšiu manipuláciu s číslami viedlak zavedeniu IEEE štandardu 754 • zaokrúhľovanie môže spôsobiť kumulovanie chýb ale aj ich eliminovanie • výpočty sa snažíme robiť tak,aby chyby v reprezentácii čísel boli zanedbateľnévoči neistotám vstupných dát

  13. Zaokrúhľovanie kvantizácia: číslo nahradíme blízkym s menším počtom cifierzmysel: menšie nároky na pamäť zisťovaniepočtu platných (significant) cifier 12.1231 12.1200 00.0031 nájdeme najmenšie číslo tvaru 5.10-k, ktoré je väčšie (≥) ako rozdiel 00.0031 < 00.0050 všetky cifry pred miestom, kde je 5 sú platné, preto máme 4 platné cifry, 2 platné desatinné miesta • nezaokrúhlené číslo • zaokrúhlené • rozdiel

  14. Zaokrúhľovanie platnécifrydesatinnémiesta

  15. Šírenie chýb pri výpočte zápis 10.2324 znamená: 10.2324 ± 0.00005(všetky cifry čísla považujeme za platné) Vypočítajte (ako najpresnejšie sa dá): 3.45 + 4.87 - 5.16 3.55 x 2.73 8.24 + 5.33 124.53 - 124.52 4.27 x 3.13 9.48 x 0.513 - 6.72

  16. Šírenie chýb pri výpočte Vypočítajte (ako najpresnejšie sa dá): 3.45 + 4.87 - 5.16 = 3.16 ± 0.015 (3.145,3.175) 3 1S 3.55 x 2.73 = 9.6915 ± 0.0314 (9.6601, 9.7229) 9.7 2S 8.24 + 5.33 = 13.57 ± 0.01 (13.56, 13.58) 13.6 3S 124.53 - 124.52 = 0.01 ± 0.01 (0, 0.02) 0S 4.27 x 3.13 = 13.3651 ± 0.037 (13.3281, 13.4021) 13 2S 9.48 x 0.513 - 6.72 = -1.85676 ± 0.012305(-1.869065, -1.844455) -2 1S (1S znamená 1 platná cifra)

  17. Reprezentácia čísel v počítači základ číselnej sústavy presnosť rozsah exponentu Každé číslo  má tvar kde Binárna sústava:

  18. Reprezentácia čísel v počítači 1.6250 +0.3125 menší exponent bit shift 2 doprava 1.9375

  19. Reprezentácia čísel v počítači nula UFL (UnderFlow Level) (najmenšie reprezentovateľné č.) OFL (OverFlow Level) (najväčšie reprez. č.) • Ďalšie binárne reprezentácie v IEEE štandarde: • INF pre výraz typu +∞ (napr. výsledok operácie 1/0 ) • -INF pre výraz typu –∞ (napr. výsledok operácie – 1/0 ) • NAN not a number (napr. výsledok operácie 0/0 ) • UFLs subnormálne čísla vyskúšajte si bitviewer (http://www.fyzikazeme.sk/mainpage/stud_mat/menm/BITVIEW.EXE)

  20. Štandard IEEE Počítačová aritmetika podľa štandardu IEEE:Výsledok aritmetickej operácie vykonanej v počítači je rovnaký ako keď operáciu vykonáme presnea potom získaný výsledok vložíme do počítača (dá sa zaručiť správnym zaokrúhľovaním) Ak je absolútna hodnota výsledku aritmetickej operácie väčšia ako OFL dochádza k tzv.pretečeniu (overflow, výsledok je INF). Ak je absolútna hodnota výsledku aritmetickej operácie menšia ako UFL (resp. UFLs) dochádza k tzv.podtečeniu (underflow, výsledok je -INF).

  21. Štandard IEEE • Dôsledky používania floating point aritmetiky: • pripočítanie malého nenulového čísla nemusí mať žiadny účinok5.18 x 102 + 4.37 x 10-1 = 5.18 x 102 + 0.00437 x 102 =5.18437 x 102 =(zaokrúhlenie)= 5.18 x 102strojové epsilon: najväčšie číslo ε, pre ktoré platí 1 + ε = 1ukazuje aj, akýje počet platných cifier (v príklade je to 7) • preto sú vo fortrane štandardne real(4) číslavypisované na 6 desatinných miest

  22. Štandard IEEE • Dôsledky používania floating point aritmetiky: • multiplikatívna inverzia nemusí existovaťa x 1/a ≠ 1 : 3.000 x 0.333 = 0.999 (bez zaokrúhľovania)zaokrúhľovanie chybu vreprezentácii odstráni: • podobná situácia môže nastať aj pri sčítaní:

  23. Štandard IEEE • Dôsledky používania floating point aritmetiky: • asociatívnosť nemusí platiť(a + b) + c ≠ a + (b + c)a = 6.31 x 101, b = 4.24 x 100, c = 2.47 x 10-1(6.31 x 101 + 0.424 x 101) + 2.47 x 10-1 =6.73 x 101 + 2.47 x 10-1 = 6.73 x 101 + 0.0247 x 101 = 6.75 x 1016.31 x 101 + (4.24 x 100 + 0.247 x 100) =6.31 x 101 + 4.49 x 100 = 6.31 x 101 + 0.449 x 101 = 6.76 x 101 • strata platných cifier

  24. Podmienenosť numerických úloh a numerická stabilita algoritmov Príklady: 1. Korene kvadratickej rovnice ( štandardný prístup priameho výpočtuzo vzorca môže produkovať pri odčítaníblízkych čísel chyby, lepšie: pomocou Vietových vzťahov )

  25. Podmienenosť numerických úloh a numerická stabilita algoritmov 2. Výpočet integrálu ( rekurencia od n= 0 nahor nedáva stabilný algoritmus, presnejší je výpočet od dostatočne veľkého n )

  26. Niečo z funkcionálnej analýzy pevný bod zobrazenia , ak platí Na čo je to dobré? – Ak riešime rovnicu , môžeme ju prepísaťna tvar dostaneme úlohu o hľadaní pevného bodu pre , riešenie je koreňom: (za predpokladu, že )

  27. Niečo z funkcionálnej analýzy • Metrický priestor • množina, na ktorej vieme merať vzdialenosti prvkov • vzdialenosť je nezáporná, ak je nulová, sme na tom istom mieste • najkratšia cesta je priama, inak ideme „okľukou“ konvergencia: nech vyberieme akúkoľvek malú vzdialenosť e, ak sa pozrieme dosť ďaleko, všetky nasledujúce prvky sú už k limitnej hodnote bližšie ako e cauchyovskosť: nech vyberieme akúkoľvek malú vzdialenosť e, ak sa pozrieme na prvok dosť ďaleko, všetky nasledujúce prvky sú už k tomuto prvku bližšie ako e tieto dve definície hovoria to isté ak to, k čomu postupnosť konverguje patrí do našej množiny (úplný metrický priestor)

  28. Niečo z funkcionálnej analýzy zobrazenie je kontraktívne: obrazy dvoch prvkov sú bližšie ako vzory Banachova veta o pevnom bode – hovorí, že existuje jediné ak je kontraktívne teda postupnosť sa k limite rovnomerne približuje

  29. Hľadanie koreňov nelineárnych rovníc pevné body zobrazenia ako sa ukáže, úloha o pevných bodoch sa dá riešiť (a tým realizujeme hľadanie koreňa), ak skonštruujeme kontraktívne zobrazenie umožňuje nám to vytvoriť postupnosť (cauchyovskú) ktorá konverguje k pevnému bodu (= ku koreňu pôvodnej rovnice)

  30. Hľadanie koreňov nelineárnych rovníc pretože g má byť kontraktívne: teda derivácia musí byť z intervalu to zaručuje, že je kontraktívne - nutne konverguje k niektorémupevnému bodu konvergovať však môže aj inde (ale nie je to zaručené)

  31. Hľadanie koreňov nelineárnych rovníc IQI - inverse quadratic interpolation

  32. Dosiahnuteľná presnosť ak derivácia má malé hodnoty v blízkosti koreňaa naša vertikálna rozlišovacia schopnosť je limitovaná,je aj lokalizácia koreňa limitovanápri násobných koreňoch je derivácia nulová v x*,vyššie derivácie môžu byť taktiež:hovoria o vyšších krivostiach krivky – čím vyšší rád,tým je funkcia dlhšie v blízkosti osi x

  33. Hľadanie koreňov v komplexnej rovine úlohu nájsť korene rovnice možno riešiť metódou jednoduchých iterácií: úplne analogicky ako v jednorozmernom prípadeznázornenie oblasti a rýchlosti konvergencie vediena Mandelbrotov fraktál a Juliove množiny

  34. Hľadanie koreňov v komplexnej rovine komplexné číslo cmožno ľubovoľne zvoliť(podľa toho sa mení tvar fraktálu) počiatočnú hodnotu z0 volíme postupne tak,že mapujeme vybranú časť komplexnej rovinyt.j. podľa polohy pixelu na obrázku začneme iterovať a kontrolujeme výstupnú podmienku(či ešte nie sme v oblasti divergovania metódy – v tomto prípadeto nastane, ak vzdialenosť zk od počiatku je väčšia ako 2) podľa toho, aký počet iterácií je potrebný na dosiahnutievýstupnej podmienky, dostane daný pixel farbu pre body patriace do množiny výstupná podmienkanebude splnená ani po nekonečnom počte iterácií

  35. Hľadanie koreňov v komplexnej rovine komplexné číslo c je zvolené podľapozície pixelu počiatočnú hodnotu z0 volíme 0+0 i, rovnako sa kontroluje výstupná podmienka- vzdialenosť zk od počiatku je väčšia ako 2 farbu pixelu určujeme rovnako, ako pri Juliovej množine vyskúšajte si applet fractal (http://www.fyzikazeme.sk/mainpage/stud_mat/menm/fraktal.htm)

  36. Hľadanie koreňov v komplexnej rovine je možné použiť ajNewtonovu metódu zobrazená rýchlosťkonvergencie je opäťfraktál (čím tmavšiafarba, tým pomalšia) daná rovnica sú vlastnedve rovnicepre dve neznáme (Re a Im časť)

  37. Riešenie systému nelineárnych rovníc Newtonova metóda (Taylorov rozvoj pre funkciu viac premenných) je jakobián transformácie: v každom krokusa vypočíta veľkosť opravy (lineárny systém)a pripočíta sa k aktuálnemu vektoru riešenia

  38. Riešenie systému nelineárnych rovníc Newtonova metóda zadefinujeme si počiatočný odhad – vektor (1, 3) V cykle riešime a opravujemeaktuálny vektor riešenia po troch iteráciách máme výsledok na 6 platných cifier program vo výpočtovom prostredí Mathematica

  39. Riešenie systému lineárnych rovníc lineárne systémy sa vyskytujú veľmi často,je vhodné mať pre ne špeciálne prispôsobené efektívne metódy riešenia priame metódy: eliminovanie, vyjadrenie(použiteľné pre relatívne malé systémy) iteratívne metódy: dostatočne presná aproximácia(presnosť určuje potrebný počet iterácií) A je štvorcová nesingulárna matica

  40. Gaussova eliminácia najdôležitejší predstaviteľ priamych metód je Gaussova elimináciapostup:1. ekvivalentnými úpravami získať systéms hornou trojuholníkovou maticou (priamy chod)2. postupne vypočítať neznáme (spätný chod) veľmi užitočné sa ukazuje vyberať hlavné prvky(prvky na diagonále) v každom kroku tak, aby boli čo najväčšie – dosiahnuť to možno výmenou riadkov pred každým eliminovaním(čiastočný výber hlavného prvku), – zaručuje to, že riešenie neznehodnotia zaokrúhľovacie chyby bez výberu hlavných prvkov je Gaussova eliminácia použiteľnálen pre špeciálne matice:rýdzo diagonálne dominantná, pozitívne definitná

  41. Gaussova eliminácia – LU dekompozícia v prípadoch, kedy je potrebné riešiť sústavu opakovanepre rôzne pravé strany: LU dekompozícia priamy chod: získanie hornej a dolnej trojuholníkovej maticea permutačnej matice spätný chod: najskôr vypočítame y, potom hodnoty neznámej x riešením sústav výpočet riešenia pre viaceré pravé strany je možnéurobiť analogicky ako v prípade jednej – vektory budú teraz matice

  42. Gaussova eliminácia – LU dekompozícia LU dekompozícia zadefinujeme si maticu permutačný vektor hľadanie pivota a zámena riadkov vlastné eliminovanie ukladanie prvkov dolnej trojuholníkovej matice Potom pomocou p vypočítame z (poprehadzujeme prvky b) a z vyriešených sústav získame vyjadrením x

  43. Gaussova eliminácia – LU dekompozícia aplikácie:výpočet determinantu (súčin diagonálnych prvkov, znamienko)výpočet inverznej matice (b bude jednotková matica) špeciálne algoritmy pre riedke matice (pásová matica – tridiagonálna) vo všeobecnosti dostaneme použitím Gaussovej elimináciemalé rezíduum: nemusí to však znamenať, že riešenie je blízke presnému riešeniu vzťah: veľkosť rezídua – veľkosť chyby riešenia možno charakterizovať pomocou čísla podmienenosti matice: (A)

  44. Podmienenosť sústavy podmienenosť sústavy je ekvivalentná podmienenosti matice sústavy číslo podmienenosti: maximálne a minimálne relatívne predĺženie pri zobrazení vektora maticou A pokiaľ poznáme číslo podmienenosti, umožňuje nám to odhadnúť relatívnu chybu riešenia

  45. Podmienenosť sústavy takže malá hodnota čísla podmienenosti spôsobuje, že malé reziduum zabezpečí malú relatívnu chybu riešenia sústavu považujeme za dobre podmienenú, ak podmienka porušená – sústava zle podmienená

More Related