You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
183 lines
6.6 KiB
183 lines
6.6 KiB
#include "storm/solver/SolverSelectionOptions.h"
|
|
|
|
namespace storm {
|
|
namespace solver {
|
|
std::string toString(MinMaxMethod m) {
|
|
switch(m) {
|
|
case MinMaxMethod::PolicyIteration:
|
|
return "policy";
|
|
case MinMaxMethod::ValueIteration:
|
|
return "value";
|
|
case MinMaxMethod::LinearProgramming:
|
|
return "linearprogramming";
|
|
case MinMaxMethod::Topological:
|
|
return "topological";
|
|
case MinMaxMethod::RationalSearch:
|
|
return "ratsearch";
|
|
case MinMaxMethod::IntervalIteration:
|
|
return "intervaliteration";
|
|
case MinMaxMethod::SoundValueIteration:
|
|
return "soundvalueiteration";
|
|
case MinMaxMethod::TopologicalCuda:
|
|
return "topologicalcuda";
|
|
case MinMaxMethod::ViToPi:
|
|
return "vi-to-pi";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(MultiplierType t) {
|
|
switch(t) {
|
|
case MultiplierType::Native:
|
|
return "Native";
|
|
case MultiplierType::Gmmxx:
|
|
return "Gmmxx";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(GameMethod m) {
|
|
switch(m) {
|
|
case GameMethod::ValueIteration:
|
|
return "valueiteration";
|
|
case GameMethod::PolicyIteration:
|
|
return "PolicyIteration";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(LraMethod m) {
|
|
switch(m) {
|
|
case LraMethod::LinearProgramming:
|
|
return "linear-programming";
|
|
case LraMethod::ValueIteration:
|
|
return "value-iteration";
|
|
case LraMethod::LraDistributionEquations:
|
|
return "lra-distribution-equations";
|
|
case LraMethod::GainBiasEquations:
|
|
return "gain-bias-equations";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(MaBoundedReachabilityMethod m) {
|
|
switch(m) {
|
|
case MaBoundedReachabilityMethod::Imca:
|
|
return "imca";
|
|
case MaBoundedReachabilityMethod::UnifPlus:
|
|
return "unifplus";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(LpSolverType t) {
|
|
switch(t) {
|
|
case LpSolverType::Gurobi:
|
|
return "Gurobi";
|
|
case LpSolverType::Glpk:
|
|
return "Glpk";
|
|
case LpSolverType::Z3:
|
|
return "Z3";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(EquationSolverType t) {
|
|
switch(t) {
|
|
case EquationSolverType::Native:
|
|
return "Native";
|
|
case EquationSolverType::Gmmxx:
|
|
return "Gmmxx";
|
|
case EquationSolverType::Eigen:
|
|
return "Eigen";
|
|
case EquationSolverType::Elimination:
|
|
return "Elimination";
|
|
case EquationSolverType::Topological:
|
|
return "Topological";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(SmtSolverType t) {
|
|
switch(t) {
|
|
case SmtSolverType::Z3:
|
|
return "Z3";
|
|
case SmtSolverType::Mathsat:
|
|
return "Mathsat";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(NativeLinearEquationSolverMethod t) {
|
|
switch(t) {
|
|
case NativeLinearEquationSolverMethod::Jacobi:
|
|
return "Jacobi";
|
|
case NativeLinearEquationSolverMethod::GaussSeidel:
|
|
return "GaussSeidel";
|
|
case NativeLinearEquationSolverMethod::SOR:
|
|
return "SOR";
|
|
case NativeLinearEquationSolverMethod::WalkerChae:
|
|
return "WalkerChae";
|
|
case NativeLinearEquationSolverMethod::Power:
|
|
return "Power";
|
|
case NativeLinearEquationSolverMethod::SoundValueIteration:
|
|
return "SoundValueIteration";
|
|
case NativeLinearEquationSolverMethod::IntervalIteration:
|
|
return "IntervalIteration";
|
|
case NativeLinearEquationSolverMethod::RationalSearch:
|
|
return "RationalSearch";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(GmmxxLinearEquationSolverMethod t) {
|
|
switch (t) {
|
|
case GmmxxLinearEquationSolverMethod::Bicgstab:
|
|
return "BiCGSTAB";
|
|
case GmmxxLinearEquationSolverMethod::Qmr:
|
|
return "QMR";
|
|
case GmmxxLinearEquationSolverMethod::Gmres:
|
|
return "GMRES";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(GmmxxLinearEquationSolverPreconditioner t) {
|
|
switch (t) {
|
|
case GmmxxLinearEquationSolverPreconditioner::Diagonal:
|
|
return "diagonal";
|
|
case GmmxxLinearEquationSolverPreconditioner::Ilu:
|
|
return "ilu";
|
|
case GmmxxLinearEquationSolverPreconditioner::None:
|
|
return "none";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(EigenLinearEquationSolverMethod t) {
|
|
switch (t) {
|
|
case EigenLinearEquationSolverMethod::SparseLU:
|
|
return "SparseLU";
|
|
case EigenLinearEquationSolverMethod::Bicgstab:
|
|
return "BiCGSTAB";
|
|
case EigenLinearEquationSolverMethod::DGmres:
|
|
return "DGMRES";
|
|
case EigenLinearEquationSolverMethod::Gmres:
|
|
return "GMRES";
|
|
}
|
|
return "invalid";
|
|
}
|
|
|
|
std::string toString(EigenLinearEquationSolverPreconditioner t) {
|
|
switch (t) {
|
|
case EigenLinearEquationSolverPreconditioner::Diagonal:
|
|
return "diagonal";
|
|
case EigenLinearEquationSolverPreconditioner::Ilu:
|
|
return "ilu";
|
|
case EigenLinearEquationSolverPreconditioner::None:
|
|
return "none";
|
|
}
|
|
return "invalid";
|
|
}
|
|
}
|
|
}
|