-
Notifications
You must be signed in to change notification settings - Fork 291
math/lcp: refactor solver infrastructure #2318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
# Conflicts: # dart/constraint/BoxedLcpConstraintSolver.cpp # dart/constraint/DantzigLCPSolver.cpp # dart/constraint/PGSLCPSolver.cpp # dart/math/lcp/All.hpp # dart/math/lcp/CMakeLists.txt # dart/math/lcp/ODELCPSolver.cpp # dart/math/lcp/pivoting/DantzigSolver.hpp # dart/math/lcp/pivoting/LemkeSolver.cpp # dart/math/lcp/pivoting/LemkeSolver.hpp # docs/onboarding/constraints.md
8e91aa4 to
5ca346f
Compare
5ca346f to
b6985e5
Compare
Co-authored-by: Jeongseok Lee <[email protected]>
|
@codex review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -1,4 +1 @@ | |||
| #pragma once | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Preserve lcpsolver umbrella exports
The public umbrella header dart/lcpsolver/All.hpp now only contains #pragma once and no longer re-exports any solver definitions. Because dart/lcpsolver/lcpsolver.hpp just includes this file, any downstream code that previously relied on these headers (e.g., Lemke, ODELCPSolver, or the deprecated lcpsolver namespace) will now compile to an empty header and fail to find the expected types. This is a new regression from the commit; the pre-change version re-exported the legacy solvers. Please keep the deprecated includes (or forward to the new dart/math/lcp headers) so existing users don’t break.
Useful? React with 👍 / 👎.
This PR refactors DART\x27s LCP solver stack and updates docs/tests accordingly.
Highlights:
dart/math/lcp(problem/options/result + validation).dart::math::LcpSolverAPI (Dantzig, Lemke, PGS + relaxation).tests/unit/math/lcp.Notes: