/*
CK Overstreet
Last Updated 12/18/2012
Major characteristics of cell bodies and axons reconstructed by hand from:
E. G. Jones, “Varieties and distribution of non-pyramidal cells in the somatic sensory cortex of the squirrel monkey,” The Journal of Comparative Neurology, vol. 160, no. 2, pp. 205-267, Mar. 1975.
*/
load_file("nrngui.hoc")
NAPICAL=25
NBOUTON=9
create soma, ap[NAPICAL], bt[NBOUTON]
access soma
connect ap[0](0), soma(0)
connect ap[1](0), ap[0](1)
connect ap[2](0), ap[1](1)
connect ap[3](0), ap[2](1)
connect ap[4](0), ap[1](1)
connect ap[5](0), ap[0](1)
connect ap[6](0), ap[5](1)
connect ap[7](0), ap[6](1)
connect ap[8](0), ap[7](1)
connect ap[9](0), ap[0](1)
connect ap[10](0), ap[9](1)
connect ap[11](0), ap[10](1)
connect ap[12](0), ap[11](1)
connect ap[13](0), ap[11](1)
connect ap[14](0), ap[10](1)
connect ap[15](0), ap[9](1)
connect ap[16](0), ap[15](1)
connect ap[17](0), ap[16](1)
connect ap[18](0), ap[0](1)
connect ap[19](0), ap[18](1)
connect ap[20](0), ap[19](1)
connect ap[21](0), ap[20](1)
connect ap[22](0), ap[21](1)
connect ap[23](0), ap[21](1)
connect ap[24](0), ap[23](1)
connect bt[0](0), ap[3](1)
connect bt[1](0), ap[4](1)
connect bt[2](0), ap[8](1)
connect bt[3](0), ap[12](1)
connect bt[4](0), ap[13](1)
connect bt[5](0), ap[14](1)
connect bt[6](0), ap[17](1)
connect bt[7](0), ap[22](1)
connect bt[8](0), ap[24](1)
forall pt3dclear()
soma {
pt3dadd(0, 0, 0, 12)
pt3dadd(0, 12, 0, 12)
insert axnode
insert extracellular
insert xtra
xraxial=1e+09
xg=1e+09
xc=0
e_extracellular=0
}
for i = 0, NAPICAL-1 ap[i] {
insert axnode
insert extracellular
insert xtra
xraxial=1e+09
xg=1e+09
xc=0
e_extracellular=0
}
for i = 0, NBOUTON-1 bt[i] {
insert axnode
insert extracellular
insert xtra
xraxial=1e+09
xg=1e+09
xc=0
e_extracellular=0
}
ap[0] {
pt3dadd(0, 0, 0, 0.25)
pt3dadd(0, -30, 0, 0.25)
}
ap[1] {
pt3dadd(0, -30, 0, 0.25)
pt3dadd(20, -60, 0, 0.25)
}
ap[2] {
pt3dadd(20, -60, 0, 0.5)
pt3dadd(30, -80, 0, 0.5)
}
ap[3] {
pt3dadd(30, -80, 0, 0.5)
pt3dadd(70, -90, 0, 0.5)
}
ap[4] {
pt3dadd(30, -80, 0, 0.5)
pt3dadd(10, -110, 0, 0.5)
}
ap[5] {
pt3dadd(0, -30, 0, 0.25)
pt3dadd(-20, -50, 0, 0.25)
}
ap[6] {
pt3dadd(-20, -50, 0, 0.25)
pt3dadd(-50, -30, 0, 0.25)
}
ap[7] {
pt3dadd(-50, -30, 0, 0.25)
pt3dadd(-50, 50, 0, 0.25)
}
ap[8] {
pt3dadd(-50, 50, 0, 0.25)
pt3dadd(-20, 210, 0, 0.25)
}
ap[9] {
pt3dadd(0, -30, 0, 0.5)
pt3dadd(20, 50, 0, 0.5)
}
ap[10] {
pt3dadd(20, 50, 0, 0.5)
pt3dadd(10, 240, 0, 0.5)
}
ap[11] {
pt3dadd(10, 240, 0, 0.25)
pt3dadd(-40, 300, 0, 0.25)
}
ap[12] {
pt3dadd(-40, 300, 0, 0.25)
pt3dadd(-60, 320, 0, 0.25)
}
ap[13] {
pt3dadd(-40, 300, 0, 0.25)
pt3dadd(-10, 320, 0, 0.25)
}
ap[14] {
pt3dadd(10, 240, 0, 0.25)
pt3dadd(0, 260, 0, 0.25)
}
ap[15] {
pt3dadd(20, 50, 0, 0.5)
pt3dadd(60, 280, 0, 0.5)
}
ap[16] {
pt3dadd(60, 280, 0, 0.25)
pt3dadd(100, 300, 0, 0.25)
}
ap[17] {
pt3dadd(100, 300, 0, 0.25)
pt3dadd(140, 260, 0, 0.25)
}
ap[18] {
pt3dadd(0, -30, 0, 0.25)
pt3dadd(50, -50, 0, 0.25)
}
ap[19] {
pt3dadd(50, -50, 0, 0.25)
pt3dadd(90, -20, 0, 0.25)
}
ap[20] {
pt3dadd(90, -20, 0, 0.25)
pt3dadd(110, 100, 0, 0.25)
}
ap[21] {
pt3dadd(110, 100, 0, 0.25)
pt3dadd(80, 270, 0, 0.25)
}
ap[22] {
pt3dadd(80, 270, 0, 0.25)
pt3dadd(50, 300, 0, 0.25)
}
ap[23] {
pt3dadd(80, 270, 0, 0.25)
pt3dadd(100, 280, 0, 0.25)
}
ap[24] {
pt3dadd(100, 280, 0, 0.25)
pt3dadd(120, 340, 0, 0.25)
}
bt[0] {
pt3dadd(70, -90, 0, 0.5)
pt3dadd(74.9, -91.2, 0, 3)
}
bt[1] {
pt3dadd(10, -110, 0, 0.5)
pt3dadd(7.2, -114.2, 0, 3)
}
bt[2] {
pt3dadd(-20, 210, 0, 0.25)
pt3dadd(-19.1, 215, 0, 3)
}
bt[3] {
pt3dadd(-60, 320, 0, 0.25)
pt3dadd(-63.5, 323.5, 0, 3)
}
bt[4] {
pt3dadd(-10, 320, 0, 0.25)
pt3dadd(-5.8, 322.8, 0, 3)
}
bt[5] {
pt3dadd(0, 260, 0, 0.25)
pt3dadd(-2.2, 264.5, 0, 3)
}
bt[6] {
pt3dadd(140, 260, 0, 0.25)
pt3dadd(143.5, 256.5, 0, 3)
}
bt[7] {
pt3dadd(50, 300, 0, 0.25)
pt3dadd(46.5, 303.5, 0, 3)
}
bt[8] {
pt3dadd(120, 340, 0, 0.25)
pt3dadd(121.6, 344.7, 0, 3)
}
XORIGIN = 0
YORIGIN = 0
ZORIGIN = 0
access soma
pt3dchange(0, x3d(0)+XORIGIN, y3d(0)+YORIGIN, z3d(0)+ZORIGIN, diam3d(0))
pt3dchange(1, x3d(1)+XORIGIN, y3d(1)+YORIGIN, z3d(1)+ZORIGIN, diam3d(1))
nseg=20
for(i=0; i<=NAPICAL-1; i=i+1){
access ap[i]
pt3dchange(0, x3d(0)+XORIGIN, y3d(0)+YORIGIN, z3d(0)+ZORIGIN, diam3d(0))
pt3dchange(1, x3d(1)+XORIGIN, y3d(1)+YORIGIN, z3d(1)+ZORIGIN, diam3d(1))
nseg=99
}
for(i=0; i<=NBOUTON-1; i=i+1){
access bt[i]
pt3dchange(0, x3d(0)+XORIGIN, y3d(0)+YORIGIN, z3d(0)+ZORIGIN, diam3d(0))
pt3dchange(1, x3d(1)+XORIGIN, y3d(1)+YORIGIN, z3d(1)+ZORIGIN, diam3d(1))
nseg=5
}
forall Ra=70
access ap[0]