跳转到主要内容

图划分包

项目描述

Gitlab Build Status Github Build Status Python Package Index Release Page Zenodo DOI for latest release

PyMetis是George Karypis,Vipin Kumar和其他人开发的Metis图划分软件的Python包装器。它包括Metis的5.1.0版本,并使用Pybind11包装器生成库对其进行包装。到目前为止,它仅包装了最基本的图划分功能(这对于我的当前使用来说已经足够),但在需要更多的情况下扩展它应该是相当直接的。使用PyMetis对网格进行划分非常简单——本质上你需要传递给PyMetis的只是一个图的邻接表和您希望的部分数量。

安装

以下行应完成任务

pip install pymetis

快速入门

此图改编自Metis手册中的图2,使用零基索引:

doc/_static/tiny_01.png

可以使用以下方式定义和分割成两个图:

import numpy as np
import pymetis
adjacency_list = [np.array([4, 2, 1]),
                  np.array([0, 2, 3]),
                  np.array([4, 3, 1, 0]),
                  np.array([1, 2, 5, 6]),
                  np.array([0, 2, 5]),
                  np.array([4, 3, 6]),
                  np.array([5, 3])]
n_cuts, membership = pymetis.part_graph(2, adjacency=adjacency_list)
# n_cuts = 3
# membership = [1, 1, 1, 0, 1, 0, 0]

nodes_part_0 = np.argwhere(np.array(membership) == 0).ravel() # [3, 5, 6]
nodes_part_1 = np.argwhere(np.array(membership) == 1).ravel() # [0, 1, 2, 4]
doc/_static/tiny_01_partitioned.png

项目详情


下载文件

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

源分布

PyMetis-2023.1.1.tar.gz (343.7 kB 查看哈希值)

上传时间

构建分布

PyMetis-2023.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (305.6 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ x86-64

PyMetis-2023.1.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (376.6 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ i686

PyMetis-2023.1.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (288.7 kB 查看哈希值)

上传时间 PyPy macOS 10.9+ x86-64

PyMetis-2023.1.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (306.2 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ x86-64

PyMetis-2023.1.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (377.2 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ i686

PyMetis-2023.1.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (288.8 kB 查看哈希值)

上传时间 PyPy macOS 10.9+ x86-64

PyMetis-2023.1.1-cp311-cp311-musllinux_1_1_x86_64.whl (851.4 kB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ x86-64

PyMetis-2023.1.1-cp311-cp311-musllinux_1_1_i686.whl (957.3 kB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ i686

PyMetis-2023.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (331.4 kB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

PyMetis-2023.1.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (407.5 kB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ i686

PyMetis-2023.1.1-cp311-cp311-macosx_10_9_x86_64.whl (295.5 kB 查看哈希值)

上传时间 CPython 3.11 macOS 10.9+ x86-64

PyMetis-2023.1.1-cp310-cp310-musllinux_1_1_x86_64.whl (850.3 kB 查看哈希值)

上传时间 CPython 3.10 musllinux: musl 1.1+ x86-64

PyMetis-2023.1.1-cp310-cp310-musllinux_1_1_i686.whl (956.8 kB 查看哈希值)

上传时间 CPython 3.10 musllinux: musl 1.1+ i686

PyMetis-2023.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (330.0 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64

PyMetis-2023.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (406.9 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ i686

PyMetis-2023.1.1-cp310-cp310-macosx_10_9_x86_64.whl (294.1 kB 查看哈希值)

上传时间 CPython 3.10 macOS 10.9+ x86-64

PyMetis-2023.1.1-cp39-cp39-musllinux_1_1_x86_64.whl (850.5 kB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.1+ x86-64

PyMetis-2023.1.1-cp39-cp39-musllinux_1_1_i686.whl (957.2 kB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.1+ i686

PyMetis-2023.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (330.0 kB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.17+ x86-64

PyMetis-2023.1.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (407.1 kB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.17+ i686

PyMetis-2023.1.1-cp39-cp39-macosx_10_9_x86_64.whl (294.3 kB 查看哈希值)

上传时间 CPython 3.9 macOS 10.9+ x86-64

PyMetis-2023.1.1-cp38-cp38-musllinux_1_1_x86_64.whl (850.1 kB 查看哈希值)

上传时间 CPython 3.8 musllinux: musl 1.1+ x86-64

PyMetis-2023.1.1-cp38-cp38-musllinux_1_1_i686.whl (956.8 kB 查看哈希值)

上传时间 CPython 3.8 musllinux: musl 1.1+ i686

PyMetis-2023.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (329.8 kB 查看哈希值)

上传时间 CPython 3.8 manylinux: glibc 2.17+ x86-64

PyMetis-2023.1.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (406.9 kB 查看哈希值)

上传时间 CPython 3.8 manylinux: glibc 2.17+ i686

PyMetis-2023.1.1-cp38-cp38-macosx_10_9_x86_64.whl (294.0 kB 查看哈希值)

上传时间 CPython 3.8 macOS 10.9+ x86-64

由以下机构支持

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