Hello all,
I have a question to the McIntyre axon model described in „Modeling the Excitability of Mammalian Nerve Fibers “ McIntyre
2002.
In the file AXNODE.mod the equation for alpha_m of the fast sodium current differs in the model downloaded at ModelDB from the published version (McIntyre 2002). Which values should I use?
Now, I would like to change the axon to get a fiber diameter of 2 µm as described in „Cellular Effects of Deep Brain Stimulation: Model-Based Analysis of
Activation and Inhibition
“ McIntyre
2003. I changed all the parameters in the downloaded model according to McIntyre 2003 and I would like to incorporate the fast K+ channel in the FLUT segments with a mod file.
Could someone assist me with that?
Thanks.
Regards
Help with McIntyre axon model
Moderator: tom_morse
-
- Site Admin
- Posts: 6384
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Help with McIntyre axon model
Ask the authors.nevo wrote:In the file AXNODE.mod the equation for alpha_m of the fast sodium current differs in the model downloaded at ModelDB from the published version (McIntyre 2002). Which values should I use?
If you are asking how to add a particular voltage-gated channel to a model, the answer has two steps.Now, I would like to change the axon to get a fiber diameter of 2 µm as described in „Cellular Effects of Deep Brain Stimulation: Model-Based Analysis of
Activation and Inhibition
“ McIntyre
2003. I changed all the parameters in the downloaded model according to McIntyre 2003 and I would like to incorporate the fast K+ channel in the FLUT segments with a mod file.
Could someone assist me with that?
1. First make sure that NEURON knows about the voltage-gated channel. For mechanisms other than pas or hh, this means that (a) the NMODL file for the channel should be present in the same directory as the hoc file that you are using to start the model, and (b) you must compile it by running mknrndll or nrnivmodl on that directory. If you don't know how to do (b), look in NEURON's FAQ list for instructions on compiling mod files.
2. Edit the hoc code that specifies the model so that it inserts the desired mechanism into the desired sections and assigns the desired values to channel density. The trick here is to make sure that your changes accomplish what you intend, and don't break anything. If you tell me exactly which sections you want to add a mechanism to, the name of the mechanism, and the channel density that you need, I'll take a look at their code and suggest how you might proceed. In the meantime, it would be a good idea for you to learn something more about NEURON so that this doesn't seem like black magic to you. A good place to start would be to read chapters 5 and 6 of The NEURON Book, or failing that, our paper "The NEURON eimulation environment" that was published in Neural Computation (you can get this from the Documentation page at http://www.neuron.yale.edu).
Re: Help with McIntyre axon model
I have a couple of questions about this model. After reading the FAQ I ran modlunit on the AXNODE.mod before compiling it.
Looking inside the mod file I find a large section with UNITSOFF ... UNITSON which includes the assignment to tau_mp. Since this model has been used in a number of papers, I assume that it actually works and that the author just didn't want to bother with the units? I was able to compile it and insert it into a section from python.
I'm also wondering why the authors created 6 STIN sections in series (with nseg=1 in each) rather than a single longer STIN section with a larger nseg. I don't see any reason to add the extra sections.
Thanks.
Code: Select all
~/Downloads/NEURON/MRGaxon$ modlunit AXNODE.mod
model 1.1.1.1 1994/10/12 17:22:51
Checking units of AXNODE.mod
units: 1
units: 1000 /sec
The units of the previous two expressions are not conformable
at line 106 in file AXNODE.mod
mp'= (mp_inf - mp) / tau_mp<<ERROR>>
I'm also wondering why the authors created 6 STIN sections in series (with nseg=1 in each) rather than a single longer STIN section with a larger nseg. I don't see any reason to add the extra sections.
Thanks.
-
- Site Admin
- Posts: 6384
- Joined: Wed May 18, 2005 4:50 pm
- Location: Yale University School of Medicine
- Contact:
Re: Help with McIntyre axon model
modlunit checks for units inconsistencies and also detects syntax errors. Note that some units inconsistencies are more "apparrent" and benign than others. Such is the case with this particular one:as long as tau_mp is in units of ms (milliseconds). To eliminate the error message, in the ASSIGNED block change the declaration
tau_mp
to
tau_mp (ms)
Note that modlunit stops at the first error it encounters. If a file contains many errors, it is necessary to
q10_1 = 2.2 ^ ((celsius-20 (degC))/(10 (degC)))
The result might be satisfying from one perspective, but applying such fixes everywhere that modlunit demands them would impair the readability of the code. Most of the formulas that are required by HH-style model specifications are pretty straightforward, and visual inspection is sufficient to reassure one that units are indeed consistent.
The most common serious errors are improper placement or omission of parentheses (usually causes gross code failure), or the more difficult to detect decimal points in the wrong place or +/- substitutions. modlunit might help detect the former, but it won't help with the latter.
Code: Select all
~/Downloads/NEURON/MRGaxon$ modlunit AXNODE.mod
model 1.1.1.1 1994/10/12 17:22:51
Checking units of AXNODE.mod
units: 1
units: 1000 /sec
The units of the previous two expressions are not conformable
at line 106 in file AXNODE.mod
mp'= (mp_inf - mp) / tau_mp<<ERROR>>
tau_mp
to
tau_mp (ms)
Note that modlunit stops at the first error it encounters. If a file contains many errors, it is necessary to
Code: Select all
repeat
run modlunit
fix the error it detected
until it detects no error
One would like to think so. You could remove the UNITSOFF...UNITSON, then check for and fix all units inconsistencies. For example, the formula for q10_1 would becomeLooking inside the mod file I find a large section with UNITSOFF ... UNITSON which includes the assignment to tau_mp. Since this model has been used in a number of papers, I assume that it actually works and that the author just didn't want to bother with the units?
q10_1 = 2.2 ^ ((celsius-20 (degC))/(10 (degC)))
The result might be satisfying from one perspective, but applying such fixes everywhere that modlunit demands them would impair the readability of the code. Most of the formulas that are required by HH-style model specifications are pretty straightforward, and visual inspection is sufficient to reassure one that units are indeed consistent.
The most common serious errors are improper placement or omission of parentheses (usually causes gross code failure), or the more difficult to detect decimal points in the wrong place or +/- substitutions. modlunit might help detect the former, but it won't help with the latter.
It is always difficult to infer motivation. Maybe they were thinking about making these STIN sections have different lengths, or different values of Ra (cytoplasmic resistivity is a "section variable" i.e. applies to all of a section's segments), maybe 6 was the right number to reproduce a particular observation, or maybe it was pure accident. The only way to know is to ask the authors.I'm also wondering why the authors created 6 STIN sections in series (with nseg=1 in each) rather than a single longer STIN section with a larger nseg. I don't see any reason to add the extra sections.