-
Notifications
You must be signed in to change notification settings - Fork 196
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
Try using Krylov to solve the Poisson equation #3812
base: main
Are you sure you want to change the base?
Conversation
To do:
This example illustrates implementing a custom operator: https://jso.dev/Krylov.jl/dev/matrix_free/ Here is the documentation for implementing preconditioners in Krylov: https://jso.dev/Krylov.jl/dev/preconditioners/ In Krylov, we want to remove broadcasting. To make struct QuasiVector{FT, F} <: AbstractVector{FT}
field :: F
function QuasiVector(field)
FT = eltype(field)
F = typeof(field)
return new{FT, F}(field)
end
end |
@glwagner I remember now why the right-hand side |
True but then you could use |
Yes, I can use |
Ah for sure. I was just remarking that if you need the eltype, you can use I think it's ok if you keep |
@glwagner @xkykai |
Just a comment --- the Poisson operator is usually denoted otherwise this is great! |
Thanks! |
This PR adds support for Krylov.jl and aims to test it out for solving the Poisson equation.
cc @xkykai @amontoison
Closes #3803