gbionics / gbionics/osqp-eigen

Ownership of bounds, gradient, Hessian, and constraint matrix

Open
#16 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
503
Forks
133
PR merge metrics
No merged PRs in 30d

Description

When writing a class that encapsulates the use of this library in my codebase, I noticed that I had to store all matrices/vectors as private variables, otherwise some of the pointers would become stale (your library does not seem to be taking ownership of those matrices/vectors). Is this intended? Took me a while to figure this out.

Also, the way you pass `Eigen` objects around seems a bit unorthodox. You may want to read [this](https://eigen.tuxfamily.org/dox/TopicFunctionTakingEigenTypes.html).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing how the library wrapper stores and passes its bounds, gradient, Hessian, and constraint matrices or vectors, then compare the Eigen parameter handling with the linked Eigen guidance. Done means the ownership and lifetime contract is explicit and the matrix/vector interface behavior is intentionally resolved.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend-api-design
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.