aboutsummaryrefslogtreecommitdiffstats
path: root/buch/papers/ellfilter
diff options
context:
space:
mode:
authorNicolas Tobler <nicolas.tobler@ost.ch>2022-08-02 23:54:02 +0200
committerNicolas Tobler <nicolas.tobler@ost.ch>2022-08-02 23:54:02 +0200
commit8ced517966a5996ad659b155b7e0372107bbf116 (patch)
tree38dbba7d19e88031396afabd1f307c4fadf80ca8 /buch/papers/ellfilter
parentworking on presentation (diff)
downloadSeminarSpezielleFunktionen-8ced517966a5996ad659b155b7e0372107bbf116.tar.gz
SeminarSpezielleFunktionen-8ced517966a5996ad659b155b7e0372107bbf116.zip
improved Einleitung
Diffstat (limited to 'buch/papers/ellfilter')
-rw-r--r--buch/papers/ellfilter/einleitung.tex74
-rw-r--r--buch/papers/ellfilter/elliptic.tex14
-rw-r--r--buch/papers/ellfilter/presentation/presentation.tex239
-rw-r--r--buch/papers/ellfilter/tikz/arccos.tikz.tex55
-rw-r--r--buch/papers/ellfilter/tikz/arccos2.tikz.tex5
-rw-r--r--buch/papers/ellfilter/tikz/cd.tikz.tex5
-rw-r--r--buch/papers/ellfilter/tikz/cd2.tikz.tex27
-rw-r--r--buch/papers/ellfilter/tikz/cd3.tikz.tex8
-rw-r--r--buch/papers/ellfilter/tikz/elliptic_transform1.tikz.tex76
-rw-r--r--buch/papers/ellfilter/tikz/elliptic_transform2.tikz.tex (renamed from buch/papers/ellfilter/tikz/elliptic_transform.tikz.tex)61
-rw-r--r--buch/papers/ellfilter/tikz/filter.tikz.tex26
-rw-r--r--buch/papers/ellfilter/tikz/sn.tikz.tex49
12 files changed, 457 insertions, 182 deletions
diff --git a/buch/papers/ellfilter/einleitung.tex b/buch/papers/ellfilter/einleitung.tex
index 37fd89f..18913fb 100644
--- a/buch/papers/ellfilter/einleitung.tex
+++ b/buch/papers/ellfilter/einleitung.tex
@@ -1,44 +1,45 @@
\section{Einleitung}
-% Lineare filter
-
-% Filter, Signalverarbeitung
-
-
-Der womöglich wichtigste Filtertyp ist das Tiefpassfilter.
-Dieses soll im Durchlassbereich unter der Grenzfrequenz $\Omega_p$ unverstärkt durchlassen und alle anderen Frequenzen vollständig auslöschen.
-
-% Bei der Implementierung von Filtern
-
-In der Elektrotechnik führen Schaltungen mit linearen Bauelementen wie Kondensatoren, Spulen und Widerständen immer zu linearen zeitinvarianten Systemen (LTI-System von englich \textit{time-invariant system}).
-Die Übertragungsfunktion im Frequenzbereich $|H(\Omega)|$ eines solchen Systems ist dabei immer eine rationale Funktion, also eine Division von zwei Polynomen.
-Die Polynome habe dabei immer reelle oder komplex-konjugierte Nullstellen.
-
-
+Filter sind womöglich eines der wichtigsten Element in der Signalverarbeitung und finden Anwendungen in der digitalen und analogen Elektrotechnik.
+Besonders hilfreich ist die Untergruppe der linearen Filter.
+Elektronische Schaltungen mit linearen Bauelementen wie Kondensatoren, Spulen und Widerständen führen immer zu linearen zeitinvarianten Systemen (LTI-System von englich \textit{time-invariant system}).
+Durch die Linearität werden beim das Filtern keine neuen Frequenzanteile erzeugt, was es erlaubt, einen Frequenzanteil eines Signals verzerrungsfrei herauszufiltern. %TODO review sentence
+Diese Eigenschaft macht es Sinnvoll, lineare Filter im Frequenzbereich zu beschreiben.
+Die Übertragungsfunktion eines linearen Filters im Frequenzbereich $H(\Omega)$ ist dabei immer eine rationale Funktion, also eine Division von zwei Polynomen.
+Dabei ist $\Omega = 2 \pi f$ die analoge Frequenzeinheit.
+Die Polynome haben dabei immer reelle oder komplex-konjugierte Nullstellen.
+
+Ein breit angewendeter Filtertyp ist das Tiefpassfilter, welches beabsichtigt alle Frequenzen eines Signals über der Grenzfrequenz $\Omega_p$ auszulöschen.
+Der Rest soll dabei unverändert passieren.
+Ein solches Filter hat idealerweise eine Frequenzantwort
\begin{equation} \label{ellfilter:eq:h_omega}
- | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p}
+ H(\Omega) =
+ \begin{cases}
+ 1 & \Omega < \Omega_p \\
+ 0 & \Omega < \Omega_p
+ \end{cases}.
\end{equation}
-
-$\Omega = 2 \pi f$ ist die analoge Frequenz
-
-
-% Linear filter
-Damit das Filter implementierbar und stabil ist, muss $H(\Omega)^2$ eine rationale Funktion sein, deren Nullstellen und Pole auf der linken Halbebene liegen.
-
-$N \in \mathbb{N} $ gibt dabei die Ordnung des Filters vor, also die maximale Anzahl Pole oder Nullstellen.
-
-Damit ein Filter die Passband Kondition erfüllt muss $|F_N(w)| \leq 1 \forall |w| \leq 1$ und für $|w| \geq 1$ sollte die Funktion möglichst schnell divergieren.
-Eine einfaches Polynom, dass das erfüllt, erhalten wir wenn $F_N(w) = w^N$.
+Leider ist eine solche Funktion nicht als rationale Funktion darstellbar.
+Aus diesem Grund sind realisierbare Approximationen gesucht.
+Jede Approximation wird einen kontinuierlichen übergang zwischen Durchlassbereich und Sperrbereich aufweisen.
+Oft wird dabei der Faktor $1/\sqrt{2}$ als Schwelle zwischen den beiden Bereichen gewählt.
+Somit lassen sich lineare Tiefpassfilter mit folgender Funktion zusammenfassen:
+\begin{equation} \label{ellfilter:eq:h_omega}
+ | H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p},
+\end{equation}
+%TODO figure?
+wobei $F_N(w)$ eine rationale Funktion ist, $|F_N(w)| \leq 1 ~\forall~ |w| \leq 1$ erfüllt und für $|w| \geq 1$ möglichst schnell divergiert.
+Des weiteren müssen alle Nullstellen und Pole von $F_N$ auf der linken Halbebene liegen, damit das Filter implementierbar und stabil ist.
+$N \in \mathbb{N} $ gibt dabei die Ordnung des Filters vor, also die maximale Anzahl Pole oder Nullstellen, die zur Komplexitätsmilderung klein gehalten werden soll.
+Eine einfache Funktion für $F_N$ ist das Polynom $w^N$.
Tatsächlich erhalten wir damit das Butterworth Filter, wie in Abbildung \ref{ellfilter:fig:butterworth} ersichtlich.
\begin{figure}
\centering
\input{papers/ellfilter/python/F_N_butterworth.pgf}
- \caption{$F_N$ für Butterworth filter. Der grüne Bereich definiert die erlaubten Werte für alle $F_N$-Funktionen.}
+ \caption{$F_N$ für Butterworth filter. Der grüne und gelbe Bereich definiert die erlaubten Werte für alle $F_N$-Funktionen.}
\label{ellfilter:fig:butterworth}
\end{figure}
-
-wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale Funktion und daher ein lineares Filter. %proof?
-
+Eine Reihe von rationalen Funktionen können für $F_N$ eingesetzt werden, um Tiefpassfilter\-approximationen mit unterschiedlichen Eigenschaften zu erhalten:
\begin{align}
F_N(w) & =
\begin{cases}
@@ -48,9 +49,14 @@ wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale F
R_N(w, \xi) & \text{Elliptisch (Cauer)} \\
\end{cases}
\end{align}
-
Mit der Ausnahme vom Butterworth filter sind alle Filter nach speziellen Funktionen benannt.
-Alle diese Filter sind optimal für unterschiedliche Anwendungsgebiete.
+Alle diese Filter sind optimal hinsichtlich einer Eigenschaft.
Das Butterworth-Filter, zum Beispiel, ist maximal flach im Durchlassbereich.
-Das Tschebyscheff-1 Filter sind maximal steil für eine definierte Welligkeit im Durchlassbereich, währendem es im Sperrbereich monoton abfallend ist.
+Das Tschebyscheff-1 Filter ist maximal steil für eine definierte Welligkeit im Durchlassbereich, währendem es im Sperrbereich monoton abfallend ist.
Es scheint so als sind gewisse Eigenschaften dieser speziellen Funktionen verantwortlich für die Optimalität dieser Filter.
+
+Dieses Paper betrachtet die Theorie hinter dem elliptischen Filter, dem wohl exotischsten dieser Auswahl.
+Es weist sich aus durch den Steilsten Übergangsbereich für eine gegebene Filterdesignspezifikation.
+Des weiteren kann es als Verallgemeinerung des Tschebyscheff-Filters angesehen werden.
+
+% wenn $F_N(w)$ eine rationale Funktion ist, ist auch $H(\Omega)$ eine rationale Funktion und daher ein lineares Filter. %proof?
diff --git a/buch/papers/ellfilter/elliptic.tex b/buch/papers/ellfilter/elliptic.tex
index 96731c8..861600b 100644
--- a/buch/papers/ellfilter/elliptic.tex
+++ b/buch/papers/ellfilter/elliptic.tex
@@ -31,13 +31,13 @@ Die $\cd^{-1}(w, k)$-Funktion ist um $K$ verschoben zur $\sn^{-1}(w, k)$-Funktio
\end{figure}
Auffallend ist, dass sich alle Nullstellen und Polstellen um $K$ verschoben haben.
-Durch das Konzept vom fundamentalen Rechteck, siehe Abbildung \ref{ellfilter:fig:fundamental_rectangle} können für alle inversen Jaccobi elliptischen Funktionen die Positionen der Null- und Polstellen anhand eines Diagramms ermittelt werden.
+Durch das Konzept vom fundamentalen Rechteck, siehe Abbildung \ref{ellfilter:fig:fundamental_rectangle} können für alle inversen Jacobi elliptischen Funktionen die Positionen der Null- und Polstellen anhand eines Diagramms ermittelt werden.
Der erste Buchstabe bestimmt die Position der Nullstelle und der zweite Buchstabe die Polstelle.
\begin{figure}
\centering
\input{papers/ellfilter/tikz/fundamental_rectangle.tikz.tex}
\caption{
- Fundamentales Rechteck der inversen Jaccobi elliptischen Funktionen.
+ Fundamentales Rechteck der inversen Jacobi elliptischen Funktionen.
}
\label{ellfilter:fig:fundamental_rectangle}
\end{figure}
@@ -80,7 +80,7 @@ Analog zu Abbildung \ref{ellfilter:fig:arccos2} können wir auch bei den ellipti
\subsection{Gradgleichung}
Der $\cd^{-1}$ Term muss so verzogen werden, dass die umgebene $\cd$-Funktion die Nullstellen und Pole trifft.
-Dies trifft ein wenn die Degree Equation erfüllt ist.
+Dies trifft ein wenn die Gradengleichung erfüllt ist.
\begin{equation}
N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1}
@@ -96,9 +96,15 @@ Die Rechnung wird in \ref{ellfilter:bib:orfanidis} im Detail angeschaut.
\caption{Die Periodizitäten in realer und imaginärer Richtung in Abhängigkeit vom elliptischen Modul $k$.}
\end{figure}
+%TODO combine figures?
\begin{figure}
\centering
- \input{papers/ellfilter/tikz/elliptic_transform.tikz}
+ \input{papers/ellfilter/tikz/elliptic_transform1.tikz}
+ \caption{Die Gradgleichung als geometrisches Problem.}
+\end{figure}
+\begin{figure}
+ \centering
+ \input{papers/ellfilter/tikz/elliptic_transform2.tikz}
\caption{Die Gradgleichung als geometrisches Problem.}
\end{figure}
diff --git a/buch/papers/ellfilter/presentation/presentation.tex b/buch/papers/ellfilter/presentation/presentation.tex
index adbf925..96bdfd3 100644
--- a/buch/papers/ellfilter/presentation/presentation.tex
+++ b/buch/papers/ellfilter/presentation/presentation.tex
@@ -76,9 +76,9 @@
%Title Page
\title{Elliptische Filter}
-\subtitle{Eine Anwendung der Jaccobi elliptischen Funktionen}
+\subtitle{Eine Anwendung der Jacobi elliptischen Funktionen}
\author{Nicolas Tobler}
-% \institute{OST Ostschweizer Fachhochschule}
+\institute{Mathematisches Seminar 2022 | Spezielle Funktionen}
% \institute{\includegraphics[scale=0.3]{../img/ost_logo.png}}
\date{\today}
@@ -113,7 +113,7 @@
\end{frame}
\begin{frame}
- \frametitle{Content}
+ \frametitle{Inhalt}
\tableofcontents
\end{frame}
@@ -122,16 +122,29 @@
\begin{frame}
\frametitle{Lineare Filter}
+ \begin{center}
+ \scalebox{0.75}{
+ \input{../tikz/filter.tikz.tex}
+ }
+ \end{center}
- \begin{equation}
+
+ \begin{equation*}
| H(\Omega)|^2 = \frac{1}{1 + \varepsilon_p^2 F_N^2(w)}, \quad w=\frac{\Omega}{\Omega_p}
- \end{equation}
+ \end{equation*}
\pause
- \begin{equation}
+ \begin{align*}
+ |F_N(w)| &< 1 \quad \forall \quad |w| < 1 \\
+ |F_N(w)| &= 1 \quad \forall \quad |w| = 1 \\
+ |F_N(w)| &> 1 \quad \forall \quad |w| > 1
+ \end{align*}
+
+
+ \begin{equation*}
F_N(w) = w^N
- \end{equation}
+ \end{equation*}
\end{frame}
@@ -218,10 +231,36 @@
Darstellung mit trigonometrischen Funktionen:
- \begin{align} \label{ellfilter:eq:chebychef_polynomials}
+ \begin{align*}
T_N(w) &= \cos \left( N \cos^{-1}(w) \right) \\
&= \cos \left(N~z \right), \quad w= \cos(z)
- \end{align}
+ \end{align*}
+
+ \pause
+
+ \begin{align*}
+ \cos^{-1}(x)
+ &=
+ \int_{x}^{1}
+ \frac{
+ dz
+ }{
+ \sqrt{
+ 1-z^2
+ }
+ }\\
+ &=
+ \int_{0}^{x}
+ \frac{
+ -1
+ }{
+ \sqrt{
+ 1-z^2
+ }
+ }
+ ~dz
+ + \frac{\pi}{2}
+ \end{align*}
\end{frame}
@@ -229,15 +268,41 @@
\begin{frame}
\frametitle{Tschebyscheff-Filter}
- \begin{equation*}
- z = \cos^{-1}(w)
- \end{equation*}
+ \begin{columns}
+
+ \begin{column}{0.2\textwidth}
+
+ \begin{equation*}
+ z = \cos^{-1}(w)
+ \end{equation*}
+
+ \vspace{0.5cm}
+
+ Integrand:
+ \begin{equation*}
+ \frac{
+ -1
+ }{
+ \sqrt{
+ 1-z^2
+ }
+ }
+ \end{equation*}
+
+ \end{column}
+ \begin{column}{0.8\textwidth}
+
+
+ \begin{center}
+ \scalebox{0.7}{
+ \input{../tikz/arccos.tikz.tex}
+ }
+ \end{center}
+
+ \end{column}
+ \end{columns}
+
- \begin{center}
- \scalebox{0.85}{
- \input{../tikz/arccos.tikz.tex}
- }
- \end{center}
\end{frame}
@@ -245,7 +310,7 @@
\frametitle{Tschebyscheff-Filter}
\begin{equation*}
- z_1 = N~\cos^{-1}(w)
+ T_N(w) = \cos \left(z_1 \right), \quad z_1 = N~\cos^{-1}(w)
\end{equation*}
\begin{center}
@@ -257,15 +322,14 @@
\end{frame}
- \section{Jaccobi elliptische Funktionen}
+ \section{Jacobi elliptische Funktionen}
\begin{frame}
- \frametitle{Jaccobi elliptische Funktionen}
+ \frametitle{Jacobi elliptische Funktionen}
+ Elliptisches Integral erster Art
- \begin{equation}
- z
- =
+ \begin{equation*}
F(\phi, k)
=
\int_{0}^{\phi}
@@ -276,18 +340,18 @@
1-k^2 \sin^2 \theta
}
}
- =
- \int_{0}^{\phi}
- \frac{
- dt
- }{
- \sqrt{
- (1-t^2)(1-k^2 t^2)
- }
- }
- \end{equation}
+ % =
+ % \int_{0}^{\phi}
+ % \frac{
+ % dt
+ % }{
+ % \sqrt{
+ % (1-t^2)(1-k^2 t^2)
+ % }
+ % }
+ \end{equation*}
- \begin{equation}
+ \begin{equation*}
K(k)
=
\int_{0}^{\pi / 2}
@@ -298,24 +362,88 @@
1-k^2 \sin^2 \theta
}
}
- \end{equation}
+ \end{equation*}
\end{frame}
+
+
+
+
\begin{frame}
- \frametitle{Jaccobi elliptische Funktionen}
+ \frametitle{Jacobi elliptische Funktionen}
+
+ \begin{equation*}
+ \sn^{-1}(w, k)
+ =
+ F(\phi, k),
+ \quad
+ \phi = \sin^{-1}(w)
+ \end{equation*}
+
+ \begin{align*}
+ \sn^{-1}(w, k)
+ & =
+ \int_{0}^{\phi}
+ \frac{
+ d\theta
+ }{
+ \sqrt{
+ 1-k^2 \sin^2 \theta
+ }
+ },
+ \quad
+ \phi = \sin^{-1}(w)
+ \\
+ & =
+ \int_{0}^{w}
+ \frac{
+ dt
+ }{
+ \sqrt{
+ (1-t^2)(1-k^2 t^2)
+ }
+ }
+ \end{align*}
- \begin{equation*}
- z = \sn^{-1}(w, k)
- \end{equation*}
- \begin{center}
- \scalebox{0.7}{
- \input{../tikz/sn.tikz.tex}
- }
- \end{center}
+
+ \end{frame}
+
+ \begin{frame}
+ \frametitle{Jacobi elliptische Funktionen}
+ \begin{columns}
+ \begin{column}{0.2\textwidth}
+
+ \begin{equation*}
+ z = \sn^{-1}(w, k)
+ \end{equation*}
+
+ \vspace{0.5cm}
+
+ Integrand:
+ \begin{equation*}
+ \frac{
+ 1
+ }{
+ \sqrt{
+ (1-t^2)(1-k^2 t^2)
+ }
+ }
+ \end{equation*}
+
+ \end{column}
+ \begin{column}{0.8\textwidth}
+ \begin{center}
+ \scalebox{0.75}{
+ \input{../tikz/sn.tikz.tex}
+ }
+ \end{center}
+ \end{column}
+ \end{columns}
+
\end{frame}
@@ -334,7 +462,7 @@
\begin{frame}
- \frametitle{Jaccobi elliptische Funktionen}
+ \frametitle{Jacobi elliptische Funktionen}
\begin{equation*}
z = \cd^{-1}(w, k)
@@ -354,9 +482,9 @@
\begin{frame}
\frametitle{Elliptisches Filter}
- \begin{equation*}
- z_1 = N~\frac{K_1}{K}~\cd^{-1}(w, k)
- \end{equation*}
+ % \begin{equation*}
+ % z_1 = N~\frac{K_1}{K}~\cd^{-1}(w, k)
+ % \end{equation*}
\begin{center}
\scalebox{0.75}{
@@ -379,16 +507,17 @@
\begin{frame}
\frametitle{Gradgleichung}
- \begin{equation}
- N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1}
- \end{equation}
-
\begin{center}
\scalebox{0.95}{
- \input{../tikz/elliptic_transform.tikz}
+ \input{../tikz/elliptic_transform2.tikz}
}
\end{center}
+ \onslide<5->{
+ \begin{equation*}
+ N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1}
+ \end{equation*}
+ }
\end{frame}
@@ -398,7 +527,9 @@
\begin{equation*}
R_N = \cd(z_1, k_1),
\quad
- z_1 = N~\frac{K_1}{K}~\cd^{-1}(w, k)
+ z_1 = N~\frac{K_1}{K}~\cd^{-1}(w, k),
+ \quad
+ N \frac{K^\prime}{K} = \frac{K^\prime_1}{K_1}
\end{equation*}
\begin{center}
diff --git a/buch/papers/ellfilter/tikz/arccos.tikz.tex b/buch/papers/ellfilter/tikz/arccos.tikz.tex
index 987f885..4211053 100644
--- a/buch/papers/ellfilter/tikz/arccos.tikz.tex
+++ b/buch/papers/ellfilter/tikz/arccos.tikz.tex
@@ -8,29 +8,6 @@
\begin{scope}[xscale=0.6]
- \clip(-7.5,-2) rectangle (7.5,2);
-
- \draw[ultra thick, ->, darkgreen] (0, 0) -- (0,1.5);
- \draw[ultra thick, ->, orange] (1, 0) -- (0,0);
- \draw[ultra thick, ->, red] (2, 0) -- (1,0);
- \draw[ultra thick, ->, blue] (2,1.5) -- (2, 0);
-
- \foreach \i in {-2,...,1} {
- \begin{scope}[opacity=0.5, xshift=\i*4cm]
- \draw[->, orange] (-1, 0) -- (0,0);
- \draw[->, darkgreen] (0, 0) -- (0,1.5);
- \draw[->, darkgreen] (0, 0) -- (0,-1.5);
- \draw[->, orange] (1, 0) -- (0,0);
- \draw[->, red] (2, 0) -- (1,0);
- \draw[->, blue] (2,1.5) -- (2, 0);
- \draw[->, blue] (2,-1.5) -- (2, 0);
- \draw[->, red] (2, 0) -- (3,0);
-
- \node[zero] at (1,0) {};
- \node[zero] at (3,0) {};
- \end{scope}
- }
-
\node[gray, anchor=north] at (-6,0) {$-3\pi$};
\node[gray, anchor=north] at (-4,0) {$-2\pi$};
\node[gray, anchor=north] at (-2,0) {$-\pi$};
@@ -43,8 +20,40 @@
% \node[gray, anchor=south east] at (0, 0) {$0$};
\node[gray, anchor=east] at (0, 1.5) {$\infty$};
+ \clip(-7.5,-2) rectangle (7.5,2);
+
+ % \pause
+ \draw[ultra thick, ->, orange] (1, 0) -- (0,0);
+ % \pause
+ \draw[ultra thick, ->, darkgreen] (0, 0) -- (0,1.5);
+ % \pause
+ \draw[ultra thick, ->, red] (2, 0) -- (1,0);
+ \draw[ultra thick, ->, blue] (2,1.5) -- (2, 0);
+
+ % \pause
+
+ \foreach \i in {-2,...,1} {
+ \begin{scope}[xshift=\i*4cm]
+ \begin{scope}[opacity=0.5]
+ \draw[->, orange] (-1, 0) -- (0,0);
+ \draw[->, darkgreen] (0, 0) -- (0,1.5);
+ \draw[->, darkgreen] (0, 0) -- (0,-1.5);
+ \draw[->, orange] (1, 0) -- (0,0);
+ \draw[->, red] (2, 0) -- (1,0);
+ \draw[->, blue] (2,1.5) -- (2, 0);
+ \draw[->, blue] (2,-1.5) -- (2, 0);
+ \draw[->, red] (2, 0) -- (3,0);
+ \end{scope}
+ \node[zero] at (1,0) {};
+ \node[zero] at (3,0) {};
+ \end{scope}
+ }
+
\end{scope}
+ \node[zero] at (4,2) (n) {};
+ \node[anchor=west] at (n.east) {Zero};
+
\begin{scope}[yshift=-3cm]
\draw[gray, ->] (-5,0) -- (5,0) node[anchor=west]{$w$};
diff --git a/buch/papers/ellfilter/tikz/arccos2.tikz.tex b/buch/papers/ellfilter/tikz/arccos2.tikz.tex
index 3fc3cc6..755e8a0 100644
--- a/buch/papers/ellfilter/tikz/arccos2.tikz.tex
+++ b/buch/papers/ellfilter/tikz/arccos2.tikz.tex
@@ -14,7 +14,6 @@
\draw[>->, line width=0.05, thick, orange] (4, 1.5) -- (4,0) -- node[anchor=south, pos=0.25]{$N=2$} (0,0) -- (0,1.5);
\draw[>->, line width=0.05, thick, red] (6, 1.5) node[anchor=north west]{$-\infty$} -- (6,-0.05) node[anchor=west]{$-1$} -- node[anchor=north]{$0$} node[anchor=south, pos=0.1666]{$N=3$} (-0.1,-0.05) node[anchor=east]{$1$} -- (-0.1,1.5) node[anchor=north east]{$\infty$};
-
\node[zero] at (-7,0) {};
\node[zero] at (-5,0) {};
\node[zero] at (-3,0) {};
@@ -24,7 +23,6 @@
\node[zero] at (5,0) {};
\node[zero] at (7,0) {};
-
\end{scope}
\node[gray, anchor=north] at (-8,0) {$-4\pi$};
@@ -42,4 +40,7 @@
\end{scope}
+ \node[zero] at (4,2) (n) {};
+ \node[anchor=west] at (n.east) {Zero};
+
\end{tikzpicture} \ No newline at end of file
diff --git a/buch/papers/ellfilter/tikz/cd.tikz.tex b/buch/papers/ellfilter/tikz/cd.tikz.tex
index 7a2767b..b2b0090 100644
--- a/buch/papers/ellfilter/tikz/cd.tikz.tex
+++ b/buch/papers/ellfilter/tikz/cd.tikz.tex
@@ -63,6 +63,11 @@
\end{scope}
+ \node[zero] at (4,3) (n) {};
+ \node[anchor=west] at (n.east) {Zero};
+ \node[pole, below=0.25cm of n] (n) {};
+ \node[anchor=west] at (n.east) {Pole};
+
\begin{scope}[yshift=-4cm, xscale=0.75]
\draw[gray, ->] (-6,0) -- (6,0) node[anchor=west]{$w$};
diff --git a/buch/papers/ellfilter/tikz/cd2.tikz.tex b/buch/papers/ellfilter/tikz/cd2.tikz.tex
index 425db95..bba5789 100644
--- a/buch/papers/ellfilter/tikz/cd2.tikz.tex
+++ b/buch/papers/ellfilter/tikz/cd2.tikz.tex
@@ -47,21 +47,6 @@
(5,0) node(t_k_unten){} -- node[right, xshift=0.1cm]{$K^\prime \frac{K_1N}{K} = K^\prime_1$}
(5,0.5) node(t_k_opt_unten){};
- \foreach \i in {-2,...,1} {
- \foreach \j in {-2,...,1} {
- \begin{scope}[xshift=\i*4cm, yshift=\j*1cm]
-
- \node[zero] at ( 1, 0) {};
- \node[zero] at ( 3, 0) {};
- \node[pole] at ( 1,0.5) {};
- \node[pole] at ( 3,0.5) {};
-
- \end{scope}
- }
- }
-
-
-
\draw[ultra thick, ->, darkgreen] (5, 0) -- node[yshift=-0.5cm]{Durchlassbereich} (0,0);
\draw[ultra thick, ->, orange] (-0, 0) -- node[align=center]{Übergangs-\\berech} (0,0.5);
@@ -74,10 +59,20 @@
\draw (2,0.5) node[dot]{} node[anchor=north] {\small $-1/k$};
\draw (4,0.5) node[dot]{} node[anchor=north] {\small $1/k$};
+ \foreach \i in {-2,...,1} {
+ \foreach \j in {-2,...,1} {
+ \begin{scope}[xshift=\i*4cm, yshift=\j*1cm]
+ \node[zero] at ( 1, 0) {};
+ \node[zero] at ( 3, 0) {};
+ \node[pole] at ( 1,0.5) {};
+ \node[pole] at ( 3,0.5) {};
- \end{scope}
+ \end{scope}
+ }
+ }
+ \end{scope}
\end{scope}
diff --git a/buch/papers/ellfilter/tikz/cd3.tikz.tex b/buch/papers/ellfilter/tikz/cd3.tikz.tex
index fa9cc08..ae18519 100644
--- a/buch/papers/ellfilter/tikz/cd3.tikz.tex
+++ b/buch/papers/ellfilter/tikz/cd3.tikz.tex
@@ -36,7 +36,6 @@
% \fill[orange!30] (0,0) rectangle (5, 0.5);
\fill[yellow!30] (0,0) rectangle (1, 0.5);
- \node[] at (2.5, 0.25) {\small $N=5$};
% \draw[decorate,decoration={brace,amplitude=3pt,mirror}, yshift=0.05cm]
@@ -62,11 +61,13 @@
-
+ \onslide<2->{
\draw[ultra thick, ->, darkgreen] (5, 0) -- node[yshift=-0.4cm]{Durchlassbereich} (0,0);
\draw[ultra thick, ->, orange] (-0, 0) -- node[align=center]{Übergangs-\\berech} (0,0.5);
\draw[ultra thick, ->, red] (0,0.5) -- node[align=center, yshift=0.4cm]{Sperrbereich} (5, 0.5);
-
+ \node[] at (2.5, 0.25) {\small $N=5$};
+ }
+ \onslide<1->{
\draw (4,0 ) node[dot]{} node[anchor=south] {\small $1$};
\draw (2,0 ) node[dot]{} node[anchor=south] {\small $-1$};
\draw (0,0 ) node[dot]{} node[anchor=south west] {\small $1$};
@@ -74,6 +75,7 @@
\draw (2,0.5) node[dot]{} node[anchor=north] {\small $-1/k$};
\draw (4,0.5) node[dot]{} node[anchor=north] {\small $1/k$};
+ }
\end{scope}
diff --git a/buch/papers/ellfilter/tikz/elliptic_transform1.tikz.tex b/buch/papers/ellfilter/tikz/elliptic_transform1.tikz.tex
new file mode 100644
index 0000000..2a36ee0
--- /dev/null
+++ b/buch/papers/ellfilter/tikz/elliptic_transform1.tikz.tex
@@ -0,0 +1,76 @@
+\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2]
+
+ \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm]
+
+ \tikzset{pole/.style={cross out, draw, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}}
+
+ \begin{scope}[xscale=1, yscale=1.5]
+
+ \begin{scope}[]
+
+ \fill[orange!25] (0,0) rectangle (1.5, 0.75);
+ \fill[yellow!50] (0,0) rectangle (0.5, 0.25);
+
+ \draw[gray, ->] (0,-0.75) -- (0,1.25) node[anchor=south]{$\mathrm{Im}~z$};
+ \draw[gray, ->] (-1.75,0) -- (1.75,0) node[anchor=west]{$\mathrm{Re}~z$};
+
+ \draw[gray] ( 0.5,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $K$};
+ \draw[gray] (0, 0.25) +(0.05, 0) -- +(-0.05, 0) node[inner sep=0, anchor=east]{\small $jK^\prime$};
+
+ % \draw[gray] ( 1.5,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $K_1$};
+ % \draw[gray] (0, 0.75) +(0.05, 0) -- +(-0.05, 0) node[inner sep=0, anchor=east]{\small $jK_1^\prime$};
+
+ \clip(-1.6,-0.6) rectangle (1.6,1.6);
+ \begin{scope}[xscale=0.5, yscale=0.25, blue]
+ \foreach \i in {-1,...,1} {
+ \foreach \j in {-1,...,2} {
+ \begin{scope}[xshift=\i*2cm, yshift=\j*2cm]
+ \node[zero] at ( 1, 0) {};
+ \node[zero] at ( -1, 0) {};
+ \node[pole] at ( 1,1) {};
+ \node[pole] at ( -1,1) {};
+ \end{scope}
+ }
+ }
+ \end{scope}
+
+ \node at (0,2) {$\cd \left(N~K_1~z , k_1 \right)$};
+ \node at (0,2) {$w= \cd(z K, k)$};
+
+ \draw[scale=0.2, domain=0.02:5, variable=\x, red] plot ({\x1+3}, {1/\x+2});
+
+ \end{scope}
+
+ \begin{scope}[xshift=5cm]
+
+ \fill[orange!50] (0,0) rectangle (1.5, 0.75);
+ \fill[yellow!25] (0,0) rectangle (0.5, 0.25);
+
+ \draw[gray, ->] (0,-0.75) -- (0,1.25) node[anchor=south]{$\mathrm{Im}~z$};
+ \draw[gray, ->] (-1.75,0) -- (1.75,0) node[anchor=west]{$\mathrm{Re}~z$};
+
+ % \draw[gray] ( 0.5,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $K$};
+ % \draw[gray] (0, 0.25) +(0.05, 0) -- +(-0.05, 0) node[inner sep=0, anchor=east]{\small $jK^\prime$};
+
+ \draw[gray] ( 0.5,0) +(0,0.05) -- +(0, -0.05) node[inner sep=0, anchor=north] {\small $K_1$};
+ \draw[gray] (0, 0.75) +(0.05, 0) -- +(-0.05, 0) node[inner sep=0, anchor=east]{\small $jK_1^\prime$};
+
+ \clip(-1.6,-0.6) rectangle (1.6,1.6);
+ \begin{scope}[xscale=0.5, yscale=0.75, red]
+ \foreach \i in {-1,...,1} {
+ \foreach \j in {-1,...,0} {
+ \begin{scope}[xshift=\i*2cm, yshift=\j*2cm]
+ \node[zero] at ( 1, 0) {};
+ \node[zero] at ( -1, 0) {};
+ \node[pole] at ( 1,1) {};
+ \node[pole] at ( -1,1) {};
+ \end{scope}
+ }
+ }
+ \end{scope}
+
+ \end{scope}
+
+\end{scope}
+
+\end{tikzpicture}
diff --git a/buch/papers/ellfilter/tikz/elliptic_transform.tikz.tex b/buch/papers/ellfilter/tikz/elliptic_transform2.tikz.tex
index c91ecf1..20c2d82 100644
--- a/buch/papers/ellfilter/tikz/elliptic_transform.tikz.tex
+++ b/buch/papers/ellfilter/tikz/elliptic_transform2.tikz.tex
@@ -9,55 +9,66 @@
\tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm]
\tikzstyle{dot} = [fill, circle, inner sep =0, minimum height=0.1cm]
- \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}}
+ \tikzset{pole/.style={cross out, draw, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}}
\begin{scope}[xscale=3, yscale=3]
\begin{scope}[]
-
+ % \onslide<4->{
\fill[orange!30, scale=1.735] (0,0) rectangle (\d*\a+0.5, \d/\a+0.5);
+ % }
+ % \onslide<2->{
\fill[yellow!30] (0,0) rectangle (\d*\a+0.5, \d/\a+0.5);
+ % }
- \begin{scope}[scale=1.735, red]
- \draw (0,0) rectangle (\d*\a/\n+0.5/\n, \d/\a+0.5);
- \draw[gray] (0,0) -- (\d*\a/\n+0.5/\n, \d/\a+0.5);
-
- \node[zero] at ( \d*\a/\n+0.5/\n, \d/\a+0.5) {};
- \node[pole, color=red] at ( \d*\a/\n+0.5/\n, 0) {};
-
-
- \draw[] ( \d*\a/\n+0.5/\n,0) node[anchor=north] {\small $K_1$};
- \draw[] (0, \d/\a+0.5) node[anchor=east]{\small $jK_1^\prime$};
-
+ \begin{scope}[]
+ \clip(0,0) rectangle (2,1.25);
+ \draw[thick, scale=1, domain=0.1:10, variable=\x, smooth, samples=200] plot ({\d*\x1+0.5}, {\d/\x+0.5});
+ \node at(1.25,0.7) {$K + jK^\prime$ Ortskurve};
\end{scope}
+ % \onslide<2->{
\begin{scope}[blue]
\draw[] (0,0) rectangle (\d*\a+0.5, \d/\a+0.5);
- \foreach \i in {1,...,\nn} {
- \draw[gray, dotted] (\i*\d*\a/\n+\i*0.5/\n, 0) -- (\i*\d*\a/\n+\i*0.5/\n, \d/\a+0.5);
- }
- \node[zero] at ( \d*\a+0.5, \d/\a+0.5) {};
- \node[pole, color=blue] at ( \d*\a+0.5, 0) {};
+
+ \node[pole] at ( \d*\a+0.5, \d/\a+0.5) {};
+ \node[zero] at ( \d*\a+0.5, 0) {};
\draw[] ( \d*\a+0.5,0) node[anchor=north] {\small $K$};
\draw[] (0, \d/\a+0.5) node[anchor=east]{\small $jK^\prime$};
+ % \onslide<3->{
+
+ \foreach \i in {1,...,\nn} {
+ \draw[gray, dotted] (\i*\d*\a/\n+\i*0.5/\n, 0) -- (\i*\d*\a/\n+\i*0.5/\n, \d/\a+0.5);
+ }
+
\node[dot, gray] at (\d*\a/\n+0.5/\n, \d/\a+0.5) {};
\node[above] at (0.5*\d*\a/\n+0.5*0.5/\n, \d/\a+0.5) {\small $K/N$};
-
+ % }
\end{scope}
+ % }
- \draw[thick, gray, ->] (0,-0.25) -- (0,1.25) node[anchor=south]{$\mathrm{Im}$};
- \draw[thick, gray, ->] (-0.25,0) -- (2,0) node[anchor=west]{$\mathrm{Re}$};
+ % \onslide<4->{
+ \begin{scope}[scale=1.735, red]
+ \draw (0,0) rectangle (\d*\a/\n+0.5/\n, \d/\a+0.5);
+ \draw[gray] (0,0) -- (\d*\a/\n+0.5/\n, \d/\a+0.5);
- \begin{scope}[]
- \clip(0,0) rectangle (2,1.25);
- \draw[scale=1, domain=0.1:10, variable=\x, smooth, samples=200] plot ({\d*\x1+0.5}, {\d/\x+0.5});
+ \node[pole] at ( \d*\a/\n+0.5/\n, \d/\a+0.5) {};
+ \node[zero] at ( \d*\a/\n+0.5/\n, 0) {};
+
+
+ \draw[] ( \d*\a/\n+0.5/\n,0) node[anchor=north] {\small $K_1$};
+ \draw[] (0, \d/\a+0.5) node[anchor=east]{\small $jK_1^\prime$};
\end{scope}
- \end{scope}
+ % }
+ \draw[gray, ->] (0,-0.25) -- (0,1.25) node[anchor=south]{$\mathrm{Im}$};
+ \draw[gray, ->] (-0.25,0) -- (2,0) node[anchor=west]{$\mathrm{Re}$};
+
+ \end{scope}
\end{scope}
diff --git a/buch/papers/ellfilter/tikz/filter.tikz.tex b/buch/papers/ellfilter/tikz/filter.tikz.tex
new file mode 100644
index 0000000..05b59b9
--- /dev/null
+++ b/buch/papers/ellfilter/tikz/filter.tikz.tex
@@ -0,0 +1,26 @@
+\begin{tikzpicture}[>=stealth', auto, node distance=2cm, scale=1.2]
+
+ \tikzstyle{zero} = [draw, circle, inner sep =0, minimum height=0.15cm]
+
+ \tikzset{pole/.style={cross out, draw=black, minimum size=(0.15cm-\pgflinewidth), inner sep=0pt, outer sep=0pt}}
+
+ \begin{scope}[xscale=2, yscale=2]
+
+ \fill[ gray!20] (0,0) rectangle (1,0.707);
+
+ \draw[gray, ->] (0,-0.25) -- (0,1.25) node[anchor=south]{$|H(\Omega)|$};
+ \draw[gray, ->] (-0.25,0) -- (3,0) node[anchor=west]{$\Omega$};
+
+ \draw[fill = gray!20] (0,0.707) node[left] {$\sqrt{\frac{1}{1+\varepsilon^2}}$} -| (1,0) node[below] {$\Omega_p$};
+
+ \draw[fill = gray!20] (0,0.707) node[left] {$\sqrt{\frac{1}{1+\varepsilon^2}}$} -| (1,0) node[below] {$\Omega_p$};
+
+ \begin{scope}[]
+ \draw[thick, domain=0:2.5, variable=\x, smooth, samples=200] plot
+ ({\x}, {sqrt(abs(1/ (1 + \x^10)))});
+
+ \end{scope}
+
+ \end{scope}
+
+\end{tikzpicture}
diff --git a/buch/papers/ellfilter/tikz/sn.tikz.tex b/buch/papers/ellfilter/tikz/sn.tikz.tex
index 6ced3c5..8e4d223 100644
--- a/buch/papers/ellfilter/tikz/sn.tikz.tex
+++ b/buch/papers/ellfilter/tikz/sn.tikz.tex
@@ -17,29 +17,33 @@
\begin{scope}[xshift=-1cm]
- \draw[ultra thick, ->, darkgreen] (0, 0) -- (0,0.5);
- \draw[ultra thick, ->, orange] (1, 0) -- (0,0);
- \draw[ultra thick, ->, red] (2, 0) -- (1,0);
- \draw[ultra thick, ->, blue] (2,0.5) -- (2, 0);
- \draw[ultra thick, ->, purple] (1, 0.5) -- (2,0.5);
- \draw[ultra thick, ->, cyan] (0, 0.5) -- (1,0.5);
-
+ % \pause
+ \draw[ultra thick, <-, orange] (2, 0) -- (1,0);
+ % \pause
+ \draw[ultra thick, <-, darkgreen] (2,0.5) -- (2, 0);
+ % \pause
+ \draw[ultra thick, <-, cyan] (1, 0.5) -- (2,0.5);
+ % \pause
+ \draw[ultra thick, <-, blue] (0, 0) -- (0,0.5);
+ \draw[ultra thick, <-, purple] (0, 0.5) -- (1,0.5);
+ \draw[ultra thick, <-, red] (1, 0) -- (0,0);
+ % \pause
\foreach \i in {-2,...,2} {
\foreach \j in {-2,...,1} {
\begin{scope}[xshift=\i*4cm, yshift=\j*1cm]
- \draw[opacity=0.5, ->, darkgreen] (0, 0) -- (0,0.5);
- \draw[opacity=0.5, ->, orange] (1, 0) -- (0,0);
- \draw[opacity=0.5, ->, red] (2, 0) -- (1,0);
- \draw[opacity=0.5, ->, blue] (2,0.5) -- (2, 0);
- \draw[opacity=0.5, ->, purple] (1, 0.5) -- (2,0.5);
- \draw[opacity=0.5, ->, cyan] (0, 0.5) -- (1,0.5);
- \draw[opacity=0.5, ->, darkgreen] (0,1) -- (0,0.5);
- \draw[opacity=0.5, ->, blue] (2,0.5) -- (2, 1);
- \draw[opacity=0.5, ->, purple] (3, 0.5) -- (2,0.5);
- \draw[opacity=0.5, ->, cyan] (4, 0.5) -- (3,0.5);
- \draw[opacity=0.5, ->, red] (2, 0) -- (3,0);
- \draw[opacity=0.5, ->, orange] (3, 0) -- (4,0);
+ \draw[opacity=0.5, <-, blue] (0, 0) -- (0,0.5);
+ \draw[opacity=0.5, <-, red] (1, 0) -- (0,0);
+ \draw[opacity=0.5, <-, orange] (2, 0) -- (1,0);
+ \draw[opacity=0.5, <-, darkgreen] (2,0.5) -- (2, 0);
+ \draw[opacity=0.5, <-, cyan] (1, 0.5) -- (2,0.5);
+ \draw[opacity=0.5, <-, purple] (0, 0.5) -- (1,0.5);
+ \draw[opacity=0.5, <-, blue] (0,1) -- (0,0.5);
+ \draw[opacity=0.5, <-, darkgreen] (2,0.5) -- (2, 1);
+ \draw[opacity=0.5, <-, cyan] (3, 0.5) -- (2,0.5);
+ \draw[opacity=0.5, <-, purple] (4, 0.5) -- (3,0.5);
+ \draw[opacity=0.5, <-, orange] (2, 0) -- (3,0);
+ \draw[opacity=0.5, <-, red] (3, 0) -- (4,0);
\node[zero] at ( 1, 0) {};
\node[zero] at ( 3, 0) {};
@@ -57,10 +61,13 @@
\draw[gray] ( 1,0) +(0,0.1) -- +(0, -0.1) node[inner sep=0, anchor=north] {\small $K$};
\draw[gray] (0, 0.5) +(0.1, 0) -- +(-0.1, 0) node[inner sep=0, anchor=east]{\small $jK^\prime$};
-
-
\end{scope}
+ \node[zero] at (4,3) (n) {};
+ \node[anchor=west] at (n.east) {Zero};
+ \node[pole, below=0.25cm of n] (n) {};
+ \node[anchor=west] at (n.east) {Pole};
+
\begin{scope}[yshift=-4cm, xscale=0.75]
\draw[gray, ->] (-6,0) -- (6,0) node[anchor=west]{$w$};