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)
| 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.