what is the minimum value that can be assigned to a section

The basics of how to develop, test, and use models.
Post Reply
edaneshi
Posts: 12
Joined: Wed Oct 09, 2013 5:10 pm

what is the minimum value that can be assigned to a section

Post by edaneshi » Tue Oct 20, 2015 10:01 pm

Dears,

I was wondering what is the minimum value that can be assigned to a section in NEURON without inducing computational problems?
I want to model a kind of injury in neurons. I have a model of an axon with three (types) sections in internodal regions like this:
Type 1: A section with user-defined properties of a normal internodal region (Length = A)
Type 2: A section with user-defined properties of an injured internodal region (Length = B)
Type 3: A section with user-defined properties of a normal internodal region (Length = C)

I assume when my axon is intact, B value should be equal to 0. When Injury level increases, I increase B value and reduce A and C values each by B/2. Therefore, the total length of my axon remains constant. However, since it is not possible to to assign L=0 to a section, I assigned 0.000000001 to the injured region.

To test my model and make sure that I am not inducing any computational error because of the very small section, I designed a simple experiment as follow:
I assigned the same properties to all internodal sections. Basically other than section's length, Type 1, Type 2 and Type 3 are exactly the same components.
However, I see slightly different results (Conduction velocity) when I run my simulations for these two cases:

Case 1:
1- B= 0.000000001
2- Total length between the nodes which are used for conduction velocity measurement = X + 0.000000001

Case 2:
1- B= 0.5
2- Total length between the nodes which are used for conduction velocity measurement = X - 0.000000001;

In both cases, when I measured the distance between two nodes that are used for conduction velocity measurement using distance(x), I got the same results which was equal to X. In theory, these two axonal models, are exactly the same and they should generate the same results. However, conduction velocity varies by about 5% in my simulations.

Interestingly, if I set B=0.5 and then increase B value (B=1.5 or etc.), I do not see any difference in my results. It seems that there is a problem with very small values of B.

Thank you in advance for your help!

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

Re: what is the minimum value that can be assigned to a sect

Post by ted » Wed Oct 21, 2015 1:44 am

You are asking entirely the wrong question. The real problem is that your approach is "dirty." I use this adjective by analogy to the way it is used to describe drugs that produce a multitude of effects. You naturally think that all you are doing is introducing an "injured" region into your computational model, but your approach actually changes all the parameters of the model. Why? Change the length of the "injured" region in the way you propose, and you also change the surface area of every compartment in your model. This introduces a big confound that complicates interpretation of simulation results.

How to avoid this problem? First, make sure that every section in your model uses an odd value for nseg (why?), preferably one that is based on the d_lambda rule. Second, for the section that is to be lesioned, set nseg to an odd value that is large enough that your "smallest injured length" is whatever you need it to be (presumably this will be larger than the value recommended by the d_lambda rule). Third, lesion only the segments that are centered on 0.5. The minimum injured length will thus be the segment that is located at 0.5; the next larger injured length will include this segment and its two adjacent neighbors, etc..

You also need to make sure that the model is long enough that you can reliably determine conduction velocity to the degree of precision that you require. This means that conduction delay must be measured over a length that is not affected either by spread of the stimulus current that initiates the spike, or by the sealed end effect at the opposite end of the axon. What have you done to avoid such effects? How did you decide what stimulus amplitude and duration to use to initiate the spike? Also, how are you determining when the spike passes a particular point along the model axon? Are you identifying the latency of the spike peak, or what? And how do you deal with the fact that time steps are of finite duration? Maybe you have done all these things correctly, but it would be important for others to know (1) that these are important considerations, and (2) how you dealt with them. When it comes time to write up your results for publication, expect that any PI or reviewer worth his or her salt will want your answers to these questions.

edaneshi
Posts: 12
Joined: Wed Oct 09, 2013 5:10 pm

Re: what is the minimum value that can be assigned to a sect

Post by edaneshi » Wed Oct 21, 2015 2:18 pm

Dear Dr. Carnevale,

