[pointprocesses] cleaned up m and pdf files
This commit is contained in:
		
							parent
							
								
									73c6d35536
								
							
						
					
					
						commit
						77b6666347
					
				| @ -1,3 +1,3 @@ | ||||
| TEXFILES=$(wildcard pointprocesses-?.tex) | ||||
| TEXFILES=$(wildcard pointprocesses-?.tex) psth.tex | ||||
| 
 | ||||
| include ../../exercises.mk | ||||
|  | ||||
										
											Binary file not shown.
										
									
								
							| @ -1,18 +0,0 @@ | ||||
| % generate spike times: | ||||
| rate = 20.0; | ||||
| spikes = hompoissonspikes( 10, rate, 50.0 ); | ||||
| % isi histogram: | ||||
| isivec = isis( spikes ); | ||||
| isihist( isivec ); | ||||
| hold on | ||||
| % theoretical density: | ||||
| xmax = 5.0/rate; | ||||
| x = 0:0.0001:xmax; | ||||
| y = rate*exp(-rate*x); | ||||
| plot( 1000.0*x, y, 'r', 'LineWidth', 3 ); | ||||
| % plot details: | ||||
| title( sprintf( 'Poisson spike trains, rate=%g Hz, nisi=%d', rate, length( isivec ) ) ) | ||||
| xlim( [ 0.0 1000.0*xmax ] ) | ||||
| ylim( [ 0.0 1.1*rate ] ) | ||||
| legend( 'data', 'poisson' ) | ||||
| hold off | ||||
| @ -1,46 +0,0 @@ | ||||
| rates = 1:1:100; | ||||
| avisi = []; | ||||
| sdisi = []; | ||||
| cvisi = []; | ||||
| 
 | ||||
| for rate = rates | ||||
|     spikes = hompoissonspikes( 10, rate, 100.0 ); | ||||
|     isivec = isis( spikes ); | ||||
|     av = mean( isivec ); | ||||
|     sd = std( isivec ); | ||||
|     cv = sd/av; | ||||
|     avisi = [ avisi av ]; | ||||
|     sdisi = [ sdisi sd ]; | ||||
|     cvisi = [ cvisi cv ]; | ||||
| end | ||||
| 
 | ||||
| f = figure; | ||||
| subplot( 1, 3, 1 ); | ||||
| scatter( rates, 1000.0*avisi, 'b', 'filled' ); | ||||
| hold on; | ||||
| plot( rates, 1000.0./rates, 'r' ); | ||||
| hold off; | ||||
| xlabel( 'Rate \lambda [Hz]' ); | ||||
| ylim( [ 0 1000 ] ); | ||||
| title( 'Mean ISI [ms]' ); | ||||
| legend( 'simulation', 'theory 1/\lambda' ); | ||||
| 
 | ||||
| subplot( 1, 3, 2 ); | ||||
| scatter( rates, 1000.0*sdisi, 'b', 'filled' ); | ||||
| hold on; | ||||
| plot( rates, 1000.0./rates, 'r' ); | ||||
| hold off; | ||||
| xlabel( 'Rate \lambda [Hz]' ); | ||||
| ylim( [ 0 1000 ] ) | ||||
| title( 'Standard deviation ISI [ms]' ); | ||||
| legend( 'simulation', 'theory 1/\lambda' ); | ||||
| 
 | ||||
| subplot( 1, 3, 3 ); | ||||
| scatter( rates, cvisi, 'b', 'filled' ); | ||||
| hold on; | ||||
| plot( rates, ones( size( rates ) ), 'r' ); | ||||
| hold off; | ||||
| xlabel( 'Rate \lambda [Hz]' ); | ||||
| ylim( [ 0 2 ] ) | ||||
| title( 'CV' ); | ||||
| legend( 'simulation', 'theory' ); | ||||
| @ -1,19 +0,0 @@ | ||||
| function spikes = hompoissonspikes( trials, rate, tmax ) | ||||
| % Generate spike times of a homogeneous poisson process | ||||
| % trials: number of trials that should be generated | ||||
| % rate: the rate of the Poisson process in Hertz | ||||
| % tmax: the duration of each trial in seconds | ||||
| % returns a cell array of vectors of spike times | ||||
| 
 | ||||
|     dt = 3.33e-5; | ||||
|     p = rate*dt; | ||||
|     if p > 0.2 | ||||
|         p = 0.2 | ||||
|         dt = p/rate; | ||||
|     end | ||||
|     x = rand( trials, ceil(tmax/dt) ); | ||||
|     spikes = cell( trials, 1 ); | ||||
|     for k=1:trials | ||||
|         spikes{k} = find( x(k,:) < p ) * dt; | ||||
|     end | ||||
| end | ||||
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,142 +0,0 @@ | ||||
| \documentclass[addpoints,10pt]{exam} | ||||
| \usepackage{url} | ||||
| \usepackage{color} | ||||
| \usepackage{hyperref} | ||||
| \usepackage{graphicx} | ||||
| 
 | ||||
