TDVP for MPO which is not nearest-neighbor w.r.t. MPO index

How do I use this algorithm? What does that parameter do?
Post Reply
mgbukov
Posts: 3
Joined: 12 Oct 2021, 10:38

TDVP for MPO which is not nearest-neighbor w.r.t. MPO index

Post by mgbukov »

Hi Johannes,

I'd like to follow up on your explanation in github:
This issue is not a bug of TeNPy, it's a limitation of TDVP trying to keep the MPS bond dimension fixed and starting from a product state.
While SingleSite TDVP strictly keeps the MPS bond dimension fixed, two-site TDVP can increase it only if you get a non-trivial evolution (increasing the bond dimension on the given bond you evolve). This is not the case here, because you don't have nearest-neighbor interactions:

> print(H.all_coupling_terms().to_TermList())
1.00000 * Sx_2 Sx_4 +
1.00000 * Sx_3 Sx_5
e.g. when trying to evolve sites 2-3, the "Sx_4" and "Sx_5" are projected out, so the total effective H on sites 2-3 is zero.

The solution is probably to use another time evolution algorithm to initially increase the MPS bond dimension; after that TDVP should work as expected as well. Indeed, after one time step with the ExpMPOEvolution, I find that TDVP also changes total Sz.
I tried evolving with ExpMPOEvolution in the first step, and then applying TDVP works, as you said. But does this mean that, at some later time TDVP will saturate the new bond dimension, and I'll have to do another ExpMPOEvolution step, because the MPO I use is not nearest-neighbor w.r.t. the MPO index?
User avatar
Johannes
Site Admin
Posts: 413
Joined: 21 Jul 2018, 12:52
Location: TU Munich

Re: TDVP for MPO which is not nearest-neighbor w.r.t. MPO index

Post by Johannes »

You chose an artificial test case of completely decoupled spins; the spin pairs 2-4 and 3-5 will just each propagate together. This is basically a product state, except that 2-4 and 3-5 are entangled. After a single time step with the ExpMPOEvolution, the MPS bond dimension grew to include the Schmidt states for the 2-4 and 3-5 pairs, so you will be able to describe the state exactly for any later time even if you continue with single-site TDVP.

Whether it works if you include more couplings is a tricky questions. If you have only long-range couplings, an initial time step of (two-site) TDVP fail again. However, once you have sufficiently large MPS bond dimension that you no longer project out whole terms of the Hamiltonian, the two-site TDVP can add more Schmidt states as required.
Post Reply