Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
NativeSolverEnvironment.cpp
Go to the documentation of this file.
2
7
8namespace storm {
9
12
13 method = nativeSettings.getLinearEquationSystemMethod();
14 methodSetFromDefault = nativeSettings.isLinearEquationSystemTechniqueSetFromDefaultValue();
15 if (nativeSettings.isMaximalIterationCountSet()) {
16 maxIterationCount = nativeSettings.getMaximalIterationCount();
17 } else {
18 maxIterationCount = std::numeric_limits<uint_fast64_t>::max();
19 }
20 precision = storm::utility::convertNumber<storm::RationalNumber>(nativeSettings.getPrecision());
21 considerRelativeTerminationCriterion =
23 STORM_LOG_ASSERT(considerRelativeTerminationCriterion ||
25 "Unknown convergence criterion");
26 powerMethodMultiplicationStyle = nativeSettings.getPowerMethodMultiplicationStyle();
27 sorOmega = storm::utility::convertNumber<storm::RationalNumber>(nativeSettings.getOmega());
28 symmetricUpdates = nativeSettings.isForceIntervalIterationSymmetricUpdatesSet();
29}
30
32 // Intentionally left empty
33}
34
35storm::solver::NativeLinearEquationSolverMethod const& NativeSolverEnvironment::getMethod() const {
36 return method;
37}
38
40 return methodSetFromDefault;
41}
42
43void NativeSolverEnvironment::setMethod(storm::solver::NativeLinearEquationSolverMethod value) {
44 methodSetFromDefault = false;
45 method = value;
46}
47
49 return maxIterationCount;
50}
51
53 maxIterationCount = value;
54}
55
56storm::RationalNumber const& NativeSolverEnvironment::getPrecision() const {
57 return precision;
58}
59
60void NativeSolverEnvironment::setPrecision(storm::RationalNumber value) {
61 precision = value;
62}
63
65 return considerRelativeTerminationCriterion;
66}
67
69 considerRelativeTerminationCriterion = value;
70}
71
73 return powerMethodMultiplicationStyle;
74}
75
79
80storm::RationalNumber const& NativeSolverEnvironment::getSorOmega() const {
81 return sorOmega;
82}
83
84void NativeSolverEnvironment::setSorOmega(storm::RationalNumber const& value) {
85 sorOmega = value;
86}
87
89 return symmetricUpdates;
90}
91
93 symmetricUpdates = value;
94}
95
96} // namespace storm
storm::RationalNumber const & getPrecision() const
void setSorOmega(storm::RationalNumber const &value)
void setPowerMethodMultiplicationStyle(storm::solver::MultiplicationStyle value)
uint64_t const & getMaximalNumberOfIterations() const
void setMaximalNumberOfIterations(uint64_t value)
bool const & getRelativeTerminationCriterion() const
void setMethod(storm::solver::NativeLinearEquationSolverMethod value)
void setPrecision(storm::RationalNumber value)
storm::solver::MultiplicationStyle const & getPowerMethodMultiplicationStyle() const
storm::solver::NativeLinearEquationSolverMethod const & getMethod() const
storm::RationalNumber const & getSorOmega() const
#define STORM_LOG_ASSERT(cond, message)
Definition macros.h:11
SettingsType const & getModule()
Get module.
LabParser.cpp.
Definition cli.cpp:18