Fixed severla error messages. New \varcode macro for code without index.

This commit is contained in:
Jan Benda 2015-11-22 12:47:05 +01:00
parent a945268bee
commit 3d4d778bdd
17 changed files with 75 additions and 65 deletions

View File

@ -9,14 +9,18 @@ chapters :
for sd in $(SUBDIRS); do $(MAKE) -C $$sd/lecture pdf; done
$(BASENAME).pdf : $(BASENAME).tex header.tex $(SUBTEXS)
export TEXMFOUTPUT=.; pdflatex -interaction=scrollmode $< | tee /dev/stderr | fgrep -q "Rerun to get cross-references right" && pdflatex -interaction=scrollmode $< || true
pdflatex -interaction=scrollmode $< | tee /dev/stderr | fgrep -q "Rerun to get cross-references right" && pdflatex -interaction=scrollmode $< || true
again :
pdflatex $(BASENAME).tex
index :
splitindex $(BASENAME).idx
export TEXMFOUTPUT=.; pdflatex -interaction=scrollmode $(BASENAME).tex
pdflatex -interaction=scrollmode $(BASENAME).tex
splitindex $(BASENAME).idx
pdflatex -interaction=scrollmode $(BASENAME).tex | tee /dev/stderr | fgrep -q "Rerun to get cross-references right" && pdflatex $(BASENAME).tex || true
clean :
rm -f *~ $(BASENAME).aux $(BASENAME).log $(BASENAME).out $(BASENAME).toc
rm -f *~ $(BASENAME).aux $(BASENAME).log $(BASENAME).out $(BASENAME).toc $(BASENAME).lo? $(BASENAME).idx $(BASENAME)-term.i* $(BASENAME)-code.i*
for sd in $(SUBDIRS); do $(MAKE) -C $$sd/lecture clean; done
cleanall : clean

View File

@ -5,7 +5,7 @@
\lstset{inputpath=../code}
\graphicspath{{figures/}}
\setcounter{page}{81}
\setcounter{page}{77}
\setcounter{chapter}{4}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View File

