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 gfortran-based 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

Third party utilities

perl script for converting files from dos format into the unix one dos2unixpl


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.