SyTen

◆ genFuse()

Tensor< 3 > syten::genFuse ( Basis const &  unsorted_b1,
Basis const &  unsorted_b2,
Index  maxBlocksize = std::numeric_limitsIndex >::max(),
SRDef  ratio = 1.,
Index  minBlocksize = 1,
bool  make_special = false 
)

Generates a fusing half-isometry map.

Takes two incoming bases b1 and b2 and maps onto a third basis product-decomposed outgoing basis b3:

–b1–→[ ] [ genFuse(b1,b2) ]–b3–→ –b2–→[ ]

References std::vector< T >::at(), std::array< T >::begin(), std::vector< T >::begin(), std::copy(), syten::Basis::dir, std::vector< T >::end(), Inc, kronVector(), std::make_pair(), syten::Basis::numSymmetries, Out, syten::RepRegister::Decomp::productDecomp(), std::vector< T >::push_back(), std::vector< T >::reserve(), syten::Basis::size(), std::vector< T >::size(), std::sort(), and SYTEN_ASSERT_MSG.

Referenced by allSiteEntropy(), syten::MPS::apply_op_itrunc(), syten::MPS::apply_op_naive(), syten::MPS::apply_op_orthogonalise_fit(), syten::MPS::build_exchange_tensors_above(), syten::MPS::build_exchange_tensors_below(), syten::MPS::coarse_grain(), syten::MPS::RDMs::OrbRDM::contract_locals(), syten::MPS::ProjectedPurification::correlator(), syten::MPS::SymConv::SU2::Converter_SU2U1::decompose(), syten::MPS::dot(), entropyTwoSite(), syten::MPS::error_estimate_2svariance(), syten::MPS::DMRG::Worker::eval_observables(), syten::MPS::TDVP::LBOWorker::evo_two_m(), syten::MPS::TDVP::Worker::evolveTwo(), syten::IPEPS::exp(), syten::MPS::DMRG::Worker::expand_to_left(), syten::MPS::expand_to_left(), syten::MPS::expectation(), syten::MPS::SwappableTEBD::exponentiate_rank6_tensor(), syten::MPS::fine_grain(), syten::MPS::genMPOId(), syten::IPEPS::genRandomCompleteState(), syten::IPEPS::genRandomTensor(), genSplit(), genSwap(), syten::MPS::ProjectedPurification::genTransformation(), gM(), syten::Pyten::init_tensor(), syten::IPEPS::FullCTM::init_vac(), syten::MPS::DMRG::LBOWorker::LBOWorker(), syten::MPS::TDVP::LBOWorker::LBOWorker(), syten::IPEPS::lmult(), syten::MPS::ProjectedPurification::local_expectation(), syten::MPS::RDMs::TwoParticleRDM::matrix_element(), syten::MPS::TEBD::merge(), syten::MPS::mpo_cmp_dot_prod(), syten::MPS::mpo_cmp_prod(), syten::MPS::right_complement(), syten::MPS::TEBD::split(), syten::MPS::SwappableTEBD::split_rank6_into_mpos(), syten::MPS::split_rank_4_into_mps_cnorm(), syten::MPS::split_rank_4_into_mps_lnorm(), syten::MPS::split_rank_4_into_mps_rnorm(), syten::MPS::TDVP::Worker::sweepLeftTwoSite(), syten::MPS::TDVP::Worker::sweepRightTwoSite(), syten::MPS::TDVP::Worker::sync(), syten::MPS::DMRG::Worker::Worker(), and syten::MPS::TDVP::Worker::Worker().

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