SPARSLAB Software
Introduction
This page is devoted to Sparslab software.
Sparslab is a package which started as a set of codes
developed for the experimental parts of
the papers written by Michele Benzi and Miroslav Tůma
with possibly other collaborators
and for some related projects.
The development was parallel to the research supported from various sources, in particular,
by grants of the Grant Agency
of the Academy of Sciences of the Czech Republic and by the Grant Agency of the Czech Republic.
A substantial part of the developed software is deals with algebraic preconditioning.
Most of the codes is based on a very conservative Fortran
and could be easily compiled in standard environments. An example gfortranbased makefile is attached.
We hope that more codes will come in the future.
Currently available
Currently, only a small fraction of the whole package is presented
as independent units with all dependencies.
The codes are assembled from a large pool of various subroutines.
functions and auxiliary routines written over the years.
We concentrate to make available some of the least trivial implementations
based on sparse data structures and dealing with approximate inverse decompositions.
We assume to make the whole package
available in the future.
So far, no other documentation than that provided in the source
codes is available. Any questions are welcome.
Using the codes
The codes can be freely used for research purposes provided the
Sparslab package is cited. Other use should be consulted
at mirektuma(at)karlin(dot)mff(dot)cuni(dot)cz.
Preconditioners in Fortran with Fortran drivers

SPD SAINV for a symmetric and positive definite
matrix and evaluation of x \approx inv(A)*b. The leftlooking algorithm.
Test driver with all its dependencies, simple makefile.
sainv_spd_left.tar.gz

Nonsymmetric AINV preconditioner for a nonsymmetric matrix
evaluation of x \approx inv(A)*b. The leftlooking algorithm.
Test driver with all its dependencies, simple makefile.
ainv_n_left.tar.gz

SPD RIF for a symmetric and positive definite
matrix and evaluation of x \approx inv(A)*b. The rightlooking algorithm.
Test driver with all its dependencies, simple makefile.
rif_spd_right.tar.gz

Implicit/explicit LS RIF for solving normal equations.
Implicit code does not need to form A^T*A. The rightlooking algorithm.
Test driver with all its dependencies, simple makefile.
rif_ls_right.tar.gz

Implicit/explicit LS RIF for solving normal equations.
Implicit code does not need to form A^T*A. The leftlooking algorithm.
Test driver with all its dependencies, simple makefile.
rif_ls_left.tar.gz

Nonsymmetric BIF preconditioner (will be cleaned/simplified in the future release).
Test driver with all its dependencies, simple makefile.
bif_nu.tar.gz
Third party utilities
perl script
for converting files from dos format
into the unix one
dos2unixpl
Acknowledgement
The project which initiated
opening this web page was
A1030103 of Grant Agency of the Academy of Sciences
of the Czech Republic. This project was devoted to scalable solvers.
The need to develop their substantial building blocks
was one of our motivations for making the codes publicly
available.
Later, development of SPARSLAB codes was supported by
the MWEB project from the program "Information Society"
under No. 1ET400300415
of the Czech Republic.
Some specialized routines were
developed for solving special augmented systems and were intended
as production codes. Their
current development is supported by the project of the
Faculty of Mechatronics and Interdisciplinary Engineering
Studies, Technical University in Liberec.
We would appreciate any comments, bug reports etc.
Also note that the available codes originally contained also some Matlab wrappers.
These interfaces are temporarily not available.