0 votes
asked by (170 points)

Hello Everyone,
In the tutorial page
I can know how to measure < | Sz2 * Sz4| >

I met a difficult in measurement of multi-site correlation such as
Sz2Sz4Sz6*Sz8 for the length of chain at N=10;

In the tutorial page
the last step is
il = commonIndex(psi.A(4),psi.A(3),Link);
C *= dag(prime(prime(psi.A(4),Site),il));

The most right dotted line will be become solid (contracted).
Then C becomes number

I tried to contract psi.A(5) and its prime and then add Sz6 *Sz8 etc.
But failed.
Could someone give any suggestions?
Thank you in advance.

commented by (170 points)
For N=4
C*= psi.A(2)*Sz_2*dag(prime(psi.A(2),Site,Link));
C*=psi.A(3)*Sz_3*dag(prime(psi.A(3),Site, Link));
print ("==========S1S2S3S4=============","\n");
print (C,"\n");
It is ok.

I still don't know how to deal with Sz2*Sz4*Sz6 or Sz2*Sz4*Sz6*Sz8
commented by (170 points)
Inserting  unit operators in the operator chain   like Sz2*I3*Sz4*I5*Sz6   works now. Thanks.

1 Answer

0 votes
answered by (30.7k points)

Thanks very much for posting a solution, and glad you figured it out!

For those looking for the answer, please see the above comments by the original poster ^

Welcome to ITensor Support Q&A, where you can ask questions and receive answers from other members of the community.

Formatting Tips:
  • To format code, indent by four spaces
  • To format inline LaTeX, surround it by @@ on both sides
  • To format LaTeX on its own line, surround it by $$ above and below
  • For LaTeX, it may be necessary to backslash-escape underscore characters to obtain proper formatting. So for example writing \sum\_i to represent a sum over i.
If you cannot register due to firewall issues (e.g. you cannot see the capcha box) please email Miles Stoudenmire to ask for an account.

To report ITensor bugs, please use the issue tracker.