Submyelin Potassium accumulation in Subthalamic neuron (STN) axons (Bellinger et al. 2008)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:121253
"To better understand the direct effects of DBS (Deep brain stimulation) on central neurons, a computational model of a myelinated axon has been constructed which includes the effects of K+ accumulation within the peri-axonal space. Using best estimates of anatomic and electrogenic model parameters for in vivo STN axons, the model predicts a functional block along the axon due to K+ accumulation in the submyelin space. ... These results suggest that therapeutic DBS of the STN likely results in a functional block for many STN axons, although a subset of STN axons may also be activated at the stimulating frequency. "
Reference:
1 . Bellinger SC, Miyazawa G, Steinmetz PN (2008) Submyelin potassium accumulation may functionally block subsets of local axons during deep brain stimulation: a modeling study. J Neural Eng 5:263-74 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Axon;
Brain Region(s)/Organism:
Cell Type(s): Subthalamus nucleus projection neuron;
Channel(s): I Na,p; I K; I Sodium; I_Ks; Na/K pump;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Axonal Action Potentials; Action Potentials; Deep brain stimulation; Sodium pump; Depolarization block;
Implementer(s): Bellinger, Steven [Steve.Bellinger at asu.edu];
Search NeuronDB for information about:  I Na,p; I K; I Sodium; I_Ks; Na/K pump;
create node[nodeSections], MAS[masSections], PS[psSections], IS[iSections]

proc createaxon() {
	for i=0,nodeSections-1 {
		node[i]{					
			nseg=1
			diam=nodeDiameter
			L=nodeLength
			Ra=rhoa		
			cm=2
			insert axnodenew2
			insert NaKpump
			INaKmax_NaKpump = defINaKmax
			Kmnai_NaKpump = defKmnai
			Kmko_NaKpump = defKmko
			insert kdifrl
			rn_kdifrl=nodeDiameter/2
			nodalGap_kdifrl=nodalGap
			kbath_kdifrl = ko0_k_ion
			insert extracellular xraxial=Rpn0 xg=1e10 xc=0
			}
		}

	for i=0, masSections-1 {
		MAS[i]{
			nseg=1
			diam=fiberDiameter
			L=masLength
			Ra=rhoa*(1/(masDiameter/fiberDiameter)^2)
			cm=2
			insert pas
			g_pas=0.0001	
			e_pas=v_init
			insert kdifl
			rseg_kdifl=masDiameter/2
			sp_kdifl=space_p1
			insert NaKpump
			INaKmax_NaKpump = defINaKmax
			Kmnai_NaKpump = defKmnai
			Kmko_NaKpump = defKmko
			insert extracellular xraxial=Rpn1 xg=mygm/(numberOfLamella*2) xc=mycm/(numberOfLamella*2)
			}
		}

	for i=0, psSections-1 {
		PS[i]{
			nseg=1
			diam=fiberDiameter
			L=psLength
			Ra=rhoa*(1/(psDiameter/fiberDiameter)^2)
			cm=2
			insert fastK
			gflut_fastK=0.0001
			gkfbar_fastK=defgkfbar
			insert kdifl
			rseg_kdifl=psDiameter/2
			sp_kdifl=space_p2
			insert NaKpump
			INaKmax_NaKpump = defINaKmax
			Kmnai_NaKpump = defKmnai
			Kmko_NaKpump = defKmko
			insert extracellular xraxial=Rpn2 xg=mygm/(numberOfLamella*2) xc=mycm/(numberOfLamella*2)
			}
	}

	for i=0, iSections-1 {
		IS[i]{
			nseg=1
			diam=fiberDiameter
			L=isLength
			Ra=rhoa*(1/(axonDiameter/fiberDiameter)^2)
			cm=2
			insert pas
			g_pas=0.0001
			e_pas=v_init
			insert kdifl
			rseg_kdifl=axonDiameter/2
			sp_kdifl=space_i
			insert NaKpump
			INaKmax_NaKpump = defINaKmax
			Kmnai_NaKpump = defKmnai
			Kmko_NaKpump = defKmko
			insert extracellular xraxial=Rpx xg=mygm/(numberOfLamella*2) xc=mycm/(numberOfLamella*2)
			}
	}

	//Connect the axon together. This is repetitive, but necessary
	for i=0, totalSections-2 {

		if (secMat.x[i][0] == 1 && secMat.x[i+1][0] == 1) { connect IS[ secMat.x[i][1] ](1), IS[ secMat.x[i+1][1] ](0)  }
		if (secMat.x[i][0] == 1 && secMat.x[i+1][0] == 2) {	connect IS[ secMat.x[i][1] ](1), PS[ secMat.x[i+1][1] ](0)	}

		if (secMat.x[i][0] == 2 && secMat.x[i+1][0] == 1) { connect PS[ secMat.x[i][1] ](1), IS[ secMat.x[i+1][1] ](0)	}
		if (secMat.x[i][0] == 2 && secMat.x[i+1][0] == 2) {	connect PS[ secMat.x[i][1] ](1), PS[ secMat.x[i+1][1] ](0)	}
		if (secMat.x[i][0] == 2 && secMat.x[i+1][0] == 3) {	connect PS[ secMat.x[i][1] ](1), MAS[ secMat.x[i+1][1] ](0)	}

		if (secMat.x[i][0] == 3 && secMat.x[i+1][0] == 2) {	connect MAS[ secMat.x[i][1] ](1), PS[ secMat.x[i+1][1] ](0)	}
		if (secMat.x[i][0] == 3 && secMat.x[i+1][0] == 3) { connect MAS[ secMat.x[i][1] ](1), MAS[ secMat.x[i+1][1] ](0)	}
		if (secMat.x[i][0] == 3 && secMat.x[i+1][0] == 4) { connect MAS[ secMat.x[i][1] ](1), node[ secMat.x[i+1][1] ](0)	}		

		if (secMat.x[i][0] == 4 && secMat.x[i+1][0] == 3) { connect node[ secMat.x[i][1] ](1), MAS[ secMat.x[i+1][1] ](0)	}
		if (secMat.x[i][0] == 4 && secMat.x[i+1][0] == 4) { connect node[ secMat.x[i][1] ](1), node[ secMat.x[i+1][1] ](0)	}		

	}

	finitialize(v_init)
	fcurrent()

  }

Loading data, please wait...