Libkrylov: A modular open‐source software library for extremely large on‐the‐fly matrix computations. Issue 11 (13th January 2023) - Rappoport, Dmitrij; Bekoe, Samuel; Mohanam, Luke Nambi; Le, Scott; George, Naje'; Shen, Ziyue; Furche, Filipp
Abstract: We present the design and implementation of libkrylov, an open‐source library for solving matrix‐free eigenvalue, linear, and shifted linear equations using Krylov subspace methods. The primary objectives of libkrylov are flexible API design and modular structure, which enables integration with specialized matrix–vector evaluation "engines." Libkrylov features pluggable preconditioning, orthonormalization, and tunable convergence control. Diagonal (conjugate gradient, CG), Davidson, and Jacobi–Davidson preconditioners are available, along with orthonormal and nonorthonormal (nKs) schemes. All functionality of libkrylov is exposed via Fortran and C application programming interfaces (APIs). We illustrate the performance of libkrylov for eigenvalue calculations arising in time‐dependent density functional theory (TDDFT) in the Tamm–Dancoff approximation (TDA) and discuss the convergence behavior as a function of preconditioning and orthonormalization methods. Abstract : Libkrylov implements iterative Krylov subspace algorithms for eigenvalue, linear, and shifted linear equations within an unified flexible application programming interface (API). The modular structure of libkrylov empowers the users of the library to find the algorithmic features such as preconditioning (conjugate gradient, Davidson, and Jacobi–Davidson) and orthonormalization (orthonormal, nonorthonormal) that best suit their specific use case.