Controlpp
Loading...
Searching...
No Matches
controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs > Class Template Reference

#include <controlpp/ContinuousStateSpace.hpp>

Public Types

using value_type = T
 
using state_space_type = StateSpace< T, internal_states, inputs, outputs >
 
using A_matrix_type = typename state_space_type::A_matrix_type
 
using B_matrix_type = typename state_space_type::B_matrix_type
 
using C_matrix_type = typename state_space_type::C_matrix_type
 
using D_matrix_type = typename state_space_type::D_matrix_type
 

Public Member Functions

 ContinuousStateSpace ()=default
 
 ContinuousStateSpace (const ContinuousStateSpace &)=default
 
ContinuousStateSpaceoperator= (const ContinuousStateSpace &)=default
 
 ContinuousStateSpace (const Eigen::Matrix< T, internal_states, internal_states > &A, const Eigen::Matrix< T, internal_states, inputs > &B, const Eigen::Matrix< T, outputs, internal_states > &C, const Eigen::Matrix< T, outputs, inputs > &D=Eigen::Matrix< T, outputs, inputs >::Zero())
 
 ContinuousStateSpace (const StateSpace< T, internal_states, inputs, outputs > &state_space)
 
StateSpace< T, internal_states, inputs, outputs > & state_space ()
 
const StateSpace< T, internal_states, inputs, outputs > & state_space () const
 
std::tuple< Eigen::Vector< T, internal_states >, Eigen::Vector< T, outputs > > eval (const Eigen::Vector< T, internal_states > &x, const Eigen::Vector< T, inputs > &u) const
 
template<std::same_as< T > U>
requires (inputs == 1)
std::tuple< Eigen::Vector< U, internal_states >, Eigen::Vector< U, outputs > > eval (const Eigen::Vector< U, internal_states > &x, const U &u_scalar) const
 
A_matrix_typeA ()
 
B_matrix_typeB ()
 
C_matrix_typeC ()
 
D_matrix_typeD ()
 
const A_matrix_typeA () const
 
const B_matrix_typeB () const
 
const C_matrix_typeC () const
 
const D_matrix_typeD () const
 

Static Public Attributes

static constexpr int number_of_states = internal_states
 
static constexpr int number_of_inputs = inputs
 
static constexpr int number_of_outputs = outputs
 

Friends

std::ostream & operator<< (std::ostream &stream, const ContinuousStateSpace &css)
 

Member Typedef Documentation

◆ A_matrix_type

template<class T , int internal_states, int inputs = 1, int outputs = 1>
using controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::A_matrix_type = typename state_space_type::A_matrix_type

◆ B_matrix_type

template<class T , int internal_states, int inputs = 1, int outputs = 1>
using controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::B_matrix_type = typename state_space_type::B_matrix_type

◆ C_matrix_type

template<class T , int internal_states, int inputs = 1, int outputs = 1>
using controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::C_matrix_type = typename state_space_type::C_matrix_type

◆ D_matrix_type

template<class T , int internal_states, int inputs = 1, int outputs = 1>
using controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::D_matrix_type = typename state_space_type::D_matrix_type

◆ state_space_type

template<class T , int internal_states, int inputs = 1, int outputs = 1>
using controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::state_space_type = StateSpace<T, internal_states, inputs, outputs>

◆ value_type

template<class T , int internal_states, int inputs = 1, int outputs = 1>
using controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::value_type = T

Constructor & Destructor Documentation

◆ ContinuousStateSpace() [1/4]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::ContinuousStateSpace ( )
default

◆ ContinuousStateSpace() [2/4]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::ContinuousStateSpace ( const ContinuousStateSpace< T, internal_states, inputs, outputs > &  )
default

◆ ContinuousStateSpace() [3/4]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::ContinuousStateSpace ( const Eigen::Matrix< T, internal_states, internal_states > &  A,
const Eigen::Matrix< T, internal_states, inputs > &  B,
const Eigen::Matrix< T, outputs, internal_states > &  C,
const Eigen::Matrix< T, outputs, inputs > &  D = Eigen::Matrix<T, outputs, inputs>::Zero() 
)
inline

◆ ContinuousStateSpace() [4/4]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::ContinuousStateSpace ( const StateSpace< T, internal_states, inputs, outputs > &  state_space)
inline

Member Function Documentation

◆ A() [1/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
A_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::A ( )
inline

◆ A() [2/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
const A_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::A ( ) const
inline

◆ B() [1/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
B_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::B ( )
inline

◆ B() [2/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
const B_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::B ( ) const
inline

◆ C() [1/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
C_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::C ( )
inline

◆ C() [2/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
const C_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::C ( ) const
inline

◆ D() [1/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
D_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::D ( )
inline

◆ D() [2/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
const D_matrix_type & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::D ( ) const
inline

◆ eval() [1/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
std::tuple< Eigen::Vector< T, internal_states >, Eigen::Vector< T, outputs > > controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::eval ( const Eigen::Vector< T, internal_states > &  x,
const Eigen::Vector< T, inputs > &  u 
) const
inline

◆ eval() [2/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
template<std::same_as< T > U>
requires (inputs == 1)
std::tuple< Eigen::Vector< U, internal_states >, Eigen::Vector< U, outputs > > controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::eval ( const Eigen::Vector< U, internal_states > &  x,
const U &  u_scalar 
) const
inline

◆ operator=()

template<class T , int internal_states, int inputs = 1, int outputs = 1>
ContinuousStateSpace & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::operator= ( const ContinuousStateSpace< T, internal_states, inputs, outputs > &  )
default

◆ state_space() [1/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
StateSpace< T, internal_states, inputs, outputs > & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::state_space ( )
inline

◆ state_space() [2/2]

template<class T , int internal_states, int inputs = 1, int outputs = 1>
const StateSpace< T, internal_states, inputs, outputs > & controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::state_space ( ) const
inline

Friends And Related Symbol Documentation

◆ operator<<

template<class T , int internal_states, int inputs = 1, int outputs = 1>
std::ostream & operator<< ( std::ostream &  stream,
const ContinuousStateSpace< T, internal_states, inputs, outputs > &  css 
)
friend

Member Data Documentation

◆ number_of_inputs

template<class T , int internal_states, int inputs = 1, int outputs = 1>
constexpr int controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::number_of_inputs = inputs
staticconstexpr

◆ number_of_outputs

template<class T , int internal_states, int inputs = 1, int outputs = 1>
constexpr int controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::number_of_outputs = outputs
staticconstexpr

◆ number_of_states

template<class T , int internal_states, int inputs = 1, int outputs = 1>
constexpr int controlpp::ContinuousStateSpace< T, internal_states, inputs, outputs >::number_of_states = internal_states
staticconstexpr

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