tdvp
full name: tenpy.algorithms.tdvp
parent module:
tenpy.algorithms
type: module
Classes
|
Engine for the single-site TDVP algorithm. |
|
Time dependent variational principle algorithm for MPS. |
|
Variant of |
|
Variant of |
|
Engine for the two-site TDVP algorithm. |
Module description
Time Dependant Variational Principle (TDVP) with MPS (finite version only).
The TDVP MPS algorithm was first proposed by [haegeman2011]. However the stability of the algorithm was later improved in [haegeman2016], that we are following in this implementation. The general idea of the algorithm is to project the quantum time evolution in the manyfold of MPS with a given bond dimension. Compared to e.g. TEBD, the algorithm has several advantages: e.g. it conserves the unitarity of the time evolution and the energy (for the single-site version), and it is suitable for time evolution of Hamiltonian with arbitrary long range in the form of MPOs. We have implemented:
The one-site formulation following the TDVP principle in
SingleSiteTDVPEngine
, which does not allow for growth of the bond dimension.The two-site algorithm in the
TwoSiteTDVPEngine
, which does allow the bond dimension to grow - but requires truncation as in the TEBD case, and is no longer strictly TDVP, i.e. it does not strictly preserve the energy.
Much of the code is very similar to DMRG, and also based on the
Sweep
class.
Changed in version 0.10.0: The interface changed compared to version 0.9.0:
Just TDVPEngine
will result in a error.
Use SingleSiteTDVPEngine
or TwoSiteTDVPEngine
instead.
Todo
extend code to infinite MPS
Todo
allow for increasing bond dimension in SingleSiteTDVPEngine, similar to DMRG Mixer