                           SVDPACK (VER 1.2)
 ***************************************************************************
 **                                                                       **
 **                        (C) COPYRIGHT 1991                             **
 **                         MICHAEL W. BERRY                              **
 **                        ALL RIGHTS RESERVED                            **
 **                                                                       **
 **          PERMISSION TO COPY ALL OR PART OF ANY OF THIS                **
 **          SOFTWARE IS ONLY GRANTED UPON APPROVAL FROM THE              **
 **          AUTHOR: MICHAEL W. BERRY, DEPT. OF COMPUTER                  **
 **          SCIENCE, 107 AYRES HALL, UNIVERSITY OF TENNESSEE,            **
 **          KNOXVILLE, TN,  37996-1301 (BERRY@CS.UTK.EDU)                **
 **                                                                       **
 **                                                                       **
 ***************************************************************************

                               PURPOSE:
                               -------

 FORTRAN-77 ROUTINES FOR COMPUTING THE SINGULAR VALUES AND SINGULAR VECTORS
 OF LARGE SPARSE MATRICES.  SUPPORT ROUTINES FROM LAPACK ARE INCLUDED ALSO.

                          FILE DESCRIPTIONS:
                          -----------------

 EACH FILE (lowercase) IN THE LIBRARY IS NAMED mmtu, WHERE

                  mm := 2 CHARACTER DESCRIPTOR OF METHOD USED
                        (la=SINGLE VECTOR LANCZOS,
                         bl=BLOCK LANCZOS,
                         si=SUBSPACE ITERATION,
                         tr=TRACE MINIMIZATION)
                  t  := 1 CHARACTER DESCRIPTOR OF FILE TYPE
                        (i=INPUT FILE, o=OUTPUT FILE, s=SOURCE CODE,
                         d=DOCUMENTATION),
                  u  := 1 CHARACTER DESCRIPTOR FOR INPUT/OUTPUT CHANNEL
                        THAT READS/WRITES THE FILE, OR THE TYPE OF
                        EQUIVALENT EIGENSYSTEM EMPLOYED: 1=CYCLIC,
                        2=A'A (WHERE THE SVD(A) IS DESIRED).

 SUPPLEMENTARY SPARSE MATRICES FOR SVDPACK TESTING ARE PROVIDED IN
 FILES OF THE FORM "datn", WHERE n IS ANY INTEGER. 

 -------------------------------------------------------------------------------

                            CURRENT CONTENTS:
                            ----------------

                           (RECORD LENGTH=80)

 -------------------------------------------------------------------------------


      METHOD: SINGLE VECTOR LANCZOS (LASVD) FOR 2-CYCLIC EIGENSYSTEMS
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
lad1        157     DOCUMENTATION
lai5          4     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
lao9        129     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
las1       2106     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: SINGLE VECTOR LANCZOS (LASVD) FOR A'A EIGENSYSTEMS
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
lad2        159     DOCUMENTATION
lai1          4     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
lao2         94     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
las2       2163     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: HYBRID BLOCK LANCZOS (BLSVD) FOR EQUIVALENT 2-CYCLIC EIGENSYSTEMS
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
bld1        158     DOCUMENTATION
bli5          5     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
blo9         37     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
bls1       2685     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: HYBRID BLOCK LANCZOS (BLSVD) FOR A'A EIGENSYSTEMS
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
bld2        174     DOCUMENTATION
bli1          5     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
blo2         37     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
bls2       2477     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: SUBSPACE ITERATION (RUTISHAUSER'S RITZIT) FOR SHIFTED
              2-CYCLIC MATRICES (SYMMETRIC POSITIVE DEFINITE)
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
sid1        206     DOCUMENTATION
sii5          6     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
sio9         35     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
sio4         90     SAMPLE OUTPUT FILE, CONVERGENCE STATISTICS
sis1       1942     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: SUBSPACE ITERATION (RUTISHAUSER'S RITZIT) FOR A'A
              EIGENSYSTEMS 
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
sid2        194     DOCUMENTATION
sii1          6     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
sio2         34     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
sio5         44     SAMPLE OUTPUT FILE, CONVERGENCE STATISTICS
sis2       2272     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: TRACE MINIMIZATION FOR SHIFTED 2-CYCLIC MATRICES
              (SYMMETRIC POSITIVE DEFINITE) WITH RITZ-SHIFTING
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
tmd1        207     DOCUMENTATION
tmi5         10     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
tmo9         46     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
tms1       2400     SOURCE CODE

 -------------------------------------------------------------------------------

      METHOD: TRACE MINIMIZATION FOR SHIFTED A'A MATRICES
              (SYMMETRIC POSITIVE DEFINITE) WITH RITZ-SHIFTING AND
               CHEBYSHEV POLYNOMIAL ACCELERATION)
              (TEST CASE: LARGEST SINGULAR TRIPLETS ONLY)

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
tmd2        214     DOCUMENTATION
tmi1         12     SAMPLE INPUT FILE, PARAMETERS
lai7        316     SAMPLE INPUT FILE, SPARSE MATRIX A
tmo2         47     SAMPLE OUTPUT FILE, SINGULAR VALUES AND STATISTICS
tms2       3053     SOURCE CODE

 -------------------------------------------------------------------------------

      SUPPORT LIBRARIES: SELECTED BLAS LEVEL 1, 2, 3 ROUTINES FROM LAPACK

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
blas        615     FORTRAN SOURCE CODE

 -------------------------------------------------------------------------------

      SUPPLEMENTARY SPARSE MATRICES (HARWELL-BOEING FORMAT) FOR
                 ADDITIONAL SVDPACK TESTING

 FILE    # RECORDS      DESCRIPTION         APPLICATION        SOURCE
 ----    ---------  --------------------    ------------       ------
dat1       1748     TERM-DOCUMENT MATRIX    INFORMATION        APPLE
                    (3206 BY 44)            RETRIEVAL          COMPUTER
dat2       2724     TERM-DOCUMENT MATRIX    INFORMATION        APPLE
                    (1472 BY 294)           RETRIEVAL          COMPUTER
dat3       7961     JACOBIAN MATRIX         SEISMIC            AMOCO
                    (1436 BY 330)           TOMOGRAPHY         RESEARCH

--------------------------------------------------------------------------------

      CRAY FORTRAN CONVERSION

 FILE     # RECORDS  DESCRIPTION
 ----     ---------  ------------
makecray     624     UNIX C-SHELL SCRIPT FOR PRODUCING CRAY FORTRAN
                     EQUIVALENT SVDPACK ROUTINES AND INPUT FILES.

 -------------------------------------------------------------------------------

      DOCUMENTATION FILES / MAKEFILE

 FILE    # RECORDS  DESCRIPTION
 ----    ---------  ------------
index       259     THIS FILE
makefile     65     MAKEFILE FOR UNIX-BASED SYSTEMS  (Sample use:
                             enter "make las1.x" to create las1 executable)

 -------------------------------------------------------------------------------

                        FOR MORE INFORMATION:
                        --------------------

        PLEASE ADDRESS ALL QUESTIONS, COMMENTS, OR CORRECTIONS TO:

        M. W. BERRY
        DEPARMENT OF COMPUTER SCIENCE
        UNIVERSITY OF TENNESSEE
        107 AYRES HALL
        KNOXVILLE, TN  37996-1301

        EMAIL: BERRY@CS.UTK.EDU
 
        PHONE: (615) 974-5067

 -------------------------------------------------------------------------------

                            REFERENCES:
                            -----------

 M. Berry, "Multiprocessor Sparse SVD Algorithms and Applications",
 Ph.D. Thesis, Department of Computer Science, University of Illinois
 at Urbana-Champaign, October (1990).  Center for Supercomputing
 Research and Development (CSRD) Tech. Rept. 1049, University of Illinois
 at Urbana-Champaign, (1990).

 M. Berry, G. Golub, and A. Sameh, "Computing the Classical and
 Generalized Singular Value Decompostion of Sparse Matrices on a
 Multiprocessor",  Proceedings of the International Workshop on
 Algorithms and Parallel VLSI Architectures, Pont-a-Mousson, France,
 (1990).

 M. Berry, "Multiprocessor Sparse SVD Methods for Information 
 Retrieval Applications", Science and Engineering on Supercomputers,
 Edited by Eric J. Pitcher, Computational Mechanics Publications,
 Southampton, Springer-Verlag, Berlin, Proceedings of the Fifth International
 Symposium of Science and Engineering on Supercomputers, London,
 England, October (1990), pp. 133-144.

 M. Berry and G. Golub, "Estimating Extremal Singular Values and Singular
 Vectors of Large Sparse Matrices via Modified Moments",  Proceedings of
 the 1991 IMSL Users Group Europe Conference, Paris, France.  Technical
 Report CIS-TR-91-03, Department of Computer and Information Sciences,
 University of Alabama at Birmingham, (1991).  

 M. Berry and G. Golub, "Estimating the Larget Singular Values and Singular
 Vectors of Large Sparse Matrices via Modified Moments",  Numerical
 Algorithms 1:4 (1991), pp. 351-372.


 M. Berry, "Large Scale Singular Value Computations".  To appear in
 Int. J. of Supercomputer Applications 6:1, (1992).

--------------------------------------------------------------------------------
