ArnoldiMethod
The Arnoldi Method with Krylov-Schur restart, natively in Julia.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.6%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
The Arnoldi Method with Krylov-Schur restart, natively in Julia.
Basic Info
- Host: GitHub
- Owner: JuliaLinearAlgebra
- License: mit
- Language: Julia
- Default Branch: master
- Homepage: https://julialinearalgebra.github.io/ArnoldiMethod.jl/dev
- Size: 568 KB
Statistics
- Stars: 107
- Watchers: 4
- Forks: 19
- Open Issues: 6
- Releases: 13
Topics
Metadata Files
readme.md
ArnoldiMethod.jl
The Arnoldi Method with Krylov-Schur restart, natively in Julia.
Docs
Goal
Make eigs an efficient and native Julia function.
Installation
Open the package manager in the REPL via ] and run
(v1.6) pkg> add ArnoldiMethod
Example
```julia julia> using ArnoldiMethod, LinearAlgebra, SparseArrays
julia> A = spdiagm( -1 => fill(-1.0, 99), 0 => fill(2.0, 100), 1 => fill(-1.0, 99) );
julia> decomp, history = partialschur(A, nev=10, tol=1e-6, which=:SR);
julia> decomp PartialSchur decomposition (Float64) of dimension 10 eigenvalues: 10-element Array{Complex{Float64},1}: 0.0009674354160236865 + 0.0im 0.003868805732811139 + 0.0im 0.008701304061962657 + 0.0im 0.01546025527344699 + 0.0im 0.024139120518486677 + 0.0im 0.0347295035554728 + 0.0im 0.04722115887278571 + 0.0im 0.06160200160067088 + 0.0im 0.0778581192025522 + 0.0im 0.09597378493453936 + 0.0im
julia> history Converged: 10 of 10 eigenvalues in 174 matrix-vector products
julia> norm(A * decomp.Q - decomp.Q * decomp.R) 6.39386920955869e-8
julia> λs, X = partialeigen(decomp);
julia> norm(A * X - X * Diagonal(λs)) 6.393869211477937e-8 ```
ArnoldiMethod.jl is generic
ArnoldiMethod.jl's Schur decomposition is written in Julia, it does not use LAPACK. This allows you to use arbitrary number types.
We repeat the above example with DoubleFloats.jl and more accuracy.
```julia julia> using ArnoldiMethod, DoubleFloats, LinearAlgebra, SparseArrays
julia> A = spdiagm( -1 => fill(Double64(-1), 99), 0 => fill(Double64(2), 100), 1 => fill(Double64(-1), 99) );
julia> decomp, history = partialschur(A, nev=10, tol=1e-28, which=:SR);
julia> decomp PartialSchur decomposition (Double64) of dimension 10 eigenvalues: 10-element Vector{Complex{Double64}}: 9.6743541602387015850892187143202406e-04 + 0.0im 3.86880573281130335530623278634505297e-03 + 0.0im 8.70130406196283903200426213162702754e-03 + 0.0im 1.54602552734469798152574737604660783e-02 + 0.0im 2.41391205184865585041130463401142985e-02 + 0.0im 3.47295035554726251259365854776375027e-02 + 0.0im 4.72211588727859409278578405476287512e-02 + 0.0im 6.16020016006677741124091774018629622e-02 + 0.0im 7.78581192025509024705094505968950069e-02 + 0.0im 9.59737849345402152393882633733121172e-02 + 0.0im
julia> history Converged: 10 of 10 eigenvalues in 442 matrix-vector products
julia> norm(A * decomp.Q - decomp.Q * decomp.R) 4.53243232681764960018699535610331068e-30
julia> norm(decomp.Q' * decomp.Q - I) 3.53573060252329801278244497021683397e-29 ```
Owner
- Name: JuliaLinearAlgebra
- Login: JuliaLinearAlgebra
- Kind: organization
- Website: https://julialinearalgebra.org
- Repositories: 47
- Profile: https://github.com/JuliaLinearAlgebra
A collection of linear algebra packages for the Julia Programming Language.
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Stoppels" given-names: "Harmen Taeke" - family-names: "Nyman" given-names: "Lauri" title: "ArnoldiMethod.jl: Arnoldi Method with Krylov-Schur restart, natively in Julia" url: "https://github.com/JuliaLinearAlgebra/ArnoldiMethod.jl"
GitHub Events
Total
- Watch event: 6
- Fork event: 1
Last Year
- Watch event: 6
- Fork event: 1
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Harmen Stoppels | h****s@g****m | 150 |
| Lauri Nyman | l****1@g****m | 94 |
| Viral B. Shah | V****h | 15 |
| fgerick | f****k@g****m | 4 |
| dependabot[bot] | 4****] | 2 |
| krish8484 | a****6@g****m | 1 |
| jaakkor2 | j****2 | 1 |
| Yingbo Ma | m****5@g****m | 1 |
| Hendrik Ranocha | r****a | 1 |
| Andreas Noack | a****s@n****k | 1 |
| Adrian Braemer | 1****r | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 43
- Total pull requests: 92
- Average time to close issues: 9 months
- Average time to close pull requests: about 2 months
- Total issue authors: 18
- Total pull request authors: 14
- Average comments per issue: 2.95
- Average comments per pull request: 1.01
- Merged pull requests: 83
- Bot issues: 0
- Bot pull requests: 4
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 0.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- haampie (23)
- jpfairbanks (4)
- ViralBShah (2)
- sverek (1)
- jaakkor2 (1)
- snirgaz (1)
- JuliaTagBot (1)
- francispoulin (1)
- simonschoelly (1)
- jlbosse (1)
- jagot (1)
- PetrKryslUCSD (1)
- nrontsis (1)
- attobot (1)
- yakovbraver (1)
Pull Request Authors
- haampie (79)
- NymanLauri (12)
- ViralBShah (10)
- dependabot[bot] (8)
- jarlebring (3)
- samuelpowell (2)
- ranocha (2)
- YingboMa (2)
- abraemer (1)
- JeffreySarnoff (1)
- andreasnoack (1)
- krish8484 (1)
- jaakkor2 (1)
- fgerick (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- julia 8,008 total
- Total dependent packages: 25
- Total dependent repositories: 7
- Total versions: 12
juliahub.com: ArnoldiMethod
The Arnoldi Method with Krylov-Schur restart, natively in Julia.
- Homepage: https://julialinearalgebra.github.io/ArnoldiMethod.jl/dev
- Documentation: https://docs.juliahub.com/General/ArnoldiMethod/stable/
- License: MIT
-
Latest release: 0.4.0
published almost 2 years ago
Rankings
Dependencies
- JuliaRegistries/TagBot v1 composite
- actions/cache v1 composite
- actions/checkout v2 composite
- julia-actions/julia-buildpkg latest composite
- julia-actions/julia-processcoverage v1 composite
- julia-actions/julia-runtest latest composite
- julia-actions/julia-uploadcoveralls v1 composite
- julia-actions/setup-julia v1 composite