C API Documentation
|
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) |
Integrates the model from t to t + h. 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... | |
virtual Variant | 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) |
virtual IntegratorListenerPtr | getListener () |
![]() | |
virtual void | loadConfigSettings () |
virtual void | loadSBMLSettings (const std::string &filename) |
virtual void | tweakTolerances () |
Fix tolerances for SBML tests. More... | |
virtual void | setIndividualTolerance (string sid, double value) |
Set tolerance for floating species or variables that have a rate rule, will only be used in CVODEIntegrator. More... | |
virtual void | setConcentrationTolerance (const Variant &value) |
Set tolerance based on concentration of species, will only be used in CVODEIntegrator. More... | |
virtual std::vector< double > | getConcentrationTolerance () |
Get tolerance based on concentration of species, will only be used in CVODEIntegrator. More... | |
std::string | toString () const |
Return a string representation of the solver. More... | |
virtual std::string | toRepr () const |
Return string representation a la Python repr method. More... | |
virtual void | setValue (std::string key, const Variant &value) |
![]() | |
std::vector< std::string > | getSettings () const |
Get a list of all settings for this solver. More... | |
virtual Variant | getValue (std::string key) const |
Get the value of an integrator setting. More... | |
virtual Variant | hasValue (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 int | getValueAsInt (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual unsigned int | getValueAsUInt (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual long | getValueAsLong (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual unsigned long | getValueAsULong (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual float | getValueAsFloat (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual double | getValueAsDouble (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual std::vector< double > | getValueAsDoubleVector (std::string key) |
Wrapper for getValue which converts output to a specific type. | |
virtual char | getValueAsChar (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual unsigned char | getValueAsUChar (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual std::string | getValueAsString (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual bool | getValueAsBool (std::string key) |
Wrapper for getValue which converts output to a specific type. More... | |
virtual void | setValue (std::string key, const Variant &value) |
const std::string & | getDisplayName (std::string key) const |
Gets the hint associated with a given key. More... | |
const std::string & | getHint (std::string key) const |
Gets the hint associated with a given key. More... | |
const std::string & | getDescription (std::string key) const |
Gets the description associated with a given key. More... | |
const Variant::TypeId | getType (std::string key) |
Gets the type associated with a given key. More... | |
std::string | getSettingsRepr () const |
Get the solver settings as a string. More... | |
std::string | settingsPyDictRepr () const |
Python dictionary-style string representation of settings. 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 | |
![]() | |
enum | IntegrationMethod { Deterministic , Stochastic , Hybrid , Other } |
![]() | |
typedef std::vector< std::string > | SettingsList |
typedef RR_UNORDERED_MAP< std::string, Variant > | SettingsMap |
typedef RR_UNORDERED_MAP< std::string, std::string > | DisplayNameMap |
typedef RR_UNORDERED_MAP< std::string, std::string > | HintMap |
typedef RR_UNORDERED_MAP< std::string, std::string > | DescriptionMap |
![]() | |
void | addSetting (std::string name, Variant val, string display_name, std::string hint, std::string description) |
![]() | |
SettingsList | sorted_settings |
SettingsMap | settings |
DisplayNameMap | display_names_ |
HintMap | hints |
DescriptionMap | descriptions |
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 |
|
virtual |
|
virtual |
Always deterministic for RK45.
Implements rr::Integrator.
|
virtual |
get the integrator listener
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 |
Integrates the model from t to t + h.
implement Integrator interface
Attempts to find the state vector at t + h, and returns time t + h if successful. If the integrator does not find a convergent solution, the state 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.