45 template <
size_t STATE_DIM,
size_t CONTROL_DIM,
typename SCALAR =
double>
49 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
52 typedef typename std::shared_ptr<ControlledSystem<STATE_DIM, CONTROL_DIM, SCALAR>>
Ptr;
53 typedef typename Base::time_t
time_t;
145 std::shared_ptr<Controller<STATE_DIM, CONTROL_DIM, SCALAR>>
controller_;
Base::time_t time_t
Definition: ControlledSystem.h:53
void setController(const std::shared_ptr< Controller< STATE_DIM, CONTROL_DIM, SCALAR >> &controller)
set a new controller
Definition: ControlledSystem.h:93
void getController(std::shared_ptr< Controller< STATE_DIM, CONTROL_DIM, SCALAR >> &controller) const
get the controller instance
Definition: ControlledSystem.h:103
ControlVector< CONTROL_DIM, SCALAR > controlAction_
Definition: ControlledSystem.h:147
virtual ControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > * clone() const override=0
deep copy
clear all close all load ct GNMSLog0 mat reformat t
Definition: ControlVector.h:12
virtual void computeControlledDynamics(const StateVector< STATE_DIM, SCALAR > &state, const time_t &t, const ControlVector< CONTROL_DIM, SCALAR > &control, StateVector< STATE_DIM, SCALAR > &derivative)=0
CppAD::AD< CppAD::cg::CG< double > > SCALAR
virtual void computeDynamics(const StateVector< STATE_DIM, SCALAR > &state, const time_t &t, StateVector< STATE_DIM, SCALAR > &derivative) override
compute the dynamics of the system
Definition: ControlledSystem.h:125
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef System< STATE_DIM, SCALAR > Base
Definition: ControlledSystem.h:51
Definition: StateVector.h:12
ControlledSystem(const ControlledSystem &arg)
copy constructor
Definition: ControlledSystem.h:78
std::shared_ptr< Controller< STATE_DIM, CONTROL_DIM, SCALAR > > controller_
the controller instance
Definition: ControlledSystem.h:145
SYSTEM_TYPE
type of system
Definition: System.h:15
any non-specific system
Definition: System.h:17
ControlVector< CONTROL_DIM, SCALAR > getLastControlAction()
Definition: ControlledSystem.h:143
Interface class for a general system described by an ordinary differential equation (ODE) ...
Definition: System.h:38
virtual ~ControlledSystem()
destructor
Definition: ControlledSystem.h:85
ControlledSystem(std::shared_ptr< ct::core::Controller< STATE_DIM, CONTROL_DIM, SCALAR >> controller, const SYSTEM_TYPE &type=SYSTEM_TYPE::GENERAL)
constructor
Definition: ControlledSystem.h:70
std::shared_ptr< Controller< STATE_DIM, CONTROL_DIM, SCALAR > > getController()
get the controller instace
Definition: ControlledSystem.h:112
std::shared_ptr< ControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > > Ptr
Definition: ControlledSystem.h:52
A general, non-linear dynamic system with a control input.
Definition: ControlledSystem.h:46
Interface class for all controllers.
Definition: Controller.h:26
ControlledSystem(const SYSTEM_TYPE &type=SYSTEM_TYPE::GENERAL)
default constructor
Definition: ControlledSystem.h:59