von Neumann entanglement entropy in2D

Hi, itensor team

As a newbie, I’m trying to compute a 2D kagome lattice, trying to compute its von Neumann entanglement entropy, but I seem to find that the ground state energy is hard to converge to a stable value, and the entanglement entropy obtained from each computation not only deviates from the correct value, but also are very different from each other. Even using the same parameter to calculate twice, the result of entanglement entropy are not same.

I hope to get some answers or help from the forum, so that I can better understand this problem.

Thank you all kind people.

Hi Kevinh,
Yes, if your calculation (your MPS) is not converged, then the properties you derive from it will not be converged either. So to start with, I would not focus on whether you are getting the right entanglement or not, but on how to make sure your calculation is converged.

The quantity which usually converges first is the energy, so I would start there. Some key ways to converge a challenging DMRG calculation are:

  • start by doing a large number of sweeps (say 30 sweeps) at a low bond dimension (maxdim) such as 10 or 20. These will go very fast because the bond dimension is small, but can help to lower the energy very well. Then raise the maxdim or bond dimension to a larger and larger value. This raising of the bond dimension can be done exponentially fast, so like doubling it every few sweeps.
  • turn on the “noise term” of DMRG
  • study smaller systems first before trying larger systems
  • just do a large number of sweeps, like 30, or 60, or even 80 or 100

We have written more advice here:
https://itensor.github.io/ITensors.jl/stable/faq/DMRG.html

Hi miles
Thank you very much for your reply.lt gives me a guide for what l should do next for this problem.

1 Like