Did you change the tolerance? Or Tsit5
with adaptive=false
? Most likely what’s happening is just adaptive time stepping is giving you the tolerance you requested, which is not what you were looking for.
For time-dependent Schrodinger, Magnus methods are the method people usually point to.
https://diffeq.sciml.ai/stable/solvers/nonautonomous_linear_ode/#State-Independent-Solvers
Those will use the matrix exponential but mix it with an RK scheme that is optimized by ignoring terms related to state-dependent RHS.
Notice this paper uses a Magnus method. So I guess we’re very clever.