CA1 pyramidal neuron: synaptic plasticity during theta cycles (Saudargiene et al. 2015)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:157157
This NEURON code implements a microcircuit of CA1 pyramidal neuron and consists of a detailed model of CA1 pyramidal cell and four types of inhibitory interneurons (basket, bistratified, axoaxonic and oriens lacunosum-moleculare cells). Synaptic plasticity during theta cycles at a synapse in a single spine on the stratum radiatum dendrite of the CA1 pyramidal cell is modeled using a phenomenological model of synaptic plasticity (Graupner and Brunel, PNAS 109(20):3991-3996, 2012). The code is adapted from the Poirazi CA1 pyramidal cell (ModelDB accession number 20212) and the Cutsuridis microcircuit model (ModelDB accession number 123815)
Reference:
1 . Saudargiene A, Cobb S, Graham BP (2015) A computational study on plasticity during theta cycles at Schaffer collateral synapses on CA1 pyramidal cells in the hippocampus. Hippocampus 25:208-18 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Synapse; Dendrite;
Brain Region(s)/Organism:
Cell Type(s): Hippocampus CA1 pyramidal GLU cell; Hippocampus CA1 basket cell; Hippocampus CA1 bistratified cell; Hippocampus CA1 axo-axonic cell;
Channel(s):
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Long-term Synaptic Plasticity; STDP;
Implementer(s): Saudargiene, Ausra [ausra.saudargiene at gmail.com];
Search NeuronDB for information about:  Hippocampus CA1 pyramidal GLU cell;
/
SaudargieneEtAl2015
readme.html
ANsyn.mod *
bgka.mod *
bistableGB_DOWNUP.mod
burststim2.mod *
cad.mod
cadiffus.mod *
cagk.mod *
cal.mod *
calH.mod *
car.mod *
cat.mod *
ccanl.mod *
d3.mod *
gabaa.mod *
gabab.mod *
glutamate.mod *
gskch.mod *
h.mod
hha_old.mod *
hha2.mod *
hNa.mod *
IA.mod
ichan2.mod
Ih.mod *
kadbru.mod
kadist.mod *
kapbru.mod
kaprox.mod *
Kaxon.mod *
kca.mod *
Kdend.mod *
km.mod *
Ksoma.mod *
LcaMig.mod *
my_exp2syn.mod *
Naaxon.mod *
Nadend.mod *
nap.mod
Nasoma.mod *
nca.mod *
nmda.mod *
nmdaca.mod *
regn_stim.mod *
somacar.mod *
STDPE2Syn.mod *
apical-non-trunk-list.hoc
apical-tip-list.hoc
apical-tip-list-addendum.hoc
apical-trunk-list.hoc
axoaxonic_cell17S.hoc
axon-sec-list.hoc
BasalPath.hoc
basal-paths.hoc
basal-tree-list.hoc
basket_cell17S.hoc
bistratified_cell13S.hoc
burst_cell.hoc
current-balance.hoc *
main.hoc
map-segments-to-3d.hoc *
mod_func.c
mosinit.hoc
ObliquePath.hoc *
oblique-paths.hoc
olm_cell2.hoc
pattsN100S20P5_single.dat
PC.ses
peri-trunk-list.hoc
pyramidalNeuron.hoc
randomLocation.hoc
ranstream.hoc
screenshot.png
soma-list.hoc
stim_cell.hoc *
vector-distance.hoc
                            
// Make a set of lists, each containing the oblique sections
// that form a continuous path: starting from the section attached 
// to the trunk and ending at the apical tip section. 

objref pl[150],opl[150]
plcount=0
pl[plcount]=new SectionList()

