File tree Expand file tree Collapse file tree 3 files changed +29
-26
lines changed Expand file tree Collapse file tree 3 files changed +29
-26
lines changed Original file line number Diff line number Diff line change 11name : CI
22on :
3- - push
3+ pull_request :
4+ branches :
5+ - main
6+ push :
7+ branches :
8+ - main
49jobs :
510 test :
6- name : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
7- runs-on : ${{ matrix.os }}
11+ runs-on : ubuntu-latest
812 strategy :
913 matrix :
14+ group :
15+ - All
1016 version :
1117 - ' 1'
1218 - ' 1.6'
13- os :
14- - ubuntu-latest
15- arch :
16- - x64
17- group :
18- - Core
1919 steps :
2020 - uses : actions/checkout@v2
2121 - uses : julia-actions/setup-julia@v1
2222 with :
2323 version : ${{ matrix.version }}
24- arch : ${{ matrix.arch }}
2524 - uses : actions/cache@v1
2625 env :
2726 cache-name : cache-artifacts
3837 - uses : codecov/codecov-action@v1
3938 with :
4039 file : lcov.info
41- docs :
42- name : Documentation
43- runs-on : ubuntu-latest
44- steps :
45- - uses : actions/checkout@v2
46- - uses : julia-actions/setup-julia@latest
40+ - uses : coverallsapp/github-action@master
4741 with :
48- version : ' 1'
49- - name : Install dependencies
50- run : julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
51- - name : Build and deploy
52- env :
53- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # For authentication with GitHub Actions token
54- DOCUMENTER_KEY : ${{ secrets.DOCUMENTER_KEY }} # For authentication with SSH deploy key
55- run : julia --project=docs/ docs/make.jl
42+ github-token : ${{ secrets.GITHUB_TOKEN }}
43+ path-to-lcov : ./lcov.info
Original file line number Diff line number Diff line change 11name = " LinearSolve"
22uuid = " 7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
33authors = [" SciML" ]
4- version = " 1.13 .0"
4+ version = " 1.14 .0"
55
66[deps ]
77ArrayInterface = " 4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
Original file line number Diff line number Diff line change @@ -19,10 +19,12 @@ Pardiso.jl's methods are also known to be very efficient sparse linear solvers.
1919
2020As sparse matrices get larger, iterative solvers tend to get more efficient than
2121factorization methods if a lower tolerance of the solution is required.
22+
2223IterativeSolvers.jl uses a low-rank Q update in its GMRES so it tends to be
2324faster than Krylov.jl for CPU-based arrays, but it's only compatible with
2425CPU-based arrays while Krylov.jl is more general and will support accelerators
25- like CUDA.
26+ like CUDA. Krylov.jl works with CPUs and GPUs and tends to be more efficient than other
27+ Krylov-based methods.
2628
2729Finally, a user can pass a custom function ofr the linear solve using
2830` LinearSolveFunction() ` if existing solvers are not optimal for their application.
@@ -161,3 +163,16 @@ KrylovJL(args...; KrylovAlg = Krylov.gmres!,
161163 gmres_restart= 0 , window= 0 ,
162164 kwargs... )
163165```
166+
167+ ### KrylovKit.jl
168+
169+ - ` KrylovKitJL_CG(args...;kwargs...) ` : A generic CG implementation
170+ - ` KrylovKitJL_GMRES(args...;kwargs...) ` : A generic GMRES implementation
171+
172+ The general algorithm is:
173+
174+ ``` julia
175+ function KrylovKitJL (args... ;
176+ KrylovAlg = KrylovKit. GMRES, gmres_restart = 0 ,
177+ kwargs... )
178+ ```
You can’t perform that action at this time.
0 commit comments