Skip to content

Commit

Permalink
deploy: cf0c5b5
Browse files Browse the repository at this point in the history
  • Loading branch information
aramyxt committed Jan 10, 2025
0 parents commit a11be45
Show file tree
Hide file tree
Showing 73 changed files with 38,127 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 1d08db85a79bfccf7301ffbec52d7ebe
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added .doctrees/coordination_api.doctree
Binary file not shown.
Binary file added .doctrees/environment.pickle
Binary file not shown.
Binary file added .doctrees/export_api.doctree
Binary file not shown.
Binary file added .doctrees/filter_im_api.doctree
Binary file not shown.
Binary file added .doctrees/generate_api.doctree
Binary file not shown.
Binary file added .doctrees/index.doctree
Binary file not shown.
Binary file added .doctrees/install.doctree
Binary file not shown.
Binary file added .doctrees/io_api.doctree
Binary file not shown.
Binary file added .doctrees/metrics_api.doctree
Binary file not shown.
Binary file added .doctrees/module_ref.doctree
Binary file not shown.
Binary file added .doctrees/quickstart.doctree
Binary file not shown.
Empty file added .nojekyll
Empty file.
Binary file added _images/ModEx_Loop_SoilChip.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4,984 changes: 4,984 additions & 0 deletions _images/micromodel.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/quickstart_figure_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/quickstart_figure_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/quickstart_figure_3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions _sources/coordination_api.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

coordination
============

(WIP)
5 changes: 5 additions & 0 deletions _sources/export_api.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

export
======

(WIP)
58 changes: 58 additions & 0 deletions _sources/filter_im_api.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@

**filter_im**
=============

The ``filter_im`` module contains functions that pre-process XCT images like segmentation and cropping, allowing for
pore structure analysis. This is mainly used as a quick method of processing raw XCT scans, but Pore2Chip operates
best on already segmented data, as the methods of segmentation used here rely on Otsu's filtering, which may not capture
solid matter of a particular density (ex. plant roots).

----

filter_single()
---------------

.. autofunction:: pore2chip.filter_im.filter_single

..
The coordinates for cropx and cropy begin at the top left.

----

filter_list()
-------------

.. autofunction:: pore2chip.filter_im.filter_list

..
The coordinates for cropx and cropy begin at the top left.

----

read_and_filter()
-----------------

.. autofunction:: pore2chip.filter_im.read_and_filter

..
The coordinates for cropx and cropy begin at the top left.

----

read_and_filter_list()
----------------------

.. autofunction:: pore2chip.filter_im.read_and_filter_list

..
The coordinates for cropx and cropy begin at the top left.

Leave crop_depth empty to include all files in directory.

.. note::

This project is under active development.
5 changes: 5 additions & 0 deletions _sources/generate_api.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

generate
========

(WIP)
54 changes: 54 additions & 0 deletions _sources/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
.. Pore2Chip documentation master file, created by
sphinx-quickstart on Thu Jan 2 09:45:53 2025.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Pore2Chip Documentation
=======================
A python package that takes XCT images of porous materials and generates representative digital twin micromodels.

.. figure:: _static/ModEx_Loop_SoilChip.jpg
:width: 636px
:height: 453px
:scale: 100 %
:alt: ModEx Loop for Pore2Chip and Chip2Flow

ModEx Loop for Pore2Chip and Chip2Flow

About Pore2Chip
---------------
**Pore2Chip** is a Python module designed to streamline the process of analyzing X-ray computed tomography (XCT)
images of soil and creating 2D micromodel designs based on that analysis.
It leverages the power of open-source libraries like OpenPNM, PoreSpy, and drawsvg to extract key information about the soil's
porous structure and translate it into a blueprint for microfluidic simulations or physical "lab-on-a-chip" devices developed using additive manufacturing.

User Guide
----------
.. toctree::
:maxdepth: 1

install
quickstart
module_ref

Acknowledgements
----------------
This research was performed on a project award (Award DOIs: 10.46936/ltds.proj.2024.61069/60012423; 10.46936/intm.proj.2023.60674/60008777; 10.46936/intm.proj.2023.60904/60008965)
from the Environmental Molecular Sciences Laboratory, a DOE Office of Science User Facility sponsored by the Biological and Environmental Research program under contract no. DE-AC05-76RL01830.
The authors acknowledge the contributions of Michael Perkins at PNNL’s Creative Services, who developed the conceptual graphics in this paper.

PNNL-SA-197910

Disclaimer
----------
This research work was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor any agency thereof,
nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information,
apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process,
or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof.
The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.

.. note::

This project is under active development.


64 changes: 64 additions & 0 deletions _sources/install.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@

.. Installation
.. =======================
.. The OpenPNM and PoreSpy libraries are required to analyze XCT images. PoreSpy is used to generate a
.. pore network that is used to extract pore size distribution, pore throat size distribution, and pore coordination numbers.
.. OpenPNM is used to construct a new 2D pore network that will be used to create the micromodel design.
.. Install using PiP:
.. .. code-block:: console
.. $ pip install pore2chip
Installation
============

The OpenPNM and PoreSpy libraries are required to analyze XCT images. PoreSpy is used to generate a
pore network that is used to extract pore size distribution, pore throat size distribution, and pore coordination numbers.
OpenPNM is used to construct a new 2D pore network that will be used to create the micromodel design.

Pip Installation
----------------
Install using PiP:

.. code-block:: bash
pip install pore2chip
Install from source:

.. code-block:: bash
git clone https://github.com/EMSL-Computing/Pore2Chip.git
cd Pore2Chip
python3 -m build
python3 -m pip install pore2chip --no-index --find-links dist/
Conda Environment
-----------------
Creating a Conda environment:

.. code-block:: bash
conda create -n pore2chip python=3.9
conda activate pore2chip
pip install pore2chip
Docker Image
------------
Building a Docker Image with Jupyter Notebook:

.. code-block:: bash
git clone https://github.com/EMSL-Computing/Pore2Chip.git
cd Pore2Chip
docker build -t pore2chip
docker run -p 8888:8888 pore2chip
This will automatically run a Jupyter Notebook server in the browser with a python environment that
has Pore2Chip and all of its dependencies installed.

.. note::

This project is under active development.
5 changes: 5 additions & 0 deletions _sources/io_api.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

io
==

(WIP)
59 changes: 59 additions & 0 deletions _sources/metrics_api.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@

**metrics**
===========

The ``metrics`` module contains functions that extract pore data from segmented images.

----

feret_diameter()
----------------

.. autofunction:: pore2chip.metrics.feret_diameter

----

feret_diameter_list()
---------------------

.. autofunction:: pore2chip.metrics.feret_diameter_list

----

extract_diameters()
-------------------

.. autofunction:: pore2chip.metrics.extract_diameters

----

extract_diameters2()
--------------------

.. autofunction:: pore2chip.metrics.extract_diameters2

----

extract_diameters_alt()
-----------------------

.. autofunction:: pore2chip.metrics.extract_diameters_alt

----

get_probability_density()
-------------------------

.. autofunction:: pore2chip.metrics.get_probability_density

----

get_percent_probability()
-------------------------

.. autofunction:: pore2chip.metrics.get_percent_probability


.. note::

This project is under active development.
15 changes: 15 additions & 0 deletions _sources/module_ref.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@

Module Reference
================

Here are the references for all Pore2Chip's modules:

.. toctree::
:maxdepth: 2

filter_im_api
metrics_api
coordination_api
generate_api
export_api
io_api
Loading

0 comments on commit a11be45

Please sign in to comment.