@ -189,9 +189,9 @@
\newcommand{\koZ}{\mathds{C}}
%%%%% english, german, code and file terms: %%%%%%%%%%%%%%%
\newcommand{\enterm}[1]{``#1''\sindex[term]{#1}}
\newcommand{\determ}[1]{\textit{#1}\sindex[term]{#1}}
\newcommand{\codeterm}[1]{\textit{#1}\sindex[term]{#1}}
\newcommand{\enterm}[1]{``#1''\protect\sindex[term]{#1}}
\newcommand{\determ}[1]{\textit{#1}\protect\sindex[term]{#1}}
\newcommand{\codeterm}[1]{\textit{#1}\protect\sindex[term]{#1}}
\newcommand{\file}[1]{\texttt{#1}}
%%%%% key-shortcuts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@ -202,8 +202,9 @@
%%%%% code/matlab commands: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{textcomp}
\newcommand{\code}[1]{\setlength{\fboxsep}{0.5ex}\colorbox{codeback}{\texttt{#1}}\sindex[code]{#1}}
\newcommand{\matlab}{MATLAB$^{\copyright}$}
\newcommand{\varcode}[1]{\setlength{\fboxsep}{0.5ex}\colorbox{codeback}{\texttt{#1}}}
\newcommand{\code}[1]{\varcode{#1}\sindex[code]{#1}}
\newcommand{\matlab}{\texorpdfstring{MATLAB$^{\copyright}$}{MATLAB}}
\newcommand{\matlabfun}[1]{(\tr{\matlab{}-function}{\matlab-Funktion} \setlength{\fboxsep}{0.5ex}\colorbox{codeback}{\texttt{#1}})\sindex[code]{#1}}
%%%%% exercises environment: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@ -241,18 +242,20 @@
\newcommand{\exerciseoutput}{#2}%
\setlength{\fboxsep}{2mm}%
\newcommand{\saveenumi}{\theenumi}\renewcommand{\labelenumi}{(\alph{enumi})}%
\captionsetup{singlelinecheck=off,hypcap=false,labelfont={large,sf,it,bf},font={large,sf,it,bf},skip={0.5ex}}
\captionsetup{singlelinecheck=off,hypcap=false,labelfont={large,sf,it,bf},font={large,sf,it,bf},skip={0.5ex}}%
\begin{mdframed}[linewidth=0pt,backgroundcolor=exerciseback]%
\captionof{exercisef}[\exercisefile]{}%
\captionsetup{font={normal,sf,it}}%
}%
{\ifthenelse{\equal{\exercisesource}{}}{}%
{\ifthenelse{\value{exercise}>\value{maxexercise}}{}%
{\hypersetup{hypertexnames=false}%
\ifthenelse{\equal{\exercisesource}{}}{}%
{\ifthenelse{\value{exercisef}>\value{maxexercise}}{}%
{\addtocounter{lstlisting}{-1}%
\lstinputlisting[belowskip=0pt,aboveskip=1ex,nolol=true,title={\textbf{Listing:} \exercisefile}]{\codepath\exercisesource}%
\ifthenelse{\equal{\exerciseoutput}{}}{}%
{\addtocounter{lstlisting}{-1}%
\lstinputlisting[language={},title={\textbf{\tr{Output}{Ausgabe}:}},nolol=true,belowskip=0pt]{\codepath\exerciseoutput}}}}%
\hypersetup{hypertexnames=true}%
\end{mdframed}%
\renewcommand{\theenumi}{\saveenumi}}
@ -303,7 +306,7 @@
% placement=t
% ]{importantf}
\newenvironment{important}[1][]%
{\captionsetup{singlelinecheck=off,labelformat={empty},labelfont={large,sf,it,bf},font={large,sf,it,bf}}
{\captionsetup{singlelinecheck=off,hypcap=false,labelformat={empty},labelfont={large,sf,it,bf},font={large,sf,it,bf}}
\ifthenelse{\equal{#1}{}}%
{\begin{mdframed}[linecolor=importantline,linewidth=1ex,%
backgroundcolor=importantback,font={\sffamily}]}%
@ -318,5 +321,6 @@
%%%%% hyperref %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[bookmarks=true,bookmarksopen=true,%
pdfpagemode=UseNone,pdfstartview=FitH,%
plainpages=false,pdfpagelabels,%
breaklinks=true,colorlinks=true,%
citecolor=blue!50!black,linkcolor=red!70!black,urlcolor=blue!50!black]{hyperref}

View File

@ -5,7 +5,7 @@
\lstset{inputpath=../code}
\graphicspath{{figures/}}
\setcounter{page}{101}
\setcounter{page}{99}
\setcounter{chapter}{6}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View File

@ -298,7 +298,7 @@ Datenpunkte. Zus\"atzlich wird noch die Eigenschaft
\codeterm{displayname} gesetzt, um dem Linienplot einen Namen zu
geben, der in einer Legende verwendet werden kann.
\begin{lstlisting}[label=settinglineprops, caption={Setzen von Linieneigenschaften beim \code{plot} Aufruf}]
\begin{lstlisting}[label=settinglineprops, caption={Setzen von Linieneigenschaften beim \varcode{plot} Aufruf}]
x = 0:0.1:2*pi;
y = sin(x);
plot( x, y, 'color', 'r', 'linestyle', ':', 'marker', '*', 'linewidth', 1.5, 'displayname', 'plot 1')
@ -427,14 +427,14 @@ Homepage viele Beispiele mit zugeh\"origem Code
\begin{tabular}{|l|c|l|}
\hline
\textbf{Format} & \textbf{Typ} & \code{saveas} Argument \rule[-1.2ex]{0pt}{3.5ex} \\ \hline
pdf & Vektor & \codeterm{'pdf'} \rule{0pt}{2.5ex} \\
eps & Vektor & \codeterm{'eps', 'epsc'} \\
SVG & Vektor & \codeterm{'svg'} \\
PS & Vektor & \codeterm{'ps', 'psc'} \\
jpg & Bitmap & \codeterm{'jpeg'} \\
tif & Bitmap & \codeterm{'tiff', 'tiffn'} \\
png & Bitmap & \codeterm{'png'} \\
bmp & Bitmap & \codeterm{'bmp'} \\ \hline
pdf & Vektor & \varcode{'pdf'} \rule{0pt}{2.5ex} \\
eps & Vektor & \varcode{'eps'}, \varcode{'epsc'} \\
SVG & Vektor & \varcode{'svg'} \\
PS & Vektor & \varcode{'ps'}, \varcode{'psc'} \\
jpg & Bitmap & \varcode{'jpeg'} \\
tif & Bitmap & \varcode{'tiff'}, \varcode{'tiffn'} \\
png & Bitmap & \varcode{'png'} \\
bmp & Bitmap & \varcode{'bmp'} \\ \hline
\end{tabular}
\end{minipage}
\vspace{1ex}

View File

@ -5,8 +5,8 @@
\lstset{inputpath=../code}
\graphicspath{{figures/}}
\setcounter{page}{111}
\setcounter{chapter}{7}
\setcounter{page}{}
\setcounter{chapter}{-1}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View File

@ -1,7 +1,7 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: pointprocessscetchA.tex
%%Creator: gnuplot 4.6 patchlevel 4
%%CreationDate: Tue Nov 3 17:29:16 2015
%%CreationDate: Sun Nov 22 12:40:02 2015
%%DocumentFonts:
%%BoundingBox: 50 50 373 135
%%EndComments
@ -430,10 +430,10 @@ SDict begin [
/Title (pointprocessscetchA.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 4.6 patchlevel 4)
/Author (grewe)
/Author (jan)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Tue Nov 3 17:29:16 2015)
/CreationDate (Sun Nov 22 12:40:02 2015)
/DOCINFO pdfmark
end
} ifelse

View File

@ -1,7 +1,7 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: pointprocessscetchB.tex
%%Creator: gnuplot 4.6 patchlevel 4
%%CreationDate: Tue Nov 3 18:24:39 2015
%%CreationDate: Sun Nov 22 12:40:02 2015
%%DocumentFonts:
%%BoundingBox: 50 50 373 237
%%EndComments
@ -430,10 +430,10 @@ SDict begin [
/Title (pointprocessscetchB.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 4.6 patchlevel 4)
/Author (grewe)
/Author (jan)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Tue Nov 3 18:24:39 2015)
/CreationDate (Sun Nov 22 12:40:02 2015)
/DOCINFO pdfmark
end
} ifelse

View File

@ -40,7 +40,7 @@ befassen.
In \matlab{} kann eine Variable auf der Kommandozeile, in einem Skript
oder einer Funktion an beliebiger Stelle erzeugt werden. Listing
\ref{varListing1} zeigt zwei M\"oglichkeiten dies zu tun:
\begin{lstlisting}[label=varListing1, caption=Erzeugen von Variablen.]
\begin{lstlisting}[label=varListing1, caption={Erzeugen von Variablen.}]
>> y = []
y =
[]
@ -77,7 +77,7 @@ Variablen diesen Datentyp.
Nat\"urlich kann mit den Variablen auch gearbeitet, bzw. gerechnet
werden. \matlab{} kennt alle normalen arithmetischen Operatoren wie
\code{+}, \code{-}, \code{*} und \code{/}. Die Potenz wird \"uber das
Dachsymbol \code{\^} dargestellt. Listing \ref{varListing3} zeigt, wie sie
Dachsymbol \code{\^{}} dargestellt. Listing \ref{varListing3} zeigt, wie sie
benutzt werden.
\begin{lstlisting}[label=varListing3, caption={Rechnen mit Variablen.}]
@ -324,7 +324,7 @@ Element gleichzeitig zuzugreifen.
\begin{exercise}{vectorsize.m}{vectorsize.out}
Der R\"uckgabewert von \code{size(a)} ist wieder ein Vektor der
L\"ange 2. Wie k\"onnte man also die Gr\"o{\ss}e von \code{a} in der
L\"ange 2. Wie k\"onnte man also die Gr\"o{\ss}e von \varcode{a} in der
zweiten Dimension herausfinden?
\end{exercise}
@ -365,8 +365,8 @@ problemlos m\"oglich. Bei der Multiplikation (Zeile 10), der Division
(Zeile 14) und auch der Potenzierung mu{\ss} mit vorangestellem '.'
klar gemacht werden, dass es sich um eine \emph{elementweise}
Verarbeitung handeln soll. F\"ur diese elementweisen Operationen kennt
\matlab{} die Operatoren \code{.*}, \code{./} und \code{.\^}. Die
einfachen Operatoren \code{*}, \code{/} und \code{\^} sind mit den
\matlab{} die Operatoren \code{.*}, \code{./} und \code{.\^{}}. Die
einfachen Operatoren \code{*}, \code{/} und \code{\^{}} sind mit den
entsprechenden Matrixoperationen aus der linearen Algebrar belegt
(Box \ref{matrixmultiplication}).
@ -806,16 +806,16 @@ nur die Werte an den Stellen zur\"uck, an denen der logische Vektor
\end{lstlisting}
\begin{exercise}{logicalVector.m}{logicalVector.out}
Erstelle einen Vektor x mit den Werten 0-10.
Erstelle einen Vektor \varcode{x} mit den Werten 0--10.
\begin{enumerate}
\item F\"uhre aus: \code{y = x < 5}
\item Gib den Inhalt von \code{y} auf dem Bildschirm aus.
\item Was ist der Datentyp von \code{y}?
\item Gibt alle Elemente aus x zur\"uck, die kleiner als 5 sind.
\item F\"uhre aus: \varcode{y = x < 5}
\item Gib den Inhalt von \varcode{y} auf dem Bildschirm aus.
\item Was ist der Datentyp von \varcode{y}?
\item Gibt alle Elemente aus \varcode{x} zur\"uck, die kleiner als 5 sind.
\end{enumerate}
Zeile 12 in der L\"osung kann wie folgt gelesen werden: Gib mir die Elemente
von (\code{x}) an den Stellen, an denen \code{x < 5} wahr ist.
von (\varcode{x}) an den Stellen, an denen \varcode{x < 5} wahr ist.
\end{exercise}
Logisches Indizieren wurde oben so benutzt, dass die Auswahl
@ -842,13 +842,13 @@ bestimmten Zeitraums ausw\"ahlen m\"ochte (Abbildung
jeweiligen Messwerten.
\begin{itemize}
\item Erstelle einen Vektor \code{t = 0:0.001:10;}, der z.B. die Zeit
\item Erstelle einen Vektor \varcode{t = 0:0.001:10;}, der z.B. die Zeit
repr\"asentiert.
\item Erstelle einen zweiten Vektor \code{x} mit Zufallszahlen der
die gleiche L\"ange hat wie \code{t}. Die Werte darin stellen
Messungen zu den Zeitpunkten in \code{t} dar.
\item Erstelle einen zweiten Vektor \varcode{x} mit Zufallszahlen der
die gleiche L\"ange hat wie \varcode{t}. Die Werte darin stellen
Messungen zu den Zeitpunkten in \varcode{t} dar.
\item Benutze das logische Indizieren um die Messwerte
auszuw\"ahlen, die dem zeitlichen Abschnitt 5-6\,s entsprechen.
auszuw\"ahlen, die dem zeitlichen Abschnitt 5--6\,s entsprechen.
\end{itemize}
\end{exercise}
@ -925,7 +925,7 @@ ausgef\"uhrt werden. Die Schleife wird durch das Schl\"usselwort
\code{end} beendet. Listing \ref{looplisting} zeigt das
Grundger\"ust einer for-Schleife.
\begin{lstlisting}[caption={Beispiel einer \code{for} Schleife. Die Laufvariable \code{x} nimmt mit jeder Iteration der Schleife einen Wert des Vektors \code{1:5} an.}, label=looplisting]
\begin{lstlisting}[caption={Beispiel einer \varcode{for} Schleife. Die Laufvariable \varcode{x} nimmt mit jeder Iteration der Schleife einen Wert des Vektors \varcode{1:5} an.}, label=looplisting]
for x = 1:5
% ... etwas sinnvolles mit x ...
end
@ -939,7 +939,7 @@ end
\end{exercise}
\subsubsection{Die \code{while} -- Schleife}
\subsubsection{Die \varcode{while} -- Schleife}
Eine weiterer Schleifentyp, der weniger h\"aufig eingesetzt wird, ist
die \code{while}-Schleife. Auch sie hat ihre Entsprechungen in fast
@ -952,7 +952,7 @@ Schleifenk\"orper ausgef\"uhrt. Die Schleife wird mit dem
Schl\"usselwort \code{end} beendet.
\begin{lstlisting}[caption={Grundstruktur einer \code{while} Schleife.}, label=whileloop]
\begin{lstlisting}[caption={Grundstruktur einer \varcode{while} Schleife.}, label=whileloop]
while x == true
% fuehre diesen sinnvollen code aus ...
end
@ -971,7 +971,7 @@ end
\end{exercise}
\subsubsection{Vergleich \code{for} -- und \code{while}--Schleife}
\subsubsection{Vergleich \varcode{for} -- und \varcode{while}--Schleife}
\begin{itemize}
\item Beide f\"uhren den Code im Schleifenk\"orper iterativ aus.
\item Der K\"orper einer \code{for} Schleife wird mindestens 1 mal
@ -994,7 +994,7 @@ Bedingte Anweisungen und Verzweigungen sind Kontrollstrukturen, die
regeln, dass der in ihnen eingeschlossene Programmcode nur unter
bestimmten Bedingungen ausgef\"uhrt wird.
\subsubsection{Die \code{if} -- Anweisung}
\subsubsection{Die \varcode{if} -- Anweisung}
Am h\"aufigsten genutzter Vertreter ist die \code{if} -
Anweisung. Sie wird genutzt um Programmcode nur unter bestimmten
@ -1012,7 +1012,7 @@ beendet. Listing \ref{ifelselisting} zeigt den Aufbau einer
\code{if} - Anweisung.
\begin{lstlisting}[label=ifelselisting, caption={Grundger\"ust einer \code{if} Anweisung.}]
\begin{lstlisting}[label=ifelselisting, caption={Grundger\"ust einer \varcode{if} Anweisung.}]
if x < y
% fuehre diesen code aus
elseif x > y
@ -1032,7 +1032,7 @@ end
\end{enumerate}
\end{exercise}
\subsubsection{Die \code{switch} -- Verzweigung}
\subsubsection{Die \varcode{switch} -- Verzweigung}
Die \code{switch} Verzweigung wird eingesetzt wenn mehrere F\"alle
auftreten k\"onnen, die einer unterschiedlichen Behandlung bed\"urfen.
@ -1049,7 +1049,7 @@ F\"alle behandelt werden. Die \code{switch} Anweisung wird mit
\code{end} beendet (z.B. in Listing \ref{switchlisting}).
\begin{lstlisting}[label=switchlisting, caption={Grundger\"ust einer \code{switch} Anweisung.}]
\begin{lstlisting}[label=switchlisting, caption={Grundger\"ust einer \varcode{switch} Anweisung.}]
mynumber = input('Enter a number:');
switch mynumber
case -1
@ -1065,7 +1065,7 @@ Wichtig ist hier, dass in jedem \code{case} auf Gleichheit der
switch-Anweisung und der case-Anweisung getestet wird.
\subsubsection{Vergleich \code{if} -- Anweisung und \code{switch} -- Verzweigung}
\subsubsection{Vergleich \varcode{if} -- Anweisung und \varcode{switch} -- Verzweigung}
\begin{itemize}
\item Mit der \code{if} Anweisung k\"onnen beliebige F\"alle
unterschieden und entsprechender Code ausgef\"uhrt werden.
@ -1085,7 +1085,7 @@ werden, werden die Schl\"usselworte \code{break} und
\code{continue} eingesetzt (Listing \ref{breakcontinuelisting}
zeigt, wie sie eingesetzt werden k\"onnen).
\begin{lstlisting}[caption={Einsatz der \code{continue} und \code{break} Schl\"usselworte um die Ausf\"uhrung von Code-Abschnitten in Schleifen zu \"uberspringen oder abzubrechen.}, label=breakcontinuelisting]
\begin{lstlisting}[caption={Einsatz der \varcode{continue} und \varcode{break} Schl\"usselworte um die Ausf\"uhrung von Code-Abschnitten in Schleifen zu \"uberspringen oder abzubrechen.}, label=breakcontinuelisting]
for x = 1:10
if(x > 2 & x < 5)
continue;

View File

@ -5,7 +5,7 @@
\lstset{inputpath=../code}
\graphicspath{{figures/}}
\setcounter{page}{57}
\setcounter{page}{55}
\setcounter{chapter}{2}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View File

@ -169,8 +169,8 @@ Aktionspotentialen speichert, k\"onnte also
nur einen sondern mehrere Werte aufnimmt, dann ist der Plural
angebracht (\codeterm{average\_spike\_counts}).
Die Laufvariablen von \code{for}-Schleifen werden oft nur \code{i},
\code{j} oder \code{k} benannt und sollten aber die einzige Ausnahme
Die Laufvariablen von \code{for}-Schleifen werden oft nur \varcode{i},
\varcode{j} oder \varcode{k} benannt und sollten aber die einzige Ausnahme
bzgl. ausdrucksstarker Namensgebung bleiben.
\begin{important}[Benennung von Variablen]
@ -328,7 +328,7 @@ M\"oglichkeit sogenannte \codeterm{lokale Funktionen} oder auch
erstellen. Listing \ref{localfunctions} zeigt ein Beispiel f\"ur eine
lokale Funktion.
\lstinputlisting[label=localfunctions, caption={\codeterm{Lokale Funktionen} erh\"ohen die Lesbarkeit sind aber nur innerhalb der definierenden Datei verf\"ugbar.}]{calculate_sines.m}
\lstinputlisting[label=localfunctions, caption={Lokale Funktionen erh\"ohen die Lesbarkeit sind aber nur innerhalb der definierenden Datei verf\"ugbar.}]{calculate_sines.m}
Lokale Funktionen existieren in der gleichen Datei und sind nur dort
verf\"ugbar. Jede Funktion hat ihren eigenen G\"ultigkeitsbereich, das

View File

@ -5,7 +5,7 @@
\lstset{inputpath=../code}
\graphicspath{{figures/}}
\setcounter{page}{89}
\setcounter{page}{85}
\setcounter{chapter}{5}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View File

@ -8,7 +8,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\hypersetup{pageanchor=false}
\maketitle
\hypersetup{pageanchor=true}
\tableofcontents
\listoffigures

View File

@ -5,7 +5,7 @@
\lstset{inputpath=../code}
\graphicspath{{figures/}}
\setcounter{page}{69}
\setcounter{page}{67}
\setcounter{chapter}{3}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

View File

@ -223,7 +223,7 @@ Standardabweichung $\sigma$.
ab. Rechts: Bei auf das Integral normierten Histogrammen werden
auch unterschiedliche Klassenbreiten untereinander vergleichbar
und auch mit der theoretischen Wahrschinlichkeitsdichtefunktion
(blau).}}
(blau).}
\end{figure}
\begin{exercise}{gaussianbins.m}{}