|
| GmmxxMultiplier (storm::storage::SparseMatrix< ValueType > const &matrix) |
|
virtual | ~GmmxxMultiplier ()=default |
|
virtual void | multiply (Environment const &env, std::vector< ValueType > const &x, std::vector< ValueType > const *b, std::vector< ValueType > &result) const override |
| Performs a matrix-vector multiplication x' = A*x + b.
|
|
virtual void | multiplyGaussSeidel (Environment const &env, std::vector< ValueType > &x, std::vector< ValueType > const *b, bool backwards=true) const override |
| Performs a matrix-vector multiplication in gauss-seidel style.
|
|
virtual void | multiplyAndReduce (Environment const &env, OptimizationDirection const &dir, std::vector< uint64_t > const &rowGroupIndices, std::vector< ValueType > const &x, std::vector< ValueType > const *b, std::vector< ValueType > &result, std::vector< uint_fast64_t > *choices=nullptr) const override |
|
virtual void | multiplyAndReduceGaussSeidel (Environment const &env, OptimizationDirection const &dir, std::vector< uint64_t > const &rowGroupIndices, std::vector< ValueType > &x, std::vector< ValueType > const *b, std::vector< uint_fast64_t > *choices=nullptr, bool backwards=true) const override |
|
virtual void | multiplyRow (uint64_t const &rowIndex, std::vector< ValueType > const &x, ValueType &value) const override |
| Multiplies the row with the given index with x and adds the result to the provided value.
|
|
virtual void | clearCache () const override |
|
| Multiplier (storm::storage::SparseMatrix< ValueType > const &matrix) |
|
virtual | ~Multiplier ()=default |
|
void | multiplyAndReduce (Environment const &env, OptimizationDirection const &dir, std::vector< ValueType > const &x, std::vector< ValueType > const *b, std::vector< ValueType > &result, std::vector< uint_fast64_t > *choices=nullptr) const |
| Performs a matrix-vector multiplication x' = A*x + b and then minimizes/maximizes over the row groups so that the resulting vector has the size of number of row groups of A.
|
|
void | multiplyAndReduceGaussSeidel (Environment const &env, OptimizationDirection const &dir, std::vector< ValueType > &x, std::vector< ValueType > const *b, std::vector< uint_fast64_t > *choices=nullptr, bool backwards=true) const |
| Performs a matrix-vector multiplication in gauss-seidel style and then minimizes/maximizes over the row groups so that the resulting vector has the size of number of row groups of A.
|
|
void | repeatedMultiply (Environment const &env, std::vector< ValueType > &x, std::vector< ValueType > const *b, uint64_t n) const |
| Performs repeated matrix-vector multiplication, using x[0] = x and x[i + 1] = A*x[i] + b.
|
|
void | repeatedMultiplyAndReduce (Environment const &env, OptimizationDirection const &dir, std::vector< ValueType > &x, std::vector< ValueType > const *b, uint64_t n) const |
| Performs repeated matrix-vector multiplication x' = A*x + b and then minimizes/maximizes over the row groups so that the resulting vector has the size of number of row groups of A.
|
|
virtual void | multiplyRow2 (uint64_t const &rowIndex, std::vector< ValueType > const &x1, ValueType &val1, std::vector< ValueType > const &x2, ValueType &val2) const |
| Multiplies the row with the given index with x1 and x2 and adds the given offset o1 and o2, respectively.
|
|
template<typename ValueType>
class storm::solver::GmmxxMultiplier< ValueType >
Definition at line 19 of file GmmxxMultiplier.h.