aboutsummaryrefslogtreecommitdiffstats
path: root/buch/papers/reedsolomon
diff options
context:
space:
mode:
authorJODBaer <JODBaer@github.com>2021-07-21 21:18:31 +0200
committerJODBaer <JODBaer@github.com>2021-07-21 21:18:31 +0200
commit5397a77e20a23338279ffe4faa59453104be5b95 (patch)
tree945227f4a22626f7618e838e57cba0eaf777cdc4 /buch/papers/reedsolomon
parentMerge remote-tracking branch 'upstream/master' into Baer (diff)
downloadSeminarMatrizen-5397a77e20a23338279ffe4faa59453104be5b95.tar.gz
SeminarMatrizen-5397a77e20a23338279ffe4faa59453104be5b95.zip
update
Diffstat (limited to '')
-rw-r--r--buch/papers/reedsolomon/dtf.tex41
-rw-r--r--buch/papers/reedsolomon/experiments/plot.tex130
-rw-r--r--buch/papers/reedsolomon/images/plotfft.tex68
-rw-r--r--buch/papers/reedsolomon/packages.tex2
4 files changed, 143 insertions, 98 deletions
diff --git a/buch/papers/reedsolomon/dtf.tex b/buch/papers/reedsolomon/dtf.tex
index 27c6150..a111527 100644
--- a/buch/papers/reedsolomon/dtf.tex
+++ b/buch/papers/reedsolomon/dtf.tex
@@ -14,21 +14,42 @@ wobei sie dann bei späteren Berchnungen ganz nützlich ist.
\subsection{Diskrete Fourientransformation Zusamenhang
\label{reedsolomon:subsection:dtfzusamenhang}}
Die Diskrete Fourientransformation ist definiert als
-
+ \[
+ \label{ft_discrete}
+ \hat{c}_{k}
+ = \frac{1}{N} \sum_{n=0}^{N-1}
+ {f}_n \cdot e^{-\frac{2\pi j}{N} \cdot kn}
+ \]
+, wenn man nun
+ \[
+ w = e^{-\frac{2\pi j}{N} k}
+ \]
+ersetzte, und $N$ konstantbleibt, erhält man
+ \[
+ \hat{c}_{k}=\frac{1}{N}( {f}_0 w^0 + {f}_1 w^1 + {f}_2 w^2 + \dots + {f}_{N-1} w^N)
+ \]
+was überaust ähnlich zu unserem Polynomidee ist.
\subsection{Übertragungsabfolge
\label{reedsolomon:subsection:Übertragungsabfolge}}
-Das Signal.... sind die Daten, Zahlen welche übertragen werden sollen.
-Das speziell ist das wir 100 Punkte übertragen und von 64 bis 100,
-werden nur Null Punkte übertragen, dies weiss auch unser Empfänger.
-Nun wird das Signal in Abbildung... codiert...
-Somit wird die Information jedes Punktes auf das ganze spektrum von 0 bis 100 übertragen.
-Kommen nuun drei Fehler... hinzu zu diesem codierten Signal sind diese nicht zu erkennen.
-Nach dem Empfangen... und decodieren ... erkennt man die fehlerhafte information in den Punkten 64 bis 100.
-Filtert man nur diese Punkte heraus und Transformiert sie mit Fourier erhält man die stellen an denen die Fehler sich eingeschlichen haben.
+
+\begin{enumerate}[1)]
+\item Das Signal hat 64 die Daten, Zahlen welche übertragen werden sollen.
+Dabei zusätzlich nach 16 Fehler abgesichert, macht insgesamt 96 Übertragungszahlen.
+\item Nun wurde mittels der schnellen diskreten Fourientransformation diese 96 codiert.
+Das heisst alle information ist in alle Zahlenvorhanden.
+\item Nun kommen drei Fehler dazu an den Übertragungsstellen 7, 21 und 75.
+\item Dieses wird nun Empfangen und mittels inversen diskreten Fourientransormation, wieder rücktransformiert.
+\item Nun sieht man den Fehler im Decodieren in den Übertragungsstellen 64 bis 96.
+\item Nimmt man nun nur diese Stellen 64 bis 96, auch Syndrom genannt, und Transformiert diese.
+\item Bekommt man die Fehlerstellen im Locator wieder, zwar nichtso genau, dennoch erkkent man wo die Fehler stattgefunden haben.
+\end{enumerate}
\begin{figure}
\centering
- %\input{papers/reedsolomon/images/plotfft.tex}
+ \resizebox{0.9\textwidth}{!}{
+ %\includegraphics[width=0.5\textwidth]{papers/reedsolomon/images/plot.pdf}
+ \input{papers/reedsolomon/images/plotfft.tex}
+ }
\caption{Übertragungsabfolge \ref{reedsolomon:subsection:Übertragungsabfolge}}
\label{fig:sendorder}
\end{figure} \ No newline at end of file
diff --git a/buch/papers/reedsolomon/experiments/plot.tex b/buch/papers/reedsolomon/experiments/plot.tex
index bf9aadc..2196c82 100644
--- a/buch/papers/reedsolomon/experiments/plot.tex
+++ b/buch/papers/reedsolomon/experiments/plot.tex
@@ -13,69 +13,73 @@
\newcommand{\y}{-8}
\begin{document}
-\tikzset{
- node/.style={rectangle, draw=black!100, thick, on grid}, % on grid added
- dangling node/.style={node, fill=black!30}
-}
\begin{tikzpicture}[]
-
-\filldraw[red] (0,0) circle (5mm);
- %Knote
-\matrix[draw = none, column sep=20mm, row sep=20mm]{
- \node(signal) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Signal}}]
- \addplot[] table[col sep=comma] {signal.txt};
- \end{axis}
- \end{tikzpicture}}; &
- \node(codiert) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Codiert}}]
- \addplot[] table[col sep=comma] {codiert.txt};
- \end{axis}
- \end{tikzpicture}}; \\
+ %---------------------------------------------------------------
+ %Knote
+ \matrix[draw = none, column sep=20mm, row sep=4mm]{
+ \node(signal) [] {
+ \begin{tikzpicture}
+ \begin{axis}[
+ title = {\Large {Signal}},
+ xlabel={Anzahl Übertragene Zahlen},
+ xtick={0,20,40,64,80,98},]
+ \addplot[blue] table[col sep=comma] {signal.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
- &\node(fehler) [] {
- \begin{tikzpicture}
- \begin{axis}[scale=0.6, title = {\Large {Fehler}}]
- \addplot[] table[col sep=comma] {fehler.txt};
- \end{axis}
- \end{tikzpicture}};\\
-
- \node(decodiert) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Decodiert}}]
- \addplot[] table[col sep=comma] {decodiert.txt};
- \end{axis}
- \end{tikzpicture}}; &
-
- \node(empfangen) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Empfangen}}]
- \addplot[] table[col sep=comma] {empfangen.txt};
- \end{axis}
- \end{tikzpicture}};\\
-
- \node(syndrom) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Syndrom}}]
- \addplot[] table[col sep=comma] {syndrom.txt};
- \end{axis}
- \end{tikzpicture}}; &
-
- \node(locator) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Locator}}]
- \addplot[] table[col sep=comma] {locator.txt};
- \end{axis}
- \end{tikzpicture}};\\
-};
+ \node(codiert) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Codiert}}]
+ \addplot[] table[col sep=comma] {codiert.txt};
+ \end{axis}
+ \end{tikzpicture}}; \\
+
+ &\node(fehler) [] {
+ \begin{tikzpicture}
+ \begin{axis}[scale=0.6, title = {\Large {Fehler}}]
+ \addplot[red] table[col sep=comma] {fehler.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+
+ \node(decodiert) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Decodiert}}]
+ \addplot[blue] table[col sep=comma] {decodiert.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(empfangen) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Empfangen}}]
+ \addplot[] table[col sep=comma] {empfangen.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+
+ \node(syndrom) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Syndrom}}]
+ \addplot[blue] table[col sep=comma] {syndrom.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(locator) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Locator}}]
+ \addplot[] table[col sep=comma] {locator.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+ };
+ %-------------------------------------------------------------
%FFT & IFFT deskription
-
- \draw[thin,gray,dashed] (0,15) to (0,-15);
- \node(FFT) [ scale=0.7] at (0,15.3) {FFT IFFT};
+ \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[thick, ->,] (fehler.west)++(-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);
@@ -85,7 +89,15 @@
\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);
+ %item
+ \node[circle, draw, fill =lightgray] at (signal.north west)+(1,0) {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 (empfangen.north west) {4};
+ \node[circle, draw, fill =lightgray] at (decodiert.north west) {5};
+ \node[circle, draw, fill =lightgray] at (syndrom.north west) {6};
+ \node[circle, draw, fill =lightgray] at (locator.north west) {7};
- \end{tikzpicture}
+\end{tikzpicture}
\end{document}
diff --git a/buch/papers/reedsolomon/images/plotfft.tex b/buch/papers/reedsolomon/images/plotfft.tex
index e6d3b47..83a89eb 100644
--- a/buch/papers/reedsolomon/images/plotfft.tex
+++ b/buch/papers/reedsolomon/images/plotfft.tex
@@ -1,77 +1,89 @@
%
-% Plot der èbertrangungsabfolge ins FFT und zurück mit IFFT
+% Plot der Übertrangungsabfolge ins FFT und zurück mit IFFT
%
-\tikzset{
- node/.style={rectangle, draw=black!100, thick, on grid}, % on grid added
- dangling node/.style={node, fill=black!30}
-}
\begin{tikzpicture}[]
%---------------------------------------------------------------
%Knote
-\matrix[draw = none, column sep=20mm, row sep=20mm]{
+\matrix[draw = none, column sep=25mm, row sep=2mm]{
\node(signal) [] {
\begin{tikzpicture}
- \begin{axis}[title = {\Large {Signal}}]
- \addplot[] table[col sep=comma] {signal.txt};
+ \begin{axis}
+ [title = {\Large {Signal}},
+ xlabel={Anzahl Übertragene Zahlen},
+ xtick={0,20,40,64,80,98},]
+ \addplot[blue] table[col sep=comma] {papers/reedsolomon/images/signal.txt};
\end{axis}
\end{tikzpicture}}; &
\node(codiert) [] {
\begin{tikzpicture}
\begin{axis}[title = {\Large {Codiert}}]
- \addplot[] table[col sep=comma] {codiert.txt};
+ \addplot[] table[col sep=comma] {papers/reedsolomon/images/codiert.txt};
\end{axis}
\end{tikzpicture}}; \\
&\node(fehler) [] {
\begin{tikzpicture}
- \begin{axis}[scale=0.6, title = {\Large {Fehler}}]
- \addplot[] table[col sep=comma] {fehler.txt};
+ \begin{axis}[scale=0.6, title = {\Large {Fehler}},
+ xtick={7,21,75}]
+ \addplot[red] table[col sep=comma] {papers/reedsolomon/images/fehler.txt};
\end{axis}
\end{tikzpicture}};\\
\node(decodiert) [] {
\begin{tikzpicture}
\begin{axis}[title = {\Large {Decodiert}}]
- \addplot[] table[col sep=comma] {decodiert.txt};
+ \addplot[blue] table[col sep=comma] {papers/reedsolomon/images/decodiert.txt};
\end{axis}
\end{tikzpicture}}; &
\node(empfangen) [] {
\begin{tikzpicture}
\begin{axis}[title = {\Large {Empfangen}}]
- \addplot[] table[col sep=comma] {empfangen.txt};
+ \addplot[] table[col sep=comma] {papers/reedsolomon/images/empfangen.txt};
\end{axis}
\end{tikzpicture}};\\
\node(syndrom) [] {
\begin{tikzpicture}
\begin{axis}[title = {\Large {Syndrom}}]
- \addplot[] table[col sep=comma] {syndrom.txt};
+ \addplot[blue] table[col sep=comma] {papers/reedsolomon/images/syndrom.txt};
\end{axis}
\end{tikzpicture}}; &
\node(locator) [] {
\begin{tikzpicture}
\begin{axis}[title = {\Large {Locator}}]
- \addplot[] table[col sep=comma] {locator.txt};
+ \addplot[] table[col sep=comma] {papers/reedsolomon/images/locator.txt};
\end{axis}
\end{tikzpicture}};\\
};
%-------------------------------------------------------------
%FFT & IFFT deskription
- \draw[thin,gray,dashed] (0,15) to (0,-15);
- \node(FFT) [ scale=0.7] at (0,15.3) {FFT IFFT};
-
- %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);
-
- \end{tikzpicture} \ No newline at end of file
+\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[thick, ->,] (fehler.west)++(-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);
+
+%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 (empfangen.north west) {4};
+\node[circle, draw, fill =lightgray] at (decodiert.north west) {5};
+\node[circle, draw, fill =lightgray] at (syndrom.north west) {6};
+\node[circle, draw, fill =lightgray] at (locator.north west) {7};
+\end{tikzpicture} \ No newline at end of file
diff --git a/buch/papers/reedsolomon/packages.tex b/buch/papers/reedsolomon/packages.tex
index 4b1ee68..b84e228 100644
--- a/buch/papers/reedsolomon/packages.tex
+++ b/buch/papers/reedsolomon/packages.tex
@@ -9,4 +9,4 @@
%\usepackage{packagename}
\usepackage{pgfplots}
-
+\usepackage{filecontents}