Template Struct Workspace

Struct Documentation

template<typename T>
struct Workspace

This class defines the workspace of the dense solver.

Workspace class of the dense solver.

Public Functions

inline Workspace(isize dim = 0, isize n_eq = 0, isize n_in = 0, bool box_constraints = false, DenseBackend dense_backend = DenseBackend::PrimalDualLDLT)

Default constructor.

Parameters:
  • dim – primal variable dimension.

  • n_eq – number of equality constraints.

  • n_in – number of inequality constraints.

inline void cleanup(const bool box_constraints)

Clean-ups solver’s workspace.

Public Members

proxsuite::linalg::dense::Ldlt<T> ldl = {}
proxsuite::linalg::veg::Vec<unsigned char> ldl_stack
Timer<T> timer
Mat<T> H_scaled
Vec<T> g_scaled
Mat<T> A_scaled
Mat<T> C_scaled
Vec<T> b_scaled
Vec<T> u_scaled
Vec<T> l_scaled
Vec<T> u_box_scaled
Vec<T> l_box_scaled
Vec<T> i_scaled
Vec<T> x_prev
Vec<T> y_prev
Vec<T> z_prev
Mat<T> kkt
VecISize current_bijection_map
VecISize new_bijection_map
VecBool active_set_up
VecBool active_set_low
VecBool active_inequalities
Vec<T> Hdx
Vec<T> Cdx
Vec<T> Adx
Vec<T> active_part_z
proxsuite::linalg::veg::Vec<T> alphas
Vec<T> dw_aug
Vec<T> rhs
Vec<T> err
T dual_feasibility_rhs_2
T correction_guess_rhs_g
T correction_guess_rhs_b
T alpha
Vec<T> dual_residual_scaled
Vec<T> primal_residual_in_scaled_up
Vec<T> primal_residual_in_scaled_up_plus_alphaCdx
Vec<T> primal_residual_in_scaled_low_plus_alphaCdx
Vec<T> CTz
bool constraints_changed
bool dirty
bool refactorize
bool proximal_parameter_update
bool is_initialized
sparse::isize n_c