STensor syten::STensorImpl::exp | ( | STensor | in, |
SBasisId const & | rightLeg, | ||
SDef | scalar = 1. , |
||
bool const | exact = true , |
||
bool const | b = false |
||
) |
Overload which also needs to know the right leg (i.e the one first applied to the state) of the matrix, because this information is needed for the AD.
If you don't need the derivative just use the overload without.
References syten::STensorImpl::STensor::autodiff_enabled(), syten::STensorImpl::STensor::b(), syten::STensorImpl::STensor::bi(), change_fermionic_order(), syten::STensorImpl::STensor::copy(), syten::STensorImpl::SBasis::dir(), syten::STensorImpl::STensor::disable_autodiff(), syten::exponentialTensorGen(), syten::exponentialTensorSym(), syten::STensorImpl::SBasis::gen_basis(), syten::STensorImpl::STensor::get_and_renew_autodiff(), if_constexpr, syten::Inc, make_zero(), std::move(), syten::mve(), syten::STensorImpl::STensorProxy::prime(), proxy(), syten::STensorImpl::STensor::rank(), syten::STensorImpl::STensor::set_autodiff_node(), sum(), SYTEN_ASSERT, SYTEN_TENSOR_RANK, and syten::STensorImpl::STensor::visit().