跳转到主要内容

pymatsolver: Python矩阵求解器

项目描述

Latest PyPI version MIT license. Travis CI build status Coverage status

一个用于Python的(稀疏)矩阵求解器。

解Ax = b应该像这样简单:

Ainv = Solver(A)
x = Ainv * b

在pymatsolver中,我们为现有的数值软件包提供了一些封装。这里没有什么特别的地方。

可用的求解器

所有求解器都与scipy.sparse矩阵以及单个或多个使用numpy的右手边一起工作。

  • L/U三角求解

  • SciPy矩阵求解器的封装(直接和间接)

  • 由于MKL随conda一起提供,现在Pardiso求解器可用!

  • 带有良好错误信息的Mumps求解器

安装Mumps

由于对fortran库有多个依赖,我们无法使pip安装工作。然而,Linux和mac的安装相对简单。请注意,您必须预先安装mumps,目前我们只为顺序版本实现了这一点,因此您在安装时需要指向它。您还可以查看.travis.yml文件了解如何在TravisCI上实现。

Linux

从Ubuntu的全新安装

apt-get update
apt-get -y install gcc gfortran git libopenmpi-dev libmumps-seq-dev libblas-dev liblapack-dev

# Install all the python you need!
wget http://repo.continuum.io/miniconda/Miniconda-3.8.3-Linux-x86_64.sh -O miniconda.sh;
chmod +x miniconda.sh
./miniconda.sh -b
export PATH=/root/anaconda/bin:/root/miniconda/bin:$PATH
conda update --yes conda
conda install --yes numpy scipy matplotlib cython ipython nose

git clone https://github.com/rowanc1/pymatsolver.git
cd pymatsolver
make mumps

Mac

这假设您已安装Brew和一些Python(numpy,scipy)

brew install mumps --with-scotch5 --without-mpi

git clone https://github.com/rowanc1/pymatsolver.git
cd pymatsolver
make mumps_mac

如果您遇到问题,可能需要进入Makefile并更新各种库的Lib和Include指针。

此命令有助于查找依赖项。您还应关注brew安装mumps时发生的情况。

mpicc --showme

代码: https://github.com/simpeg/pymatsolver

测试: https://travis-ci.org/simpeg/pymatsolver

错误 & 问题: https://github.com/simpeg/pymatsolver/issues

许可: MIT

项目详情


下载文件

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

源分布

pymatsolver-0.2.0.tar.gz (10.5 kB 查看哈希)

上传时间

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面