1#ifndef STORM_SOLVER_ELIMINATIONLINEAREQUATIONSOLVER_H_
2#define STORM_SOLVER_ELIMINATIONLINEAREQUATIONSOLVER_H_
12template<
typename ValueType>
28 virtual uint64_t getMatrixRowCount()
const override;
29 virtual uint64_t getMatrixColumnCount()
const override;
33 std::unique_ptr<storm::storage::SparseMatrix<ValueType>> localA;
40template<
typename ValueType>
45 virtual std::unique_ptr<storm::solver::LinearEquationSolver<ValueType>>
create(
Environment const& env)
const override;
47 virtual std::unique_ptr<LinearEquationSolverFactory<ValueType>>
clone()
const override;
virtual std::unique_ptr< storm::solver::LinearEquationSolver< ValueType > > create(Environment const &env) const override
Creates an equation solver with the current settings, but without a matrix.
virtual std::unique_ptr< LinearEquationSolverFactory< ValueType > > clone() const override
Creates a copy of this factory.
A class that uses gaussian elimination to implement the LinearEquationSolver interface.
virtual LinearEquationSolverProblemFormat getEquationProblemFormat(Environment const &env) const override
Retrieves the format in which this solver expects to solve equations.
virtual void setMatrix(storm::storage::SparseMatrix< ValueType > const &A) override
virtual bool internalSolveEquations(Environment const &env, std::vector< ValueType > &x, std::vector< ValueType > const &b) const override
EliminationLinearEquationSolver()
An interface that represents an abstract linear equation solver.
A class that holds a possibly non-square matrix in the compressed row storage format.
LinearEquationSolverProblemFormat