0 votes
asked by (230 points)

I'm using the following code to calculate correlations of the type cdagup(i) cup(j) and take its log. I'm using Electron sites with {"ConserveSz=",false}

auto ampo2 = AutoMPO(sites);
auto i = 100; 
for(auto j=200;j<250;j++)
        ampo2 += 1,"Cdagup",i,"Cup",j;
        auto mpo = toMPO(ampo2);
        auto result = innerC(psi,mpo,psi);
        outfile<<i<<", "<<j<<", "<<log(abs(i-j))<<", "<<log(abs(result))<<"\n";
        ampo2 = AutoMPO(sites);


The answer depends on whether j is even or odd for a fixed i. Here is a small excerpt from the output. The log of the correlations are higher when j is odd.

i, j, Log(|i-j|), Log|cdagup(i) cup(j)| are printed below

100, 200, 4.60517, -8.32898
100, 201, 4.61512, -6.1358
100, 202, 4.62497, -8.33054
100, 203, 4.63473, -6.1581
100, 204, 4.64439, -8.33459
100, 205, 4.65396, -6.17968
100, 206, 4.66344, -8.34129
100, 207, 4.67283, -6.20057

What is the reason for this? Is this a proper way to calculate the correlations?

commented by (70.1k points)
Hi, thanks for the question. When you say it depends on whether j is even or odd, I see that you mean there is an strong oscillation in the magnitude from even to odd sites. But I guess you are saying this is not the answer you expected? A system could actually have these kind of oscillations if, say, one is close to an edge in which case there could be strong Friedel oscillations. But it could be a bug. I just wanted to make sure you think it is a bug not a physical effect - thanks.

Please log in or register to answer this question.

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.