seemps.evolution.runge_kutta_fehlberg#

seemps.evolution.runge_kutta_fehlberg(H: TypeAliasForwardRef('~seemps.operators.MPO') | Callable[[float, MPS], MPS], time: float | tuple[float | int | floating | integer, float | int | floating | integer] | Sequence[float | int | floating | integer] | ndarray[tuple[Any, ...], dtype[_ScalarT]], state: MPS, steps: int = 1000, tolerance: float = 1e-8, strategy: Strategy = DEFAULT_STRATEGY, callback: Callable[[float, MPS], Any] | None = None, itime: bool = False) TypeAliasForwardRef('~seemps.state.MPS') | list[Any][source]#

Solve a Schrodinger equation using a fourth order Runge-Kutta method.

See seemps.evolution.euler() for a description of the function arguments that are not described below and the function’s output.

Parameters:
HMPO | Callback[[float, MPS], MPS]

Hamiltonian in MPO form, or a function that takes the time \(t\) and a MPS and transforms it as in \(H(t)\psi\)

tolerancefloat, default = 1e-8

Tolerance for determination of evolution step.