This repository has been archived on 2021-05-17. You can view files and clone it, but cannot push or open issues or pull requests.
scientificComputing/pointprocesses/exercises/pointprocesses01.tex

198 lines
6.6 KiB
TeX

\documentclass[12pt,a4paper,pdftex]{exam}
\usepackage[german]{babel}
\usepackage{pslatex}
\usepackage[mediumspace,mediumqspace,Gray]{SIunits} % \ohm, \micro
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage[breaklinks=true,bookmarks=true,bookmarksopen=true,pdfpagemode=UseNone,pdfstartview=FitH,colorlinks=true,citecolor=blue]{hyperref}
%%%%% layout %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[left=20mm,right=20mm,top=25mm,bottom=25mm]{geometry}
\pagestyle{headandfoot}
\ifprintanswers
\newcommand{\stitle}{L\"osungen}
\else
\newcommand{\stitle}{\"Ubung}
\fi
\header{{\bfseries\large \stitle}}{{\bfseries\large Punktprozesse}}{{\bfseries\large 27. Oktober, 2015}}
\firstpagefooter{Prof. Dr. Jan Benda}{Phone: 29 74573}{Email:
jan.benda@uni-tuebingen.de}
\runningfooter{}{\thepage}{}
\setlength{\baselineskip}{15pt}
\setlength{\parindent}{0.0cm}
\setlength{\parskip}{0.3cm}
\renewcommand{\baselinestretch}{1.15}
%%%%% listings %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{listings}
\lstset{
language=Matlab,
basicstyle=\ttfamily\footnotesize,
numbers=left,
numberstyle=\tiny,
title=\lstname,
showstringspaces=false,
commentstyle=\itshape\color{darkgray},
breaklines=true,
breakautoindent=true,
columns=flexible,
frame=single,
xleftmargin=1em,
xrightmargin=1em,
aboveskip=10pt
}
%%%%% math stuff: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{bm}
\usepackage{dsfont}
\newcommand{\naZ}{\mathds{N}}
\newcommand{\gaZ}{\mathds{Z}}
\newcommand{\raZ}{\mathds{Q}}
\newcommand{\reZ}{\mathds{R}}
\newcommand{\reZp}{\mathds{R^+}}
\newcommand{\reZpN}{\mathds{R^+_0}}
\newcommand{\koZ}{\mathds{C}}
%%%%% page breaks %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\continue}{\ifprintanswers%
\else
\vfill\hspace*{\fill}$\rightarrow$\newpage%
\fi}
\newcommand{\continuepage}{\ifprintanswers%
\newpage
\else
\vfill\hspace*{\fill}$\rightarrow$\newpage%
\fi}
\newcommand{\newsolutionpage}{\ifprintanswers%
\newpage%
\else
\fi}
%%%%% new commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\qt}[1]{\textbf{#1}\\}
\newcommand{\pref}[1]{(\ref{#1})}
\newcommand{\extra}{--- Zusatzaufgabe ---\ \mbox{}}
\newcommand{\code}[1]{\texttt{#1}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\input{instructions}
\begin{questions}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\question \qt{Statistik von Spiketrains}
In Ilias findet ihr die Dateien \code{poisson.mat},
\code{pifou.mat}, und \code{lifadapt.mat}. Jede dieser Dateien
enth\"alt mehrere Trials von Spiketrains von einer bestimmten Art
von Neuron. Die Spikezeiten sind in Sekunden gemessen.
Mit den folgenden Aufgaben wollen wir die Statistik der Spiketrains
der drei Neurone miteinander vergleichen.
\begin{parts}
\part Lade die Spiketrains aus den drei Dateien. Achte darauf,
dass sie verschiedene Variablen\-namen bekommen.
\begin{solution}
\begin{lstlisting}
clear all
% not so good:
load poisson.mat
whos
poissonspikes = spikes;
load pifou.mat;
pifouspikes = spikes;
load lifadapt.mat;
lifadaptspikes = spikes;
clear spikes;
% better:
clear all
x = load( 'poisson.mat' );
poissonspikes = x.spikes;
x = load( pifou.mat' );
pifouspikes = x.spikes;
x = load( 'lifadapt.mat' );
lifadaptspikes = x.spikes;
\end{lstlisting}
\end{solution}
\part Schreibe eine Funktion, die die Spikezeiten der ersten
$t_{max}$ Sekunden in einem Rasterplot visualisiert. In jeder
Zeile des Rasterplots wird ein Spiketrain dargestellt. Jeder
einzelne Spike wird als senkrechte Linie zu der Zeit des
Auftretens des Spikes geplottet. Benutze die Funktion, um die
Spikeraster der ersten 1\,s der drei Neurone nebeneinander zu plotten.
\begin{solution}
\lstinputlisting{../code/spikeraster.m}
\lstinputlisting{../code/plotspikeraster.m}
\mbox{}\\[-3ex]
\colorbox{white}{\includegraphics[width=1\textwidth]{spikeraster}}
\end{solution}
\part Schreibe eine Funktion, die einen einzigen Vektor mit den
Interspikeintervallen aller Trials von Spikezeiten zur\"uckgibt.
\begin{solution}
\lstinputlisting{../code/isis.m}
\end{solution}
\part Schreibe eine Funktion, die ein normiertes Histogramm aus
einem Vektor von Interspikeintervallen, gegeben in Sekunden,
berechnet und dieses mit richtiger Achsenbeschriftung plottet.
Die Interspikeintervalle sollen dabei in Millisekunden angegeben
werden. Die Funktion soll zus\"atzlich den Mittelwert, die
Standardabweichung, und den Variationskoeffizienten der
Interspikeintervalle berechnen und diese im Plot mit angeben.
Benutze die vorherige und diese Funktion, um die
Interspikeintervall Verteilung der drei Neurone zu vergleichen.
\begin{solution}
\lstinputlisting{../code/isihist.m}
\lstinputlisting{../code/plotisih.m}
\mbox{}\\[-3ex]
\colorbox{white}{\includegraphics[width=1\textwidth]{isihist}}
\end{solution}
\part Schreibe eine Funktion, die die seriellen Korrelationen der
Interspikeintervalle f\"ur Lags bis zu \code{maxlag} berechnet und
plottet. Die Seriellen Korrelationen $\rho_k$ f\"ur Lag $k$ der
Interspikeintervalle $T_i$ sind die Korrelationskoeffizienten
zwischen den Interspikeintervallen $T_i$ und den um das Lag $k$
verschobenen Intervallen $T_{i+k}$:
\[ \rho_k = \frac{\langle (T_{i+k} - \langle T \rangle)(T_i -
\langle T \rangle) \rangle}{\langle (T_i - \langle T
\rangle)^2\rangle} = \frac{{\rm cov}(T_{i+k}, T_i)}{{\rm
var}(T_i)} = {\rm corr}(T_{i+k}, T_i) \]
Benutze diese Funktion, um die Interspikeintervall-Korrelationen
der drei Neurone zu vergleichen.
\begin{solution}
\lstinputlisting{../code/isiserialcorr.m}
\lstinputlisting{../code/plotserialcorr.m}
\colorbox{white}{\includegraphics[width=1\textwidth]{serialcorr}}
\end{solution}
\part Schreibe eine Funktion, die aus Spikezeiten
Histogramme aus der Anzahl von Spikes, die in Fenstern gegebener L\"ange $W$
gez\"ahlt werden, erzeugt und plottet.
Wende diese Funktion auf die drei
Datens\"atze an. Probiere verschiedene Fenstergr\"o{\ss}en $W$ aus.
\begin{solution}
\lstinputlisting{../code/counthist.m}
\lstinputlisting{../code/plotcounthist.m}
\colorbox{white}{\includegraphics[width=1\textwidth]{counthist}}
\end{solution}
\end{parts}
\end{questions}
\end{document}