FREELY AVAILABLE SOFTWARE
FOR
LINEAR ALGEBRA ON THE WEB
(July 2001)
I'm
putting together information on freely available software for the solution of
linear algebra problems. The interest is in software for highperformance
computers that's available in source form on the web for solving problems in
numerical linear algebra, specifically dense, sparse direct and iterative
systems and sparse iterative eigenvalue problems. Please let me know about
updates and corrections.
Additional pointers to
software can be found at:
http://www.nhse.org/rib/repositories/nhse/catalog/#Numerical_Programs_and_Routines
A
survey of Iterative Linear System Solver Packages can be found
at:
http://www.netlib.org/utk/papers/iterativesurvey/
Thanks, Jack
Software Package 
Type 
Language 
Mode 
Dense 
Sparse Direct 
Sparse Iterative 
Sparse Eigenvalue  

Real 
Complex 
f77 
c 
c++ 
Seq 
Dist 

SPD 
Gen 
SPD 
Gen 
Sym 
Gen 
X 
X 
X 
X 

X 

X 





 
X 
X 
X 
X 

X 

X 





 
X 
X 
X 
X 

X 

X 





 
X 



X 
X 

X 





 
X 
X 
X 
X 

X 


X 
X 
X 
X 

 
X 
X 
X 
X 

X 
M 

X 
X 
X 
X 

 
X 
X 

X 
X 
X 


X 
X 
X 
X 

 

Real 
Complex 
f77 
c 
c++ 
Seq 
Dist 

SPD 
Gen 
SPD 
Gen 
Sym 
Gen 
LAPACK 
X 
X 
X 
X 

X 

X 






X 
X 
X 
X 


M 
X 





 
X 

X 


X 
M 
X 





 
X 
X 
X 
X 


M/P 
X 





 

Real 
Complex 
f77 
c 
c++ 
Seq 
Dist 

SPD 
Gen 
SPD 
Gen 
Sym 
Gen 
X 
X 
X 


X 


X 
X 



 
X 


X 

X 


X 




 
X 
X 

X 


M 


X 



 
X 

X 


X 
M 

X 
X 



 
X 

X 
X 


M 

X 




 
X 
X 

X 

X 


X 
X 



 
X 


X 
X 
X 


X 
X 



 
X 
X 

X 

X 
M 

X 
X 
X 
X 

 
X 
X 
X 
X 

X 
M 

X 
X 



 
X 


X 

X 


X 
X 
X 
X 

 
X 
X 
X 


X 


X 
X 



 
X 

X 


X 


X 
X 



 

Real 
Complex 
f77 
c 
c++ 
Seq 
Dist 

SPD 
Gen 
SPD 
Gen 
Sym 
Gen 
X 


X 

X 
M 



X 
X 

 
X 

X 


X 




X 
X 

 
X 

X 
X 
X 

M 



X 
X 

 
X 

X 
X 
X 





P 
P 

 
X 

X 
X 

X 
M 



P 
P 

 
X 

X 
X 
X 
X 




X 
X 

 
X 



X 

M 



X 
X 

 
X 



X 
X 




X 
X 

 
X 

X 


X 




X 
X 

 
X 


X 

X 




X 
X 

 
X 

X 


X 





X 

 
X 


X 


M 



P 
P 

 
X 

X 
X 
X 

P 



X 


 
X 
X 
X 
X 

X 
M 



X 
X 

 
X 

X 



M 




X 

 
X 
X 
X 


X 




X 
X 
X 
X  
X 

X 







X 
X 

 
X 


X 

X 
M 



X 
X 

 
X 

X 


X 




X 
X 

 
X 
X 

X 

X 
M 

X 
X 
X 
X 

 
X 

X 


X 


X 
X 



 
X 

X 
X 

X 




X 
X 

 

Real 
Complex 
f77 
c 
c++ 
Seq 
Dist 

SPD 
Gen 
SPD 
Gen 
Sym 
Gen 
X 

X 


X 






X 
 
X 
X 
X 
X 
X 
X 
M/P 





X 
X  
PLANSO 
X 

X 


X 
M 





X 

X 

X 


X 
M 





X 

Notes:
Type:
R = Real arithmetic
C = Complex arithmetic
Language: f77, c, c++
Mode:
Seq = Sequential, vector and/or SMP/multithreaded versions
DM = distributed memory message passing (M = MPI, P = PVM)
Dense: Dense,
triangular, banded, tridiagonal matrices
Sparse: A sparse
matrix representation is used to contain the data.
Direct: A direct approach is used to factor and solve the system.
SPD: The matrix is symmetric and positive definite
Gen: The matrix is general
Iter: An iterative method is used to solve the system.
SPD: The matrix is symmetric and positive definite
Gen: The matrix is general
^: contains sparse LU without pivoting, only sequential.
P indicates preconditioners
Sparse eigen: An
iterative method is used to find some of the eigenvalues
Sym: The matrix is symmetric (Hermitian in the complex case)
Gen: The matrix is general