| \pagestyle{headandfoot} | ||||
| \runningheadrule | ||||
| \firstpageheadrule | ||||
| 
 | ||||
| \firstpageheader{Scientific Computing}{Integrate-and-fire models}{Oct 28, 2014} | ||||
| %\runningheader{Homework 01}{Page \thepage\ of \numpages}{23. October 2014} | ||||
| \firstpagefooter{}{}{} | ||||
| \runningfooter{}{}{} | ||||
| \pointsinmargin | ||||
| \bracketedpoints | ||||
| 
 | ||||
| %\printanswers | ||||
| \shadedsolutions | ||||
| 
 | ||||
| \usepackage[mediumspace,mediumqspace,Gray]{SIunits}      % \ohm, \micro | ||||
| 
 | ||||
| %%%%% listings %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| \usepackage{listings} | ||||
| \lstset{ | ||||
|  basicstyle=\ttfamily, | ||||
|  numbers=left, | ||||
|  showstringspaces=false, | ||||
|  language=Matlab, | ||||
|  breaklines=true, | ||||
|  breakautoindent=true, | ||||
|  columns=flexible, | ||||
|  frame=single, | ||||
|  captionpos=t, | ||||
|  xleftmargin=2em, | ||||
|  xrightmargin=1em, | ||||
|  aboveskip=10pt, | ||||
|  %title=\lstname, | ||||
|  title={\protect\filename@parse{\lstname}\protect\filename@base.\protect\filename@ext} | ||||
|  } | ||||
| 
 | ||||
| 
 | ||||
| \begin{document} | ||||
| 
 | ||||
| \sffamily | ||||
| %%%%%%%%%%%%%% Questions %%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| 
 | ||||
| \begin{questions} | ||||
|   \question \textbf{Statistics of integrate-and-fire neurons} | ||||
|   For the following use different variants of the leaky integrate-and-fire models provided in \texttt{lifspikes.m},  | ||||
|   \texttt{lifouspikes.m}, and \texttt{lifadaptspikes.m} do generate some spike train data. | ||||
|   Use the functions you wrote for the Poisson process to analyze the statistics of the spike trains. | ||||
|   \begin{parts} | ||||
|     \part Generate a few trials of the two models for two different inputs | ||||
|     that result in qualitatively different spike trains and display | ||||
|     them in a raster plot. Decide for a noise strength (good values to try are 0.001, 0.01, 0.1, 1). | ||||
|     \begin{solution} | ||||
|       \begin{lstlisting} | ||||
| spikes = pifspikes( 10, 1.0, 0.5, 0.01 ); | ||||
| %spikes = pifspikes( 10, 10.0, 0.5, 0.01 ); | ||||
| %spikes = lifspikes( 10, 11.0, 0.5, 0.001 ); | ||||
| %spikes = lifspikes( 10, 15.0, 0.5, 0.001 ); | ||||
| spikeraster( spikes ) | ||||
|       \end{lstlisting} | ||||
|       \mbox{}\\[-3ex] | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifraster02}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifraster10}}\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifraster10}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifraster15}} | ||||
|     \end{solution} | ||||
| 
 | ||||
| 
 | ||||
