create soma, pridenp, pridene2, pridend, secden[2]
create tdenp[2], tdend[2], tdene[2], hillock, initialseg
nmyelin = 5
create node[nmyelin], myelin[nmyelin]
objref dendritic, somatic, tuft, second, somden, axon, sad, prox, alls, mye
dendritic = new SectionList()
forsec "den" dendritic.append()
mye = new SectionList()
forsec "myelin" mye.append()
somatic = new SectionList()
soma somatic.append
hillock somatic.append()
tuft = new SectionList()
forsec "tden" tuft.append()
second = new SectionList()
forsec "secden" second.append()
prox = new SectionList()
forsec somatic prox.append()
forsec second prox.append()
forsec "priden" prox.append()
somden = new SectionList()
forsec somatic somden.append()
forsec dendritic somden.append()
axon = new SectionList()
forsec "node" axon.append()
initialseg axon.append()
sad = new SectionList()
forsec somden sad.append()
forsec axon sad.append()
alls = new SectionList()
forsec sad alls.append()
forsec "myelin" alls.append()
access soma
proc topol() {local i
connect secden[0](0), soma(.5)
connect secden[1](0), soma(.5)
connect pridenp(0), soma(1)
connect pridene2(0), pridenp(1)
connect pridend(0), pridene2(1)
for i=0, 1 connect tdenp[i](0), pridend(1)
for i=0, 1 connect tdene[i](0), tdenp[i](1)
for i=0, 1 connect tdend[i](0), tdene[i](1)
connect hillock(0), soma(0)
connect initialseg(0), hillock(1)
connect myelin[0](0), initialseg(1)
for i=0, nmyelin-1 {
connect node[i](0), myelin[i](1)
if (i == nmyelin-1) break
connect myelin[i+1](0), node[i](1)
}
}
proc segments() {local i
soma.nseg= 3
pridenp.nseg = 5
pridene2.nseg = 1
pridend.nseg = 3
forsec "tdenp" nseg = 2
forsec "tdene" nseg = 1
forsec "tdend" nseg = 2
forsec "secden" nseg = 5
initialseg.nseg = 10
hillock.nseg = 3
forsec "myelin" nseg=3
}
proc geometry() {local i
soma { L = 20 diam = 15 }
pridenp { L = 186 diam=2.5 }
pridene2 { L = 1 diam = 3 }
pridend { L = 156 diam = 3 }
forsec "tdenp" { L=100 diam=2.0 }
forsec "tdene" { L = 1 diam = 2.0 }
forsec "tdend" { L = 150 diam = 2.0 }
forsec "secden" { L=350 diam=3.2 }
initialseg { L=35 diam=1.5 }
hillock { L=5 diam(0:1) = soma.diam(0) : initialseg.diam(0) }
forsec "node" { L=1 diam=1 }
forsec "myelin" { L=1000 diam=1.5 }
define_shape()
}
topol()
segments()
geometry()