Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
A Sparse Matrix Library for Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Type||Name||Latest commit message||Commit time|
|Failed to load latest commit information.|
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. Overview -------- PySparse extends the Python interpreter by a set of sparse matrix types holding double precision values. PySparse also includes modules that implement - iterative methods for solving linear systems of equations - a set of standard preconditioners - an interface to a direct solver for sparse linear systems of equations (SuperLU) - a Jacobi-Davidson eigenvalue solver for the symmetric, generalised matrix eigenvalue problem (JDSYM) 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. Installation ------------ 1. 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. 2. Customise the site.cfg file PySparse is needs to link against the BLAS and LAPACK libraries, which must be available on your system. 3. 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.) 4. 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. Documentation ------------- Some documentation is located in the doc subdirectory. Acknowledgements ---------------- 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. Contact ------- For comments, questions, bug reports, etc. please consult the pysparse-users mailing list. See http://pysparse.sf.net. Thank you for using PySparse!