Dorsal root ganglion (DRG) neuronal model (Kovalsky et al. 2009)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:140038
This model, diverged from oscillatory parameters seen in live cells and failed to produce characteristic ectopic discharge patterns. Here we show that use of a more complete set of Na+ conductances--which includes several delayed components--enables simulation of the entire repertoire of oscillation-triggered electrogenic phenomena seen in live dorsal root ganglion (DRG) neurons. This includes a physiological window of induction and natural patterns of spike discharge. An INa+ component at 2-20 ms was particularly important, even though it represented only a tiny fraction of overall INa+ amplitude. With the addition of a delayed rectifier IK+ the singlet firing seen in some DRG neurons can also be simulated. The model reveals the key conductances that underlie afferent ectopia, conductances that are potentially attractive targets in the search for more effective treatments of neuropathic pain.
Reference:
1 . Kovalsky Y, Amir R, Devor M (2009) Simulation in sensory neurons reveals a key role for delayed Na+ current in subthreshold oscillations and ectopic discharge: implications for neuropathic pain. J Neurophysiol 102:1430-42 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell;
Brain Region(s)/Organism:
Cell Type(s): Dorsal Root Ganglion (DRG) cell;
Channel(s): I K; I Sodium; Late Na;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Bursting; Ion Channel Kinetics; Pathophysiology;
Implementer(s): Devor, Marshall [marshlu at vms.huji.ac.il];
Search NeuronDB for information about:  I K; I Sodium; Late Na;
objectvar save_window_, rvp_
objectvar scene_vector_[3]
objectvar ocbox_, ocbox_list_, scene_, scene_list_
{ocbox_list_ = new List()  scene_list_ = new List()}
{pwman_place(0,0,0)}
steps_per_ms=100
dt=1/steps_per_ms

{
xpanel("RunControl", 0)
v_init = -56.8
xvalue("Init","v_init", 1,"stdinit()", 1, 1 )
xbutton("Init & Run","run()")
xbutton("Stop","stoprun=1")
runStopAt = 5
xvalue("Continue til","runStopAt", 1,"{continuerun(runStopAt) stoprun=1}", 1, 1 )
runStopIn = 1
xvalue("Continue for","runStopIn", 1,"{continuerun(t + runStopIn) stoprun=1}", 1, 1 )
xbutton("Single Step","steprun()")
t = 0
xvalue("t","t", 2 )
tstop = 3000
xvalue("Tstop","tstop", 1,"tstop_changed()", 0, 1 )
xvalue("dt","dt", 1,"setdt()", 0, 1 )
xvalue("Points plotted/ms","steps_per_ms", 1,"setdt()", 0, 1 )
screen_update_invl = 0.05
xvalue("Scrn update invl","screen_update_invl", 1,"", 0, 1 )
realtime = 0
xvalue("Real Time","realtime", 0,"", 0, 1 )
xpanel(1200,0)
}

proc Mode_select(){
	// This function is for radio buttons to select 'firing mode'
	// Selections can be added more by redefinging values of conductact and v_init
	if ($1==1) {
			node.gbar_kdr7 = 0
			v_init=-57.42
			stim.del=100
			stim.dur=2800
			stim.amp=0.012 //default: 0.063
		}
	if ($1==2) {
			node.gbar_kdr7 = 0
			v_init=-56.8 
			stim.del=100
			stim.dur=2800
			stim.amp=0.024 
			}
	if ($1==3) {
			node.gbar_kdr7 = 0
			v_init=-56.8 
			stim.del=100
			stim.dur=2800
			stim.amp=0.073
			}
	if ($1==4) {
			node.gbar_kdr7 = 0.0026
			v_init=-57.94 
			stim.del=100
			stim.dur=2800
			stim.amp=0.62
			}
}

objref vboxC, hboxC
vboxC = new VBox()
vboxC.intercept(1)

{// ------------- Main control panel for DRG neuron --------
xpanel("Mode selection panel",0)
xlabel("Firing mode")
xradiobutton("Subthreshold oscillation","Mode_select(1)")
xradiobutton("Bursting spikes","Mode_select(2)",1)
xradiobutton("Tonic firing","Mode_select(3)")
xradiobutton("Singlet firing","Mode_select(4)")
xpanel()

xpanel("")
xlabel("Conductace change")
xvalue("gnaFast","node.gnabar_Shh_6",1,"",0,0)
xvalue("gnaInter","node.gnabar_inter",1,"",0,0)
xvalue("gnaSlow","node.gnabar_ls",1,"{Set_g(3,node.gnabar_ls)}",0,0)

xlabel("K Conductance")
xvalue("gbar_kdr","gbar_kdr7",1,"",0,0)
xpanel()

xpanel("")
xlabel("Stimulation")
xvalue("Amplitude","stim.amp",1,"",0,0)
xvalue("Duration","stim.dur",1,"",0,0)
xvalue("Delay","stim.del",1,"",0,0)

xlabel("-------------------------")
xlabel("Initial membrane potential")
xvalue("Init","v_init", 1,"stdinit()", 1, 1 )
xpanel()
}
vboxC.intercept(0)
vboxC.map("Firing mode selection",0, 300, 300, 350)

Mode_select(2) //Initial mode is for burst firing.


Loading data, please wait...