Multiple Gap Junctions on a Single Neuron

The basics of how to develop, test, and use models.

Multiple Gap Junctions on a Single Neuron

Postby Priti Gupta » Sat Aug 18, 2012 1:58 am

Hello,

I am trying to connect a Neuron with 2 other neurons by gap junctions using the pointer method but my code doesn't seem to work. Is it possible to have more than 1 Gap Junction on a single neuron? If yes, is there anything in particular regarding distance between the 2 Gap Junctions etc that I need to keep in mind?
Code: Select all
       func lambda(){local i
   if(numarg()==0){
      print "Calculate decay length(um) with"
      print "  Ra(ohm-cm), Rm(ohm-cm^2), diameter(um)"
      return 0
   }
   i=50*sqrt($2*$3/$1)
   return i
}
//-------------------------------------------------------------------------------
// Build up a model with three neurons which own Na and K channels acting as
// Hodgkin-Huxley model

create neuron[6]
// create standard hh neurons
proc NeuronGeometry(){ local i,dlamda,n
   if(numarg()!=2){
      print "Create neurons with cell length(um),cell diameter(um)"
      return
   }
   // create standard hh neurons
   for(i=0; i<6; i+=1){
      access neuron[i]
      cm = 1
      Ra = 35.4   
      L = $1
      diam = $2
      insert hh   
      ena       = 50
      ek        = -77
      gnabar_hh    = 0.12
      gkbar_hh    = 0.036
      gl_hh       = 0.0003
      el_hh        = -54.3
      dlamda = lambda(Ra,1.0/gl_hh,diam)/50      
      n= L/dlamda   
      n = int(n/2)*2+1
      nseg=n
   }
}

NeuronGeometry(5000,25)


//-------------------------------------------------------------------------------
//construct gap junctions between each neuron pair for 1st oscillator
objref gpre[7],gpost[7]
for(i=0;i<3;i+=1){
   neuron[i]    gpre[i]  = new Gap(0.999)
   neuron[(i+1)%3]    gpost[i] = new Gap(0.001)
   setpointer  gpre[i].vnb,  neuron[(i+1)%3].v(0.001)
   setpointer  gpost[i].vnb, neuron[i].v(0.999)
}
//adjust gap junction conductance
proc gap_r(){local i
   if(numarg()!=3){
      print "provide gap_n0-n1 , gap_n1-n2, and gap_n2-n0 value(MOhm)"
      return
   }
   for(i=1;i<=3;i+=1){
      gpre[i-1].r = $i
      gpost[i-1].r= $i
   }
}
   gap_r(0.9524,0.9524,0.9524)
     
   
//construct gap junctions between each neuron pair for 1st oscillator over

// create two stimuli objects(for first oscillator, neuron 0, 1 and 2)
access neuron[0]
objref st[2]
for(i=0;i<2;i+=1){
   st[i]      = new IClamp(0.01)
     st[i].del   = 0.5
     st[i].dur    = 0.05
   
}
proc SetST(){
   if(numarg()==0){
      print "Set stimulator with interval(ms),st[0] amp,st[1]amp"
      return
   }
   st[1].del = 0.5 + $1   st[0].amp=$2   st[1].amp=$3
}

SetST(2,295.5,300)


//construct gap junctions between each neuron pair for 2nd oscillator



   neuron[3]   gpre[3]  = new Gap(0.999)
   neuron[4]   gpost[3] = new Gap(0.001)
   setpointer  gpre[3].vnb,  neuron[4].v(0.001)
   setpointer  gpost[3].vnb, neuron[3].v(0.999)

   neuron[4]   gpre[4]  = new Gap(0.999)
   neuron[5]   gpost[4] = new Gap(0.001)
   setpointer  gpre[4].vnb,  neuron[5].v(0.001)
   setpointer  gpost[4].vnb, neuron[4].v(0.999)

   neuron[5]   gpre[5]  = new Gap(0.999)
   neuron[3]   gpost[5] = new Gap(0.001)
   setpointer  gpre[5].vnb,  neuron[3].v(0.001)
   setpointer  gpost[5].vnb, neuron[5].v(0.999)

//adjust gap junction conductance
proc gap_r2(){local i
   if(numarg()!=3){
      print "provide gap_n6-n4 , gap_n4-n5, and gap_n5-n6 value(MOhm)"
      return
   }
   
      gpre[3].r = $1
      gpost[3].r= $1
      gpre[4].r = $2
      gpost[4].r= $2
      gpre[5].r = $3
      gpost[5].r= $3
      
}

     gap_r2(0.9524,0.9524,0.9524)   
    // gap_r2(.1,.1,.1)   
    //gap_r(.98,.98,.98)
//construct gap junctions between each neuron pair for 2nd oscillator over


// create two stimuli objects(for second oscillator, neuron 3, 4 and 5)
access neuron[3]
objref st2[2]
for(i=0;i<2;i+=1){
   st2[i]      = new IClamp(0.01)
   st2[i].del   = .5
   st2[i].dur    = 0.05
   
}
proc SetST2(){
   if(numarg()==0){
      print "Set stimulator with interval(ms),st[0] amp,st[1]amp"
      return
   }
   st2[1].del = .5 + $1   st2[0].amp=$2   st2[1].amp=$3
}

SetST2(2,295.5,300)


//Connecting neurons 2 and 3 with gap junction..


      neuron[2] gpre[6]  = new Gap(0.980)
      neuron[3] gpost[6] = new Gap(0.010)
      setpointer gpre[6].vnb, neuron[3].v(0.010)
      setpointer gpost[6].vnb,neuron[2].v(0.980)
     

gpre[6].r=.98
gpost[6].r=.98


dt=0.001
Dt=0.01
vinit = -65
celsius = 25





In my code, there are 2 Neurons that need to have more than one gap junctions Neurons 2 and 3

Regards,
Priti
Priti Gupta
 
Posts: 5
Joined: Mon Jul 02, 2012 5:15 am

Re: Multiple Gap Junctions on a Single Neuron

Postby ted » Sat Aug 18, 2012 9:57 am

Priti Gupta wrote:my code doesn't seem to work.
How do you know? If an error message is generated, what is the error message?
Is it possible to have more than 1 Gap Junction on a single neuron? If yes, is there anything in particular regarding distance between the 2 Gap Junctions etc that I need to keep in mind?
Yes. No.
ted
Site Admin
 
Posts: 3587
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine


Return to Getting started

Who is online

Users browsing this forum: No registered users and 1 guest