ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems.
The package is designed to compute a few eigenvalues and corresponding eigenvectors of a general n by n matrix A. It is most appropriate for large sparse or structured matrices A where structured means that a matrix-vector product w <- Av requires order n rather than the usual order n2 floating point operations. This software is based upon an algorithmic variant of the Arnoldi process called the Implicitly Restarted Arnoldi Method (IRAM). When the matrix A is symmetric it reduces to a variant of the Lanczos process called the Implicitly Restarted Lanczos Method (IRLM). These variants may be viewed as a synthesis of the Arnoldi/Lanczos process with the Implicitly Shifted QR technique that is suitable for large scale problems. For many standard problems, a matrix factorization is not required. Only the action of the matrix on a vector is needed.
ARPACK software is capable of solving large scale symmetric, nonsymmetric, and generalized eigenproblems from significant application areas. The software is designed to compute a few (k) eigenvalues with user specified features such as those of largest real part or largest magnitude. Storage requirements are on the order of n*k locations. No auxiliary storage is required. A set of Schur basis vectors for the desired k-dimensional eigen-space is computed which is numerically orthogonal to working precision. Numerically accurate eigenvectors are available on request.
- Reverse Communication Interface.
- Single and Double Precision Real Arithmetic Versions for Symmetric, Non-symmetric,
- Standard or Generalized Problems.
- Single and Double Precision Complex Arithmetic Versions for Standard or Generalized Problems.
- Routines for Banded Matrices - Standard or Generalized Problems.
- Routines for The Singular Value Decomposition.
- Example driver routines that may be used as templates to implement numerous Shift-Invert
- strategies for all problem types, data types and precision.
A parallel version of the ARPACK library is now availible. The message passing layers currently supported are BLACS and MPI . Parallel ARPACK (PARPACK) is provided as an extension to the current ARPACK library (Release 2.1). See instructions below on how to obtain and install software.
More detailed information about Parallel ARPACK is availible in P_ARPACK: An Efficient Portable Large Scale Eigenvalue Package for Distributed Memory Parallel Architectures PARA96, or the extended abstract A portable implementation of ARPACK for distributed memory parallel architectures, Preliminary proceedings, Copper Mountain Conference on Iterative Methods, 1996. ( by Kristi Maschhoff and Danny Sorensen )
Check out the ARPACK Users' Guide which can be purchased from SIAM.
You might also be interested in reading An evaluation of software for computing eigenvalues of sparse nonsymmetric matrices,
(by R. Lehoucq and J. A. Scott) Preprint MCS-P547-1195, Argonne National Laboratory.
TO GET THE SOFTWARE (Parallel and Serial Codes):
See our new software download page here
Follow the instructions in the README file.
Users of previous versions of ARPACK are urged to replace what they have been using with this new version. This new software has improved numerical performance and many new features.
Visit ARPACK Applications to read about some current applications which now use ARPACK.