![]() |
Mackey
V3.3
A C++ library for computing RO(G) graded homology
|
Contains general functions and vector overloads independent of everything else. More...
#include <vector>
#include "Types/Aliases.hpp"
#include <numeric>
#include <iostream>
#include "impl/General.ipp"
Go to the source code of this file.
Classes | |
class | InterpolatingVectorGenerator< T > |
Generates all vectors interpolating between given min and max vectors. More... | |
class | InterpolatingVectorGenerator< T >::const_iterator |
Constant iterator through generated vectors. More... | |
class | Hash<> |
Hashes vectors with collisions. More... | |
class | Hash< T > |
Perfect hashes vectors between 0 and given max. More... | |
class | Hash< T, T > |
Perfect hashes vectors between given min and max. More... | |
class | IteratorNNZ< T, row_only, col_only > |
Iterator over nonzero entries of Eigen matrices. More... | |
Namespaces | |
mackey | |
Everything in this library is under this namespace. | |
Functions | |
template<typename T > | |
std::vector< std::vector< T > > | combinations (const std::vector< std::vector< T >> &v) |
Given a vector of vectors v form all combinations of the form {v[0][?],v[1][?],...} for varying ? More... | |
template<typename T > | |
std::vector< T > | tail (const T *const &ptr, int size, int start) |
Given vector or array returns vector starting from index start. More... | |
template<typename rank_t > | |
rank_t | basisElement (int length, int position, int multiple=1) |
Makes the multiple of the basis vector 0,...,multiple,...,0. More... | |
template<typename T , typename S > | |
T | KeepRow (const T &A, const S &Z) |
Makes a new matrix out of A keeping only its rows indicated by Z. More... | |
template<typename T , typename S > | |
T | KeepCol (const T &A, const S &Z) |
Makes a new matrix out of A keeping only its columns indicated by Z. More... | |
template<typename Derived > | |
int64_t | summation (const Eigen::MatrixBase< Derived > &A) |
Takes the sum of the entries of an Eigen vector at higher precision than its inputs. More... | |
template<typename rank_t > | |
int64_t | summation (const rank_t &u, int64_t limit) |
template<typename T > | |
void | rotate (T &V) |
Transforms V[0],V[1],...,V[n] to V[1],V[2],...,V[n],V[0]. More... | |
template<typename Matrix_t > | |
Matrix_t | altmatrix (int m, int n, const std::vector< scalar_t< Matrix_t >> &v) |
Creates a matrix of size m x n that alternates the given vector v. More... | |
template<typename T > | |
bool | isZero (const std::vector< T > &a) |
Tests if vector is zero. More... | |
template<typename T > | |
std::vector< T > | operator+ (const std::vector< T > &a, const std::vector< T > &b) |
Coordinate-wise sum of vectors (up to the minimum of their lengths) More... | |
template<typename T > | |
std::vector< T > | operator- (const std::vector< T > &a, const std::vector< T > &b) |
Coordinate-wise difference of vectors (up to the minimum of their lengths) More... | |
template<typename T > | |
std::vector< T > | operator- (const std::vector< T > &a) |
Coordinate-wise opposite of vector. More... | |
template<typename T > | |
std::vector< T > | operator* (T a, const std::vector< T > &b) |
Product of element and vector. More... | |
template<typename T > | |
std::ostream & | operator<< (std::ostream &out, const std::vector< T > &a) |
Printing a vector. More... | |
template<typename T > | |
int | lcm (const T &v) |
Least common multiple of vector of elements. More... | |
template<typename T , typename S > | |
int64_t | perfect_hash (const T °, const S &min, const S &max) |
Perfect hash vectors given minimum and maximum values of entries. More... | |
template<typename T > | |
std::vector< triplet_t< T > > | make_triplets (const T &a) |
Turn sparse matrix into a vector of Eigen triplets. More... | |
template<typename T , typename S > | |
std::vector< triplet_t< T > > | keep_row_triplets (const T &a, const S &keep) |
Turn sparse matrix into a vector of Eigen triplets. More... | |
Contains general functions and vector overloads independent of everything else.