A fast sparse matrix library for Python (Commonsense Computing version)
OTHER License
THE SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND "WITH ALL FAULTS". THE AUTHOR MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE QUALITY, SAFETY OR SUITABILITY OF THE SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
PySparse extends the Python interpreter by a set of sparse matrix types holding double precision values. PySparse also includes modules that implement
All these modules are implemented as C extension modules for maximum performance.
PySparse uses NumPy for handling dense vectors and matrices and makes use of UMFPACK and SuperLU for factorising sparse matrices.
Install NumPy
Download NumPy from http://www.numpy.org/
PySparse was tested with NumPy up to version 2.0
Unpack and Install the NumPy package
Refer to the documentation provided in the NumPy package for installation hints.
Customise the site.cfg file
PySparse is needs to link against the BLAS and LAPACK libraries, which must be available on your system.
Install PySparse
Run 'python setup.py install' to install PySparse into the default directory of your Python installation. Refer to the Python documentation, if you have advanced installation needs.
Some systems will require usage of a Fortran compiler to link the BLAS and/or LAPACK libraries. The Fortran compiler that was used to compile those libraries should normally be used. It can be specified at build time using:
python setup.py config_fc --fcompiler=gfortran build
(replace gfortran with your compiler; see 'python setup.py config_fc --help' for more information.)
Testing
Testing support is only rudimentary.
Run the scripts in the examples and test directories. Check if the results are meaningful :-;
PySparse was successfully tested on many UNIX brands, including Linux, OSX, Solaris (SunOS 5.6), Digital UNIX (OSF1 V4.0) and HP-UX 11.11, and Windows XP (MinGW). PySparse was tested using Python version 2.6.
Some documentation is located in the doc subdirectory.
Major parts of this work was done while I was working as a PhD student at
Institute of Scientific Computing ETH Zentrum CH-8092 Zurich, Switzerland
and while I was working as a postdoc at
Paul Scherrer Institute CH-5232 Villigen, Switzerland
I would like thank the developers of the SuperLU and Umfpack packages. Both SuperLU and Umfpack are incorporated into the PySparse software distribution.
For comments, questions, bug reports, etc. please consult the pysparse-users mailing list. See http://pysparse.sf.net.
Thank you for using PySparse!