TiledArray  0.7.0
permutation.h File Reference
#include <TiledArray/error.h>
#include <TiledArray/type_traits.h>
#include <TiledArray/utility.h>
#include <array>
#include <numeric>
Include dependency graph for permutation.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  TiledArray::Permutation
 Permutation of a sequence of objects indexed by base-0 indices. More...
 

Namespaces

 TiledArray
 
 TiledArray::detail
 

Functions

bool TiledArray::operator== (const Permutation &p1, const Permutation &p2)
 Permutation equality operator. More...
 
std::ostream & TiledArray::operator<< (std::ostream &output, const Permutation &p)
 Add permutation to an output stream. More...
 
template<typename T , std::size_t N>
std::array< T, N > TiledArray::operator* (const Permutation &perm, const std::array< T, N > &a)
 Permute a std::array. More...
 
template<typename T , std::size_t N>
std::array< T, N > & TiledArray::operator*= (std::array< T, N > &a, const Permutation &perm)
 In-place permute a std::array. More...
 
template<typename T , typename A >
std::vector< T > TiledArray::operator* (const Permutation &perm, const std::vector< T, A > &v)
 permute a std::vector<T> More...
 
template<typename T , typename A >
std::vector< T, A > & TiledArray::operator*= (std::vector< T, A > &v, const Permutation &perm)
 In-place permute a std::array. More...
 
template<typename T >
std::vector< T > TiledArray::operator* (const Permutation &perm, const T *MADNESS_RESTRICT const ptr)
 Permute a memory buffer. More...
 
template<typename Perm , typename Arg , typename Result >
void TiledArray::detail::permute_array (const Perm &perm, const Arg &arg, Result &result)
 Create a permuted copy of an array. More...
 
bool TiledArray::operator!= (const Permutation &p1, const Permutation &p2)
 Permutation inequality operator. More...
 
bool TiledArray::operator< (const Permutation &p1, const Permutation &p2)
 Permutation less-than operator. More...
 
Permutation TiledArray::operator- (const Permutation &perm)
 Inverse permutation operator. More...
 
Permutation TiledArray::operator* (const Permutation &p1, const Permutation &p2)
 Permutation multiplication operator. More...
 
Permutation & TiledArray::operator*= (Permutation &p1, const Permutation &p2)
 return *this ^ other More...
 
Permutation TiledArray::operator^ (const Permutation &perm, int n)
 Raise perm to the n-th power. More...