You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This may be less of an issue and more of a discussion. In BrainPy's documention on numerical solvers, it is mentioned that
... we highly recommend you to use Exponential Euler methods.
... for such linear systems, the exponential Euler schema is nearly the exact solution.
This gives me the impression that Exponential Euler methods are better than the Runge-Kutta methods. However, I have checked how each numerical solver of the Hodgkin-Huxley model behaves under different integration timesteps, and I find a different result.
As we can see, the Runge-Kutta methods are quite stable with respect to the choice of dt. Yes, they do fail earlier than the Exponential Euler methods when dt gets larger; but when they work, they seems to be more robust against the change in dt. I know that other simulation software, such as NEURON, also recommands against the Runge-Kutta methods. But can this be a reason that favors Runge-Kutta methods over other methods?
I am using BrainPy 2.4.5. The full simulation code is attached below:
This is a very good comparison. This demonstrates that we need more accurate Exponential numerical methods for integrating such complex dynamics.
Welcome contributions.
For the question, can this be a reason that favors Runge-Kutta methods over other methods? RK methods are usually more computationally expensive than the Exponential Euler method. We still recommend the exp euler.
This may be less of an issue and more of a discussion. In BrainPy's documention on numerical solvers, it is mentioned that
This gives me the impression that Exponential Euler methods are better than the Runge-Kutta methods. However, I have checked how each numerical solver of the Hodgkin-Huxley model behaves under different integration timesteps, and I find a different result.
As we can see, the Runge-Kutta methods are quite stable with respect to the choice of
dt
. Yes, they do fail earlier than the Exponential Euler methods whendt
gets larger; but when they work, they seems to be more robust against the change indt
. I know that other simulation software, such as NEURON, also recommands against the Runge-Kutta methods. But can this be a reason that favors Runge-Kutta methods over other methods?I am using BrainPy 2.4.5. The full simulation code is attached below:
The text was updated successfully, but these errors were encountered: