Hello everybody,

I am currently implementing a time-evolution proceeded by a 2site dmrg groundstate optimisation. For the groundstate search, I have 4 conserved quantum numbers, but the time-evolution may break up to 3 of these. I cannot just do my groundstate search with the single non-broken quantum number, as then I would start my evolution with a groundstate from the wrong subspace (i.e. I need the other quantum numbers for the dmrg to find the groundstate in one specific subspace).

The two “naive” ways of implementing this kind of setup is only using the single quantum number which is never broken and then either doing imaginary time-evolution starting from an initial state in the correct quantum number block (instead of 2 site optimisation to find the groundstate), or adding an energy penalty to the Hamiltonian (to stay in the correct subspace) and using 2 site optimisation.

Neither of these solutions have great appeal, because the groundstate search is less controllable. So I was wondering if someone has an idea how to effectively change the siteset between groundstate search and time-evolution from 4 down to less than 4 quantum numbers.

Or is there a way how to efficiently read through all my tensor components of my mps and copy them by hand into a new mps defined on the new siteset.

Any help would be appreciated.

Best wishes

Johannes