\documentclass[12pt]{book}

\input{header}

\newcommand{\includechapter}[1]{%
  \graphicspath{{#1/lecture/}{#1/lecture/figures/}{#1/images/}}%
  \setcodepath{#1/code}%
  \include{#1/lecture/#1}%
}

%\includeonly{regression/lecture/regression}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document} 

\selectlanguage{english}

\hypersetup{pageanchor=false}
\maketitle
\hypersetup{pageanchor=true}

\frontmatter

\clearpage
\tableofcontents

\clearpage
\listoffigures

\clearpage
\lstlistoflistings

\clearpage
\listofexercisefs

\clearpage
\listofiboxfs


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\mainmatter

% add introduction:
% - data analysis skills way beyond basic statistical test are at the
%   core of modern neuroscience
% - *understanding* of basic concepts of data analysis concepts is important
% - math is the universal language of natural sciences, including neuroscience.
%   it is the most precise way to express relation.
%   We therefore expose you to some mathematical equations 
%   that do not go beyond what you learned at school.
% - most concepts are also quite relevant for the brain itself!
%   The brain also needs to analyse the data coming in from the senses.
% - modern approaches:
%   * open source science (open data, open code, open algorithmns in contrast 
%     to closed source license models), FAIR
%   * knowledge is freedom ...
%   * do not consume what companies offer you but know what you want and implement it
%   * no screenshots on how to use a stupid GUI program
%   * python as a modern and popular programming language in modern science
%     (i.e. machine learning, others?) with a strong community support.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\part{Programming basics}

\includechapter{programming}

\includechapter{debugging}

\includechapter{plotting}

\includechapter{codestyle}

\includechapter{designpattern}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\part{Data analysis}
%\subpart{Basic statistics}
% With an intro saying statistical tests are overrated!

% add chapter on stochastic simulations (draw random numbers, draw random functions)
%\includechapter{simulations}

\includechapter{statistics}

% add chapter on statistical tests

\includechapter{bootstrap}

\includechapter{regression}

% add chapter on nonlinear fitting (methods, initial values, local minima, power law fits on log-log data)

\includechapter{likelihood}

% add chapter on multivariate analysis/generalized linear models (in addition to ANOVA)


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\subpart{Time series}

% add chapter on simulations of dynamical systems/time series (euler
% forward, odeint, iterated maps, dynamical system, bifurcations?)
% !!! this would be a nice and simple starter !!!
% introduces derivatives which are also needed for fitting

% add chapter on time series (amplitude distribution, autocorrelation, crosscorrelation)
%\includechapter{spectral}

% add chapter on filtering (1. order, butter and kernel convolution) and envelopes

% add chapter on event detection (local maxima, threshold crossings,
% peak detection), signal detection, ROC

\includechapter{pointprocesses}

% add a chapter on simulating point-processes/spike trains
% (Poisson spike trains, integrate-and-fire models)

% add chapter on information theory, mutual information, stimulus reconstruction, coherence

% add a chapter on Bayesian inference (the Neuroscience of it and a
% bit of application for statistical problems).


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\subpart{Machine learning}

% add chapters on linear algebra, PCA, clustering, see linearalgebra/

% add chapter on logistic regression, see logistic/

% add chapter on simple machine learning, perceptron

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\part{Tools}

% add chapter on Markup and LaTeX -> see latex/
% - if you know LaTeX you also know how to better use word/libreoffice
% - with an introduction on mark-up in general, an outlook to markdown, html, xml, jason, yaml
% - make notes, data, and texts understandable by computers!
% - easily generate markup from python scripts via mako .

% bash basics:
% - calling a (python) script/program with arguments
% - files: ls, cp, mkdir, find, etc.
% - text file manipulations: grep, diff, sed, awk
% - pipes, for loop, if, test

% Makefile

% distributed computing (ssh and grid engines)

% see replicability/ :
% - version control (git and github) only put source files into repository!
% - data handling (structure, storage (rsync), backup, data bases)
% - data annotation, meta data, FAIR


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\appendix
\addtocontents{toc}{\setcounter{tocdepth}{0}}

%\chapter{Cheat-Sheet}

%%%% solutions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\printallsolutions

%%%% indices: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\backmatter

\printindex[enterm]

\selectlanguage{ngerman}
\printindex[determ]
\selectlanguage{english}

%\setindexprenote{Some explanations.}
%\printindex[pcode]
\printindex[mcode]

\end{document}
