seemps.evolution.tdvp#
- seemps.evolution.tdvp(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, strategy: Strategy = DEFAULT_STRATEGY, callback: Callable[[float, MPS], Any] | None = None, itime: bool = False)[source]#
Solve a Schrodinger equation using the Time Dependent Variational Principle (TDVP) algorithm.
- Parameters:
- H
MPO Hamiltonian in MPO form.
- time
Real|tuple[Real,Real] |Sequence[Real] Integration interval, or sequence of time steps.
- state
MPS Initial guess of the ground state.
- steps
int,default= 1000 Integration steps, if not defined by t_span.
- strategy
Strategy,default=DEFAULT_STRATEGY Truncation strategy for MPO and MPS algebra.
- callback
Callable[[float,MPS],Any] |None A callable called after each iteration (defaults to None).
- itimebool,
default=False Whether to solve the imaginary time evolution problem.
- H
- Returns:
- result
MPS|list[Any] Final state after evolution or values collected by callback
- result