|     \part The inverse Gaussian describes the interspike interval distribution of a PIF driven with white noise: | ||||
|     \[ p(T) = \frac{1}{\sqrt{4\pi D T^3}}\exp\left[-\frac{(T-\langle T \rangle)^2}{4DT\langle T \rangle^2}\right] \] | ||||
|     where $\langle T \rangle$ is the mean interspike interval and  | ||||
|     \[ D = \frac{\langle(T - \langle T \rangle)^2\rangle}{2 \langle T \rangle^3} \] | ||||
|     is the diffusion coefficient (variance of the interspike intervals | ||||
|     $T$ divided by two times the mean cubed). Show in two plots how | ||||
|     this distribution depends on $\langle T \rangle$ and $D$. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{simulations/inversegauss.m} | ||||
|       \lstinputlisting{simulations/inversegaussplot.m} | ||||
|       \colorbox{white}{\includegraphics[width=0.98\textwidth]{inversegauss}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Extent your function plotting an interspike interval histogram | ||||
|     to also report the diffusion coefficient $D$. | ||||
|     \begin{solution} | ||||
|       \begin{lstlisting} | ||||
| ... | ||||
| % annotation: | ||||
| misi = mean( isis ); | ||||
| sdisi = std( isis ); | ||||
| disi = sdisi^2.0/2.0/misi^3; | ||||
| text( 0.6, 0.7, sprintf( 'mean=%.1f ms', 1000.0*misi ), 'Units', 'normalized' ) | ||||
| text( 0.6, 0.6, sprintf( 'std=%.1f ms', 1000.0*sdisi ), 'Units', 'normalized' ) | ||||
| text( 0.6, 0.5, sprintf( 'CV=%.2f', sdisi/misi ), 'Units', 'normalized' ) | ||||
| text( 0.6, 0.4, sprintf( 'D=%.1f Hz', disi ), 'Units', 'normalized' ) | ||||
| ... | ||||
|       \end{lstlisting} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Compare intersike interval histograms obtained from the LIF and PIF models with the inverse Gaussian. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{simulations/lifisih.m} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifisih01}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifisih10}}\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifisih08}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifisih16}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Plot the firing rate (inverse mean interspike interval), | ||||
|     mean interspike interval, the corresponding standard deviation, | ||||
|     CV, and diffusion coefficient as a function of the input to the LIF | ||||
|     and the PIF with noise strength set to 0.01. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{simulations/lifisistats.m} | ||||
|       Leaky integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.8\textwidth]{lifisistats}}\\ | ||||
|       Perfect integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.8\textwidth]{pifisistats}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Plot the firing rate as a function of input of the LIF and the PIF for various values | ||||
|     of the noise strength. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{simulations/lifficurves.m} | ||||
|       Leaky integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.7\textwidth]{lifficurves}}\\ | ||||
|       Perfect integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.7\textwidth]{pifficurves}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Use the functions for computing serial correlations, count statistics and fano factors | ||||
|     to further explore the statistics of the integrate-and-fire models! | ||||
| 
 | ||||
|   \end{parts} | ||||
|    | ||||
| \end{questions} | ||||
| 
 | ||||
| 
 | ||||
| \end{document} | ||||
| @ -1,12 +1,12 @@ | ||||
| \documentclass[12pt,a4paper,pdftex]{exam} | ||||
| 
 | ||||
| \newcommand{\exercisetopic}{Point Processes} | ||||
| \newcommand{\exercisenum}{X2} | ||||
| \newcommand{\exercisetopic}{Integrate-and-fire models} | ||||
| \newcommand{\exercisenum}{13} | ||||
| \newcommand{\exercisedate}{January 19th, 2021} | ||||
| 
 | ||||
| \input{../../exercisesheader} | ||||
| 
 | ||||
| \firstpagefooter{Prof. Dr. Jan Benda}{}{jan.benda@uni-tuebingen.de} | ||||
| \firstpagefooter{Dr. Jan Benda}{}{jan.benda@uni-tuebingen.de} | ||||
| 
 | ||||
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| \begin{document} | ||||
| @ -14,113 +14,97 @@ | ||||
| \input{../../exercisestitle} | ||||
| 
 | ||||
| \begin{questions} | ||||
|   \question \textbf{Statistics of integrate-and-fire neurons} | ||||
|   For the following use different variants of the leaky integrate-and-fire models provided in \texttt{lifspikes.m},  | ||||
|   \texttt{lifouspikes.m}, and \texttt{lifadaptspikes.m} do generate some spike train data. | ||||
|   Use the functions you wrote for the Poisson process to analyze the statistics of the spike trains. | ||||
|   \begin{parts} | ||||
|     \part Generate a few trials of the two models for two different inputs | ||||
|     that result in qualitatively different spike trains and display | ||||
|     them in a raster plot. Decide for a noise strength (good values to try are 0.001, 0.01, 0.1, 1). | ||||
|     \begin{solution} | ||||
|       \begin{lstlisting} | ||||
| spikes = pifspikes( 10, 1.0, 0.5, 0.01 ); | ||||
| %spikes = pifspikes( 10, 10.0, 0.5, 0.01 ); | ||||
| %spikes = lifspikes( 10, 11.0, 0.5, 0.001 ); | ||||
| %spikes = lifspikes( 10, 15.0, 0.5, 0.001 ); | ||||
| spikeraster( spikes ) | ||||
|       \end{lstlisting} | ||||
|       \mbox{}\\[-3ex] | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifraster02}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifraster10}}\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifraster10}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifraster15}} | ||||
|     \end{solution} | ||||
| 
 | ||||
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| \question \qt{Homogener Poisson Prozess} | ||||
| Wir wollen den homogenen Poisson Prozess benutzen um Spikes zu generieren, | ||||
| mit denen wir die Analysfunktionen des vorherigen \"Ubungszettel \"uberpr\"ufen k\"onnen. | ||||
| 
 | ||||
