This is the multi-scale L5PT neuron model from Egger, Narayanan et al.

It allows investigating how synaptic inputs evoked by different sensory stimuli are integrated by the complex intrinsic properties of L5PTs.

The model files provided here allow performing simulations and analyses presented in Figures 3, 4 and 5.

 

1. Installation

 

Software requirements:

 

The model requires a Linux or Mac OS X installation.

Software packages that have to be installed:

    Python 2.7

    matplotlib

    numpy

    NEURON >= 7.2

        Needs to be installed such that it can be imported as python module.

        For installation instructions see https://www.neuron.yale.edu/phpBB/viewtopic.php?t=3489.

        Make sure to add the folder containing the executable files such as nrnivmodl to

        your PATH environment variable. For a typical installation, try:

$ export PATH=[/path/to/neuron]/[processor architecture]/bin:$ PATH

    sumatra and configparser

        Used for reading and writing parameter files

        Can be installed with pip:

            pip install sumatra

            pip install configparser

 

Model installation:

 

We provide four different models: the control model (see Figure 3) describing sensory-evoked responses of L5PTs, the reduced model (see Figure 4C) used to identify the general conditions under which excitatory synaptic input results in L5PT AP responses as observed in vivo, and two manipulation models (see Figure 5) complementing in vivo pharmacology experiments.

The following instructions assume that you open a terminal in the model_publication folder you downloaded and unpacked.

First, in order to run the provided python libraries, add them to your PYTHONPATH:

 

$ export PYTHONPATH=`pwd`/lib:$PYTHONPATH

 

Next, compile the NMODL mechanisms:

 

$ cd mechanisms/

$ nrnivmodl

 

Next, change back into the main model installation directory and run the shell script install.sh:

 

$ cd ..

$ ./install.sh

 

2. Running simulations

 

Control model:

The installation procedure creates 90 shell scripts in the folder control_scripts. Each shell script corresponds to a simulated sensory stimulus (PW [here: C2], SW [here: B1-3, C1, C3, D1-3] and 2nd SW [here: E2]) of a L5PT neuron model at one of nine locations. Each shell script calls the python script L5PT_control.py with parameter files describing the biophysical neuron model and the functional network model describing the presynaptic network providing synaptic input to the L5PT neuron model after a given stimulus. These functional network parameter files are generated during the installation and can be found in the folder evoked_activity/control.

Run shell scripts in the folder control_scripts to perform simulations. E.g., if you want to simulate the response of the L5PT neuron at the center of the C2 column to C2 whisker deflection, you can run:

 

$ cd control_scripts

$ ./C2_deflection_control_C2center.sh

 

Each simulation consists of 200 trials and takes around 2 hours to complete. Simulation scripts can be run independently. Hence, if you have multiple cores available, you can run several simulation scripts in parallel.

Results are saved in the folder evoked_activity/control/results.

 

Reduced model:


The installation procedure creates shell scripts in the folder evoked_activity/reduced_model. These shell scripts allow running simulations underlying the analyses of the reduced model of PW, SW and 2nd SW stimuli in Figure 4C. For each deflection, 240 shell scripts are used to simulate the effect of different combinations of numbers and synchrony of excitatory synaptic inputs. Each simulation consists of 200 trials and takes around 2 hours to complete. Simulation scripts can be run independently. Hence, if you have multiple cores available, you can run several simulation scripts in parallel.

Results are saved in the folder reduced_model/results.

 

In silico manipulation models:


The installation procedure creates shell scripts and parameter files for two different in silico manipulations in the same pattern as described for the control model.

The shell scripts for each manipulation can be found in the folders manipulation1_scripts and manipulation2_scripts, respectively. Simulation results are saved in evoked_activity/manipulation1/results and evoked_activity/manipulation2/results.

 

3. Analyzing simulation results

 

Control model:

Run the analysis pipeline script in the folder control_analysis:

 

$ cd control_analysis

$ ./control_analysis_script.sh

 

This analysis pipeline consists of four steps: First, it extracts all spike times from the membrane potential at the soma. These are saved in the folder control_analysis/spike_raster_plots. Second, it creates pdf files containing all membrane potential traces at the soma, corresponding spike raster plots and PSTHs for each whisker deflection / model location combination. These are also saved in control_analysis/spike_raster_plots. Third, it creates csv files containing timing and number of active synapses from different populations for all trials, sorted by trials with and without sensory-evoked spikes, sorted by proximal and distal location on the dendrites. These are saved in control_analysis/active_synapses. Fourth, it computes the PCA of the spatiotemporal synaptic input patterns for each whisker deflection and saves them using the first two PC coordinates and a label indicating whether each trial resulted in a sensory-evoked spike or not. These are saved in control_analysis/spatiotemporal_synaptic_input_PCA.

 

Reduced model:

Run the analysis pipeline script in the folder reduced_model_analysis:

 

$ cd reduced_model_analysis

$ ./reduced_model_analysis_script.sh

 

This analysis pipeline consists of two steps. First, it extracts all spike times from the membrane potential at the soma. These are saved in the folder reduced_model_analysis/spike_raster_plots. Second, from these spike times, it generates iso-probability contour plots underlying Figure 4C. These are saved as pdf files in reduced_model_analysis.

 

Manipulation models:

The analysis pipelines for the three manipulation models are identical to the first three steps of the control model analysis pipeline. Run them by changing into each respective folder and starting the analysis script:

 

$ cd manipulation1_analysis

$ ./manipulation1_analysis_script.sh

 

$ cd ../manipulation2_analysis

$ ./manipulation2_analysis_script.sh

 

Analysis results are saved in the folders manipulation1_analysis and manipulation2_analysis.