SyTen

◆ remove_dummy_leg()

STensor syten::STensorImpl::remove_dummy_leg ( STensor const &  in,
SBasisId  to_be_removed 
)

Constructs a new syten::STensor object which does not have the leg with Id to_be_removed.

For this to work, that leg has to be a one-dimensional dummy leg (i.e., is_vacuum() must be true).

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

References syten::STensorImpl::STensor::autodiff_enabled(), syten::STensorImpl::STensor::b(), syten::STensorImpl::STensor::bi(), syten::dropDummy(), syten::STensorImpl::STensor::get_autodiff(), syten::STensorImpl::STensor::get_fermionic_order(), syten::STensorImpl::STensor::has_basis(), syten::STensorImpl::SBasis::is_vacuum(), make_zero(), syten::mve(), syten::STensorImpl::STensor::new_autodiff_id(), syten::STensorImpl::Autodiff::new_id(), std::vector< T >::push_back(), syten::STensorImpl::STensor::rank(), syten::STensorImpl::Autodiff::return_first_output_adjoint(), syten::STensorImpl::STensor::set_autodiff_node(), SYTEN_ASSERT, and syten::STensorImpl::STensor::visnz().

Referenced by syten::IPEPSv2::expectation_value().

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