I've been trying to learn more about the implementation of NEURON, so far working through the discretization of the neuron and relevant equations to have second order accuracy in space and time. The cables were easy to prove second order accuracy with using Taylor's Theorem, The NEURON Book, and "Efficient Computation of Branched Nerve Equations"(Hines 1983), but I'm stumped at the branch points. I just don't know how to center difference with more than two adjacent compartments. Any help would be greatly appreciated. So far I've read all the numerical and digital considerations in The NEURON Book, but I haven't finished the other parts yet, and I have a pretty good math background. Also, I would like to verify that the reason there is a single and not double partial derivative with respect to x on the left hand side of the main branch equation for conservation of charge is because the branch node is taken to have zero area, as it says in The NEURON Book on page 97. This doesn't make perfect sense to me either since node area is also in the equation.
Thank you for your time.
Mitchal Dichter
Maintaining Second Order Accuracy at Branch Points

 Site Admin
 Posts: 5239
 Joined: Wed May 18, 2005 4:50 pm
 Location: Yale University School of Medicine
 Contact:
Re: Maintaining Second Order Accuracy at Branch Points
Branched structures are constructed from unbranched cables (sections). As long as care is taken to connect sections together only at their 0 and 1 ends, there isn't anything at branch points to be "central differenced" and branch points are just locations at which boundary conditions are asserted. Common exceptions are the soma section, to which child sections are often attached at internal nodes, and spines, which are often attached to internal nodes of a dendritic section. The former is often seen in models based on detailed morphometric data, but accuracy degredation is small because somas are typically electrically compact (somas are very small compared to a length constant). The same is true for spines.mldichter wrote:I'm stumped at the branch points. I just don't know how to center difference with more than two adjacent compartments.
What equation is that? Conservation of charge is addressed after spatial discretization has been performed, a step that replaces the partial derivative with an algebraic term. The only derivative that remains is the first derivative of v with respect to time.the reason there is a single and not double partial derivative with respect to x on the left hand side of the main branch equation for conservation of charge
Re: Maintaining Second Order Accuracy at Branch Points
To answer your second question, the equation is (2) in "Efficient Computation of Branched Nerve Equations"(Hines 1984). Also, I've changed the date to 1984, as that is the correct date, not 1983.
http://www.neuron.yale.edu/ftp/neuron/p ... ffic84.pdf
I've been thinking about how to prove second order accuracy using boundary conditions at the branch points, but it doesn't make a lot of sense to me. The only boundary conditions I've ever encountered are fixed, predictable, and separate from the state of the system, such as the no flux boundary conditions at the ends of cables connected to nothing. The boundary conditions influence the system, but the system does not influence the boundary conditions. I don't know how to use boundary conditions at branch points because the state of the system does influence them.
By boundary conditions do you mean satisfying equations (2) in "Efficient Computation of Branched Nerve Equations"(Hines 1984)?
http://www.neuron.yale.edu/ftp/neuron/p ... ffic84.pdf
I've been thinking about how to prove second order accuracy using boundary conditions at the branch points, but it doesn't make a lot of sense to me. The only boundary conditions I've ever encountered are fixed, predictable, and separate from the state of the system, such as the no flux boundary conditions at the ends of cables connected to nothing. The boundary conditions influence the system, but the system does not influence the boundary conditions. I don't know how to use boundary conditions at branch points because the state of the system does influence them.
By boundary conditions do you mean satisfying equations (2) in "Efficient Computation of Branched Nerve Equations"(Hines 1984)?
Re: Maintaining Second Order Accuracy at Branch Points
See
http://www.neuron.yale.edu/neuron/stati ... c3p1.htm#3.
As mentioned there, it is not clear that it is truly second order correct when dx is
different. One needs to do some computational experiments where each dx is
reduced by the same factor. If the error is reduced by a square of that factor then
it would be an interesting exercise to prove it.
http://www.neuron.yale.edu/neuron/stati ... c3p1.htm#3.
As mentioned there, it is not clear that it is truly second order correct when dx is
different. One needs to do some computational experiments where each dx is
reduced by the same factor. If the error is reduced by a square of that factor then
it would be an interesting exercise to prove it.