Metadata-Version: 2.4
Name: openpnm
Version: 3.5.5
Summary: A framework for conducting pore network modeling simulations of multiphase transport in porous materials
Author-email: OpenPNM Team <jgostick@gmail.com>
Maintainer-email: Jeff Gostick <jgostick@gmail.com>, Amin Sadeghi <amin.sadeghi@live.com>
License-Expression: MIT
Project-URL: Documentation, https://openpnm.org
Project-URL: Repository, https://github.com/PMEAL/OpenPNM
Project-URL: Issues, https://github.com/PMEAL/OpenPNM/issues
Classifier: Development Status :: 5 - Production/Stable
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: <3.14,>=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: docrep>=0.3.2
Requires-Dist: h5py>=3.14.0
Requires-Dist: jsonschema>=4.25.1
Requires-Dist: llvmlite>=0.44
Requires-Dist: matplotlib>=3.10.6
Requires-Dist: matplotlib-inline>=0.1.7
Requires-Dist: networkx>=3.5
Requires-Dist: numba>=0.61
Requires-Dist: numpy<2.2
Requires-Dist: pandas>=2.3.2
Requires-Dist: pyamg>=5.3.0
Requires-Dist: pypardiso; platform_machine == "x86_64" or platform_machine == "AMD64"
Requires-Dist: rich>=14.1.0
Requires-Dist: scikit-image<0.24
Requires-Dist: scipy>=1.16.2
Requires-Dist: sympy>=1.14.0
Requires-Dist: thermo>=0.4.2
Requires-Dist: tqdm>=4.67.1
Requires-Dist: transforms3d>=0.4.2
Provides-Extra: extras
Requires-Dist: porespy; extra == "extras"
Requires-Dist: ngsolve; extra == "extras"
Provides-Extra: test
Requires-Dist: codecov; extra == "test"
Requires-Dist: coverage; extra == "test"
Requires-Dist: nbval; extra == "test"
Requires-Dist: py; extra == "test"
Requires-Dist: pytest; extra == "test"
Requires-Dist: pytest-cache; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Requires-Dist: pytest-custom-exit-code; extra == "test"
Requires-Dist: pytest-split; extra == "test"
Provides-Extra: docs
Requires-Dist: mock; extra == "docs"
Requires-Dist: myst-nb; extra == "docs"
Requires-Dist: nbstripout>=0.8.1; extra == "docs"
Requires-Dist: pandoc; extra == "docs"
Requires-Dist: pydata-sphinx-theme; extra == "docs"
Requires-Dist: sphinx; extra == "docs"
Requires-Dist: sphinx-autoapi; extra == "docs"
Requires-Dist: sphinx-copybutton; extra == "docs"
Requires-Dist: sphinx-design; extra == "docs"
Requires-Dist: tensorflow; extra == "docs"
Requires-Dist: plotly; extra == "docs"
Provides-Extra: interactive
Requires-Dist: ipython; extra == "interactive"
Requires-Dist: ipykernel; extra == "interactive"
Requires-Dist: ipywidgets; extra == "interactive"
Requires-Dist: jupyter; extra == "interactive"
Requires-Dist: jupyterlab-widgets; extra == "interactive"
Requires-Dist: spyder-kernels>=3.0; extra == "interactive"
Requires-Dist: plotly; extra == "interactive"
Dynamic: license-file

[![](https://github.com/PMEAL/OpenPNM/actions/workflows/nightly.yml/badge.svg)](https://github.com/PMEAL/OpenPNM/actions/workflows/nightly.yml)
[![](https://codecov.io/gh/PMEAL/OpenPNM/branch/dev/graph/badge.svg)](https://codecov.io/gh/PMEAL/OpenPNM)
[![](https://img.shields.io/badge/Documentation-Read-blue.svg)](https://pmeal.github.io/OpenPNM/)
[![](https://badge.fury.io/py/openpnm.svg)](https://pypi.python.org/pypi/openpnm)
[![](https://anaconda.org/conda-forge/openpnm/badges/installer/conda.svg)](https://anaconda.org/conda-forge/openpnm)

-----

# Overview of OpenPNM

OpenPNM is a framework for performing pore network simulations of porous materials.

## More Information

For more details about the package can be found in the [online documentation](https://openpnm.org)

## Installation and Requirements

### [pip](https://pypi.org/project/openpnm/)
OpenPNM can be installed using `pip` by running the following command in a terminal:

```shell
pip install openpnm
```

### [conda-forge](https://anaconda.org/conda-forge/openpnm)
OpenPNM can also be installed from the [conda-forge](https://anaconda.org/conda-forge/openpnm) repository using:

```
conda install -c conda-forge openpnm
```

### For developers
For developers who intend to change the source code or contribute to OpenPNM, the source code can be downloaded from [Github](https://github.com/PMEAL/OpenPNM/) and installed by running:

```
pip install -e 'path/to/downloaded/files'
```

The advantage of installing from the source code is that you can edit the files and have access to your changes each time you import OpenPNM.

OpenPNM requires the Scipy Stack (Numpy, Scipy, Matplotlib, etc), which is most conveniently obtained by installing the [Anaconda Distribution](https://www.anaconda.com/download/).

## Asking Questions and Getting Help

Github now has a [Discussions](https://github.com/PMEAL/OpenPNM/discussions) function, which works similarly to [stack overflow](https://www.stackoverflow.com).  Please post your question in the [Q&A category](https://github.com/PMEAL/OpenPNM/discussions?discussions_q=category%3AQ%26A) so devs or users can provide answers, vote on accepted answers, improve on each other's answers, and generally discuss things. Most importantly, all answers are searchable so eventually, once enough questions have been posted and answered, you can find what you're looking for with a simple search.

## Contact

OpenPNM is developed by the Porous Materials Engineering and Analysis Lab [(PMEAL)](http://pmeal.com), in the [Department of Chemical Engineering](https://uwaterloo.ca/chemical-engineering/) at the [University of Waterloo](https://uwaterloo.ca/) in Waterloo, Ontario, Canada.

The lead developer for this project is Prof. Jeff Gostick (jgostick@gmail.com).

## Citation

If you use OpenPNM in a publication, please cite the following paper:

> _Gostick et al._ "**OpenPNM: a pore network modeling package.**" Computing in Science & Engineering 18, no. 4 (2016): 60-74.
> [doi:10.1109/MCSE.2016.49](https://ieeexplore.ieee.org/document/7478437)

Also, we ask that you "star" :star: this repository so we can track the number of users who are interested in this project, which is helpful for securing future grant funding.
