SyTen

◆ multi_transpose() [1/2]

STensor syten::STensorImpl::multi_transpose ( STensor  in,
ConstSpan< Index perm 
)

Creates a copy of the input tensor and transposes it according to the permutation perm.

This does not change the fermionic ordering of the tensor but only adapts the computational layout.

Remarks
This is an AD-no-op and hence autodifferentiable.

References syten::STensorImpl::STensor::b(), syten::STensorImpl::STensor::get_fermionic_order(), std::move(), syten::YesNo< struct _prod_conj >::n(), syten::pi, syten::STensorImpl::STensor::set_bases(), syten::STensorImpl::STensor::set_fermionic_order(), syten::SpanImpl::ConstSpan< T >::size(), SYTEN_ASSERT_MSG, SYTEN_TENSOR_RANK, and syten::STensorImpl::STensor::visnz().

Referenced by dense(), eigen_sym(), expand(), hadamard(), multi_transpose(), and operator+=().

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