0 votes
asked by (230 points)

I would like to do an infinite DMRG implementation for a fermionic Hamiltonian with spin. It is not clear to me how to construct an MPO for this model. I have gone through the sample file Heisenberg .h, but it would be really helpful if you could point me to some documentation or sample code on implementing iDMRG for fermions.

I want to be able to get the correlations in the asymptotic limit so is it better to do finite DMRG and a finite-size scaling or should I use infinite dmrg for this purpose? Also will iDMRG algorithm work for systems with impurities ?

Thank You!

1 Answer

+1 vote
answered by (14.1k points)

I'll give a quick answer and I'm sure Miles can expand on it. You would have to make the MPO manually as explained here: http://itensor.org/docs.cgi?page=tutorials/MPO

There is an open issue about making this more automated with AutoMPO but we haven't incorporated it yet: https://github.com/ITensor/ITensor/pull/161

However, I would definitely suggest trying out finite DMRG and using finite-size scaling first. It will be a lot easier to set up, and there isn't much of a disadvantage.

To answer the question about impurities, the standard iDMRG algorithm is not designed for impurities. I think the way to do it would be to first solve the problem with iDMRG without the impurity, then solve the impurity problem on a "finite" system using the solution from iDMRG to set the boundary conditions.

commented by (230 points)
Thank You for the answer and clarifications. I think I'll do a finite-size scaling analysis first and see if I'm getting some reliable results.  When I go to this link 'http://itensor.org/docs.cgi?page=tutorials/handMPO&vers=cppv3' to learn how to construct MPO manually it says 'Documentation file not found'.

Best Regards
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.