mirror of
https://github.com/janishutz/eth-summaries.git
synced 2025-11-25 10:34:23 +00:00
[NumCS] Catch up to current state
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
% ┌ ┐
|
||||
% │ AUTHOR: Janis Hutz<info@janishutz.com> │
|
||||
% └ ┘
|
||||
|
||||
\subsection{Rundungsfehler}
|
||||
|
||||
\begin{definition}[]{Absoluter \& Relativer Fehler}
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
% ┌ ┐
|
||||
% │ AUTHOR: Janis Hutz<info@janishutz.com> │
|
||||
% └ ┘
|
||||
|
||||
\newsection
|
||||
\subsection{Rechenaufwand}
|
||||
In NumCS wird die Anzahl elementarer Operationen wie Addition, Multiplikation, etc benutzt, um den Rechenaufwand zu beschreiben.
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
% ┌ ┐
|
||||
% │ AUTHOR: Janis Hutz<info@janishutz.com> │
|
||||
% └ ┘
|
||||
|
||||
\newsection
|
||||
\subsection{Rechnen mit Matrizen}
|
||||
Wie in Lineare Algebra besprochen, ist das Resultat der Multiplikation einer Matrix $A \in \C^{m \times n}$ und einer Matrix $B \in \C^{n \times p}$ ist eine Matrix $AB = \in \C^{m \times p}$
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
% ┌ ┐
|
||||
% │ Author: Robin Bacher │
|
||||
% └ ┘
|
||||
% TODO: If you want your email to be in there, note it down here.
|
||||
% I also did not touch the unedited files to avoid conflicts
|
||||
% FIXME: Add subsection here and use \newsection on all further subsections to reset the counters and add a page break
|
||||
Bei der Interpolation versuchen wir eine Funktion $\tilde{f}$ durch eine Menge an Datenpunkten einer Funktion $f$ zu finden.\\
|
||||
Die $x_i$ heissen Stützstellen/Knoten, für welche $\tilde{f}(x_i) = y_i$ gelten soll. (Interpolationsbedingung)
|
||||
\begin{align*}
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
% ┌ ┐
|
||||
% │ AUTHOR: Janis Hutz<info@janishutz.com> │
|
||||
% └ ┘
|
||||
|
||||
\newsection
|
||||
\subsection{Lagrange- und Baryzentrische Interpolationsformeln}
|
||||
Session: Gemäss TA sehr gut beschrieben im alten Script
|
||||
% Session: Gemäss TA sehr gut beschrieben im alten Script
|
||||
|
||||
\begin{definition}[]{Lagrange Polynome}
|
||||
Für Knoten (auch gennannt Stützstellen) $x_0, x_1, \ldots, x_n \in \R$ definieren wir die Lagrange-Polynome:
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
\newsection
|
||||
\subsection{Chebychev Interpolation}
|
||||
|
||||
Session: Chebyshev Pol. : Abzisse = Extrema, Knoten = Nullstellen
|
||||
|
||||
Lecture: Orthogonalität ist eine wichtige Eigenschaft: Siehe Lecture notes (handgeschr.) für Veranschaulichung. \\
|
||||
$\rightarrow$ Orth. liefert die Koeff. ohne Rechenaufwand.
|
||||
|
||||
Lecture: Clenshaw-Alg. relativ zentral (Taschenrechner nutzen diesen intern)
|
||||
@@ -0,0 +1,141 @@
|
||||
% ┌ ┐
|
||||
% │ AUTHOR: Janis Hutz<info@janishutz.com> │
|
||||
% └ ┘
|
||||
|
||||
\newsection
|
||||
\subsection{Chebyshev Interpolation}
|
||||
|
||||
% Session: Chebyshev Pol. : Abszisse = Extrema, Knoten = Nullstellen
|
||||
%
|
||||
% Lecture: Orthogonalität ist eine wichtige Eigenschaft: Siehe Lecture notes (handgeschr.) für Veranschaulichung. \\
|
||||
% $\rightarrow$ Orth. liefert die Koeff. ohne Rechenaufwand.
|
||||
%
|
||||
% Lecture: Clenshaw-Alg. relativ zentral (Taschenrechner nutzen diesen intern)
|
||||
|
||||
|
||||
\begin{definition}[]{Chebyshev-Polynome}
|
||||
\begin{multicols}{2}
|
||||
\fhl{Erster Art}
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
T_n(x) = \cos(n \arccos(x)), \smallhspace x \in [-1, 1]
|
||||
\end{align*}
|
||||
|
||||
\fhl{Zweiter Art}
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
U_n(x) = \frac{\sin((n + 1) \arccos(x))}{\sin(\arccos(x))}, \smallhspace x \in [-1, 1]
|
||||
\end{align*}
|
||||
\end{multicols}
|
||||
\end{definition}
|
||||
$T_n(x)$ scheint erst nicht ein Polynom zu sein, aber wir haben einen $\arccos$ in einem $\cos$. Zudem:
|
||||
|
||||
\stepcounter{all}
|
||||
\fancytheorem{Eigenschaften}
|
||||
Das $n$-te Chebyshev-Polynom ist ein Polynom von Grad $n$ und für $x \in [-1, 1]$ gilt:
|
||||
\begin{multicols}{2}
|
||||
\begin{enumerate}
|
||||
\item $T_0(x) = 1, T_1(x) = x$,\\ $T_{n + 1}(x) = 2x T_n(x) - T_{n - 1}(x)$
|
||||
\item $|T_n(x)| \leq 1$
|
||||
\item $T_n\left(\cos\left( \frac{k\pi}{n} \right)\right) = (-1)^k \text{ für } k = 0, \ldots, n$
|
||||
\item $T_n\left( \cos\left( \frac{(2k + 1) \pi}{2n} \right) \right) = 0 \text{ für } k = 0, \ldots, n - 1$
|
||||
\end{enumerate}
|
||||
\end{multicols}
|
||||
|
||||
\fancydef{Chebyshev-Knoten} Die $(n + 1)$ Chebyshev-Knoten $x_0, \ldots, x_n$ im Intervall $[-1, 1]$ sind die Nullstellen von $T_{n + 1}(x)$
|
||||
|
||||
\fancyremark{Chebyshev-Knoten für beliebiges Intervall} Für $I = [a, b]$ sind die Chebyshev-Knoten:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
x_k = a + \frac{1}{2} (b - a) \left( \cos \left( \frac{2k + 1}{2(n + 1)} \pi \right) + 1 \right) \smallhspace k = 0, \ldots, n
|
||||
\end{align*}
|
||||
|
||||
\fancydef{Chebyshev-Abszissen} Die $(n - 1)$ Chebyshev-Abszissen $x_0, \ldots, x_{n - 2}$ im Intervall $[-1, 1]$ sind die Extrema des Chebyshev-Polynoms $T_n(x)$ und zeitgleich die Nullstellen von $U_{n - 1}(x)$.
|
||||
Je nach Kontext nimmt man noch die Grenzen des Intervalls ($1$ und $-1$) hinzu und hat dann $(n + 1)$ Abszissen.
|
||||
|
||||
\fancyremark{Chebyshev-Abszissen für beliebiges Intervall} Für $I = [a, b]$ sind die Chebyshev-Abszissen:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
x_k = a + \frac{1}{2} (b - a) \left( \cos \left( \frac{k}{n} \pi \right) + 1 \right) \smallhspace k = 0, \ldots, n
|
||||
\end{align*}
|
||||
Oder $k = 1, \ldots, n - 1$ bei ausgeschlossenen Endpunkten $a$ und $b$
|
||||
|
||||
\inlineremark Gegen die Ränder des Intervalls werden die Chebyshev-Knoten dichter.
|
||||
|
||||
\begin{theorem}[]{Orthogonalität}
|
||||
Die Chebyshev-Polynome sind orthogonal bezüglich des Skalarprodukts
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\langle f, g \rangle = \int_{-1}^{1} f(x) g(x) \frac{1}{\sqrt{1 - x^2}} \dx x
|
||||
\end{align*}
|
||||
|
||||
Sie ($T_0, \ldots, T_n$) sind zudem orthogonal bezüglich des diskreten Skalarprodukts im Raum der Polynome von Grad $\leq n$
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
(f, g) = \sum_{l = 0}^{n} f(x_l)g(x_l)
|
||||
\end{align*}
|
||||
wobei $(x_0, \ldots, x_n)$ die Nullstellen von $T_{n + 1}$ sind.
|
||||
\end{theorem}
|
||||
|
||||
|
||||
% ────────────────────────────────────────────────────────────────────
|
||||
\stepcounter{all}
|
||||
\newpage
|
||||
\subsubsection{Fehler}
|
||||
Was hat die neue Verteilung für einen Einfluss auf den Fehler?
|
||||
|
||||
\begin{theorem}[]{Fehlerabschätzung}
|
||||
Unter allen $(x_0, \ldots, x_n)$ mit $x_i \in \R$ wird (wobei $x_k$ die Nullstellen von $T_{n + 1}$ sind)
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\max_{x \in [-1, 1]} |(x - x_0) \cdot \ldots \cdot (x - x_n)| & & \text{minimal für } x_k = \cos \left( \frac{2k + 1}{2(n + 1)}\pi \right)
|
||||
\end{align*}
|
||||
\end{theorem}
|
||||
|
||||
Folglich sind also die Nullstellen der Chebyshev-Polynome $T_n$ die bestmögliche Wahl für die Stützstellen.
|
||||
Da die Abszissen mit FFT einfacher zu berechnen sind, werden diese oft bevorzugt berechnet.
|
||||
Dies, da die Nullstellen von $T_n$ in den Extrema von $T_{2n}$ enthalten sind, während zudem zwischen zwei nebeneinanderliegenden Chebyshev-Abszissen jeweils eine Nullstelle von $T_{2n}$ liegt
|
||||
|
||||
\stepcounter{all}
|
||||
\fancytheorem{Lebesgue-Konstante} Für die Chebyshev-Interpolation: $\displaystyle \Lambda_n \approx \frac{2}{\pi} \log(n) \text{ für } n \rightarrow \infty$
|
||||
|
||||
|
||||
% ────────────────────────────────────────────────────────────────────
|
||||
\stepcounter{all}
|
||||
\begin{theorem}[]{Interpolationspolynom}
|
||||
Das Interpolationspolynom $p$ zu $f$ mit Chebyshev-Knoten gleich der Nullstellen von $T_{n + 1}$ ist gegeben durch
|
||||
\begin{align*}
|
||||
p(x) = c_0 + c_1 T_1(x) + \ldots + c_n T_n(x)
|
||||
\end{align*}
|
||||
wobei für die $c_k$ gilt:
|
||||
\begin{align*}
|
||||
c_k & = \frac{2}{n + 1} \sum_{l = 0}^{n} f\left( \underbrace{\cos \left( \frac{2l + 1}{n + 1} \frac{\pi}{2} \right)}_{= x_i (\text{Knoten})} \right)
|
||||
\cos \left( k \frac{2l + 1}{n + 1} \frac{\pi}{2} \right) & & \text{für } k = 1, \ldots, n \\
|
||||
c_k & = \frac{1}{n + 1} \sum_{l = 0}^{n} f\left( \underbrace{\cos \left( \frac{2l + 1}{n + 1} \frac{\pi}{2} \right)}_{= x_i (\text{Knoten})} \right)
|
||||
\cos \left( k \frac{2l + 1}{n + 1} \frac{\pi}{2} \right) & & \text{für } k = 0
|
||||
\end{align*}
|
||||
\end{theorem}
|
||||
|
||||
Für $n \geq 15$ berechnet man $c_k$ mit der Schnellen Fourier Transformation (FFT).
|
||||
|
||||
\fancyremark{Laufzeit} Für die Interpolation ergibt sich folgender Aufwand:
|
||||
\begin{center}
|
||||
\begin{tabular}{ll}
|
||||
Direkte Berechnung der $c_k$ & $\tco{(n + 1)^2}$ Operationen \\
|
||||
Dividierte Differenzen & $\tco{\frac{n (n + 1)}{2}}$ Operationen (zum Vergleich) \\
|
||||
$c_k$ mittels FFT & $\tco{n \log(n)}$ Operationen
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
|
||||
|
||||
\fancytheorem{Clenshaw-Algorithmus} Seien $d_{n + 2} = d_{n + 1} = 0$. Sei $d_k = c_k + (2x)d_{k + 1} - d_{k + 2} \text{ für } k = n, \ldots, 0$\\
|
||||
Dann gilt: $p(x) = \frac{1}{2}(d_0 - d_2)$ und man kann $p(x)$ mit Hilfe einer Rückwärtsrekursion berechnen
|
||||
|
||||
Der Clenshaw-Algorithmus ist sehr stabil, auch wenn er mit (oft) unstabilen Rekursionen implementiert ist.
|
||||
|
||||
|
||||
|
||||
% ────────────────────────────────────────────────────────────────────
|
||||
\subsection{DFT und Chebyshev-Interpolation}
|
||||
Der folgende Abschnitt wurde ausgelassen, da dieser (noch) nicht während den Vorlesungen behandelt wurde.
|
||||
Er behandelt primär die Implementation der Chebyshev-Interpolation.
|
||||
@@ -0,0 +1,97 @@
|
||||
% ┌ ┐
|
||||
% │ AUTHOR: Janis Hutz<info@janishutz.com> │
|
||||
% └ ┘
|
||||
|
||||
% Lecture: Wir besitzen nicht das komplette Vorwissen in der Analysis für dieses Kapitel, d.h. wird totales Verständnis nicht
|
||||
%
|
||||
% Lecture: Intuitiv wird Fourier-Trans. zur Kompression genutzt, z.b. jpg format.
|
||||
\subsection{Fourier-Reihen}
|
||||
Eine Anwendung der Schnellen Fourier-Transformation (FFT) ist die Komprimierung eines Bildes und sie wird im JPEG-Format verwendet.
|
||||
|
||||
\fancydef{Trigonometrisches Polynom von Grad $\leq m$} Die Funktion:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
p_m(t) := t \mapsto \sum_{j = -m}^{m} \gamma_j e^{2 \pi ijt} \text{ wobei } \gamma_j \in \C \text{ und } t \in \R
|
||||
\end{align*}
|
||||
%
|
||||
%
|
||||
\inlineremark $p_m : \R \rightarrow \C$ ist periodisch mit Periode $1$.
|
||||
Falls $\gamma_{-j} = \overline{\gamma_j}$ für alle $j$, dann ist $p_m$ reellwertig und
|
||||
% NOTE: Uhh... do we want to use the fancy symbols for real and imaginary part or just use $\text{Re}$?
|
||||
$p_m$ kann folgendermassen dargestellt werden ($a_0 = 2\gamma_0, a_j = 2\Re(\gamma_j)$ und $b_j = -2\Im(\gamma_j)$):
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
p_m(t) = \frac{a_0}{2} + \sum_{j = 1}^{m} (a_j \cos(2\pi jt) + b_j \sin(2\pi jt))
|
||||
\end{align*}
|
||||
|
||||
\begin{definition}[]{$L^2$-Funktionen}
|
||||
Wir definieren die $L^2$-Funktionen auf dem Intervall $(0, 1)$ als
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
L^2(0, 1) := \{ f: (0, 1) \rightarrow \C \divides ||f||_{L^2(0, 1)} < \infty \}
|
||||
\end{align*}
|
||||
während die $L^2$-Norm auf $(0, 1)$ durch das Skalarprodukt
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\langle g, f \rangle_{L^2(0, 1)} := \int_{0}^{1} \overline{g(x)} f(x) \dx x
|
||||
\end{align*}
|
||||
über $||f||_{L^2(0, 1)} = \sqrt{\langle f, f \rangle_{L^2(0, 1)}}$ induziert wird
|
||||
\end{definition}
|
||||
|
||||
\inlineremark $L^2(a, b)$ lässt sich analog definieren mit
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\langle g, f \rangle_{L^2(a, b)} & := \int_{a}^{b} \overline{g(x)} f(x) \dx x \\
|
||||
& = (b - a) \int_{0}^{1} \overline{g(a + (b - a)t)} f(a + (b - a)t) \dx t
|
||||
\end{align*}
|
||||
In Anwendungen findet sich oft das Intervall $\left[ -\frac{T}{2}, \frac{T}{2} \right]$.
|
||||
Dann verwandeln sich die Integrale in die Form $\frac{1}{T} \int_{\frac{T}{2}}^{-\frac{T}{2}} (\ldots) \dx t$ und $\exp(2\pi ijt)$ durch $\exp(i \frac{2\pi j}{T} t)$ ersetzt wird.
|
||||
|
||||
\stepcounter{all}
|
||||
\inlineremark Die Funktionen $\varphi_k(x) = \exp(2\pi ikx)$ sind orthogonal bezüglich des $L^2(0, 1)$-Skalarprodukts, bilden also eine Basis für den Unterraum der trigonometrischen polynome.
|
||||
|
||||
|
||||
\inlinedef Eine Funktion $f$ ist der $L^2$-Grenzwert von Funktionenfolgen $f_n \in L^2(0, 1)$, wenn für $n \rightarrow \infty$ gilt, dass $||f - f_n||_{L^2(0, 1)} \rightarrow 0$
|
||||
|
||||
|
||||
\begin{theorem}[]{Fourier-Reihe}
|
||||
Jede Funktion $f \in L^2(0, 1)$ ist der Grenzwert ihrer Fourier-Reihe:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
f(t) = \sum_{k = -\infty}^{\infty} \hat{f}(k) e^{2\pi ikt}
|
||||
\end{align*}
|
||||
wobei die Fourier-Koeffizienten
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\hat{f}(k) = \int_{0}^{1} f(t)e^{-2\pi ikt} \dx t \smallhspace k \in \Z
|
||||
\end{align*}
|
||||
definiert sind. Es gilt die Parseval'sche Gleichung:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\sum_{k = -\infty}^{\infty} |\hat{f}(k)|^2 = ||f||_{L^2(0, 1)}^2
|
||||
\end{align*}
|
||||
\end{theorem}
|
||||
\inlineremark Oder viel einfacher und kürzer: Die Funktionen $\varphi_k(x)$ bilden eine vollständige Orthonormalbasis in $L^2(0, 1)$.
|
||||
|
||||
\setcounter{all}{14}
|
||||
\inlineremark Die Parseval'sche Gleichung beschreibt einfach gesagt einen ``schnellen'' Abfall der $\hat{f}(k)$.
|
||||
Genauer gesagt, klingen die Koeffizienten schneller als $\frac{1}{\sqrt{k}}$ ab.
|
||||
Sie sagt zudem aus, dass die $L^2$-Norm der Funktion aus einer Summe berechnet werden kann (nicht nur als Integral).
|
||||
Wenn wir die Fourier-Reihe nach $t$ ableiten, erhalten wir
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
f'(t) = \sum_{k = -\infty}^{\infty} 2\pi ik\hat{f}(k)e^{2\pi ikt}
|
||||
\end{align*}
|
||||
|
||||
\begin{theorem}[]{Fourier-Reihe}
|
||||
Seien $f$ und $f'$ integrierbar auf $(0, 1)$, dann gilt $\hat{f'}(k) = 2\pi ik\hat{f}(k)$ für $k \in \Z$.
|
||||
|
||||
Falls die Operationen erlaubt sind, dann gilt zudem:
|
||||
\rmvspace
|
||||
\begin{align*}
|
||||
\hat{f^{(n)}} = (2\pi ik)^n \hat{f}(k) \text{ und } ||f^{(n)}||_{L^2}^2 = (2\pi)^{2n} \sum_{k = -\infty}^{\infty} k^{2n} |\hat{f}(k)|^2
|
||||
\end{align*}
|
||||
\end{theorem}
|
||||
|
||||
|
||||
\inlinetheorem Wenn $\displaystyle \int_{0}^{1} |f^{(n)}(t)|\dx t < \infty$, dann ist $\hat{f}(k) = \tco{k^{-n}}$
|
||||
@@ -1,3 +0,0 @@
|
||||
Lecture: Wir besitzen nicht das komplette Vorwissen in der Analysis für dieses Kapitel, d.h. wird totales Verständnis nicht
|
||||
|
||||
Lecture: Intuitiv wird Fourier-Trans. zur Kompression genutzt, z.b. jpg format.
|
||||
Reference in New Issue
Block a user