SyTen

◆ split_rank_4_into_mps_rnorm()

SRDef syten::MPS::split_rank_4_into_mps_rnorm ( Tensor< 4 > &&  r4,
Tensor< 3 > &  left_site,
Tensor< 3 > &  right_site,
Truncation  trunc 
)

Splits a rank-4 tensor into two rank-3 tensors in standard MPS ordering, truncating according to trunc.

1 3 uIdx uIdx
| | | |
2--[ r4 ]--4 => lIdx-[ l ]-rIdx lIdx-[ r ]-rIdx

where right_site is right-normalised.

References std::vector< T >::clear(), std::string::clear(), syten::genFuse(), syten::genSplit(), syten::MPS::State::lIdx, syten::MPS::State::lInt, norm(), syten::MPS::State::rIdx, syten::MPS::State::rInt, syten::split(), syten::SVD::svd(), syten::MPS::State::uIdx, and syten::MPS::State::uInt.

Referenced by orthogonalise_variational_two_site(), and syten::MPS::State::truncateVariational().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: