integrates an ODE using a naive Euler integration. TODO: change the integration method. For the moment, the highest derivative of the output signal is computed using the previous values of the other derivatives and the input signal, then integrated n times, which will most certainly induce a huge drift for ODEs with a high order at the denominator. More...
#include <integrator-euler.hh>

Public Member Functions | |
| sigT & | derivative (sigT &res, sigtime_t time) |
| virtual const std::string & | getClassName (void) const |
| double | getSamplingPeriod () const |
| void | initialize () |
| sigT & | integrate (sigT &res, sigtime_t time) |
| IntegratorEuler (const std::string &name) | |
| void | setSamplingPeriod (const double &period) |
| virtual | ~IntegratorEuler (void) |
Public Member Functions inherited from dynamicgraph::sot::IntegratorAbstract< sigT, coefT > | |
| const std::vector< coefT > & | denomCoeffs () const |
| void | denomCoeffs (const std::vector< coefT > &coeffs) |
| virtual void | display (std::ostream &os) const |
| IntegratorAbstract (const std::string &name) | |
| const std::vector< coefT > & | numCoeffs () const |
| void | numCoeffs (const std::vector< coefT > &coeffs) |
| void | popDenomCoef () |
| void | popNumCoef () |
| void | pushDenomCoef (const coefT &denomCoef) |
| void | pushNumCoef (const coefT &numCoef) |
| virtual | ~IntegratorAbstract () |
Public Member Functions inherited from dynamicgraph::Entity | |
| std::ostream & | displaySignalList (std::ostream &os) const |
| Entity (const std::string &name) | |
| const std::string & | getCommandList () const |
| virtual std::string | getDocString () const |
| LoggerVerbosity | getLoggerVerbosityLevel () |
| LoggerVerbosity | getLoggerVerbosityLevel () |
| const std::string & | getName () const |
| command::Command * | getNewStyleCommand (const std::string &cmdName) |
| CommandMap_t | getNewStyleCommandMap () |
| SignalBase< sigtime_t > & | getSignal (const std::string &signalName) |
| const SignalBase< sigtime_t > & | getSignal (const std::string &signalName) const |
| SignalMap | getSignalMap () const |
| double | getStreamPrintPeriod () |
| double | getStreamPrintPeriod () |
| double | getTimeSample () |
| double | getTimeSample () |
| bool | hasSignal (const std::string &signame) const |
| Logger & | logger () |
| Logger & | logger () |
| const Logger & | logger () const |
| const Logger & | logger () const |
| void | sendMsg (const std::string &msg, MsgType t=MSG_TYPE_INFO, const std::string &lineId="") |
| void | sendMsg (const std::string &msg, MsgType t=MSG_TYPE_INFO, const std::string &lineId="") |
| void | setLoggerVerbosityLevel (LoggerVerbosity lv) |
| void | setLoggerVerbosityLevel (LoggerVerbosity lv) |
| bool | setStreamPrintPeriod (double t) |
| bool | setStreamPrintPeriod (double t) |
| bool | setTimeSample (double t) |
| bool | setTimeSample (double t) |
| virtual SignalBase< sigtime_t > * | test () |
| virtual void | test2 (SignalBase< sigtime_t > *) |
| virtual std::ostream & | writeCompletionList (std::ostream &os) const |
| virtual std::ostream & | writeGraph (std::ostream &os) const |
| virtual | ~Entity () |
Static Public Member Functions | |
| static std::string | getTypeName (void) |
Static Public Attributes | |
| static const std::string | CLASS_NAME |
Protected Attributes | |
| dynamicgraph::SignalTimeDependent< sigT, sigtime_t > | derivativeSOUT |
| double | dt |
| std::vector< sigT > | inputMemory |
| double | invdt |
| std::vector< sigT > | outputMemory |
Protected Attributes inherited from dynamicgraph::sot::IntegratorAbstract< sigT, coefT > | |
| std::vector< coefT > | denominator |
| std::vector< coefT > | numerator |
Protected Attributes inherited from dynamicgraph::Entity | |
| CommandMap_t | commandMap |
| Logger | logger_ |
| std::string | name |
| SignalMap | signalMap |
Additional Inherited Members | |
Public Types inherited from dynamicgraph::Entity | |
| typedef std::map< const std::string, command::Command * > | CommandMap_t |
| typedef std::map< std::string, SignalBase< sigtime_t > * > | SignalMap |
Public Attributes inherited from dynamicgraph::sot::IntegratorAbstract< sigT, coefT > | |
| dynamicgraph::SignalPtr< sigT, sigtime_t > | SIN |
| dynamicgraph::SignalTimeDependent< sigT, sigtime_t > | SOUT |
Protected Member Functions inherited from dynamicgraph::Entity | |
| void | addCommand (const std::string &name, command::Command *command) |
| void | entityDeregistration () |
| void | entityRegistration () |
| void | signalDeregistration (const std::string &name) |
| void | signalRegistration (const SignalArray< sigtime_t > &signals) |
integrates an ODE using a naive Euler integration. TODO: change the integration method. For the moment, the highest derivative of the output signal is computed using the previous values of the other derivatives and the input signal, then integrated n times, which will most certainly induce a huge drift for ODEs with a high order at the denominator.
Definition at line 51 of file integrator-euler.hh.
|
inline |
Definition at line 64 of file integrator-euler.hh.
|
inlinevirtual |
Definition at line 94 of file integrator-euler.hh.
|
inline |
Definition at line 153 of file integrator-euler.hh.
|
virtual |
Reimplemented from dynamicgraph::Entity.
|
inline |
Definition at line 169 of file integrator-euler.hh.
|
inlinestatic |
Definition at line 54 of file integrator-euler.hh.
|
inline |
Definition at line 171 of file integrator-euler.hh.
|
inlinevirtual |
Implements dynamicgraph::sot::IntegratorAbstract< sigT, coefT >.
Definition at line 106 of file integrator-euler.hh.
|
inline |
Definition at line 164 of file integrator-euler.hh.
|
static |
Definition at line 55 of file integrator-euler.hh.
|
protected |
Definition at line 100 of file integrator-euler.hh.
|
protected |
Definition at line 102 of file integrator-euler.hh.
|
protected |
Definition at line 97 of file integrator-euler.hh.
|
protected |
Definition at line 103 of file integrator-euler.hh.
|
protected |
Definition at line 98 of file integrator-euler.hh.