| Ein homogener Poisson Prozess mit der Rate $\lambda$ (gemessen in Hertz) ist ein Punktprozess, | ||||
| bei dem die Wahrschienlichkeit eines Ereignisses unabh\"angig von der Zeit $t$ und | ||||
| unabh\"angig von vorherigen Ereignissen ist. | ||||
| Die Wahrscheinlichkeit $P$ eines Ereignisses innerhalb eines Bins der Breite $\Delta t$ ist | ||||
| \[ P = \lambda \cdot \Delta t \] | ||||
| f\"ur gen\"ugend kleine $\Delta t$. | ||||
| \begin{parts} | ||||
|    | ||||
|   \part Schreibe eine Funktion die $n$ homogene Poisson Spiketrains | ||||
|   einer gegebenen Dauer $T_{max}$ mit Rate $\lambda$ erzeugt. | ||||
|   \begin{solution} | ||||
|     \lstinputlisting{hompoissonspikes.m} | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Benutze diese Funktion um einige Trials von Spikes zu erzeugen | ||||
|   und plotte diese als Spikeraster. | ||||
|   \begin{solution} | ||||
|     \begin{lstlisting} | ||||
|       spikes = hompoissonspikes( 10, 100.0, 0.5 ); | ||||
|       spikeraster( spikes ) | ||||
|     \end{lstlisting} | ||||
|     \mbox{}\\[-3ex] | ||||
|     \colorbox{white}{\includegraphics[width=0.7\textwidth]{poissonraster100hz}} | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Berechne Histogramme aus den Interspikeintervallen von $n$ | ||||
|   Poisson Spiketrains mit der Rate $\lambda=100$\,Hz. Ver\"andere | ||||
|   \"uber die Dauer $T_{max}$ der Spiketrains und die Anzahl $n$ der | ||||
|   Trials die Anzahl der Intervalle und ver\"andere auch die Binbreite | ||||
|   des Histograms (fang mit 1\,ms an). Wieviele Interspikeintervalle | ||||
|   werden ben\"otigt, um ein ``sch\"ones'' Histogramm zu erhalten? Wie | ||||
|   lange m\"usste man also von dem Neuron ableiten? | ||||
|   \begin{solution} | ||||
|     About 5000 intervals for 25 bins. This corresponds to a $5000 / | ||||
|     100\,\hertz = 50\,\second$ recording of a neuron firing with | ||||
|     100\,\hertz. | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Vergleiche Interspike-Intervall Histogramme von Poisson-Spikes | ||||
|   verschiedener Raten $\lambda$ mit der theoretisch zu erwartenden Verteilung | ||||
|   der Intervalle $T$ des Poisson Prozesses | ||||
|   \[ p(T) = \lambda e^{-\lambda T} \; .\] | ||||
|   \begin{solution} | ||||
|     \lstinputlisting{hompoissonisih.m} | ||||
|     \colorbox{white}{\includegraphics[width=0.48\textwidth]{poissonisih100hz}} | ||||
|     \colorbox{white}{\includegraphics[width=0.48\textwidth]{poissonisih20hz}} | ||||
|   \end{solution} | ||||
|    | ||||
|   \part \extra Was pasiert mit den Histogrammen, wenn die Binbreite | ||||
|   der Histogramme kleiner als das bei der Erzeugung der Poisson | ||||
|   Spiketrains verwendete $\Delta t$ ist? | ||||
|   \begin{solution} | ||||
|     Die Bins zwischen der durch $\Delta t$ vorgegebenen | ||||
|     Diskretisierung haben den Wert 0. Dadurch werden aber die anderen | ||||
|     durch die Normierung h\"oher als sie sein sollten. | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Plotte den Mittelwert der Interspikeintervalle, die | ||||
|   dazugeh\"orige Standardabweichung und den Variationskoeffizienten | ||||
|   als Funktion der Rate $\lambda$ des Poisson Prozesses. Vergleiche | ||||
|   die Ergebnisse mit den theoretischen Erwartungen (siehe Vorlesungsskript). | ||||
|   \begin{solution} | ||||
|     \lstinputlisting{hompoissonisistats.m} | ||||
|     \colorbox{white}{\includegraphics[width=0.98\textwidth]{poissonisistats}} | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Plotte die seriellen Korrelationen von Poisson-Spiketrains und | ||||
|   erkl\"are kurz das Ergebniss. | ||||
|   \begin{solution} | ||||
|     \mbox{}\\[-2ex]\hspace*{2cm} | ||||
|     \colorbox{white}{\includegraphics[width=0.8\textwidth]{poissonserial100hz}}\\ | ||||
|     Alle Korrelationen zwischen Interspikeintervallen sind Null, da | ||||
|     beim Poisson Prozess das Auftreten jedes Spikes unabh\"angig von | ||||
|     den vorherigen Spikes ist. | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Vergleiche Histogramme von Spikecounts gez\"ahlt in Fenstern | ||||
|   der Breite $W$ mit der Poisson Verteilung | ||||
|   \[ P(k) = \frac{(\lambda W)^ke^{\lambda W}}{k!} \; , \]  | ||||
|   wobei die Rate $\lambda$ aus den Daten bestimmt werden | ||||
|   soll. Hinweis: es gibt eine \code{matlab} Funktion, die die | ||||
|   Fakult\"at $n!$ berechnet. | ||||
|   \begin{solution} | ||||
|     %\lstinputlisting{counthist.m} | ||||
|     \colorbox{white}{\includegraphics[width=0.48\textwidth]{poissoncounthistdist100hz10ms}} | ||||
|     \colorbox{white}{\includegraphics[width=0.48\textwidth]{poissoncounthistdist100hz100ms}} | ||||
|   \end{solution} | ||||
|    | ||||
|   \part Schreibe eine Funktion, die die mittlere Anzahl, die Varianz | ||||
|   und den Fano-Faktor der Anzahl der Spikes in einem Fenster der | ||||
|   Breite $W$ bestimmt. Benutze die Funktion, um diese Parameter f\"ur | ||||
|   verschiedene Fensterbreiten $W$ zu bestimmen. Zwei Plots sollen aus | ||||
|   den Ergebnissen angefertigt werden: (i) Varianz gegen Mittelwert der counts. | ||||
|   (ii) Fano Faktor als Funktion der Fensterbreite. | ||||
|   \begin{solution} | ||||
|     \lstinputlisting{fanoplot.m} | ||||
|     \colorbox{white}{\includegraphics[width=0.98\textwidth]{poissonfano100hz}} | ||||
|   \end{solution} | ||||
|    | ||||
| \end{parts} | ||||
|     \part The inverse Gaussian describes the interspike interval distribution of a PIF driven with white noise: | ||||
|     \[ p(T) = \frac{1}{\sqrt{4\pi D T^3}}\exp\left[-\frac{(T-\langle T \rangle)^2}{4DT\langle T \rangle^2}\right] \] | ||||
|     where $\langle T \rangle$ is the mean interspike interval and  | ||||
|     \[ D = \frac{\langle(T - \langle T \rangle)^2\rangle}{2 \langle T \rangle^3} \] | ||||
|     is the diffusion coefficient (variance of the interspike intervals | ||||
|     $T$ divided by two times the mean cubed). Show in two plots how | ||||
|     this distribution depends on $\langle T \rangle$ and $D$. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{inversegauss.m} | ||||
|       \lstinputlisting{inversegaussplot.m} | ||||
|       \colorbox{white}{\includegraphics[width=0.98\textwidth]{inversegauss}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Extent your function plotting an interspike interval histogram | ||||
|     to also report the diffusion coefficient $D$. | ||||
|     \begin{solution} | ||||
|       \begin{lstlisting} | ||||
| ... | ||||
| % annotation: | ||||
| misi = mean( isis ); | ||||
| sdisi = std( isis ); | ||||
| disi = sdisi^2.0/2.0/misi^3; | ||||
| text( 0.6, 0.7, sprintf( 'mean=%.1f ms', 1000.0*misi ), 'Units', 'normalized' ) | ||||
| text( 0.6, 0.6, sprintf( 'std=%.1f ms', 1000.0*sdisi ), 'Units', 'normalized' ) | ||||
| text( 0.6, 0.5, sprintf( 'CV=%.2f', sdisi/misi ), 'Units', 'normalized' ) | ||||
| text( 0.6, 0.4, sprintf( 'D=%.1f Hz', disi ), 'Units', 'normalized' ) | ||||
| ... | ||||
|       \end{lstlisting} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Compare intersike interval histograms obtained from the LIF and PIF models with the inverse Gaussian. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{lifisih.m} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifisih01}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{pifisih10}}\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifisih08}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{lifisih16}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Plot the firing rate (inverse mean interspike interval), | ||||
|     mean interspike interval, the corresponding standard deviation, | ||||
|     CV, and diffusion coefficient as a function of the input to the LIF | ||||
|     and the PIF with noise strength set to 0.01. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{lifisistats.m} | ||||
|       Leaky integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.8\textwidth]{lifisistats}}\\ | ||||
|       Perfect integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.8\textwidth]{pifisistats}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Plot the firing rate as a function of input of the LIF and the PIF for various values | ||||
|     of the noise strength. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{lifficurves.m} | ||||
|       Leaky integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.7\textwidth]{lifficurves}}\\ | ||||
|       Perfect integrate-and-fire:\\ | ||||
|       \colorbox{white}{\includegraphics[width=0.7\textwidth]{pifficurves}} | ||||
|     \end{solution} | ||||
| 
 | ||||
