Numerické metody

Editovat
Note

Iterativní metody pro řešení nelineárních rovnic (Newtonova metoda a její modifikace). Přímé metody pro řešení systému lineárních rovnic (Gaussova eliminace, Jacobi, Gauss-Seidel, relaxační metody). Numerická diferenciace, diferenciační schémata.

MA018

Numerická analýza / numerical analysis

Oblast matematiky / informatiky zabývající se tvorbou numerických metod a algoritmů, které řeší problémy matematické analýzy (např. derivace, integrály a podobný symbolický balast) pomocí numerické aproximace. [2]

Je výhodná v situacích, kdy problém nelze řešit analyticky nebo je to příliš složité a není to (výpočetní) čas.

Notace chyb
  • je přesná hodnota,

  • je aproximace ,

  • je absolutní chyba ,

  • je odhad absolutní chyby,

  • je relativní chyba,

  • je odhad relativní chyby.

Numerická stabilita

Schopnost numerické metody zpracovat chyby vstupních dat a výpočetních operací.

Desetinná čísla jsou v počítačích nevyhnutelně reprezentována nepřesně. Numericky stabilní metody jsou takové, které tyto nepřesnosti nezhoršují. [15]

Řád metody / order of accuracy / order of approximation

Hodnota reprezentující, jak rychle metoda konverguje k výsledku, resp. jak přesný je její odhad.

Numerická metoda obvykle konverguje snižováním nějakého kroku . Pokud ho lze zvolit libovolně malý, a lze-li prohlásit, že pro chybu aproximace platí: [4] [16] [17]

kde je konstanta. Pak je řád metody.

Iterativní metody pro řešení nelineárních rovnic

Root-finding problem

Problém nalezení kořenů (root) funkce . T.j. takových parametrů , kde funkce vrací 0: [3]

Iterative methods for root-finding problem

Metody pro řešení root-finding problemu, které využívají iterativního přístupu. Tedy opakují nějaký výpočet a zpřesňují svůj odhad, dokud nedosáhnou požadované přesnosti. [1] [3]

Řád metody / rate of convergence

Hodnota reprezentující, jak rychle metoda konverguje k výsledku. [4]

Prostá iterační metoda / metoda pevného bodu / fixed-point iteration

Používá se pro rovnice typu .

  1. Zvolíme počáteční odhad .

  2. Opakujeme dokud (kde je požadovaná přesnost).

    szp02 fixed point method
Newtonova metoda / metoda tečen

Používá k odhadu kořene funkce její tečnu v bodě . Iterační funkce je:

  1. Zvolíme počáteční odhad .

  2. Další odhad je , tedy průsečík tečny fukce v bodě s osou .

  3. Opakujeme 2. dokud nedosáhneme požadované přesnosti odhadu.

    szp02 newton method
Metoda sečen / secant method

Používá k odhadu kořene funkce sečny, resp. finite difference, které aproximují derivaci funkce . Díky tomu není potřeba znát derivaci funkce . Iterační funkce je:

szp02 secant method
Metoda regula falsi

Je bracketing metoda, tedy metoda, která využívá intervalu, ve kterém se nachází kořen. Nemusí se použít iterativně, ale v iterativní podobě tento interval postupně zmenšuje. [5]

kde je největší index takový, že .

Přímé metody pro řešení systému lineárních rovnic

Gaussova eliminace

Systém rovnice je přepsán do matice. Gaussova eliminace je posloupnost operací, jejichž cílem je převést matici do horní trojúhelníkové matice (row echelon form). [6] Povoleny jsou následující operace:

  • výměna dvou řádků,

  • vynásobení řádku nenulovou konstantou,

  • přičtení násobku jednoho řádku k jinému.

Jacobiho iterační metoda

Iterativní algoritmus pro řešení soustavy lineárních rovnic. Rozděluje vstupní matici lineárních rovnic na matici diagonál , dolní trojúhelníkovou matici a horní trojúhelníkovou matici . [7]

Nechť je systém lineárních rovnic. Tedy:

Algoritmus vypadá takto:

  1. Zvolíme počáteční odhad , nejčastěji .

  2. Nový odhad získáme ze vztahu:

Jelikož , dá to zapsat i jako:

Spektrální poloměr

Spektrální poloměr matice je největší absolutní hodnota vlastního čísla matice .

(Řádková) diagonální dominance

Matice je diagonálně dominantní, pokud platí:

Tedy absolutní hodnota prvku na diagonále je větší než součet absolutních hodnot všech ostatních prvků v řádku.

  • Striktní: nerovnost je ostrá ().

  • Slabá: nerovnost je neostá ().

Analogicky se definuje sloupcová diagonální dominance.

Konvergence Jacobiho metody

Jacobiho metoda konveguje pokud všechny následující podmínky:

  1. Nechť je matice iterace Jacobiho metody. Pak Jacobiho metoda konverguje, pokud:

  2. Jacobiho metoda konverguje pro libovolný počáteční odhad , pokud je diagonálně dominantní (sloupcově nebo řádkově).

Gaussova-Seidelova iterační metoda

Iterativní metoda pro řešení soustavy lineárních rovnic. Dělí vstupní matici na spodní trojúhelníkovou matici (včetně diagonály, tedy ) a striktně horní trojúhelníkovou matici (diagonála je nulová). Algoritmus vypadá takto: [8]

  1. Zvolíme počáteční odhad .

  2. Nový odhad získáme ze vztahu:

Alternativně:

Konvergence Gaussovy-Seidelovy metody

Analogicky jako u Jacobiho metody, ale místo matice se použije matice .

Relaxační iterativní metody

Modifikace Gauss-Seidelovy metody. Využívá parametr , který určuje, jak moc se má nový odhad lišit od předchozího. Vztah pro další iteraci se mění na: [9]

  • Pro se názývá metodou dolní relaxace. Je vhodná v případě, kdy Gauss-Seidel nekonverguje.

  • Pro je totožná s Gauss-Seidelem.

  • Pro se názývá metodou horní relaxace / SOR metodou. Zrychluje konvergenci Gauss-Seidela.

Dekompozice matic

Metody podobné Gaussově eliminaci, ale s vlastnostmi, které mohou být vyhodné.

LU dekompozice

Rozdělení matice na horní dolní trojúhelníkovou matici a horní trojúhelníkovou matici , tak že .

Je to v podstatě Gaussova eliminace. Matice je permutační matice, která prohazuje řádky:

Platí, že:

Původní problém řešení soustavy linárních rovnic se tedy převede na dva problémy:

Řešíme tedy dva systémy rovnic s trojúhelníkovými maticemi.

Oproti Gaussovi je výhodnější pro:

  • Opakované řešení soustav s maticí a různými pravými stranami .

  • Inverzi matice .

  • Výpočet determinantu matice .

QR dekompozice

Rozdělení matice na ortogonální matici a horní trojúhelníkovou matici (už ne ), tak že .

Protože je ortogonální a tedy .

Má lepší numerickou stabilitu než LU dekompozice.

Numerická diferenciace

Algoritmy numerické diferenciace (derivace) počítají odhady derivace reálných funkcí — aproximují . Využívají při tom známé hodnoty této funkce a jiné znalosti a předpoklady. [10]

Numerická diferenciace se využívá pro aproximaci differenciálních rovnic (převodem na diferenční rovnice).

Langrangeova interpolace

Pokud známe hodnoty můžeme mezi nimi interpolovat pomocí Lagrangeova polynomu a derivovat ten, protože derivovat polynomy je jednoduché.

Important
Lagrangeovu interpolaci řeší část otázky Křivky a povrchy.
Finite difference method

Rodina metod numerické diferenciace, které využívají konečné diference. Tedy approximují limitu v definici derivace malými posuny ve vstupních hodnotách diferenciovaných funkcí. [12]

Jednotlivým "odstínům" — konkrétním výpočetním vzorcům — téhle metody se říká diferenciační schémata.

Tip
Abych pravdu řekl, nepodařilo se mi najít zdroj pro konkrétní definici pojmu "diferenciační schéma".
(Konečné) diference prvního řádu / first-order (finite) differences

Nejjednodušší schéma numerické diferenciace. Vychází z definice derivace. [11]

  • Dopředná diference / forward (finite) difference

  • Zpětná diference / backward (finite) difference

  • Centrální diference / central (finite) difference

kde je kladné číslo napodobující nekonečně malou změnu (limitu) v definici derivace. Může to být konstanta, může ale být i zvoleno adaptivně.

Tip
Tečna je tak napodobena sečnou.
Richardson extrapolation

Způsob zlepšení rate of convergence iterativních metod. [13]