FAV-ZCU/KMA NM/Zkouška/07. okruh.md

119 lines
7 KiB
Markdown

**Aproximace funkcí. Základní aproximační úlohy. Aproximace Taylorovým polynomem, interpolace, diskrétní a spojitá L2 aproximace. Diskrétní Fourierova transformace.**
### Základní aproximační úloha
Formulace
- cílem je nahrazení funkce $f$ jinou funkcí $\varphi$, která v nějakém smyslu napodobuje původní funkci $f$ za účelem snazšího zpracování či modelování na počítači
Aproximace
- **vstup**: $f = f(x); \quad x \in \langle a,b\rangle$
- zvolíme $n+1$ LN funkcí $\varphi_{i}$ a hledáme funkci $\varphi$, která lze vyjádřit ve tvaru lineární kombinace
- $\varphi = \varphi(x), \varphi(x) = c_{0}\varphi_{0}(x) + c_{1}\varphi_{1}(x) + \dots + c_{n}\varphi_{n}(x)$
- tento typ se nazývá **lineární aproximace**
- pokud jsou $\varphi_{i}(x)$ polynomy, jedná se o **polynomiální aproximaci**
- stanovujeme koeficienty $c_{i}$ tak, aby se $f$ a $\varphi$ co nejvíce podobaly
Základní úlohy
- aproximace na okolí bodu
- chceme-li aproximovat chování funkce v malém okolí bodu
- např. vyčíslení hodnot $\sin \frac{\pi}{4}$
- interpolace
- chceme-li zadanými body proložit polynom
- požadujeme, aby aproximace přesně procházela zadanými body
- L2-aproximace
- hledáme-li funkční závislost mezi zadanými body
- nevyžadujeme, aby aproximace body procházela
### Aproximace Taylorovým polynomem
- aproximace na okolí bodu
Předpoklad
- $f$ má v bodě $x_{0}$ a jeho okolí spojité derivace až do řádu $n$
Taylorův polynom
- $\displaystyle T_{n}(x) = f(x_{0}) + f'(x_{0})(x-x_{0}) + \frac{f''(x_{0})}{2!}(x-x_{0})^2 + \dots + \frac{f^{(n)}(x_{0})}{n!}(x-x_{0})^n$
Chyba aproximace
- $\displaystyle e(x) = f(x) - T_{n}(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!}\cdot(x-x_{0})^{(n+1)}, \quad\xi \in u(x_{0})$
### Interpolace
- zadané hodnoty v $n+1$ bodech $x_{0}, \dots, x_{n}$ (uzly interpolace)
- prochází zadanými body
Interpolační podmínky
- prochází zadanými body ... $P_{n}(x_{i}) = f(x_{i}), \quad i = 0, 1, \dots, n$
- chyba v uzlech interpolace ... $e(x) = f(x) - P_{n}(x) = 0$
Jednoznačnost řešení
- interpolační úloha má jediné řešení, pokud jsou uzly interpolace $x_{i}$ vzájemně různé
**Lagrangeův interpolační polynom**
- $\displaystyle L_{n}(x) = \sum_{i=0}^n f(x_{i})\cdot l_{i}(x)$
- $f(x_{i})$ ... splnění interpolační podmínky
+ $\displaystyle l_{i}(x) = \frac{(x-x_{0})(x-x_{1})\dots(x-x_{i-1})(x-x_{i+1})\dots(x-x_{n})}{(x_{i}-x_{0})(x_{i}-x_{1})\dots(x_{i}-x_{i-1})(x_{i}-x_{i+1})\dots(x_{i}-x_{n})}$
- vynecháme člen $(x-x_{i})$ a $(x_{i}-x_{i})$
- dílčí polynomy n-tého stupně
**Newtonův interpolační polynom**
- $N_{n}(x) = a_{0} + a_{1}(x-x_{0}) + a_{2}(x-x_{0})(x-x_{1}) + \dots + a_{n}(x-x_{0})(x-x_{1})\dots(x-x_{n-1})$
- vyžadujeme splnění interpolační podmínky ... $N_{n}(x_{i}) = f(x_{i}), \quad i = 0,1,\dots,n$
- přidáním dalšího bodu interpolace není nutné celý výpočet opakovat, jen dopočítáme příslušný koeficient $a_{n+1}$
- **algoritmus**: počítáme koeficienty $a_{i}$ pomocí poměrných diferencí
| $i$ | $x_{i}$ | $f(x_{i})$ | $\displaystyle\frac{f(x_{i}) - f(x_{i-1})}{x_{i} - x_{i-1}} = f^I(x_{i})$ | $\displaystyle\frac{f^I(x_{i}) - f^I(x_{i-1})}{x_{i} - x_{i-2}} = f^{II}(x_{i})$ | $\displaystyle\frac{f^{II}(x_{i}) - f^{II}(x_{i-1})}{x_{i} - x_{i-3}} = f^{III}(x_{i})$ |
| --- | ------- | ----------- | ------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| 0 | 0 | $1 = a_{0}$ | | | |
| 1 | 1 | $2$ | $\frac{2-1}{1-0} = 1 = a_{1}$ | | |
| 2 | -1 | $2$ | $\frac{2-2}{-1-1} = 0$ | $\frac{0-1}{-1-0} = 1 = a_{2}$ | |
| 3 | 3 | $0$ | $\frac{0-2}{3-(-1)} = -\frac{1}{2}$ | $\frac{-\frac{1}{2}-0}{3-1} = -\frac{1}{4}$ | $\frac{-\frac{1}{4}-1}{3-0} = -\frac{5}{12} = a_{3}$ |
**Chyba interpolačního polynomu**
- $\displaystyle e(x) = f(x) - P_{n}(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!}(x-x_{0})(x-x_{1})\dots(x-x_{n})$
**Nevilleův algoritmus**
- výpočet hodnoty polynomu $N_{n}(\alpha)$ v bodě $\alpha$
- není potřeba počítat celý polynom
- body je potřeba seřadit podle vzdálenosti
- **princip**
1. $P_{i,0} = f(x_{i}); \quad i =0, 1, \dots, n$
2. $\displaystyle P_{i,k} = P_{i,k-1} + (\alpha-x_{i}) \frac{P_{i,k-1} - P_{i-1,k-1}}{x_{i} - x_{i-k}};$
3. $N_{n}(\alpha)$
+ $\alpha = 1.8$
| $x_{i}$ | 0 | 1 | 2 | 3 | 4 |
| ---------- | ------ | ------- | ------- | ------- | ------- |
| $f(x_{i})$ | 1.0000 | 0.36788 | 0.13534 | 0.04979 | 0.01832 |
| $\vert\alpha-x_{i}\vert$ | $x_i$ | $f(x_{i}) = P_{i,0}$ | $P_{i,1}$ | $P_{i,2}$ | $P_{i,3}$ | $P_{i,4}$ |
| ------------------------ | ----- | -------------------- | ----------- | ----------- | ----------- | ----------- |
| 0.2 | 2 | **0.13534** | | | | |
| 0.8 | 1 | 0.36788 | **0.18185** | | | |
| 1.2 | 3 | 0.04979 | 0.24064 | **0.17009** | | |
| 1.8 | 0 | 1.00000 | 0.42987 | 0.08926 | **0.16201** | |
| 2.2 | 4 | 0.01832 | 0.5582 | 0.27583 | 0.13901 | **0.16431** |
**Spline funkce**
- více polynomů dohromady
- **lineární spline funkce**
- lomená čára spojující zadané body
- **kubická spline funkce**
- na každém intervalu polynom 3. stupně
- splňuje interpolační podmínky
- je spojitá
- má spojitou první derivaci - nemá hroty
- má spojitou druhou derivaci - nemá prudké změny koeficientů křivosti
### L2 aproximace
Princip
- hledáme aproximace ve tvaru
- $\varphi = \varphi(x), \varphi(x) = c_{0}\varphi_{0}(x) + c_{1}\varphi_{1}(x) + \dots + c_{m}\varphi_{m}(x)$
- cílem L2 aproximace je minimalizovat odchylku funkce $\varphi$ od zadaných bodů
Druhy
- diskrétní L2 aproximace lineárním polynomem
- $\varphi(x) = c_{0} + c_{1}x$
- diskrétní L2 aproximace kvadratickým polynomem
- $\varphi(x) = c_{0} + c_{1}x + c_{2}x^2$