Skip to main content

MUMPS for Python

Project description

MUMPSpy

PyPI - Version

A python wrapper for the sparse direct solver.

The wrapper allows:

  • real and complex factorization of symmetric or non-symmetric matrices
  • single and double precision
  • Schur complement calculation

Requirements

  • MUMPS - MUltifrontal Massively Parallel sparse direct Solver
  • mpi4py - Python bindings for MPI

Ubuntu/Debian users can use the following command to install the required packages:

apt-get install python-mpi4py libmumps-dev

The cmake version of MUMPS could be also used. See https://github.com/scivision/mumps for details and CI file for some syntax.

Installation

  pip install mumpspy

Usage

import mumpspy
import numpy as np
import scipy.sparse as sp

row = np.array([0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3])
col = np.array([0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 0, 1])
val = np.array([1, 2, 2, 1, 1, 3, -1, 2, 1, 1, 3, 1], dtype='d')
b = np.array([15, 12, 3, 5], dtype='d')

A = sp.coo_matrix((val, (row, col)), shape=(4, 4))

solver = mumpspy.MumpsSolver()  # initialize solver, real-valued system
solver.set_mtx(A)  # set sparse matrix
x = solver.solve(b)  # solve system for a given right-hand side
print(x)

Additional examples of syntax can be found in test file.

Testing

pytest can be used to run testing and coverage in the package.

Compatibility

Tested for the following MUMPS library versions (see Actions for current working versions):

  • 4.10.0
  • 5.0.2
  • 5.1.2
  • 5.2.1
  • 5.4.1
  • 5.5.x
  • 5.6.x
  • 5.7.x
  • 5.8.2

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mumpspy-1.4.1.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mumpspy-1.4.1-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file mumpspy-1.4.1.tar.gz.

File metadata

  • Download URL: mumpspy-1.4.1.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for mumpspy-1.4.1.tar.gz
Algorithm Hash digest
SHA256 4a10087516e7a655931f1d4c60f1df3c23fb5bded5a9e753391b7e447d835b15
MD5 11cad880ccd7b9a0c8d38ae665d6211d
BLAKE2b-256 045d72f18409663c257144207292834a5d17ea9bab991885a38a4f89974513f9

See more details on using hashes here.

File details

Details for the file mumpspy-1.4.1-py3-none-any.whl.

File metadata

  • Download URL: mumpspy-1.4.1-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for mumpspy-1.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bfdaeb520966acb15b49a65ff9ea5c26b1862940853e382bd86e91bc4e1e6201
MD5 7570ec7250316c7ae4b86093a4085230
BLAKE2b-256 13edf48cf779062c0826f77e5e6ae1f03f6fffe3c3842755b60af2403c4a8fbd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page