|     \part Use the functions for computing serial correlations, count statistics and fano factors | ||||
|     to further explore the statistics of the integrate-and-fire models! | ||||
| 
 | ||||
|   \end{parts} | ||||
|    | ||||
| \end{questions} | ||||
| 
 | ||||
| 
 | ||||
| \end{document} | ||||
|  | ||||
| @ -1,163 +0,0 @@ | ||||
| \documentclass[12pt,a4paper,pdftex]{exam} | ||||
| 
 | ||||
| \newcommand{\exercisetopic}{Point Processes} | ||||
| \newcommand{\exercisenum}{X3} | ||||
| \newcommand{\exercisedate}{January 19th, 2021} | ||||
| 
 | ||||
| \input{../../exercisesheader} | ||||
| 
 | ||||
| \firstpagefooter{Prof. Dr. Jan Benda}{}{jan.benda@uni-tuebingen.de} | ||||
| 
 | ||||
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| \begin{document} | ||||
| 
 | ||||
| \input{../../exercisestitle} | ||||
| 
 | ||||
| \begin{questions} | ||||
|    | ||||
|   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  | ||||
|   \question \qt{Statistik von Spiketrains 2} | ||||
|   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. | ||||
| 
 | ||||
|   Bereits im letzten \"Ubungszettel erstellte Funktionen d\"urfen (sollen!) | ||||
|   wiederverwendet werden. | ||||
|   \begin{parts} | ||||
|     \part Lade die Spiketrains aus den drei Dateien. Stelle sie in Rasterplots dar. | ||||
|      | ||||
|     \part Plotte die Interspike-Intervall Verteilungen. | ||||
| 
 | ||||
