So according to the paper https://journals.aps.org/prl/abstract/1 ... 113.020401 here, within certain ranges of U and V we should expect fourfold degeneracy of the first four lowest values of entanglement spectrum which signify the emergency of HI phase. I am trying to reproduce the results (more specifically Fig 3(a) in the paper) to learn how to use tenpy. But using dmrg, I cannot find this result. I am not pretty sure if I made fundamental mistakes in my code or have total misunderstand the paper.

My code is as following,

Code: Select all

```
import tenpy
from tenpy.algorithms import dmrg
from tenpy.networks.mps import MPS
from tenpy.networks.site import BosonSite
from tenpy.models.hubbard import BoseHubbardChain
tenpy.tools.misc.setup_logging(to_stdout="INFO")
L = 128
U = 5.
V =3.
mu = 0.
n_max = 2
filling = 1
model_params = {"L": L, "n_max": n_max, "filling": filling, "U": U, "V": V, "conserve": "N", "mu": mu}
M = BoseHubbardChain(model_params)
psi = MPS.from_product_state(M.lat.mps_sites(), [1]*128, bc=M.lat.bc_MPS)
dmrg_params = {"trunc_params": {"chi_max": 800, "svd_min": 1.e-10}, "mixer": True}
info = dmrg.run(psi, M, dmrg_params)
print(info["E"])
print(psi.entanglement_spectrum()[63])
```