Import3D connects processes to soma(0.5)

Managing anatomically complex model cells with the CellBuilder. Importing morphometric data with NEURON's Import3D tool or Robert Cannon's CVAPP. Where to find detailed morphometric data.
Post Reply
ashutosh

Import3D connects processes to soma(0.5)

Post by ashutosh »

Hi,

I imported my neurolucida V3 file into NEURON through import3D. But when I examine it through cell builder, it has attached all dendrites to soma(0.5). I guess this behavior isn't correct? Or am I doing something wrong at the neurolucida end? I used contour tracing to trace the cell body and all the dendrites are within the soma. I have emailed Ted the neurolucida file in case it will be of any help.

Many thanks.
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Import3D connects processes to soma(0.5)

Post by ted »

Using
NEURON -- VERSION 7.2 (436:cbc0331180f8) 2010-04-05
this what I see:

As you said, the perimeter of the soma has been traced in three different parallel planes. The proximal ends of all primary neurites converge onto the perimeter that is in the middle of this stack; the visual impression is reminiscent of a drum, or a roughly cylindrical lampshade that is approximately as tall as it is wide.

The Import3D tool prints out a series of messages to the terminal

Code: Select all

Main branch starting at line 75 is outside the soma bounding boxes
  Making a logical connection to center of nearest soma

Main branch starting at line 85 is outside the soma bounding boxes
  Making a logical connection to center of nearest soma

. . . etc. . . .
Also a panel pops up with the message

Code: Select all

/04_08_10_Cell1.ASC: File translation problems. See the messages on the terminal
Clicking on this panel's "Continue" button brings up a new panel with the legend
"Possible root branch errors"
in its drag bar. This panel contains the following message

Code: Select all

Default logical connection to nearest soma.
Check to physically connect to closest parent in the xy plane.
(Note: may split the parent into two sections)
and offers a menu of checkboxes that offer to perform the following actions

Code: Select all

Line #75 conect to #31 1.31928 (um) away
Line #85 connect to #18 1.30035 (um) away
 . . . etc. . . .
Each of these actions appears to correspond to one of the messages that had been printed in the terminal.

If I simply ignore this new panel, and export to a CellBuilder, I end up with a model in which the proximal end of each primary dendrite is electrically connected to the middle of the soma (soma(0.5))--which should be fine given the soma's nearly 1:1 diameter/length ratio.

However, in Shape Plots the proximal end of each primary dendrite is drawn with its origin at the location in space specified by the original morphometric data. This gives Shape Plots a peculiar appearance when rendered in the default Shape Style ("Centroid") because of an apparent gap between the short line rendering of the soma and where the proximal ends of the stick figure dendrites are drawn. This is alleviated somewhat by switching to the "Show Diam" Shape Style, which renders the soma almost as a rectangle (a 2-D projection of a cylinder viewed from the side). The proximal ends of primary dendrites are drawn at the locations specified by the morphological data, which do not map precisely onto the rendering of the soma in "Show Diam" style, but this is merely a cosmetic flaw and will not affect the electrical properties of sections or the accuracy of solutions.

If I try selecting any of the checkboxes offered by the "Possoble root branch errors" panel, I see that I can choose the very first one, but any others generate error messages and disastrous changes in the Import3D tool's display of the shape of the cell. Also as I step through the data points, there are more than a few "user function" errors. So maybe this file was constructed in a way that differs from what the Import3D tool expects, and requires some further scrutiny to see whether some revisions to the tool might be necessary.
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Import3D connects processes to soma(0.5)

Post by ted »

