seemps.evolution.crank_nicolson#

seemps.evolution.crank_nicolson(H: MPO, 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, tol_cgs: float = 1e-7, maxiter_cgs: int = 50, strategy: Strategy = DEFAULT_STRATEGY, callback: Callable[[float, MPS], Any] | None = None, itime: bool = False)[source]#

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

See seemps.evolution.euler() for a description of the missing function arguments and the function’s output.

Parameters:
tol_cgs: float

Tolerance of the CGS algorithm.

maxiter_cgs: int

Maximum number of iterations of the CGS algorithm.