|     Annotiere die Plots mit dem Mittelwert, der | ||||
|     Standardabweichung, und dem Variationskoeffizienten der | ||||
|     Interspikeintervalle, sowie der mittleren Feuerrate. | ||||
| 
 | ||||
|     \part Vergleiche die ISI-Histogramme mit der ISI Verteilung eines Poisson Prozesses | ||||
|     der Rate $\lambda$: | ||||
|     \[ p(T) = \lambda e^{-\lambda T} \; .\] | ||||
| 
 | ||||
|     \part Erstelle Return-Maps f\"ur die drei Spiketrains, also jedes | ||||
|     Interspike-Intervall $T_{i+1}$ gegen das vorherige Intervall $T_i$ | ||||
|     geplottet. | ||||
|    | ||||
|     \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} | ||||
|      | ||||
|   \end{parts} | ||||
| 
 | ||||
|   \continue | ||||
|   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  | ||||
|   \question \qt{Homogener Poisson Prozess} | ||||
|   Wir wollen den homogenen Poisson Prozess benutzen um Spikes zu | ||||
|   generieren, mit denen wir die Analysfunktionen des vorherigen | ||||
|   Aufgaben \"uberpr\"ufen k\"onnen. | ||||
| 
 | ||||
|   Ein homogener Poisson Prozess mit der Rate $\lambda$ (gemessen in | ||||
|   Hertz) ist ein Punktprozess, bei dem die Wahrscheinlichkeit eines | ||||
|   Ereignisses unabh\"angig von der Zeit $t$ und unabh\"angig von | ||||
|   vorherigen Ereignissen ist.  Wenn wir die Zeitachse in kleine Bins | ||||
|   der Breite $\Delta t$ einteilen, dann ist | ||||
|   \[ P = \lambda \cdot \Delta t \] | ||||
|   die Wahrscheinlichkeit innerhalb eines Bins ein Ereignis (``spike'') | ||||
|   zu erhalten. $\Delta t$ muss daf\"ur klein genug sein, so dass $P<0.1$. | ||||
|   \begin{parts} | ||||
|      | ||||
|     \part Schreibe eine Funktion die $n$ homogene Poisson Spiketrains | ||||
|     einer gegebenen Dauer $T_{max}$ mit Rate $\lambda$ erzeugt. | ||||
| 
 | ||||
