Dear ITensor community!
I am investigating a system with an expected high degeneracy in the ground state.
My system is a two-site thick ladder model consisting of sites of type
In parts of my system I have superconductivity while in other parts I consider some local interactions, hence the need for ITensor, and DMRG in particular. Each interface where superconductors meet interactions hosts zero-energy excitations.
If there are many interfaces in the system then the system is expected to have a highly degenerate ground state if the interfaces are far enough apart.
It is quite easy to find the first few groundstates, however, finding the rest of the degenerate subspace is proven to be cumulatively more hard.
All the states found are decently converged, I use a relatively conservative parameter set for the sweeps detailed below:
num_sweeps=100 sweeps = Sweeps(num_sweeps) maxdim=1000 cutoff=1e-7 maxdim!(sweeps, maxdim) mindim!(sweeps, 5) cutoff!(sweeps, cutoff) sweeps.noise[1:5].=1e-1 sweeps.noise[6:10].=1e-3 sweeps.cutoff[1:10].=1e-4;
With a minimum of 15 sweeps before convergence is at all tested.
During the DMRG runs, I never hit the maxlinkdim threshold of 1000, this is I guess due to the fact that my system has a decent local gap everywhere, which is underpinned by previous DMRG results with fewer interfaces.
Right now I use
randomMPS to generate separate initial states with the appropriate parity (since this is the only symmetry) for all runs as choosing the same initial random state for all the runs has proven to be counterproductive. I have noticed that the inner product of the initial and converged states is basically zero. Thus, correct me if the following thought is wrong, DMRG basically has to essentially enlarge numerical dirt to get near the right state.
I was wondering if picking the right initial states could help with finding the rest of the states.
- What are good strategies for choosing good starting states?
- Are some properties one can learn from the already converged states?