Dear Itensor users
I have tried to reproduce the density of the 1D Bose-Hubbard model using dmrg without success. Following are the Hamiltonian and the measurements I used for the simulations (I skip some not relevant parts).
auto sites = Boson(L, {"MaxOcc=", 5, "ConserveQNs", true, "ConserveNb", false});
auto ampo = AutoMPO(sites);
for (int i = 1; i < L; i += 1)
{
ampo += - U / 2, "N", i;
ampo += -mu, "N", i;
ampo += U / 2, "N", i, "N", i;
ampo += -t, "Adag", i + 1, "A", i;
ampo += -t, "Adag", i, "A", i + 1;
}
ampo += U/2, "N", L, "N", L;
ampo += - U/2, "N", L;
ampo += -mu, "N", L;
auto H = toMPO(ampo);
auto state = InitState(sites);
for (int i : range1(L))
{
state.set(i, "1");
}
auto psi0 = randomMPS(state);
auto [energy, psi] = dmrg(H, psi0, sweeps, "Quiet");
fptr = fopen(argv[6],"a");
auto ampo_a = AutoMPO(sites);
auto ampo_1 = AutoMPO(sites);
for (int i = 1; i <= L; i++)
{
ampo_a += 1, "N", i;
ampo_1 += 1, "A", i;
}
auto ope = toMPO(ampo_a);
auto ope1 = toMPO(ampo_1);
fprintf(fptr,"%.12f %.12f\n",inner(psi,ope,psi),inner(psi,ope1,psi));
Any help will be greatly appreciated.
Sincerely,
FJ