@@ -83,13 +83,13 @@ The following preconditioners match the interface of LinearSolve.jl.
83
83
- [ Preconditioners.CholeskyPreconditioner(A, i)] ( https://github.com/JuliaLinearAlgebra/Preconditioners.jl ) :
84
84
An incomplete Cholesky preconditioner with cut-off level ` i ` . Requires ` A ` as
85
85
a ` AbstractMatrix ` and positive semi-definite.
86
- - [ AlgebraicMultiGrid ] ( https://github.com/JuliaLinearAlgebra/AlgebraicMultigrid.jl ) :
86
+ - [ AlgebraicMultigrid ] ( https://github.com/JuliaLinearAlgebra/AlgebraicMultigrid.jl ) :
87
87
Implementations of the algebraic multigrid method. Must be converted to a
88
- preconditioner via ` AlgebraicMultiGrid .aspreconditioner(AlgebraicMultiGrid .precmethod(A))` .
88
+ preconditioner via ` AlgebraicMultigrid .aspreconditioner(AlgebraicMultigrid .precmethod(A))` .
89
89
Requires ` A ` as a ` AbstractMatrix ` . Provides the following methods:
90
90
91
- + ` AlgebraicMultiGrid .ruge_stuben(A)`
92
- + ` AlgebraicMultiGrid .smoothed_aggregation(A)`
91
+ + ` AlgebraicMultigrid .ruge_stuben(A)`
92
+ + ` AlgebraicMultigrid .smoothed_aggregation(A)`
93
93
- [ PyAMG] ( https://github.com/cortner/PyAMG.jl ) :
94
94
Implementations of the algebraic multigrid method. Must be converted to a
95
95
preconditioner via ` PyAMG.aspreconditioner(PyAMG.precmethod(A)) ` .
@@ -111,3 +111,9 @@ The following preconditioners match the interface of LinearSolve.jl.
111
111
preconditioners which supports distributed computing via MPI. These can be
112
112
written using the LinearSolve.jl interface choosing algorithms like ` HYPRE.ILU `
113
113
and ` HYPRE.BoomerAMG ` .
114
+ - [ KrylovPreconditioners.jl] ( https://github.com/JuliaSmoothOptimizers/KrylovPreconditioners.jl/ ) : Provides GPU-ready
115
+ preconditioners via KernelAbstractions.jl. At the time of writing the package provides the following methods:
116
+
117
+ + Incomplete Cholesky decomposition ` KrylovPreconditioners.kp_ic0(A) `
118
+ + Incomplete LU decomposition ` KrylovPreconditioners.kp_ilu0(A) `
119
+ + Block Jacobi ` KrylovPreconditioners.BlockJacobiPreconditioner(A, nblocks, device) `
0 commit comments