A Julia package collecting a number of Krylov-based algorithms for linear problems, singular value and eigenvalue problems and the application of functions of linear maps or operators to vectors.
KrylovKit.jl accepts general functions or callable objects as linear maps, and general Julia objects with vector like behavior (as defined in the docs) as vectors.
The high level interface of KrylovKit is provided by the following functions:
linsolve
: solve linear systemseigsolve
: find a few eigenvalues and corresponding eigenvectorssvdsolve
: find a few singular values and corresponding left and right singular vectorsexponentiate
: apply the exponential of a linear map to a vector
KrylovKit.jl
runs on Julia 0.7 or 1.0 and can be installed by entering the package REPL mode
(i.e. typing ]
) and then
pkg> add KrylovKit
or directly in the Julia REPL
julia> using Pkg
julia> Pkg.add("KrylovKit.jl")