+1 vote
asked by (230 points)

I am working with a Heisenberg spin-1 AF chain, trying to get the out-of-time correlators for z-components of the spins at different sites so that I can construct the spectral function. More explicitly, I am trying to calculate objects of the form

e^{i E_0 t} <0|S^z_i e^{-i H t} S^z_j |0>

In the correlators example http://itensor.org/docs.cgi?page=tutorials/correlations the MPS are turned into ITensor objects so that indices can be contracted. However, we can only time evolve MPS (I am using FitApplyMPO). I need to apply Sz_j before time evolving.. How can I accomplish this? I keep on getting errors.

Thanks so much for your help!

1 Answer

+1 vote
answered by (70.1k points)

Hi jamarks,
So you have the right idea, namely that you should apply @@S^z_j@@ to your MPS, then time evolve it, then measure @@S^z_i@@ after time evolving (and by measure, I mean compute @@S^z_i@@ "sandwiched" between your original state "0" on one side and your time-evolved state on the other side).

To apply @@S^z_j@@ to an MPS, all you need to do is this:

psi.Aref(j) *= sites.op("Sz",j);

The first line gets the @@S^z_j@@ operator from the site set "sites" and contracts it with the jth "A" tensor or MPS tensor of the MPS psi.

The second line removes the prime on the site index that results from the first line, since site operators have one unprimed index and one primed index by our library's convention.

Hope that helps!


commented by (230 points)
Thanks so much! That was exactly what I needed
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.