Skip to content

cssr-tools/expreccs

Repository files navigation

Build Status Code style License: GPL v3 DOI

A Python framework for the ExpReCCS (Expansion of ResourCes for CO2 Storage on the Horda Platform) project

This repository contains scripts to set up a workflow to run site and regional reservoirs for CO2 storage using the OPM-Flow simulator.

Installation

You will first need to install

You can install the Python requirements in a virtual environment with the following commands:

# Clone the repo
git clone https://github.com/cssr-tools/expreccs.git
# Get inside the folder
cd expreccs
# Create the virtual environment
python3 -m venv vexpreccs
# Activate the virtual environment
source vexpreccs/bin/activate
# Upgrade pip, setuptools, and wheel
pip install --upgrade pip setuptools wheel
# Install the expreccs package (in editable mode for contributions/modifications; otherwise, pip install .)
pip install -e .
# For contributions/testing/linting, install the dev-requirements
pip install -r dev-requirements.txt

If you are a Linux user (including the Windows subsystem for Linux), then you could try to build Flow from the master branches with mpi support, by running the script ./build_opm-flow_mpi.bash (see the CI.yml), which in turn should build the executable in ./build/opm-simulators/bin/flow_gaswater_dissolution.

For macOS users with the latest chips (M1/M2, guessing also M3?), the opm Python package is not available via pip install, while resdata might not be available depending on the Python version (e.g., it is not found using Python 3.9, but it is installed using Python 3.10). If you face this issue, then before installation, remove resdata and opm from the requirements.txt, then proceed with the Python requirements installation, install the OPM Flow dependencies (using macports or brew), and once inside the vexpreccs Python environment, run the ./build_opm-flow_macOS.bash, and deactivate and activate the virtual environment (this script builds OPM Flow as well as the opm Python package, and it exports the required PYTHONPATH).

Running expreccs

You can run expreccs as a single command line:

expreccs -i some_input.txt -o some_output_folder

Run expreccs --help to see all possible command line argument options. Inside the some_input.txt file you provide the path to the flow executable and simulation parameters. See the .txt files in the examples and tests/configs folders.

Getting started

See the documentation.

About expreccs

The expreccs package is funded by Wintershall Dea, Equinor, Shell, and the Research Council of Norway [project number 336294]. This is work in progress. Here is the link to the project details. Contributions are more than welcome using the fork and pull request approach.