-
Notifications
You must be signed in to change notification settings - Fork 0
Extended solver info structure #129
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
| obj.info.conic.size_A = size(obj.args_in.a); | ||
| obj.info.conic.n_decVar = length(obj.args_in.x0); | ||
| % fill info struct | ||
| obj.solver_info.name = 'mosek'; |
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.
remove name field -- see comment above.
| properties (Access=private) | ||
| solver; | ||
|
|
||
| sdp_info; |
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.
please rename to sdpsol_info
| ); | ||
|
|
||
| % number of decision variables | ||
| obj.sdp_info.n_decVar = numel(x); |
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.
please rename to numel_x. We should also add a field numel_g at least.
| % function to retrieve Gram solution with dimensions | ||
| obj.sdp2gram = casadi.Function('G', ... | ||
| {sdp.x}, {Qvar_G Ksdp_x_s Qcon_G Ksdp_g_s}, ... | ||
| {'x_sol'}, {'Qx', 'Qx_dim' 'Qc', 'Qc_dim'}); |
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.
remove for now -- we'll get back to this in #95
…ver-specific information
…of gram matrices to buildproblem
|
Hello @Fabian-Geyer, thank you for your changes. Could you please let me know about the status of this PR? If I should provide another review, please publish the PR again (it's currently in draft). |
Extend the info struct available for different solvers. The information is currently implemented in recursive fashion:
E.g. if
Sis asossolsolver, we can access information about problem sizes and sparsity as follows:Currently only the following solvers are implemented:
sossolsdpsolconicsolver specific(mosek, sedumi and clarabel - info structs not finished yet)Note:
infoonly holds information that is available during thebuildproblemstage. It is not supposed to hold information regarding solver status (S.statsshould be used for that)For this reason, at the solver level, the properties in
conicare split into two properties:ConicSolver.solver_info;ConicSolver.statusFinally, as mentioned above, the info struct now also hold information regarding the gram matrix.
Status: WIP