MIMPC++
A fast typesafe Mixed Integer MPC C++ library
Public Member Functions | Static Public Member Functions | List of all members
mimpc::systems::REACSA Class Reference
Inheritance diagram for mimpc::systems::REACSA:
Inheritance graph
[legend]
Collaboration diagram for mimpc::systems::REACSA:
Collaboration graph
[legend]

Public Member Functions

 REACSA (double systemM, double bodyIzz, double rwIzz, double r, double fNom)
 
SystemSized::AMatrix getA (const SystemSized::StateVec &state) const override
 
SystemSized::BMatrix getB (const SystemSized::StateVec &state) const override
 
void updateA (const SystemSized::StateVec &state, std::function< void(unsigned int, unsigned int, double)> &changeAval) const override
 
void updateB (const SystemSized::StateVec &state, std::function< void(unsigned int, unsigned int, double)> &changeBval) const override
 

Static Public Member Functions

static double get_angular_velocity_bound (double rw_speed_final_bound)
 
static void get_limitcycle_v_bounds (unsigned int num_break_thrusts, double &v_bound, double &x_bound)
 
static double get_angular_velocity_bound (double body_Izz, double rw_Izz, double rw_speed_max, double rw_speed_final_bound)
 
static void get_limitcycle_v_bounds (unsigned int num_break_thrusts, double system_m, double f_nom, double t_min_on, double t_min_off, double t_max_on, double &v_bound, double &x_bound)
 

Additional Inherited Members

- Public Types inherited from mimpc::System< num_states, num_cont_inputs, num_bin_inputs >
using AMatrix = typename Eigen::Matrix< double, num_states, num_states >
 
using BMatrix = typename Eigen::Matrix< double, num_states, num_cont_inputs+num_bin_inputs >
 
using StateVec = typename Eigen::Vector< double, num_states >
 
using InputVec = typename Eigen::Vector< double, num_cont_inputs+num_bin_inputs >
 
- Static Public Attributes inherited from mimpc::System< num_states, num_cont_inputs, num_bin_inputs >
static constexpr auto NUM_STATES = num_states
 
static constexpr auto NUM_CONT_INPUTS = num_cont_inputs
 
static constexpr auto NUM_BIN_INPUTS = num_bin_inputs
 
static constexpr auto NUM_INPUTS = num_bin_inputs + num_cont_inputs
 

Member Function Documentation

◆ getA()

SystemSized::AMatrix mimpc::systems::REACSA::getA ( const SystemSized::StateVec &  state) const
overridevirtual

Linearizes and returns the system dynamics as matrix A

Parameters
statestate to linearize the system around
Returns
system matrix A

Implements mimpc::System< num_states, num_cont_inputs, num_bin_inputs >.

◆ getB()

SystemSized::BMatrix mimpc::systems::REACSA::getB ( const SystemSized::StateVec &  state) const
overridevirtual

Linearizes and returns the system input dynamics as a matrix B

Parameters
statestate to linearize the system around
Returns
input matrix B

Implements mimpc::System< num_states, num_cont_inputs, num_bin_inputs >.

◆ updateA()

void mimpc::systems::REACSA::updateA ( const SystemSized::StateVec &  state,
std::function< void(unsigned int, unsigned int, double)> &  changeAval 
) const
overridevirtual

Updates the states of the linearized system matrix A based on a new state

Parameters
statestate to linearize the system around
changeAvalcallback function that will called for each matrix element which changes due to linearization around the new state. The callback function will be called with parameters (row index, column index, value). The values that are not updated are assumed to stay as returned by getA()

Implements mimpc::System< num_states, num_cont_inputs, num_bin_inputs >.

◆ updateB()

void mimpc::systems::REACSA::updateB ( const SystemSized::StateVec &  state,
std::function< void(unsigned int, unsigned int, double)> &  changeBval 
) const
overridevirtual

Updates the states of the linearized system matrix B based on a new state

Parameters
statestate to linearize the system around
changeAvalcallback function that will called for each matrix element which changes due to linearization around the new state. The callback function will be called with parameter (row index, column index, value). The values that are not updated are assumed to stay as returned by getB()

Implements mimpc::System< num_states, num_cont_inputs, num_bin_inputs >.


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