SyTen

◆ sort_VecRepIdx_some()

template<Rank rank, Rank numMatches>
std::vector<std::pair<std::vector<RDef>, std::vector<Index> > > syten::TensorBlocks::sort_VecRepIdx_some ( Tensor< rank > const &  input,
std::array< Rank, numMatches > const &  matches 
)

Sorts the blocks in input into buckets.

Each bucket is a pair of a vector of RDefs and a vector of indices. The vector of RDefs denotes how the blocks in the bucket transform, legs are in the ordering as they occur in matches. The list of indices is are indices into input. The legs in matches are 1-indexed. The resulting vector is sorted in ascending order with respect to operator<(a.first, b.first) for any two elements a, b.

References syten::Tensor< rank >::begin(), std::copy(), syten::Tensor< rank >::empty(), std::iota(), std::make_pair(), std::partition_point(), syten::rank(), std::vector< T >::reserve(), std::array< T >::size(), syten::Tensor< rank >::size(), and std::sort().

Referenced by syten::tensorSortBuckets().

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