**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$