I created the random initial state by follwing code, each time ran the simulation with different seeds, but it always converged to the ground state in vacuum sector. I tried this method many times but never converged to the semion sector. In contrast, I can readily obtain the semion sector using 2pi flux insertion. So my question is how to adjust the tenpy code to access semion sector using random MPS.
Code: Select all
def randomize_MPS(psi, steps=6, chi=100, seed=None):
"Create a charge conserved random MPS from a product state by random unitary evolution"
np.random.seed(seed)
options = dict(N_steps=steps, trunc_params={'chi_max':chi})
RandomUnitaryEvolution(psi, options).run()
psi.canonical_form()