Is there a way to explicitly set qdldl as direct_solve_method for CLARABEL through cvxpy api?
#2837
-
|
I was solving a problem involving different sparse matrices. (Namely, the same problem with different matrices as parameters.) I tried prob.solve(solver = 'CLARABEL', direct_solve_method = 'qdldl') but it failed. Although direct_solve_method is listed as an argument in Clarabel's doc, I cannot specify it through cxvpy api. So is there a way to choose direct_solve_method by myself? Thanks for your reply. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
|
Can you provide a MWE? I will take a look. As an aside, it's a little surprising that the faer solver is substantially slower. The default configuration is 'auto', which switches to Note one thing to look out for is that faer will try to use all available cores by default. That's fine on most machines, but not good on a machine with a very large number of cores (say 24+). In that case it's best to directly set |
Beta Was this translation helpful? Give feedback.
-
|
Ignore the request for a MWE. I think the issue is that you are likely trying to change the So this works: But you won't be able to subsequently use (or any other option) without calling |
Beta Was this translation helpful? Give feedback.
Ignore the request for a MWE. I think the issue is that you are likely trying to change the
direct_solve_methodafter the first solve. Clarabel won't allow this because it would require re-allocation of internal data structures to support a different linear solve method. The only updates that are allowed (e.g. when doing multiple solves) are ones that only change the problem data.So this works: