0 votes
asked by (530 points)
edited by

Dear itensor developer ,

The questions are related to https://github.com/hoihui/itebd

How one can define an initial state in iTEBD?
For example, in https://github.com/hoihui/itebd/blob/master/1503.02010.cpp
and what does mean the quantum numbers Qa=2 and Qb=3: Sys(ampo,2,3); in this code.

'Sys.step_imag(dt, 20, 0, M)' is designed to obtain the ground energy or ground state?

Thank you in advance.

1 Answer

+1 vote
answered by (32.1k points)

Hi, so unfortunately we can't provide official user support specifically for codes listed on the "ITensor codes" page. This is because those codes are written by a variety of people outside the ITensor development team, and we do not always understand their inner workings in detail.

But taking a quick look at that code, it appears that QNA and QNB are how you set an initial state. I believe that setting these creates an initial state which is a product state where each site (of the two sites) has a state defined by the quantum numbers QNA, and QNB, where these quantum numbers are defined through the IQIndex sites (but unfortunately the description of this part is vague, I agree, so you'll have to read the code or ask the code's developer).

He does describe the usage somewhat in the readme file here: https://github.com/hoihui/itebd

The line "Sys(ampo,2,3)" is defining an object of type "itebd" and calling its constructor function, which takes an AutoMPO object and two integers. The itebd type is defined as "struct itebd ..." in the itebd.h file.

Best regards,

commented by (530 points)
Anybody knows hoihui's e-mail https://github.com/hoihui?
He doesnt answer at githhub?
commented by (100 points)
Hi, I am the writer of that code and just found this.
The numbers 2, 3 in "Sys(ampo,2,3)" will be used to initialize the "SiteSet" class of each of the two sites. For example, in that code the Sites are "Hubbard", so the reference is http://itensor.org/docs.cgi?vers=cppv2&page=classes/hubbard

I do not remember why I pass numbers instead of strings for the quantum numbers. I guess at some point in the past two years, the itensor package has changed from using number to using string to initialize the SiteSet class. If I am correct, number 2 = "Up" and number 3 = "Dn".
commented by (530 points)
edited by
Thank you very much, hoi!
I have posted comments on github. Is it more convenient for you to anwer questions on github or here?
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.