divyeshsah_89 wrote:Sir, i tried to get the file in cell builder. but the dimensions are not being loaded into the cell builder.
I used the method mentioned in tutorial.then when in cell builder i tried to view the celll geometry it was not there & only the default values used to come like dia=1 & L=100micrometers.
Now I understand why you were concerned. Excellent question!
There are two ways to specify the geometry of a section. One is the stylized method, which uses L and diam. This is fine for simplified models ("stick figure" cells). The other is the 3D method, which is used for models based on detailed anatomical measurements. The 3D method uses a sequence of
(x, y, z, diameter)
values to capture the detailed structure of a section--every wiggle and every bulge or narrowing (or as many as the human being who does the measurements has the patience for!). When you import such data into NEURON, all of the values are stored inside the program, and they are used by the code that calculates solutions and displays graphs of the shape of the cell.
But the CellBuilder doesn't show all of these details, even though they're all in the CellBuilder's ses file. Instead it shows a simplified drawing of the cell (just the start and end of each section, with a straight line between them), and its Geometry page lists the sections when the "Specify Strategy" button has a check mark in it. If you click on that button to dismiss the check mark, you'll see that all of the section names simply vanish. That's because the CellBuilder doesn't have any way to allow you to change the 3D data.
If you go back to "Specify Strategy," select one of the sections (for example, soma), and then click on L and diam under "Constant value over subset", then clear the "Specify Strategy" checkbox, you will now see the name
soma: L. diam
in the grey column, and if you select that item you'll see L and diam in the right panel, with the values 100 and 1. But if you do this, you will tell NEURON to ignore the original anatomical data and treat the soma as an ordinary cylinder with this L and diam. Probably not a good idea.
I just tried this now with the pyramidal cell that is one of the models offered by the neurondemo example program. After selecting the pyramidal cell model, then importing it into a CellBuilder, I saved the CellBuilder to a ses file and exited NEURON. Next I started NEURON, loaded the ses file I had just saved, and saw the CellBuilder pop up. I clicked on Continuous Create and typed
soma psection()
at the oc> prompt in NEURON's xterm. This made NEURON print the following
Code: Select all
soma { nseg=1 L=37.101 Ra=35.4
/*location 0 attached to cell 0*/
/* First segment only */
insert morphology { diam=22.0682}
insert capacitance { cm=1}
}
which shows the actual anatomical length of the section, and the diameter of the first segment of the soma section (this is actually the diameter of a uniform cylinder with length 37.101 um that will have the same surface area as the anatomical section with all of its complex wiggles and bulges).
Finally, I selected soma in the CellBuilder's Geometry page with "Specify Strategy" checked, clicked on the L and diam "Constant value over subset" buttons, and clicked on "Specify Strategy" to uncheck it, and then typed
soma psection()
again. Here's what NEURON told me:
Code: Select all
soma { nseg=1 L=100 Ra=35.4
/*location 0 attached to cell 0*/
/* First segment only */
insert morphology { diam=1}
insert capacitance { cm=1}
}
So I really messed up the soma.
If there's a moral to this story, it is this: when you're dealing with models based on imported morphometric data, the only thing to change on the CellBuilder's Geometry page is the method for specifying the spatial grid. If you need to know about the anatomical properties of a section, you can use
sectionname psection()
to discover total length, but if you want to examine it in detail, you need to use the pt3d functions. I suggest reading about Geometry in the Programmer's Reference
http://www.neuron.yale.edu/neuron/stati ... metry.html
This little procedure reports all of a section's pt3d data:
Code: Select all
proc print3d() { local ii
print secname(), " is based on ", n3d(), "measurements"
for ii=0,n3d()-1 {
print ii, x3d(ii), y3d(ii), z3d(ii), diam3d(ii)
}
}
Example of usage:
Code: Select all
oc>dendrite_1 print3d()
dendrite_1[0] is based on 4 measurements
0 0.25 -1.125 0 3.5
1 0.75 0.875 2 3.5
2 1.25 2.875 3.5 3.5
3 0.25 6.375 5 3.5