To summarize, the two things that remain to be fixed are
1. No messages should be printed when the proximal points of dendrites are inside the soma bounding box (which they are for this particular cell's morphological data).
2. It is not clear why a panel appears that has checkboxes that offer to attach sections to points that are clearly part of the soma outline, rather than connectable sections.

That said, the default action taken by Import3D, which is to connect the primary dendrites to soma(0.5), is correct.
ashutosh

Re: Import3D connects processes to soma(0.5)

Post by ashutosh »

Hi,

I tried to investigate this a bit. When I just ignore the error messages, import the cell and check its passive steady state response to a small current (which i am trying to study), the response is unusually large (in current clamp for a 20 pA input at the soma the deflection was around 16 mV from resting). I tried importing a few .swc cells from NeuroMorpho.org and they seemed to share a characteristic - there is atleast one point in common between the soma and the neurites connected to it in the corresponding hoc file. And thus they actually appear connected to the cell and their passive response is in the expected range. So I tried the following. I imported my .asc file into neuron after ignoring errors, exported it out as hoc. And then I manually edited the hoc file so that each neurite connected to the soma had exactly one point in common with it. I did this by adding a new "addpt3d" for each neurite. When I imported this file back into neuron, as you would expect the neurites appeared connected to the cell body and my passive response was in the expected range.

Does this behaviour make sense to you?

In order to check if I could do something on the neurolucida side I tried to somehow "attach" my dendrite to the cell body so that they will have a point in common but I realized that it can't be done.

Also, I have implemented a asc->python converter in lex/yacc. The only trouble I have at the moment is to construct the cell body sections from the contours. Could you please give me a few hints on how to do this? In case you'd like to have a look, the code is at: http://github.com/ashutoshmohan/Morphol ... for-NEURON .

Many thanks,
Ashutosh
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: Import3D connects processes to soma(0.5)

Post by ted »

ashutosh wrote:When I just ignore the error messages, import the cell and check its passive steady state response to a small current (which i am trying to study), the response is unusually large (in current clamp for a 20 pA input at the soma the deflection was around 16 mV from resting).
Can't tell what that means without knowing what properties were assigned to membrane and cytoplasm.

I imported the morphology into a CellBuilder, closed the Import3D tool, saved CellBuilder to cell.ses, exited NEURON.
Then
nrngui cell.ses
Geometry: specified d_lambda strategy for spatial discretization (not necessary for steady state test of a passive model, but I do it out of habit).
Biophysics: with Strategy checked, selected Ra, cm, and pas.
Cleared Strategy checkbox and changed g_pas to 1e-4 S/cm2 and e_pas to 0 mV (so I don't have to subtract resting potential from final v).
Activated Continuous Create.
Used PointProcessManager to attach an IClamp to soma, specified dur 1e9 ms, amp 0.1 nA.
Ran simulation for 200 ms. soma v rose from 0 to 79.3 mV, steady state in < 100 ms. Conclusion: input resistance at soma is 793 megohms.
Shape plot shows no orphan branches (everything lit up about the same amount).

Conclusions: (1) all branches are attached to the soma, and (2) there don't seem to be any bottlenecks to current flow.

LogAvsX tool (part of the Impedance tools--if you're not familiar with these, see 18. Analyzing electrotonus at http://www.neuron.yale.edu/neuron/stati ... ndson.html) shows extremely efficient voltage transfer from soma out to all branches--natural log of voltage attenuation < 0.01 throughout the model at DC, so clamping soma to 1 mV forces all membrane to at least 0.99 mV. So all membrane is "electrically very close" to the soma.

Back to the interpreter.
oc>forall nseg=1
oc>ta
/usr/local/nrn/i686/bin/nrniv: undefined variable ta
near line 38
ta
^
oc>ta=0
first instance of ta
oc>forall for (x,0) ta+=area(x)
oc>ta
1264.3565
So total surface area of model is 1264 um2.

oc>g_pas*ta*1e-8
1.2643565e-09
So a spherical cell with that surface area would have an input conductance of 1.264 nanosiemens.
oc>1/(g_pas*ta*1e-8)
7.909162e+08
which is 7.91e8 ohms, or 791 megohms.

Conclusions: This is almost identical to the input resistance of the branched model subjected to a computational current clamp experiment, and confirms the "electrical proximity" of all membrane to the soma.

1 pA applied to a cell with input resistance of ~800 megohms should change v by 0.8 mV, so 20 pA should change it by 16 mV.
I tried importing a few .swc cells from NeuroMorpho.org
Does NeuroMorpho.org have morphologies of other cells of this particular class?
and they seemed to share a characteristic - there is atleast one point in common between the soma and the neurites connected to it in the corresponding hoc file. And thus they actually appear connected to the cell and their passive response is in the expected range.
All the dendritic trees of your tiny cell, imported into NEURON, are connected to the soma too. Type topology() at the oc> prompt if you aren't sure about this.

The question is whether the imported model is incorrect or whether your expectation (that input resistance shouldn't be so high) is incorrect. From what I have seen so far, the imported model is correct, but if you need further assurance, there's an easy way to find out. Use NeuroLucida to tell you the total surface area contained in your morphology file (reading through the file I see that there aren't a lot of measurement points, most have diameters < 1 um, and none has a diameter > 2 um). It will probably be close to, but not quite the same, as the value computed from the NEURON model; the difference will be attributable to differences between how NEURON deals with the soma compared to what NeuroLucida does with the somatic outlines. In any case, you're dealing with a very small cell, which has very little surface area, and it is going to have a large input resistance.
So I tried the following. I imported my .asc file into neuron after ignoring errors, exported it out as hoc. And then I manually edited the hoc file so that each neurite connected to the soma had exactly one point in common with it. I did this by adding a new "addpt3d" for each neurite. When I imported this file back into neuron, as you would expect the neurites appeared connected to the cell body and my passive response was in the expected range.
Without seeing your code I have no idea what you did. With regard to the appearance of shape plots--the way that things are drawn in a shape plot, and especially whether sections are drawn as contiguous or not, has nothing to do with whether they are connected to each other. The printout generated by topology() tells how they are connected.[/quote]
Post Reply