- 3.0.2 core module.
ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR > Class Template Referenceabstract

#include <DiscreteSystem.h>

Inheritance diagram for ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >:
ct::core::DiscreteControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > ct::core::DiscreteControlledSystem< 2, 1, SCALAR > ct::core::DiscreteLinearSystem< STATE_DIM, CONTROL_DIM, SCALAR > ct::core::SwitchedDiscreteControlledSystem< STATE_DIM, CONTROL_DIM, SCALAR > ct::core::SystemDiscretizer< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR > ct::core::tpl::TestDiscreteNonlinearSystem< SCALAR > ct::core::DiscreteSystemLinearizer< STATE_DIM, CONTROL_DIM, SCALAR > ct::core::Sensitivity< STATE_DIM, CONTROL_DIM, SCALAR > ct::core::SwitchedDiscreteLinearSystem< STATE_DIM, CONTROL_DIM, SCALAR > ct::core::SensitivityApproximation< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR > ct::core::SensitivityIntegrator< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR >

Public Types

typedef int time_t
 the type of the time variable More...
 
typedef StateVector< STATE_DIM, SCALARstate_vector_t
 
typedef ControlVector< CONTROL_DIM, SCALARcontrol_vector_t
 

Public Member Functions

 DiscreteSystem (const SYSTEM_TYPE &type=GENERAL)
 constructor More...
 
virtual ~DiscreteSystem ()
 desctructor More...
 
virtual DiscreteSystemclone () const
 deep copy More...
 
virtual void propagateDynamics (const StateVector< STATE_DIM, SCALAR > &state, const time_t n, StateVector< STATE_DIM, SCALAR > &stateNext)=0
 propagates the system dynamics forward by one step More...
 
SYSTEM_TYPE getType () const
 get the type of system More...
 

Protected Attributes

SYSTEM_TYPE type_
 type of system More...
 

Member Typedef Documentation

◆ time_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
typedef int ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::time_t

the type of the time variable

◆ state_vector_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
typedef StateVector<STATE_DIM, SCALAR> ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::state_vector_t

◆ control_vector_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
typedef ControlVector<CONTROL_DIM, SCALAR> ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::control_vector_t

Constructor & Destructor Documentation

◆ DiscreteSystem()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::DiscreteSystem ( const SYSTEM_TYPE type = GENERAL)
inline

constructor

◆ ~DiscreteSystem()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
virtual ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::~DiscreteSystem ( )
inlinevirtual

desctructor

Member Function Documentation

◆ clone()

◆ propagateDynamics()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
virtual void ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::propagateDynamics ( const StateVector< STATE_DIM, SCALAR > &  state,
const time_t  n,
StateVector< STATE_DIM, SCALAR > &  stateNext 
)
pure virtual

propagates the system dynamics forward by one step

evaluates $ x_{n+1} = f(x_n, n) $ at a given state and index

Parameters
statestart state to propagate from
ntime index to propagate the dynamics at
stateNextpropagated state

Implemented in ct::core::DiscreteControlledSystem< STATE_DIM, CONTROL_DIM, float >, and ct::core::DiscreteControlledSystem< STATE_DIM, CONTROL_DIM, double >.

Referenced by ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, double >::clone().

◆ getType()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
SYSTEM_TYPE ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::getType ( ) const
inline

get the type of system

Returns
system type

Member Data Documentation

◆ type_

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR>
SYSTEM_TYPE ct::core::DiscreteSystem< STATE_DIM, CONTROL_DIM, SCALAR >::type_
protected

The documentation for this class was generated from the following file: