**Řešení nelineárních rovnic a jejich soustav. Metoda prosté iterace, podmínky konvergence, odhad chyby, rychlost konvergence. Newtonova metoda a její konvergence.** ### Nelineární rovnice Formulace problému - Je dána spojitá funkce $f: \mathbb{R} \to \mathbb{R}$ na intervalu $\langle a,b \rangle$. - Hledáme kořen rovnice $x \in \langle a,b\rangle$ takové, aby $f(x) = 0$. Metody řešení - **startovací metody** (vždy konvergují, ale většinou pomalu) - metoda bisekce (půlení intervalu) - metoda regula falsi - metoda prosté iterace - **zpřesňující metody** (konvergují rychleji, vyžadují dobrý odhad počáteční hodnoty) - Newtonova metoda - metoda tečen - **speciální metody** **Existence řešení** 1. reálná funkce $f$ je spojitá pro $x \in \langle a,b\rangle$ 2. platí $f(a) \cdot f(b) < 0$, existuje tedy alespoň jedno řešení $x$ rovnice $f(x) = 0$ na $\langle a,b\rangle$ ### Metoda prosté iterace (MPI) Princip - původní rovnici $f(x) = 0$ přepíšeme na tvar $x = \varphi(x)$ - to můžeme udělat spoustou způsobů - na volbě $\varphi$ závisí konvergence a její rychlost Algoritmus 1. zvolíme $x_{0} \in \langle a,b\rangle$ a $\epsilon > 0$ 2. $x_{k+1} = \varphi(x_{k})$ 3. zastavovací podmínka: $|x_{k+1}-x_{k}| < \epsilon$, pak $x = x_{k+1}$ - vzdálenost dvou po sobě jdoucích iterací - neříká nic o tom, jak jsme daleko od kořenu Volba $\varphi(x)$ - závisí na ní konvergence a rychlost metody - je vhodné, aby se fce $\varphi(x)$ co nejvíce blížila konstantní funkci - rada: začít s největší možnou odmocninou - u polynomu to bude fungovat vždy, u jiných fcí dobrá rada **Postačující podmínky konvergence MPI** - funkce $\varphi$ je spojitá na intervalu $I = \langle a,b\rangle$ a platí 1. funkce $\varphi$ zobrazuje $I$ do sebe - $\forall x \in I : \varphi(x) \in I$ 2. funkce $\varphi$ je kontrakce - $\exists \, q \in (0,1) : |\varphi(x)-\varphi(y)| \leq q|x-y| \quad \forall x,y \in I$e - tím si zajistíme, že každý další dílek je menší než ten předchozí - 2 po sobě jdoucí iterace jsou si k sobě čím dál blíž a blíž 1. v intervalu $I$ existuje právě jeden kořen $\alpha$ rovnice $x = \varphi(x)$ 2. posloupnost $\{x_{k}\}^\infty_{k=1}$ určená formulí $x_{k} = \varphi(x_{k-1})$ konverguje pro každé $x_{0} \in I$ k přesnému řešení - pozn: pokud by nebyla funkce spojitá, vůbec by nemusela projít skrz $y = x$ **Rychlost konvergence MPI** - pokud je funkce diferencovatelná, lze pomocí Taylorova polynomu zjistit rychlost konvergence - $\varphi'(\alpha) \neq 0 \implies$ rychlost konvergence je řádu 1 - $\varphi'(\alpha) = 0$ a $\varphi''(\alpha) \neq 0 \implies$ rychlost konvergence je řádu 2 **Odhad chyby MPI** - chyba = vzdálenost mezi přesným a získaným řešením ... $|x_{k} - \alpha|$ - $\displaystyle|x_{k}-\alpha| \leq \frac{q}{1-q}\epsilon$ - $|x_{k} - x_{k-1}| = \epsilon$ - kvůli absolutní hodnotě nevíme z jaké strany od přesného řešení jsme - chceme, aby chyba byla rovna zastavovací podmínce nebo menší - čím menší $q$, tím menší bude chyba - je možné jej vypočítat derivací $\varphi(x)$ ### Newtonova metoda Předpoklady - v intervalu $I = \langle a,b\rangle$ leží právě 1 jednoduchý kořen $\hat{x}$ rovnice $f(x) = 0$ - máme zadáno $x_{0} \in I$ - relativně blízko hledanému řešení - zpřesňující metoda - musí existovat derivace $f'$ funkce $f$ Postup - uděláme Taylorův rozvoj funkce $f$ v $x_{0}$ - $f(x) = f(x_{0}) + f'(x_{0})\cdot(x-x_{0}) + \frac{1}{2}f''(\xi)\cdot(x-x_{0})^2$ - dosadíme do $f(x) = 0$ - $f(x_{0}) + f'(x_{0})\cdot(x-x_{0}) = 0$ - $(x-x_{0})$ - předpis pro tečnu - vyjádříme $x$ - $\displaystyle x_{1} = x_{0} - \frac{f(x_{0})}{f'(x_{0})}$ - $\displaystyle x_{k+1} = x_{k} - \frac{f(x_{k})}{f'(x_{k})}$ ... iterační formule Zastavovací podmínka - dvě možnosti - vzdálenost 2 po sobě jdoucích iterací (na ose x) - $|x_{k+1}-x_{k}| < \epsilon$ - velikost funkční hodnoty (na ose y) - $|f(x_{k})| < \delta$ **Geometrický význam (metoda tečen)** - křivky $y = f(x)$ nahradíme tečnou procházející bodem $x_{k}$ - hodnota $x_{k+1}$ - průsečík tečny s osou $x$ **Postačující podmínka konvergence** - derivace funkce v kořenu není nulová ... $f'(x) \neq 0$ - druhá derivace $f''$ nemění znaménko v $I = \langle a,b\rangle$ - prochází bodem $x$, kde $f(x) = 0$ - $f(a)\cdot f(b) < 0$ - $\displaystyle\left| \frac{f(a)}{f'(a)} \right| < b-a, \quad \left| \frac{f(b)}{f'(b)} \right| < a-b$ - poté Newtonova metoda konverguje pro $\forall \, x_{0} \in I$ Rychlost konvergence - konverguje obvykle rychleji než MPI - rychlost konvergence závisí na $\varphi'(\alpha)$ resp. $\varphi''(\alpha)$ - $\varphi'(\alpha) = 0$ a $\varphi''(\alpha) \neq 0 \implies$ rychlost konvergence je řádu 2