apical_dendrite[0] pl[plcount].append()
apical_dendrite[1] pl[plcount].append()
apical_dendrite[2] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[0] pl[plcount].append()
apical_dendrite[1] pl[plcount].append()
apical_dendrite[3] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[4] pl[plcount].append()
apical_dendrite[5] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[6] pl[plcount].append()
apical_dendrite[7] pl[plcount].append()
apical_dendrite[8] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[6] pl[plcount].append()
apical_dendrite[7] pl[plcount].append()
apical_dendrite[9] pl[plcount].append()
apical_dendrite[10] pl[plcount].append()
apical_dendrite[11] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[6] pl[plcount].append()
apical_dendrite[7] pl[plcount].append()
apical_dendrite[9] pl[plcount].append()
apical_dendrite[10] pl[plcount].append()
apical_dendrite[12] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[6] pl[plcount].append()
apical_dendrite[7] pl[plcount].append()
apical_dendrite[9] pl[plcount].append()
apical_dendrite[13] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[14] pl[plcount].append()
apical_dendrite[116] pl[plcount].append()
apical_dendrite[117] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])


plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[14] pl[plcount].append()
apical_dendrite[116] pl[plcount].append()
apical_dendrite[118] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])


plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[16] pl[plcount].append()
apical_dendrite[17] pl[plcount].append()
apical_dendrite[18] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[16] pl[plcount].append()
apical_dendrite[17] pl[plcount].append()
apical_dendrite[19] pl[plcount].append()
apical_dendrite[20] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[16] pl[plcount].append()
apical_dendrite[17] pl[plcount].append()
apical_dendrite[19] pl[plcount].append()
apical_dendrite[21] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[23] pl[plcount].append()
apical_dendrite[24] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[29] pl[plcount].append()
apical_dendrite[30] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[29] pl[plcount].append()
apical_dendrite[31] pl[plcount].append()
apical_dendrite[32] pl[plcount].append()
apical_dendrite[33] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[29] pl[plcount].append()
apical_dendrite[31] pl[plcount].append()
apical_dendrite[32] pl[plcount].append()
apical_dendrite[34] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[29] pl[plcount].append()
apical_dendrite[31] pl[plcount].append()
apical_dendrite[35] pl[plcount].append()
apical_dendrite[36] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[29] pl[plcount].append()
apical_dendrite[31] pl[plcount].append()
apical_dendrite[35] pl[plcount].append()
apical_dendrite[37] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[38] pl[plcount].append()
apical_dendrite[39] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[27] pl[plcount].append()
apical_dendrite[28] pl[plcount].append()
apical_dendrite[38] pl[plcount].append()
apical_dendrite[40] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[42] pl[plcount].append()
apical_dendrite[43] pl[plcount].append()
apical_dendrite[44] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[42] pl[plcount].append()
apical_dendrite[43] pl[plcount].append()
apical_dendrite[45] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[46] pl[plcount].append()
apical_dendrite[47] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[48] pl[plcount].append()
apical_dendrite[49] pl[plcount].append()
apical_dendrite[50] pl[plcount].append()
apical_dendrite[51] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[48] pl[plcount].append()
apical_dendrite[49] pl[plcount].append()
apical_dendrite[50] pl[plcount].append()
apical_dendrite[52] pl[plcount].append()
apical_dendrite[53] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[48] pl[plcount].append()
apical_dendrite[49] pl[plcount].append()
apical_dendrite[50] pl[plcount].append()
apical_dendrite[52] pl[plcount].append()
apical_dendrite[54] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[48] pl[plcount].append()
apical_dendrite[49] pl[plcount].append()
apical_dendrite[55] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[56] pl[plcount].append()
apical_dendrite[57] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[58] pl[plcount].append()
apical_dendrite[59] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[60] pl[plcount].append()
apical_dendrite[61] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[62] pl[plcount].append()
apical_dendrite[63] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[62] pl[plcount].append()
apical_dendrite[63] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[65] pl[plcount].append()
apical_dendrite[66] pl[plcount].append()
apical_dendrite[67] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])


plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[65] pl[plcount].append()
apical_dendrite[66] pl[plcount].append()
apical_dendrite[68] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[69] pl[plcount].append()
apical_dendrite[70] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[71] pl[plcount].append()
apical_dendrite[72] pl[plcount].append()
apical_dendrite[73] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[71] pl[plcount].append()
apical_dendrite[72] pl[plcount].append()
apical_dendrite[74] pl[plcount].append()
apical_dendrite[75] pl[plcount].append()
apical_dendrite[76] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[71] pl[plcount].append()
apical_dendrite[72] pl[plcount].append()
apical_dendrite[74] pl[plcount].append()
apical_dendrite[75] pl[plcount].append()
apical_dendrite[77] pl[plcount].append()
apical_dendrite[78] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[71] pl[plcount].append()
apical_dendrite[72] pl[plcount].append()
apical_dendrite[74] pl[plcount].append()
apical_dendrite[75] pl[plcount].append()
apical_dendrite[77] pl[plcount].append()
apical_dendrite[79] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[71] pl[plcount].append()
apical_dendrite[72] pl[plcount].append()
apical_dendrite[74] pl[plcount].append()
apical_dendrite[80] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[81] pl[plcount].append()
apical_dendrite[82] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[83] pl[plcount].append()
apical_dendrite[84] pl[plcount].append()
apical_dendrite[85] pl[plcount].append()
apical_dendrite[86] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[83] pl[plcount].append()
apical_dendrite[84] pl[plcount].append()
apical_dendrite[85] pl[plcount].append()
apical_dendrite[87] pl[plcount].append()
apical_dendrite[88] pl[plcount].append()
apical_dendrite[89] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[83] pl[plcount].append()
apical_dendrite[84] pl[plcount].append()
apical_dendrite[85] pl[plcount].append()
apical_dendrite[87] pl[plcount].append()
apical_dendrite[88] pl[plcount].append()
apical_dendrite[90] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[83] pl[plcount].append()
apical_dendrite[84] pl[plcount].append()
apical_dendrite[85] pl[plcount].append()
apical_dendrite[87] pl[plcount].append()
apical_dendrite[91] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[83] pl[plcount].append()
apical_dendrite[84] pl[plcount].append()
apical_dendrite[92] pl[plcount].append()
apical_dendrite[93] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[83] pl[plcount].append()
apical_dendrite[84] pl[plcount].append()
apical_dendrite[92] pl[plcount].append()
apical_dendrite[94] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[95] pl[plcount].append()
apical_dendrite[96] pl[plcount].append()
apical_dendrite[97] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[95] pl[plcount].append()
apical_dendrite[96] pl[plcount].append()
apical_dendrite[98] pl[plcount].append()
apical_dendrite[99] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[95] pl[plcount].append()
apical_dendrite[96] pl[plcount].append()
apical_dendrite[98] pl[plcount].append()
apical_dendrite[100] pl[plcount].append()
apical_dendrite[101] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[95] pl[plcount].append()
apical_dendrite[96] pl[plcount].append()
apical_dendrite[98] pl[plcount].append()
apical_dendrite[100] pl[plcount].append()
apical_dendrite[102] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[104] pl[plcount].append()
apical_dendrite[105] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[41] pl[plcount].append()
apical_dendrite[107] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[26] pl[plcount].append()
apical_dendrite[108] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[26] pl[plcount].append()
apical_dendrite[109] pl[plcount].append()
apical_dendrite[110] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[26] pl[plcount].append()
apical_dendrite[109] pl[plcount].append()
apical_dendrite[111] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[22] pl[plcount].append()
apical_dendrite[112] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[15] pl[plcount].append()
apical_dendrite[113] pl[plcount].append()
apical_dendrite[114] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[15] pl[plcount].append()
apical_dendrite[113] pl[plcount].append()
apical_dendrite[115] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])

plcount=plcount+1
pl[plcount]=new SectionList()
apical_dendrite[64] pl[plcount].append()
apical_dendrite[106] pl[plcount].append()
opl[plcount]=new ObliquePath(pl[plcount])


print  "oblique-paths.hoc executed" //Obidos