Open sjdaines opened 9 months ago
I didn't know there was more controls here. Are they documented somewhere?
Instead of specifying the control vector, we should raise it to a higher level interface. UMFPACKFactorization(;max_iterative_refinement_steps = 2)
or something.
I didn't know there was more controls here. Are they documented somewhere?
Just made a PR to add some more doc https://github.com/JuliaSparse/SparseArrays.jl/pull/449
Full doc is the UMFPACK User Guide https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/dev/UMFPACK/Doc/UMFPACK_UserGuide.pdf
Cool thanks for sharing. I don't have a free hand right now to complete this, but would happily take a PR if anyone has a second.
I noticed in the SparseArrays code that they force the value of the control vector to zero when you want to change it.
So, in order to change the control parameters for LinearSolve, as you suggested, we have to modify the UMFPACKFactorization struct and also the solve function, adding the control vector as parameters to the lu function.
I'm going to open the PR and link it to these issues.
Apologies if I've missed something, but I can't see how to set the UMFPACK control vector...
Would this be possible perhaps as a new
control
kwarg toUMFPACKFactorization
?which could then be used eg to reenable iterative refinement:
where this could perhaps be implemented as