diaglib - a fortran library of matrix-free iterative algorithm to compute a few eigenvalues and eigenvectors of large matrices
Authors/Creators
- 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
-
locally optimal block preconditioned conjugate gradient
-
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
Files
Files
(20.2 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:9961227d9268717d25b5b3ebae6de7d5
|
20.2 kB | Download |