CSSI Element: libkrylov: A Modular Open-Source Software Library for extremely large and dense eigenvalue and linear problems

Dense linear systems and eigenvalue problems with extremely large dimensions, i.e., well over a million degrees of freedom or unknowns, underlie many grand challenges in science and engineering, from quantum molecular and materials sciences to fluid dynamics. This project develops, validates, and deploys the general-purpose open-source software library libkrylov for solving these linear systems and eigenvalue problems based solely on vector operations. We will give an overview of the already implemented and planned functionality of libkrylov including the recently developed non-orthonormal Krylov subspace methods, as well as design, data structures, and interfaces. The current implementation uses compile-time polymorphism and user-defined procedure encapsulation to enable high degrees of efficiency, generic coding, and ease of use.