Skip to content

ModelDBRepository/267666

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is the full code for the paper Involvement of ASIC1a channels in the spinal processing of pain information by deep projection neurons, Chafaï, M., Delrocq, A., Inquimbert, P., Pidoux, L., Delanoe, K., Lingueglia, E., Veltz, R., & Deval, E., 2023. doi: 10.1101/2021.08.02.454740.

It includes a NEURON model for the study of wind-up in wide-dynamic-range (WDR) neurons in the spinal cord, adapted from [1], a NEURON model for Acid Sensing Ion Channels (ASIC) based on [2] and [3], a python model for ASICs, and python simulation and analysis code.

Written by Ariane Delrocq and Romain Veltz.

Quick Start

(Optional: if you want, create and activate a python virtual environment.)

In the directory which contains the source code, please run

pip install neuron matplotlib pandas scipy
nrnivmodl
python write_args.py
./script.sh
python sim_analysis.py
python ASIC.py

The simulations may take quite some time, please be patient.

More details

If you do not have NEURON installed, you must install it by running pip install neuron. You also need the python packages scipy, matplotlib and pandas.

Before you run our model, you must compile the NEURON model with nrnivmodl (in this directory). This needs to be done only once.

The script script.sh runs the simulation by calling runMultiProcs.py once for each parameter set in the args.txt file, which is written by write_args.py. If you want to use multi-processing to reduce the duration of the total simulation time, set num_processes in script_multiprocs.sh to your desired number of processes and execute this file instead of script.sh.

The spike times are saved to .dat files, and the evolution of some variables over tine is saved in .pickle files.

You can then generate most of the paper simulation figures by running sim_analysis.py, which uses the saved data to create the graphs.

The file ASIC.py generates the figures for the simulations of isolated ASIC channels (Supplementary figure 6: pH drops...).

Finding the models

The NEURON model for native homomeric ASIC1a channel is ASICnative1.mod. The alternative models for tau_h are commented out in the same file.

The NEURON model for native heteromeric ASIC channel is ASIC_native2.mod.

A python model of each type is implemented in ASIC.py.

Finally, the NEURON model for synaptic cleft proton dynamics with buffer is implemented in PostProtCleftDyn.mod.

Understanding and modifying the code

Most of the run and analysis functions are well documented. Reading the comments and docstrings should help you understand the functions and modify them if you need.

The file base.py contains the basic functions used to run the simulation, as well as the functions that define the naming convention for the data files. If you want to run simulations without the means of the args.txt file, you can call directly the function runmodl of this file, with your desired arguments. If you want to use a different naming convention, modify the name_from_pars and get_params_from_name functions. The parameter acti is whether the ASIC channels are structurally fully activated (effect of MiTx, see below for how to generate such data).

Because the hoc variables (of the NEURON simulation) are not properly reset at the end of the simulation, never run two simulations in the same python session. Always quit python and re-import neuron.

If you modify the content of a .mod file, do not forget to recompile with nrnivmodl (after deleting the old x86_64 folder).

To use the heteromeric/type 2 ASIC model, replace ASICnativeTone by ASICnativeTtwo in wdr-complete-model-without-interneuron.hoc.

To simulate full activation of the ASIC channels (effect of MiTx), go into the ASICnative1.mod file (or ASICnative2.mod) and replace the m*h factor by 1 in the expression of the current i in the BREAKPOINT procedure. Then recompile with nrnivmodl. to respect the naming convention, set acti=True when calling the name_from_pars function for these simulations.

References

[1] P. Aguiar, M. Sousa, and D. Lima, “NMDA Channels Together With L-Type Calcium Currents and Calcium-Activated Nonspecific Cationic Currents Are Sufficient to Generate Windup in WDR Neurons,” Journal of Neurophysiology, vol. 104, no. 2, pp. 1155–1166, Aug. 2010, doi: 10.1152/jn.00834.2009.

[2] O. Alijevic, O. Bignucolo, E. Hichri, Z. Peng, J. P. Kucera, and S. Kellenberger, “Slowing of the Time Course of Acidification Decreases the Acid-Sensing Ion Channel 1a Current Amplitude and Modulates Action Potential Firing in Neurons,” Front. Cell. Neurosci., vol. 14, 2020, doi: 10.3389/fncel.2020.00041.

[3] A. Baron, N. Voilley, M. Lazdunski, and E. Lingueglia, “Acid Sensing Ion Channels in Dorsal Spinal Cord Neurons,” Journal of Neuroscience, vol. 28, no. 6, pp. 1498–1508, Feb. 2008, doi: 10.1523/JNEUROSCI.4975-07.2008.

About

A model of ASIC1a and synaptic cleft pH modulating wind-up in wide dynamic range neurons (Delrocq)

Topics

Resources

Stars

Watchers

Forks