iTDVP and canonical forms

General discussions on the ideas behind the algorithm.
Post Reply
nsherman
Posts: 7
Joined: 21 Apr 2021, 00:16

iTDVP and canonical forms

Post by nsherman »

I'm working on developing an iTDVP algorithm using TeNPy. I'm able to recycle most of the aspects from the finite TDVP code, but there are some issues when trying to insert the updated tensors to for an updated MPS. Essentially, we have a 1-site and 0-site effective Hamiltonian that we use to update the singular values, and the tensor with form "Th". Let's denote updated tensors Th' and s'. First, s' is no longer necessarily diagonal, and also Th' is no longer in its canonical form. To test this, I would expect that since Th = A-s, that Th' = A'-s', and so contracting Th' with Th'* from the left, should result in s' contracted with s'* from the left (essentially the test in the function "MPS.norm_test()"). However, this test fails, and the difference grows with the time evolution time dt.

I'm hoping maybe I can get help with the following question. Is this loss of canonical form actually a property of the iTDVP evolution procedure, or is it a bug in my code? Also, if it is a property of the iTDVP procedure, how do I then bring these tensors into the appropriate form to then create an updated MPS? Making s' diagonal can be done using an SVD, and absorbing U, V appropriately using the gauge freedom we have, but it's not as clear to me what to do with Th'.

Thank you for your time.

Best,
Nick
schrodingers_dog
Posts: 2
Joined: 23 Aug 2021, 04:01

Re: iTDVP and canonical forms

Post by schrodingers_dog »

What is your Th?
schrodingers_dog
Posts: 2
Joined: 23 Aug 2021, 04:01

Re: iTDVP and canonical forms

Post by schrodingers_dog »

Let AL denote the left canonical form of the iMPS, and AR denote the right canonical form. Let C be the two-leg center tensor. (C should be "s" in your notation.) Also the mixed-form tensor AC = AL-C = C-AR. (I believe AC is your "Th"?) Then, iTDVP updates C to C' and AC to AC'. To find AL' and AR' from AC' and C', you can use Eq. 139-142 in this https://arxiv.org/pdf/1810.07006.pdf.
Post Reply