Excitatory synaptic interactions in pyramidal neuron dendrites (Behabadi et al. 2012)

 Download zip file 
Help downloading and running models
Accession:151404
" ... We hypothesized that if two excitatory pathways bias their synaptic projections towards proximal vs. distal ends of the basal branches, the very different local spike thresholds and attenuation factors for inputs near and far from the soma might provide the basis for a classical-contextual functional asymmetry. Supporting this possibility, we found both in compartmental models and electrophysiological recordings in brain slices that the responses of basal dendrites to spatially separated inputs are indeed strongly asymmetric. ..."
Reference:
1 . Behabadi BF, Polsky A, Jadi M, Schiller J, Mel BW (2012) Location-dependent excitatory synaptic interactions in pyramidal neuron dendrites. PLoS Comput Biol 8:e1002599 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell; Synapse; Dendrite;
Brain Region(s)/Organism:
Cell Type(s): Neocortex L5/6 pyramidal GLU cell;
Channel(s): I Sodium; I Potassium;
Gap Junctions:
Receptor(s): AMPA; NMDA;
Gene(s):
Transmitter(s): Glutamate;
Simulation Environment: NEURON; Python;
Model Concept(s): Dendritic Action Potentials; Spatio-temporal Activity Patterns; Active Dendrites; Detailed Neuronal Models; Synaptic Integration;
Implementer(s): Behabadi, Bardia [bardiafb+mdb at gmail.com];
Search NeuronDB for information about:  Neocortex L5/6 pyramidal GLU cell; AMPA; NMDA; I Sodium; I Potassium; Glutamate;
/
bfb-etal-2012
py
common.py
common.pyc
figure4b.py
figure4d.py
figure7ab.py
make_figures.py
                            
import os.path
import matplotlib as mpl
mpl.use('Agg')  # for headless plotting
import tables as pyt
import numpy as npy
import pylab as pyl
from mpl_toolkits.mplot3d import axes3d

# load data
def h5get(filename, arrayname, slice='[:]'):
    h5 = pyt.openFile(filename)
    h5dat = eval('h5.root.'+arrayname+slice)
    h5.close()
    return h5dat

# plotting functions
def setaspectsquare(ax, aspect=1.):
    ax.set_aspect(aspect*npy.ptp(ax.get_xlim())/npy.ptp(ax.get_ylim()))

def newfig(figsize=(8., 6.), dpi=91, num=None):
    h = pyl.figure(num, figsize=figsize, dpi=dpi)
    h.set_size_inches(figsize)
    return h

def f4plot(s):
    syn1 = npy.arange(41)
    syn2 = npy.arange(21)
    syns2, syns1 = npy.meshgrid(syn1, syn2)

    h = newfig(figsize=(5, 5))
    ax = h.add_subplot(111, projection='3d')
    ax.plot_surface(syns2, syns1, s, cmap=mpl.cm.jet,
                    rstride=1, cstride=1, vmin=0, vmax=20, lw=.25)
    ax.set_xticklabels(['0', '', '10', '', '20', '', '30', '', '40'])
    ax.set_xlabel('Proximal synapses (#)')
    ax.set_yticklabels(['0', '5', '10', '15', '20'])
    ax.set_ylabel('Distal synapses (#)')
    ax.set_zlabel('Peak response (mV)')
    ax.view_init(azim=-130, elev=30)
    setaspectsquare(ax)
    return h

def f7plot(ax, t, traces, tracec=[(1, 0, 1), 'g', 'b']):
    for ind, trace in enumerate(traces):
        ax.plot(t, trace, lw=ind+1, c=tracec[ind], solid_joinstyle='round')

Loading data, please wait...