|
DMP_BBO library
|
Dynamical System modelling the evolution of an exponential system:
.
More...
#include <ExponentialSystem.hpp>


Public Member Functions | |
| ExponentialSystem (double tau, Eigen::VectorXd y_init, Eigen::VectorXd y_attr, double alpha, std::string name="ExponentialSystem") | |
| Initialization constructor. More... | |
| ~ExponentialSystem (void) | |
| Destructor. More... | |
| DynamicalSystem * | clone (void) const |
| Return a pointer to a deep copy of the DynamicalSystem object. More... | |
| void | differentialEquation (const Eigen::Ref< const Eigen::VectorXd > &x, Eigen::Ref< Eigen::VectorXd > xd) const |
| The differential equation which defines the system. More... | |
| void | analyticalSolution (const Eigen::VectorXd &ts, Eigen::MatrixXd &xs, Eigen::MatrixXd &xds) const |
| Return analytical solution of the system at certain times. More... | |
| double | alpha (void) const |
| Accessor function for decay constant. More... | |
| std::string | toString (void) const |
| Returns a string representation of the object. More... | |
Public Member Functions inherited from DynamicalSystem | |
| DynamicalSystem (int order, double tau, Eigen::VectorXd initial_state, Eigen::VectorXd attractor_state, std::string name) | |
| Initialization constructor. More... | |
| virtual | ~DynamicalSystem (void) |
| Destructor. | |
| virtual void | integrateStart (Eigen::Ref< Eigen::VectorXd > x, Eigen::Ref< Eigen::VectorXd > xd) const |
| Start integrating the system. More... | |
| void | integrateStart (const Eigen::VectorXd &x_init, Eigen::Ref< Eigen::VectorXd > x, Eigen::Ref< Eigen::VectorXd > xd) |
| Start integrating the system with a new initial state. More... | |
| virtual void | integrateStep (double dt, const Eigen::Ref< const Eigen::VectorXd > x, Eigen::Ref< Eigen::VectorXd > x_updated, Eigen::Ref< Eigen::VectorXd > xd_updated) const |
| Integrate the system one time step. More... | |
| void | set_integration_method (IntegrationMethod integration_method) |
| Choose the integration method. More... | |
| int | dim (void) const |
| Get the dimensionality of the dynamical system, i.e. More... | |
| int | dim_orig (void) const |
| Get the dimensionality of the dynamical system, i.e. More... | |
| double | tau (void) const |
| Accessor function for the time constant. More... | |
| virtual void | set_tau (double tau) |
| Mutator function for the time constant. More... | |
| Eigen::VectorXd | initial_state (void) const |
| Accessor function for the initial state of the dynamical system. More... | |
| void | initial_state (Eigen::VectorXd &initial_state) const |
| Accessor function for the initial state of the dynamical system. More... | |
| virtual void | set_initial_state (const Eigen::VectorXd &initial_state) |
| Mutator function for the initial state of the dynamical system. More... | |
| Eigen::VectorXd | attractor_state (void) const |
| Accessor function for the attractor state of the dynamical system. More... | |
| void | attractor_state (Eigen::VectorXd &attractor_state) const |
| Accessor function for the attractor state of the dynamical system. More... | |
| virtual void | set_attractor_state (const Eigen::Ref< const Eigen::VectorXd > &attractor_state) |
| Mutator function for the attractor state of the dynamical system. More... | |
| std::string | name (void) const |
| Accessor function for the name of the dynamical system. More... | |
| virtual void | set_name (std::string name) |
| Mutator function for the name of the dynamical system. More... | |
Friends | |
| class | boost::serialization::access |
| Give boost serialization access to private members. More... | |
Additional Inherited Members | |
Public Types inherited from DynamicalSystem | |
| enum | IntegrationMethod { EULER, RUNGE_KUTTA } |
| The possible integration methods that can be used. More... | |
Protected Member Functions inherited from DynamicalSystem | |
| DynamicalSystem (void) | |
| Default constructor. More... | |
| void | set_dim (int dim) |
| Set the dimensionality of the dynamical system, i.e. More... | |
Dynamical System modelling the evolution of an exponential system:
.
http://en.wikipedia.org/wiki/Exponential_decay
http://en.wikipedia.org/wiki/Exponential_growth
Definition at line 42 of file ExponentialSystem.hpp.
| ExponentialSystem | ( | double | tau, |
| Eigen::VectorXd | y_init, | ||
| Eigen::VectorXd | y_attr, | ||
| double | alpha, | ||
| std::string | name = "ExponentialSystem" |
||
| ) |
Initialization constructor.
| tau | Time constant, cf. DynamicalSystem::tau() |
| y_init | Initial state, cf. DynamicalSystem::initial_state() |
| y_attr | Attractor state, cf. DynamicalSystem::attractor_state() |
| alpha | Decay constant, cf. ExponentialSystem::alpha() |
| name | Name for the sytem, cf. DynamicalSystem::name() |
Definition at line 50 of file ExponentialSystem.cpp.

| ~ExponentialSystem | ( | void | ) |
|
virtual |
Return a pointer to a deep copy of the DynamicalSystem object.
Implements DynamicalSystem.
Definition at line 61 of file ExponentialSystem.cpp.

|
virtual |
The differential equation which defines the system.
It relates state values to rates of change of those state values
| [in] | x | current state (column vector of size dim() X 1) |
| [out] | xd | rate of change in state (column vector of size dim() X 1) |
Implements DynamicalSystem.
Definition at line 67 of file ExponentialSystem.cpp.

|
virtual |
Return analytical solution of the system at certain times.
| [in] | ts | A vector of times for which to compute the analytical solutions |
| [out] | xs | Sequence of state vectors. T x D or D x T matrix, where T is the number of times (the length of 'ts'), and D the size of the state (i.e. dim()) |
| [out] | xds | Sequence of state vectors (rates of change). T x D or D x T matrix, where T is the number of times (the length of 'ts'), and D the size of the state (i.e. dim()) |
Implements DynamicalSystem.
Definition at line 80 of file ExponentialSystem.cpp.

|
inline |
Accessor function for decay constant.
Definition at line 71 of file ExponentialSystem.hpp.

|
virtual |
Returns a string representation of the object.
Implements DynamicalSystem.
Definition at line 121 of file ExponentialSystem.cpp.
|
friend |
Give boost serialization access to private members.
Definition at line 94 of file ExponentialSystem.hpp.
1.8.11