Add newton approximation method and binary search

This commit is contained in:
Vojtěch Struhár 2025-06-09 11:27:44 +02:00
parent 301ad7dff2
commit bcd77cb314

View File

@ -78,6 +78,22 @@ description: "TODO"
![width=400](./img/szp02_newton_method.png)
> [!NOTE]
> How to derive Newton approximation method:
> 1. Start with Taylor $f(x)=\sum_{n=0}^{1} \frac{f_n(a)}{n!} \cdot (x-a)^n$
> 2. Substitute $a = x_n$
>
> $f(x) \approx f(x_n) + f'(x_n)(x-x_n)$
>
> Now, we want to find $x_{n+1}$ such that $f(x) = f(x_{n+1}) = 0$.
>
> $0 \approx f(x_n) + f'(x_n)(x_{n+1}-x_n)$
>
> $0 \approx \frac{f(x_n)}{f'(x_n)} + x_{n+1} - x_n$
>
> $x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)}$
- **Metoda sečen / secant method**\
Používá k odhadu kořene funkce $f$ sečny, resp. _finite difference_, které aproximují derivaci funkce $f$. Díky tomu není potřeba znát derivaci funkce $f$. Iterační funkce je:
@ -98,6 +114,10 @@ description: "TODO"
![width=400](./img/szp02_regula_falsi.png)
- **Metoda Binary search**
Podobný princip jako _regula falsi_. Vybereš si interval $(x_0, x_1)$ kde kořen funkce leží v tomto intervalu ($f(x_{0,1})$ mají jiné znaménka).
Interval zmenšuješ binárním dělením - nový bod vybereš přímo uprostřed a interval upravíš aby kořen stále ležel v něm. Regula falsi se snaží zlepšit rychlost konvergence sofistikovanějším výběrem nového bodu, než jen střed.
## Přímé metody pro řešení systému lineárních rovnic
### Gaussova eliminace