From 20960d56e7ca05078694e2705d0d12e09b2d39c5 Mon Sep 17 00:00:00 2001 From: TimQu Date: Mon, 2 Oct 2017 12:05:39 +0200 Subject: [PATCH] added missing 'this->'. Also avoid in-place matrix vector multiplication when extracting a scheduler --- src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp | 4 ++-- src/storm/solver/LpMinMaxLinearEquationSolver.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp b/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp index 70d2de0c1..a44024125 100644 --- a/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp +++ b/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp @@ -256,7 +256,7 @@ namespace storm { MinMaxLinearEquationSolverRequirements requirements(this->linearEquationSolverFactory->getRequirements()); // In case we perform value iteration and need to retrieve a scheduler, end components are forbidden - if (this->getSettings().getSolutionMethod() == IterativeMinMaxLinearEquationSolverSettings::SolutionMethod::ValueIteration && isTrackSchedulerSet()) { + if (this->getSettings().getSolutionMethod() == IterativeMinMaxLinearEquationSolverSettings::SolutionMethod::ValueIteration && this->isTrackSchedulerSet()) { requirements.requireNoEndComponents(); } @@ -380,7 +380,7 @@ namespace storm { // If requested, we store the scheduler for retrieval. if (this->isTrackSchedulerSet()) { this->schedulerChoices = std::vector(this->A->getRowGroupCount()); - this->linEqSolverA->multiplyAndReduce(dir, this->A->getRowGroupIndices(), x, &b, *currentX, &this->schedulerChoices.get()); + this->linEqSolverA->multiplyAndReduce(dir, this->A->getRowGroupIndices(), x, &b, *auxiliaryRowGroupVector.get(), &this->schedulerChoices.get()); } if (!this->isCachingEnabled()) { diff --git a/src/storm/solver/LpMinMaxLinearEquationSolver.cpp b/src/storm/solver/LpMinMaxLinearEquationSolver.cpp index 0369d301d..024bcf260 100644 --- a/src/storm/solver/LpMinMaxLinearEquationSolver.cpp +++ b/src/storm/solver/LpMinMaxLinearEquationSolver.cpp @@ -115,7 +115,7 @@ namespace storm { MinMaxLinearEquationSolverRequirements requirements; // In case we need to retrieve a scheduler, end components are forbidden - if (isTrackSchedulerSet()) { + if (this->isTrackSchedulerSet()) { requirements.requireNoEndComponents(); }