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()