Skip to content
/ xpm Public

xpm (Extensive Pore Modelling) is a software for predicting flow properties in multi-scale porous media

License

Notifications You must be signed in to change notification settings

dp-69/xpm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Extensive Pore Modelling (xpm)

xpm is a software for predicting flow properties of the multi-scale pore space.

xpm uses pnextract to acquire a network model from an image.

Publications

  • Poster presented at Interpore 2024, Qingdao, China

Build instructions

xpm uses vcpkg for dependency management.

Windows

Commands are issued in an x64 Native Tools Command Prompt for VS 2022, which is part of the Microsoft Visual Studio toolset.

  1. Download and install Microsoft MPI

  2. Clone vcpkg and install xpm dependencies

Important

Assumes C:\ as the starting directory. May take at least an hour to complete.

git clone https://github.com/microsoft/vcpkg
cd vcpkg
git clone -b xpm https://github.com/dp-69/vcpkg-ports ports-xpm
bootstrap-vcpkg.bat
vcpkg.exe install vtk[qt] qtcharts hypre boost-intrusive boost-iostreams boost-graph fmt argh --overlay-ports=ports-xpm --clean-after-build
  1. Clone and build xpm

Note

Can be performed from any location.

Important

Modify the path "C:/vcpkg/scripts/buildsystems/vcpkg.cmake" in the xpm/CMakePresets.json file accordingly if Step 2 is not performed in C:\.

git clone https://github.com/dp-69/xpm
cd xpm
cmake --preset=win-rel
cmake --build --preset=win-rel
  1. Execute xpm
cd build/Release/bin
xpm.exe

Ubuntu

Commands are issued from a terminal.

  1. Install required Ubuntu packages
sudo apt install     \
  build-essential    \
  git                \
  tar curl zip unzip \
  pkg-config         \
  meson              \
  libxi-dev libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev libxrandr-dev libxxf86vm-dev \
  gfortran           \
  autoconf autoconf-archive \
  libtool            \
  '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev \
  cmake              \
  linux-libc-dev     \
  python3-jinja2     \
  bison flex         \
  openmpi-bin        
  1. Clone vcpkg and install xpm dependencies

Important

Assumes home directory ~ as the starting directory. May take at least an hour to complete.

git clone https://github.com/microsoft/vcpkg
cd vcpkg
git clone -b xpm https://github.com/dp-69/vcpkg-ports ports-xpm
./bootstrap-vcpkg.sh
./vcpkg install vtk[qt] qtcharts hypre boost-intrusive boost-iostreams boost-graph fmt argh --overlay-ports=ports-xpm --clean-after-build
  1. Clone and build xpm

Note

Can be performed from any location.

Important

Modify the value "~/vcpkg/scripts/buildsystems/vcpkg.cmake" in the xpm/CMakePresets.json file accordingly if Step 2 is not performed in home directory ~.

git clone https://github.com/dp-69/xpm
cd xpm
cmake --preset=lin-rel
cmake --build --preset=lin-rel
  1. Execute xpm
cd build/Release/bin
./xpm config.json

Copyright

The xpm project's research results are a copyright of the respective members and associates.

Dmytro Petrovskyy 1
Julien Maes 2
Hannah Menke 2
Kamaljit Singh 2

1 Independent Consultant, Ivano-Frankivsk, Ukraine
2 Heriot-Watt University, Edinburgh, UK

Tom Bultreys (Ghent University, Belgium) is thanked for their advisory in multi-scale pore-network modelling.

License

xpm is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

xpm is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with xpm. If not, see http://www.gnu.org/licenses/.

About

xpm (Extensive Pore Modelling) is a software for predicting flow properties in multi-scale porous media

Topics

Resources

License

Stars

Watchers

Forks