Published February 27, 2023 | Version 1.0.0
Software Open

diaglib - a fortran library of matrix-free iterative algorithm to compute a few eigenvalues and eigenvectors of large matrices

  • 1. Dipartimento di Chimica e Chimica Industriale, Università di Pisa

Description

diaglib provides an implementation of two matrix-free algorithms to compute a few eigenvalues and eigenvectors of a large, possibly sparse matrix.

the available algorithms are

  1. locally optimal block preconditioned conjugate gradient

  2. davidson-liu

both algorithms require two user-provided routines to apply the matrx and a suitable preconditioner to a set of vectors. such routines have the following interface:

subroutine matvec(n,m,x,ax)
subroutine precnd(n,m,shift,x,ax)

where n,m are integers and x(n,m) and ax(n,m) are double precision arrays. as using the first eigenvalue in a shift-and-invert spirit is very common, a double precision scalar shift is also passed to precnd.

both implementations favor numerical stability over efficiency and are targeted at applications in molecular quantum chemistry, such as in (full) ci or augmented hessian calculations, where typically m << n.

Notes

This project was supported by the ICSC-Centro Nazionale di Ricerca in High Performance Computing, Big Data, and Quantum Computing, funded by the European Union-Next Generation EU - PNRR, Missione 4 Componente 2 Investimento 1.4.

Files

Files (20.2 kB)

Name Size Download all
md5:9961227d9268717d25b5b3ebae6de7d5
20.2 kB Download