I was looking into the convergence of the ground state energy in DMRG as a function of NUMSTATES. For instance, on a 1D chain of spinless fermions with open boundary conditions at half-filling (L=36, N_TOTAL=12) and interaction strength V0=4, the ground state energies after 30 sweeps are
M=2 E0 = -8.6661
M=4 E0 = -9.6249
M=8 E0 = -9.7115
M=100 E0 = -9.7133
The truncation error for the M=2 run was just 0.00167, so it is surprising (to me, at lest) that the energy is off by more than 10 percent. A discrepancy of 10 percent or more occurs for chains of different lengths and interaction potentials of different strengths. Doing 100 sweeps instead of 30 has no effect on the first 5 digits of the M=2 results. Nor does increasing NUM_WARMUP_STATES to 100. One possibility is that the calculation is getting stuck in a local minimum.
Does the ALPS DMRG routine have any method for avoiding local minima? For instance, adding a small amount of noise to the calculation to allow tunneling out of local minima? Even if the results of the above calculations simply reflect the poor quality of the M=2 wave function, it would still be useful to know how to handle local minima that might occur in DMRG calculations.
Jesse