pyorder
pyorder copied to clipboard
A Python Library for Sparse Matrix Orderings
PyOrder --- A Library of Sparse Matrix Reordering Methods in Python
Requirements
- NumPy
- The Harwell Subroutine Library subroutines MC21 and MC60. More interfaces may be added as needed. Head to http://hsl.rl.ac.uk/hsl2007/hsl20074researchers.html for license terms and for obtaining the software. You need to download the double precision real version. Edit site.cfg to specify the location of the source files.
- If you plan to read and write matrices in Harwell-Boeing or
Rutherford-Boeing format, you will need to install
fortranformat, available from PyPi.
Installation
For now, just::
python setup.py build
python setup.py install
To select another Fortran compiler::
python setup.py config_fc --fcompiler=<Fortran compiler name> build
For instance::
python setup.py config_fc --fcompiler=gfortran build
assuming gfortran is in your PATH.
To see a list of available Fortran compilers and their names::
python setup.py config_fc --help-fcompiler
Examples
You can test that your installation is working correctly by running the
examples. Change to the examples directory and type::
% python demo_mc21.py
% python demo_mc60.py
% bunzip2 commanche_dual.rb.bz2
% python demo_hb_mc60.py commanche_dual.rb
% python demo_hb_mc60_pro.py commanche_dual.rb
% python demo_hb_mc21.py commanche_dual.rb
If Matplotlib is installed, some sparsity pattern plots should pop up.
Examining the example scripts is a good idea.
Documentation
See http://dpo.github.com/pyorder.
There is a PDF manual in doc/PyOrder.pdf. The html documentation can be
generated by changing to the doc directory and issuing make html. Sphinx is
required to generate the documentation.
.. image:: https://d2weczhvl823v0.cloudfront.net/dpo/pyorder/trend.png :alt: Bitdeli badge :target: https://bitdeli.com/free