|     Falls das nicht gelingt, benutze f\"ur die folgenden Aufgaben | ||||
|     soweit m\"oglich spikes aus der Datei \code{poisson.mat}. | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{hompoissonspikes.m} | ||||
|     \end{solution} | ||||
|      | ||||
|     \part Benutze diese Funktion um einige Trials von Spikes zu erzeugen | ||||
|     und plotte diese als Spikeraster. | ||||
|     \begin{solution} | ||||
|       \begin{lstlisting} | ||||
|         spikes = hompoissonspikes( 10, 100.0, 0.5 ); | ||||
|         spikeraster( spikes ) | ||||
|       \end{lstlisting} | ||||
|       \mbox{}\\[-3ex] | ||||
|       \colorbox{white}{\includegraphics[width=0.7\textwidth]{poissonraster100hz}} | ||||
|     \end{solution} | ||||
|      | ||||
|     \part Berechne Histogramme aus den Interspikeintervallen von $n$ | ||||
|     Poisson Spiketrains mit der Rate $\lambda=100$\,Hz. Wie viele bins | ||||
|     werden f\"ur ein ``sch\"ones'' ISI-Histogramm ungef\"ahr ben\"otigt? | ||||
|     Ver\"andere \"uber die Dauer $T_{max}$ der Spiketrains und die | ||||
|     Anzahl $n$ der Trials die Anzahl der Intervalle. Wieviele | ||||
|     Interspikeintervalle werden ben\"otigt, um ein ``sch\"ones'' | ||||
|     Histogramm zu erhalten? Wie lange m\"usste man also von dem Neuron | ||||
|     ableiten? | ||||
|     \begin{solution} | ||||
|       About 5000 intervals for 25 bins. This corresponds to a $5000 / | ||||
|       100\,\hertz = 50\,\second$ recording of a neuron firing with | ||||
|       100\,\hertz. | ||||
|     \end{solution} | ||||
|      | ||||
|     \part Vergleiche Interspike-Intervall Histogramme von Poisson-Spikes | ||||
|     verschiedener Raten $\lambda$ mit der theoretisch zu erwartenden Verteilung | ||||
|     der Intervalle $T$ des Poisson Prozesses | ||||
|     \[ p(T) = \lambda e^{-\lambda T} \; .\] | ||||
|     Achte darauf, dass die Bins des Histograms nicht kleiner als $\Delta t$ sind! | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{hompoissonisih.m} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{poissonisih100hz}} | ||||
|       \colorbox{white}{\includegraphics[width=0.48\textwidth]{poissonisih20hz}} | ||||
|     \end{solution} | ||||
|      | ||||
|     \part \extra Was passiert mit den Histogrammen, wenn die Binbreite | ||||
|     der Histogramme kleiner als das bei der Erzeugung der Poisson | ||||
|     Spiketrains verwendete $\Delta t$ ist? | ||||
|     \begin{solution} | ||||
|       Die Bins zwischen der durch $\Delta t$ vorgegebenen | ||||
|       Diskretisierung haben den Wert 0. Dadurch werden aber die anderen | ||||
|       durch die Normierung h\"oher als sie sein sollten. | ||||
|     \end{solution} | ||||
|      | ||||
|     \part Plotte den Mittelwert der Interspikeintervalle, die | ||||
|     dazugeh\"orige Standardabweichung und den Variationskoeffizienten | ||||
|     als Funktion der Rate $\lambda$ des Poisson Prozesses. Vergleiche | ||||
|     die Ergebnisse mit den theoretischen Erwartungen (siehe Vorlesungsskript). | ||||
|     \begin{solution} | ||||
|       \lstinputlisting{hompoissonisistats.m} | ||||
|       \colorbox{white}{\includegraphics[width=0.98\textwidth]{poissonisistats}} | ||||
|     \end{solution} | ||||
|      | ||||
|     \part Plotte die seriellen Korrelationen von Poisson-Spiketrains und | ||||
|     erkl\"are kurz das Ergebniss. | ||||
|     \begin{solution} | ||||
|       \mbox{}\\[-2ex]\hspace*{2cm} | ||||
|       \colorbox{white}{\includegraphics[width=0.8\textwidth]{poissonserial100hz}}\\ | ||||
|       Alle Korrelationen zwischen Interspikeintervallen sind Null, da | ||||
|       beim Poisson Prozess das Auftreten jedes Spikes unabh\"angig von | ||||
|       den vorherigen Spikes ist. | ||||
|     \end{solution} | ||||
|      | ||||
|   \end{parts} | ||||
| 
 | ||||
| 
 | ||||
| \end{questions} | ||||
| 
 | ||||
| \end{document} | ||||
| @ -1,198 +0,0 @@ | ||||
| \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} | ||||
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								pointprocesses/exercises/poissonisihist.pdf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								pointprocesses/exercises/poissonisihist.pdf
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,42 +1,20 @@ | ||||
| \documentclass[12pt,a4paper,pdftex]{exam} | ||||
| 
 | ||||