Thank you very much for your reply. Here I explain my rational for using this method and I would appreciate it if you could let me know which part is wrong:

Each section is a cylinder in my model. As far as I know, the surface area in terminal nodes (x=0,1) is zero. Therefore, the surface area of each section would be 2*Pi*r*L which r and L are axonal radius and section's length respectively. In this case, r is constant and is the same for all sections. Therefore, if we have 3 shorter (A,B,C) sections instead of a long (A+B+C) section, we are not changing the surface area of the axon. I understand your concern about changing the surface area of each individual section in my model and you are right. Some axonal mechanisms such as ionic currents depend on axonal surface value. However, if the properties of all three smaller sections be the same, then it should not make any difference in the total ionic current (I1+I2+I3=I).

As I mentioned in my last post, I don't observe any problem or inconsistency in my measurements when my middle section is longer than a certain threshold. From that point, changing the A,B or C values (While A+B+C = constant) doesn't change conduction velocity. I only see the problem when B has a very small value. It results in a small increase in conduction velocity (<5%).

You also need to make sure that the model is long enough that you can reliably determine conduction velocity to the degree of precision that you require. This means that conduction delay must be measured over a length that is not affected either by spread of the stimulus current that initiates the spike, or by the sealed end effect at the opposite end of the axon. What have you done to avoid such effects? How did you decide what stimulus amplitude and duration to use to initiate the spike? Also, how are you determining when the spike passes a particular point along the model axon? Are you identifying the latency of the spike peak, or what? And how do you deal with the fact that time steps are of finite duration? Maybe you have done all these things correctly, but it would be important for others to know (1) that these are important considerations, and (2) how you dealt with them. When it comes time to write up your results for publication, expect that any PI or reviewer worth his or her salt will want your answers to these questions.
You are absolutely right and thanks for reminding me of these issues. I actually had this problem before and asked this question from you:
viewtopic.php?f=15&t=3167

For consistency and being able to compare my results with previous studies (Mine and some other researchers), I have to keep my axon quite short (21 nodes). However, I tried to record voltage and current values far from the stimulus point and axonal ends. The stimulus amplitude and duration are set based on previous literature. I record time and voltage values at each time step. Spike peaks are used for measuring conduction velocity. I identify spike peaks by finding the maximum voltage value at each point along my axon. As you said, all these details should be reported in a publication (Although a lot of old and recent publications do not include this information in their manuscript!!) to make the results reproducible!

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

Re: what is the minimum value that can be assigned to a sect

Post by ted » Wed Oct 21, 2015 11:01 pm

edaneshi wrote:I would appreciate it if you could let me know which part is wrong
Did that, not sure how to be more explicit. You might find it more compelling to draw an equivalent circuit and calculate the capacitances of the individual compartments, and the axial resistances that separate them.
For consistency and being able to compare my results with previous studies (Mine and some other researchers), I have to keep my axon quite short (21 nodes).
Is that long enough?
The stimulus amplitude and duration are set based on previous literature.
Precedence is not itself a guarantee of correctness. The briefer the stimulus is, the smaller will be the distance down the axon that the stimulus charge will spread, and the shorter the region over which charge spread will contaminate results. A good rule of thumb is to set duration as short as possible (i.e. equal to dt), adujst amplitude to find firing threshold, then use 2x that amplitude as the stimulus for the experiment on which you will base your calculation of conduction velocity. This is based on a common practice used for determination of peripheral nerve conduction velocity in the clinical setting.
Spike peaks are used for measuring conduction velocity.
With fixed time step simulation, spike peaks are always off by +- dt/2, so conduction delay over any given distance is always off by +- dt even if you set secondorder to 1 or 2. You could improve accuracy setting secondorder to 1 or 2, then identifying the first time t1 at which v rises above some threshold (0 mV will do for spikes that have a healthy overshoot) and estimating the time of threshold crossing from linear interpolation between the point at t1 and the immediately preceding point. Since v is calculated with second order accuracy, linear interpolation to estimate the times of "threshold" crossing are also second order accurate, and so will be your calculated conduction velocity.

Post Reply