Solvers#
Solvers are used to numerically calculate the time evolution of state vectors. They perform steps in time by integrating the time-dependent Schrodinger equation.
- class qibo.solvers.BaseSolver(dt, hamiltonian)[source]#
Basic solver that should be inherited by all solvers.
- Parameters:
dt (float) – Time step size.
hamiltonian (
qibo.hamiltonians.abstract.AbstractHamiltonian) – Hamiltonian object that the state evolves under.
- property t#
Solver’s current time.
- class qibo.solvers.TrotterizedExponential(dt, hamiltonian)[source]#
Solver that uses Trotterized exponentials.
Created automatically from the
qibo.solvers.Exponentialif the given Hamiltonian object is aqibo.hamiltonians.hamiltonians.SymbolicHamiltonian.
- class qibo.solvers.Exponential(dt, hamiltonian)[source]#
Solver that uses the matrix exponential of the Hamiltonian:
\[U(t) = e^{-i H(t) \delta t}\]Calculates the evolution operator in every step and thus is compatible with time-dependent Hamiltonians.