Page 1 of 1

Posted: Tue Dec 17, 2013 1:56 pm
Dear,

Given this simply example, I would expect that diam(0)=5 and diam(1)=1, don't understand why diam(0)=diam(0.1) and diam(0.9)=diam(1) ? Thank you.

create dend
access dend
dend {
nseg = 5
}

print L, diam(0)
print L, diam(0.1)
print L, diam(0.3)
print L, diam(0.5)
print L, diam(0.7)
print L, diam(0.9)
print L, diam(1)

Posted: Tue Dec 17, 2013 5:10 pm
diam is a range variable. For any range variable, diam(x) refers to the value at the center of the segment that contains x. For x that lies on a boundary between segments, the value you get will be determined by roundoff error. For x = 0 or 1, the values will be from the middle of the first or last segment, respectively. This stuff is covered in chapters 5 and 6 of the NEURON Book. If you don't have that, at the very least read this
Hines, M.L. and Carnevale, N.T. The NEURON simulation environment. Neural Computation 9:1179-1209, 1997.
Preprint is available at http://www.neuron.yale.edu/neuron/nrnpubs