Interface class for solving and evaluating dynamics. More...
#include <dynamics_eval_interface.h>
Public Types | |
using | InputVector = Eigen::VectorXd |
using | Ptr = std::shared_ptr< DynamicsEvalInterface > |
using | StateVector = Eigen::VectorXd |
using | UPtr = std::unique_ptr< DynamicsEvalInterface > |
Public Member Functions | |
virtual void | computeEqualityConstraint (const StateVector &x1, const InputVector &u1, const StateVector &x2, double dt, const SystemDynamicsInterface &system, Eigen::Ref< Eigen::VectorXd > error)=0 |
Compute error between two consecutive (discrete) states. More... | |
virtual Ptr | getInstance () const =0 |
Return a newly allocated instances of the inherited class. More... | |
virtual bool | interpolate (const Eigen::Ref< const Eigen::VectorXd > &x1, const Eigen::Ref< const Eigen::VectorXd > &u1, const Eigen::Ref< const Eigen::VectorXd > &x2, const Eigen::Ref< const Eigen::VectorXd > &u2, double dt, const SystemDynamicsInterface &system, const Range &range, std::vector< Eigen::VectorXd > &states, std::vector< Eigen::VectorXd > &controls)=0 |
virtual bool | interpolate (const std::vector< const Eigen::VectorXd *> &x, const std::vector< const Eigen::VectorXd *> &u, double dt, const SystemDynamicsInterface &system, const Range &range, std::vector< Eigen::VectorXd > &states, std::vector< Eigen::VectorXd > &controls) |
virtual | ~DynamicsEvalInterface () |
Virtual destructor. More... | |
Static Public Member Functions | |
static Factory< DynamicsEvalInterface > & | getFactory () |
Get access to the accociated factory. More... | |
Interface class for solving and evaluating dynamics.
Definition at line 54 of file dynamics_eval_interface.h.
using corbo::DynamicsEvalInterface::InputVector = Eigen::VectorXd |
Definition at line 61 of file dynamics_eval_interface.h.
using corbo::DynamicsEvalInterface::Ptr = std::shared_ptr<DynamicsEvalInterface> |
Definition at line 57 of file dynamics_eval_interface.h.
using corbo::DynamicsEvalInterface::StateVector = Eigen::VectorXd |
Definition at line 60 of file dynamics_eval_interface.h.
using corbo::DynamicsEvalInterface::UPtr = std::unique_ptr<DynamicsEvalInterface> |
Definition at line 58 of file dynamics_eval_interface.h.
|
inlinevirtual |
Virtual destructor.
Definition at line 64 of file dynamics_eval_interface.h.
|
pure virtual |
Compute error between two consecutive (discrete) states.
.
error
and all other parameters![in] | x1 | Initial state vector [SystemDynamicsInterface::getStateDimension() x 1] |
[in] | u1 | Constant control input vector [SystemDynamicsInterface::getInputDimension() x 1] |
[in] | x2 | Final state vector [SystemDynamicsInterface::getStateDimension() x 1] |
[in] | dt | Time interval length |
[in] | system | System dynamics object |
[out] | error | Resulting error [SystemDynamicsInterface::getStateDimension() x 1] (must be preallocated) |
Implemented in corbo::NumericalIntegratorExplicitInterface, corbo::QuadratureCollocationInterface, and corbo::CollocationInterface.
|
inlinestatic |
Get access to the accociated factory.
Definition at line 70 of file dynamics_eval_interface.h.
|
pure virtual |
Return a newly allocated instances of the inherited class.
Implemented in corbo::QuadratureHermiteSimpson, corbo::IntegratorMultiStageScaled, corbo::IntegratorMultiStageFixedStep, corbo::IntegratorAdaptiveStepSize, corbo::QuadratureHermiteSimpsonLinearControl, corbo::IntegratorExplicitRungeKutta7, corbo::IntegratorExplicitRungeKutta6, corbo::IntegratorExplicitRungeKutta5, corbo::QuadratureTrapezoidalRule, corbo::IntegratorExplicitRungeKutta4, corbo::IntegratorExplicitRungeKutta3, corbo::NumericalIntegratorExplicitInterface, corbo::IntegratorExplicitRungeKutta2, corbo::CollocationInterface, corbo::QuadratureCollocationInterface, corbo::QuadratureRectangleRule, and corbo::IntegratorExplicitEuler.
|
pure virtual |
|
inlinevirtual |
Reimplemented in corbo::QuadratureHermiteSimpson.
Definition at line 96 of file dynamics_eval_interface.h.