|
| | NativeMultiplier (storm::storage::SparseMatrix< ValueType > const &matrix) |
| virtual | ~NativeMultiplier ()=default |
| virtual void | multiply (Environment const &env, std::vector< ValueType > const &x, std::vector< ValueType > const *b, std::vector< ValueType > &result) const override |
| virtual void | multiplyGaussSeidel (Environment const &env, std::vector< ValueType > &x, std::vector< ValueType > const *b, bool backwards=true) const override |
| 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, UncertaintyResolutionMode const &uncertaintyResolutionMode=UncertaintyResolutionMode::Unset, 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 |
| void | multiplyRow (uint64_t const &rowIndex, std::vector< ValueType > const &x, ValueType &value) const |
| | Multiplies the row with the given index with x and adds the result to the provided value.
|
| 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.
|
| | Multiplier (storm::storage::SparseMatrix< ValueType > const &matrix) |
| virtual | ~Multiplier ()=default |
| virtual void | clearCache () const |
| virtual void | multiply (Environment const &env, std::vector< SolutionType > const &x, std::vector< ValueType > const *b, std::vector< SolutionType > &result) const =0 |
| | Performs a matrix-vector multiplication x' = A*x + b.
|
| virtual void | multiplyGaussSeidel (Environment const &env, std::vector< SolutionType > &x, std::vector< ValueType > const *b, bool backwards=true) const =0 |
| | Performs a matrix-vector multiplication in gauss-seidel style.
|
| void | multiplyAndReduce (Environment const &env, OptimizationDirection const &dir, std::vector< SolutionType > const &x, std::vector< ValueType > const *b, std::vector< SolutionType > &result, UncertaintyResolutionMode const &uncertaintyResolutionMode=UncertaintyResolutionMode::Unset, 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.
|
| virtual void | multiplyAndReduce (Environment const &env, OptimizationDirection const &dir, std::vector< uint64_t > const &rowGroupIndices, std::vector< SolutionType > const &x, std::vector< ValueType > const *b, std::vector< SolutionType > &result, UncertaintyResolutionMode const &uncertaintyResolutionMode=UncertaintyResolutionMode::Unset, std::vector< uint_fast64_t > *choices=nullptr) const =0 |
| void | multiplyAndReduceGaussSeidel (Environment const &env, OptimizationDirection const &dir, std::vector< SolutionType > &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.
|
| virtual void | multiplyAndReduceGaussSeidel (Environment const &env, OptimizationDirection const &dir, std::vector< uint64_t > const &rowGroupIndices, std::vector< SolutionType > &x, std::vector< ValueType > const *b, std::vector< uint_fast64_t > *choices=nullptr, bool backwards=true) const =0 |
| void | repeatedMultiply (Environment const &env, std::vector< SolutionType > &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< SolutionType > &x, std::vector< ValueType > const *b, uint64_t n, UncertaintyResolutionMode const &uncertaintyResolutionMode=UncertaintyResolutionMode::Unset) 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.
|
| void | repeatedMultiplyWithFactor (Environment const &env, std::vector< SolutionType > &x, std::vector< ValueType > const *b, uint64_t n, SolutionType factor) const |
| | Performs repeated matrix-vector multiplication x' = A*(factor * x) + b.
|
| void | repeatedMultiplyAndReduceWithFactor (Environment const &env, OptimizationDirection const &dir, std::vector< SolutionType > &x, std::vector< ValueType > const *b, uint64_t n, SolutionType factor, UncertaintyResolutionMode const &uncertaintyResolutionMode=UncertaintyResolutionMode::Unset) const |
| | Performs repeated matrix-vector multiplication x' = A*(factor * x) + b, minimizes/maximizes over the row groups so that the resulting vector has the size of number of row groups of A.
|
template<typename ValueType>
class storm::solver::NativeMultiplier< ValueType >
Definition at line 16 of file NativeMultiplier.h.