Template Struct Model

Struct Documentation

template<typename T, typename I>
struct Model

This class stores the model of the QP problem.

Model class of the sparse solver storing the QP problem structure.

Public Types

typedef T Scalar
using VectorType = Eigen::Matrix<T, Eigen::Dynamic, 1>

Public Functions

inline Model(isize dim, isize n_eq, isize n_in)

Default constructor.

Parameters:
  • dim – primal variable dimension.

  • n_eq – number of equality constraints.

  • n_in – number of inequality constraints.

inline auto kkt() const -> proxsuite::linalg::sparse::MatRef<T, I>

Returns the current (scaled) KKT matrix of the problem.

inline auto kkt_mut() -> proxsuite::linalg::sparse::MatMut<T, I>

Returns the current (scaled) KKT matrix of the problem (mutable form).

inline auto kkt_unscaled() const -> proxsuite::linalg::sparse::MatRef<T, I>

Returns the original (unscaled) KKT matrix of the problem.

inline auto kkt_mut_unscaled() -> proxsuite::linalg::sparse::MatMut<T, I>

Returns the original (unscaled) KKT matrix of the problem (mutable form).

Public Members

isize dim
isize n_eq
isize n_in
isize H_nnz
isize A_nnz
isize C_nnz
proxsuite::linalg::veg::Vec<I> kkt_col_ptrs
proxsuite::linalg::veg::Vec<I> kkt_row_indices
proxsuite::linalg::veg::Vec<T> kkt_values
proxsuite::linalg::veg::Vec<I> kkt_col_ptrs_unscaled
proxsuite::linalg::veg::Vec<I> kkt_row_indices_unscaled
proxsuite::linalg::veg::Vec<T> kkt_values_unscaled
VectorType g
VectorType b
VectorType l
VectorType u