Skip to main content

Porous Media Topology and Morphology Toolkit

Project description

PMMoTo

Tests

logo-1-text


The Porous Media Morphology and Topology (PMMoTo) toolkit is an open-source Python library for analyzing, modeling, and characterizing the structure of porous materials. Built with Cython and C++ for high performance on distributed memory systems using MPI, PMMoTo includes parallelized implementations of connected components analysis, morphological operations (e.g., dilation and erosion), and Euclidean distance transforms. Unlike many tools that focus on image-based analysis, PMMoTo is specifically designed for synthetically generated porous media, such as sphere packings and molecular dynamics simulations where image size and resolution are not predetermined.


Website

https://tmweigand.github.io/PMMoTo/index.html

Installation

PMMoTo requires an MPI installation (see https://tmweigand.github.io/PMMoTo/user_guide/installation.html)

Standard

  1. Clone the repository:

    git clone https://github.com/tmweigand/PMMoTo.git
    cd PMMoTo
    
  2. Install the package:

    pip install .
    

Development

  1. Clone the repository:

    git clone https://github.com/tmweigand/PMMoTo.git
    cd PMMoTo
    
  2. Install in editable mode with dev dependencies:

    pip install -e .[dev]
    

Citing

If you use PMMoTo in your research, please cite the relevant publication (too come).


Community Guidelines

We welcome contributions and community feedback to improve PMMoTo.

Contributing

  • Fork the repo and create a branch.
  • Make your changes and submit a pull request.
  • Follow PEP8 and ensure tests pass.
  • For major changes, open an issue first.

Reporting Issues

  • Use GitHub Issues.
  • Include details: steps to reproduce, expected vs. actual behavior, and system info.

Support

Please be respectful and constructive.

License

This project is licensed under the MIT License. See LICENSE for details.


Contact

For questions, issues, or contributions, please open an issue or pull request on GitHub.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pmmoto-0.1.4.tar.gz (12.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pmmoto-0.1.4-cp311-cp311-macosx_14_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

File details

Details for the file pmmoto-0.1.4.tar.gz.

File metadata

  • Download URL: pmmoto-0.1.4.tar.gz
  • Upload date:
  • Size: 12.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.10

File hashes

Hashes for pmmoto-0.1.4.tar.gz
Algorithm Hash digest
SHA256 a15c389d4f47816e5c63409e9e6e36889c5bc6c225f308fa0214f93ffaefe1fb
MD5 edc8e6145b839349123be37ae60dbf92
BLAKE2b-256 01feedde9fdc625eda56221ac4e412ea88276b8a7e338be799237563f8e1a4f3

See more details on using hashes here.

File details

Details for the file pmmoto-0.1.4-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pmmoto-0.1.4-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 cba02517e3bdd05de602f85d5e2341d7a678e1f481ea1d09d891650a3e85ad57
MD5 2375a0455d56b5e7ba0fef3010df9a41
BLAKE2b-256 e00917bc68c0d86517eeb1cf5400a262a0538b4b7821f5a47b2941c0d78f0324

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page