Skip to main content

OPM-Simulators Python bindings

Project description

Python bindings for the OPM-common module of the Open Porous Media project.

To compile with python support:

  • Add the cmake flags -DOPM_ENABLE_PYTHON=ON and -DOPM_INSTALL_PYTHON=ON
  • Optionally add prefix -DCMAKE_INSTALL_PREFIX=/opt/opm to install outside the standard distro directories
  • Optionally specify python binary -DPython3_EXECUTABLE=/home/user/miniconda3/envs/rkt/bin/python3 if you don't want to use the system python, e.g. use a python from pyenv or from a conda environment

Sample compilation on linux:

#! /bin/bash

flags="-DPython3_EXECUTABLE=/home/hakon/miniconda3/envs/rkt/bin/python3 -DOPM_ENABLE_PYTHON=ON -DOPM_INSTALL_PYTHON=ON -DCMAKE_INSTALL_PREFIX=/opt/opm"
for repo in opm-common opm-grid opm-models opm-simulators
do
    cd "$repo"
    mkdir -p build
    cd build
    cmake  $flags ..
    make -j8
    sudo make install
    cd ..
    cd ..
done

Then you should be able to use the module from a Python script. If you installed in a non-standard directory by specifying -DCMAKE_INSTALL_PREFIX you may need to set the PYTHONPATH environment variable before running your Python script, for example:

$ PYTHONPATH=/opt/opm/lib/python3.11/site-packages python3 spe1case1.py

and spe1case1.py could be:

import os
from opm.simulators import BlackOilSimulator
from opm.io.parser import Parser
from opm.io.ecl_state import EclipseState
from opm.io.schedule import Schedule
from opm.io.summary import SummaryConfig

os.chdir("SPE1CASE1")
deck  = Parser().parse('SPE1CASE1.DATA')
state = EclipseState(deck)
schedule = Schedule( deck, state )
summary_config = SummaryConfig(deck, state, schedule)

sim = BlackOilSimulator(deck, state, schedule, summary_config)
sim.step_init()
sim.step()
poro = sim.get_porosity()
poro = poro *.95
sim.set_porosity(poro)
sim.step()
sim.step_cleanup()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

opm_simulators-2025.4-cp312-cp312-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

opm_simulators-2025.4-cp311-cp311-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

opm_simulators-2025.4-cp310-cp310-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

opm_simulators-2025.4-cp39-cp39-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

opm_simulators-2025.4-cp38-cp38-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ x86-64

opm_simulators-2025.4-cp37-cp37m-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.28+ x86-64

opm_simulators-2025.4-cp36-cp36m-manylinux_2_28_x86_64.whl (17.6 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.28+ x86-64

File details

Details for the file opm_simulators-2025.4-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 52ed371f0935de54afe2fca54bbc3bde6e8c28c34d03daea25e1219f73e9d1a4
MD5 01a347be535f0c73f0ac197adbe6ecb2
BLAKE2b-256 4466a395fc1fa440d009b084ff4de4c94b2d2beed6dd779c0943b063aa260eb5

See more details on using hashes here.

File details

Details for the file opm_simulators-2025.4-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7ed794a6154a2bf072120bc130fd38f440b090958f281d16c5bc640d497f0c43
MD5 7d5e6f1e149cad6ac81ad1718dcdcc48
BLAKE2b-256 213b25e1c9ebb89fdfbe581a3ffc8c73a2e0ab934956b4ba01f920889d99dfd0

See more details on using hashes here.

File details

Details for the file opm_simulators-2025.4-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 04c9d71f8efe03194afc4f70b4466a540bb420438ab0c0def316ef8c2ae149b3
MD5 917e31103b3521e570077896135e754c
BLAKE2b-256 a9f8ee0cdd4b6ce016a82d96a67918fe1e365826579196cfaa15db2cd492b682

See more details on using hashes here.

File details

Details for the file opm_simulators-2025.4-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 190aaf66e0ace8559f26973ac3451cc53fc12787d6155f93bde04f15b4c8c416
MD5 7db920855eae08ed9b5c81e697d2fd6b
BLAKE2b-256 d7c4fd6581ef3c5a2a28d8e5fa3424f59f564922263315cdaa67df7a3abcbbc9

See more details on using hashes here.

File details

Details for the file opm_simulators-2025.4-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9b8824cfa61f100b477e021cfe71841e1f05af1e81d7baa1ddf11b7c0c74cb47
MD5 32cb75e55e56f8745839e3af2068d96e
BLAKE2b-256 ad26af006693a3055cc91b8cd00fdcc8317d92491f16252cbd329a0368eba5d6

See more details on using hashes here.

File details

Details for the file opm_simulators-2025.4-cp37-cp37m-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp37-cp37m-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 86c4210fe375578535065830eefb70cea0efc434a6b804012d906db5cd3a65db
MD5 2e0c002f5cadc291f069d8f0b27acf06
BLAKE2b-256 534a953e1e3b8c6ad7f879024bea9ddd4d6fc6a1b31cb11368dcb6e21fe2c71f

See more details on using hashes here.

File details

Details for the file opm_simulators-2025.4-cp36-cp36m-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opm_simulators-2025.4-cp36-cp36m-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c9cf3fe11b6ef4dd2c173b434b37b4f63fac6f764ddb67c3b0107562e6db702f
MD5 7c6d3cc588cc6fb447e738ec3e0d53ca
BLAKE2b-256 4815dc447f2372cbdb34eac8a994b10c4f6d847b43c5e83d3f32dc7a129947f8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page