- 3.0.2 optimal control module.
ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR > Class Template Referenceabstract

System model is an interface that encapsulates the integrator to be able to propagate the system, but is also able to compute derivatives w.r.t. both state and noise. More...

#include <SystemModelBase.h>

Inheritance diagram for ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >:
ct::optcon::CTSystemModel< STATE_DIM, CONTROL_DIM, SCALAR >

Public Types

using state_vector_t = ct::core::StateVector< STATE_DIM, SCALAR >
 
using state_matrix_t = ct::core::StateMatrix< STATE_DIM, SCALAR >
 
using control_vector_t = ct::core::ControlVector< CONTROL_DIM, SCALAR >
 
using Time_t = SCALAR
 

Public Member Functions

virtual ~SystemModelBase ()=default
 Virtual destructor. More...
 
virtual state_vector_t computeDynamics (const state_vector_t &state, const control_vector_t &control, const Time_t dt, Time_t t)=0
 Propagates the system giving the next state as output. More...
 
virtual state_matrix_t computeDerivativeState (const state_vector_t &state, const control_vector_t &control, const Time_t dt, Time_t t)=0
 Computes the derivative w.r.t state. More...
 
virtual state_matrix_t computeDerivativeNoise (const state_vector_t &state, const control_vector_t &control, const Time_t dt, Time_t t)=0
 Computes the derivative w.r.t noise. More...
 

Detailed Description

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
class ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >

System model is an interface that encapsulates the integrator to be able to propagate the system, but is also able to compute derivatives w.r.t. both state and noise.

Template Parameters
STATE_DIM
CONTROL_DIM

Member Typedef Documentation

◆ state_vector_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
using ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::state_vector_t = ct::core::StateVector<STATE_DIM, SCALAR>

◆ state_matrix_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
using ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::state_matrix_t = ct::core::StateMatrix<STATE_DIM, SCALAR>

◆ control_vector_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
using ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::control_vector_t = ct::core::ControlVector<CONTROL_DIM, SCALAR>

◆ Time_t

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
using ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::Time_t = SCALAR

Constructor & Destructor Documentation

◆ ~SystemModelBase()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
virtual ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::~SystemModelBase ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ computeDynamics()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
virtual state_vector_t ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::computeDynamics ( const state_vector_t state,
const control_vector_t control,
const Time_t  dt,
Time_t  t 
)
pure virtual

Propagates the system giving the next state as output.

Implemented in ct::optcon::CTSystemModel< STATE_DIM, CONTROL_DIM, SCALAR >.

◆ computeDerivativeState()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
virtual state_matrix_t ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::computeDerivativeState ( const state_vector_t state,
const control_vector_t control,
const Time_t  dt,
Time_t  t 
)
pure virtual

Computes the derivative w.r.t state.

Implemented in ct::optcon::CTSystemModel< STATE_DIM, CONTROL_DIM, SCALAR >.

◆ computeDerivativeNoise()

template<size_t STATE_DIM, size_t CONTROL_DIM, typename SCALAR = double>
virtual state_matrix_t ct::optcon::SystemModelBase< STATE_DIM, CONTROL_DIM, SCALAR >::computeDerivativeNoise ( const state_vector_t state,
const control_vector_t control,
const Time_t  dt,
Time_t  t 
)
pure virtual

Computes the derivative w.r.t noise.

Implemented in ct::optcon::CTSystemModel< STATE_DIM, CONTROL_DIM, SCALAR >.


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