changing section lengths

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
pfortier

changing section lengths

Post by pfortier »

I loaded an SWC file into NEURON. I inserted voltage-gated channels in the dendritic tree. I wanted to change the density of channels at regular distances along the dendritic tree but the section lengths vary. The only option that has come to mind was to manually change the input file. For example, a long section would be defined as several smaller sections which produce an equivalent length.

Is there a toll to do this?
ted
Site Admin
Posts: 6289
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: changing section lengths

Post by ted »

pfortier wrote:I wanted to change the density of channels at regular distances along the dendritic tree but the section lengths vary.
Of course they do. In nature it is quite unlikely that any two neurites in the same cell will have exactly the same length.
The only option that has come to mind was to manually change the input file. For example, a long section would be defined as several smaller sections which produce an equivalent length.
If you're going to destroy the irregularity that exists in nature, why bother with real anatomy in the first place? Just go ahead and make up a completely artificial geometry and use it.

Or perhaps I misunderstand what you meant by
pfortier wrote:change the density of channels at regular distances along the dendritic tree
Did you really mean you want channel density to be a function of position in the cell? e.g. perhaps a function of radial (euclidian) or path distance from the soma or axon initial segment? If that's what you really want, you can do it very nicely with the CellBuilder--see the CellBuilder tutorials on NEURON's Documentation page http://www.neuron.yale.edu/neuron/docs
pfortier

Re: changing section lengths

Post by pfortier »

I'm wondering what it is in my message that made you think I wanted to change the geometry of the neuron.

If the following represents 1 section of length L: ==========
Then I would want to "cut" it into 10 sections of length L/10: =|=|=|=|=|=|=|=|=|= (imagine that | is where I "cut" the branch)
The overall goal is to maintain the geometry of the neuron but just have it built from more sections so I have finer control over changes in voltage-gated channel density along the dendritic tree.

I will take a look at the CellBuilder tutorials to see if I can load the morphology and then make changes as requested above.
Thanks
ted
Site Admin
Posts: 6289
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: changing section lengths

Post by ted »

pfortier wrote:I'm wondering what it is in my message that made you think I wanted to change the geometry of the neuron.
Maybe nothing intrinsic to your message, but perhaps more how I interpreted it in the context of questions asked by others.
If the following represents 1 section of length L: ==========
Then I would want to "cut" it into 10 sections of length L/10: =|=|=|=|=|=|=|=|=|= (imagine that | is where I "cut" the branch)
The overall goal is to maintain the geometry of the neuron but just have it built from more sections so I have finer control over changes in voltage-gated channel density along the dendritic tree.
If you want to increase spatial resolution, why not just increase nseg? (preferably by an odd multiple like 3 or 5).
pfortier

Re: changing section lengths

Post by pfortier »

I use "section {insert mechanism}" to add voltage gated channels. I don't see how nseg would allow me, for example, to have the first third of the section with 6 times the density of channels as in the last third of the section.

For "dend[25] {insert hh nseg=3}", how would I set different densities of hh in each of the 3 segments of section dend[25]?
Thanks
ted
Site Admin
Posts: 6289
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: changing section lengths

Post by ted »

pfortier wrote:I use "section {insert mechanism}" to add voltage gated channels. I don't see how nseg would allow me, for example, to have the first third of the section with 6 times the density of channels as in the last third of the section.
The key concepts are range and range variables. If you have a copy of the NEURON Book, you might want to read chapters 5 and 6. If not, be sure to read
Hines, M.L. and Carnevale, N.T.
The NEURON simulation environment.
Neural Computation 9:1179-1209, 1997
(available from links at http://www.neuron.yale.edu/neuron/nrnpubs).

Strongly suggested additional reading:

Hines, M.L. and Carnevale, N.T.
NEURON: a tool for neuroscientists.
The Neuroscientist 7:123-135, 2001
(also available at the link cited above)

the Programmer's Reference documentation of "for"

the CellBuilder tutorials available on the Documentation page http://www.neuron.yale.edu/neuron/docs
For "dend[25] {insert hh nseg=3}", how would I set different densities of hh in each of the 3 segments of section dend[25]?
You'll soon be able to answer this for yourself.
pfortier

Re: changing section lengths

Post by pfortier »

Thanks! I looked at those documents many times and used v("range") many times but never noticed examples using the following:

Code: Select all

oc>soma nseg=3
oc>soma gnabar_hh(.1)=0.01
oc>soma gnabar_hh(.5)=0.05
oc>soma gnabar_hh(.9)=0.09
oc>print gnabar_hh(.9)
0.09 
oc>print gnabar_hh(.5)
0.05 
oc>print gnabar_hh(.1)
0.01 
This feature gives me no reason to change section lengths.
Thanks for saving me the incredible trouble I was getting myself into.
ted
Site Admin
Posts: 6289
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: changing section lengths

Post by ted »

pfortier wrote:Thanks! I looked at those documents many times and used v("range") many times but never noticed examples using the following
Well, 4.4 Range variables in
Hines, M.L. and Carnevale, N.T.
The NEURON simulation environment.
Neural Computation 9:1179-1209, 1997
does mention diameter and gnabar_hh, but the Programmer's Reference really needs an easily findable, explicit statement about range variables (if I knew of one, I'd have pointed you to it, or more likely you would already have found it).

Range variables allow algorithmic assignment of diameter and biophysical properties as functions of position, e.g.
soma for (x,0) gnabar_hh(x) = 0.1*x
forall for (x,0) gbar_kd(x) = p(x) // p is a function of the segment center's xyz coordinates

Note the "for (x,0)" syntax. What are the gnabar_hh values that result from the first statement? What would they be if the statement were
soma for (x) gnabar_hh(x) = 0.1*x // a common error
?

An aside: this thread illustrates three key points.
1. Human language is imprecise. You thought the meaning of your original question was perfectly clear. I had a very different understanding of it, and only grasped your meaning after a brief exchange.
2. Sometimes the "right" (i.e. formally correct) answer to a question is the wrong answer, because the question itself is the wrong question.
3. A real conversation provides many opportunities for detecting and correcting both of these problems. Such corrections are harder to achieve in the course of brief text exchanges e.g. via email, fora, etc..
Post Reply