Skip to content

ModelDBRepository/2017143

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spillover

This repository contains simulation files used in the publication Trpevski, et al. "Glutamate spillover provides robust all-or-none behavior of plateau potentials in multicompartment models of striatal projection neurons", Authorea. March 29, 2023. DOI: 10.22541/au.168012861.16093883/v1

The simulations are implemented in Python 3, using the NEURON simulator through its Python 3 interface. This README file provides instructions for running the simulation scripts and reproducing the figures in the paper.

Requirements

  • NEURON simulator
  • Python 3
  • Required Python packages (list them here)

Usage

The repository contains the following files:

  • fig_2B.py and fig_2B_hm.py for reproducing plots in Fig. 2B.
  • iv.py for generating Fig. 3.
  • single_run.py for running a single simulation with clustered inputs.
  • nmda_plateaus.py for obtaining results for variable cluster size (as in Fig. 2).
  • alpha_mpi.py and eta_mpi.py for generating full simulated data, which were run on the Fenix Infrastructure resorces for 5 hours with the setup in the files alpha.sh and eta.sh, respectively.
  • analyze_alpha.py and analyze_eta.py for analyzing the full simulated data.

The simulation code is organized around two classes:

  • d1msn.py for the cell (inherits from the general class neuron_cls.py)
  • spillover_experiment.py for the experiment performed with the cell (inherits from the general class experiment.py)

All parameters in the neuron model and the simulations are set in the parameters.py file.

Running a Simulation

To run an elementary simulation, such as single_run.py, follow these steps:

  1. Create a neuron using the d1msn class.
  2. Create an experiment with that neuron using the spillover_experiment class.
  3. Set up the input to the neuron using the insert_synapses() method. Important arguments for this method are:
    • noise_SPN - inserts the background noise
    • my_spillover - creates a cluster of synapses with extrasynaptic NMDARs
    • no_spillover - creates a cluster of synapses without extrasynaptic NMDARs
  4. Set up the recording via the set_up_recording() method.
  5. Run the simulation via the simulate() method.
  6. Plot the results via the plot_results() method.

Results

The results of the simulations are provided in the results folder. This includes the simulated data used in the fig_2B.py and fig_2B_hm.py scripts.

DOI

The DOI for the publication is DOI: [10.3389/fncel.2023.1196182]

License

The code is released under GNU General Public License v3.0.

References