pymatsolver#

Latest PyPI version MIT license. Coverage status

A (sparse) matrix solver for python.

Solving Ax = b should be as easy as:

Ainv = Solver(A)
x = Ainv * b

In pymatsolver we provide a number of wrappers to existing numerical packages. Nothing fancy here.

Solvers Available#

All solvers work with scipy.sparse matricies, and a single or multiple right hand sides using numpy:

  • L/U Triangular Solves

  • Wrapping of SciPy matrix solvers (direct and indirect)

  • Pardiso solvers

  • Mumps solvers

Installing Solvers#

Often, there are faster solvers available for your system than the default scipy factorizations available. pymatsolver provides a consistent interface to both MKL’s Pardiso routines and the MUMPS solver package. To make use of these we use intermediate wrappers for the libraries that must be installed separately.

Pardiso#

The Pardiso interface is recommended for Intel processor based systems. The interface is enabled by the pydiso python package, which can be installed through conda-forge as:

conda install -c conda-forge pydiso

Mumps#

Mumps is available for all platforms. The mumps interface is enabled by installing the python-mumps wrapper package. This can easily be installed through conda-forge with:

conda install -c conda-forge python-mumps

Code: simpeg/pymatsolver

Tests: simpeg/pymatsolver

Bugs & Issues: simpeg/pymatsolver#issues

License: MIT

Indices and tables#