Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays
sym_indices.cxx File Reference
#include "../interface/common.h"
#include "sym_indices.h"
Include dependency graph for sym_indices.cxx:

Go to the source code of this file.

Data Structures

struct  index_locator_
 

Functions

template<typename T >
int align_symmetric_indices (int order_A, T &idx_A, const int *sym_A, int order_B, T &idx_B, const int *sym_B)
 
template<typename T >
int align_symmetric_indices (int order_A, T &idx_A, const int *sym_A, int order_B, T &idx_B, const int *sym_B, int order_C, T &idx_C, const int *sym_C)
 
template<typename T >
int overcounting_factor (int order_A, const T &idx_A, const int *sym_A, int order_B, const T &idx_B, const int *sym_B, int order_C, const T &idx_C, const int *sym_C)
 
template<typename T >
int overcounting_factor (int order_A, const T &idx_A, const int *sym_A, int order_B, const T &idx_B, const int *sym_B)
 
template int align_symmetric_indices< int * > (int order_A, int *&idx_A, const int *sym_A, int order_B, int *&idx_B, const int *sym_B)
 
template int align_symmetric_indices< int * > (int order_A, int *&idx_A, const int *sym_A, int order_B, int *&idx_B, const int *sym_B, int order_C, int *&idx_C, const int *sym_C)
 
template int overcounting_factor< int * > (int order_A, int *const &idx_A, const int *sym_A, int order_B, int *const &idx_B, const int *sym_B, int order_C, int *const &idx_C, const int *sym_C)
 
template int overcounting_factor< int * > (int order_A, int *const &idx_A, const int *sym_A, int order_B, int *const &idx_B, const int *sym_B)
 
template int align_symmetric_indices< std::string > (int order_A, std::string &idx_A, const int *sym_A, int order_B, std::string &idx_B, const int *sym_B)
 
template int align_symmetric_indices< std::string > (int order_A, std::string &idx_A, const int *sym_A, int order_B, std::string &idx_B, const int *sym_B, int order_C, std::string &idx_C, const int *sym_C)
 
template int overcounting_factor< std::string > (int order_A, std::string const &idx_A, const int *sym_A, int order_B, std::string const &idx_B, const int *sym_B, int order_C, std::string const &idx_C, const int *sym_C)
 
template int overcounting_factor< std::string > (int order_A, std::string const &idx_A, const int *sym_A, int order_B, std::string const &idx_B, const int *sym_B)
 

Function Documentation

template<typename T >
int align_symmetric_indices ( int  order_A,
T &  idx_A,
const int *  sym_A,
int  order_B,
T &  idx_B,
const int *  sym_B 
)
template<typename T >
int align_symmetric_indices ( int  order_A,
T &  idx_A,
const int *  sym_A,
int  order_B,
T &  idx_B,
const int *  sym_B,
int  order_C,
T &  idx_C,
const int *  sym_C 
)
template int align_symmetric_indices< int * > ( int  order_A,
int *&  idx_A,
const int *  sym_A,
int  order_B,
int *&  idx_B,
const int *  sym_B 
)

Referenced by overcounting_factor().

template int align_symmetric_indices< int * > ( int  order_A,
int *&  idx_A,
const int *  sym_A,
int  order_B,
int *&  idx_B,
const int *  sym_B,
int  order_C,
int *&  idx_C,
const int *  sym_C 
)
template int align_symmetric_indices< std::string > ( int  order_A,
std::string &  idx_A,
const int *  sym_A,
int  order_B,
std::string &  idx_B,
const int *  sym_B 
)
template int align_symmetric_indices< std::string > ( int  order_A,
std::string &  idx_A,
const int *  sym_A,
int  order_B,
std::string &  idx_B,
const int *  sym_B,
int  order_C,
std::string &  idx_C,
const int *  sym_C 
)
template<typename T >
int overcounting_factor ( int  order_A,
const T &  idx_A,
const int *  sym_A,
int  order_B,
const T &  idx_B,
const int *  sym_B,
int  order_C,
const T &  idx_C,
const int *  sym_C 
)

Definition at line 361 of file sym_indices.cxx.

References CTF_int::fact(), and NS.

Referenced by CTF_int::summation::estimate_time(), CTF_int::get_len_ordering(), and relativeSign().

template<typename T >
int overcounting_factor ( int  order_A,
const T &  idx_A,
const int *  sym_A,
int  order_B,
const T &  idx_B,
const int *  sym_B 
)
template int overcounting_factor< int * > ( int  order_A,
int *const &  idx_A,
const int *  sym_A,
int  order_B,
int *const &  idx_B,
const int *  sym_B,
int  order_C,
int *const &  idx_C,
const int *  sym_C 
)

Referenced by overcounting_factor().

template int overcounting_factor< int * > ( int  order_A,
int *const &  idx_A,
const int *  sym_A,
int  order_B,
int *const &  idx_B,
const int *  sym_B 
)
template int overcounting_factor< std::string > ( int  order_A,
std::string const &  idx_A,
const int *  sym_A,
int  order_B,
std::string const &  idx_B,
const int *  sym_B,
int  order_C,
std::string const &  idx_C,
const int *  sym_C 
)
template int overcounting_factor< std::string > ( int  order_A,
std::string const &  idx_A,
const int *  sym_A,
int  order_B,
std::string const &  idx_B,
const int *  sym_B 
)