Layer V pyramidal cell functions and schizophrenia genetics (Mäki-Marttunen et al 2019)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:249463
Study on how GWAS-identified risk genes of shizophrenia affect excitability and integration of inputs in thick-tufted layer V pyramidal cells
Reference:
1 . Mäki-Marttunen T, Devor A, Phillips WA, Dale AM, Andreassen OA, Einevoll GT (2019) Computational modeling of genetic contributions to excitability and neural coding in layer V pyramidal cells: applications to schizophrenia pathology Front. Comput. Neurosci. 13:66
Citations  Citation Browser
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: Neocortex;
Cell Type(s):
Channel(s): I A; I M; I h; I K,Ca; I Calcium; I A, slow; I Na,t; I Na,p; I L high threshold; I T low threshold;
Gap Junctions:
Receptor(s): AMPA; NMDA; Gaba;
Gene(s):
Transmitter(s): Glutamate; Gaba;
Simulation Environment: NEURON; Python;
Model Concept(s): Schizophrenia; Dendritic Action Potentials; Action Potential Initiation; Synaptic Integration;
Implementer(s): Maki-Marttunen, Tuomo [tuomomm at uio.no];
Search NeuronDB for information about:  AMPA; NMDA; Gaba; I Na,p; I Na,t; I L high threshold; I T low threshold; I A; I M; I h; I K,Ca; I Calcium; I A, slow; Gaba; Glutamate;
/
l5pc_scz
hay
models
morphologies
README.html
Ca_HVA.mod *
Ca_LVAst.mod *
CaDynamics_E2.mod *
epsp.mod *
Ih.mod *
Im.mod *
K_Pst.mod *
K_Tst.mod *
Nap_Et2.mod *
NaTa_t.mod *
ProbAMPANMDA2.mod *
ProbUDFsyn2.mod *
SK_E2.mod *
SKv3_1.mod *
calcapicalthresholds_control.py
calcapicalthresholds_epsp_control.py
calcifcurves.py
calcifcurves_comb.py
calcnspikesperburst2.py
calcsteadystate.py
calcupdown2responses.py
calcupdownresponses_noisydown.py
calcupdownresponses_noisyup.py
coding.py
coding_comb.py
coding_nonprop_comb_somaticI.py
coding_nonprop_somaticI.py
collectupdownresponses_noisy.py
control_cs.sav
controlamps_cs0.sav
controlamps_cs1.sav
controlamps_cs2.sav
controlamps_cs3.sav
controlamps_cs4.sav
controlamps_cs5.sav
controlamps_cs6.sav
drawfigcomb.py
drawnspikesperburst2.py
drawupdownresponses_noisy.py
findppicoeffs.py
findppicoeffs_comb.py
findppicoeffs_complement.py
findthresholdbasalamps_coding.py
findthresholddistalamps.py
findthresholddistalamps_coding.py
findthresholddistalamps_comb.py
mutation_stuff.py
mytools.py *
protocol.py
runcontrols_cs.py
savebasalsynapselocations_coding.py
savesynapselocations.py
savesynapselocations_coding.py
scalemutations_cs.py
scalings_cs.sav
setparams.py
synlocs300.0.sav
                            
:Comment : mtau deduced from text (said to be 6 times faster than for NaTa)
:Comment : so I used the equations from NaT and multiplied by 6
:Reference : Modeled according to kinetics derived from Magistretti & Alonso 1999
:Comment: corrected rates using q10 = 2.3, target temperature 34, orginal 21

NEURON	{
	SUFFIX Nap_Et2
	USEION na READ ena WRITE ina
	RANGE gNap_Et2bar, gNap_Et2, ina, offm, slom, offma, offmb, sloma, slomb, tauma, taumb, taummax, offh, sloh, offha, offhb, sloha, slohb, tauha, tauhb, tauhmax
}

UNITS	{
	(S) = (siemens)
	(mV) = (millivolt)
	(mA) = (milliamp)
}

PARAMETER	{
	gNap_Et2bar = 0.00001 (S/cm2)
	offm = -52.6 (mV)
	slom = 4.6 (mV)
	offma = -38 (mV)
	offmb = -38 (mV)
	sloma = 6.0 (mV)
	slomb = 6.0 (mV)
	tauma = 5.49451
	taumb = 8.06452
	taummax = 6.0 (ms)
	offh = -48.8 (mV)
	sloh = 10.0 (mV)
	offha = -17 (mV)
	offhb = -64.4 (mV)
	sloha = 4.63 (mV)
	slohb = 2.63 (mV)
	tauha = 347222.2
	tauhb = 144092.2
	tauhmax = 1.0 (ms)
}

ASSIGNED	{
	v	(mV)
	ena	(mV)
	ina	(mA/cm2)
	gNap_Et2	(S/cm2)
	mInf
	mTau
	mAlpha
	mBeta
	hInf
	hTau
	hAlpha
	hBeta
}

STATE	{
	m
	h
}

BREAKPOINT	{
	SOLVE states METHOD cnexp
	gNap_Et2 = gNap_Et2bar*m*m*m*h
	ina = gNap_Et2*(v-ena)
}

DERIVATIVE states	{
	rates()
	m' = (mInf-m)/mTau
	h' = (hInf-h)/hTau
}

INITIAL{
	rates()
	m = mInf
	h = hInf
}

PROCEDURE rates(){
  LOCAL qt
  qt = 2.3^((34-21)/10)

	UNITSOFF
	mInf = 1.0/(1+exp((offm-v)/slom))
        if(v == offma){
    	    v = v+0.0001
        }
        if(v == offmb){
    	    v = v+0.0001
        }
	mAlpha = -(offma-v)/(1-(exp((offma-v)/sloma)))/tauma
	mBeta  = (offmb-v)/(1-(exp(-(offmb-v)/slomb)))/taumb
	mTau = taummax*(1/(mAlpha + mBeta))/qt

  	if(v == offha){
   	    v = v + 0.0001
  	}
        if(v == offhb){
            v = v+0.0001
        }

	hInf = 1.0/(1+exp(-(offh-v)/sloh))
        hAlpha = (offha-v) / (1 - exp(-(offha-v)/sloha))/tauha
        hBeta = -(offhb-v) / (1 - exp((offhb-v)/slohb))/tauhb
	hTau = tauhmax*(1/(hAlpha + hBeta))/qt
	UNITSON
}