1. Purpose ------- This directory contains example drivers that call subroutines [s,d]sband.f, [s,d]nband.f or [c,z]nband.f to solve various eigenvalue problems in which matrices have BANDED structure. These drivers illustrate how to construct LAPACK-style banded matrices, and how to set various ARPACK parameters to solve different problems in different modes. The user may modify any one of these drivers, and construct his/her own matrix to solve the problem of his/her own interest. 2. Naming convention ----------------- The name for each banded solver has the form 'XYband.f', where X - is 's' (single precision) or 'd' (double precision) or 'c' (single precision complex) or 'z' (double precision complex) Y - is 's' (symmetric) or 'n' (nonsymmetric) The name for each driver has the form 'XYbdrN.f', where X - is 's' (single precision) or 'd' (double precision) or 'c' (single precision complex) or 'z' (double precision complex) Y - is 's' (symmetric) or 'n' (nonsymmetric) N - is a number between 1 and 6. If N = 1, the driver solves a STANDARD eigenvalue problem in REGULAR mode. N = 2, the driver solves a STANDARD eigenvalue problem in SHIFT-INVERT mode. N = 3, the driver solves a GENERALIZED eigenvalue problem in INVERSE mode. N = 4, the driver solves a GENERALIZED eigenvalue problem in SHIFT-INVERT mode (using mode 3 of __aupd.) These are four commonly used drivers. When N > 4 (only for real matrices), a special mode is used. For symmetric problem, if N = 5, the driver solves a GENERALIZED eigenvalue problem in BUCKLING mode. N = 6, the driver solves a GENERALIZED eigenvalue problem in CAYLEY mode. For nonsymmetric problem, if N = 5, the driver solves a STANDARD eigenvalue problem in SHIFT-INVERT mode using mode 4 of [d,s]naupd.f. N = 6. the driver solves a GENERALIZED eigenvalue problem SHIFT-INVERT mode using mode 4 of [d,s]naupd.f. Note: the imaginary part of the shift MUST be nonzero when these two drivers are used. 3. Usage ----- To run these drivers, you may use the makefile in this directory and issue, for example, "make snbdr1". Then execute using "snbdr1".