You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The MPS has a few functions for evaluating correlation functions of the form C(j) = <A(i) B(i+j)> == <psi| A(i) B(i+j) |psi>. All of these things can also be evaluated between different MPS, C2(j) = <phi| A(i) B(i+j) |psi>.
In terms of code, this means to mostly copy the methods from the MPS, properly insert get_LP and get_RP of the environments, and use the B.conj() and one set of S from the phi instead of the psi - the tensor network contraction itself is completely analogous.
One further, slightly tricky thing is that we need to obtain dominant left/right eigenvectors of the MPSTransferMatrix to get initial LP/RP. It's probably best to do this in a class method of the MPSEnvironment, e.g. from_TM_eigenvectors.
Realizing now that the eigenvectors of the MPSEnvironment(psi, psi) are trivial identities, so this already works.
On the other hand, MPSEnvironment(psi, phi) for phi != psi has dominant TM eigenvalues < 1, so there's no point in calculating this (for infinite systems - for finite, on the hand, just MPSEnvironment(psi, phi) initialized the correct thing.
So overall we have everything we need (that makes sense).
The MPS has a few functions for evaluating correlation functions of the form
C(j) = <A(i) B(i+j)> == <psi| A(i) B(i+j) |psi>
. All of these things can also be evaluated between different MPS,C2(j) = <phi| A(i) B(i+j) |psi>
.In terms of code, this means to mostly copy the methods from the MPS, properly insert
get_LP
andget_RP
of the environments, and use theB.conj()
and one set ofS
from the phi instead of the psi - the tensor network contraction itself is completely analogous.One further, slightly tricky thing is that we need to obtain dominant left/right eigenvectors of the MPSTransferMatrix to get initial LP/RP. It's probably best to do this in a class method of the MPSEnvironment, e.g.
from_TM_eigenvectors
.Requested in https://tenpy.johannes-hauschild.de/viewtopic.php?t=276
The text was updated successfully, but these errors were encountered: