Skip to content

Commit 42d12f3

Browse files
authored
Merge pull request #24 from daavid00/dev
Python 3.14, optional tensorflow, updating docs, and release 2025.10
2 parents 3772544 + f488d0f commit 42d12f3

40 files changed

+313
-205
lines changed

.github/workflows/CI.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ jobs:
4141
run: |
4242
pip install --upgrade pip setuptools wheel
4343
pip install -r dev-requirements.txt
44+
pip install tensorflow
4445
4546
- name: Install pyopmnearwell
4647
run: |
@@ -59,4 +60,4 @@ jobs:
5960
- name: Build documentation
6061
run: |
6162
pushd docs
62-
make html
63+
make html

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,4 +187,3 @@ playground/
187187
project/
188188
.vscode/
189189
test_outputs/
190-

CONTRIBUTING.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,14 @@ Contributions are more than welcome using the fork and pull request approach
1313
1. Work on your own fork of the main repo
1414
1. In the main repo execute:
1515
1. **pip install -r dev-requirements.txt** (this installs the [_dev-requirements.txt_](https://github.com/cssr-tools/pyopmnearwell/blob/main/dev-requirements.txt))
16+
1. **pip install tensorflow** (this install [_tensorflow_](https://www.tensorflow.org) for the machine learning near well funcitonality; tensorflow is not yet available for Python 3.14, then Python 3.12 or Python 3.13 are currently needed to run the tests)
1617
1. **black src/ tests/** (this formats the code)
1718
1. **pylint src/ tests/** (this analyses the code, and might rise issues that need to be fixed before the pull request)
1819
1. **mypy --ignore-missing-imports src/ tests/** (this is a static checker, and might rise issues that need to be fixed before the pull request)
1920
1. **pytest --cov=pyopmnearwell --cov-report term-missing tests/** (this runs locally the tests, and might rise issues that need to be fixed before the pull request; to save the files, add the flag **--basetemp=test_outputs**)
2021
1. **pushd docs & make html** (this generates the documentation, and might rise issues that need to be fixed before the pull request; if the build succeeds and if the contribution changes the documentation, then copy all content from the docs/_build/html/ folder and replace the files in the [_docs_](https://github.com/cssr-tools/pyopmnearwell/tree/main/docs) folder)
21-
* Tip: See the [_CI.yml_](https://github.com/cssr-tools/pyopmnearwell/blob/main/.github/workflows/CI.yml) script and the [_Actions_](https://github.com/cssr-tools/pyopmnearwell/actions) for installation of pyopmnearwell, OPM Flow (binary packages), and dependencies, as well as the execution of the six previous steps in Ubuntu 24.10.
22+
* Tip for Linux users: See the [_CI.yml_](https://github.com/cssr-tools/pyopmnearwell/blob/main/.github/workflows/CI.yml) script and the [_Actions_](https://github.com/cssr-tools/pyopmnearwell/actions) for installation of pyopmnearwell, OPM Flow (binary packages), and dependencies, as well as the execution of the seven previous steps in Ubuntu 24.04 using Python 3.12.
23+
* Tip for macOS users: See the [_ci_pycopm_macos_.yml_](https://github.com/daavid00/OPM-Flow_macOS/blob/main/.github/workflows/ci_pycopm_macos.yml) script and the [_OPM-Flow_macOS Actions_](https://github.com/cssr-tools/pycopm/actions) for installation of pycopm (a related tool to pyopmnearwell), OPM Flow (source build), and dependencies in macOS 26 using Python 3.13. In addition, you need to add the directory containing the OPM Flow executable to your system's PATH environment variable (e.g., export PATH=$PATH:/Users/yourname/pyopmnearwell/build/opm-simulators/bin).
2224
1. Squash your commits into a single commit (see this [_nice tutorial_](https://gist.github.com/lpranam/4ae996b0a4bc37448dc80356efbca7fa) if you are not familiar with this)
2325
1. Push your commit and make a pull request
2426
1. The maintainers will review the pull request, and if the contribution is accepted, then it will be merge to the main repo
@@ -32,4 +34,5 @@ Contributions are more than welcome using the fork and pull request approach
3234

3335
1. The preferred approach to seek support is to raise an Issue as described in the previous lines.
3436
1. We will try to answer as soon as possible, but also any user is more than welcome to answer.
35-
- An alternative approach is to send an email to any of the [_mantainers_](https://github.com/cssr-tools/pyopmnearwell/blob/main/pyproject.toml).
37+
- An alternative approach is to send an email to any of the [_mantainers_](https://github.com/cssr-tools/pyopmnearwell/blob/main/pyproject.toml).
38+

MANIFEST.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ include src/pyopmnearwell/templates/common/*
88
include src/pyopmnearwell/templates/foam/*
99
include src/pyopmnearwell/templates/h2store/*
1010
include src/pyopmnearwell/templates/saltprec/*
11-
include src/pyopmnearwell/utils/*
11+
include src/pyopmnearwell/utils/*

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[![Build Status](https://github.com/cssr-tools/pyopmnearwell/actions/workflows/CI.yml/badge.svg)](https://github.com/cssr-tools/pyopmnearwell/actions/workflows/CI.yml)
2-
<a href="https://www.python.org/"><img src="https://img.shields.io/badge/python-3.12%20to%203.13-blue.svg"></a>
2+
<a href="https://www.python.org/"><img src="https://img.shields.io/badge/python-3.12%20to%203.14-blue.svg"></a>
33
[![Code style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
44
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
55
[![DOI](https://zenodo.org/badge/662625461.svg)](https://zenodo.org/doi/10.5281/zenodo.10266790)
@@ -12,23 +12,23 @@ Simplified and flexible testing framework for near-well simulations via a config
1212

1313
## Installation
1414
You will first need to install
15-
* OPM Flow (https://opm-project.org, Release 2025.04 or current master branches)
15+
* OPM Flow (https://opm-project.org, Release 2025.10 or current master branches)
1616

1717
To install the _pyopmnearwell_ executable from the development version:
1818

1919
```bash
2020
pip install git+https://github.com/cssr-tools/pyopmnearwell.git
2121
```
2222

23-
If you are interested in a specific version (e.g., v2025.04) or in modifying the source code, then you can clone the repository and install the Python requirements in a virtual environment with the following commands:
23+
If you are interested in a specific version (e.g., v2025.10) or in modifying the source code, then you can clone the repository and install the Python requirements in a virtual environment with the following commands:
2424

2525
```bash
2626
# Clone the repo
2727
git clone https://github.com/cssr-tools/pyopmnearwell.git
2828
# Get inside the folder
2929
cd pyopmnearwell
30-
# For a specific version (e.g., v2025.04), or skip this step (i.e., edge version)
31-
git checkout v2025.04
30+
# For a specific version (e.g., v2025.10), or skip this step (i.e., edge version)
31+
git checkout v2025.10
3232
# Create virtual environment
3333
python3 -m venv vpyopmnearwell
3434
# Activate virtual environment
@@ -41,7 +41,7 @@ pip install -e .
4141
pip install -r dev-requirements.txt
4242
```
4343

44-
See the [_installation_](https://cssr-tools.github.io/pyopmnearwell/installation.html) for further details on building OPM Flow from the master branches in Linux, Windows, and macOS, as well as the opm and tensorflow Python packages and LaTeX dependencies.
44+
See the [_installation_](https://cssr-tools.github.io/pyopmnearwell/installation.html) for further details on building OPM Flow from the master branches in Linux, Windows (via [_WSL_](https://learn.microsoft.com/en-us/windows/wsl/)), and macOS, as well as the [_tensorflow_](https://www.tensorflow.org) Python package for the machine larning near well functionality.
4545

4646
## Running pyopmnearwell
4747
You can run _pyopmnearwell_ as a single command line:
@@ -62,10 +62,10 @@ See the [_examples_](https://cssr-tools.github.io/pyopmnearwell/examples.html) i
6262
## Publications
6363
The following is a list of manuscripts in which _pyopmnearwell_ is used:
6464

65-
1. Landa-Marbán, D., Zamani, N., Sandve, T.H., Gasda, S.E., 2024. Impact of Intermittency on Salt Precipitation During CO2 Injection, presented at SPE Norway Subsurface Conference, Bergen, Norway, April 2024. doi: 10.2118/218477-MS.
66-
1. von Schultzendorff, P., Sandve, T.H., Kane, B., Landa-Marbán, D., Both, J.W., Nordbotten, J.M., 2024. A Machine-Learned Near-Well Model in OPM Flow, presented at ECMOR 2024, European Association of Geoscientists & Engineers, Sep. 2024, pp. 1–23. doi: 10.3997/2214-4609.202437033.
67-
1. Lliguizaca, J.R., Landa-Marbán, D., Gasda, S.E., Sandve, T.H., Alcorn, Z.P., 2024. Data-Driven Predictions of CO2 EOR Numerical Studies Using Machine Learning in an Open-Source Framework, presented at SPE Norway Subsurface Conference, Bergen, Norway, April 2024. doi: 10.2118/218441-MS.
68-
1. Mushabe, R., Minougou, J.D., Landa-Marbán, D., Kane, B., Sandve, T.H., To appear. Predicting Ultimate Hydrogen Production and Residual Volume during Cyclic Underground Hydrogen Storage in Porous Media using Machine Learning.
65+
1. Landa-Marbán, D., Zamani, N., Sandve, T.H., Gasda, S.E., 2024. Impact of Intermittency on Salt Precipitation During CO2 Injection, presented at SPE Norway Subsurface Conference, Bergen, Norway, April 2024. https://doi.org/10.2118/218477-MS.
66+
1. von Schultzendorff, P., Sandve, T.H., Kane, B., Landa-Marbán, D., Both, J.W., Nordbotten, J.M., 2024. A Machine-Learned Near-Well Model in OPM Flow, presented at ECMOR 2024, European Association of Geoscientists & Engineers, Sep. 2024, pp. 1–23. https://doi.org/10.3997/2214-4609.202437033.
67+
1. Lliguizaca, J.R., Landa-Marbán, D., Gasda, S.E., Sandve, T.H., Alcorn, Z.P., 2024. Data-Driven Predictions of CO2 EOR Numerical Studies Using Machine Learning in an Open-Source Framework, presented at SPE Norway Subsurface Conference, Bergen, Norway, April 2024. https://doi.org/10.2118/218441-MS.
68+
1. Mushabe, R., Minougou, J.D., Landa-Marbán, D., Kane, B., Sandve, T.H., 2025. Predicting Ultimate Hydrogen Production and Residual Volume during Cyclic Underground Hydrogen Storage in Porous Media using Machine Learning. ESAIM: Proceedings and Surveys, 81, pp. 145-167. https://doi.org/10.1051/proc/202581145.
6969

7070
## About pyopmnearwell
7171
The pyopmnearwell package is being funded by the [_HPC Simulation Software for the Gigatonne Storage Challenge project_](https://www.norceresearch.no/en/projects/hpc-simulation-software-for-the-gigatonne-storage-challenge) [project number 622059] and [_Center for Sustainable Subsurface Resources (CSSR)_](https://cssr.no)

dev-requirements.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
black
2-
numpydoc
3-
mypy
4-
pylint
5-
pytest-cov
6-
sphinx
7-
sphinx-rtd-theme
1+
black<=25.9.0
2+
numpydoc<=1.9.0
3+
mypy<=1.18.2
4+
pylint<=4.0.2
5+
pytest-cov<=7.0.0
6+
sphinx<=8.2.3
7+
sphinx-rtd-theme<=3.0.2

docs/_images/pofff.png

1.91 MB
Loading

docs/_sources/about.rst.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ The **pyopmnearwell** package is being funded by the `HPC Simulation Software fo
1010

1111
Contributions are more than welcome using the fork and pull request approach.
1212

13-
For a new feature, please request this raising an issue.
13+
For a new feature, please request this raising an issue.

docs/_sources/api.rst.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ constains scripts used in `this repository <https://github.com/cssr-tools/ML_nea
1111

1212
Files in the pyopmnearwell tool.
1313

14-
.. include:: modules.rst
14+
.. include:: modules.rst

docs/_sources/configuration_file.rst.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,4 +171,5 @@ Additional parameters
171171

172172
For different models than the co2store, new variables are used from the ones explained here. Then, in each of the
173173
configuration files, a short description of the variable is added, e.g., for the saltprec model, then the poro-perm
174-
relationship and the parameters per different facies can be set, see `saltprec.toml <https://github.com/cssr-tools/pyopmnearwell/blob/main/examples/saltprec.toml>`_.
174+
relationship and the parameters per different facies can be set, see `saltprec.toml <https://github.com/cssr-tools/pyopmnearwell/blob/main/examples/saltprec.toml>`_, and for
175+
biofilm effects in hydrogen storage, then the parameters for the biofilm can be set, see `h2biofilm.toml <https://github.com/cssr-tools/pyopmnearwell/blob/main/examples/h2biofilm.toml>`_.

0 commit comments

Comments
 (0)