All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Functions
GraphBLAS.h File Reference
#include <limits>
#include "Semirings.h"
#include "SparseAccumulator.h"
#include "AlgebraicGlobals.h"
#include "Vector.h"

Go to the source code of this file.

Namespaces

 GraphBLAS
 Implements the GraphBLAS interface.
 

Functions

template<class SemiRing , class Matrix , typename L >
Matrix GraphBLAS::eWiseBinOp (const Matrix &A, const Matrix &B, L binOp)
 Computes binOp(A(i,j), B(i,j)) for all i,j element-wise. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
Matrix GraphBLAS::MxM (const Matrix &A, const Matrix &B)
 Computes the matrix-matrix multiplication of A and B. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
void GraphBLAS::MxM (const Matrix &A, const Matrix &B, Matrix &C)
 Computes the matrix-matrix multiplication of A and B and adds it to C where the add operation is that of the specified Semiring (i.e. More...
 
template<class SemiRing = ArithmeticSemiring, typename F , class Matrix >
void GraphBLAS::MxM (const Matrix &A, const Matrix &B, Matrix &C, F accum)
 Computes the matrix-matrix multiplication of A and B and adds it to C where the add operation is specified by the binary function accum (i.e. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
NetworKit::Vector GraphBLAS::MxV (const Matrix &A, const NetworKit::Vector &v)
 Computes the matrix-vector product of matrix A and Vector v. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
void GraphBLAS::MxV (const Matrix &A, const NetworKit::Vector &v, NetworKit::Vector &c)
 Computes the matrix-vector product of matrix A and Vector v and adds it to c where the add operation is that of the specified Semiring (i.e. More...
 
template<class SemiRing = ArithmeticSemiring, typename F , class Matrix >
void GraphBLAS::MxV (const Matrix &A, const NetworKit::Vector &v, NetworKit::Vector &c, F accum)
 Computes the matrix-vector product of matrix A and Vector v and adds it to c where the add operation is that of the specified binary function accum (i.e. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
Matrix GraphBLAS::eWiseAdd (const Matrix &A, const Matrix &B)
 Computes SemiRing::add(A(i,j), B(i,j)) for all i,j element-wise and returns the resulting matrix. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
Matrix GraphBLAS::eWiseMult (const Matrix &A, const Matrix &B)
 Computes SemiRing::mult(A(i,j), B(i,j)) for all i,j element-wise and returns the resulting matrix. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
NetworKit::Vector GraphBLAS::rowReduce (const Matrix &matrix)
 Computes the row-reduction of the matrix and returns the result as a vector. More...
 
template<class SemiRing = ArithmeticSemiring, class Matrix >
NetworKit::Vector GraphBLAS::columnReduce (const Matrix &matrix)
 Computes the column-reduction of the matrix and returns the result as a Vector. More...