Neocort. pyramidal cells subthreshold somatic voltage controls spike propagation (Munro Kopell 2012)

 Download zip file 
Help downloading and running models
There is suggestive evidence that pyramidal cell axons in neocortex may be coupled by gap junctions into an ``axonal plexus" capable of generating Very Fast Oscillations (VFOs) with frequencies exceeding 80 Hz. It is not obvious, however, how a pyramidal cell in such a network could control its output when action potentials are free to propagate from the axons of other pyramidal cells into its own axon. We address this problem by means of simulations based on 3D reconstructions of pyramidal cells from rat somatosensory cortex. We show that somatic depolarization enables propagation via gap junctions into the initial segment and main axon, while somatic hyperpolarization disables it. We show further that somatic voltage cannot effectively control action potential propagation through gap junctions on minor collaterals; action potentials may therefore propagate freely from such collaterals regardless of somatic voltage. In previous work, VFOs are all but abolished during the hyperpolarization phase of slow-oscillations induced by anesthesia in vivo. This finding constrains the density of gap junctions on collaterals in our model and suggests that axonal sprouting due to cortical lesions may result in abnormally high gap junction density on collaterals, leading in turn to excessive VFO activity and hence to epilepsy via kindling.
1 . Munro E, Kopell N (2012) Subthreshold somatic voltage in neocortical pyramidal cells can control whether spikes propagate from the axonal plexus to axon terminals: a model study. J Neurophysiol 107:2833-52 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network; Neuron or other electrically excitable cell; Axon;
Brain Region(s)/Organism: Neocortex;
Cell Type(s): Neocortex L5/6 pyramidal GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell;
Channel(s): I Na,t; I K; I Sodium; I Potassium;
Gap Junctions: Gap junctions;
Simulation Environment: NEURON; MATLAB;
Model Concept(s): Oscillations; Detailed Neuronal Models; Axonal Action Potentials; Epilepsy;
Implementer(s): Munro, Erin [ecmun at];
Search NeuronDB for information about:  Neocortex L5/6 pyramidal GLU cell; Neocortex U1 L2/6 pyramidal intratelencephalic GLU cell; I Na,t; I K; I Sodium; I Potassium;
k2_Traub.mod *
ka_Traub.mod *
This folder contains all of the code necessary to generate the data
for the simplified axon models as well as the models using the exact
geometry of cell reconstructions.

The data for AP propagation across a gap junction in the main axon
(figures 8 and 9) was generated by vs-expcell_gj.hoc.

The data using the alternative currents from Schmidt-Hieber et
al. (2008) was generated by vs-expcell_gj_Jonas.hoc. Likewise, data
for AP propagation across a gap junction in the initial segment was
generated by vs-expcell_gjISgNa.hoc (for axonal stimulation, figures 6
and 7) and vs-expcell_gjsISgNa.hoc (for somatic stimulation).

Before loading vs-expcell_gj.hoc, vs-expcell_gj_Jonas.hoc,
vs-expcell_gjISgNa.hoc, or vs-expcell gjsISgNa.hoc, you must first set
the variables: g_gj (gap junction conductance), vs (somatic voltage),
and layer (2, 4, or 5). You can do this by first launching NEURON with
simulation_base.hoc, setting these variables, and then loading the
file "vs-expcell_gj.hoc".
Typical values for the somatic voltage were -80, -70, and -60. Typical
gap junction conductances were .001 to .01 (uS) for main axon gap
junctions, and .008 to .024 (uS) for IS gap junctions.
The program vs-expcell_gj.hoc does take awhile, because it is doing an
iterative search for the g_Na threshold. If you want to watch what is
going on, you can call setup_gj_session() before loading the file.

Data for AP propagation from a collateral to the main axon (figure 6)
was generated by vs-generic_cutoff.hoc and vs-arg_cutoff.hoc. The data
using alternative current from Schmidt-Hieber et al. (2008) was
generated by vs-generic_cutoff_Jonas.hoc and
vs-arg_cutoff_Jonas.hoc. Before loading these files, you must first
set the variables: cell_name (name of cell to be loaded), IS
(compartment number for IS), prop_site (compartment number where AP
propgation is tested), extstim (compartment number to apply external
stimulation), junction (compartment number where collateral meets the
main axon).

vs-expcell_gj_gL.hoc was used to create figure 10.
vs-expcell_gjCC.hoc was used to create figure 14 in the appendix.

The folder run_files contains all of the batch scripts used to run
these experiments. The scripts for AP propagation from collaterals
specify the parameters used for each cell in figure 6.

simulation_base.hoc contains all of the main functions for running
simulations. The load_axon() function is used to load all axon/cell
templates. The first argument indicates which cell to load: numbers
1-7 are for cells using the exact geometry of 3D reconstructions, 8 is
for BranchDistCell which is the template for the simplified axon
model.  The load_gj_axons() function is used to load 2 simplified
axons coupled by a gap junction.

Once an axon/cell is loaded then you can call
setup_session() or setup_gj_session() to display: 
(1) the run control window
(2) a graph of time versus voltage for the 
    - extstim_site: site where external stimulus is applied
    - extstimrec_site: site where we record to see if an AP was
    induced at the extstim_site
    - stim_site: site where the collateral meets the main axon (
    collateral *stimulates* the main axon)
    - prop_site: site where we test to see if an AP propagated
    - soma
(3) the PointProcessGroupManager
(4) a Shape Plot of the cell(s)

Other important functions are run_search() and refine_search(). These
are the gateway functions to find the g_Na thresholds. run_seach() is
for finding a threshold that hasn't been investigated yet. Once a
threshold has been investigated, the search generates a
"simulation_database" file that contains all the results of the
search. This file can then be used to refine the threshold value in
subsequent searchs called with refine_search(). All code for actually
finding the thresholds is in PropagationSearch.hoc.

See comments in individual files for more information.

Loading data, please wait...