14 # ifndef RR_STEADY_STATE_SOLVER_H_
15 # define RR_STEADY_STATE_SOLVER_H_
19 # include "rrLogger.h"
20 # include "rrOSSpecifics.h"
21 # include "Dictionary.h"
22 # include "rrException.h"
25 # include "tr1proxy/rr_memory.h"
26 # include "tr1proxy/rr_unordered_map.h"
33 class ExecutableModel;
53 virtual double solve() = 0;
55 virtual void loadConfigSettings();
154 std::size_t getNumSteadyStateSolvers()
const;
156 std::vector<std::string> getListSteadyStateSolverNames();
158 std::string getSteadyStateSolverName(std::size_t n)
const;
160 std::string getSteadyStateSolverHint(std::size_t n)
const;
162 std::string getSteadyStateSolverDescription(std::size_t n)
const;
170 typedef std::vector<SteadyStateSolverRegistrar*> SteadyStateSolverRegistrars;
171 SteadyStateSolverRegistrars mRegisteredSteadyStateSolvers;
Contains the base class for RoadRunner solvers.
Base class for all code generation systems; allows compiling and evaluating the model.
Definition: rrExecutableModel.h:118
Base class for all integrators and steady state solvers.
Definition: Solver.h:37
Constructs new integrators.
Definition: SteadyStateSolver.h:127
SteadyStateSolver * New(std::string name, ExecutableModel *m) const
Constructs a new solver given the name (e.g. cvode, gillespie)
void registerSteadyStateSolver(SteadyStateSolverRegistrar *i)
Registers a new solver with the factory so that it can be constructed.
static SteadyStateSolverFactory & getInstance()
Returns the singleton instance of the solver factory.
Definition: SteadyStateSolver.h:41
virtual std::string toString() const
Return a string representation of the solver.
std::string settingsPyDictRepr() const
Python dictionary-style string representation of settings.
std::string getSettingsRepr() const
Get the solver settings as a string.
virtual void syncWithModel(ExecutableModel *m)=0
Called whenever a new model is loaded to allow integrator to reset internal state.
virtual std::string toRepr() const
Return string representation a la Python repr method.
Handles constructing a solver and contains meta information about it.
Definition: SteadyStateSolver.h:88
virtual std::string getHint() const =0
Gets the hint associated with this integrator type.
virtual std::string getDescription() const =0
Gets the description associated with this integrator type.
virtual SteadyStateSolver * construct(ExecutableModel *model) const =0
Constructs a new integrator of a given type.
virtual std::string getName() const =0
Gets the name associated with this integrator type.