showGUI = 1
msplit = 1
nmt = 8
verbosity = 2
synCa = 3
load_file("LGMDreconstruction_NEURON.hoc")
if (verbosity > 2) printf("3D morphology loaded \n")
objref siz
objref Ctines,Chandle
objref FieldA, TineEnds
siz = new SectionList()
forsec "soma" {
siz.append()
}
forsec "SIZ" {
siz.append()
}
FieldA = new SectionList()
forsec "MainTrunk"{
FieldA.append()
}
forsec "Tines" {
FieldA.append()
}
Ctines = new SectionList()
Chandle = new SectionList()
for i=0,21 {
FieldC[i] {Chandle.append()}
}
for i=22,454 {
FieldC[i] {Ctines.append()}
}
load_file("init.hoc")
load_file("guisetup.hoc")
load_file("parinit.hoc")
load_file("mview.hoc")
load_file("Utilities.hoc")
if (verbosity > 2) printf("SimUtilities loaded \n")
load_file("Injection_procs.hoc")
if (verbosity > 2) printf("Injection_procs loaded \n")
gl = 1.0e-5
el = -68
Cm = 0.80
axial = 220
EK = -77
ENa = 60
ECa = 150
SIZNa = 0.45
gKdr = 1.0e-2
SIZM = 5.5e-3
gcat = 1.4e-2
gkca = 1.3e-2
gcal = 2e-3
forall {
Ra = axial
cm = Cm
insert pas
g_pas = gl
e_pas = el
}
forsec "Axon" {
Ra=35
insert M
insert Na
insert HH_Kdr
insert h
g_pas=gl*5
gmax_M = SIZM/35
gmax_Na = SIZNa/30
gmax_HH_Kdr = gKdr
gmax_h = 5e-5
ek = EK
ena = ENa
}
forsec siz {
Ra=220
insert Na
insert HH_Kdr
insert M
insert KCa
insert CaT
insert CaL
insert CaInternal
g_pas = gl*5
gmax_Na = SIZNa
gmax_HH_Kdr = gKdr/4
gmax_M = SIZM
gmax_KCa = gkca
gmax_CaT = gcat
gmax_CaL = gcal
ek = EK
eca = ECa
ena = ENa
}
forsec "ASIZ" Ra=600
forsec "DSIZ" Ra=100
forsec "Handle" {
Ra=60
insert Na
insert HH_Kdr
insert M
gmax_Na = 1.5e-2
gmax_HH_Kdr = gKdr
gmax_M = SIZM/40
ek = EK
ena = ENa
}
proc handle_M_dist() { local D, Mhalf, MS, Mmax, Mmin
Mmax = SIZM
Mmin = 8.0e-5
Mhalf = 25
MS = -50
soma[0] {distance()}
forsec "Handle" {
D = distance(.5)
gmax_M = 0.27*(Mmin + (Mmax-Mmin)/(1+exp((Mhalf-D)/MS)))
}
}
proc handle_Na_dist() { local D, d_half, Namax, S, Namin
Namin = 1.0e-2
Namax = SIZNa
d_half = 40
S = -90
soma[0] {distance()}
forsec "Handle" {
D = distance(.5)
gmax_Na = 0.7*(Namin + (Namax-Namin)/(1+exp((d_half-D)/S)))
}
}
for i=0,30 {
Handle[i] {
insert KCa
insert CaT
insert CaL
insert CaInternal
gmax_KCa = gkca
gmax_CaT = gcat
gmax_CaL = gcal
eca=ECa
}
}
forall if (ismembrane("CaInternal")) {
alpha_ca_CaInternal = 6.25e-4
ca_init_CaInternal = 1.2e-3
tau_ca_CaInternal = 400
}
tmax_CaL=0.1
minca_KCa= 9.0e-4
pwr_KCa = 4
kD_ca_KCa= 3.0e-4
tau_KCa = 2
ca_min_CaInternal=1e-5
forsec "MainTrunk"{
Ra=120
insert Na
gmax_Na = 5e-3
ena = ENa
}
forsec FieldA {
insert HH_Kdr
insert M
insert NaP
insert cdp
insert CN
insert hcn
insert KD_ca3
gmax_hcn = 1.2e-4
gmax_HH_Kdr = gKdr/2
gmax_M = SIZM/140
gmax_NaP = 1e-4
gmax_KD_ca3 = 4.0e-2
ena = ENa
ek = EK
}
TineEnds = new SectionList()
FindEnds(TineEnds,"Tines")
forsec TineEnds Ra=30
{Handle[20] distance() forsec FieldA gmax_hcn=0.4*gmax_hcn*(distance(0.5)/450)^6}
Zratio_g( FieldA, "Handle[60]", "hcn", 0, 0, 1, 1.25, 0.01 )
forsec FieldA gmax_KD_ca3= 3e-3 + gmax_hcn*140
TotalPump_cdp = 8.5e-13
TotalBuffer_cdp=0.04
k1_cdp = 2.0
k3_cdp = 0.5
eca=ECa
forsec "Field"{
Ra=100
insert M
insert KdrF
g_pas=gl*2
gmax_M = 5.0e-5
gmax_KdrF = 3.0e-03
ek=EK
}
Zratio_g(Ctines, "FieldC[19]", "M", 1.25e-5, 30, 1,2)
Zratio_g("FieldB", "Handle[35]", "M", 1.25e-5, 30,1,2)
forsec Chandle {
Ra=40
if (ismembrane("NaP")) uninsert NaP
if (ismembrane("h")) uninsert h
insert HH_Kdr
insert Na
g_pas = gl
gmax_HH_Kdr = gKdr
gmax_Na = 4.0e-3
}
forsec "CellBody"{
Ra=300
insert NaP
insert Na
insert HH_Kdr
gmax_NaP = 5.0e-5
gmax_Na = 1.5e-2
gmax_HH_Kdr = gKdr*2
ek = EK
}
if (msplit) {
startPar()
}
if (showGUI) RunControlWindow()