To do exponential integrators well we really need to up our game with expmv
methods. The following two libraries exist:
https://github.com/marcusps/ExpmV.jl
https://github.com/acroy/Expokit.jl
The first actually uses a dense normest2
so it’s not the true Higham algorithm yet and that slows it down. The latter uses a Krylov-based method, but doesn’t have all of the phi function calculations yet which are necessary for the high order methods like ETDRK4.
Though with L
coming from a spectral discretization it’s probably small and dense so it might not need these tools as much? But the lack of such tools (i.e. implement a way to choose between dense and these different expmv
s) is what is slowing down the generic DiffEq implementation of exponential integrators.