# Compress an MPS without an operation.

+1 vote

Hi,

I was wondering if there is a way to compress an MPS without doing another operation? The context is that I want to apply an MPO to an MPS, then process the resulting MPS, and then reduce the bond dimension. So I basically want to postpone compressing the MPS until after I process, rather than after the MPO is applied.

Best,
Nick

The operation I believe you are looking for is .orthogonalize(). For an MPS psi you can call psi.orthogonalize({"MaxDim=",maxdim,"Cutoff=",cutoff}); to compress its bonds using the truncation parameters maxdim and cutoff. Afterward it will be in right-orthogonal form with site 1 as the orthogonality center. This operation doesn't rely on any prior assumption about whether psi is in a well-defined gauge or canonical form or not.