ITensorNetworks.jl icon indicating copy to clipboard operation
ITensorNetworks.jl copied to clipboard

Algorithm for Projecting to a Specific total QN

Open emstoudenmire opened this issue 2 years ago • 1 comments

Not urgent, but an algorithm which would be of great general use would be one for projecting a tree tensor network or MPS into a specific total quantum number sector. Here is a brief outline of how this could work, taken from my answer to this forum question: https://itensor.discourse.group/t/project-product-state-to-fixed-quantum-number-qn-conserving-mps/689

Set up a DMRG-like calculation but without a Hamiltonian (similar to setting $H = \mathbb{1}$). Then in the “core” step of two-site DMRG project the wavefunction tensor into the total QN sector you want and SVD back to adapt the bond index. Then sweep to every pair of sites and repeat. To code this in the most efficient way, one can use the orthogonality properties of the MPS to not have to deal explicitly with the right-hand-side basis at all (it cancels with itself). Also I think one can prove this algorithm converges in a single pass over the MPS.

emstoudenmire avatar Mar 12 '23 21:03 emstoudenmire

This is in the category of a "nice to have" feature. I was considering making it an issue in ITensors.jl but (1) it should work for any tree tensor network (and could be a nice application of the solver interface even) and (2) as discussed we are eventually moving most general-purpose algorithm development here.

emstoudenmire avatar Mar 12 '23 21:03 emstoudenmire