diff options
author | JODBaer <JODBaer@github.com> | 2021-07-27 13:20:05 +0200 |
---|---|---|
committer | JODBaer <JODBaer@github.com> | 2021-07-27 13:20:05 +0200 |
commit | 88c208363cf560043f87c2c83fa251177e74cd1b (patch) | |
tree | b478fe2ae445a5e30643c8b8a87e1f63243149cd /buch/papers/reedsolomon | |
parent | update some files too (diff) | |
download | SeminarMatrizen-88c208363cf560043f87c2c83fa251177e74cd1b.tar.gz SeminarMatrizen-88c208363cf560043f87c2c83fa251177e74cd1b.zip |
save
Diffstat (limited to '')
-rw-r--r-- | buch/papers/reedsolomon/dtf.tex | 2 | ||||
-rw-r--r-- | buch/papers/reedsolomon/idee.tex | 18 | ||||
-rw-r--r-- | buch/papers/reedsolomon/tikz/plotfft.tex | 55 |
3 files changed, 35 insertions, 40 deletions
diff --git a/buch/papers/reedsolomon/dtf.tex b/buch/papers/reedsolomon/dtf.tex index 62e44cc..ffe98f8 100644 --- a/buch/papers/reedsolomon/dtf.tex +++ b/buch/papers/reedsolomon/dtf.tex @@ -53,7 +53,7 @@ Das heisst alle information ist in alle Zahlenvorhanden. \begin{figure} \centering - \resizebox{0.9\textwidth}{!}{ + \resizebox{\textwidth}{!}{ \includegraphics[width=\textwidth]{papers/reedsolomon/figures/plotfft} %\input{papers/reedsolomon/images/plotfft.tex} } diff --git a/buch/papers/reedsolomon/idee.tex b/buch/papers/reedsolomon/idee.tex index e18ccd2..519e642 100644 --- a/buch/papers/reedsolomon/idee.tex +++ b/buch/papers/reedsolomon/idee.tex @@ -22,7 +22,7 @@ Auch eine variante wäre es die Daten nach einem Fehler einfach nochmals zu send Eine Idee ist aus den Daten ein Polynom zu bilden. Diese Polynomfunktion bei bestimmten Werten, ausrechnet und diese Punkte dann überträgt. -Nehmen wir als beisbiel die Zahlen \textcolor{blue}{2}, \textcolor{blue}{1}, \textcolor{blue}{5}, +Nehmen wir als Beispiel die Zahlen \textcolor{blue}{2}, \textcolor{blue}{1}, \textcolor{blue}{5}, welche uns dann das Polynom \begin{equation} p(x) @@ -31,21 +31,21 @@ p(x) \label{reedsolomon:equation1} \end{equation} ergeben. -Übertragen werden nun die Werte an den stellen 1, 2, 3\dots 7 dieses Polynomes. +Übertragen werden nun die Werte dieses Polynomes an den Stellen 1, 2, 3\dots 7 dieses Polynomes. Grafisch sieht man dies dann in Abbildung \ref{fig:polynom}, -mit den Punkten, $p(1),p(2),...,p(7) = (\textcolor{green}{8}, -\textcolor{green}{15}, \textcolor{green}{26}, -\textcolor{green}{41}, \textcolor{green}{60}, -\textcolor{green}{83}, \textcolor{green}{110})$ -Wenn ein Fehler sich in die Übertragung eingeschlichen hatt, muss der Leser/Empfänger diesen erkennen und das Polynom rekonstruieren. +mit den Punkten, $p(1),p(2),...,p(7) = (\textcolor{darkgreen}{8}, +\textcolor{darkgreen}{15}, \textcolor{darkgreen}{26}, +\textcolor{darkgreen}{41}, \textcolor{darkgreen}{60}, +\textcolor{darkgreen}{83}, \textcolor{darkgreen}{110})$ +Wenn ein Fehler sich in die Übertragung eingeschlichen hat, muss der Leser/Empfänger diesen erkennen und das Polynom rekonstruieren. Der Leser/Empfänger weiss, den Grad des Polynoms und dessen Werte übermittelt wurden. \subsection{Beispiel} -Für das Beispeil aus der Gleichung \eqref{reedsolomon:equation1}, +Für das Beispiel aus der Gleichung \eqref{reedsolomon:equation1}, ist ein Polynome zweiten Grades durch drei Punkte eindeutig bestimmbar. Hat es Fehler in der Übertragunge gegeben,(Bei Abbildung \ref{fig:polynom}\textcolor{red}{roten Punkte}) kann man diese erkennen, da alle Punkte, die korrekt sind, auf dem Polynom liegen müssen. -(Bei Abbildung \ref{fig:polynom}\textcolor{green}{grünen Punkte}) +(Bei Abbildung \ref{fig:polynom}\textcolor{darkgreen}{grünen Punkte}) Ab wie vielen Fehler ist das Polynom nicht mehr erkennbar beim Übertragen von 7 Punkten? Bei 2 Fehlern kann man noch eindeutig bestimmen, dass das Polynom mit 4 Punkten, gegenüber dem mit 5 Punkten falsch liegt.\ref{fig:polynom} diff --git a/buch/papers/reedsolomon/tikz/plotfft.tex b/buch/papers/reedsolomon/tikz/plotfft.tex index 3036e14..db141a8 100644 --- a/buch/papers/reedsolomon/tikz/plotfft.tex +++ b/buch/papers/reedsolomon/tikz/plotfft.tex @@ -15,30 +15,27 @@ %--------------------------------------------------------------- %Knote - \matrix[draw = none, column sep=25mm, row sep=2mm]{ + \matrix(m) [draw = none, column sep=25mm, row sep=2mm]{ + \node(signal) [] { \begin{tikzpicture} \begin{axis} [title = {\Large {Signal}}, - xtick={0,20,40,64,80,98},] - \addplot[blue] table[col sep=comma] {tikz/signal.txt}; + xtick={0,20,40,64,80,98}] + \addplot[black] table[col sep=comma] {tikz/signal.txt}; \end{axis} \end{tikzpicture}}; & \node(codiert) [] { - \begin{tikzpicture} - \begin{axis}[title = {\Large {Codiert}}] - \addplot[] table[col sep=comma] {tikz/codiert.txt}; + \begin{tikzpicture}[] + \begin{axis}[ title = {\Large {Codiert \space + \space Fehler}}, + xtick={0,40,60,100}, axis y line*=left] + \addplot[green] table[col sep=comma] {tikz/codiert.txt}; \end{axis} - \end{tikzpicture}}; \\ - - &\node(fehler) [] { - \begin{tikzpicture} - \begin{axis}[scale=0.6, title = {\Large {Fehler}}, - xtick={7,21,75}] - \addplot[red] table[col sep=comma] {tikz/fehler.txt}; + \begin{axis}[xtick={7,21,75}, axis y line*=right] + \addplot[red] table[col sep=comma] {tikz/fehler.txt}; \end{axis} - \end{tikzpicture}};\\ + \end{tikzpicture}}; \\ \node(decodiert) [] { \begin{tikzpicture} @@ -50,7 +47,7 @@ \node(empfangen) [] { \begin{tikzpicture} \begin{axis}[title = {\Large {Empfangen}}] - \addplot[] table[col sep=comma] {tikz/empfangen.txt}; + \addplot[green] table[col sep=comma] {tikz/empfangen.txt}; \end{axis} \end{tikzpicture}};\\ @@ -71,26 +68,24 @@ %------------------------------------------------------------- %FFT & IFFT deskription - \draw[thin,gray,dashed] (0,12) to (0,-12); - \node(IFFT) [scale=0.7] at (0,12.3) {IFFT}; - \draw[<-](IFFT.south west)--(IFFT.south east); - \node(FFT) [scale=0.7, above of=IFFT] {FFT}; - \draw[->](FFT.north west)--(FFT.north east); + \draw[thin,gray,dashed] (0,9) to (0,-9); + \node(IFFT) [scale=0.8] at (0,9.3) {IFFT}; + \draw[stealth-](IFFT.south west)--(IFFT.south east); + \node(FFT) [scale=0.8, above of=IFFT] {FFT}; + \draw[-stealth](FFT.north west)--(FFT.north east); - \draw[thick, ->,] (fehler.west)++(-1,0) +(0.05,0.5) -- +(-0.1,-0.1) -- +(0.1,0.1) -- +(0,-0.5); + \draw[thick, ->,] (codiert)++(-1,0) +(0.05,0.5) -- +(-0.1,-0.1) -- +(0.1,0.1) -- +(0,-0.5); %Arrows - \draw[ultra thick, ->] (signal.east) to (codiert.west); - \draw[ultra thick, ->] (codiert.south) to (fehler.north); - \draw[ultra thick, ->] (fehler.south) to (empfangen.north); - \draw[ultra thick, ->] (empfangen.west) to (decodiert.east); - \draw[ultra thick, ->] (syndrom.east) to (locator.west); - \draw(decodiert.south east)++(-1.8,1) ellipse (1.3cm and 0.8cm) ++(-1.3,0) coordinate(zoom) ; - \draw[ultra thick, ->] (zoom) to[out=180, in=90] (syndrom.north); + \draw[thick, ->] (signal.east) to (codiert.west); + \draw[thick, ->] (codiert.south) to (empfangen.north); + \draw[thick, ->] (empfangen.west) to (decodiert.east); + \draw[thick, ->] (syndrom.east) to (locator.west); + \draw[thick](decodiert.south east)++(-1.8,1) ellipse (1.3cm and 0.8cm) ++(-1.3,0) coordinate(zoom) ; + \draw[thick, ->] (zoom) to[out=180, in=90] (syndrom.north); %item \node[circle, draw, fill =lightgray] at (signal.north west) {1}; - \node[circle, draw, fill =lightgray] at (codiert.north west) {2}; - \node[circle, draw, fill =lightgray] at (fehler.north west) {3}; + \node[circle, draw, fill =lightgray] at (codiert.north west) {2+3}; \node[circle, draw, fill =lightgray] at (empfangen.north west) {4}; \node[circle, draw, fill =lightgray] at (decodiert.north west) {5}; \node[circle, draw, fill =lightgray] at (syndrom.north west) {6}; |