Skip to main content

scikit-umfpack

scikit-umfpack provides wrapper of UMFPACK sparse direct solver to SciPy.

Usage:

>>> from scikits.umfpack import spsolve, splu
>>> lu = splu(A)
>>> x = spsolve(A, b)

Installing scikits.umfpack also enables using UMFPACK solver via some of the scipy.sparse.linalg functions, for SciPy >= 0.14.0. Note you will need to have installed UMFPACK before hand. UMFPACK is a part of SuiteSparse.

References

Installation

Releases of scikit-umfpack can be installed from source using pip, or with a package manager like conda . To install from source, first ensure the dependencies described in the next section are installed, then run:

pip install scikit-umfpack

To install scikit-umfpack from its source code directory, run in the root of a clone of the Git repository:

pip install .

Dependencies

scikit-umfpack depends on NumPy, SciPy, and SuiteSparse.

To build scikit-umfpack, the following are needed: - a C compiler - a BLAS library with CBLAS symbols (e.g., OpenBLAS, Accelerate on macOS, or reference BLAS) - NumPy - SuiteSparse (which contains UMFPACK) - SWIG

pkg-config is an optional dependency, if it’s installed it may be used to detect a BLAS library.

SuiteSparse cannot be installed from PyPI, however it will likely be available from your package manager of choice. E.g., installing on Ubuntu 22.04 can be achieved with:

sudo apt-get install libsuitesparse-dev

or from Conda-forge on any supported OS with:

conda install suitesparse

SuiteSparse can also be built from source, see the instructions in the README of the SuiteSparse repository.

Detection of UMFPACK

During the build, scikit-umfpack tries to automatically detect the UMFPACK shared library and headers. In case SuiteSparse is installed in a non-standard location, this autodetection may fail. If that happens, it is possible to provide the paths to the library and include directories in a config file (a Meson machine file). This file should contain absolute paths. For example, for a conda env on Windows, it may look like:

[properties]
umfpack-libdir = 'C:\Users\micromamba\envs\scikit-umfpack-dev\Library\lib'
umfpack-includedir = 'C:\Users\micromamba\envs\scikit-umfpack-dev\Library\include\suitesparse'

If that file is named nativefile.ini, then the pip invocation should look like (note that $PWD ensures an absolute path to the native file is used):

pip install . -Csetup-args=--native-file=$PWD/nativefile.ini

Development

Code

You can check the latest sources with the command:

git clone https://github.com/scikit-umfpack/scikit-umfpack.git

or if you have write privileges:

git clone git@github.com:scikit-umfpack/scikit-umfpack.git

Testing

After installation, you can launch the test suite from outside the source directory (you will need to have the pytest package installed):

pip install pytest
pytest --pyargs scikits.umfpack

Metadata

Release files for scikit-umfpack 0.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scikit-umfpack 0.4.2
File Size Uploaded Provenance Actions
scikit_umfpack-0.4.2.tar.gz 33.8 kB Without provenance Details for scikit_umfpack-0.4.2.tar.gz

Release files / scikit_umfpack-0.4.2.tar.gz

Download URL scikit_umfpack-0.4.2.tar.gz
Size 33.8 kB
Tags Source
SHA-256 checksum
How to use checksums
7cd652e6559804a52379f4ff367cfad54d6f7a6fc65a5e0bd26d26a1282c3f64
BLAKE2b-256 checksum
How to use checksums
c987e9837fbc60271bcbc569911814f3e63cb40c75aa4904a3d1d82cf8f5e079
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.12

Security for scikit-umfpack 0.4.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page