Anasazi software for the numerical solution of large-scale eigenvalue problems

Anasazi is a package within the Trilinos software project that provides a framework for the iterative, numerical solution of large-scale eigenvalue problems. Anasazi is written in ANSI C++ and exploits modern software paradigms to enable the research and development of eigensolver algorithms. Furthermore, Anasazi provides implementations for some of the most recent eigensolver methods. The purpose of our article is to describe the design and development of the Anasazi framework. A performance comparison of Anasazi and the popular FORTRAN 77 code ARPACK is given.

[1]  U. Hetmaniuk,et al.  A comparison of eigensolvers for large‐scale 3D modal analysis using AMG‐preconditioned iterative methods , 2005 .

[2]  G. W. Stewart,et al.  A Krylov-Schur Algorithm for Large Eigenproblems , 2001, SIAM J. Matrix Anal. Appl..

[3]  Henk A. van der Vorst,et al.  Computational methods for large eigenvalue problems , 2002 .

[4]  Charles L. Lawson,et al.  Basic Linear Algebra Subprograms for Fortran Usage , 1979, TOMS.

[5]  C. Lanczos An iteration method for the solution of the eigenvalue problem of linear differential and integral operators , 1950 .

[6]  E. Davidson The iterative calculation of a few of the lowest eigenvalues and corresponding eigenvectors of large real-symmetric matrices , 1975 .

[7]  Andrew V. Knyazev,et al.  Toward the Optimal Preconditioned Eigensolver: Locally Optimal Block Preconditioned Conjugate Gradient Method , 2001, SIAM J. Sci. Comput..

[8]  Jack Dongarra,et al.  LAPACK Users' guide (third ed.) , 1999 .

[9]  R. Morgan,et al.  Generalizations of Davidson's method for computing eigenvalues of sparse symmetric matrices , 1986 .

[10]  Charbel Farhat,et al.  Salinas: A Scalable Software for High-Performance Structural and Solid Mechanics Simulations , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[11]  W. Arnoldi The principle of minimized iterations in the solution of the matrix eigenvalue problem , 1951 .

[12]  G. Stewart,et al.  Reorthogonalization and stable algorithms for updating the Gram-Schmidt QR factorization , 1976 .

[13]  Danny C. Sorensen Acta Numerica 2002: Numerical methods for large eigenvalue problems , 2002 .

[14]  Jack Dongarra,et al.  LAPACK Users' Guide, 3rd ed. , 1999 .

[15]  J. Demmel,et al.  Sun Microsystems , 1996 .

[16]  Louis A. Romero,et al.  Bifurcation Tracking Algorithms and Software for Large Scale Applications , 2005, Int. J. Bifurc. Chaos.

[17]  David Detlefs Garbage Collection and Run-time Typing as a C++ Library , 1992, C++ Conference.

[18]  Alexander A. Stepanov,et al.  Algorithm‐oriented generic libraries , 1994, Softw. Pract. Exp..

[19]  Richard B. Lehoucq,et al.  Dynamical Systems and Non-Hermitian Iterative Eigensolvers , 2009, SIAM J. Numer. Anal..

[20]  Ed Anderson,et al.  LAPACK Users' Guide , 1995 .

[21]  Gerard L. G. Sleijpen,et al.  A Jacobi-Davidson Iteration Method for Linear Eigenvalue Problems , 1996, SIAM Rev..

[22]  Xiaofeng Xu,et al.  For Trilinos tutorial. , 2010 .

[23]  Tamara G. Kolda,et al.  An overview of the Trilinos project , 2005, TOMS.

[24]  David Vandevoorde,et al.  C++ Templates , 2002 .

[25]  Kesheng Wu,et al.  A Block Orthogonalization Procedure with Constant Synchronization Requirements , 2000, SIAM J. Sci. Comput..

[26]  D. Sorensen Numerical methods for large eigenvalue problems , 2002, Acta Numerica.

[27]  Richard B. Lehoucq,et al.  Basis selection in LOBPCG , 2006, J. Comput. Phys..

[28]  Pierre-Antoine Absil,et al.  Trust-Region Methods on Riemannian Manifolds , 2007, Found. Comput. Math..

[29]  Chao Yang,et al.  ARPACK users' guide - solution of large-scale eigenvalue problems with implicitly restarted Arnoldi methods , 1998, Software, environments, tools.

[30]  Danny C. Sorensen,et al.  Implicit Application of Polynomial Filters in a k-Step Arnoldi Method , 1992, SIAM J. Matrix Anal. Appl..

[31]  Gerard L. G. Sleijpen,et al.  A Jacobi-Davidson Iteration Method for Linear Eigenvalue Problems , 1996, SIAM J. Matrix Anal. Appl..