Template Function sequant::evaluate_symm¶
Defined in File eval.hpp
Function Documentation¶
-
template<typename NodeT, typename Annot, typename Le, typename ...Args>
auto sequant::evaluate_symm(NodeT const &node, Annot const &layout, container::svector<std::array<size_t, 3>> const &perm_groups, Le const &le, Args&&... args)¶ See also
EvalResult to know more about the return type.
- Parameters:
node – An EvalNode or an iterable of such nodes to be evaluated into a tensor.
layout – The layout of the resulting tensor. It is a permutation of the result of node->annot().
perm_groups – A vector of 3-element arrays of size_t. Each array represents a group of indices that are particle symmetric. The first two elements of the array are the indices of the bra and ket of the resulting tensor, respectively, and the third element is the number of symmetric indices in the group.
le – A leaf evaluator that takes an EvalNode and returns a tensor (TA::TArrayD, btas::Tensor<double>, etc.) or a constant (double, complex<double>, etc.).
args – Optional CacheManager object passed by reference.
- Returns:
ERPtr to the resulting tensor.