Modelling a chain of HH cell with myelinated axon

When Python is the interpreter, what is a good
design for the interface to the basic NEURON

Moderator: hines

Site Admin
Posts: 5918
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine

Re: Modelling a chain of HH cell with myelinated axon

Post by ted »

Before addressing fac or l2a(), note that NEURON has a concept called "currently accessed section" that allows one to write code that refers to parameters and variables that belong to a particular section without having to specifically name a particular section in the same line.

forall is an iterator in hoc that allows you to write a statement of the form

forall statement

which will be executed like so:

Code: Select all

for each section that exists
  make that section the currently accessed section
    execute statement

Code: Select all

	forall {
		Ra = 1.26e8 * fac
iterates over each section that exists and assigns the value

1.26e8 * fac

to that section's cytoplasmic resistivity parameter Ra.

Now about fac.

In the term fac used in cable.hoc is not a function. It is a scale factor used to convert
"longitudinal resistance along a cylinder of length 1 cm"
bulk resistivity of cytoplasm in units of ohm cm, which is the resistance between the parallel faces of a 1 cm cube of cytoplasm. Brill et al. did not report the bulk resistivity of cytoplasm in their model. Instead, they reported the longitudinal resistance of their model axon in units of ohm/cm--in other words, resistance, in ohms, per length of their axon, in cm. If the cross-sectional area of their axon was 1 cm2, then the longitudinal resistance of a 1 cm length of their axon would be numerically identical to cytoplasmic resistivity. But if their axon's cross-sectional area were k cm2, then their longitudinal resistance parameter would be 1/k times the numerical value of cytoplasmic resistivity (bigger cross-sectional area means less resistance, smaller cross-sectional area means more resistance), and the way to get cytoplasmic resistivity from their longitudinal resistance parameter would be to multiply their parameter by k.

fac = PI*diam^2/4 * 1e-8

is the cross sectional area, in cm2, of a cylinder with diameter diam (in um).
1.26 * 10^8 is their longitudinal resistance parameter in ohm/cm (they called it "axoplasmic resistance per unit axon length, and it is, as long as your unit of length is 1 cm).

So that's why Ra (cytoplasmic resistivity) is calculated as

Ra = 1.26e8 * fac.


Code: Select all

func l2a() {
  return 1/(PI*diam) * 1e4
NEURON needs specific membrane conductance, which is conductance per unit surface area of axon, i.e. S/cm2. However, Brill et al. specify myelin conductance in units of conductance per unit length of axon, in particular S/cm. To convert that to S/cm2, just divide that numerical value by the surface area of a 1 cm long axon in cm2. That area is PI * 1cm * diam * 1e-4 (the 1e-4 scale factor is needed because diam is in units of um, and 1 um = 1e-4 cm). l2a() returns 1/surface area. And, just a reminder, the value of diam in l2a() is the diameter of the section that is currently accessed.
Posts: 11
Joined: Sun Jul 19, 2020 11:20 pm

Re: Modelling a chain of HH cell with myelinated axon

Post by subash774 »

This is so helpful! Can't thank you enough. Really, thank you for all your help. I think I'm getting there now.
One final question (...I hope, you've helped me enough). What effect does nseg have on the length of the internode?
Post Reply