SyTen

◆ zeroExpand()

template<Rank rank>
void syten::zeroExpand ( Tensor< rank > &  a,
Index  which,
Basis const &  basis,
bool const  relaxed = false 
)
inline

Zero-pads a tensor a along the specified leg which to contain the basis basis.

Parameters
[in,out]atensor to be expanded in-place
[in]whichtensor leg which is to be expanded
[in]basisexpansion basis to match
[in]relaxeddo not abort if expansion basis is smaller than current tensor basis

References syten::Basis::dir, syten::Tensor< rank >::dirs, syten::Basis::elementSize(), std::move(), syten::Tensor< rank >::size(), and SYTEN_ASSERT_DEBUG.

Referenced by syten::MPS::DMRG::Worker::expand_to_left(), syten::MPS::expand_to_left(), syten::MPS::DMRG::Worker::expand_to_right(), syten::MPS::expand_to_right(), syten::MPS::ChemHelper::genMPO(), syten::T3N::ChemHelper::genMPO(), syten::MPS::DMRG::Worker::gse_create_expanded(), syten::MPS::TDVP::Worker::gse_create_expanded(), syten::MPS::TDVP::Worker::locally_expand_bond(), syten::STensorImpl::zero_expand(), and syten::STensorImpl::zero_expand_nc().

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