|
2 | 2 |
|
3 | 3 | """
|
4 | 4 | ```julia
|
5 |
| -KrylovJL(args...; KrylovAlg = Krylov.gmres!, |
| 5 | +KrylovJL(KrylovAlg = Krylov.gmres!, |
6 | 6 | Pl = nothing, Pr = nothing,
|
7 | 7 | gmres_restart = 0, window = 0,
|
8 | 8 | kwargs...)
|
9 | 9 | ```
|
10 | 10 |
|
11 | 11 | A generic wrapper over the Krylov.jl krylov-subspace iterative solvers.
|
12 | 12 | """
|
13 |
| -struct KrylovJL{F, I, P, A, K} <: AbstractKrylovSubspaceMethod |
| 13 | +struct KrylovJL{F, I, P, K} <: AbstractKrylovSubspaceMethod |
14 | 14 | KrylovAlg::F
|
15 | 15 | gmres_restart::I
|
16 | 16 | window::I
|
17 | 17 | precs::P
|
18 |
| - args::A |
19 | 18 | kwargs::K
|
20 | 19 | end
|
21 | 20 |
|
22 |
| -function KrylovJL(args...; KrylovAlg = Krylov.gmres!, |
| 21 | +function KrylovJL(;KrylovAlg = Krylov.gmres!, |
23 | 22 | gmres_restart = 0, window = 0,
|
24 | 23 | precs = nothing,
|
25 | 24 | kwargs...)
|
26 | 25 | return KrylovJL(KrylovAlg, gmres_restart, window,
|
27 |
| - precs, args, kwargs) |
| 26 | + precs, kwargs) |
28 | 27 | end
|
29 | 28 |
|
30 | 29 | default_alias_A(::KrylovJL, ::Any, ::Any) = true
|
31 | 30 | default_alias_b(::KrylovJL, ::Any, ::Any) = true
|
32 | 31 |
|
33 | 32 | """
|
34 | 33 | ```julia
|
35 |
| -KrylovJL_CG(args...; kwargs...) |
| 34 | +KrylovJL_CG(;kwargs...) |
36 | 35 | ```
|
37 | 36 |
|
38 | 37 | A generic CG implementation for Hermitian and positive definite linear systems
|
39 | 38 | """
|
40 |
| -function KrylovJL_CG(args...; kwargs...) |
41 |
| - KrylovJL(args...; KrylovAlg = Krylov.cg!, kwargs...) |
| 39 | +function KrylovJL_CG(;kwargs...) |
| 40 | + KrylovJL(;KrylovAlg = Krylov.cg!, kwargs...) |
42 | 41 | end
|
43 | 42 |
|
44 | 43 | """
|
45 | 44 | ```julia
|
46 |
| -KrylovJL_MINRES(args...; kwargs...) |
| 45 | +KrylovJL_MINRES(;kwargs...) |
47 | 46 | ```
|
48 | 47 |
|
49 | 48 | A generic MINRES implementation for Hermitian linear systems
|
50 | 49 | """
|
51 |
| -function KrylovJL_MINRES(args...; kwargs...) |
52 |
| - KrylovJL(args...; KrylovAlg = Krylov.minres!, kwargs...) |
| 50 | +function KrylovJL_MINRES(;kwargs...) |
| 51 | + KrylovJL(;KrylovAlg = Krylov.minres!, kwargs...) |
53 | 52 | end
|
54 | 53 |
|
55 | 54 | """
|
56 | 55 | ```julia
|
57 |
| -KrylovJL_GMRES(args...; gmres_restart = 0, window = 0, kwargs...) |
| 56 | +KrylovJL_GMRES(; gmres_restart = 0, window = 0, kwargs...) |
58 | 57 | ```
|
59 | 58 |
|
60 | 59 | A generic GMRES implementation for square non-Hermitian linear systems
|
61 | 60 | """
|
62 |
| -function KrylovJL_GMRES(args...; kwargs...) |
63 |
| - KrylovJL(args...; KrylovAlg = Krylov.gmres!, kwargs...) |
| 61 | +function KrylovJL_GMRES(;kwargs...) |
| 62 | + KrylovJL(;KrylovAlg = Krylov.gmres!, kwargs...) |
64 | 63 | end
|
65 | 64 |
|
66 | 65 | """
|
67 | 66 | ```julia
|
68 |
| -KrylovJL_BICGSTAB(args...; kwargs...) |
| 67 | +KrylovJL_BICGSTAB(; kwargs...) |
69 | 68 | ```
|
70 | 69 |
|
71 | 70 | A generic BICGSTAB implementation for square non-Hermitian linear systems
|
72 | 71 | """
|
73 |
| -function KrylovJL_BICGSTAB(args...; kwargs...) |
74 |
| - KrylovJL(args...; KrylovAlg = Krylov.bicgstab!, kwargs...) |
| 72 | +function KrylovJL_BICGSTAB(;kwargs...) |
| 73 | + KrylovJL(;KrylovAlg = Krylov.bicgstab!, kwargs...) |
75 | 74 | end
|
76 | 75 |
|
77 | 76 | """
|
78 | 77 | ```julia
|
79 |
| -KrylovJL_LSMR(args...; kwargs...) |
| 78 | +KrylovJL_LSMR(; kwargs...) |
80 | 79 | ```
|
81 | 80 |
|
82 | 81 | A generic LSMR implementation for least-squares problems
|
83 | 82 | """
|
84 |
| -function KrylovJL_LSMR(args...; kwargs...) |
85 |
| - KrylovJL(args...; KrylovAlg = Krylov.lsmr!, kwargs...) |
| 83 | +function KrylovJL_LSMR(;kwargs...) |
| 84 | + KrylovJL(;KrylovAlg = Krylov.lsmr!, kwargs...) |
86 | 85 | end
|
87 | 86 |
|
88 | 87 | """
|
89 | 88 | ```julia
|
90 |
| -KrylovJL_CRAIGMR(args...; kwargs...) |
| 89 | +KrylovJL_CRAIGMR(; kwargs...) |
91 | 90 | ```
|
92 | 91 |
|
93 | 92 | A generic CRAIGMR implementation for least-norm problems
|
94 | 93 | """
|
95 |
| -function KrylovJL_CRAIGMR(args...; kwargs...) |
96 |
| - KrylovJL(args...; KrylovAlg = Krylov.craigmr!, kwargs...) |
| 94 | +function KrylovJL_CRAIGMR(;kwargs...) |
| 95 | + KrylovJL(;KrylovAlg = Krylov.craigmr!, kwargs...) |
97 | 96 | end
|
98 | 97 |
|
99 | 98 | function get_KrylovJL_solver(KrylovAlg)
|
|
0 commit comments