Skip to main content

A tool for rapid estimation of transport properties of 3D images of porous materials

Project description

Poromics

Poromics is a set of tools for rapid estimation of transport properties of 3D images of porous materials. It is designed to be fast and easy to use. Currently, it can predict the tortuosity factor of an image. The goal is to support more transport properties in the future such as permeability. Poromics is optionally GPU-accelerated, which can significantly speed up the calculations for large images (up to 100x speedup).

Installation

Poromics depends on the Julia package Tortuosity.jl. However, it is not necessary to install Julia separately. The package will be installed automatically when you install poromics.

[!NOTE] We highly recommend using uv instead of pip to install poromics (or any other Python package!) as it's extremely faster. It has lots of useful features, but for all practical purposes, it is a drop-in replacement for pip.

Uv

Install uv, and then run the following command in a terminal/command prompt:

uv pip install poromics

Pip

If you prefer to use pip, run the following command in a terminal/command prompt:

pip install poromics

Basic Usage

[!NOTE] The first time you import poromics, it will take a few minutes to install Julia and the required packages. This is a one-time setup.

import porespy as ps
import poromics

im = ps.generators.blobs(shape=[100, 100, 1], porosity=0.6)  # Test image
result = poromics.tortuosity_fd(im, axis=1, rtol=1e-5, gpu=True)
print(result)

The Result object is a simple container with the following attributes:

  • im: The tortuosity factor of the image.
  • axis: The axis along which the tortuosity was calculated.
  • tau: The tortuosity factor.
  • c: The concentration field.

CLI

[!WARNING]
The CLI is still in development and not yet functional.

poromics --help

Roadmap

  • Speed up matrix assembly by direct assembly on GPU.
  • Create Julia sysimage files upon installation for faster startup.
  • Add more transport properties (e.g. permeability).
  • Add CLI support.

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

poromics-0.0.6.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

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

poromics-0.0.6-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file poromics-0.0.6.tar.gz.

File metadata

  • Download URL: poromics-0.0.6.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for poromics-0.0.6.tar.gz
Algorithm Hash digest
SHA256 d145bf7f5e3080cb58407e6be16b705e769c1e290544d3ca2e35b805f615b09f
MD5 18f7868e04af9bd7101c2cfe3267b579
BLAKE2b-256 8ef2a13ce81a94104668bc2a873d8f5c185029540ef23fb08eccf6ce8717800a

See more details on using hashes here.

File details

Details for the file poromics-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: poromics-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for poromics-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c484294b4bb82735fd1f85a06dcd6df5ab87da74799d4bb1704de419a98b28d4
MD5 c1bd4c971c1b79c12e38d95c1b90a7cc
BLAKE2b-256 8af1e1865fe6b1d255a009bc93af95d4aa14cbc1c47a1ab5aa0e0a79dc0d3008

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