|
roadrunner
2.6.0
Fast simulator for SBML models
|
A Runge-Kutta Fehlberg method for roadrunner. More...
#include <RK45Integrator.h>
Public Member Functions | |
| RK45Integrator (ExecutableModel *m) | |
| Constructor: takes an executable model, does not own the pointer. More... | |
| virtual | ~RK45Integrator () |
| Destructor. More... | |
| virtual void | syncWithModel (ExecutableModel *m) |
| Called whenever a new model is loaded to allow integrator to reset internal state. More... | |
| virtual double | integrate (double t, double h) |
| implement Integrator interface More... | |
| virtual void | restart (double t0) |
| Restarts the integrator. | |
| std::string | getName () const |
| Get the name for this integrator. More... | |
| std::string | getDescription () const |
| Get the description for this integrator. More... | |
| std::string | getHint () const |
| Get the hint for this integrator. More... | |
| Solver * | construct (ExecutableModel *executableModel) const |
| Constructs a new Solver of a given type. More... | |
| virtual Setting | getValue (std::string key) |
| IntegrationMethod | getIntegrationMethod () const |
| Always deterministic for RK45. More... | |
| void | resetSettings () |
| Reset all integrator settings to their respective default values. More... | |
| virtual void | setListener (IntegratorListenerPtr) |
| the integrator can hold a single listener. More... | |
| virtual IntegratorListenerPtr | getListener () |
| get the integrator listener | |
| Integrator (ExecutableModel *model) | |
| Integrator () | |
Public Member Functions inherited from rr::Integrator | |
| Integrator (ExecutableModel *model) | |
| virtual void | loadConfigSettings () |
| virtual void | loadSBMLSettings (const std::string &filename) |
| virtual void | tweakTolerances () |
| Fix tolerances for SBML tests. More... | |
| virtual void | setIndividualTolerance (std::string sid, double value) |
| Set tolerance for floating species or variables that have a rate rule, will only be used in CVODEIntegrator. More... | |
| virtual std::vector< double > | getAbsoluteToleranceVector () |
| Get the absolute tolerance vector for the solver. More... | |
| std::string | toString () const |
| Return a std::string representation of the solver. More... | |
| virtual std::string | toRepr () const |
| Return std::string representation a la Python repr method. More... | |
| void | setIntegrationStartTime (double time) |
| Solver ()=default | |
| Solver (ExecutableModel *model) | |
| virtual void | setValue (const std::string &key, Setting value) |
| Pull down the setValue from superclass. More... | |
Public Member Functions inherited from rr::Solver | |
| Solver (ExecutableModel *model) | |
| void | updateSettings (Dictionary *inputSettings) |
| Update settings values. More... | |
| std::vector< std::string > | getSettings () const |
| Get a list of all settings for this solver. More... | |
| std::unordered_map< std::string, Setting > & | getSettingsMap () |
| get settings for this solver More... | |
| virtual Setting | getValue (const std::string &key) const |
| Get the value of an integrator setting. More... | |
| virtual Setting | hasValue (const std::string &key) const |
| Return true if this setting is supported by the integrator. More... | |
| virtual size_t | getNumParams () const |
| Get the number of parameters. More... | |
| virtual std::string | getParamName (size_t n) const |
| Get the name of the parameter at index n. More... | |
| virtual std::string | getParamDisplayName (int n) const |
| Get the display name of the parameter at index n. More... | |
| virtual std::string | getParamHint (int n) const |
| Get the hint of the parameter at index n. More... | |
| virtual std::string | getParamDesc (int n) const |
| Get the description of the parameter at index n. More... | |
| virtual std::string | getValueAsString (const std::string &key) |
| Wrapper for getValue which converts output to a specific type. More... | |
| virtual void | setValue (const std::string &key, Setting value) |
| virtual std::string | getSettingsRepr () const |
| Get the solver settings as a std::string. More... | |
| virtual std::string | settingsPyDictRepr () const |
| Python dictionary-style std::string representation of settings. More... | |
| const std::string & | getDisplayName (const std::string &key) const |
| Gets the hint associated with a given key. More... | |
| const std::string & | getHint (const std::string &key) const |
| Gets the hint associated with a given key. More... | |
| const std::string & | getDescription (const std::string &key) const |
| Gets the description associated with a given key. More... | |
| Setting::TypeId | getType (const std::string &key) const |
| Gets the type associated with a given key. More... | |
| virtual ExecutableModel * | getModel () const |
| returns the pointer to the ExecutableModel | |
| virtual std::string | getName () const=0 |
| Gets the name associated with this Solver type. More... | |
| virtual std::string | getHint () const=0 |
| Gets the hint associated with this Solver type. More... | |
| virtual std::string | getDescription () const=0 |
| Gets the description associated with this Solver type. More... | |
Static Public Member Functions | |
| static std::string | getRK45Name () |
| Get the name for this integrator. More... | |
| static std::string | getRK45Description () |
| Get the description for this integrator. More... | |
| static std::string | getRK45Hint () |
| Get the hint for this integrator. More... | |
Additional Inherited Members | |
Public Types inherited from rr::Integrator | |
| enum | IntegrationMethod { Deterministic , Stochastic , Hybrid , Other } |
Public Types inherited from rr::Solver | |
| using | SettingsList = std::vector< std::string > |
| using | SettingsMap = std::unordered_map< std::string, Setting > |
| using | DisplayNameMap = std::unordered_map< std::string, std::string > |
| using | HintMap = std::unordered_map< std::string, std::string > |
| using | DescriptionMap = std::unordered_map< std::string, std::string > |
Public Attributes inherited from rr::Solver | |
| SettingsList | sorted_settings |
| SettingsMap | settings |
| DisplayNameMap | display_names_ |
| HintMap | hints |
| DescriptionMap | descriptions |
Protected Member Functions inherited from rr::Solver | |
| void | addSetting (const std::string &name, const Setting &val, const std::string &display_name, const std::string &hint, const std::string &description) |
Protected Attributes inherited from rr::Integrator | |
| double | mIntegrationStartTime |
Protected Attributes inherited from rr::Solver | |
| ExecutableModel * | mModel = nullptr |
| non-owning pointer to model | |
A Runge-Kutta Fehlberg method for roadrunner.
Uses the Fehlberg method, an adaptive step method, to integrate models.
| rr::RK45Integrator::RK45Integrator | ( | ExecutableModel * | m | ) |
Constructor: takes an executable model, does not own the pointer.
|
virtual |
Destructor.
|
virtual |
Constructs a new Solver of a given type.
the caller is responsible for deleting memory associated with the returned Solver*.
Implements rr::Registrable.
|
virtual |
Get the description for this integrator.
Implements rr::Registrable.
|
virtual |
|
virtual |
Always deterministic for RK45.
Implements rr::Integrator.
|
virtual |
|
static |
Get the description for this integrator.
|
static |
Get the hint for this integrator.
|
static |
Get the name for this integrator.
|
virtual |
implement Integrator interface
Integrates the model from t to t + h.
Attempts to find the state std::vector at t + h, and returns time t + h if successful. If the integrator does not find a convergent solution, the state std::vector is not updated and t is returned. Also calculates a new timestep and saves it to a member variable for future use.
Implements rr::Integrator.
|
virtual |
Reset all integrator settings to their respective default values.
Reimplemented from rr::Solver.
|
virtual |
the integrator can hold a single listener.
If clients require multicast, they can create a multi-cast listener.
Implements rr::Integrator.
|
virtual |
Called whenever a new model is loaded to allow integrator to reset internal state.
Reimplemented from rr::Integrator.