The prototype codes for packed triangular storage consists of
three high level routines:

(1) PxPPTRF/PxPPTRS  cholesky  factorization and solution.

(2) PxSPEV (PxHPEV) for finding all eigenvalues (and optionally eigenvectors) 
    of a symmetric matrix.

(3) PxSPEVX (PxHPEVX) expert driver for finding selected eigenvalues 
    (and optionally eigenvectors) of a symmetric matrix

(4) PxSPGVX (PxHPGVX) expert driver for finding selected eigenvalues
    (and optionally eigenvectors)  for the generalized 
    eigenvalue problem.



A simple test driver is included:


 (1) PxPPdriver for testing PxPPTRF and PxPPTRS.
     It compares the solution obtained from PxPOTRF/PxPOTRS
     and also computes in PxLASCHK the residual 
	|| A*x - b ||/( eps*n*||A||*||x|| )

     It is driven by an input file  LLT.dat. 


 (2) PxSPEVdriver (PxHPEVdriver) for testing PxSPEV (PxHPEV).
     It compares the eigenvectors obtained from PxSYEV and
     also computes the residual of 
	|| A*x - lam*x ||/( eps*n*||A||)

     It is driven by an input file SPEV.dat



 (3) PxSPEVXdriver (PxHPEVXdriver) for testing PxSPEVX (PxHPEVX).
     It compares the eigenvectors obtained from PxSYEVX and
     also computes the residual of
	|| A*x - lam*x ||/( eps*n*||A||)

     It is driven by an input file SPEVX.dat

 (4) PxSPGVXdriver (PxHPGVXdriver) for testing PxSPGVX (PxHPGVX).

==================

Installation:
=============

Edit the SLmake.inc to match the local computing environment.

"make double" would compute the double precision components in
the library "libpack.a"

"make pdppdriver" would produced the driver "pdppdriver" by
linking in "libpack.a".











