Spine fusion and branching effects synaptic response (Rusakov et al 1996, 1997)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:18502
This compartmental model of a hippocampal granule cell has spinous synapses placed on the second-order dendrites. Changes in shape and connectivity of the spines usually does not effect the synaptic response of the cell unless active conductances are incorporated into the spine membrane (e.g. voltage-dependent Ca2+ channels). With active conductances, spines can generate spike-like events. We showed that changes like fusion and branching, or in fact any increase in the equivalent spine neck resistance, could trigger a dramatic increase in the spine's influence on the dendritic shaft potential.
References:
1 . Rusakov DA, Richter-Levin G, Stewart MG, Bliss TV (1997) Reduction in spine density associated with long-term potentiation in the dentate gyrus suggests a spine fusion-and-branching model of potentiation. Hippocampus 7:489-500 [PubMed]
2 . Rusakov DA, Stewart MG, Korogod SM (1996) Branching of active dendritic spines as a mechanism for controlling synaptic efficacy. Neuroscience 75:315-23 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Synapse;
Brain Region(s)/Organism:
Cell Type(s): Dentate gyrus granule GLU cell;
Channel(s): I Na,t; I K; I K,Ca; I Sodium; I Calcium; I Potassium;
Gap Junctions:
Receptor(s): AMPA; NMDA;
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Dendritic Action Potentials; Active Dendrites; Influence of Dendritic Geometry; Detailed Neuronal Models; Synaptic Plasticity; Long-term Synaptic Plasticity;
Implementer(s): Rusakov, DA [D.Rusakov at ion.ucl.ac.uk];
Search NeuronDB for information about:  Dentate gyrus granule GLU cell; AMPA; NMDA; I Na,t; I K; I K,Ca; I Sodium; I Calcium; I Potassium;
/* NEURON hoc program. 
Random topography of spines. 
20% of spine heads split at 0.9 */

load_file("nrngui.hoc")

   /* creating soma */
create soma[3]
access soma[0]
  nseg=3
  diam=12
  L=3   
  insert hh
access soma[1]
  nseg=3
  diam=15
  L=9
  insert hh
access soma[2]
  nseg=3
  diam=12
  L=3
  insert hh
for i=0,1 soma[i] {
   connect soma[i+1](0), soma[i](1)
}
   /* creating dendrites */

create dend0
access dend0
   nseg=3
   diam=2
   L=5
   insert pas 
create dend1[2]
for i=0,1 dend1[i] {
   nseg=5
   diam=1
   L=40
   insert pas
}
create dend2[4]
for i=0,3 dend2[i] {
   nseg=120
   diam=0.85
   L=60
   insert pas 
} 
create dend3[8]
for i=0,7 dend3[i] {
   nseg=5
   diam=0.8
   L=40
   insert pas 
}
/* create dend4[16]
for i=0,15 dend4[i] {
   nseg=3
   diam=0.65
   L=20
   insert pas 
} */
        /* creating 48 spine stems */
coord_cadifus()
objectvar rr[60]  // random stem diameters
create spins[48]
for i=0,47 spins[i] {
 rr[i] = new Random()   
   rr[i].normal(0.18,0.0121)
   x=(rr.repick())
   nseg=10 
//   diam=0.1
   if (x<0.02) x=0.02+abs(x)
   diam=x
   L=1
   insert pas 
}
 /* creating 48 spine heads and AZ */
create spinh[48]
create spina[48]
for i=0,47 spinh[i] {
   nseg=2 
   diam=1
   L=0.7
/* regenerative Ca2+ mechanisms 
are adjusted */
   insert cachan
   insert cagk
   insert cadifpmp
   pcabar_cachan=0.002
   gkbar_cagk=0.1
   ek=-95
   taufactor_cachan=0.5
   cai=1e-04
   cao=1.
   pump0_cadifpmp=1e-13 /* 3e-14 is 
a default */
}
for i=0,47 spina[i] { 
   nseg=1
   diam=1
   L=0.1
   insert pas
}
   /* creating additional 
12 splitted spines */

create splns1[12]
create splns2[24]
create splnh[24]
create splna[24]

// two stem-hands
for i=0,23 splns2[i] {
   nseg=4
   L=0.09
   insert pas
 }
// stem-feet 
for i=0,11 splns1[i] {
   j=2*i 
   rr[i+48] = new Random()   
   rr[i+48].normal(0.18,0.0121)
   x=(rr.repick())
   nseg=10 
//   diam=0.1
   if (x<0) x=0.02+abs(x)
   diam=x

   L=0.91  // SPLITTING POINT !!!!!!!

   insert pas
   splns2[j].diam=x/2  // S is invariant  
   splns2[j+1].diam=x/2  // S is invariant  
}

/* splitting occurs so that the area of each
of two new AZs is exactly twice smaller than 
that of the original AZ */ 

