-
-
Notifications
You must be signed in to change notification settings - Fork 42
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
simplify __wrapprecs
#465
simplify __wrapprecs
#465
Conversation
Note that this will be obsoleted by #462 but that Pr is slightly breaking so it may need some more time. |
@avik-pal is all of the test failures known? |
Pretty much. We need a tag with updated enzyme releases |
I have marked master version as |
80b7b2b
to
445db18
Compare
once I merged the DI PR, it will fix the dep hell |
previously the preconditioner being set was a very complicated `IdentityOperator`. Using a regular `IdentityOperator` means that solvers that don't support one of the preconditioners won't throw warnings since they mostly know that `IdentityOperator`s aren't real.
57a2b2b
to
f4219af
Compare
Remove those imports and that should do it |
imports removed. |
if __hasfield(alg, Val(:precs)) | ||
precs = alg.precs | ||
Pl_, Pr_ = precs(A, nothing, u, ntuple(Returns(nothing), 6)...) | ||
else | ||
precs, Pl_, Pr_ = nothing, nothing, nothing | ||
end | ||
Pl, Pr = __wrapprecs(Pl_, Pr_, weight) | ||
Pl, Pr = __wrapprecs(Pl_, Pr_, u) |
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.
Is that correct?
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.
It is creating an operator using only the length of u
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.
specifically, NonlinearSolve never actually used the weight
variable.
previously the preconditioner being set was a very complicated
IdentityOperator
. Using a regularIdentityOperator
means that solvers that don't support one of the preconditioners won't throw warnings since they mostly know thatIdentityOperator
s aren't real.