aboutsummaryrefslogtreecommitdiffstats
path: root/buch/papers/reedsolomon
diff options
context:
space:
mode:
authorNunigan <michael.schmid2@ost.ch>2021-07-31 12:39:37 +0200
committerNunigan <michael.schmid2@ost.ch>2021-07-31 12:39:37 +0200
commit36d594e1694bce2d69b88667c249f5028fdf22a2 (patch)
tree2f20e014a5e7ca28caa343643be49956b43f1145 /buch/papers/reedsolomon
parentadded corrections from prof mueller (diff)
parentMerge pull request #58 from Kuehnee/master (diff)
downloadSeminarMatrizen-36d594e1694bce2d69b88667c249f5028fdf22a2.tar.gz
SeminarMatrizen-36d594e1694bce2d69b88667c249f5028fdf22a2.zip
Merge branch 'master' of https://github.com/AndreasFMueller/SeminarMatrizen
Diffstat (limited to 'buch/papers/reedsolomon')
-rw-r--r--buch/papers/reedsolomon/Makefile50
-rw-r--r--buch/papers/reedsolomon/dtf.tex114
-rw-r--r--buch/papers/reedsolomon/einleitung.tex10
-rw-r--r--buch/papers/reedsolomon/experiments/plot.tex2
-rw-r--r--buch/papers/reedsolomon/figures/plotfft.pdfbin0 -> 59617 bytes
-rw-r--r--buch/papers/reedsolomon/figures/polynom2.pdfbin0 -> 20317 bytes
-rw-r--r--buch/papers/reedsolomon/idee.tex117
-rw-r--r--buch/papers/reedsolomon/images/codiert.txt96
-rw-r--r--buch/papers/reedsolomon/images/decodiert.txt96
-rw-r--r--buch/papers/reedsolomon/images/empfangen.txt96
-rw-r--r--buch/papers/reedsolomon/images/fehler.txt96
-rw-r--r--buch/papers/reedsolomon/images/locator.txt96
-rw-r--r--buch/papers/reedsolomon/images/plotfft.tex89
-rw-r--r--buch/papers/reedsolomon/images/signal.txt96
-rw-r--r--buch/papers/reedsolomon/images/syndrom.txt96
-rw-r--r--buch/papers/reedsolomon/main.tex20
-rw-r--r--buch/papers/reedsolomon/packages.tex2
-rw-r--r--buch/papers/reedsolomon/standalone.tex30
-rw-r--r--buch/papers/reedsolomon/standalone/standalone.pdfbin0 -> 1835758 bytes
-rw-r--r--buch/papers/reedsolomon/tikz/codiert.txt (renamed from buch/papers/reedsolomon/experiments/codiert.txt)0
-rw-r--r--buch/papers/reedsolomon/tikz/decodiert.txt (renamed from buch/papers/reedsolomon/experiments/decodiert.txt)0
-rw-r--r--buch/papers/reedsolomon/tikz/empfangen.txt (renamed from buch/papers/reedsolomon/experiments/empfangen.txt)0
-rw-r--r--buch/papers/reedsolomon/tikz/fehler.txt (renamed from buch/papers/reedsolomon/experiments/fehler.txt)0
-rw-r--r--buch/papers/reedsolomon/tikz/locator.txt (renamed from buch/papers/reedsolomon/experiments/locator.txt)0
-rw-r--r--buch/papers/reedsolomon/tikz/plotfft.tex94
-rw-r--r--buch/papers/reedsolomon/tikz/plotfftraw.tex80
-rw-r--r--buch/papers/reedsolomon/tikz/polynom2.tex60
-rw-r--r--buch/papers/reedsolomon/tikz/polynomraw.tex (renamed from buch/papers/reedsolomon/images/polynom2.tex)21
-rw-r--r--buch/papers/reedsolomon/tikz/signal.txt (renamed from buch/papers/reedsolomon/experiments/signal.txt)0
-rw-r--r--buch/papers/reedsolomon/tikz/syndrom.txt (renamed from buch/papers/reedsolomon/experiments/syndrom.txt)0
30 files changed, 472 insertions, 889 deletions
diff --git a/buch/papers/reedsolomon/Makefile b/buch/papers/reedsolomon/Makefile
index 9c96e88..25fd98b 100644
--- a/buch/papers/reedsolomon/Makefile
+++ b/buch/papers/reedsolomon/Makefile
@@ -4,6 +4,52 @@
# (c) 2020 Prof Dr Andreas Mueller
#
-images:
- @echo "no images to be created in reedsolomon"
+SOURCES := \
+ anwendungen.tex \
+ codebsp.tex \
+ decmitfehler.tex \
+ decohnefehler.tex \
+ dtf.tex \
+ einleitung.tex \
+ endlichekoerper.tex \
+ hilfstabellen.tex \
+ idee.tex \
+ main.tex \
+ packages.tex \
+ rekonstruktion.tex \
+ restetabelle1.tex \
+ restetabelle2.tex \
+ standalone.tex \
+ zusammenfassung.tex
+
+TIKZFIGURES := \
+ tikz/polynom2.tex \
+ tikz/plotfft.tex
+
+FIGURES := $(patsubst tikz/%.tex, figures/%.pdf, $(TIKZFIGURES))
+
+
+all: images standalone
+
+
+.PHONY: images
+images: $(FIGURES)
+
+figures/%.pdf: tikz/%.tex
+ mkdir -p figures
+ pdflatex --output-directory=figures $<
+
+.PHONY: standalone
+standalone: standalone.tex $(SOURCES) $(FIGURES)
+ mkdir -p standalone
+ cd ../..; \
+ pdflatex \
+ --halt-on-error \
+ --shell-escape \
+ --output-directory=papers/reedsolomon/standalone \
+ papers/reedsolomon/standalone.tex;
+ cd standalone; \
+ bibtex standalone; \
+ makeindex standalone;
+
diff --git a/buch/papers/reedsolomon/dtf.tex b/buch/papers/reedsolomon/dtf.tex
index a111527..4552bed 100644
--- a/buch/papers/reedsolomon/dtf.tex
+++ b/buch/papers/reedsolomon/dtf.tex
@@ -1,55 +1,85 @@
%
-% teil3.tex -- Beispiel-File für Teil 3
+% dtf.tex -- Idee mit DFT
%
-% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
-%
-\section{Diskrete Fourier Transformation
+\section{Übertragung mit Hilfe der Diskrten Fourientransformation
\label{reedsolomon:section:dtf}}
\rhead{Umwandlung mit DTF}
-Um die Polynominterpolation zu umgehen, gehen wir nun über in die Fourientransformation.
-Dies wird weder eine erklärung der Forientransorfmation noch ein genauer gebrauch
-für den Reed-Solomon-Code. Dieser Abschnitt zeigt nur wie die Fourientransformation auf Fehler reagiert.
-wobei sie dann bei späteren Berchnungen ganz nützlich ist.
+Um die Polynominterpolation zu umgehen, gehen wir nun über in die Fourietransformation.
+Dies wird weder eine Erklärung der Forientransorfmation, noch ein genauer gebrauch für den Reed-Solomon-Code.
+Dieser Abschnitt zeigt nur wie die Fourietransformation auf Fehler reagiert.
+Das ganze zeigen wir mit einem Beispiel einer Übertragung von Zahlen mit Hilfe der Fourietransformation.
-\subsection{Diskrete Fourientransformation Zusamenhang
+\subsection{Diskrete Fourietransformation 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}}
+Mit hilfe der Fourietransformation werden die \textcolor{blue}{blauen Datenpunkte} transformiert,
+zu den \textcolor{darkgreen}{grünen Übertragungspunkten}.
+Durch eine Rücktransformation könnnen die \textcolor{blue}{blauen Datenpunkte} wieder rekonstruiert werden.
-\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}
+\subsubsection{Beispiel einer Übertragung
+\label{reedsolomon:subsection:Übertragungsabfolge}}
+Der Auftrag ist nun 64 Daten zu übertragen und nach 32 Fehler abzusicheren,
+16 Fehler erkennen und rekonstruieren.
+Dieser Auftrag soll mittels Fouriertransformation bewerkstelligt werden.
+In der Abbildung \ref{reedsolomon:subsection:Übertragungsabfolge} sieht man dies Schritt für Schritt,
+und hier werden die einzelne Schritte erklärt:
+\begin{enumerate}[(1)]
+ \item Das Signal hat 64 die Daten $k$, hier zufällige Zahlen, welche übertragen werden sollen.
+ Zusätzlich soll nach 16 Fehler $t$, die rekonstruierbar sind abgesichert werden.
+ Das macht dann insgesamt $k + 2t =
+ 64 +2 \cdot 16= 96$ Übertragungszahlen.
+ (siehe Abschnitt \externaldocument{papers/reedsolomon/idee}\ref{reedsolomon:section:Fehlerkorrekturstellen})
+ Die 32 Fehlerkorrekturstellen werden als Nullzahlen Übertragen.
+ \item Nun werden mittels der diskreten Fourietransformation diese 96 codiert, transformiert.
+ Das heisst alle Informationen ist in alle Zahlenvorhanden, auch die Fehlerkorrekturstellen Nullzahlen.
+ \item Nun kommen drei Fehler dazu an den Übertragungsstellen 7, 21 und 75.
+ Die Fehler können auf den ganzen 96 Übertragungswerten liegen, wie die 75 zeigt.
+Zu Beachten ist auch noch, dass der Fehler um das 20- bis 150-Fache kleiner ist.Die Fehlerskala ist rechts.
+ \item Dieses wird nun Empfangen, man kann keine Fehler erkennen, da diese soviel kleiner sind.
+ Für das Decodieren wird die Inverse Fourietransformation angewendet, und alle Fehler werden mittransformiert.
+ \item Nun sieht man die Fehler im decodierten Signal in den Übertragungszahlen.
+ Von den Übertragungsstellen 64 bis 96 erkennt man, das diese nicht mehr Null sind.
+ \item Diese Fehlerkorrekturstellen 64 bis 96, dies definieren wir als Syndrom.
+ In diesem Syndrom ist die Fehlerinformation gespeichert und muss nur noch transformiert werden.
+ \item Hier sieht man genau wo die Fehler stattgefunden haben.
+ Leider nicht mehr mit der Qualtiätt der Ursprünglichen Fehler, sie sind nur noch 0.6 oder 0.4 gross.
+ Obwohl der Fehler um das 20Fache kleiner ist erkennt man im Locator die Fehlerstellen wieder.
+ \end{enumerate}
+ Nun haben wir mit Hilfe der Fourietransformation die 3 Fehlerstellen durch das Syndrom lokalisiert,
+ jetzt gilt es nur noch diese zu korrigieren und wir haben unser originales Signal wieder.
\begin{figure}
\centering
- \resizebox{0.9\textwidth}{!}{
- %\includegraphics[width=0.5\textwidth]{papers/reedsolomon/images/plot.pdf}
- \input{papers/reedsolomon/images/plotfft.tex}
+ \resizebox{1.1\textwidth}{!}{
+ \includegraphics[width=\textwidth]{papers/reedsolomon/figures/plotfft}
+ %\input{papers/reedsolomon/tikz/plotfftraw.tex}
}
\caption{Übertragungsabfolge \ref{reedsolomon:subsection:Übertragungsabfolge}}
\label{fig:sendorder}
-\end{figure} \ No newline at end of file
+\end{figure}
+
+Nun zur Definition der Diskrete Fourietransformation, diese ist definiert als
+ \begin{equation}
+ \hat{c}_{k}
+ = \frac{1}{N} \sum_{n=0}^{N-1}
+ {f}_n \cdot e^{-\frac{2\pi j}{N} \cdot kn}.
+ ,\label{reedsolomon:DFT}
+ \end{equation}
+ Wenn man nun
+ \begin{equation}
+ w =
+ e^{-\frac{2\pi j}{N} k}
+ \label{reedsolomon:DFT_summand}
+ \end{equation}
+ ersetzte, und $N$ konstantbleibt, erhält man
+ \begin{equation}
+ \hat{c}_{k}=
+ \frac{1}{N}( {f}_0 w^0 + {f}_1 w^1 + {f}_2 w^2 + \dots + {f}_{N-1} w^N)
+ \label{reedsolomon:DFT_polynom}
+ \end{equation}
+ was überaust ähnlich zu unserem Polynomidee ist.
+Die Polynominterpolation und die Fourietransformation rechnen beide mit reelen Zahlen.
+Wenn die Fehlerabweichung sehr sehr klein ist, erkennt man diese irgendwann nicht mehr.
+Zusätzlich muss mann immer Grenzen bestimmen auf wieviel Stellen gerechnet wird und wie die Fehler erkannt werden im Locator.
+Deshalb haben Mathematiker einen neuen Körper gesucht und ihn in der Endlichkeit gefunden,
+dies wird nun im nächsten Abschnitt genauer erklärt.
+
diff --git a/buch/papers/reedsolomon/einleitung.tex b/buch/papers/reedsolomon/einleitung.tex
index 2b1d878..074df05 100644
--- a/buch/papers/reedsolomon/einleitung.tex
+++ b/buch/papers/reedsolomon/einleitung.tex
@@ -7,13 +7,11 @@
\label{reedsolomon:section:einleitung}}
\rhead{Einleitung}
Der Reed-Solomon-Code ist entstanden um,
-das Problem der Fehler, bei der Datenübertragung, zu lösen.
-In diesem Abschnitt wird möglichst verständlich die mathematische Abfolge, Funktion oder Algorithmus erklärt.
+das Problem der Fehler bei der Datenübertragung, zu lösen.
+In diesem Abschnitt wird möglichst verständlich die mathematische Abfolge,
+Funktion oder Algorithmus des Reed-Solomon-Code erklärt.
Es wird jedoch nicht auf die technische Umsetzung oder Implementierung eingegangen.
-Um beim Datenübertragen Fehler zu erkennen, könnte man die Daten jeweils doppelt senden,
-und so jeweilige Fehler zu erkennen.
-Doch nur schon um weinige Fehler zu erkennen werden überproportional viele Daten doppelt und dreifach gesendet.
-Der Reed-Solomon-Code macht dies auf eine andere, clevere Weise.
+
diff --git a/buch/papers/reedsolomon/experiments/plot.tex b/buch/papers/reedsolomon/experiments/plot.tex
index 2196c82..4b156bb 100644
--- a/buch/papers/reedsolomon/experiments/plot.tex
+++ b/buch/papers/reedsolomon/experiments/plot.tex
@@ -90,7 +90,7 @@
\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 (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};
diff --git a/buch/papers/reedsolomon/figures/plotfft.pdf b/buch/papers/reedsolomon/figures/plotfft.pdf
new file mode 100644
index 0000000..80d17d2
--- /dev/null
+++ b/buch/papers/reedsolomon/figures/plotfft.pdf
Binary files differ
diff --git a/buch/papers/reedsolomon/figures/polynom2.pdf b/buch/papers/reedsolomon/figures/polynom2.pdf
new file mode 100644
index 0000000..55a50ac
--- /dev/null
+++ b/buch/papers/reedsolomon/figures/polynom2.pdf
Binary files differ
diff --git a/buch/papers/reedsolomon/idee.tex b/buch/papers/reedsolomon/idee.tex
index 39adbbf..41e0d4c 100644
--- a/buch/papers/reedsolomon/idee.tex
+++ b/buch/papers/reedsolomon/idee.tex
@@ -1,21 +1,30 @@
%
-% teil1.tex -- Beispiel-File für das Paper
-%
-% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+% idee.tex -- Polynom Idee
%
\section{Idee
\label{reedsolomon:section:idee}}
\rhead{Problemstellung}
+Um beim Datenübertragen Fehler zu erkennen, könnte man die Daten jeweils doppelt senden,
+und so jeweilige Fehler zu erkennen.
+Doch nur schon um Fehler zu erkennen werden überproportional viele Daten doppelt und dreifach gesendet.
+Der Reed-Solomon-Code macht dies auf eine andere, clevere Weise.
Das Problem liegt darin Informationen, Zahlen,
zu Übertragen und Fehler zu erkennen.
-Beim Reed-Solomon-Code kann man nicht nur Fehler erkennen,
+Speziell beim Reed-Solomon-Code kann man nicht nur Fehler erkennen,
man kann sogar einige Fehler korrigieren.
+Der Unterschied des Fehler erkennen und korrigiren, ist das beim Erkennen nur die Frage beantwortet wird: Ist die Übertragung fehlerhaft oder nicht?
+Beim Korrigieren werden Fehler erkannt und dann zusätzlich noch den original Wert rekonstruieren.
+Auch eine Variante wäre die Daten nach einer Fehlerhaften sendung, nochmals zum senden auffordern(auch hier wird doppelt und dreifach gesendung),
+was bei Reed-Solomon-Code-Anwendungen nicht immer sinnvoll ist.
+Anwendungen finden sind im Abchnitt \externaldocument{papers/reedsolomon/anwendungen}
+\ref{reedsolomon:section:anwendung} beschrieben.
+\subsection{Polynom-Ansatz
+\label{reedsolomon:section:polynomansatz}}
\rhead{Polynom-Ansatz}
-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},
+Eine Idee ist, aus den Daten ein Polynom zu bilden.
+Diese Polynomfunktion bei bestimmten Werten errechnet und diese Punkte dann überträgt.
+\begin{beispiel} Nehmen wir die Zahlen \textcolor{blue}{2}, \textcolor{blue}{1}, \textcolor{blue}{5},
welche uns dann das Polynom
\begin{equation}
p(x)
@@ -24,49 +33,64 @@ 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 \textcolor{darkgreen}{grünen Werte}
+dieses \textcolor{blue}{blauen 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.
-Der Leser/Empfänger weiss, den Grad des Polynoms und dessen Werte übermittelt wurden.
+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 \textcolor{darkgreen}{Werte} übermittelt wurden.
+Die Farbe blau brauchen wir für die \textcolor{blue}{Daten} welche wir mit der Farbe grün \textcolor{darkgreen}{Übermitteln}.
+\end{beispiel}
-\subsection{Beispiel}
-Für das Beispeil 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})
+\begin{beispiel}
+Ein Polynome zweiten Grades ist durch drei Punkte eindeutig bestimmbar.
+Hat es Fehler in der Übertragunge gegeben,in der Abbilbung \ref{fig:polynom} die \textcolor{red}{roten Punkte}).
+Erkennt man diese Fehler, da alle korrekten Punkte auf der Parabel liegen müssen.
+Die \textcolor{darkgreen}{grünen Punkte} bestimmen die Parabel, und die Fehler können zu den
+\textcolor{gray}{Orginalpunkte} rekonstruiert werden.
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}
-Werden es mehr Fehler kann nur erkennt werden, dass das Polynom nicht stimmt.
+gegenüber dem mit 5 Punkten falsch liegt. \ref{fig:polynom}
+Werden es mehr Fehler kann nur erkannt werden, dass das Polynom nicht stimmt.
Das orginale Polynom kann aber nicht mehr gefunden werden.
-Dafür sind mehr übertragene Werte nötig.
+Da andere Polynome oder das Konkurrenzpolynom, grau gestrichelt in Abbildung \ref{fig:polynom}, das orginal fehlleitet.
+Um das Konkurrenzpolynom auszuschliessen, währen mehr \textcolor{darkgreen}{Übertragungspunkte} nötig.
+\end{beispiel}
-\begin{figure}
+\begin{figure}%[!ht]
\centering
- %\includegraphics[width=0.5\textwidth]{papers/reedsolomon/images/polynom2}
- \input{papers/reedsolomon/images/polynom2.tex}
- \caption{Polynom $p(x)$ \eqref{reedsolomon:equation1}}
+ %\includegraphics[width=\textwidth]{papers/reedsolomon/figures/polynom2}
+ \input{papers/reedsolomon/tikz/polynomraw.tex}
+ \caption{Polynom $p(x)$ von der Gleichung\eqref{reedsolomon:equation1}}
\label{fig:polynom}
\end{figure}
-\section{Fehlerbestimmung
-\label{reedsolomon:section:Fehlerbestimmmung}}
-So wird ein Muster indentifiziert, welches genau vorherbestimmen kann,
-wie gross das Polynom sein muss und wie viele Übertragungspunkte gegeben werden müssen.
-Um zu bestimmen wie viel Fehler erkennt und korriegiert werden können.
-Die Anzahl Zahlen (Daten, ab hier verwenden wir das Wort Nutzlast),
-die Entschlüsselt werden sollen, brauchen die gleiche Anzahl an Polynomgraden, beginnend bei Grad 0. ( \( k-1 \) )
-Für die Anzahl an Übertragungspunkte, muss bestimmt werden wieviel Fehler erkennt und korrigiert werden sollen.
-Mit Hilfe der Tabelle, sieht man das es bei $t$ Fehlern und $k$ Nutzlast Zahlen,
-$k+2t$ Punkte übertragen werden müssen.
+\section{Fehlerkorekturstellen bestimmen
+\label{reedsolomon:section:Fehlerkorrekturstellen}}
+Um zu bestimmen wieviel zusätzliche \textcolor{darkgreen}{Übertragungspunkte} notwendig sind, um die Fehler zu korrigieren,
+muss man zuerst wissen, wieviel \textcolor{blue}{Daten} gesendet und wieviel \textcolor{red}{Fehler} erkennt werden sollen.
+Die Anzahl \textcolor{blue}{Daten} (ab hier verwenden wir das Wort Nutzlast), die als Polynomkoeffizente $k$ übergeben werden,
+brauchen die gleiche Anzahl an Polynomkoeffizententräger, beginnend bei Grad 0 somit ergibt sich der Polynomgrad mit $k-1$.
+Für die Anzahl der Fehler $t$, welche korrigiert werden können, gehen wir zum Beispiel.
+\begin{beispiel} von den Polynom \ref{reedsolomon:equation1} in, welchem wir \textcolor{darkgreen}{7 Übertragungspunkte} senden.
+Durch 3 Punkte wird das Polyom eindeutig bestimmt, nun haben wir mehrere Konkurrenzpolynome, doch mit maximal 2 Fehler liegen auf einem Konkurrenzpolynom,
+maximal 4 Punkte und auf unserem orginal 5 Punkte. Ansonsten hatt es mehr Fehler oder unser Konkurrenzpolynom ist das gleiche wie das Original.
+Somit können wir nun bestimmen, dass von den \textcolor{darkgreen}{7 Übertragungspunkten$u$} bis zu 2 Fehler korrigiert werden können und 4 Übertragungspunkte zusätzlich gesendet werden müssen.
+\end{beispiel}
+Man könnte auch dies in der Tabelle \ref{tab:fehlerkorrekturstellen} erkennen, doch mit dieser Gleichung
+\begin{equation}
+ \frac{\textcolor{darkgreen}{u}-\textcolor{blue}{k}}{\textcolor{red}{t}}
+ =2
+ \label{reedsolomon:equation2}
+\end{equation}
+zeigt sich, dass es $k+2t$ Übertragungspunkte braucht.
-\begin{center}
- \begin{tabular}{ c c c }
+\begin{table}
+ \centering
+ \begin{tabular}{ c c | c}
\hline
Nutzlas & Fehler & Übertragen \\
\hline
@@ -77,12 +101,11 @@ $k+2t$ Punkte übertragen werden müssen.
$k$ & $t$ & $k+2t$ Werte eines Polynoms vom Grad $k-1$ \\
\hline
\end{tabular}
-\end{center}
+ \caption{ Fehlerkorrekturstellen Bestimmung.}
+ \label{tab:fehlerkorrekturstellen}
+\end{table}
-Ein toller Nebeneffekt ist das dadurch auch $2t$ Fehler erkannt werden.
-Um zurück auf unser Beispiel zu kommen,
-können von den 7 Übertragungspunkten bis zu $2t = 2\cdot2 = 4 $ Punkten falsch liegen
-und es wird kein eindeutiges Polynom zweiten Grades erkannt, und somit die Nutzlast Daten als fehlerhaft deklariert.
-Um aus den Übertragenen Zahlen wieder die Nutzlastzahlen zu bekommen könnte man eine Polynominterpolation anwenden,
-doch die Punkte mit Polynominterpolation zu einem Polynom zu rekonstruieren ist schwierig und Fehleranfällig.
+Ein Nebeneffekt ist, dass dadurch auch $2t$ Fehler erkannt werden können, nicht aber korrigiert.
+Um aus den übertragenen Zahlen wieder die Nutzlastzahlen zu bekommen könnte man eine Polynominterpolation anwenden,
+doch die Punkte mit Polynominterpolation zu einem Polynom zu rekonstruieren ist schwierig und fehleranfällig.
diff --git a/buch/papers/reedsolomon/images/codiert.txt b/buch/papers/reedsolomon/images/codiert.txt
deleted file mode 100644
index 4a481d8..0000000
--- a/buch/papers/reedsolomon/images/codiert.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,284
-1,131.570790435043
-2,41.9840308053375
-3,12.1189172092243
-4,23.8408857476069
-5,69.1793197789512
-6,24.0186013379153
-7,37.3066577242559
-8,18.2010889773887
-9,12.3214904922455
-10,15.6627133315015
-11,24.5237955316204
-12,32.1114345314062
-13,44.9845039238714
-14,13.5324640263625
-15,10.1736266929292
-16,4.58257569495584
-17,23.217268502288
-18,16.5769107917917
-19,6.89948680823017
-20,4.84567134895776
-21,10.4219666223433
-22,43.6179140616243
-23,35.9073375743642
-24,15.0332963783729
-25,21.7594021268945
-26,23.2496572716993
-27,17.9815599423852
-28,11.3577742151117
-29,38.467599433197
-30,28.3035029562577
-31,9.54321919833388
-32,21.377558326432
-33,17.6292439561917
-34,12.6951848921471
-35,20.0667752354841
-36,22.9097309529208
-37,8.78894645948548
-38,13.360682005498
-39,25.1757616314718
-40,38.0357773686457
-41,18.4633287776253
-42,19.0584505869806
-43,10.8631093309173
-44,12.6147770818983
-45,12.5398140021274
-46,34.901983501949
-47,22.3480442021702
-48,6
-49,22.3480442021702
-50,34.901983501949
-51,12.5398140021274
-52,12.6147770818983
-53,10.8631093309173
-54,19.0584505869806
-55,18.4633287776253
-56,38.0357773686457
-57,25.1757616314718
-58,13.360682005498
-59,8.78894645948548
-60,22.9097309529208
-61,20.0667752354841
-62,12.6951848921471
-63,17.6292439561917
-64,21.377558326432
-65,9.54321919833388
-66,28.3035029562577
-67,38.467599433197
-68,11.3577742151117
-69,17.9815599423852
-70,23.2496572716993
-71,21.7594021268945
-72,15.0332963783729
-73,35.9073375743642
-74,43.6179140616243
-75,10.4219666223433
-76,4.84567134895776
-77,6.89948680823017
-78,16.5769107917917
-79,23.217268502288
-80,4.58257569495584
-81,10.1736266929292
-82,13.5324640263625
-83,44.9845039238714
-84,32.1114345314062
-85,24.5237955316204
-86,15.6627133315015
-87,12.3214904922455
-88,18.2010889773887
-89,37.3066577242559
-90,24.0186013379153
-91,69.1793197789512
-92,23.8408857476069
-93,12.1189172092243
-94,41.9840308053375
-95,131.570790435043
diff --git a/buch/papers/reedsolomon/images/decodiert.txt b/buch/papers/reedsolomon/images/decodiert.txt
deleted file mode 100644
index f6221e6..0000000
--- a/buch/papers/reedsolomon/images/decodiert.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,6.05208333333333
-1,6.02602539785853
-2,0.0261327016093151
-3,5.98927158561317
-4,4.019445724874
-5,0.0247005083663722
-6,4.97798278395618
-7,1.95246440445439
-8,0.974000110512201
-9,2.00528527696027
-10,1.00071804528155
-11,1.97630907888264
-12,0.0232923747656228
-13,6.01302820392331
-14,3.03567381915226
-15,5.02435590137329
-16,7.00526061008995
-17,5.00739608089369
-18,5.02211514480064
-19,4.02175864806658
-20,1.00236543833726
-21,4.98147315261261
-22,8.97728828610336
-23,8.98481304394618
-24,2.98958333333333
-25,1.98491220960989
-26,5.97728835934715
-27,5.98144124907561
-28,4.00163839998525
-29,2.02176249296313
-30,9.02210713874162
-31,1.00742763919872
-32,1.00557258081044
-33,1.02435888848794
-34,2.03577412756745
-35,6.01302820392331
-36,5.97917574041123
-37,0.976310374034338
-38,9.00062625447998
-39,7.00515849238528
-40,6.97396416790894
-41,0.95256880864368
-42,8.97794719866783
-43,9.01850701506487
-44,10.0194409579917
-45,8.98926601525997
-46,7.9866590265379
-47,5.02603060999077
-48,2.05208333333333
-49,4.02603841132848
-50,0.986882897867895
-51,0.0177592928994285
-52,9.01944131204563
-53,3.0185365665612
-54,2.97803642439316
-55,2.95243072164649
-56,4.97396651395488
-57,6.00516695947321
-58,0.0143895905726619
-59,7.97630812771393
-60,5.97917574041123
-61,9.01298821331865
-62,3.03567381915226
-63,4.02435609145793
-64,0.0275599094902563
-65,0.0115837187254191
-66,0.025877761014238
-67,0.0224618032819697
-68,0.04410594689944
-69,0.0474504002669341
-70,0.0227694695500626
-71,0.0271436638090525
-72,0.0104166666666667
-73,0.0271436638090523
-74,0.0227694695500608
-75,0.0474504002669343
-76,0.0441059468994397
-77,0.0224618032819701
-78,0.0258777610142379
-79,0.0115837187254183
-80,0.027559909490256
-81,0.0245124379481793
-82,0.0499782237195209
-83,0.0401432022864265
-84,0.0232923747656228
-85,0.0237974288564099
-86,0.0143895905726624
-87,0.0271745729691685
-88,0.0275599094902567
-89,0.0515501672184983
-90,0.0358255004834542
-91,0.024700508366373
-92,0.0210194725405171
-93,0.0177592928994296
-94,0.0261327016093158
-95,0.0314909067039411
diff --git a/buch/papers/reedsolomon/images/empfangen.txt b/buch/papers/reedsolomon/images/empfangen.txt
deleted file mode 100644
index 38c13b0..0000000
--- a/buch/papers/reedsolomon/images/empfangen.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,284
-1,131.570790435043
-2,41.9840308053375
-3,12.1189172092243
-4,23.8408857476069
-5,69.1793197789512
-6,23.6290258699579
-7,37.3066577242559
-8,18.2010889773887
-9,12.3214904922455
-10,15.6627133315015
-11,24.5237955316204
-12,32.1114345314062
-13,44.9845039238714
-14,13.5324640263625
-15,10.1736266929292
-16,4.58257569495584
-17,23.217268502288
-18,16.5769107917917
-19,6.89948680823017
-20,5.55320238736303
-21,10.4219666223433
-22,43.6179140616243
-23,35.9073375743642
-24,15.0332963783729
-25,21.7594021268945
-26,23.2496572716993
-27,17.9815599423852
-28,11.3577742151117
-29,38.467599433197
-30,28.3035029562577
-31,9.54321919833388
-32,21.377558326432
-33,17.6292439561917
-34,12.6951848921471
-35,20.0667752354841
-36,22.9097309529208
-37,8.78894645948548
-38,13.360682005498
-39,25.1757616314718
-40,38.0357773686457
-41,18.4633287776253
-42,19.0584505869806
-43,10.8631093309173
-44,12.6147770818983
-45,12.5398140021274
-46,34.901983501949
-47,22.3480442021702
-48,6
-49,22.3480442021702
-50,34.901983501949
-51,12.5398140021274
-52,12.6147770818983
-53,10.8631093309173
-54,19.0584505869806
-55,18.4633287776253
-56,38.0357773686457
-57,25.1757616314718
-58,13.360682005498
-59,8.78894645948548
-60,22.9097309529208
-61,20.0667752354841
-62,12.6951848921471
-63,17.6292439561917
-64,21.377558326432
-65,9.54321919833388
-66,28.3035029562577
-67,38.467599433197
-68,11.3577742151117
-69,17.9815599423852
-70,23.2496572716993
-71,21.7594021268945
-72,15.0332963783729
-73,35.9073375743642
-74,44.6135417384784
-75,10.4219666223433
-76,4.84567134895776
-77,6.89948680823017
-78,16.5769107917917
-79,23.217268502288
-80,4.58257569495584
-81,10.1736266929292
-82,13.5324640263625
-83,44.9845039238714
-84,32.1114345314062
-85,24.5237955316204
-86,15.6627133315015
-87,12.3214904922455
-88,18.2010889773887
-89,37.3066577242559
-90,24.0186013379153
-91,69.1793197789512
-92,23.8408857476069
-93,12.1189172092243
-94,41.9840308053375
-95,131.570790435043
diff --git a/buch/papers/reedsolomon/images/fehler.txt b/buch/papers/reedsolomon/images/fehler.txt
deleted file mode 100644
index 23f1a83..0000000
--- a/buch/papers/reedsolomon/images/fehler.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,0
-1,0
-2,0
-3,0
-4,0
-5,0
-6,2
-7,0
-8,0
-9,0
-10,0
-11,0
-12,0
-13,0
-14,0
-15,0
-16,0
-17,0
-18,0
-19,0
-20,2
-21,0
-22,0
-23,0
-24,0
-25,0
-26,0
-27,0
-28,0
-29,0
-30,0
-31,0
-32,0
-33,0
-34,0
-35,0
-36,0
-37,0
-38,0
-39,0
-40,0
-41,0
-42,0
-43,0
-44,0
-45,0
-46,0
-47,0
-48,0
-49,0
-50,0
-51,0
-52,0
-53,0
-54,0
-55,0
-56,0
-57,0
-58,0
-59,0
-60,0
-61,0
-62,0
-63,0
-64,0
-65,0
-66,0
-67,0
-68,0
-69,0
-70,0
-71,0
-72,0
-73,0
-74,1
-75,0
-76,0
-77,0
-78,0
-79,0
-80,0
-81,0
-82,0
-83,0
-84,0
-85,0
-86,0
-87,0
-88,0
-89,0
-90,0
-91,0
-92,0
-93,0
-94,0
-95,0
diff --git a/buch/papers/reedsolomon/images/locator.txt b/buch/papers/reedsolomon/images/locator.txt
deleted file mode 100644
index b28988c..0000000
--- a/buch/papers/reedsolomon/images/locator.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,0.0301224340567056
-1,0.141653026854885
-2,0.138226631799377
-3,0.0339903276086929
-4,0.310585462557496
-5,0.551427312631385
-6,0.628514858396814
-7,0.51102386251559
-8,0.275861355940449
-9,0.0502396354182268
-10,0.090185502547573
-11,0.110759344849756
-12,0.0684618905063001
-13,0.0362855426992259
-14,0.0697096919781468
-15,0.109288539370248
-16,0.0923187999496653
-17,0.0512198536768088
-18,0.274192386987782
-19,0.51349614953654
-20,0.633154426602466
-21,0.553283743533942
-22,0.307840573214514
-23,0.0341664350328392
-24,0.140270857957
-25,0.138527177682831
-26,0.029637547736156
-27,0.0816962563186052
-28,0.0944383203811073
-29,0.0263932110686261
-30,0.0585881348402056
-31,0.0737117341599984
-32,0.0239973937701886
-33,0.0464215468420038
-34,0.0616218854220964
-35,0.0221963086695009
-36,0.0390764778127646
-37,0.0537637218396934
-38,0.0208333333333332
-39,0.0343107696069045
-40,0.0483441215964552
-41,0.0198077862118806
-42,0.0311207395968725
-43,0.0444955089373458
-44,0.0190533549944159
-45,0.0290049795038723
-46,0.0417536642697558
-47,0.0185261550443084
-48,0.0277059929762261
-49,0.0398606084144816
-50,0.0181978813094817
-51,0.0271098219177584
-52,0.0386836665079729
-53,0.0180518611046889
-54,0.0272138992557141
-55,0.0381891287148314
-56,0.0180809085252469
-57,0.0281418959420061
-58,0.0384596362516637
-59,0.0182864418432272
-60,0.0302250788423173
-61,0.0397874837986351
-62,0.0186786556701694
-63,0.0342489348284216
-64,0.0429932815348666
-65,0.0192777878591759
-66,0.0422808966931999
-67,0.0506815964680563
-68,0.0201167847752226
-69,0.0615048274405271
-70,0.0744953894508454
-71,0.021246054596492
-72,0.142602265816215
-73,0.273502052865436
-74,0.325309673287599
-75,0.272705389655349
-76,0.149074257381345
-77,0.0247199397628712
-78,0.0680137859566976
-79,0.075388270873485
-80,0.0273637831604903
-81,0.0407867704453274
-82,0.0632964886441949
-83,0.0309749128751093
-84,0.0315202035072035
-85,0.0627625211892184
-86,0.0360843918243497
-87,0.02794920551495
-88,0.0677921493367236
-89,0.0437167157553067
-90,0.0270640150996317
-91,0.0783380025231622
-92,0.0561293738314281
-93,0.0278742033265809
-94,0.0981443889498639
-95,0.0794543457386548
diff --git a/buch/papers/reedsolomon/images/plotfft.tex b/buch/papers/reedsolomon/images/plotfft.tex
deleted file mode 100644
index 83a89eb..0000000
--- a/buch/papers/reedsolomon/images/plotfft.tex
+++ /dev/null
@@ -1,89 +0,0 @@
-%
-% Plot der Übertrangungsabfolge ins FFT und zurück mit IFFT
-%
-\begin{tikzpicture}[]
-
-%---------------------------------------------------------------
- %Knote
-\matrix[draw = none, column sep=25mm, row sep=2mm]{
- \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] {papers/reedsolomon/images/signal.txt};
- \end{axis}
- \end{tikzpicture}}; &
-
- \node(codiert) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Codiert}}]
- \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}},
- 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[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] {papers/reedsolomon/images/empfangen.txt};
- \end{axis}
- \end{tikzpicture}};\\
-
- \node(syndrom) [] {
- \begin{tikzpicture}
- \begin{axis}[title = {\Large {Syndrom}}]
- \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] {papers/reedsolomon/images/locator.txt};
- \end{axis}
- \end{tikzpicture}};\\
-};
-%-------------------------------------------------------------
- %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[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/images/signal.txt b/buch/papers/reedsolomon/images/signal.txt
deleted file mode 100644
index c4fa5f8..0000000
--- a/buch/papers/reedsolomon/images/signal.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,6
-1,6
-2,0
-3,6
-4,4
-5,0
-6,5
-7,2
-8,1
-9,2
-10,1
-11,2
-12,0
-13,6
-14,3
-15,5
-16,7
-17,5
-18,5
-19,4
-20,1
-21,5
-22,9
-23,9
-24,3
-25,2
-26,6
-27,6
-28,4
-29,2
-30,9
-31,1
-32,1
-33,1
-34,2
-35,6
-36,6
-37,1
-38,9
-39,7
-40,7
-41,1
-42,9
-43,9
-44,10
-45,9
-46,8
-47,5
-48,2
-49,4
-50,1
-51,0
-52,9
-53,3
-54,3
-55,3
-56,5
-57,6
-58,0
-59,8
-60,6
-61,9
-62,3
-63,4
-64,0
-65,0
-66,0
-67,0
-68,0
-69,0
-70,0
-71,0
-72,0
-73,0
-74,0
-75,0
-76,0
-77,0
-78,0
-79,0
-80,0
-81,0
-82,0
-83,0
-84,0
-85,0
-86,0
-87,0
-88,0
-89,0
-90,0
-91,0
-92,0
-93,0
-94,0
-95,0
diff --git a/buch/papers/reedsolomon/images/syndrom.txt b/buch/papers/reedsolomon/images/syndrom.txt
deleted file mode 100644
index 8ca9eed..0000000
--- a/buch/papers/reedsolomon/images/syndrom.txt
+++ /dev/null
@@ -1,96 +0,0 @@
-0,0
-1,0
-2,0
-3,0
-4,0
-5,0
-6,0
-7,0
-8,0
-9,0
-10,0
-11,0
-12,0
-13,0
-14,0
-15,0
-16,0
-17,0
-18,0
-19,0
-20,0
-21,0
-22,0
-23,0
-24,0
-25,0
-26,0
-27,0
-28,0
-29,0
-30,0
-31,0
-32,0
-33,0
-34,0
-35,0
-36,0
-37,0
-38,0
-39,0
-40,0
-41,0
-42,0
-43,0
-44,0
-45,0
-46,0
-47,0
-48,0
-49,0
-50,0
-51,0
-52,0
-53,0
-54,0
-55,0
-56,0
-57,0
-58,0
-59,0
-60,0
-61,0
-62,0
-63,0
-64,0.0275599094902563
-65,0.0115837187254191
-66,0.025877761014238
-67,0.0224618032819697
-68,0.04410594689944
-69,0.0474504002669341
-70,0.0227694695500626
-71,0.0271436638090525
-72,0.0104166666666667
-73,0.0271436638090523
-74,0.0227694695500608
-75,0.0474504002669343
-76,0.0441059468994397
-77,0.0224618032819701
-78,0.0258777610142379
-79,0.0115837187254183
-80,0.027559909490256
-81,0.0245124379481793
-82,0.0499782237195209
-83,0.0401432022864265
-84,0.0232923747656228
-85,0.0237974288564099
-86,0.0143895905726624
-87,0.0271745729691685
-88,0.0275599094902567
-89,0.0515501672184983
-90,0.0358255004834542
-91,0.024700508366373
-92,0.0210194725405171
-93,0.0177592928994296
-94,0.0261327016093158
-95,0.0314909067039411
diff --git a/buch/papers/reedsolomon/main.tex b/buch/papers/reedsolomon/main.tex
index ab4e4be..017fe94 100644
--- a/buch/papers/reedsolomon/main.tex
+++ b/buch/papers/reedsolomon/main.tex
@@ -8,29 +8,9 @@
\begin{refsection}
\chapterauthor{Joshua Bär und Michael Steiner}
-Ein paar Hinweise für die korrekte Formatierung des Textes
-\begin{itemize}
-\item
-Absätze werden gebildet, indem man eine Leerzeile einfügt.
-Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet.
-\item
-Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende
-Optionen werden gelöscht.
-Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen.
-\item
-Beginnen Sie jeden Satz auf einer neuen Zeile.
-Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen
-in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt
-anzuwenden.
-\item
-Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren
-Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern.
-\end{itemize}
-
% Joshua
\input{papers/reedsolomon/einleitung.tex}
\input{papers/reedsolomon/idee.tex}
-%\input{papers/reedsolomon/teil2.tex}
\input{papers/reedsolomon/dtf.tex}
% Michael
diff --git a/buch/papers/reedsolomon/packages.tex b/buch/papers/reedsolomon/packages.tex
index b84e228..40c6ea3 100644
--- a/buch/papers/reedsolomon/packages.tex
+++ b/buch/papers/reedsolomon/packages.tex
@@ -10,3 +10,5 @@
\usepackage{pgfplots}
\usepackage{filecontents}
+\usepackage{xr}
+
diff --git a/buch/papers/reedsolomon/standalone.tex b/buch/papers/reedsolomon/standalone.tex
new file mode 100644
index 0000000..c850d1f
--- /dev/null
+++ b/buch/papers/reedsolomon/standalone.tex
@@ -0,0 +1,30 @@
+\documentclass{book}
+
+\input{common/packages.tex}
+
+% additional packages used by the individual papers, add a line for
+% each paper
+\input{papers/common/addpackages.tex}
+
+% workaround for biblatex bug
+\makeatletter
+\def\blx@maxline{77}
+\makeatother
+\addbibresource{chapters/references.bib}
+
+% Bibresources for each article
+\input{papers/common/addbibresources.tex}
+
+% make sure the last index starts on an odd page
+\AtEndDocument{\clearpage\ifodd\value{page}\else\null\clearpage\fi}
+\makeindex
+
+%\pgfplotsset{compat=1.12}
+\setlength{\headheight}{15pt} % fix headheight warning
+\DeclareGraphicsRule{*}{mps}{*}{}
+
+\begin{document}
+ \input{common/macros.tex}
+ \def\chapterauthor#1{{\large #1}\bigskip\bigskip}
+ \input{papers/reedsolomon/main.tex}
+\end{document}
diff --git a/buch/papers/reedsolomon/standalone/standalone.pdf b/buch/papers/reedsolomon/standalone/standalone.pdf
new file mode 100644
index 0000000..4a44333
--- /dev/null
+++ b/buch/papers/reedsolomon/standalone/standalone.pdf
Binary files differ
diff --git a/buch/papers/reedsolomon/experiments/codiert.txt b/buch/papers/reedsolomon/tikz/codiert.txt
index 4a481d8..4a481d8 100644
--- a/buch/papers/reedsolomon/experiments/codiert.txt
+++ b/buch/papers/reedsolomon/tikz/codiert.txt
diff --git a/buch/papers/reedsolomon/experiments/decodiert.txt b/buch/papers/reedsolomon/tikz/decodiert.txt
index f6221e6..f6221e6 100644
--- a/buch/papers/reedsolomon/experiments/decodiert.txt
+++ b/buch/papers/reedsolomon/tikz/decodiert.txt
diff --git a/buch/papers/reedsolomon/experiments/empfangen.txt b/buch/papers/reedsolomon/tikz/empfangen.txt
index 38c13b0..38c13b0 100644
--- a/buch/papers/reedsolomon/experiments/empfangen.txt
+++ b/buch/papers/reedsolomon/tikz/empfangen.txt
diff --git a/buch/papers/reedsolomon/experiments/fehler.txt b/buch/papers/reedsolomon/tikz/fehler.txt
index 23f1a83..23f1a83 100644
--- a/buch/papers/reedsolomon/experiments/fehler.txt
+++ b/buch/papers/reedsolomon/tikz/fehler.txt
diff --git a/buch/papers/reedsolomon/experiments/locator.txt b/buch/papers/reedsolomon/tikz/locator.txt
index b28988c..b28988c 100644
--- a/buch/papers/reedsolomon/experiments/locator.txt
+++ b/buch/papers/reedsolomon/tikz/locator.txt
diff --git a/buch/papers/reedsolomon/tikz/plotfft.tex b/buch/papers/reedsolomon/tikz/plotfft.tex
new file mode 100644
index 0000000..bb74dfb
--- /dev/null
+++ b/buch/papers/reedsolomon/tikz/plotfft.tex
@@ -0,0 +1,94 @@
+%
+% Plot der Übertrangungsabfolge ins FFT und zurück mit IFFT
+%
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{pgfplots}
+\usepackage{pgfplotstable}
+\usepackage{csvsimple}
+\usepackage{filecontents}
+
+
+\begin{document}
+\begin{tikzpicture}[]
+
+ %---------------------------------------------------------------
+ %Knote
+ \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};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(codiert) [] {
+ \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}
+ \begin{axis}[xtick={7,21,75}, axis y line*=right]
+ \addplot[red] table[col sep=comma] {tikz/fehler.txt};
+ \end{axis}
+ \end{tikzpicture}}; \\
+
+ \node(decodiert) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Decodiert}}]
+ \addplot[blue] table[col sep=comma] {tikz/decodiert.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(empfangen) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Empfangen}}]
+ \addplot[green] table[col sep=comma] {tikz/empfangen.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+
+ \node(syndrom) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Syndrom}}]
+ \addplot[black] table[col sep=comma] {tikz/syndrom.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(locator) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Locator}}]
+ \addplot[gray] table[col sep=comma] {tikz/locator.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+ };
+ %-------------------------------------------------------------
+ %FFT & IFFT deskription
+
+ \draw[thin,gray,dashed] (0,9) to (0,-9);
+ \node(IFFT) [scale=0.9] at (0,9.3) {IFFT};
+ \draw[stealth-](IFFT.south west)--(IFFT.south east);
+ \node(FFT) [scale=0.9, above of=IFFT] {FFT};
+ \draw[-stealth](FFT.north west)--(FFT.north east);
+
+ \draw[thick, ->,] (codiert)++(-1,0) +(0.05,0.5) -- +(-0.1,-0.1) -- +(0.1,0.1) -- +(0,-0.5);
+ %Arrows
+ \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+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{document} \ No newline at end of file
diff --git a/buch/papers/reedsolomon/tikz/plotfftraw.tex b/buch/papers/reedsolomon/tikz/plotfftraw.tex
new file mode 100644
index 0000000..141d2ce
--- /dev/null
+++ b/buch/papers/reedsolomon/tikz/plotfftraw.tex
@@ -0,0 +1,80 @@
+\begin{tikzpicture}[]
+
+ %---------------------------------------------------------------
+ %Knote
+ \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};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(codiert) [] {
+ \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}
+ \begin{axis}[xtick={7,21,75}, axis y line*=right]
+ \addplot[red] table[col sep=comma] {tikz/fehler.txt};
+ \end{axis}
+ \end{tikzpicture}}; \\
+
+ \node(decodiert) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Decodiert}}]
+ \addplot[blue] table[col sep=comma] {tikz/decodiert.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(empfangen) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Empfangen}}]
+ \addplot[green] table[col sep=comma] {tikz/empfangen.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+
+ \node(syndrom) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Syndrom}}]
+ \addplot[black] table[col sep=comma] {tikz/syndrom.txt};
+ \end{axis}
+ \end{tikzpicture}}; &
+
+ \node(locator) [] {
+ \begin{tikzpicture}
+ \begin{axis}[title = {\Large {Locator}}]
+ \addplot[gray] table[col sep=comma] {tikz/locator.txt};
+ \end{axis}
+ \end{tikzpicture}};\\
+ };
+ %-------------------------------------------------------------
+ %FFT & IFFT deskription
+
+ \draw[thin,gray,dashed] (0,9) to (0,-9);
+ \node(IFFT) [scale=0.9] at (0,9.3) {IFFT};
+ \draw[stealth-](IFFT.south west)--(IFFT.south east);
+ \node(FFT) [scale=0.9, above of=IFFT] {FFT};
+ \draw[-stealth](FFT.north west)--(FFT.north east);
+
+ \draw[thick, ->,] (codiert)++(-1,0) +(0.05,0.5) -- +(-0.1,-0.1) -- +(0.1,0.1) -- +(0,-0.5);
+ %Arrows
+ \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+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/tikz/polynom2.tex b/buch/papers/reedsolomon/tikz/polynom2.tex
new file mode 100644
index 0000000..80557fb
--- /dev/null
+++ b/buch/papers/reedsolomon/tikz/polynom2.tex
@@ -0,0 +1,60 @@
+% polynome
+%-------------------
+
+\documentclass[tikz]{standalone}
+\usepackage{amsmath}
+\usepackage{times}
+\usepackage{pgfplots}
+
+
+\begin{document}
+% Teiler für das Skalieren der Grafik /40
+\newcommand{\teiler}{40}
+
+
+%//////////////////////////////////////
+
+\begin{tikzpicture}[>=latex,thick,]
+ \draw[color=blue, line width=1.4pt]
+ plot[domain=0:8, samples=100]
+ ({\x},{(2*\x^2+1*\x+5)/\teiler});
+
+ \draw[->] (-0.2,0) -- (8,0) coordinate[label={$x$}];
+ \draw[->] (0,-0.2) -- (0,150/\teiler) coordinate[label={right:$p(x)$}];
+
+ \def\punkt#1{
+ \fill[color=green] #1 circle[radius=0.08];
+ \draw #1 circle[radius=0.07];
+ }
+
+ \def\hellpunkt#1{
+ \fill[color=lightgray] #1 circle[radius=0.08];
+ \draw[gray] #1 circle[ radius=0.07];
+ }
+
+ \draw[color=gray,line width=1pt,dashed]
+ plot[domain=0.5:7, samples=100]
+ ({\x},{(7.832*\x^2-51.5*\x+121.668)/\teiler});
+
+
+ \punkt{(1,8/\teiler)}
+ \hellpunkt{(2,15/\teiler)}
+ \hellpunkt{(3,26/\teiler)}
+ \punkt{(4,41/\teiler)}
+ \punkt{(5,60/\teiler)}
+ \punkt{(6,83/\teiler)}
+ \punkt{(7,110/\teiler)}
+
+
+
+ \def\erpunkt#1{
+ \fill[color=red] #1 circle[radius=0.08];
+ \draw #1 circle[radius=0.07];
+ }
+ \erpunkt{(2,50/\teiler)}
+ \erpunkt{(3,37.66/\teiler)}
+
+ \draw(0,100/\teiler) -- (-0.1,100/\teiler) coordinate[label={left:$100$}];
+ \draw(1,0) -- (1,-0.1) coordinate[label={below:$1$}];
+\end{tikzpicture}
+\end{document}
diff --git a/buch/papers/reedsolomon/images/polynom2.tex b/buch/papers/reedsolomon/tikz/polynomraw.tex
index 288b51c..02968fd 100644
--- a/buch/papers/reedsolomon/images/polynom2.tex
+++ b/buch/papers/reedsolomon/tikz/polynomraw.tex
@@ -1,12 +1,11 @@
-% polynome
-%-------------------
-% Teiler für das Skalieren der Grafik /40
+% polynomraw
+
\newcommand{\teiler}{40}
%//////////////////////////////////////
-\begin{tikzpicture}[>=latex,thick]
+\begin{tikzpicture}[>=latex,thick,]
\draw[color=blue, line width=1.4pt]
plot[domain=0:8, samples=100]
({\x},{(2*\x^2+1*\x+5)/\teiler});
@@ -21,9 +20,14 @@
\def\hellpunkt#1{
\fill[color=lightgray] #1 circle[radius=0.08];
- \draw #1 circle[radius=0.07];
+ \draw[gray] #1 circle[ radius=0.07];
}
+ \draw[color=gray,line width=1pt,dashed]
+ plot[domain=0.5:7, samples=100]
+ ({\x},{(7.832*\x^2-51.5*\x+121.668)/\teiler});
+
+
\punkt{(1,8/\teiler)}
\hellpunkt{(2,15/\teiler)}
\hellpunkt{(3,26/\teiler)}
@@ -32,9 +36,7 @@
\punkt{(6,83/\teiler)}
\punkt{(7,110/\teiler)}
- \draw[color=gray,line width=1pt,dashed]
- plot[domain=0.5:7, samples=100]
- ({\x},{(7.832*\x^2-51.5*\x+121.668)/\teiler});
+
\def\erpunkt#1{
\fill[color=red] #1 circle[radius=0.08];
@@ -45,5 +47,4 @@
\draw(0,100/\teiler) -- (-0.1,100/\teiler) coordinate[label={left:$100$}];
\draw(1,0) -- (1,-0.1) coordinate[label={below:$1$}];
-\end{tikzpicture}
-%\end{document}
+\end{tikzpicture} \ No newline at end of file
diff --git a/buch/papers/reedsolomon/experiments/signal.txt b/buch/papers/reedsolomon/tikz/signal.txt
index c4fa5f8..c4fa5f8 100644
--- a/buch/papers/reedsolomon/experiments/signal.txt
+++ b/buch/papers/reedsolomon/tikz/signal.txt
diff --git a/buch/papers/reedsolomon/experiments/syndrom.txt b/buch/papers/reedsolomon/tikz/syndrom.txt
index 8ca9eed..8ca9eed 100644
--- a/buch/papers/reedsolomon/experiments/syndrom.txt
+++ b/buch/papers/reedsolomon/tikz/syndrom.txt