I am encountering a behaviour of the area() function which I don't understand, materialised by the code-example below.

The mentioned behaviour is that when I define the geometry of a section using the 3d-method, the formula `sec(0.5).area()` and `sec.L * sec.diam * h.PI` yield different results.

By contrast, when I define the section geometry using the stylized method, both formula above yield the same result.

Here is the code-example:

Code: Select all

```
from neuron import h
sec1 = h.Section()
h.pt3dadd(0.0, 0.0, 0.0, 60.0, sec=sec1)
h.pt3dadd(7.0, 0.0, 0.0, 10.0, sec=sec1)
print 'sec1 L: ', sec1.L
print 'sec1 diam: ', sec1.diam
print 'sec1 cust. area: ', sec1.L * sec1.diam * h.PI
print 'sec1 neuron area: ', sec1(0.5).area()
print ''
sec2 = h.Section()
sec2.L = 7.0
sec2.diam = 35.0
print 'sec2 L: ', sec2.L
print 'sec2 diam: ', sec2.diam
print 'sec2 cust. area: ', sec2.L * sec2.diam * h.PI
print 'sec2 neuron area: ', sec2(0.5).area()
```

Can anyone explain to me why this is so ?sec1 L: 7.0

sec1 diam: 35.0

sec1 cust. area: 769.690200129

sec1 neuron area: 2854.61711509

sec2 L: 7.0

sec2 diam: 35.0

sec2 cust. area: 769.690200129

sec2 neuron area: 769.690200129

Which one of the 2 formulae does NEURON use to compute the transmembrane currents ?

Thank you very much in advance for the help,

Nathan