25 #ifndef SRC_SYSTEMS_INCLUDE_CORBO_SYSTEMS_ONE_STEP_PREDICTOR_H_ 26 #define SRC_SYSTEMS_INCLUDE_CORBO_SYSTEMS_ONE_STEP_PREDICTOR_H_ 32 #ifdef MESSAGE_SUPPORT 33 #include <corbo-communication/messages/systems/one_step_predictor.pb.h> 71 #ifdef MESSAGE_SUPPORT 72 virtual void toMessage(messages::OneStepPredictor& message)
const;
75 virtual void fromMessage(
const messages::OneStepPredictor& message, std::stringstream* issues =
nullptr);
87 #endif // SRC_SYSTEMS_INCLUDE_CORBO_SYSTEMS_ONE_STEP_PREDICTOR_H_ bool initialize()
initialize the predictor
Eigen::VectorXd ControlVector
void predict(const Eigen::Ref< const StateVector > &x0, std::vector< std::pair< double, ControlVector >> u_seq, double dt, Eigen::Ref< StateVector > x1)
Predict x1 using t0, x0, u and dt (alias between x0 and x1 allowed)
Eigen::VectorXd StateVector
SystemDynamicsInterface::Ptr _dynamics
OneStepPredictor()=default
Default constructor.
std::shared_ptr< NumericalIntegratorExplicitInterface > Ptr
NumericalIntegratorExplicitInterface::Ptr _integrator
A matrix or vector expression mapping an existing expression.
void setIntegrator(NumericalIntegratorExplicitInterface::Ptr integrator)
Set a numerical integrator for continuous-time dynamics.
void setSystemDynamics(SystemDynamicsInterface::Ptr dynamics)
Set the system dynamics of the simulated plant.
std::shared_ptr< SystemDynamicsInterface > Ptr