This is a slight continuation on the previous question concerning surface area.
I have a single compartment with a sodium channel inserted at 0.02 S/cm2. I'm able to run the simulation and record the current. The problem arrises when I reduce (or increase) the surface area of the single compartment. As the sodium channel is a density measurement, I would expect the total sodium current to change because it is dependent on the total surface area (naturally excluding the ends of the cylinder). However, changing the surface are (diam and L) has no effect on the sodium current. (It does change the passive properties of the membrane, as you would expect).
I can double, triple the surface area which I assume should increase the absolute sodium conductance keeping 0.02 S/cm2 constant. Is this a bug, or am I overlooking something? Thanks.
Area Calculation - Channel Density
-
- Site Admin
- Posts: 6300
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Units, density (distributed) mechanisms, and point processes
Good question.
The units used for membrane current depend on whether you're dealing
with a distributed (density) mechanism or a point process. For a distributed
mechanism, the current is treated as if it is distributed over the surface of the
cell, and the units are "current density" (current/area, e.g. mA/cm2). For a
point process, the current flow is all at one particular spot, and the units are
"absolute current" (e.g. nA). Similar considerations apply to mnembrane
conductance.
If you're ever in doubt, you can determine the units of a variable by using the
units() function (read about this in the Programmers' Reference alphabetical
listing). Example: start NEURON and at the oc> prompt type the statements
shown below; NEURON's output appears on the lines that do not begin
with oc>
Another way to find out is to start the GUI and bring up a tool that has a
button in which the name of the variable of interest appears; its units will
appear next to it in parentheses. Example: in the context of the above model,
click on
NEURON Main Menu / Tools / Distributed Mechanisms / Viewers / Shape Name
A new window pops up; let's call this the Section Parameters tool. In this tool,
double click on the word "soma" (in the lower half of the tool's right panel). This
brings up a new panel of buttons with labels that include
L (um)
Ra (ohm-cm)
diam (um)
cm (uF/cm2)
gnabar_hh (S/cm2)
etc.
Notice that ina is not among them; this is because it is an ASSIGNED variable.
Click on the Section Parameters tool's Type button and select the item "all types".
Now double click on soma and you get three new windows; one has the label
soma(0.5) (Assigned)
just above a column of buttons which includes one that shows
ina (mA/cm2)
The units used for membrane current depend on whether you're dealing
with a distributed (density) mechanism or a point process. For a distributed
mechanism, the current is treated as if it is distributed over the surface of the
cell, and the units are "current density" (current/area, e.g. mA/cm2). For a
point process, the current flow is all at one particular spot, and the units are
"absolute current" (e.g. nA). Similar considerations apply to mnembrane
conductance.
If you're ever in doubt, you can determine the units of a variable by using the
units() function (read about this in the Programmers' Reference alphabetical
listing). Example: start NEURON and at the oc> prompt type the statements
shown below; NEURON's output appears on the lines that do not begin
with oc>
Code: Select all
oc>create soma
oc>access soma
oc>insert hh
oc>units(&ina(0.5))
mA/cm2
oc>objref foo
oc>foo = new IClamp(0.5)
oc>units(&foo.i)
nA
oc>
button in which the name of the variable of interest appears; its units will
appear next to it in parentheses. Example: in the context of the above model,
click on
NEURON Main Menu / Tools / Distributed Mechanisms / Viewers / Shape Name
A new window pops up; let's call this the Section Parameters tool. In this tool,
double click on the word "soma" (in the lower half of the tool's right panel). This
brings up a new panel of buttons with labels that include
L (um)
Ra (ohm-cm)
diam (um)
cm (uF/cm2)
gnabar_hh (S/cm2)
etc.
Notice that ina is not among them; this is because it is an ASSIGNED variable.
Click on the Section Parameters tool's Type button and select the item "all types".
Now double click on soma and you get three new windows; one has the label
soma(0.5) (Assigned)
just above a column of buttons which includes one that shows
ina (mA/cm2)
Re: Units, density (distributed) mechanisms, and point proce
Two questions:ted wrote:Example: in the context of the above model,Code: Select all
oc>create soma oc>access soma oc>insert hh oc>units(&ina(0.5)) mA/cm2 oc>objref foo oc>foo = new IClamp(0.5) oc>units(&foo.i) nA oc>
click on
NEURON Main Menu / Tools / Distributed Mechanisms / Viewers / Shape Name
A new window pops up; let's call this the Section Parameters tool. In this tool,
double click on the word "soma" (in the lower half of the tool's right panel). This
brings up a new panel of buttons with labels that include
L (um)
Ra (ohm-cm)
diam (um)
cm (uF/cm2)
gnabar_hh (S/cm2)
etc.
Notice that ina is not among them; this is because it is an ASSIGNED variable.
Click on the Section Parameters tool's Type button and select the item "all types".
Now double click on soma and you get three new windows; one has the label
soma(0.5) (Assigned)
just above a column of buttons which includes one that shows
ina (mA/cm2)
I am using the newest version NEURON for win xp. Is the above units note
been removed?
Also, can I ask (stupidly) where in hoc I should use "&var" instead of "var", as shown in your above sample code?
-
- Site Admin
- Posts: 6300
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Units, density (distributed) mechanisms, and point proce
Not sure what you mean. Have you tried it and found it not to work?I am using the newest version NEURON for win xp. Is the above units note
been removed?
Use &varname whenever a func or proc expects "call by reference" instead of "call byAlso, can I ask (stupidly) where in hoc I should use "&var" instead of "var", as shown in your above sample code?
value." If you wrote the func or proc yourself, you'll know what it expects. Otherwise,
check the Programmer's Reference.
Under MSWin, installing NEURON also installs the Programmer's Reference.
Click on Documentation in the NEURON program group. Look in the alphabetical
listing for units. It's also viewable/downloadable from the Documentation page at
NEURON's WWW site
http://www.neuron.yale.edu/neuron/docs
--Ted
Re: Units, density (distributed) mechanisms, and point proce
En, I tried the above and found that there's no units listed in the panel.ted wrote:Not sure what you mean. Have you tried it and found it not to work?I am using the newest version NEURON for win xp. Is the above units note
been removed?
Today I have another look and find that there are units for most buttons
except "v".
Never mind. :)
Thanks a lot!Use &varname whenever a func or proc expects "call by reference" instead of "call by
value." If you wrote the func or proc yourself, you'll know what it expects. Otherwise,
check the Programmer's Reference.
Under MSWin, installing NEURON also installs the Programmer's Reference.
Click on Documentation in the NEURON program group. Look in the alphabetical
listing for units. It's also viewable/downloadable from the Documentation page at
NEURON's WWW site
http://www.neuron.yale.edu/neuron/docs
--Ted
-
- Site Admin
- Posts: 6300
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Units, density (distributed) mechanisms, and point proce
units() doesn't reply by printing stuff in a GUI window. It prints to NEURON's xterm,En, I tried the above and found that there's no units listed in the panel.
just like the example that I posted.
So you followed the example I posted, exactly as shown, and got no reply at all?
You literally typed each hoc command, starting with
create soma
and ending with
units(&foo.i)
and hoc returned nothing whatsoever when you typed the two units() commands?
Perhaps you have discovered an obscure bug--please reply with a copy of your
entire exchange with hoc
--Ted
Re: Units, density (distributed) mechanisms, and point proce
Thanks, never mind, units works exactly as you said. I simply meant that I did not find the units for v and i_cap on the gui panel.ted wrote:units() doesn't reply by printing stuff in a GUI window. It prints to NEURON's xterm,En, I tried the above and found that there's no units listed in the panel.
just like the example that I posted.
So you followed the example I posted, exactly as shown, and got no reply at all?
You literally typed each hoc command, starting with
create soma
and ending with
units(&foo.i)
and hoc returned nothing whatsoever when you typed the two units() commands?
Perhaps you have discovered an obscure bug--please reply with a copy of your
entire exchange with hoc
--Ted