跳转到主要内容

MUMPS的Python绑定,MUMPS是一个并行稀疏直接求解器

项目描述

PyMUMPS: 一个并行稀疏直接求解器

要求

安装

PyMUMPS可以通过pip从PyPI安装

pip install pymumps

可以使用--global-option指定自定义构建标志,例如指定MUMPS的安装位置

pip install pymumps --global-option="build_ext" \
    --global-option="-I$MUMPS_PREFIX/include" \
    --global-option="-L$MUMPS_PREFIX/lib" \

使用python setup.py build_ext --help获取所有允许的选项列表。

还有一个conda配方

conda install -c conda-forge pymumps

示例

集中输入和输出。稀疏矩阵和右侧只在0级进程中输入。使用所有可用的进程求解系统,结果在0级进程上可用。

from mumps import DMumpsContext
ctx = DMumpsContext()
if ctx.myid == 0:
    ctx.set_centralized_sparse(A)
    x = b.copy()
    ctx.set_rhs(x) # Modified in place
ctx.run(job=6) # Analysis + Factorization + Solve
ctx.destroy() # Cleanup

重用符号或数值分解。

from mumps import DMumpsContext
ctx = DMumpsContext()
if ctx.myid == 0:
    ctx.set_centralized_assembled_rows_cols(A.row+1, A.col+1) # 1-based
ctx.run(job=1) # Analysis

if ctx.myid == 0:
    ctx.set_centralized_assembled_values(A.data)
ctx.run(job=2) # Factorization

if ctx.myid == 0:
    x = b1.copy()
    ctx.set_rhs(x)
ctx.run(job=3) # Solve

# Reuse factorizations by running `job=3` with new right hand sides
# or analyses by supplying new values and running `job=2` to repeat
# the factorization process.

项目详情


下载文件

下载适用于您平台的文件。如果您不确定该选择哪个,请了解有关 安装软件包 的更多信息。

源分布

pymumps-0.3.3.tar.gz (8.2 kB 查看哈希值)

上传时间

由以下提供支持