17 forceSoundness = generalSettings.isSoundSet();
18 forceExact = generalSettings.isExactSet() || generalSettings.isExactFinitePrecisionSet();
28 return longRunAverageSolverEnvironment.get();
32 return longRunAverageSolverEnvironment.get();
36 return timeBoundedSolverEnvironment.get();
40 return timeBoundedSolverEnvironment.get();
44 return minMaxSolverEnvironment.get();
48 return minMaxSolverEnvironment.get();
52 return multiplierEnvironment.get();
56 return multiplierEnvironment.get();
60 return eigenSolverEnvironment.get();
64 return eigenSolverEnvironment.get();
68 return gmmxxSolverEnvironment.get();
72 return gmmxxSolverEnvironment.get();
76 return nativeSolverEnvironment.get();
80 return nativeSolverEnvironment.get();
84 return gameSolverEnvironment.get();
88 return gameSolverEnvironment.get();
92 return topologicalSolverEnvironment.get();
96 return topologicalSolverEnvironment.get();
100 return oviSolverEnvironment.get();
104 return oviSolverEnvironment.get();
108 return forceSoundness;
112 SolverEnvironment::forceSoundness = value;
120 SolverEnvironment::forceExact = value;
124 return linearEquationSolverType;
128 linearEquationSolverTypeSetFromDefault = isSetFromDefault;
129 linearEquationSolverType = value;
133 return linearEquationSolverTypeSetFromDefault;
137 storm::solver::EquationSolverType
const& solverType)
const {
138 std::pair<boost::optional<storm::RationalNumber>, boost::optional<bool>> result;
139 switch (solverType) {
140 case storm::solver::EquationSolverType::Gmmxx:
143 case storm::solver::EquationSolverType::Eigen:
146 case storm::solver::EquationSolverType::Native:
150 case storm::solver::EquationSolverType::Elimination:
152 case storm::solver::EquationSolverType::Topological:
156 STORM_LOG_THROW(
false, storm::exceptions::UnexpectedException,
"The selected solver type is unknown.");
162 boost::optional<bool>
const& relativePrecision) {
169 "The current solver type is not respected in this method.");
176 if (relativePrecision) {
void setPrecision(storm::RationalNumber value)
storm::RationalNumber const & getPrecision() const
storm::RationalNumber const & getPrecision() const
void setPrecision(storm::RationalNumber value)
storm::RationalNumber const & getPrecision() const
bool const & getRelativeTerminationCriterion() const
void setRelativeTerminationCriterion(bool value)
void setPrecision(storm::RationalNumber value)
TopologicalSolverEnvironment & topological()
void setLinearEquationSolverType(storm::solver::EquationSolverType const &value, bool isSetFromDefault=false)
OviSolverEnvironment const & ovi() const
EigenSolverEnvironment & eigen()
MinMaxSolverEnvironment & minMax()
void setForceSoundness(bool value)
MultiplierEnvironment & multiplier()
storm::solver::EquationSolverType const & getLinearEquationSolverType() const
void setLinearEquationSolverPrecision(boost::optional< storm::RationalNumber > const &newPrecision, boost::optional< bool > const &relativePrecision=boost::none)
bool isLinearEquationSolverTypeSetFromDefaultValue() const
GameSolverEnvironment & game()
bool isForceExact() const
TimeBoundedSolverEnvironment & timeBounded()
NativeSolverEnvironment & native()
GmmxxSolverEnvironment & gmmxx()
LongRunAverageSolverEnvironment & lra()
bool isForceSoundness() const
std::pair< boost::optional< storm::RationalNumber >, boost::optional< bool > > getPrecisionOfLinearEquationSolver(storm::solver::EquationSolverType const &solverType) const
void setForceExact(bool value)
#define STORM_LOG_ASSERT(cond, message)
#define STORM_LOG_THROW(cond, exception, message)
SettingsType const & getModule()
Get module.