//  additional spine heads 
for i=0,23 splnh[i] {
   nseg=2 
   diam=0.5  // S is invariant
   L=0.7
//* regenerative Ca2+ mechanisms are at 5x of NEURONs   //
   insert cachan
   insert cagk
   insert cadifpmp
   pcabar_cachan=0.002
   gkbar_cagk=0.1
   ek=-95
   taufactor_cachan=0.5
   cai=1e-04
   cao=1.
   pump0_cadifpmp=1e-13 /* 3e-14 is 
default */
}
// additional spine active zones
for i=0,23 splna[i] { // active zones
   nseg=1
   diam=0.5 // S is invariant
   L=0.1
   insert pas
}
 /* connecting splitted spine feet, 
hands, and heads */  
for i=0,23 { 
    j=int(i/2+.001)
    connect splns2[i](0), splns1[j](1) 
    connect splnh[i](0), splns2[i](1)
    connect splna[i](0), splnh[i](1)
}
/* connecting regular spine heads and stems */
for i=0,47 { 
   connect spinh[i](0), spins[i](1)
   connect spina[i](0), spinh[i](1)
}
    /* connecting dendrites */
connect dend0(0), soma[2](1)
for i=0,1 {
   connect dend1[i](0), dend0(1)
}
for i=0,3 { 
    j=int(i/2+.001)
    connect dend2[i](0), dend1[j](1) 
}
for i=0,7 { 
    j=int(i/2+.001)
    connect dend3[i](0), dend2[j](1) 
}
/* for i=0,15 { 
    j=int(i/2+.001)
    connect dend4[i](0), dend3[j](1) 
} */
 /* connecting regular spines at random */

objectvar r[60]
for i=0,47 {
   m=int((int((i+0.0001)/5.0)+0.0001)*5.0)
   r[i] = new Random()
   r[i].uniform(30.0,40.0)
   j=int((i+0.0001)/12+0.001)  //j=0..3, parent branch No for every 12 spines
   x=(r.repick())/60.
   connect spins[i](0), dend2[j](x)
}
   /* connecting splitted spines 
at random ensuring each branch gets
equal numbers of spines */

for i=0,11 {
   r[i+48] = new Random()
   r[i+48].uniform(30.0,40.0)
   m=int((int((i+0.0001)/5.0)+0.0001)*5.0)
   j=int((i+0.0001)/3+0.001)  

/* j=0..3, parent branch No for 
every 3 spines */

   x=(r.repick())/60.
   connect splns1[i](0), dend2[j](x)
}

/* putting one AMPA + one NMDA synapse at 
each spine AZ*/
syncur=0.00025
objectvar asyn[92]
objectvar nsyn[92]
for i=0,47 spina[i] {
   asyn[i]=new AlphaSynapse(1)
   asyn[i].tau=0.25
   asyn[i].onset=15
   asyn[i].gmax=syncur
   asyn[i].e=0
   nsyn[i]=new NMDAsyn(1)
   nsyn[i].tau1=80
   nsyn[i].tau2=0.67
   nsyn[i].onset=15
   nsyn[i].gmax=0.4*syncur
   nsyn[i].e=0
}
/* for each splitted spine the 
synapse current is twice lower */
for j=0,23 splna[j] {
   i=j+48
   asyn[i]=new AlphaSynapse(1)
   asyn[i].tau=0.25
   asyn[i].onset=15
   asyn[i].gmax=syncur/2
   asyn[i].e=0
   nsyn[i]=new NMDAsyn(1)
   nsyn[i].tau1=80
   nsyn[i].tau2=0.67
   nsyn[i].onset=15
   nsyn[i].gmax=0.4*syncur/2
   nsyn[i].e=0
}
/* putting 20 AMPA+NMDA-type synapses 
at the middle of 2nd somatic compartment 
in order to achieve a continious 
depolirisation level */
access soma[1]
for i=72,91 {
   asyn[i]=new AlphaSynapse(0.5)
   asyn[i].onset=2*(i-71)-1
   asyn[i].tau=0.25
   asyn[i].gmax=0.0004
   asyn[i].e=0
   nsyn[i]=new NMDAsyn(0.5)
   nsyn[i].tau1=80
   nsyn[i].tau2=0.67
   nsyn[i].onset=2*(i-71)-1
   nsyn[i].gmax=0.0004*0.4
   nsyn[i].e=0
}
forall {Ra=100}
forall {celcius=30}
tstop=50

// xopen("$(NEURONHOME)/lib/hoc/noload.hoc")
// xopen("$(NEURONHOME)/examples/ltp.session")
// load_template("Inserter")
// load_template("PointProcessManager")
// load_proc("nrnmainmenu")
// nrnmainmenu()


Loading data, please wait...