All Data Structures Namespaces Functions Variables Enumerations Enumerator Groups Pages
mps::TimeSolver Class Referenceabstract

General class for time evolution. More...

Inheritance diagram for mps::TimeSolver:

Public Member Functions

virtual double one_step (CMPS *P, index Dmax)=0
 Compute next time step. More...
cdouble time_step () const
 How long in time this solver advances. More...
 TimeSolver (cdouble new_dt)
 Create Solver with fixed time step. More...

Detailed Description

General class for time evolution.

A Solver is a class that approximates time evolution with MPS only for a short time.

Definition at line 35 of file time_evolve.h.

Constructor & Destructor Documentation

mps::TimeSolver::TimeSolver ( cdouble  new_dt)

Create Solver with fixed time step.

Definition at line 38 of file time_evolve.h.

Member Function Documentation

virtual double mps::TimeSolver::one_step ( CMPS P,
index  Dmax 
pure virtual

Compute next time step.

Given the state $\psi(0)$ represented by P, estimate the state at $\psi(\Delta t)$ within the space of MPS with dimension <= Dmax. P contains the output.

Implemented in mps::ArnoldiSolver, mps::ForestRuthSolver, mps::Trotter3Solver, and mps::Trotter2Solver.

cdouble mps::TimeSolver::time_step ( ) const

How long in time this solver advances.

Definition at line 47 of file time_evolve.h.