Page 1 of 1

question about tdvp

Posted: 08 Apr 2019, 09:18
by QichengTang
Hi, everyone.

I'm trying to do tdvp, but there are something in the original paper which I cannot understand.

Firstly, why the projector in this form? I know the projector is something like \(1 - \sum_N |\psi_N><\psi_N|\), but what's the target space here, it seems like we project it onto a basis ororthogonal to the original wave-function. I can understand this minus part in two-site tdvp, it's just minus a on-site interaction (since we counter twice on-site interaction in two-site update), is this true?

Secondly, what's the zero-site Hamiltonian? I didn't do the one-site dmrg (I always do the two-site dmrg) before, so I have no knowledge about this. In tenpy, it's just the singular value, but I do not know why we need to minus the singular value. Is this the same in the two-site tdvp? If so, there's a question: in one-site update, we actually only update one singular value in one time. From this reason, I don't know why we need to minus the singular value, or it's different from the two-site tdvp?

Thirdly, if the two-site tdvp is what I said "just minus a on-site interaction", why not simply do lanczos for \(H_{bond}^i - H_{one-site}^{i+1} \otimes Id^i\). In fact, this's what we did before in tebd, it will be much faster than do lanczos twice (one for \(H_{bond}\), another for \(H_{one-site}\)), or I'm wrong with something?

Thanks, Qicheng

Re: question about tdvp

Posted: 11 Apr 2019, 15:17
by mpsforphysics
Hi Qicheng,

In order to answer your questions, I think it is best to go back to the mathematical construction behind TDVP. In my opinion, this is the clearest in the paper entitled "Unifying time evolution and optimization with matrix product states" (arXiv:1408.5056) from Jutho Haegeman et al.

The general idea is to insert a MPS with a given bond dimension \(\chi\) as an ansatz in the Schroedinger equation and to solve it for this ansatz. In order to illustrate, let's do it for three site:
\(\partial_t \sum_{s_1,s_2,s_3} A^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3>=-i H\sum_{s_1,s_2,s_3} A^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3>\) with \(\hbar=1\).
This gives us:
\( \sum_{s_1,s_2,s_3} \dot{A}^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3>+A^{s_1}\dot{A}^{s_2}A^{s_3} |s_1,s_2,s_3>+A^{s_1}A^{s_2}\dot{A}^{s_3} |s_1,s_2,s_3>=-i H\sum_{s_1,s_2,s_3} A^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3> \space (eq\space1)\)
where \(\dot{A}^{s_i}\) is the derivative with respect to time of \(A^{s_i}\).
Two remarks about equation 1:
  • 1. We do not know the derivative of the tensor a priori. Therefore the algorithm has to find them before integrating them in order to obtain \(A^{s_i}(t)\)
  • 2. Equation 1 is not really what we want since the left hand side does not leave on the same space than the right hand side. Indeed, the Hamiltonian applied to the MPS will increase the bond dimension.
Taking into account remark 2 above, let me rewrite equation 1 correctly, before answering your first question:
\( \sum_{s_1,s_2,s_3} \dot{A}^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3>+A^{s_1}\dot{A}^{s_2}A^{s_3} |s_1,s_2,s_3>+A^{s_1}A^{s_2}\dot{A}^{s_3} |s_1,s_2,s_3>=-i P_T H\sum_{s_1,s_2,s_3} A^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3> \space (eq\space1*)\)
where \(P_T\) is called the projector on the tangent space.
Firstly, why the projector in this form? [...]it seems like we project it onto a basis ororthogonal to the original wave-function.
\(\rightarrow\) We project on the tangent space i.e. the space of the vector of the forms:
\( \sum_{s_1,s_2,s_3} B^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3>+A^{s_1}B^{s_2}A^{s_3} |s_1,s_2,s_3>+A^{s_1}A^{s_2}B^{s_3} |s_1,s_2,s_3>\) where \(B^{s_i}\) can be any tensor of compatible shape. Note that the left hand side of equations 1 and 1* belong to this space. Adding the projection allow the time evolution to stay confined in the tangent space.
The derivation of the precise form of the projector is too long to be explained here, but I refer to the supplementary material of the paper mentioned above for the details. The general idea is to find the vector of the tangent space which is the closest to \(-iH\sum_{s_1,s_2,s_3} A^{s_1}A^{s_2}A^{s_3} |s_1,s_2,s_3>\) (using the usual norm as a measure of the distance between two vectors).
I can understand this minus part in two-site tdvp, it's just minus a on-site interaction (since we counter twice on-site interaction in two-site update), is this true?
\(\rightarrow\) Well... things are a bit compicated here. Once we find the projector on the tangent space, we want to integrate the equation of motion (see remark 1 above). It turns out that the projetor can be written elegantly as the sum over all sites of two terms (this is just a mathematical fact, nothing deep about it, the only way to see it is to go through the proof). The problem is that you get 2 N coupled differential equations. The variables are:
  • \(A_C(n,t)\): the tensor on site n in left canonical form
  • \(C(n,t)\): the singular value at bound n
The question is now how do you solve an equation of the form:
\(
\dot{x}=f(x,y)
\)
\(
\dot{y}=g(x,y)
\) ?
Answer: First integrate the first line with small dt for y constant \(\dot{x}=f(x(t),y(t))\). Then integrate the second one using but using the update \(x(t+dt)\): \(\dot{y}=g(x(t+dt),y(t))\). This is called a splitting method, which is a good approximation if \(dt\) is small. We do the same in TDVP, which answer your last question:
Thirdly, if the two-site tdvp is what I said "just minus a on-site interaction", why not simply do lanczos for \(H_{ibond}−H_{i+1}\)one−site⊗Idi
We need first to update the tensor, then the singular value, as we did with x and y in the example above.
Lastly:
From this reason, I don't know why we need to minus the singular value, or it's different from the two-site tdvp?
The principle behind the two site TDVP is the same, except you take the derivative of two tensors at a time in equation (1*). Instead of updating only a singular value, you will update a singular value plus the tensor on the left side. The minus sign just comes from the form of the projector.

I hope this is helpful, but if you really want to understand everything 100%, the best is to read the paper.
You can also look at the following lectures notes arXiv:1810.07006 which are interesting.

Re: question about tdvp

Posted: 20 Apr 2019, 17:13
by QichengTang
mpsforphysics, thx for you reply!

The lecture note arXiv:1810.07006 is very good!