mcovalt / ConjugateGradients.jl

Flexible, non-allocating Julia implementations of the CG and BiCGStab methods.
MIT License
10 stars 2 forks source link

Update for compatibility with current Julia version #1

Closed justinmimbs closed 2 years ago

justinmimbs commented 2 years ago

Hi Matt,

Thank you for this package and for ILUZero! I've found that for my use case (which runs a BiCGStab within another iterative process) the combination of ConjugateGradients and ILUZero is faster than the combination of Krylov.jl and ILUZero (where using ILUZero with Krylov is faster than using IncompleteLU.jl with it).

I updated this package to work with the current version of Julia, so I'm offering back the changes if you'd like.

Others could benefit from this package too--why not register it? I could probably put together some benchmarks to show where these pre-allocating libraries make a difference, if that would help.

Thanks again,

Justin

mcovalt commented 2 years ago

I'm glad you found this useful and thanks a ton for the package changes!

I agree: if you and I found the package useful, then maybe others will too. Let's register it! I'll merge your PR then update the README to reflect its upcoming registered status. I'll then trigger registration on that commit.

justinmimbs commented 2 years ago

That sounds excellent! Thanks, Matt!

Justin

mcovalt commented 2 years ago

I've set up the package to be registered. See https://github.com/JuliaRegistries/General/pull/62038.

It requires a three day waiting period. I'll set up a reminder for myself to tag/release that commit at v0.1.0 next week.