Possible issue with single-site TDVP

How do I use this algorithm? What does that parameter do?
Post Reply
elmer
Posts: 1
Joined: 26 Apr 2019, 13:43

Possible issue with single-site TDVP

Post by elmer »

When running your example script for TDVP (e_tdvp.py), then if I understand correctly the script performs brief time evolution of the isotropic Heisenberg chain with conserved Sz, first using two-site TDVP and then using single-site TDVP (the energy-conserving version). I obtain some confusing results from the second part (the first part looks sensible). Something appears to be wrong if you look at the time evolution of the spins, for example by just looking at each time step for:

print(psi.expectation_value("Sz"))

The summed expectation value of Sz is correctly conserved (to good approximation) in the first part, but is lost when switching to single-site TDVP, and spin densities change dramatically at the time step of the switch.

Also, it is not true in general that single-site TDVP conserves the entropy. The bond dimension sets a maximum for the possible von Neumann entropy, which is proportional to the log of the bond dimension, but that maximum is far higher than the value reached in just the few small time steps of the example script. The maximum entropy is a feature of the cutoff in the entanglement spectrum; the maximum is reached when all values of the entanglement spectrum are equal. Hence, this is not specific to TDVP.

Python version: 3.5.3 + latest Numpy/Scipy
Tenpy version: 0.4.0

User avatar
Johannes
Site Admin
Posts: 127
Joined: 21 Jul 2018, 12:52
Location: UC Berkeley

Re: Possible issue with single-site TDVP

Post by Johannes »

Thanks to @mpsforphysics for fixing this!

Post Reply