| \usepackage[german]{babel} | ||||
| \usepackage{natbib} | ||||
| \usepackage{graphicx} | ||||
| \usepackage[small]{caption} | ||||
| \usepackage{sidecap} | ||||
| \usepackage{pslatex} | ||||
| \usepackage{amsmath} | ||||
| \usepackage{amssymb} | ||||
| \setlength{\marginparwidth}{2cm} | ||||
| \usepackage[breaklinks=true,bookmarks=true,bookmarksopen=true,pdfpagemode=UseNone,pdfstartview=FitH,colorlinks=true,citecolor=blue]{hyperref} | ||||
| \newcommand{\exercisetopic}{Time-dependent firing rates} | ||||
| \newcommand{\exercisenum}{12} | ||||
| \newcommand{\exercisedate}{January 19th, 2021} | ||||
| 
 | ||||
| %%%%% text size %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| \usepackage[left=20mm,right=20mm,top=25mm,bottom=25mm]{geometry} | ||||
| \pagestyle{headandfoot} \header{{\bfseries\large Exercise | ||||
|     }}{{\bfseries\large Time-dependent firing rate}}{{\bfseries\large January, 14, 2020}} | ||||
| \firstpagefooter{Dr. Jan Grewe}{Phone: 29 74588}{Email: | ||||
|   jan.grewe@uni-tuebingen.de} \runningfooter{}{\thepage}{} | ||||
| \input{../../exercisesheader} | ||||
| 
 | ||||
| \setlength{\baselineskip}{15pt} | ||||
| \setlength{\parindent}{0.0cm} | ||||
| \setlength{\parskip}{0.3cm} | ||||
| \renewcommand{\baselinestretch}{1.15} | ||||
| \firstpagefooter{Dr. Jan Grewe}{}{jan.grewe@uni-tuebingen.de} | ||||
| 
 | ||||
| \newcommand{\code}[1]{\texttt{#1}} | ||||
| \renewcommand{\solutiontitle}{\noindent\textbf{Solution}\par\noindent} | ||||
| 
 | ||||
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  | ||||
| %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | ||||
| \begin{document} | ||||
| 
 | ||||
| \vspace*{-6.5ex} | ||||
| \begin{center} | ||||
|   \textbf{\Large Introduction to scientific computing.}\\[1ex] | ||||
|   {\large Jan Grewe, Jan Benda}\\[-3ex] | ||||
|   Abteilung Neuroethologie \hfill --- \hfill Institut f\"ur Neurobiologie \hfill --- \hfill \includegraphics[width=0.28\textwidth]{UT_WBMW_Black_RGB} \\ | ||||
| \end{center} | ||||
| \input{../../exercisestitle} | ||||
| 
 | ||||
| \begin{questions} | ||||
|    | ||||
|   \question Plot the time-dependent firing rate of a neuron. Calculate | ||||
|   the firing rate from the \emph{instantaneous firing rate} (based on the | ||||
|   interspike interval). Use the \code{lifoustim.mat}. The dataset | ||||
| @ -45,14 +23,14 @@ | ||||
|   duration of each trial is 30 seconds. | ||||
| 
 | ||||
|   \begin{parts} | ||||
|     \part{} Write a function that takes three arguments: the spike | ||||
|     \part Write a function that takes three arguments: the spike | ||||
|     times of a single trial, the trial duration and the temporal | ||||
|     resolution. The function should return two variables: the time axis and the | ||||
|     time-dependent firing rate. | ||||
|     \part{} Write a script that applies the above function to estimate | ||||
|     \part Write a script that applies the above function to estimate | ||||
|     the time-dependent firing rate of each trial. Plot the firing rates of the individual responses | ||||
|     and the average response as a function of time into the same graph. | ||||
|     \part{} Extend your program that it saves the figure with the width and height of 8.5\,cm using a fontsize of 10\,pt for labels. | ||||
|     \part Extend your program that it saves the figure with the width and height of 8.5\,cm using a fontsize of 10\,pt for labels. | ||||
|     See Chapter 3 in the script, or browse the Matlab help for more | ||||
|     information. Store the figure in pdf format. | ||||
|   \end{parts} | ||||
| @ -65,10 +43,10 @@ | ||||
| 
 | ||||
|   \question{} Some trials are different than the others. | ||||
|   \begin{parts} | ||||
|     \part{} Use a rasterplot to identify them. In which sense | ||||
|     \part Use a rasterplot to identify them. In which sense | ||||
|     are they different? Save the rasterplot in pdf | ||||
|     format. Use the same figure specifications as above and make sure it is properly labeled. | ||||
|     \part{} Identify those trials in which the spike count | ||||
|     \part Identify those trials in which the spike count | ||||
|     deviates more than $2\sigma$ (twice the standard deviation) from the average. | ||||
|   \end{parts} | ||||
| \end{questions} | ||||
|  | ||||
		Reference in New Issue
	
	Block a user