/expreccs

A Python framework using OPM Flow to simulate regional and site reservoirs for CO2 storage

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

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

To install the expreccs executable in an existing Python environment:

pip install git+https://github.com/cssr-tools/expreccs.git

If you are interested in modifying the source code, then you can clone the repository and 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
pip install -e .
# For contributions/testing/linting, install the dev-requirements
pip install -r dev-requirements.txt

See the installation for further details on building OPM Flow from the master branches in Linux, Windows, and macOS, as well as the opm Python package.

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 folders.

Getting started

See the examples in 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.