Fix preconditioner update wrapper and usage.#6977
Merged
bska merged 1 commit intoOPM:masterfrom Apr 9, 2026
Merged
Conversation
Member
Author
|
Closes #5781 |
Member
Author
|
jenkins build this please |
bska
approved these changes
Apr 9, 2026
Member
bska
left a comment
There was a problem hiding this comment.
Good catch!
Other than a minor issue concerning the include statements in PreconditionerWithUpdate.hpp, this looks good to me.
| #define OPM_PRECONDITIONERWITHUPDATE_HEADER_INCLUDED | ||
|
|
||
| #include <dune/istl/preconditioner.hh> | ||
| #include <functional> |
Member
There was a problem hiding this comment.
Very strictly speaking, <functional> is unused in this file. On the other hand, we should #include <tuple> to bring in a declaration of the std::tuple class.
Used for the Dune::SeqILU preconditioner. Using std::reference_wrapper by calling std::cref at the call site ensures that the matrix is stored with reference semantics, instead of copying the matrix from the initial call.
ec6b471 to
f215c35
Compare
Member
Author
|
jenkins build this please |
bska
approved these changes
Apr 9, 2026
Member
bska
left a comment
There was a problem hiding this comment.
Thanks a lot for the updates. This looks good to me now and I'll merge into master.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Used for the Dune::SeqILU preconditioner. Using std::reference_wrapper by calling std::cref at the call site ensures that the matrix is stored with reference semantics, instead of copying the matrix from the initial call.
Also remove some unnecessary (and misleading) use of
&&andstd::forward.For the manual: fix the "duneilu" preconditioner choice available through the JSON interface for the linear solver.