arbor icon indicating copy to clipboard operation
arbor copied to clipboard

Second order solver for FVM cable cell voltage.

Open halfflat opened this issue 6 years ago • 1 comments

In order to meet a similar accuracy to NEURON for a given δt, we need to have a second-order solver. Proposal:

  • Strang splitting for voltage vs mechanism state.
  • Voltage integration via implicit trapezoidal method, implemented as an explicit Euler step followed by an implicit Euler step.

The two can be combined by performing the explicit Euler step for voltage, then the state integration, and then finally the implicit Euler step for voltage. (See e.g. Hundsdorfer 1998 doi:10.1090/S0025-5718-98-00984-3)

When combined with second order solvers for state (via mechanism generation with modcc) we should have an overall second order integrator.

halfflat avatar Apr 03 '19 16:04 halfflat

In order to avoid twice-computing the currents in each integration time step, we need to be able to apply a 'current delta' on event delivery. Work on this is ongoing in a development branch. Current status is the CPU implementation of the required modcc changes works, but incurs a small performance penalty (circa 2-3%) due to extra work required in event delivery.

halfflat avatar Apr 17 '19 10:04 halfflat