43 template <
size_t STATE_DIM,
size_t CONTROL_DIM,
typename SCALAR =
double>
47 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
49 typedef typename std::shared_ptr<SwitchedDiscreteControlledSystem<STATE_DIM, CONTROL_DIM, SCALAR>>
Ptr;
50 typedef typename std::shared_ptr<DiscreteControlledSystem<STATE_DIM, CONTROL_DIM, SCALAR>>
SystemPtr;
115 const control_vector_t& control,
116 state_vector_t& stateNext)
override 119 switchedSystems_[mode]->propagateControlledDynamics(state, n, control, stateNext);
std::vector< T, Alloc > Switched
Declaring Switched alias such that we can write Switched<System>
Definition: Switching.h:12
SwitchedSystems switchedSystems_
switched system container
Definition: SwitchedDiscreteControlledSystem.h:120
Switched< SystemPtr > SwitchedSystems
Definition: SwitchedDiscreteControlledSystem.h:51
Base::control_vector_t control_vector_t
Definition: SwitchedDiscreteControlledSystem.h:56
Base::time_t time_t
Definition: SwitchedDiscreteControlledSystem.h:57
SwitchedDiscreteControlledSystem(const SwitchedSystems &switchedSystems, const DiscreteModeSequence &discreteModeSequence, std::shared_ptr< DiscreteController< STATE_DIM, CONTROL_DIM, SCALAR >> controller, const SYSTEM_TYPE &type=SYSTEM_TYPE::GENERAL)
constructor
Definition: SwitchedDiscreteControlledSystem.h:76
Definition: ControlVector.h:12
SwitchedDiscreteControlledSystem(const SwitchedDiscreteControlledSystem &arg)
copy constructor
Definition: SwitchedDiscreteControlledSystem.h:85
A general, non-linear discrete dynamic system with a control input.
Definition: DiscreteControlledSystem.h:40
CppAD::AD< CppAD::cg::CG< double > > SCALAR
constexpr size_t n
Definition: MatrixInversionTest.cpp:14
Definition: StateVector.h:12
SwitchedDiscreteControlledSystem(const SwitchedSystems &switchedSystems, const DiscreteModeSequence &discreteModeSequence, const SYSTEM_TYPE &type=SYSTEM_TYPE::GENERAL)
default constructor
Definition: SwitchedDiscreteControlledSystem.h:63
Interface class for all controllers.
Definition: DiscreteController.h:22
std::shared_ptr< DiscreteControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > > SystemPtr
Definition: SwitchedDiscreteControlledSystem.h:50
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef std::shared_ptr< SwitchedDiscreteControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > > Ptr
Definition: SwitchedDiscreteControlledSystem.h:49
virtual SwitchedDiscreteControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > * clone() const override
deep copy
Definition: SwitchedDiscreteControlledSystem.h:100
SYSTEM_TYPE
type of system
Definition: System.h:15
virtual void propagateControlledDynamics(const state_vector_t &state, const time_t n, const control_vector_t &control, state_vector_t &stateNext) override
propagates the controlled system dynamics forward by one step
Definition: SwitchedDiscreteControlledSystem.h:113
Phase getPhaseFromTime(Time time) const
get phase pointer from time
Definition: Switching.h:68
any non-specific system
Definition: System.h:17
DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR > Base
Definition: SwitchedDiscreteControlledSystem.h:53
A general, switched non-linear discrete dynamic system with a control input.
Definition: SwitchedDiscreteControlledSystem.h:44
Definition: DiscreteSystem.h:12
virtual ~SwitchedDiscreteControlledSystem()
destructor
Definition: SwitchedDiscreteControlledSystem.h:97
Base::state_vector_t state_vector_t
Definition: SwitchedDiscreteControlledSystem.h:55
int time_t
the type of the time variable
Definition: DiscreteSystem.h:15
DiscreteModeSequence discreteModeSequence_
the prespecified mode sequence
Definition: SwitchedDiscreteControlledSystem.h:124