diff --git a/trajopt_sco/include/trajopt_sco/osqp_interface.hpp b/trajopt_sco/include/trajopt_sco/osqp_interface.hpp index 49fb9902..d2d1b78f 100644 --- a/trajopt_sco/include/trajopt_sco/osqp_interface.hpp +++ b/trajopt_sco/include/trajopt_sco/osqp_interface.hpp @@ -60,17 +60,17 @@ class OSQPModel : public Model ConstraintTypeVector cnt_types_; /**< constraints types */ DblVec solution_; /**< optimizizer's solution for current model */ - std::unique_ptr P_; /**< Takes ownership of OSQPData.P to avoid having to deallocate manually */ - std::unique_ptr A_; /**< Takes ownership of OSQPData.A to avoid having to deallocate manually */ - std::vector P_row_indices_; /**< row indices for P, CSC format */ - std::vector P_column_pointers_; /**< column pointers for P, CSC format */ - DblVec P_csc_data_; /**< P values in CSC format */ - Eigen::VectorXd q_; /**< linear part of the objective */ - - std::vector A_row_indices_; /**< row indices for constraint matrix, CSC format */ - std::vector A_column_pointers_; /**< column pointers for constraint matrix, CSC format */ - DblVec A_csc_data_; /**< constraint matrix values in CSC format */ - DblVec l_, u_; /**< linear constraints upper and lower limits */ + std::unique_ptr P_; /**< Takes ownership of OSQPData.P to avoid having to deallocate manually */ + std::unique_ptr A_; /**< Takes ownership of OSQPData.A to avoid having to deallocate manually */ + std::vector P_row_indices_; /**< row indices for P, CSC format */ + std::vector P_column_pointers_; /**< column pointers for P, CSC format */ + DblVec P_csc_data_; /**< P values in CSC format */ + Eigen::VectorXd q_; /**< linear part of the objective */ + + std::vector A_row_indices_; /**< row indices for constraint matrix, CSC format */ + std::vector A_column_pointers_; /**< column pointers for constraint matrix, CSC format */ + DblVec A_csc_data_; /**< constraint matrix values in CSC format */ + DblVec l_, u_; /**< linear constraints upper and lower limits */ QuadExpr objective_; /**< objective QuadExpr expression */ diff --git a/trajopt_sco/src/osqp_interface.cpp b/trajopt_sco/src/osqp_interface.cpp index cdb7e6f3..b4f90203 100644 --- a/trajopt_sco/src/osqp_interface.cpp +++ b/trajopt_sco/src/osqp_interface.cpp @@ -36,7 +36,7 @@ Model::Ptr createOSQPModel(const ModelConfig::ConstPtr& config = nullptr) return std::make_shared(config); } -OSQPModel::OSQPModel(const ModelConfig::ConstPtr& config) : P_(nullptr), A_(nullptr) +OSQPModel::OSQPModel(const ModelConfig::ConstPtr& config) : P_(nullptr, free), A_(nullptr, free) { // tuning parameters to be less accurate, but add a polishing step if (config != nullptr)