[![ci](https://img.shields.io/github/actions/workflow/status/pyamg/pyamg/ci.yml?style=flat-square&label=tests)](https://github.com/pyamg/pyamg/actions?query=workflow%3ACI-test+branch%3Amain)
[![lint](https://img.shields.io/github/actions/workflow/status/pyamg/pyamg/lint.yml?style=flat-square&label=lint)](https://github.com/pyamg/pyamg/actions?query=workflow%3ACI-lint+branch%3Amain)
[![PyPI - Version](https://img.shields.io/pypi/v/pyamg?style=flat-square)](https://pypi.org/project/pyamg/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyamg?style=flat-square)](https://pypi.org/project/pyamg/)
[![Codecov](https://img.shields.io/codecov/c/github/pyamg/pyamg?style=flat-square)](https://app.codecov.io/gh/pyamg/pyamg)
[![joss](https://joss.theoj.org/papers/10.21105/joss.05495/status.svg?style=flat-square)](https://doi.org/10.21105/joss.05495)
# Installation
PyAMG requires `numpy` and `scipy`
```
pip install pyamg
```
or from source:
```
pip install .
```
(`python setup.py install` will no longer work)
or with conda (see details below)
```
conda config --add channels conda-forge
conda install pyamg
```
# Introduction
PyAMG is a library of **Algebraic Multigrid (AMG)** solvers with a convenient Python interface.
![](https://raw.githubusercontent.com/pyamg/pyamg/main/docs/logo/pyamg_logo_withtext.png)
PyAMG is currently developed and maintained by
[Luke Olson](http://lukeo.cs.illinois.edu),
[Jacob Schroder](https://www.unm.edu/~jbschroder), and
[Ben Southworth](https://arxiv.org/a/southworth_b_1.html).
The organization of the project can be found in [`organization.md`](organization.md) and
examples of use can be found in [`pyamg-examples`](https://github.com/pyamg/pyamg-examples).
**Acknowledgements:**
PyAMG was created by
[Nathan Bell](http://wnbell.com/),
[Luke Olson](http://lukeo.cs.illinois.edu), and
[Jacob Schroder](https://www.unm.edu/~jbschroder).
Portions of the project were partially supported by the NSF under award DMS-0612448.
# Citing
If you use PyAMG in your work, please consider using the following citation:
<pre>
@article{pyamg2023,
author = {Nathan Bell and Luke N. Olson and Jacob Schroder and Ben Southworth},
title = {{PyAMG}: Algebraic Multigrid Solvers in Python},
journal = {Journal of Open Source Software},
year = {2023},
publisher = {The Open Journal},
volume = {8},
number = {87},
pages = {5495},
doi = {10.21105/joss.05495},
url = {https://doi.org/10.21105/joss.05495},
}
</pre>
# Getting Help
- For documentation see [http://pyamg.readthedocs.io/en/latest/](http://pyamg.readthedocs.io/en/latest/).
- Create an [issue](https://github.com/pyamg/pyamg/issues).
- Look at the [Tutorial](https://github.com/pyamg/pyamg/wiki/Tutorial) or the [examples](https://github.com/pyamg/pyamg-examples) (for instance the [0_start_here](https://github.com/pyamg/pyamg-examples/blob/main/0_start_here/demo.py) example).
- Run the unit tests (`pip install pytest`):
- With PyAMG installed and from a non-source directory:
```python
import pyamg
pyamg.test()
```
- From the PyAMG source directory and installed (e.g. with `pip install -e .`):
```python
pytest .
```
# What is AMG?
AMG is a multilevel technique for solving large-scale linear systems with optimal or near-optimal efficiency. Unlike geometric multigrid, AMG requires little or no geometric information about the underlying problem and develops a sequence of coarser grids directly from the input matrix. This feature is especially important for problems discretized on unstructured meshes and irregular grids.
# PyAMG Features
PyAMG features implementations of:
- **Ruge-Stuben (RS)** or *Classical AMG*
- AMG based on **Smoothed Aggregation (SA)**
and experimental support for:
- **Adaptive Smoothed Aggregation (αSA)**
- **Compatible Relaxation (CR)**
The predominant portion of PyAMG is written in Python with a smaller amount of supporting C++ code for performance critical operations.
# Example Usage
PyAMG is easy to use! The following code constructs a two-dimensional Poisson problem and solves the resulting linear system with Classical AMG.
````python
import pyamg
import numpy as np
A = pyamg.gallery.poisson((500,500), format='csr') # 2D Poisson problem on 500x500 grid
ml = pyamg.ruge_stuben_solver(A) # construct the multigrid hierarchy
print(ml) # print hierarchy information
b = np.random.rand(A.shape[0]) # pick a random right hand side
x = ml.solve(b, tol=1e-10) # solve Ax=b to a tolerance of 1e-10
print("residual: ", np.linalg.norm(b-A*x)) # compute norm of residual vector
````
Program output:
<pre>
multilevel_solver
Number of Levels: 9
Operator Complexity: 2.199
Grid Complexity: 1.667
Coarse Solver: 'pinv2'
level unknowns nonzeros
0 250000 1248000 [45.47%]
1 125000 1121002 [40.84%]
2 31252 280662 [10.23%]
3 7825 70657 [ 2.57%]
4 1937 17971 [ 0.65%]
5 483 4725 [ 0.17%]
6 124 1352 [ 0.05%]
7 29 293 [ 0.01%]
8 7 41 [ 0.00%]
residual: 1.24748994988e-08
</pre>
# Conda
More information can be found at [conda-forge/pyamg-feedstock](https://github.com/conda-forge/pyamg-feedstock).
*Linux:*
[![Circle CI](https://circleci.com/gh/conda-forge/pyamg-feedstock.svg?style=shield)](https://circleci.com/gh/conda-forge/pyamg-feedstock)
*OSX:*
[![TravisCI](https://travis-ci.org/conda-forge/pyamg-feedstock.svg?branch=master)](https://travis-ci.org/conda-forge/pyamg-feedstock)
*Windows:*
[![AppVeyor](https://ci.appveyor.com/api/projects/status/github/conda-forge/pyamg-feedstock?svg=True)](https://ci.appveyor.com/project/conda-forge/pyamg-feedstock/branch/master)
*Version:*
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/pyamg/badges/version.svg)](https://anaconda.org/conda-forge/pyamg)
*Downloads:*
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/pyamg/badges/downloads.svg)](https://anaconda.org/conda-forge/pyamg)
Installing `pyamg` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with:
```
conda config --add channels conda-forge
```
Once the `conda-forge` channel has been enabled, `pyamg` can be installed with:
```
conda install pyamg
```
It is possible to list all of the versions of `pyamg` available on your platform with:
```
conda search pyamg --channel conda-forge
```
Raw data
{
"_id": null,
"home_page": "https://github.com/pyamg/pyamg",
"name": "pyamg",
"maintainer": "Luke Olson",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "luke.olson@gmail.com",
"keywords": "algebraic multigrid,AMG,sparse matrix,preconditioning",
"author": "Nathan Bell, Luke Olson, and Jacob Schroder",
"author_email": "luke.olson@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/00/37/bdc7f3d8622ff1a6e96ed62fe7d3a068bab62aafcf7cd434b065f62634ff/pyamg-5.1.0.tar.gz",
"platform": null,
"description": "[![ci](https://img.shields.io/github/actions/workflow/status/pyamg/pyamg/ci.yml?style=flat-square&label=tests)](https://github.com/pyamg/pyamg/actions?query=workflow%3ACI-test+branch%3Amain)\n[![lint](https://img.shields.io/github/actions/workflow/status/pyamg/pyamg/lint.yml?style=flat-square&label=lint)](https://github.com/pyamg/pyamg/actions?query=workflow%3ACI-lint+branch%3Amain)\n[![PyPI - Version](https://img.shields.io/pypi/v/pyamg?style=flat-square)](https://pypi.org/project/pyamg/)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyamg?style=flat-square)](https://pypi.org/project/pyamg/)\n[![Codecov](https://img.shields.io/codecov/c/github/pyamg/pyamg?style=flat-square)](https://app.codecov.io/gh/pyamg/pyamg)\n[![joss](https://joss.theoj.org/papers/10.21105/joss.05495/status.svg?style=flat-square)](https://doi.org/10.21105/joss.05495)\n\n# Installation\nPyAMG requires `numpy` and `scipy`\n\n```\npip install pyamg\n```\n\nor from source:\n\n```\npip install .\n```\n\n(`python setup.py install` will no longer work)\n\nor with conda (see details below)\n\n```\nconda config --add channels conda-forge\nconda install pyamg\n```\n\n# Introduction\n\nPyAMG is a library of **Algebraic Multigrid (AMG)** solvers with a convenient Python interface.\n\n![](https://raw.githubusercontent.com/pyamg/pyamg/main/docs/logo/pyamg_logo_withtext.png)\n\nPyAMG is currently developed and maintained by\n[Luke Olson](http://lukeo.cs.illinois.edu),\n[Jacob Schroder](https://www.unm.edu/~jbschroder), and\n[Ben Southworth](https://arxiv.org/a/southworth_b_1.html).\nThe organization of the project can be found in [`organization.md`](organization.md) and\nexamples of use can be found in [`pyamg-examples`](https://github.com/pyamg/pyamg-examples).\n\n**Acknowledgements:**\nPyAMG was created by\n[Nathan Bell](http://wnbell.com/), \n[Luke Olson](http://lukeo.cs.illinois.edu), and\n[Jacob Schroder](https://www.unm.edu/~jbschroder).\nPortions of the project were partially supported by the NSF under award DMS-0612448.\n\n# Citing\n\nIf you use PyAMG in your work, please consider using the following citation:\n\n<pre>\n@article{pyamg2023,\n author = {Nathan Bell and Luke N. Olson and Jacob Schroder and Ben Southworth},\n title = {{PyAMG}: Algebraic Multigrid Solvers in Python},\n journal = {Journal of Open Source Software},\n year = {2023},\n publisher = {The Open Journal},\n volume = {8},\n number = {87},\n pages = {5495},\n doi = {10.21105/joss.05495},\n url = {https://doi.org/10.21105/joss.05495},\n}\n</pre>\n\n# Getting Help\n\n- For documentation see [http://pyamg.readthedocs.io/en/latest/](http://pyamg.readthedocs.io/en/latest/).\n\n- Create an [issue](https://github.com/pyamg/pyamg/issues).\n\n- Look at the [Tutorial](https://github.com/pyamg/pyamg/wiki/Tutorial) or the [examples](https://github.com/pyamg/pyamg-examples) (for instance the [0_start_here](https://github.com/pyamg/pyamg-examples/blob/main/0_start_here/demo.py) example).\n\n- Run the unit tests (`pip install pytest`):\n - With PyAMG installed and from a non-source directory:\n ```python\n import pyamg\n pyamg.test()\n ```\n - From the PyAMG source directory and installed (e.g. with `pip install -e .`):\n ```python\n pytest .\n ```\n\n# What is AMG?\n\n AMG is a multilevel technique for solving large-scale linear systems with optimal or near-optimal efficiency. Unlike geometric multigrid, AMG requires little or no geometric information about the underlying problem and develops a sequence of coarser grids directly from the input matrix. This feature is especially important for problems discretized on unstructured meshes and irregular grids.\n\n# PyAMG Features\n\nPyAMG features implementations of:\n\n- **Ruge-Stuben (RS)** or *Classical AMG*\n- AMG based on **Smoothed Aggregation (SA)**\n\nand experimental support for:\n\n- **Adaptive Smoothed Aggregation (\u03b1SA)**\n- **Compatible Relaxation (CR)**\n\nThe predominant portion of PyAMG is written in Python with a smaller amount of supporting C++ code for performance critical operations.\n\n# Example Usage\n\nPyAMG is easy to use! The following code constructs a two-dimensional Poisson problem and solves the resulting linear system with Classical AMG.\n\n````python\nimport pyamg\nimport numpy as np\nA = pyamg.gallery.poisson((500,500), format='csr') # 2D Poisson problem on 500x500 grid\nml = pyamg.ruge_stuben_solver(A) # construct the multigrid hierarchy\nprint(ml) # print hierarchy information\nb = np.random.rand(A.shape[0]) # pick a random right hand side\nx = ml.solve(b, tol=1e-10) # solve Ax=b to a tolerance of 1e-10\nprint(\"residual: \", np.linalg.norm(b-A*x)) # compute norm of residual vector\n````\n\nProgram output:\n\n<pre>\nmultilevel_solver\nNumber of Levels: 9\nOperator Complexity: 2.199\nGrid Complexity: 1.667\nCoarse Solver: 'pinv2'\n level unknowns nonzeros\n 0 250000 1248000 [45.47%]\n 1 125000 1121002 [40.84%]\n 2 31252 280662 [10.23%]\n 3 7825 70657 [ 2.57%]\n 4 1937 17971 [ 0.65%]\n 5 483 4725 [ 0.17%]\n 6 124 1352 [ 0.05%]\n 7 29 293 [ 0.01%]\n 8 7 41 [ 0.00%]\n\nresidual: 1.24748994988e-08\n</pre>\n\n# Conda\n\nMore information can be found at [conda-forge/pyamg-feedstock](https://github.com/conda-forge/pyamg-feedstock).\n\n*Linux:*\n[![Circle CI](https://circleci.com/gh/conda-forge/pyamg-feedstock.svg?style=shield)](https://circleci.com/gh/conda-forge/pyamg-feedstock)\n\n*OSX:*\n[![TravisCI](https://travis-ci.org/conda-forge/pyamg-feedstock.svg?branch=master)](https://travis-ci.org/conda-forge/pyamg-feedstock)\n\n*Windows:*\n[![AppVeyor](https://ci.appveyor.com/api/projects/status/github/conda-forge/pyamg-feedstock?svg=True)](https://ci.appveyor.com/project/conda-forge/pyamg-feedstock/branch/master)\n\n*Version:*\n[![Anaconda-Server Badge](https://anaconda.org/conda-forge/pyamg/badges/version.svg)](https://anaconda.org/conda-forge/pyamg)\n\n*Downloads:*\n[![Anaconda-Server Badge](https://anaconda.org/conda-forge/pyamg/badges/downloads.svg)](https://anaconda.org/conda-forge/pyamg)\n\nInstalling `pyamg` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with:\n\n```\nconda config --add channels conda-forge\n```\n\nOnce the `conda-forge` channel has been enabled, `pyamg` can be installed with:\n\n```\nconda install pyamg\n```\n\nIt is possible to list all of the versions of `pyamg` available on your platform with:\n\n```\nconda search pyamg --channel conda-forge\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "PyAMG: Algebraic Multigrid Solvers in Python",
"version": "5.1.0",
"project_urls": {
"Download": "https://github.com/pyamg/pyamg/releases",
"Homepage": "https://github.com/pyamg/pyamg"
},
"split_keywords": [
"algebraic multigrid",
"amg",
"sparse matrix",
"preconditioning"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "56da538e3c530f11516e1ff44adc9349c14639c9612f1aec57e81eab29c0abc7",
"md5": "dc8559709296a954db55ecaa51e919bf",
"sha256": "3be3d4e6d74cc30e344ee0aa2f995ef3712e24ed161d5ca9e84e67bc2415a97f"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "dc8559709296a954db55ecaa51e919bf",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 2506607,
"upload_time": "2024-03-19T15:53:54",
"upload_time_iso_8601": "2024-03-19T15:53:54.237119Z",
"url": "https://files.pythonhosted.org/packages/56/da/538e3c530f11516e1ff44adc9349c14639c9612f1aec57e81eab29c0abc7/pyamg-5.1.0-cp310-cp310-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "332186840ab8343e67401131c5b0228a884592c5c5bc9c123f03a7670d62f59b",
"md5": "663aacc194c1dbb679c130fb4cfede5a",
"sha256": "9ae5b83f68224daf9b9c59cb7c1b34a535ff0a01d7abb129a99ae4455478de2e"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "663aacc194c1dbb679c130fb4cfede5a",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1674234,
"upload_time": "2024-03-19T15:53:56",
"upload_time_iso_8601": "2024-03-19T15:53:56.861491Z",
"url": "https://files.pythonhosted.org/packages/33/21/86840ab8343e67401131c5b0228a884592c5c5bc9c123f03a7670d62f59b/pyamg-5.1.0-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2a0cd5fe73cac24dfba5b4756ef87a7de8fde4ab05e9e802d377fbd614cbf293",
"md5": "c2896e89ff919153b964a047d71f1351",
"sha256": "9df3e4a4de0f90796dea272ab6aa9a1f52d4912e175e121a669cf7a9974dd7a6"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "c2896e89ff919153b964a047d71f1351",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1598607,
"upload_time": "2024-03-19T15:53:58",
"upload_time_iso_8601": "2024-03-19T15:53:58.665537Z",
"url": "https://files.pythonhosted.org/packages/2a/0c/d5fe73cac24dfba5b4756ef87a7de8fde4ab05e9e802d377fbd614cbf293/pyamg-5.1.0-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "128c72cd639664a55d81741c7f9ed8ec1b4bcbeafa5838f3f5ce3e4f8dc45fd1",
"md5": "15db477070dfb7ba42ae048be469fa5d",
"sha256": "63116832e812e840c562ad66f144b2547fb209399a60520ca37f764e174d4a3d"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "15db477070dfb7ba42ae048be469fa5d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1920776,
"upload_time": "2024-03-19T15:54:00",
"upload_time_iso_8601": "2024-03-19T15:54:00.583550Z",
"url": "https://files.pythonhosted.org/packages/12/8c/72cd639664a55d81741c7f9ed8ec1b4bcbeafa5838f3f5ce3e4f8dc45fd1/pyamg-5.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ed060ecd1a13301242c4533dee12ec0825158a43068e5f14df3069165e45f925",
"md5": "44b9cc8f84a4084d2558c7068386a9e8",
"sha256": "8e9fb2579a6a2477f887a61f7c61a759caeb3b3fb864b255c8c009c0ab2bf17b"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "44b9cc8f84a4084d2558c7068386a9e8",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 2218930,
"upload_time": "2024-03-19T15:54:02",
"upload_time_iso_8601": "2024-03-19T15:54:02.523456Z",
"url": "https://files.pythonhosted.org/packages/ed/06/0ecd1a13301242c4533dee12ec0825158a43068e5f14df3069165e45f925/pyamg-5.1.0-cp310-cp310-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1016489b50b9b84bdf9695f2cd51c085184abca2891a08c6bf11d16a36e2dcff",
"md5": "9aa731c35532449a32af4dc08573d43b",
"sha256": "027d90eb1e4254caa7f19c604d26f569547f4e013587411d94d3c1cc11c8d1b0"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-win32.whl",
"has_sig": false,
"md5_digest": "9aa731c35532449a32af4dc08573d43b",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1415972,
"upload_time": "2024-03-19T15:54:04",
"upload_time_iso_8601": "2024-03-19T15:54:04.405616Z",
"url": "https://files.pythonhosted.org/packages/10/16/489b50b9b84bdf9695f2cd51c085184abca2891a08c6bf11d16a36e2dcff/pyamg-5.1.0-cp310-cp310-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3771604857aef7039934534bf5771463038340ae20afcc4bb599960f9592d9ab",
"md5": "a77f49a5bea1966a093497d0c75619b4",
"sha256": "d2005dbfba9230c000731c8b5e874d36307768178ccdc7f1f87a8b1302357451"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "a77f49a5bea1966a093497d0c75619b4",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1559790,
"upload_time": "2024-03-19T15:54:06",
"upload_time_iso_8601": "2024-03-19T15:54:06.712564Z",
"url": "https://files.pythonhosted.org/packages/37/71/604857aef7039934534bf5771463038340ae20afcc4bb599960f9592d9ab/pyamg-5.1.0-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "76e6827f867893d2dbc35c7c0ab32de6e34b4d69e4838d1c6b23ba07f2d2c029",
"md5": "95453aeaf053fafd348a310b2d9aa7cb",
"sha256": "18262da25d46daeae6d05b900c93fc7dc13abfc518a877e0e895258969a0e062"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "95453aeaf053fafd348a310b2d9aa7cb",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 2531509,
"upload_time": "2024-03-19T15:54:09",
"upload_time_iso_8601": "2024-03-19T15:54:09.167686Z",
"url": "https://files.pythonhosted.org/packages/76/e6/827f867893d2dbc35c7c0ab32de6e34b4d69e4838d1c6b23ba07f2d2c029/pyamg-5.1.0-cp311-cp311-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "89d530dad1033c05535fe77c2119845091e007623cbd544081182c3a492b2784",
"md5": "176eb68462e8db60f3f0dcc037539a1e",
"sha256": "fbfd14c5e1bec11e2e7c7ddedbb5194f32a00dacc3078b02626d432eae1389d6"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "176eb68462e8db60f3f0dcc037539a1e",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1687212,
"upload_time": "2024-03-19T15:54:11",
"upload_time_iso_8601": "2024-03-19T15:54:11.499461Z",
"url": "https://files.pythonhosted.org/packages/89/d5/30dad1033c05535fe77c2119845091e007623cbd544081182c3a492b2784/pyamg-5.1.0-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "597ccb1a415427fe24cef931f323ec0c8a5d10fc54f8e7bd3e0bb64bcfcc928c",
"md5": "87a6f1fbe880c87e5a5ba780d6f0a0ab",
"sha256": "58d1cf0f512e047311605e14532a16203cdb7ab4af845db4275d04a8b90e8bc9"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "87a6f1fbe880c87e5a5ba780d6f0a0ab",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1609469,
"upload_time": "2024-03-19T15:54:13",
"upload_time_iso_8601": "2024-03-19T15:54:13.251703Z",
"url": "https://files.pythonhosted.org/packages/59/7c/cb1a415427fe24cef931f323ec0c8a5d10fc54f8e7bd3e0bb64bcfcc928c/pyamg-5.1.0-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e3b02c74a638c533781b45018c503f7c87f3376b5c1d8e9c99716904e07dc569",
"md5": "aac082c1bea3fe1baf69a7efeef26e6f",
"sha256": "d1b9e9fdb61b861387f73b6716427792c29ba3fa7b0ca7641c6db8aac80f5eb6"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "aac082c1bea3fe1baf69a7efeef26e6f",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1931872,
"upload_time": "2024-03-19T15:54:15",
"upload_time_iso_8601": "2024-03-19T15:54:15.010206Z",
"url": "https://files.pythonhosted.org/packages/e3/b0/2c74a638c533781b45018c503f7c87f3376b5c1d8e9c99716904e07dc569/pyamg-5.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e0fb25863408d2d1cf4460a273eaaea7fe57769fdbf2232df43095dff319bbbd",
"md5": "cfd8229c2d17bab53d10ba3f02cd9fbd",
"sha256": "4e5b75c0815f2949e17b6fc9f2ee93486a28f623575b5f55d4eb7c620e0cfb9b"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "cfd8229c2d17bab53d10ba3f02cd9fbd",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 2229543,
"upload_time": "2024-03-19T15:54:17",
"upload_time_iso_8601": "2024-03-19T15:54:17.429870Z",
"url": "https://files.pythonhosted.org/packages/e0/fb/25863408d2d1cf4460a273eaaea7fe57769fdbf2232df43095dff319bbbd/pyamg-5.1.0-cp311-cp311-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "db398c36ff3176e5c1d2084943264e67f77ea89e8b1b5b303ae05c623d20323d",
"md5": "7af9f832864a73782a418607882cf357",
"sha256": "a1acacd509be8c4a343338377b9b63b1edf9afb30876dbc52847f2b6b45d8e1f"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-win32.whl",
"has_sig": false,
"md5_digest": "7af9f832864a73782a418607882cf357",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1425712,
"upload_time": "2024-03-19T15:54:19",
"upload_time_iso_8601": "2024-03-19T15:54:19.001570Z",
"url": "https://files.pythonhosted.org/packages/db/39/8c36ff3176e5c1d2084943264e67f77ea89e8b1b5b303ae05c623d20323d/pyamg-5.1.0-cp311-cp311-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aa7700666e55a314303c6b05ddb4e86dc5978be15b199f7274cb6f304cf4285d",
"md5": "4874c53fd2782db0c9363f2854622844",
"sha256": "d05fe91e150dfd104c6e5c239a0c29cf9274df935642dfe682a38608f48967f3"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "4874c53fd2782db0c9363f2854622844",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1568740,
"upload_time": "2024-03-19T15:54:21",
"upload_time_iso_8601": "2024-03-19T15:54:21.624877Z",
"url": "https://files.pythonhosted.org/packages/aa/77/00666e55a314303c6b05ddb4e86dc5978be15b199f7274cb6f304cf4285d/pyamg-5.1.0-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "68c96a2e6456d5af9b7635947b917bfa357a204a6beb2b2ab0d9992ddda17a30",
"md5": "f02a0ba5390c0b72f5d0081483404c69",
"sha256": "be0380b60e6713dc5a003ffe9258b12fc67c392433904083725105520b6b882e"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "f02a0ba5390c0b72f5d0081483404c69",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 2496052,
"upload_time": "2024-03-19T15:54:23",
"upload_time_iso_8601": "2024-03-19T15:54:23.759938Z",
"url": "https://files.pythonhosted.org/packages/68/c9/6a2e6456d5af9b7635947b917bfa357a204a6beb2b2ab0d9992ddda17a30/pyamg-5.1.0-cp312-cp312-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e86a5420416ecfecec2c28bdf719d49ad747a19c45b81d91a75e6dd57fe8e85b",
"md5": "e56b1d5e728a55b4f8081655cc115219",
"sha256": "fe641ab04b922f1db9f7c4b07493604642235d1ce70ef5c057c2a94b4a46f150"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "e56b1d5e728a55b4f8081655cc115219",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 1672204,
"upload_time": "2024-03-19T15:54:26",
"upload_time_iso_8601": "2024-03-19T15:54:26.091514Z",
"url": "https://files.pythonhosted.org/packages/e8/6a/5420416ecfecec2c28bdf719d49ad747a19c45b81d91a75e6dd57fe8e85b/pyamg-5.1.0-cp312-cp312-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "50b65dd8474bdcc9ab4be0540f45bfdf827780170c006b5e49f0a1dd2fe8d448",
"md5": "916ce2daae5817f4c74461cdb6c8e63a",
"sha256": "78161bde9398165ef8b492ef99fad624727317823a7975cc60952817a0cdff77"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "916ce2daae5817f4c74461cdb6c8e63a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 1590445,
"upload_time": "2024-03-19T15:54:28",
"upload_time_iso_8601": "2024-03-19T15:54:28.325273Z",
"url": "https://files.pythonhosted.org/packages/50/b6/5dd8474bdcc9ab4be0540f45bfdf827780170c006b5e49f0a1dd2fe8d448/pyamg-5.1.0-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5887d94acafccebab2ed8d173f9987abce21b44620c3c95b7c40c47b8d904885",
"md5": "99e271c9b4ddbc7ee1ce69513e110856",
"sha256": "e19e085a88bd33efdc8f2f9c6432b3d0bd4d42c058e7fad6ac5a31bd5a322fd6"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "99e271c9b4ddbc7ee1ce69513e110856",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 1926394,
"upload_time": "2024-03-19T15:54:30",
"upload_time_iso_8601": "2024-03-19T15:54:30.780169Z",
"url": "https://files.pythonhosted.org/packages/58/87/d94acafccebab2ed8d173f9987abce21b44620c3c95b7c40c47b8d904885/pyamg-5.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2a85e33262043c3fba4fb0df1a57388b30562e4d52521e6f3912623d0f206a89",
"md5": "f64dc6ea3b5366af65e31ff7872459da",
"sha256": "a3c4df638ac5c2bde1d13e96514c043f975eb6f7431adfca27f991569018f5e3"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "f64dc6ea3b5366af65e31ff7872459da",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 2227167,
"upload_time": "2024-03-19T15:54:32",
"upload_time_iso_8601": "2024-03-19T15:54:32.527127Z",
"url": "https://files.pythonhosted.org/packages/2a/85/e33262043c3fba4fb0df1a57388b30562e4d52521e6f3912623d0f206a89/pyamg-5.1.0-cp312-cp312-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "02e6e6d5c22c783e5e33f7b1ec02ee0fcf61d1359f1554000a8e436f1520faa1",
"md5": "4f058e590b51a521a7c164e80fe70575",
"sha256": "b1f4e754ddfc22d391b7ef5b6909485fe1327159d131fb6b51c4a1bdf25cfe85"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-win32.whl",
"has_sig": false,
"md5_digest": "4f058e590b51a521a7c164e80fe70575",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 1418053,
"upload_time": "2024-03-19T15:54:34",
"upload_time_iso_8601": "2024-03-19T15:54:34.926890Z",
"url": "https://files.pythonhosted.org/packages/02/e6/e6d5c22c783e5e33f7b1ec02ee0fcf61d1359f1554000a8e436f1520faa1/pyamg-5.1.0-cp312-cp312-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "33072a9c3deb7e59ea24bb5c5e9f6604c824e486274acb5a80fe0fcc4811b95a",
"md5": "33bde3ec7b95924bcbfb2afde2fcba11",
"sha256": "73860f5c831338c0440813770dbf42bb957c7d332235d2d9435359d0ab41fdcc"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "33bde3ec7b95924bcbfb2afde2fcba11",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.8",
"size": 1561795,
"upload_time": "2024-03-19T15:54:36",
"upload_time_iso_8601": "2024-03-19T15:54:36.611093Z",
"url": "https://files.pythonhosted.org/packages/33/07/2a9c3deb7e59ea24bb5c5e9f6604c824e486274acb5a80fe0fcc4811b95a/pyamg-5.1.0-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6a8da08cc530d7af00fb12dff1b7ec3f93be5ecf49ee256a1c50189c8023df65",
"md5": "3fdd43ef8898b4b14123b613be56f606",
"sha256": "0b8bdff27984852294904c4c7def8e755529445ef744da9274de4c3f00f85ea2"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "3fdd43ef8898b4b14123b613be56f606",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 2504724,
"upload_time": "2024-03-19T15:54:38",
"upload_time_iso_8601": "2024-03-19T15:54:38.695517Z",
"url": "https://files.pythonhosted.org/packages/6a/8d/a08cc530d7af00fb12dff1b7ec3f93be5ecf49ee256a1c50189c8023df65/pyamg-5.1.0-cp38-cp38-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7d832b6912077f7dc62183422cee5fa791231bf698a34bb36b50bf5bb2ae11fb",
"md5": "a2f2bcb61bf109046e94d2473420ef33",
"sha256": "6e7e51aaeeb5fcc97bf1dd0a6ba148e9fc26feb1989e78ebeca940b63e6761c8"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "a2f2bcb61bf109046e94d2473420ef33",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1673510,
"upload_time": "2024-03-19T15:54:40",
"upload_time_iso_8601": "2024-03-19T15:54:40.325335Z",
"url": "https://files.pythonhosted.org/packages/7d/83/2b6912077f7dc62183422cee5fa791231bf698a34bb36b50bf5bb2ae11fb/pyamg-5.1.0-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c70479671aaea4394e352fdca8ffebe29847660798ea02b4a5f83d62fcf0dcba",
"md5": "c385fb9f867e1c54a55c1c11553d05eb",
"sha256": "6c1e2dd4821e43773247e23d16c935c33223fbb7bfb3023b97a0151ddff38c90"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "c385fb9f867e1c54a55c1c11553d05eb",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1597519,
"upload_time": "2024-03-19T15:54:42",
"upload_time_iso_8601": "2024-03-19T15:54:42.689131Z",
"url": "https://files.pythonhosted.org/packages/c7/04/79671aaea4394e352fdca8ffebe29847660798ea02b4a5f83d62fcf0dcba/pyamg-5.1.0-cp38-cp38-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "25b26357df92d9f1404ebb7aa8404f5f7df7a4cba7d5c905d523a935f38f9fb3",
"md5": "03e4aff35feebfb197f61de239bf4364",
"sha256": "5473f3a7267543c3e88f0f9bf38d7a8e5a2d13702a088963c622941737ee84db"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "03e4aff35feebfb197f61de239bf4364",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1918412,
"upload_time": "2024-03-19T15:54:44",
"upload_time_iso_8601": "2024-03-19T15:54:44.338533Z",
"url": "https://files.pythonhosted.org/packages/25/b2/6357df92d9f1404ebb7aa8404f5f7df7a4cba7d5c905d523a935f38f9fb3/pyamg-5.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "569e27676cb98fd296e8d6ec755aa947546d7fa664cdc2644edbf33512fc76ad",
"md5": "664767ee1212d8e6db955f2743551c4c",
"sha256": "bfdb7ccf4fff812d9335453b8794282c7bcb7ad01de7bfd0881377243c757859"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "664767ee1212d8e6db955f2743551c4c",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 2216904,
"upload_time": "2024-03-19T15:54:45",
"upload_time_iso_8601": "2024-03-19T15:54:45.846975Z",
"url": "https://files.pythonhosted.org/packages/56/9e/27676cb98fd296e8d6ec755aa947546d7fa664cdc2644edbf33512fc76ad/pyamg-5.1.0-cp38-cp38-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e57209cf9b6398ca827c783db923d9f86071d19bf960fc80281a270836cb88b5",
"md5": "51de7a85a07dd1cd1c8bb8df57b55158",
"sha256": "a04259e8707befb333b9a0be0d2fe68966a284b2a95581c84a2472452767bf77"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-win32.whl",
"has_sig": false,
"md5_digest": "51de7a85a07dd1cd1c8bb8df57b55158",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1416789,
"upload_time": "2024-03-19T15:54:47",
"upload_time_iso_8601": "2024-03-19T15:54:47.421264Z",
"url": "https://files.pythonhosted.org/packages/e5/72/09cf9b6398ca827c783db923d9f86071d19bf960fc80281a270836cb88b5/pyamg-5.1.0-cp38-cp38-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "16a94a845b46c722ffd864a6623666bb5b62dabbc760a6b3674e8939550a1617",
"md5": "79dd0457fb9fc9525865fef5685970b3",
"sha256": "59dc814213ba6ca26b556fe010718cbbe4b08bb8964e140dc3e6327cbcc8dd88"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "79dd0457fb9fc9525865fef5685970b3",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1560713,
"upload_time": "2024-03-19T15:54:49",
"upload_time_iso_8601": "2024-03-19T15:54:49.834281Z",
"url": "https://files.pythonhosted.org/packages/16/a9/4a845b46c722ffd864a6623666bb5b62dabbc760a6b3674e8939550a1617/pyamg-5.1.0-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8e7255875d5ce7e3dc5efed77b68ac2ebed9bccd5b54f37d3db8b177e5708e9e",
"md5": "61496e248904499b5afc9f0369283ee2",
"sha256": "638e6717dc14b8ff088c8aaec9261872fba7ca986c1403cfe5880d0687f06743"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "61496e248904499b5afc9f0369283ee2",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 2509279,
"upload_time": "2024-03-19T15:54:52",
"upload_time_iso_8601": "2024-03-19T15:54:52.175451Z",
"url": "https://files.pythonhosted.org/packages/8e/72/55875d5ce7e3dc5efed77b68ac2ebed9bccd5b54f37d3db8b177e5708e9e/pyamg-5.1.0-cp39-cp39-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6cd13e4a88961ec1f7199da22c6e520e6cc25595bcace27e1609228039903ace",
"md5": "dd2ba60e70681b9a152447f8df5de113",
"sha256": "46e69b705b03ef55cf5fb63bc9afbdf8e9ee5c983826b78a60b25e833bf76242"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "dd2ba60e70681b9a152447f8df5de113",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1675598,
"upload_time": "2024-03-19T15:54:53",
"upload_time_iso_8601": "2024-03-19T15:54:53.883740Z",
"url": "https://files.pythonhosted.org/packages/6c/d1/3e4a88961ec1f7199da22c6e520e6cc25595bcace27e1609228039903ace/pyamg-5.1.0-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c2ab3399be00da30d9838ca1bd38988f4825d873b69e39d2dc87f155a75ff9a3",
"md5": "8a2f6a151395895bd39a499cb49a9f52",
"sha256": "ff2fe7ef6b3092c0f495ab8ff25355c5f8ef82cb05e5970f541955188522e146"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8a2f6a151395895bd39a499cb49a9f52",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1599843,
"upload_time": "2024-03-19T15:54:55",
"upload_time_iso_8601": "2024-03-19T15:54:55.887684Z",
"url": "https://files.pythonhosted.org/packages/c2/ab/3399be00da30d9838ca1bd38988f4825d873b69e39d2dc87f155a75ff9a3/pyamg-5.1.0-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "68a9aed9f557e7eb779d2cb4fa090663f8540979e0c04dadd16e9a0bdc9632c5",
"md5": "24e1bba7526c597d2d401802e3764700",
"sha256": "5817d4567fb240dab4779bb1630bbb3035b3827731fcdaeb9ecc9c8814319995"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "24e1bba7526c597d2d401802e3764700",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1922408,
"upload_time": "2024-03-19T15:54:57",
"upload_time_iso_8601": "2024-03-19T15:54:57.567475Z",
"url": "https://files.pythonhosted.org/packages/68/a9/aed9f557e7eb779d2cb4fa090663f8540979e0c04dadd16e9a0bdc9632c5/pyamg-5.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "25347a50668e90fc280658a1ea0c3809b612268fe3102db4c4fa7c197d51c575",
"md5": "5f125a557787483fa2676429e46fd63a",
"sha256": "991dc5031c14c6fda68334fac660fe5000ea039e991db211061771093ea9ece7"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "5f125a557787483fa2676429e46fd63a",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 2220462,
"upload_time": "2024-03-19T15:54:59",
"upload_time_iso_8601": "2024-03-19T15:54:59.403843Z",
"url": "https://files.pythonhosted.org/packages/25/34/7a50668e90fc280658a1ea0c3809b612268fe3102db4c4fa7c197d51c575/pyamg-5.1.0-cp39-cp39-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2ca02efaad5cbd23ca60f908931eb809ad33629e4dc062be7f2a0f8e862a4047",
"md5": "4d2e1f88b74f11271ca5dbc9ebe7424b",
"sha256": "c5c43ea803595c31feda8ec00552432b1ca7c5754d99437c409db66a5f06fad9"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-win32.whl",
"has_sig": false,
"md5_digest": "4d2e1f88b74f11271ca5dbc9ebe7424b",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1417619,
"upload_time": "2024-03-19T15:55:02",
"upload_time_iso_8601": "2024-03-19T15:55:02.729727Z",
"url": "https://files.pythonhosted.org/packages/2c/a0/2efaad5cbd23ca60f908931eb809ad33629e4dc062be7f2a0f8e862a4047/pyamg-5.1.0-cp39-cp39-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d2bd57094ba47bca2ce45dbb988450ac63dc7c89db7b61047fd4ed4aac2add86",
"md5": "92b84db1bc1d12a13f9c4cae2c76768c",
"sha256": "f89cbbeca79320c34b8f98aa80041112fa769dcef9c6ccc421b412cc276c33d8"
},
"downloads": -1,
"filename": "pyamg-5.1.0-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "92b84db1bc1d12a13f9c4cae2c76768c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1547602,
"upload_time": "2024-03-19T15:55:04",
"upload_time_iso_8601": "2024-03-19T15:55:04.682518Z",
"url": "https://files.pythonhosted.org/packages/d2/bd/57094ba47bca2ce45dbb988450ac63dc7c89db7b61047fd4ed4aac2add86/pyamg-5.1.0-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0037bdc7f3d8622ff1a6e96ed62fe7d3a068bab62aafcf7cd434b065f62634ff",
"md5": "c88cc0b50e4af3d997d5821023a7d118",
"sha256": "f90f9de795b4e29589edd2eb446d11ddb466678ebe823ed329fcf35759ea390c"
},
"downloads": -1,
"filename": "pyamg-5.1.0.tar.gz",
"has_sig": false,
"md5_digest": "c88cc0b50e4af3d997d5821023a7d118",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 4145737,
"upload_time": "2024-03-19T15:55:06",
"upload_time_iso_8601": "2024-03-19T15:55:06.400443Z",
"url": "https://files.pythonhosted.org/packages/00/37/bdc7f3d8622ff1a6e96ed62fe7d3a068bab62aafcf7cd434b065f62634ff/pyamg-5.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-19 15:55:06",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pyamg",
"github_project": "pyamg",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "numpy",
"specs": []
},
{
"name": "scipy",
"specs": [
[
">=",
"1.8.0"
]
]
}
],
"lcname": "pyamg"
}