Ionic mechanisms of dendritic spikes (Almog and Korngreen 2014)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:151825
We used a combined experimental and numerical parameter peeling procedure was implemented to optimize a detailed ionic mechanism for the generation and propagation of dendritic spikes in neocortical L5 pyramidal neurons. Run the cc_run.hoc to get a demo for dendritic calcium spike generated by coincidence of a back-propagating AP and distal synaptic input.
Reference:
1 . Almog M, Korngreen A (2014) A Quantitative Description of Dendritic Conductances and Its Application to Dendritic Excitation in Layer 5 Pyramidal Neurons J Neurosci 34(1):182-196 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Dendrite;
Brain Region(s)/Organism:
Cell Type(s): Neocortex L5/6 pyramidal GLU cell;
Channel(s): I Na,t; I A; I K; I K,Ca; I CAN; I Sodium; I Calcium; I Potassium; Ca pump;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Dendritic Action Potentials;
Implementer(s): Korngreen, Alon [alon.korngreen at gmail.com];
Search NeuronDB for information about:  Neocortex L5/6 pyramidal GLU cell; I Na,t; I A; I K; I K,Ca; I CAN; I Sodium; I Calcium; I Potassium; Ca pump;
: this model is built-in to neuron with suffix epsp

COMMENT
modified from syn2.mod
injected current with exponential rise and decay current defined by
         i = 0 for t < onset and
         i=amp*((1-exp(-(t-onset)/tau0))-(1-exp(-(t-onset)/tau1)))
          for t > onset

	compare to experimental current injection:
 	i = - amp*(1-exp(-t/t1))*(exp(-t/t2))

	-> tau1==t2   tau0 ^-1 = t1^-1 + t2^-1
ENDCOMMENT
					       
INDEPENDENT {t FROM 0 TO 1 WITH 1 (ms)}

NEURON {
	POINT_PROCESS epsp
	RANGE onset, tau0, tau1, imax, i, myv, curr
	NONSPECIFIC_CURRENT i
}
UNITS {
	(nA) = (nanoamp)
	(mV) = (millivolt)
	(umho) = (micromho)
}

PARAMETER {
	onset=0  (ms)
	tau0=0.2 (ms)
	tau1=3.0 (ms)
	imax=0 	 (nA)
	v	 (mV)
}

ASSIGNED { i (nA)  myv (mV)}

LOCAL   a[2]
LOCAL   tpeak
LOCAL   adjust
LOCAL   amp

BREAKPOINT {
	myv = v
        i = curr(t)
}

FUNCTION myexp(x) {
	if (x < -100) {
	myexp = 0
	}else{
	myexp = exp(x)
	}
}

FUNCTION curr(x) {				
	tpeak=tau0*tau1*log(tau0/tau1)/(tau0-tau1)
	adjust=1/((1-myexp(-tpeak/tau0))-(1-myexp(-tpeak/tau1)))
	amp=adjust*imax
	if (x < onset) {
		curr = 0
	}else{
		a[0]=1-myexp(-(x-onset)/tau0)
		a[1]=1-myexp(-(x-onset)/tau1)
		curr = -amp*(a[0]-a[1])
	}
}