diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 022d7af..8da0841 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -9,23 +9,17 @@ on: jobs: run-pofff-local: timeout-minutes: 30 - strategy: - fail-fast: false - matrix: - python-version: ['3.12'] - os: [ubuntu-latest] - - runs-on: ${{ matrix.os }} + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: fetch-depth: 0 - - name: Set up Python ${{ matrix.python-version }} + - name: Set up Python 3.12 uses: actions/setup-python@v2 with: - python-version: ${{ matrix.python-version }} + python-version: 3.12 - name: Install Flow Simulator run: | @@ -58,7 +52,7 @@ jobs: - name: Run the tests run: | - pytest --cov=pofff --cov-report term-missing tests/ + pytest -x --cov=pofff --cov-report term-missing tests/ - name: Build documentation run: | diff --git a/docs/_images/plopm_xco2l.gif b/docs/_images/plopm_xco2l.gif new file mode 100644 index 0000000..1ed2dd8 Binary files /dev/null and b/docs/_images/plopm_xco2l.gif differ diff --git a/docs/_sources/examples.rst.txt b/docs/_sources/examples.rst.txt index 809d9b7..0be38e9 100644 --- a/docs/_sources/examples.rst.txt +++ b/docs/_sources/examples.rst.txt @@ -22,8 +22,7 @@ Adding your results =================== The `publication `_ folder contains the configuration files used for the results in the -`pofff paper `_ (see :doc:`publication <./publication>` for details in the steps to reproduce the figures in the paper). -For example, running inside that folder: +`pofff paper `_ (see :doc:`publication <./publication>` for details in the steps to reproduce the figures in the paper). .. code-block:: bash @@ -77,3 +76,36 @@ see/run the scripts in the `tests `_ for an example of splitting the generation of the files, running of everest, and postprocessing). Please raise an issue for missing keywords in the toml configuration files that you would like to be added. + +============= +Visualization +============= +To postprocess the data, `plopm `_ can be used. + +.. tip:: + You can install `plopm `_ by executing in the terminal: + + .. code-block:: bash + + pip install git+https://github.com/cssr-tools/plopm.git + +For example, if you run the `appendixb.toml `_ configuration file and change the 'inj' variable in line 17 to: + +.. code-block:: bash + + inj=[[8100, 300, 3E-7, 0], + [10200, 300, 3E-7, 3E-7], + [3300, 300, 0, 0], + [64800, 3600, 0, 0], + [345600, 21600, 0, 0]] + +Then the following GIF is generated by: + + .. code-block:: bash + + pofff -i appendixb.toml -o plopm -m single -c '5e-2' -f none + plopm -v xco2l -i plopm/PLOPM -d 8,2.5 -mask satnum -m gif -dpi 1000 -f 12 -loop 1 -cformat .2f -cbsfax 0.30,0.01,0.4,0.02 -remove 0,0,1,0 -interval 437.5 -maskthr 1e-5 -tunits h + +.. image:: ./figs/plopm_xco2l.gif + +See the `plopm online docmunetation `_ for additional information of supported flag parameters to generate customized PNGs and GIFs. diff --git a/docs/_sources/installation.rst.txt b/docs/_sources/installation.rst.txt index 65d3977..7cb231d 100644 --- a/docs/_sources/installation.rst.txt +++ b/docs/_sources/installation.rst.txt @@ -7,6 +7,18 @@ While using package managers such as Anaconda, Miniforge, or Mamba might work, t update the documentation when Python 3.14 is supported (e.g., the ert Python package is not yet available via pip install in Python 3.14). +`ResInsight `_ and `plopm `_ can be used for the visualization of the results. + +.. note:: + + There are binary packages for Linux and Windows to install Resinsight, see the `ResInsight Documentation `_. For macOS users, you could try to install it using `brew `_ by executing: + + .. code-block:: bash + + brew install cssr-tools/opm/resinsight + + Then, you should be able to open resinsight by typing in the terminal **resinsight**. + .. _vpofff: Python package @@ -44,6 +56,14 @@ install the Python requirements in a virtual environment with the following comm Typing **git tag -l** writes all available specific versions. +.. note:: + + For not macOS users, to install the (optional but recommended) dependencies used for the figure's LaTeX formatting, execute + + **sudo apt-get install texlive-fonts-recommended texlive-fonts-extra dvipng cm-super** + + For macOS users, the LaTeX dependency can be installed from https://www.tug.org/mactex/ + .. _opmflow: OPM Flow @@ -52,6 +72,13 @@ You also need to install: * OPM Flow (https://opm-project.org, Release 2025.10 or current master branches) +Binary packages ++++++++++++++++ + +See the `downloading and installing `_ OPM Flow online documentation for +instructions to install the binary packages in Ubuntu and Red Hat Enterprise Linux, and for other platforms which are +supported either via source builds or through running a virtual machine. + .. tip:: See the `CI.yml `_ script @@ -89,11 +116,24 @@ in the terminal the following lines (which in turn should build flow in the fold .. _macOS: +Brew formula for macOS +++++++++++++++++++++++ +For macOS, there are no available binary packages, so OPM Flow needs to be built from source. Recently, a formula to build flow using brew has +been added in `https://github.com/cssr-tools/homebrew-opm `_. +Then, you can try to install flow (v2025.10) by simply typing: + +.. code-block:: console + + brew install cssr-tools/opm/opm-simulators + +You can check if the installation of OPM Flow succeded by typing in the terminal **flow \-\-help**. + +.. tip:: + See the actions in the `cssr-tools/homebrew-opm `_ repository. + Source build in macOS +++++++++++++++++++++ -For macOS, there are no available binary packages, so OPM Flow needs to be built from source, in addition to the dune libraries -(see the `prerequisites `_, which can be installed using macports or brew). For example, -with brew the prerequisites can be installed by: +If you would like to build the latest OPM Flow from the master branch, then you can first install the prerequisites using brew: .. code-block:: console @@ -101,18 +141,15 @@ with brew the prerequisites can be installed by: In addition, it is recommended to upgrade and update your macOS to the latest available versions (the following steps have worked for macOS Tahoe 26.1 with Apple clang version 17.0.0). -After the prerequisites are installed and the vpofff Python environment is created (see :ref:`vpofff`), -then building OPM Flow and the opm Python package can be achieved with the following lines: +After the prerequisites are installed, then building OPM Flow can be achieved with the following lines: .. code-block:: console CURRENT_DIRECTORY="$PWD" - deactivate - source vpofff/bin/activate - for module in common geometry grid istl - do git clone https://gitlab.dune-project.org/core/dune-$module.git --branch v2.9.1 + do git clone https://gitlab.dune-project.org/core/dune-$module.git + cd dune-$module && git checkout v2.10.0 && cd .. ./dune-common/bin/dunecontrol --only=dune-$module cmake -DCMAKE_DISABLE_FIND_PACKAGE_MPI=1 ./dune-common/bin/dunecontrol --only=dune-$module make -j5 done @@ -121,9 +158,8 @@ then building OPM Flow and the opm Python package can be achieved with the follo for repo in common grid simulators do git clone https://github.com/OPM/opm-$repo.git - mkdir build/opm-$repo - cd build/opm-$repo - cmake -DWITH_NDEBUG=1 -DUSE_MPI=0 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$CURRENT_DIRECTORY/dune-common/build-cmake;$CURRENT_DIRECTORY/dune-grid/build-cmake;$CURRENT_DIRECTORY/dune-geometry/build-cmake;$CURRENT_DIRECTORY/dune-istl/build-cmake;$CURRENT_DIRECTORY/build/opm-common;$CURRENT_DIRECTORY/build/opm-grid" $CURRENT_DIRECTORY/opm-$repo + mkdir build/opm-$repo && cd build/opm-$repo + cmake -DUSE_MPI=0 -DWITH_NDEBUG=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$CURRENT_DIRECTORY/dune-common/build-cmake;$CURRENT_DIRECTORY/dune-grid/build-cmake;$CURRENT_DIRECTORY/dune-geometry/build-cmake;$CURRENT_DIRECTORY/dune-istl/build-cmake;$CURRENT_DIRECTORY/build/opm-common;$CURRENT_DIRECTORY/build/opm-grid" $CURRENT_DIRECTORY/opm-$repo if [[ $repo == simulators ]]; then make -j5 flow else @@ -132,15 +168,11 @@ then building OPM Flow and the opm Python package can be achieved with the follo cd ../.. done - echo "export PATH=\$PATH:$CURRENT_DIRECTORY/build/opm-simulators/bin" >> $CURRENT_DIRECTORY/vpofff/bin/activate + echo "export PATH=\$PATH:$CURRENT_DIRECTORY/build/opm-simulators/bin" >> ~/.zprofile + source ~/.zprofile - deactivate - source vpofff/bin/activate - -This builds OPM Flow, and it exports the path to the flow executable (i.e., executing in the terminal **which flow** should print the path). +This builds OPM Flow, and it exports the path to the flow executable. You can check if the installation of OPM Flow succeded by typing in the terminal **flow \-\-help**. .. tip:: See `this repository `_ dedicated to build OPM Flow from source in the latest macOS (GitHub actions). If you still face problems, raise an issue in the GitHub repository, or you could also send an email to the maintainers. - -For macOS, the LaTeX dependency can be installed from https://www.tug.org/mactex/. diff --git a/docs/_sources/publication.rst.txt b/docs/_sources/publication.rst.txt index 58dd8b0..2af9a6a 100644 --- a/docs/_sources/publication.rst.txt +++ b/docs/_sources/publication.rst.txt @@ -23,7 +23,7 @@ Figure 3: plopm -i figure3/FIGURE3 -v 'multx * 1.75' -grid 'black,1e-2' -remove 1,1,0,1 -d 20,15 -clabel 'Thickness map [cm]' -cformat .2f -cnum 5 -f 20 -o figure3 -save figure3b Figure 4 requires running the SPE11A cases using `pyopmspe11 `_, which uses the simulation grid. You might need to edit the configuration files to -adjust the computational resources to your machine (e.g., `r3_cp_1cmish_capmax2500Pa.txt `_ is run with 32 cpus). +adjust the computational resources to your machine (e.g., `r3_cp_1cmish_capmax2500Pa.toml `_ is run with 32 cpus). .. tip:: You can install `pyopmspe11 `_ by executing in the terminal: @@ -35,18 +35,18 @@ adjust the computational resources to your machine (e.g., `r3_cp_1cmish_capmax25 .. code-block:: bash mkdir figure4 && cd figure4 - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.txt - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.txt - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r4_Cart_1mm_capmax2500Pa.txt - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r5_Cart_1mm_capmax2500Pa_strictol.txt - pyopmspe11 -i r2_Cart_1cm_capmax2500Pa.txt -o r2_Cart_1cm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 - pyopmspe11 -i r3_cp_1cmish_capmax2500Pa.txt -o r3_cp_1cmish_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 - pyopmspe11 -i r4_Cart_1mm_capmax2500Pa.txt -o r4_Cart_1mm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 - pyopmspe11 -i r5_Cart_1mm_capmax2500Pa_strictol.txt -o r5_Cart_1mm_capmax2500Pa_strictol -t 1 -r 280,1,120 -w 0.16666666666666666 + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.toml + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.toml + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r4_Cart_1mm_capmax2500Pa.toml + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r5_Cart_1mm_capmax2500Pa_strictol.toml + pyopmspe11 -i r2_Cart_1cm_capmax2500Pa.toml -o r2_Cart_1cm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 + pyopmspe11 -i r3_cp_1cmish_capmax2500Pa.toml -o r3_cp_1cmish_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 + pyopmspe11 -i r4_Cart_1mm_capmax2500Pa.toml -o r4_Cart_1mm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 + pyopmspe11 -i r5_Cart_1mm_capmax2500Pa_strictol.toml -o r5_Cart_1mm_capmax2500Pa_strictol -t 1 -r 280,1,120 -w 0.16666666666666666 plopm -v xco2l -r 53 -mask satnum -maskthr 7e-5 -i 'r2_Cart_1cm_capmax2500Pa/flow/R2_CART_1CM_CAPMAX2500PA r3_cp_1cmish_capmax2500Pa/flow/R3_CP_1CMISH_CAPMAX2500PA r4_Cart_1mm_capmax2500Pa/flow/R4_CART_1MM_CAPMAX2500PA r5_Cart_1mm_capmax2500Pa_strictol/flow/R5_CART_1MM_CAPMAX2500PA_STRICTOL' -cnum 3 -xlnum 8 -clabel 'OPM results for SPE11A: CO$_2$ mass fraction (liquid phase) after 2 days' -d 16,6.5 -t "(a) Cartesian grid 1cm (b) Corner-point grid 1cmish (c) Cartesian grid 1mm (d) Cartesian grid 1mm stricter tolerances" -yunits cm -xunits cm -yformat .0f -xformat .0f -f 16 -save figure4 -cformat .2e -suptitle 0 -subfigs 2,2 -cbsfax 0.35,0.97,0.3,0.02 -delax 1 -c '#9ca245 #9da347 #9fa44a #a0a64d #a2a750 #a3a953 #a5aa56 #a6ac59 #a8ad5c #a9af5f #abb062 #adb164 #aeb367 #b0b46a #b1b66d #b3b770 #b4b973 #b6ba76 #b7bc79 #b9bd7c #babf7f #bcc082 #bec184 #bfc387 #c1c48a #c2c68d #c4c790 #c5c993 #c7ca96 #c8cc99 #cacd9c #cbcf9f #cdd0a2 #cfd1a4 #d0d3a7 #d2d4aa #d3d6ad #d5d7b0 #d6d9b3 #d8dab6 #d9dcb9 #dbddbc #dcdfbf #dee0c1 #e0e1c4 #e1e3c7 #e3e4ca #e4e6cd #e6e7d0 #e7e9d3 #e9ead6 #eaecd9 #eceddc #edefdf #eff0e1 #f1f1e4 #f2f3e7 #f4f4ea #f5f6ed #f7f7f0 #f8f9f3 #fafaf6 #fbfcf9 #fdfdfc #ffffff #fefbfb #fdf7f7 #fcf3f3 #fbefef #faebeb #f9e7e7 #f8e3e3 #f7e0e0 #f6dcdc #f5d8d8 #f4d4d4 #f3d0d0 #f2cccc #f1c8c8 #f0c5c5 #efc1c1 #eebdbd #edb9b9 #ecb5b5 #ebb1b1 #eaadad #e9aaaa #e8a6a6 #e7a2a2 #e69e9e #e59a9a #e49696 #e39292 #e28f8f #e18b8b #e08787 #df8383 #de7f7f #dd7b7b #dc7777 #db7474 #da7070 #d96c6c #d86868 #d76464 #d66060 #d55c5c #d45959 #d35555 #d25151 #d14d4d #d04949 #cf4545 #ce4141 #cd3e3e #cc3a3a #cb3636 #ca3232 #c92e2e #c82a2a #c72626 #c62323 #c51f1f #c41b1b #c31717 #c21313 #c10f0f #c00b0b' A similar figure without the need of running the simulations (not showing the sands in the background and using the reporting grid) can be obtained by downloading the SPE11A benchmark data in csv format available at -`this website `_ (the submitted benchmark data does not include the `r5_Cart_1mm_capmax2500Pa_strictol.txt `_ results): +`this website `_ (the submitted benchmark data does not include the `r5_Cart_1mm_capmax2500Pa_strictol.toml `_ results): .. code-block:: bash diff --git a/docs/about.html b/docs/about.html index cea265e..3c36a19 100644 --- a/docs/about.html +++ b/docs/about.html @@ -98,7 +98,7 @@

About pofff -

© Copyright 2025, NORCE Research AS.

+

© Copyright 2025-2026, NORCE Research AS.

Built with
Sphinx using a diff --git a/docs/api.html b/docs/api.html index 1111c03..b9c61bc 100644 --- a/docs/api.html +++ b/docs/api.html @@ -149,7 +149,7 @@

pofff
-

© Copyright 2025, NORCE Research AS.

+

© Copyright 2025-2026, NORCE Research AS.

Built with Sphinx using a diff --git a/docs/configuration_file.html b/docs/configuration_file.html index 2c1997a..74ffe81 100644 --- a/docs/configuration_file.html +++ b/docs/configuration_file.html @@ -138,7 +138,7 @@

Configuration file -

© Copyright 2025, NORCE Research AS.

+

© Copyright 2025-2026, NORCE Research AS.

Built with
Sphinx using a diff --git a/docs/contributing.html b/docs/contributing.html index d80c27e..6a02fc8 100644 --- a/docs/contributing.html +++ b/docs/contributing.html @@ -157,7 +157,7 @@

Seek support -

© Copyright 2025, NORCE Research AS.

+

© Copyright 2025-2026, NORCE Research AS.

Built with
Sphinx using a diff --git a/docs/examples.html b/docs/examples.html index b5c3d07..1b20ae1 100644 --- a/docs/examples.html +++ b/docs/examples.html @@ -52,6 +52,7 @@
  • Hello world
  • Adding your results
  • History matching
  • +
  • Visualization
  • Publication
  • @@ -103,8 +104,7 @@

    Hello world

    Adding your results

    The publication folder contains the configuration files used for the results in the -pofff paper (see publication for details in the steps to reproduce the figures in the paper). -For example, running inside that folder:

    +pofff paper (see publication for details in the steps to reproduce the figures in the paper).

    pofff -i results.toml -o YOURS -m single -t 24,48,72,96,120 -f all
     
    @@ -151,6 +151,34 @@

    History matching +

    Visualization

    +

    To postprocess the data, plopm can be used.

    +
    +

    Tip

    +

    You can install plopm by executing in the terminal:

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

    For example, if you run the appendixb.toml configuration file and change the ‘inj’ variable in line 17 to:

    +
    inj=[[8100, 300, 3E-7, 0],
    +[10200, 300, 3E-7, 3E-7],
    +[3300, 300, 0, 0],
    +[64800, 3600, 0, 0],
    +[345600, 21600, 0, 0]]
    +
    +
    +

    Then the following GIF is generated by:

    +
    +
    pofff -i appendixb.toml -o plopm -m single -c '5e-2' -f none
    +plopm -v xco2l -i plopm/PLOPM -d 8,2.5 -mask satnum -m gif -dpi 1000 -f 12 -loop 1 -cformat .2f -cbsfax 0.30,0.01,0.4,0.02 -remove 0,0,1,0 -interval 437.5 -maskthr 1e-5 -tunits h
    +
    +
    +
    +_images/plopm_xco2l.gif +

    See the plopm online docmunetation for additional information of supported flag parameters to generate customized PNGs and GIFs.

    + @@ -164,7 +192,7 @@

    History matching -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/genindex.html b/docs/genindex.html index e050e07..14c24d8 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -522,7 +522,7 @@

    W


    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/index.html b/docs/index.html index 59a98fe..732a250 100644 --- a/docs/index.html +++ b/docs/index.html @@ -92,7 +92,9 @@

    Welcome to pofff’s documentation!Installation
  • Publication
  • @@ -163,7 +166,7 @@

    Indices and tables -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/installation.html b/docs/installation.html index 30b60e9..4062808 100644 --- a/docs/installation.html +++ b/docs/installation.html @@ -49,7 +49,9 @@
  • Installation +
    +

    Binary packages

    +

    See the downloading and installing OPM Flow online documentation for +instructions to install the binary packages in Ubuntu and Red Hat Enterprise Linux, and for other platforms which are +supported either via source builds or through running a virtual machine.

    Tip

    See the CI.yml script for installation of OPM Flow (binary packages), LaTeX (optional) libraries, and the pofff package in Ubuntu 24.04 and Python 3.12.

    +

    Source build in Linux/Windows

    If you are a Linux user (including the Windows subsystem for Linux, see this link @@ -165,25 +188,34 @@

    Source build in Linux/Windows +

    Brew formula for macOS

    +

    For macOS, there are no available binary packages, so OPM Flow needs to be built from source. Recently, a formula to build flow using brew has +been added in https://github.com/cssr-tools/homebrew-opm. +Then, you can try to install flow (v2025.10) by simply typing:

    +
    brew install cssr-tools/opm/opm-simulators
    +
    +
    +

    You can check if the installation of OPM Flow succeded by typing in the terminal flow --help.

    +
    +

    Tip

    +

    See the actions in the cssr-tools/homebrew-opm repository.

    +
    +

    -

    Source build in macOS

    -

    For macOS, there are no available binary packages, so OPM Flow needs to be built from source, in addition to the dune libraries -(see the prerequisites, which can be installed using macports or brew). For example, -with brew the prerequisites can be installed by:

    +

    Source build in macOS

    +

    If you would like to build the latest OPM Flow from the master branch, then you can first install the prerequisites using brew:

    brew install boost cmake openblas suite-sparse python@3.13
     

    In addition, it is recommended to upgrade and update your macOS to the latest available versions (the following steps have worked for macOS Tahoe 26.1 with Apple clang version 17.0.0). -After the prerequisites are installed and the vpofff Python environment is created (see Python package), -then building OPM Flow and the opm Python package can be achieved with the following lines:

    +After the prerequisites are installed, then building OPM Flow can be achieved with the following lines:

    CURRENT_DIRECTORY="$PWD"
     
    -deactivate
    -source vpofff/bin/activate
    -
     for module in common geometry grid istl
    -do   git clone https://gitlab.dune-project.org/core/dune-$module.git --branch v2.9.1
    +do  git clone https://gitlab.dune-project.org/core/dune-$module.git
    +    cd dune-$module && git checkout v2.10.0 && cd ..
         ./dune-common/bin/dunecontrol --only=dune-$module cmake -DCMAKE_DISABLE_FIND_PACKAGE_MPI=1
         ./dune-common/bin/dunecontrol --only=dune-$module make -j5
     done
    @@ -192,9 +224,8 @@ 

    Source build in Linux/Windowsfor repo in common grid simulators do git clone https://github.com/OPM/opm-$repo.git - mkdir build/opm-$repo - cd build/opm-$repo - cmake -DWITH_NDEBUG=1 -DUSE_MPI=0 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$CURRENT_DIRECTORY/dune-common/build-cmake;$CURRENT_DIRECTORY/dune-grid/build-cmake;$CURRENT_DIRECTORY/dune-geometry/build-cmake;$CURRENT_DIRECTORY/dune-istl/build-cmake;$CURRENT_DIRECTORY/build/opm-common;$CURRENT_DIRECTORY/build/opm-grid" $CURRENT_DIRECTORY/opm-$repo + mkdir build/opm-$repo && cd build/opm-$repo + cmake -DUSE_MPI=0 -DWITH_NDEBUG=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$CURRENT_DIRECTORY/dune-common/build-cmake;$CURRENT_DIRECTORY/dune-grid/build-cmake;$CURRENT_DIRECTORY/dune-geometry/build-cmake;$CURRENT_DIRECTORY/dune-istl/build-cmake;$CURRENT_DIRECTORY/build/opm-common;$CURRENT_DIRECTORY/build/opm-grid" $CURRENT_DIRECTORY/opm-$repo if [[ $repo == simulators ]]; then make -j5 flow else @@ -203,19 +234,16 @@

    Source build in Linux/Windows cd ../.. done -echo "export PATH=\$PATH:$CURRENT_DIRECTORY/build/opm-simulators/bin" >> $CURRENT_DIRECTORY/vpofff/bin/activate - -deactivate -source vpofff/bin/activate +echo "export PATH=\$PATH:$CURRENT_DIRECTORY/build/opm-simulators/bin" >> ~/.zprofile +source ~/.zprofile

    -

    This builds OPM Flow, and it exports the path to the flow executable (i.e., executing in the terminal which flow should print the path).

    +

    This builds OPM Flow, and it exports the path to the flow executable. You can check if the installation of OPM Flow succeded by typing in the terminal flow --help.

    Tip

    See this repository dedicated to build OPM Flow from source in the latest macOS (GitHub actions). If you still face problems, raise an issue in the GitHub repository, or you could also send an email to the maintainers.

    -

    For macOS, the LaTeX dependency can be installed from https://www.tug.org/mactex/.

    @@ -231,7 +259,7 @@

    Source build in Linux/Windows -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/introduction.html b/docs/introduction.html index c9cf60a..cdfc1a6 100644 --- a/docs/introduction.html +++ b/docs/introduction.html @@ -143,7 +143,7 @@

    Concept
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/modules.html b/docs/modules.html index 8983143..463cee6 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -122,7 +122,7 @@

    pofff
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/objects.inv b/docs/objects.inv index 4c51025..e95ff15 100644 Binary files a/docs/objects.inv and b/docs/objects.inv differ diff --git a/docs/output_folder.html b/docs/output_folder.html index 2f562b9..f983ddb 100644 --- a/docs/output_folder.html +++ b/docs/output_folder.html @@ -135,7 +135,7 @@

    ERT
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.core.html b/docs/pofff.core.html index 7d79f2b..abd4dc4 100644 --- a/docs/pofff.core.html +++ b/docs/pofff.core.html @@ -114,7 +114,7 @@

    Submodules -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/pofff.core.pofff.html b/docs/pofff.core.pofff.html index 72fba4f..fdc3663 100644 --- a/docs/pofff.core.pofff.html +++ b/docs/pofff.core.pofff.html @@ -118,7 +118,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.html b/docs/pofff.html index 779cb3b..3f7df97 100644 --- a/docs/pofff.html +++ b/docs/pofff.html @@ -237,7 +237,7 @@

    Subpackages -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/pofff.jobs.data.html b/docs/pofff.jobs.data.html index d2ffba6..c072c3d 100644 --- a/docs/pofff.jobs.data.html +++ b/docs/pofff.jobs.data.html @@ -223,7 +223,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.jobs.delete.html b/docs/pofff.jobs.delete.html index 6621f9c..da6ffce 100644 --- a/docs/pofff.jobs.delete.html +++ b/docs/pofff.jobs.delete.html @@ -100,7 +100,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.jobs.html b/docs/pofff.jobs.html index 49c3277..57e2004 100644 --- a/docs/pofff.jobs.html +++ b/docs/pofff.jobs.html @@ -129,7 +129,7 @@

    Submodules -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/pofff.jobs.metric.html b/docs/pofff.jobs.metric.html index ace6e08..d65cd64 100644 --- a/docs/pofff.jobs.metric.html +++ b/docs/pofff.jobs.metric.html @@ -124,7 +124,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.utils.html b/docs/pofff.utils.html index aa9dfbd..be531bb 100644 --- a/docs/pofff.utils.html +++ b/docs/pofff.utils.html @@ -145,7 +145,7 @@

    Submodules -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/pofff.utils.inputvalues.html b/docs/pofff.utils.inputvalues.html index 59fd0e5..6d1e06d 100644 --- a/docs/pofff.utils.inputvalues.html +++ b/docs/pofff.utils.inputvalues.html @@ -125,7 +125,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.utils.mapproperties.html b/docs/pofff.utils.mapproperties.html index 71cc683..ae8c621 100644 --- a/docs/pofff.utils.mapproperties.html +++ b/docs/pofff.utils.mapproperties.html @@ -271,7 +271,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.utils.runs.html b/docs/pofff.utils.runs.html index 3d832a1..ecfcbe9 100644 --- a/docs/pofff.utils.runs.html +++ b/docs/pofff.utils.runs.html @@ -172,7 +172,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.utils.writefile.html b/docs/pofff.utils.writefile.html index 3ed90e8..aec4b3c 100644 --- a/docs/pofff.utils.writefile.html +++ b/docs/pofff.utils.writefile.html @@ -148,7 +148,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.visualization.benchmark.html b/docs/pofff.visualization.benchmark.html index 495be39..6ac2560 100644 --- a/docs/pofff.visualization.benchmark.html +++ b/docs/pofff.visualization.benchmark.html @@ -118,7 +118,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.visualization.error_table.html b/docs/pofff.visualization.error_table.html index d14acc7..3d4794b 100644 --- a/docs/pofff.visualization.error_table.html +++ b/docs/pofff.visualization.error_table.html @@ -106,7 +106,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.visualization.everert.html b/docs/pofff.visualization.everert.html index 46afcc6..956629b 100644 --- a/docs/pofff.visualization.everert.html +++ b/docs/pofff.visualization.everert.html @@ -196,7 +196,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.visualization.html b/docs/pofff.visualization.html index 2c7ff65..47f0db6 100644 --- a/docs/pofff.visualization.html +++ b/docs/pofff.visualization.html @@ -145,7 +145,7 @@

    Submodules -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with
    Sphinx using a diff --git a/docs/pofff.visualization.maps.html b/docs/pofff.visualization.maps.html index 0cc4600..48277f3 100644 --- a/docs/pofff.visualization.maps.html +++ b/docs/pofff.visualization.maps.html @@ -151,7 +151,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/pofff.visualization.sparse_values.html b/docs/pofff.visualization.sparse_values.html index 70d10ee..e0d36ec 100644 --- a/docs/pofff.visualization.sparse_values.html +++ b/docs/pofff.visualization.sparse_values.html @@ -106,7 +106,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/publication.html b/docs/publication.html index f24928c..8b28e67 100644 --- a/docs/publication.html +++ b/docs/publication.html @@ -100,7 +100,7 @@

    Publicationpyopmspe11, which uses the simulation grid. You might need to edit the configuration files to -adjust the computational resources to your machine (e.g., r3_cp_1cmish_capmax2500Pa.txt is run with 32 cpus).

    +adjust the computational resources to your machine (e.g., r3_cp_1cmish_capmax2500Pa.toml is run with 32 cpus).

    Tip

    You can install pyopmspe11 by executing in the terminal:

    @@ -109,19 +109,19 @@

    Publication
    mkdir figure4 && cd figure4
    -curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.txt
    -curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.txt
    -curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r4_Cart_1mm_capmax2500Pa.txt
    -curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r5_Cart_1mm_capmax2500Pa_strictol.txt
    -pyopmspe11 -i r2_Cart_1cm_capmax2500Pa.txt -o r2_Cart_1cm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666
    -pyopmspe11 -i r3_cp_1cmish_capmax2500Pa.txt -o r3_cp_1cmish_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666
    -pyopmspe11 -i r4_Cart_1mm_capmax2500Pa.txt -o r4_Cart_1mm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666
    -pyopmspe11 -i r5_Cart_1mm_capmax2500Pa_strictol.txt -o r5_Cart_1mm_capmax2500Pa_strictol -t 1 -r 280,1,120 -w 0.16666666666666666
    +curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.toml
    +curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.toml
    +curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r4_Cart_1mm_capmax2500Pa.toml
    +curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r5_Cart_1mm_capmax2500Pa_strictol.toml
    +pyopmspe11 -i r2_Cart_1cm_capmax2500Pa.toml -o r2_Cart_1cm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666
    +pyopmspe11 -i r3_cp_1cmish_capmax2500Pa.toml -o r3_cp_1cmish_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666
    +pyopmspe11 -i r4_Cart_1mm_capmax2500Pa.toml -o r4_Cart_1mm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666
    +pyopmspe11 -i r5_Cart_1mm_capmax2500Pa_strictol.toml -o r5_Cart_1mm_capmax2500Pa_strictol -t 1 -r 280,1,120 -w 0.16666666666666666
     plopm -v xco2l -r 53 -mask satnum -maskthr 7e-5 -i 'r2_Cart_1cm_capmax2500Pa/flow/R2_CART_1CM_CAPMAX2500PA r3_cp_1cmish_capmax2500Pa/flow/R3_CP_1CMISH_CAPMAX2500PA r4_Cart_1mm_capmax2500Pa/flow/R4_CART_1MM_CAPMAX2500PA r5_Cart_1mm_capmax2500Pa_strictol/flow/R5_CART_1MM_CAPMAX2500PA_STRICTOL' -cnum 3 -xlnum 8 -clabel 'OPM results for SPE11A: CO$_2$ mass fraction (liquid phase) after 2 days' -d 16,6.5 -t "(a) Cartesian grid 1cm  (b) Corner-point grid 1cmish  (c) Cartesian grid 1mm  (d) Cartesian grid 1mm stricter tolerances" -yunits cm -xunits cm -yformat .0f -xformat .0f -f 16 -save figure4 -cformat .2e -suptitle 0 -subfigs 2,2 -cbsfax 0.35,0.97,0.3,0.02 -delax 1 -c '#9ca245 #9da347 #9fa44a #a0a64d #a2a750 #a3a953 #a5aa56 #a6ac59 #a8ad5c #a9af5f #abb062 #adb164 #aeb367 #b0b46a #b1b66d #b3b770 #b4b973 #b6ba76 #b7bc79 #b9bd7c #babf7f #bcc082 #bec184 #bfc387 #c1c48a #c2c68d #c4c790 #c5c993 #c7ca96 #c8cc99 #cacd9c #cbcf9f #cdd0a2 #cfd1a4 #d0d3a7 #d2d4aa #d3d6ad #d5d7b0 #d6d9b3 #d8dab6 #d9dcb9 #dbddbc #dcdfbf #dee0c1 #e0e1c4 #e1e3c7 #e3e4ca #e4e6cd #e6e7d0 #e7e9d3 #e9ead6 #eaecd9 #eceddc #edefdf #eff0e1 #f1f1e4 #f2f3e7 #f4f4ea #f5f6ed #f7f7f0 #f8f9f3 #fafaf6 #fbfcf9 #fdfdfc #ffffff #fefbfb #fdf7f7 #fcf3f3 #fbefef #faebeb #f9e7e7 #f8e3e3 #f7e0e0 #f6dcdc #f5d8d8 #f4d4d4 #f3d0d0 #f2cccc #f1c8c8 #f0c5c5 #efc1c1 #eebdbd #edb9b9 #ecb5b5 #ebb1b1 #eaadad #e9aaaa #e8a6a6 #e7a2a2 #e69e9e #e59a9a #e49696 #e39292 #e28f8f #e18b8b #e08787 #df8383 #de7f7f #dd7b7b #dc7777 #db7474 #da7070 #d96c6c #d86868 #d76464 #d66060 #d55c5c #d45959 #d35555 #d25151 #d14d4d #d04949 #cf4545 #ce4141 #cd3e3e #cc3a3a #cb3636 #ca3232 #c92e2e #c82a2a #c72626 #c62323 #c51f1f #c41b1b #c31717 #c21313 #c10f0f #c00b0b'
     

    A similar figure without the need of running the simulations (not showing the sands in the background and using the reporting grid) can be obtained by downloading the SPE11A benchmark data in csv format available at -this website (the submitted benchmark data does not include the r5_Cart_1mm_capmax2500Pa_strictol.txt results):

    +this website (the submitted benchmark data does not include the r5_Cart_1mm_capmax2500Pa_strictol.toml results):

    mkdir figure4 && cd figure4
     curl -L -O https://darus.uni-stuttgart.de/api/access/datafile/375719
     unzip 375719
    @@ -210,7 +210,7 @@ 

    Publication -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/py-modindex.html b/docs/py-modindex.html index 94ec736..fd78c5c 100644 --- a/docs/py-modindex.html +++ b/docs/py-modindex.html @@ -192,7 +192,7 @@

    Python Module Index


    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/related.html b/docs/related.html index 5189c27..6ef330e 100644 --- a/docs/related.html +++ b/docs/related.html @@ -147,7 +147,7 @@

    pymm<
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/search.html b/docs/search.html index c37007a..1d044a7 100644 --- a/docs/search.html +++ b/docs/search.html @@ -100,7 +100,7 @@
    -

    © Copyright 2025, NORCE Research AS.

    +

    © Copyright 2025-2026, NORCE Research AS.

    Built with Sphinx using a diff --git a/docs/searchindex.js b/docs/searchindex.js index 3cd93e0..cba2439 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles":{"About pofff":[[0,null]],"Adding your results":[[4,"adding-your-results"]],"Concept":[[7,"concept"]],"Configuration file":[[2,null]],"Contribute to the software":[[3,"contribute-to-the-software"]],"Contributing":[[3,null]],"ERT":[[9,"ert"]],"Everest":[[9,"everest"]],"Examples":[[4,null]],"Ground Rules":[[3,"ground-rules"]],"Hello world":[[4,"hello-world"]],"History matching":[[4,"history-matching"]],"Indices and tables":[[5,"indices-and-tables"]],"Installation":[[6,null]],"Introduction":[[7,null]],"Module contents":[[10,"module-pofff"],[11,"module-pofff.core"],[13,"module-pofff.jobs"],[17,"module-pofff.utils"],[22,"module-pofff.visualization"]],"OPM Flow":[[6,"opm-flow"]],"Output folder":[[9,null]],"Overview":[[7,"overview"]],"Publication":[[28,null]],"Python package":[[6,"python-package"]],"Related":[[29,null]],"Report issues or problems":[[3,"report-issues-or-problems"]],"Seek support":[[3,"seek-support"]],"Single run":[[9,"single-run"]],"Source build in Linux/Windows":[[6,"source-build-in-linux-windows"]],"Source build in macOS":[[6,"source-build-in-macos"]],"Submodules":[[11,"submodules"],[13,"submodules"],[17,"submodules"],[22,"submodules"]],"Subpackages":[[10,"subpackages"]],"Welcome to pofff\u2019s documentation!":[[5,null]],"ad-micp":[[29,"ad-micp"]],"expreccs":[[29,"expreccs"]],"plopm":[[29,"plopm"]],"pofff":[[1,"pofff"],[8,null]],"pofff Python API":[[1,null]],"pofff package":[[10,null]],"pofff.core package":[[11,null]],"pofff.core.pofff module":[[12,null]],"pofff.jobs package":[[13,null]],"pofff.jobs.data module":[[14,null]],"pofff.jobs.delete module":[[15,null]],"pofff.jobs.metric module":[[16,null]],"pofff.utils package":[[17,null]],"pofff.utils.inputvalues module":[[18,null]],"pofff.utils.mapproperties module":[[19,null]],"pofff.utils.runs module":[[20,null]],"pofff.utils.writefile module":[[21,null]],"pofff.visualization package":[[22,null]],"pofff.visualization.benchmark module":[[23,null]],"pofff.visualization.error_table module":[[24,null]],"pofff.visualization.everert module":[[25,null]],"pofff.visualization.maps module":[[26,null]],"pofff.visualization.sparse_values module":[[27,null]],"pycopm":[[29,"pycopm"]],"pymm":[[29,"pymm"]],"pyopmnearwell":[[29,"pyopmnearwell"]],"pyopmspe11":[[29,"pyopmspe11"]]},"docnames":["about","api","configuration_file","contributing","examples","index","installation","introduction","modules","output_folder","pofff","pofff.core","pofff.core.pofff","pofff.jobs","pofff.jobs.data","pofff.jobs.delete","pofff.jobs.metric","pofff.utils","pofff.utils.inputvalues","pofff.utils.mapproperties","pofff.utils.runs","pofff.utils.writefile","pofff.visualization","pofff.visualization.benchmark","pofff.visualization.error_table","pofff.visualization.everert","pofff.visualization.maps","pofff.visualization.sparse_values","publication","related"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["about.rst","api.rst","configuration_file.rst","contributing.rst","examples.rst","index.rst","installation.rst","introduction.rst","modules.rst","output_folder.rst","pofff.rst","pofff.core.rst","pofff.core.pofff.rst","pofff.jobs.rst","pofff.jobs.data.rst","pofff.jobs.delete.rst","pofff.jobs.metric.rst","pofff.utils.rst","pofff.utils.inputvalues.rst","pofff.utils.mapproperties.rst","pofff.utils.runs.rst","pofff.utils.writefile.rst","pofff.visualization.rst","pofff.visualization.benchmark.rst","pofff.visualization.error_table.rst","pofff.visualization.everert.rst","pofff.visualization.maps.rst","pofff.visualization.sparse_values.rst","publication.rst","related.rst"],"indexentries":{},"objects":{"":[[10,0,0,"-","pofff"]],"pofff":[[11,0,0,"-","core"],[13,0,0,"-","jobs"],[17,0,0,"-","utils"],[22,0,0,"-","visualization"]],"pofff.core":[[12,0,0,"-","pofff"]],"pofff.core.pofff":[[12,1,1,"","load_parser"],[12,1,1,"","main"],[12,1,1,"","pofff"]],"pofff.jobs":[[14,0,0,"-","data"],[15,0,0,"-","delete"],[16,0,0,"-","metric"]],"pofff.jobs.data":[[14,1,1,"","compute_m_c"],[14,1,1,"","create_from_summary"],[14,1,1,"","dense_data"],[14,1,1,"","generate_arrays"],[14,1,1,"","main"],[14,1,1,"","map_to_report_grid"],[14,1,1,"","read_opm"],[14,1,1,"","sparse_data"],[14,1,1,"","write_dense_data"],[14,1,1,"","write_sparse_data"]],"pofff.jobs.metric":[[16,1,1,"","before_emd"],[16,1,1,"","calculate_emd"],[16,1,1,"","generate_segment_map"],[16,1,1,"","main"]],"pofff.utils":[[18,0,0,"-","inputvalues"],[19,0,0,"-","mapproperties"],[20,0,0,"-","runs"],[21,0,0,"-","writefile"]],"pofff.utils.inputvalues":[[18,1,1,"","handle_thickness_map"],[18,1,1,"","process_input"]],"pofff.utils.mapproperties":[[19,1,1,"","boxes"],[19,1,1,"","check_facie1"],[19,1,1,"","corner"],[19,1,1,"","corner_point_handling_fluidflower"],[19,1,1,"","get_cellmaps"],[19,1,1,"","get_lines"],[19,1,1,"","getpolygons"],[19,1,1,"","grid"],[19,1,1,"","positions"],[19,1,1,"","refinement_z"],[19,1,1,"","sensors"],[19,1,1,"","structured_handling_fluidflower"],[19,1,1,"","wells"]],"pofff.utils.runs":[[20,1,1,"","benchmark"],[20,1,1,"","data"],[20,1,1,"","ert"],[20,1,1,"","everest"],[20,1,1,"","flow"],[20,1,1,"","postprocess"]],"pofff.utils.writefile":[[21,1,1,"","compact_format"],[21,1,1,"","create_corner_point_grid"],[21,1,1,"","opm_files"],[21,1,1,"","write_keywords"]],"pofff.visualization":[[23,0,0,"-","benchmark"],[24,0,0,"-","error_table"],[25,0,0,"-","everert"],[26,0,0,"-","maps"],[27,0,0,"-","sparse_values"]],"pofff.visualization.benchmark":[[23,1,1,"","benchmark"],[23,1,1,"","load_parser"],[23,1,1,"","postprocessing"]],"pofff.visualization.error_table":[[24,1,1,"","error_table"]],"pofff.visualization.everert":[[25,1,1,"","figures"],[25,1,1,"","find_best"],[25,1,1,"","find_optimal"],[25,1,1,"","initialize_ert"],[25,1,1,"","load_parser"],[25,1,1,"","make_figures"],[25,1,1,"","para_dist"],[25,1,1,"","plot_cumulative_misfit"],[25,1,1,"","plot_optimization_details"],[25,1,1,"","plot_optimization_results"],[25,1,1,"","plot_parameters"],[25,1,1,"","process_optimization_results"],[25,1,1,"","read_hm"]],"pofff.visualization.maps":[[26,1,1,"","load_points"],[26,1,1,"","maps"],[26,1,1,"","pngs"],[26,1,1,"","segment"]],"pofff.visualization.sparse_values":[[27,1,1,"","postprocessing"]]},"objnames":{"0":["py","module","Python module"],"1":["py","function","Python function"]},"objtypes":{"0":"py:module","1":"py:function"},"terms":{"":[2,3,7],"0":[2,4,6,7,28],"005":2,"01_conmin":[4,28],"02":28,"04":[3,6],"05":28,"0f":28,"1":[2,4,6,7,19,28],"10":[2,6],"100":2,"100e3":2,"101":28,"104900":2,"11":28,"12":[2,3,6],"120":[4,28],"124":28,"127":28,"13":[3,6],"14":[2,6],"140":2,"147":28,"148":28,"15":28,"150":2,"1500":2,"1500e3":2,"16":28,"16666666666666666":28,"17":6,"18":2,"181":28,"191":28,"193":28,"1cm":28,"1cmish":28,"1e":[2,7,28],"1mm":28,"2":[2,4,7,28],"20":[2,28],"200":2,"200000":4,"2025":6,"24":[3,4,6,28],"25":7,"26":[3,6],"280":28,"2e":[2,28],"2f":28,"3":[2,3,6,28],"3000e3":2,"300e3":2,"32":[2,28],"331841":0,"35":28,"37":2,"375707":28,"375716":28,"375719":28,"38":2,"39":[2,4],"3e":2,"4":[2,28],"40":2,"42":2,"48":[4,28],"5":[2,28],"50":4,"50e3":2,"53":28,"56":28,"57":28,"5d":28,"5e":[2,7,28],"5f":28,"6":[2,28],"636b45":28,"64":28,"65":[2,28],"66":28,"7":[2,28],"72":[4,28],"73":28,"75":28,"7e":28,"8":[2,4,28],"800":2,"800e3":2,"81":28,"9":[2,6],"900":2,"96":[4,28],"97":28,"9ca245":28,"9da347":28,"9fa44a":28,"A":[27,28,29],"For":[0,2,3,4,6,28],"If":[2,4,6,28],"In":[3,6],"One":4,"The":[0,1,2,3,4,6,7,9,28],"Then":28,"To":[4,6,28],"_2":28,"_build":3,"a0a64d":28,"a2a750":28,"a3a953":28,"a5aa56":28,"a6ac59":28,"a8ad5c":28,"a9af5f":28,"abb062":28,"about":[3,5],"abov":7,"accept":3,"access":28,"accuraci":28,"achiev":6,"action":[3,6],"activ":6,"ad":[2,5,9,28],"adapt":28,"adb164":28,"add":[2,3,4,28],"addit":[3,4,6,28],"adjust":28,"aeb367":28,"after":[4,6,9,28],"al":28,"all":[1,3,4,6,7,28],"also":[3,4,6,28],"altern":3,"alwai":4,"an":[0,2,3,4,6,29],"anaconda":6,"analys":3,"ani":3,"answer":3,"api":[5,28],"appendix":28,"appendixb":28,"appendixc":28,"appl":6,"approach":[0,3],"apt":6,"ar":[0,1,3,4,6,7,28,29],"arg":[14,18,19,20,21,25,26],"argument":[7,12,23,25],"arrai":[2,14,26],"assign":19,"attempt":28,"avail":[6,28],"avoid":2,"b":[27,28],"b0b46a":28,"b1":28,"b1b66d":28,"b2":28,"b2d":28,"b2f":28,"b3":28,"b3b770":28,"b4b973":28,"b6ba76":28,"b7bc79":28,"b9bd7c":28,"babf7f":28,"background":28,"base":[7,26,28,29],"basic":7,"batch":25,"bcc082":28,"bec184":28,"befor":3,"before_emd":[10,13,16],"below":29,"benchmark":[1,7,10,14,17,19,20,22,28,29],"best_simul":9,"better":4,"between":[19,24,26],"bfc387":28,"bin":[2,3,6],"binari":[3,6],"black":[3,28],"boost":6,"bottom":2,"box":[10,14,17,19,27],"branch":6,"brew":6,"build":[2,3,5],"build_opm_mpi":6,"built":6,"c":[2,7,14,27,28],"c00b0b":28,"c1":7,"c10f0f":28,"c1c48a":28,"c2":7,"c21313":28,"c2c68d":28,"c3":28,"c31717":28,"c4":28,"c41b1b":28,"c4c790":28,"c5":[7,28],"c51f1f":28,"c5c993":28,"c62323":28,"c72626":28,"c7ca96":28,"c82a2a":28,"c8cc99":28,"c92e2e":28,"ca3232":28,"cacd9c":28,"calcit":29,"calculate_emd":[10,13,16],"call":[1,4],"can":[3,4,6,28],"cap":2,"capabl":4,"capillari":2,"cartesian":[2,19,28],"case":[4,28],"cb3636":28,"cbcf9f":28,"cbsfax":28,"cc3a3a":28,"cd":[6,28],"cd3e3e":28,"cdd0a2":28,"ce4141":28,"cell":[2,14,19],"center":[0,19],"cet_diverging_gwr_55_95_c38":28,"cf4545":28,"cfd":29,"cfd1a4":28,"cformat":28,"chang":[3,4,28],"check":29,"check_facie1":[10,17,19],"checker":3,"checkout":6,"choic":28,"ci":[3,6],"ci_pycopm_maco":3,"clabel":28,"clang":6,"clone":6,"closest":[9,25],"cm":28,"cmake":6,"cnum":28,"cnv":28,"cnv_relax":28,"co":28,"co2":[7,26,28,29],"code":[3,6,10],"collabor":3,"color":4,"com":[1,6,7,28],"comaparison":23,"combin":[7,28],"comma":7,"command":[4,6,28],"commit":3,"common":[4,6],"compact":21,"compact_format":[10,17,21],"compar":[4,24,28],"compare_all_time_seri":4,"comput":[7,16,27,28],"compute_m_c":[10,13,14],"comun":1,"concentr":[7,14,28],"concept":5,"configur":[4,5,7,18,28],"conmin":[16,26],"connect":26,"consid":7,"contain":[1,3,4,9],"content":[1,3,5,8,28],"continu":26,"contour":26,"contribut":[0,5,6],"control":28,"coordin":[2,19],"copi":[3,6],"core":[1,4,6,8,10,28],"corner":[1,2,10,17,19,21,28],"corner_point_handling_fluidflow":[10,17,19],"correctli":4,"correspond":[4,28],"could":[4,6,28],"cov":3,"cpr_trueimp":28,"cpu":28,"creat":[3,6,19,26],"create_corner_point_grid":[10,17,21],"create_from_summari":[10,13,14],"csiro":4,"csp":29,"cssr":[0,4,6,7,28],"csv":[4,7,14,26,28],"ctick":28,"cumul":25,"curl":28,"current":[6,7],"current_directori":6,"custom":28,"d":28,"d04949":28,"d0d3a7":28,"d14d4d":28,"d25151":28,"d2d4aa":28,"d35555":28,"d3d6ad":28,"d45959":28,"d55c5c":28,"d5d7b0":28,"d66060":28,"d6d9b3":28,"d76464":28,"d86868":28,"d8dab6":28,"d96c6c":28,"d9dcb9":28,"da7070":28,"dai":28,"daru":28,"data":[1,4,7,10,13,17,19,20,23,25,26,28],"datafil":28,"datum":2,"db7474":28,"dbddbc":28,"dc7777":28,"dcdfbf":28,"dcmake_build_typ":6,"dcmake_disable_find_package_mpi":6,"dcmake_prefix_path":6,"dd7b7b":28,"de":28,"de7f7f":28,"deactiv":6,"decai":28,"deck":1,"decreas":[4,28],"dedic":6,"dee0c1":28,"default":7,"defin":2,"delax":28,"delet":[10,13],"dens":14,"dense_data":[10,13,14],"depend":[3,6],"describ":[3,7],"descript":[2,4],"detail":[4,28],"dev":[3,6],"develop":6,"df8383":28,"dic":[18,19,20,21,23,25],"dict":[14,18,19,20,21,25],"dictionari":[14,18,19,20,21,25],"differ":[1,4,19,28],"differential_evolut":25,"diffus":2,"dig":[14,25],"dil":14,"dir":[2,19],"directli":4,"directori":[3,28],"discret":26,"disperc1":2,"disperc2":2,"disperc3":2,"disperc4":2,"disperc5":2,"disperc6":2,"dissolevd":26,"dissolv":[7,26],"distanc":[7,16,28],"distribut":25,"divid":2,"dmar":2,"do":6,"doc":3,"document":[3,4,6,7],"doe":28,"done":6,"download":[1,28],"due":[],"dune":6,"dunecontrol":6,"duse_mpi":6,"dvipng":[],"dwith_ndebug":6,"dynam":29,"e":[2,3,4,6,7,28],"e08787":28,"e0e1c4":28,"e18b8b":28,"e1e3c7":28,"e28f8f":28,"e39292":28,"e3e4ca":28,"e49696":28,"e4e6cd":28,"e59a9a":28,"e69e9":28,"e6e7d0":28,"e7a2a2":28,"e7e9d3":28,"e8a6a6":28,"e9aaaa":28,"e9ead6":28,"eaadad":28,"each":2,"eaecd9":28,"ebb1b1":28,"ecb5b5":28,"eceddc":28,"echo":6,"edb9b9":28,"edefdf":28,"edg":6,"edit":28,"eebdbd":28,"efc1c1":28,"eff0e1":28,"els":6,"em":29,"email":[3,6],"enabl":[2,28],"encod":28,"end":[4,28],"entri":2,"environ":[3,6],"error":[4,24],"error_t":[10,22],"error_table_satmin":[4,28],"ert":[1,4,5,6,7,10,17,20,25],"esf":28,"etc":4,"evalu":[2,4,7,16],"everert":[10,22],"everest":[1,4,5,7,10,17,20,25,28],"everest_iter_3":4,"exampl":[2,5,6,9,28],"except":2,"execut":[1,2,3,4,6,7,9,12,28],"experi":[24,26],"experiment":[4,7,26],"experimental_data":16,"export":[3,6],"exprecc":5,"extend":3,"extra":[],"extract":25,"f":[4,7,28],"f0c5c5":28,"f1c8c8":28,"f1f1e4":28,"f2cccc":28,"f2f3e7":28,"f3d0d0":28,"f4d4d4":28,"f4f4ea":28,"f5d8d8":28,"f5f6ed":28,"f6dcdc":28,"f7e0e0":28,"f7f7f0":28,"f8e3e3":28,"f8f9f3":28,"f9e7e7":28,"face":6,"faci":[2,19],"facie1":2,"facie2":2,"facie3":2,"facie4":2,"facie5":2,"facie6":2,"factor":28,"faebeb":28,"fafaf6":28,"fail":25,"fair":[7,28],"familiar":3,"fbefef":28,"fbfcf9":28,"fcf3f3":28,"fdf7f7":28,"fdfdfc":28,"featur":0,"fefbfb":28,"few":4,"ff0000":28,"ff0100":28,"ff0200":28,"ff0300":28,"ff0400":28,"ff0500":28,"ff0600":28,"ff0700":28,"ff0800":28,"ff0900":28,"ff0a00":28,"ff0b00":28,"ff0c00":28,"ff0d00":28,"ff0e00":28,"ff0f00":28,"ff1000":28,"ff1100":28,"ff1200":28,"ff1300":28,"ff1400":28,"ff1500":28,"ff1600":28,"ff1700":28,"ff1800":28,"ff1900":28,"ff1a00":28,"ff1b00":28,"ff1c00":28,"ff1d00":28,"ff1e00":28,"ff1f00":28,"ff2000":28,"ff2100":28,"ff2200":28,"ff2300":28,"ff2400":28,"ff2500":28,"ff2600":28,"ff2700":28,"ff2800":28,"ff2900":28,"ff2a00":28,"ff2b00":28,"ff2c00":28,"ff2d00":28,"ff2e00":28,"ff2f00":28,"ff3000":28,"ff3100":28,"ff3200":28,"ff3300":28,"ff3400":28,"ff3500":28,"ff3600":28,"ff3700":28,"ff3800":28,"ff3900":28,"ff3a00":28,"ff3b00":28,"ff3c00":28,"ff3d00":28,"ff3e00":28,"ff3f00":28,"ff4000":28,"ff4100":28,"ff4200":28,"ff4300":28,"ff4400":28,"ff4500":28,"ff4600":28,"ff4700":28,"ff4800":28,"ff4900":28,"ff4a00":28,"ff4b00":28,"ff4c00":28,"ff4d00":28,"ff4e00":28,"ff4f00":28,"ff5000":28,"ff5100":28,"ff5200":28,"ff5300":28,"ff5400":28,"ff5500":28,"ff5600":28,"ff5700":28,"ff5800":28,"ff5900":28,"ff5a00":28,"ff5b00":28,"ff5c00":28,"ff5d00":28,"ff5e00":28,"ff5f00":28,"ff6000":28,"ff6100":28,"ff6200":28,"ff6300":28,"ff6400":28,"ff6500":28,"ff6600":28,"ff6700":28,"ff6800":28,"ff6900":28,"ff6a00":28,"ff6b00":28,"ff6c00":28,"ff6d00":28,"ff6e00":28,"ff6f00":28,"ff7000":28,"ff7100":28,"ff7200":28,"ff7300":28,"ff7400":28,"ff7500":28,"ff7600":28,"ff7700":28,"ff7800":28,"ff7900":28,"ff7a00":28,"ff7b00":28,"ff7c00":28,"ff7d00":28,"ff7e00":28,"ff7f00":28,"ff8000":28,"ff8100":28,"ff8200":28,"ff8300":28,"ff8400":28,"ff8500":28,"ff8600":28,"ff8700":28,"ff8800":28,"ff8900":28,"ff8a00":28,"ff8b00":28,"ff8c00":28,"ff8d00":28,"ff8e00":28,"ff8f00":28,"ff9000":28,"ff9100":28,"ff9200":28,"ff9300":28,"ff9400":28,"ff9500":28,"ff9600":28,"ff9700":28,"ff9800":28,"ff9900":28,"ff9a00":28,"ff9b00":28,"ff9c00":28,"ff9d00":28,"ff9e00":28,"ff9f00":28,"ffa000":28,"ffa100":28,"ffa200":28,"ffa300":28,"ffa400":28,"ffa500":28,"ffa600":28,"ffa700":28,"ffa800":28,"ffa900":28,"ffaa00":28,"ffab00":28,"ffac00":28,"ffad00":28,"ffae00":28,"ffaf00":28,"ffb000":28,"ffb100":28,"ffb200":28,"ffb300":28,"ffb400":28,"ffb500":28,"ffb600":28,"ffb700":28,"ffb800":28,"ffb900":28,"ffba00":28,"ffbb00":28,"ffbc00":28,"ffbd00":28,"ffbe00":28,"ffbf00":28,"ffc000":28,"ffc100":28,"ffc200":28,"ffc300":28,"ffc400":28,"ffc500":28,"ffc600":28,"ffc700":28,"ffc800":28,"ffc900":28,"ffca00":28,"ffcb00":28,"ffcc00":28,"ffcd00":28,"ffce00":28,"ffcf00":28,"ffd000":28,"ffd100":28,"ffd200":28,"ffd300":28,"ffd400":28,"ffd500":28,"ffd600":28,"ffd700":28,"ffd800":28,"ffd900":28,"ffda00":28,"ffdb00":28,"ffdc00":28,"ffdd00":28,"ffde00":28,"ffdf00":28,"ffe000":28,"ffe100":28,"ffe200":28,"ffe300":28,"ffe400":28,"ffe500":28,"ffe600":28,"ffe700":28,"ffe800":28,"ffe900":28,"ffea00":28,"ffeb00":28,"ffec00":28,"ffed00":28,"ffee00":28,"ffef00":28,"fff000":28,"fff100":28,"fff200":28,"fff300":28,"fff400":28,"fff500":28,"fff600":28,"fff700":28,"fff800":28,"fff900":28,"fffa00":28,"fffb00":28,"fffc00":28,"fffd00":28,"ffffff":28,"fi":6,"field":14,"fig":25,"figur":[4,7,9,10,20,22,23,25,28],"figure3":28,"figure3a":28,"figure3b":28,"figure4":28,"figure4ish":28,"figure5":28,"figure5d":28,"figure5f":28,"figureb2":28,"figureb2d":28,"figureb2f":28,"figures5":28,"figures5d":28,"figuresb2":28,"figuresb2d":28,"file":[1,3,4,5,6,7,9,14,15,18,19,21,26,28],"file_1":16,"file_2":16,"file_nam":16,"filenam":28,"filledtempl":28,"final":[1,2,28],"find":[19,25],"find_best":[10,22,25],"find_optim":[10,22,25],"findist":25,"fipnum":19,"first":2,"fix":[2,3],"flag":[2,4,28],"flexibl":28,"float":[19,26],"flow":[2,3,5,7,10,17,20,21,28,29],"flow_maco":3,"fludflow":19,"fluidflow":[1,7,19],"fluxnum":19,"folder":[1,3,4,5,6,7,25,28],"follow":[2,4,6,7,9,28],"font":4,"forecast":4,"fork":[0,3],"forlder":1,"format":[3,14,23,28],"fraction":28,"framework":[1,4,7,29],"friend":28,"friendli":7,"from":[1,3,6,19,26,28,29],"full":2,"function":[2,4,12,18,19,20,21,23,25],"fund":0,"g":[2,3,4,6,28],"ga":[2,26],"gaseou":7,"gener":[1,2,3,4,7,9,14,20,23,27,28,29],"generate_arrai":[10,13,14],"generate_segment_map":[10,13,16],"generatebth":[],"geo":19,"geolog":[19,29],"geologi":1,"geometri":[1,6],"get":[3,6,26],"get_cellmap":[10,17,19],"get_lin":[10,17,19],"getpolygon":[10,17,19],"gif":29,"git":[6,28],"github":[1,2,3,6,7,28],"githubusercont":28,"gitlab":6,"give":28,"given":4,"global":[14,18,19,20,21,25],"grid":[1,2,4,6,10,14,17,19,21,26,28],"ground":5,"growth":28,"h":28,"ha":1,"handl":19,"handle_thickness_map":[10,17,18],"have":[4,6,28],"head":28,"hello":5,"help":3,"here":2,"histori":[2,5,7],"hm":25,"horizont":19,"host":[1,7],"hour":[7,26],"how":4,"html":3,"http":[1,6,7,28],"i":[0,1,2,3,4,6,7,9,19,25,28],"ignor":3,"imag":[7,29],"implement":7,"import":[3,28],"in_fil":18,"includ":[6,28],"increas":28,"index":[5,14,19],"indic":19,"induc":29,"indx":16,"inidist":25,"initi":[2,4],"initialize_ert":[10,22,25],"inj":2,"inject":2,"input":[1,2,7,18,28],"inputvalu":[10,17],"insid":[4,6],"instal":[3,5,28],"instruct":[],"int":[14,19],"integ":19,"interest":[6,28,29],"interfac":26,"interpol":14,"introduct":5,"issu":[0,4,5,6],"istl":6,"iter":[2,4,25,28],"j":[19,25],"j5":6,"job":[1,8,10],"k":[19,25],"keyword":[4,21],"kg":2,"krn":2,"krw":2,"l":[6,28],"label":4,"larg":15,"last":4,"latest":6,"latex":6,"leakag":29,"less":4,"librari":6,"like":4,"limit":28,"line":[2,3,4,6,19,26,28],"linear":28,"link":6,"lint":6,"linux":5,"liquid":[2,28],"list":[14,19,21,26],"load_pars":[10,11,12,22,23,25],"load_point":[10,22,26],"local":[3,4,14],"locat":[1,19,25,26],"look":3,"low":4,"m":[2,4,6,7,9,28],"mac":28,"machin":[2,4,28],"maco":[3,5],"macport":6,"mactex":6,"main":[1,3,10,11,12,13,14,16,23,25,28],"maintain":[3,6],"make":[3,6,25],"make_figur":[10,22,25],"mako":[1,21,28],"mamba":6,"manag":6,"mantain":3,"manual":28,"map":[2,4,10,14,18,19,22,28],"map_24h":4,"map_to_report_grid":[10,13,14],"mapproperti":[10,17],"mask":28,"maskthr":28,"mass":28,"master":6,"match":[2,5,7],"matrix":7,"max":[2,28],"max_function_evalu":4,"maximum":4,"measur":2,"merg":3,"mesh":26,"method":25,"metric":[7,10,13],"micp":5,"microbi":29,"microsystem":29,"might":[3,4,6,28,29],"min":[2,28],"miniforg":6,"minimum":7,"misfit":25,"miss":[3,4],"mit_m1":4,"mkdir":[6,28],"ml":[],"model":[2,19,26,29],"model_result":16,"modifi":[1,4,6,14,18,19,21],"modul":[1,5,6,8,29],"more":[0,3],"most":4,"mpi":[6,28],"mpirun":[2,28],"mult_thick":2,"multipli":2,"multx":28,"my_simul":4,"mypi":3,"mytempl":28,"n":[14,21],"name":[4,7,14,18,26],"name_of_input_fil":7,"ncx":19,"ncz":19,"need":[3,4,6,28],"new":[0,3,4,19,28],"newton":[2,28],"newtoniterationcount":28,"next":2,"nice":[3,6],"nkrn":2,"nkrn1":2,"nkrn2":2,"nkrn3":2,"nkrn4":2,"nkrn5":2,"nkrn6":2,"nkrw":2,"nkrw1":2,"nkrw2":2,"nkrw3":2,"nkrw4":2,"nkrw5":2,"nkrw6":2,"non":2,"none":[4,7,14,19,20,21,25,26,28],"normal":14,"notat":21,"note":4,"np":[2,28],"npe1":2,"npe2":2,"npe3":2,"npe4":2,"npe5":2,"npe6":2,"npen":2,"npnt1":2,"npnt2":2,"npnt3":2,"npnt4":2,"npnt5":2,"npnt6":2,"npntn":2,"numa":19,"numb":19,"number":[2,4,14,19,25,28],"o":[4,7,9,28],"observ":[9,25],"obtain":[25,28],"off":28,"one":[2,4],"onli":[6,7],"open":[7,28,29],"openbla":6,"oper":28,"opm":[2,3,5,7,14,20,21,28,29],"opm2":28,"opm3":28,"opm4":28,"opm_fil":[10,17,21],"optim":25,"option":[6,7,12,23,25],"org":6,"other":4,"otherwis":[2,19],"our":[3,28],"out":29,"outpur":4,"output":[2,5,7],"over":25,"overlai":26,"overlap":19,"overview":5,"own":3,"pa":2,"packag":[1,3,5,8],"page":[3,5],"paper":[4,28],"para_dist":[10,22,25],"parallel":4,"paramet":[2,4,20,25],"part":1,"path":[2,3,6,26],"pen":2,"pen1":2,"pen2":2,"pen3":2,"pen4":2,"pen5":2,"pen6":2,"per":[19,25],"perm":2,"permx1":2,"permx2":2,"permx3":2,"permx4":2,"permx5":2,"permx6":2,"permz1":2,"permz2":2,"permz3":2,"permz4":2,"permz5":2,"permz6":2,"phase":28,"pip":[3,6,28],"pleas":[0,3,4],"plopm":[5,28],"plot":[4,7,16,20,25],"plot_cumulative_misfit":[10,22,25],"plot_optimization_detail":[10,22,25],"plot_optimization_result":[10,22,25],"plot_paramet":[10,22,25],"png":[4,9,10,22,26,29],"poff":4,"pofff":[3,4,6,7,9,28],"point":[1,2,19,21,26,28],"polygon":19,"poro1":2,"poro2":2,"poro3":2,"poro4":2,"poro5":2,"poro6":2,"posit":[2,10,17,19],"possibl":3,"postprocess":[1,4,10,14,17,20,22,23,25,27],"pr":3,"precipit":29,"precomput":7,"prefer":3,"prerequisit":6,"pressur":2,"previou":[3,6],"principl":28,"print":6,"problem":[5,6],"process":[18,20,25],"process_input":[10,17,18],"process_optimization_result":[10,22,25],"profil":[4,28],"project":[0,6,29],"properti":2,"public":[2,4,5],"pull":[0,3,4],"push":3,"pushd":3,"pvtnum":28,"pwd":6,"py":[4,28],"pycopm":[3,5],"pylint":3,"pymm":5,"pyopmnearwel":5,"pyopmspe11":[5,28],"pytest":3,"python":[3,5,28,29],"python3":[6,28],"quantifi":24,"quantiti":[14,27],"quick":29,"r":[3,6,28],"r2_cart_1cm_capmax2500pa":28,"r3_cp_1cmish_capmax2500pa":28,"r4_cart_1mm_capmax2500pa":28,"r5_cart_1mm_capmax2500pa_strictol":28,"rais":[0,3,4,6],"ran":4,"random":[4,28],"random_se":28,"rang":4,"rate":[2,28],"raw":28,"read":[14,19],"read_hm":[10,22,25],"read_opm":[10,13,14],"real":2,"recommend":6,"ref":28,"refer":4,"refin":[2,19],"refinement_z":[10,17,19],"regard":28,"region":29,"rel":2,"relat":[3,5,21],"releas":6,"relev":25,"remedi":29,"remov":28,"render":28,"repit":21,"replac":3,"repo":[3,6],"report":[5,14,19,28],"repositori":[3,6],"reproduc":[4,28],"request":[0,3,4],"requir":[3,4,6,20,28],"requiri":18,"reservoir":29,"resolut":4,"resourc":[0,28],"restart":[14,28],"result":[2,5,9,16,25,26,28],"return":[14,18,19,20,21,25,26],"review":3,"rig":2,"rise":3,"routin":25,"rst":[2,28],"rule":5,"run":[3,4,5,6,7,10,17,21,28],"sand":[19,26,28],"satmin":[16,26],"satnum":28,"satur":[2,7,26],"save":[21,28],"schedul":2,"screenshot":9,"script":[1,3,4,6,12,14,15,16,23,24,25,26,27,28],"search":5,"section":28,"see":[2,3,4,6,28],"seed":[4,28],"seek":5,"segment":[7,10,16,22,26],"send":[3,6],"sensit":28,"sensor":[10,17,19],"separ":7,"set":[2,4,6,7,18,28],"setup":28,"setuptool":6,"sh":6,"shorter":4,"should":6,"show":[9,28],"similar":28,"similarli":28,"simul":[2,3,4,6,7,9,14,19,20,24,25,26,28,29],"singl":[3,4,5,7,28],"site":29,"six":3,"size":[2,4,18],"skip":6,"slow":7,"sni":2,"sni1":2,"sni2":2,"sni3":2,"sni4":2,"sni5":2,"sni6":2,"so":6,"softwar":5,"solut":25,"solver":28,"some":[21,29],"soon":3,"sourc":[2,3,5,7,19,29],"source1":2,"source2":2,"spars":[6,14,27],"sparse_data":[4,10,13,14],"sparse_valu":[10,22],"spatial":[4,14,26,28],"spatial_map_nh":[],"spatial_map_xh":4,"spe11":29,"spe11a":28,"spe11a_spatial_map_48h":28,"specif":6,"speed":[7,28],"split":4,"squash":3,"src":3,"static":3,"step":[2,3,4,6,25,28],"still":6,"storag":[21,29],"str":[18,26],"stricter":28,"string":14,"structured_handling_fluidflow":[10,17,19],"studi":[4,7,25,28,29],"stuttgart":28,"style":4,"subfig":28,"submit":28,"submodul":[1,8,10],"subpackag":[1,5,8],"subsect":[9,28],"subsurfac":0,"subsystem":6,"succe":[3,25],"sudo":[],"suit":6,"summari":14,"super":[],"support":[2,5,6,7,28],"suptitl":28,"surfac":19,"sustain":0,"sw":2,"swi":2,"swi1":2,"swi2":2,"swi3":2,"swi4":2,"swi5":2,"swi6":2,"system":[3,4,28],"t":[4,7,26,28],"t_n":14,"tabl":[2,9,24,28],"tag":6,"taho":6,"tailor":29,"temperatur":2,"templat":[21,28],"templeat":1,"tensor":[2,19],"term":3,"termin":[6,28],"test":[2,3,4,6],"texliv":[],"text":18,"than":[0,3],"thi":[0,2,3,4,6,7,28],"thick":[2,18,28],"those":4,"thre1":2,"thre2":2,"thre3":2,"thre4":2,"thre5":2,"thre6":2,"thren":2,"threshold":[2,16,26],"time":[2,4,7,28],"time_seri":4,"toler":28,"toml":[2,4,7,9,28],"tool":[0,3,4,6,7,28,29],"top":2,"total":14,"trade":28,"true":[2,28],"try":[3,6,28],"tug":6,"tune":2,"turn":6,"tutori":[3,6],"txt":[3,6,28],"type":[2,6,19,29],"u":7,"ubuntu":[3,6],"uni":28,"unzip":28,"up":[7,28],"updat":6,"upgrad":6,"us":[0,2,3,4,6,7,14,16,21,28,29],"user":[2,3,6,7],"utf8":28,"util":[1,8,10],"utilii":[18,19,20,21],"v":28,"v2":6,"v2025":6,"valid":7,"valu":[2,7,18,21,25,26,27,28],"var":28,"variabl":[2,3,4,21,25],"variat":14,"venv":6,"version":[6,10],"vertic":26,"via":[4,6],"virtual":6,"visit":3,"visual":[1,8,10],"vpofff":6,"vtk":29,"w":28,"wasserstain":7,"wasserstein":[7,16,28],"we":[2,3,4,6,28],"websit":28,"welcom":[0,3,4],"well":[2,3,10,17,19,25,28,29],"were":28,"wet":2,"wheel":6,"when":6,"where":[7,28],"which":[1,4,6,7,28],"while":[4,6],"window":5,"within":14,"without":28,"word":[],"work":[3,6],"world":5,"would":4,"write":[2,6,14,19,21,25,28],"write_dense_data":[10,13,14],"write_keyword":[10,17,21],"write_sparse_data":[10,13,14],"writefil":[10,17],"wsl":6,"www":6,"x":[2,4,19,21,26],"x_c":19,"xci":19,"xco2l":28,"xcoord":21,"xcr":19,"xformat":28,"xlim":16,"xlnum":28,"xunit":28,"y":[2,18],"yet":6,"yformat":28,"yml":[3,4,6],"you":[3,4,6,28],"your":[2,3,5,6,9,28],"yournam":3,"yunit":28,"z":[2,4,19,26],"z_c":19,"zci":19,"zcoord":21,"zcr":19,"zip":28,"zlim":16,"znr":19},"titles":["About pofff","pofff Python API","Configuration file","Contributing","Examples","Welcome to pofff\u2019s documentation!","Installation","Introduction","pofff","Output folder","pofff package","pofff.core package","pofff.core.pofff module","pofff.jobs package","pofff.jobs.data module","pofff.jobs.delete module","pofff.jobs.metric module","pofff.utils package","pofff.utils.inputvalues module","pofff.utils.mapproperties module","pofff.utils.runs module","pofff.utils.writefile module","pofff.visualization package","pofff.visualization.benchmark module","pofff.visualization.error_table module","pofff.visualization.everert module","pofff.visualization.maps module","pofff.visualization.sparse_values module","Publication","Related"],"titleterms":{"":5,"about":0,"ad":[4,29],"api":1,"benchmark":23,"build":6,"concept":7,"configur":2,"content":[10,11,13,17,22],"contribut":3,"core":[11,12],"data":14,"delet":15,"document":5,"error_t":24,"ert":9,"everert":25,"everest":9,"exampl":4,"exprecc":29,"file":2,"flow":6,"folder":9,"ground":3,"hello":4,"histori":4,"indic":5,"inputvalu":18,"instal":6,"introduct":7,"issu":3,"job":[13,14,15,16],"linux":6,"maco":6,"map":26,"mapproperti":19,"match":4,"metric":16,"micp":29,"modul":[10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],"opm":6,"output":9,"overview":7,"packag":[6,10,11,13,17,22],"plopm":29,"pofff":[0,1,5,8,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],"problem":3,"public":28,"pycopm":29,"pymm":29,"pyopmnearwel":29,"pyopmspe11":29,"python":[1,6],"relat":29,"report":3,"result":4,"rule":3,"run":[9,20],"seek":3,"singl":9,"softwar":3,"sourc":6,"sparse_valu":27,"submodul":[11,13,17,22],"subpackag":10,"support":3,"tabl":5,"util":[17,18,19,20,21],"visual":[22,23,24,25,26,27],"welcom":5,"window":6,"world":4,"writefil":21,"your":4}}) \ No newline at end of file +Search.setIndex({"alltitles":{"About pofff":[[0,null]],"Adding your results":[[4,"adding-your-results"]],"Binary packages":[[6,"binary-packages"]],"Brew formula for macOS":[[6,"brew-formula-for-macos"]],"Concept":[[7,"concept"]],"Configuration file":[[2,null]],"Contribute to the software":[[3,"contribute-to-the-software"]],"Contributing":[[3,null]],"ERT":[[9,"ert"]],"Everest":[[9,"everest"]],"Examples":[[4,null]],"Ground Rules":[[3,"ground-rules"]],"Hello world":[[4,"hello-world"]],"History matching":[[4,"history-matching"]],"Indices and tables":[[5,"indices-and-tables"]],"Installation":[[6,null]],"Introduction":[[7,null]],"Module contents":[[10,"module-pofff"],[11,"module-pofff.core"],[13,"module-pofff.jobs"],[17,"module-pofff.utils"],[22,"module-pofff.visualization"]],"OPM Flow":[[6,"opm-flow"]],"Output folder":[[9,null]],"Overview":[[7,"overview"]],"Publication":[[28,null]],"Python package":[[6,"python-package"]],"Related":[[29,null]],"Report issues or problems":[[3,"report-issues-or-problems"]],"Seek support":[[3,"seek-support"]],"Single run":[[9,"single-run"]],"Source build in Linux/Windows":[[6,"source-build-in-linux-windows"]],"Source build in macOS":[[6,"source-build-in-macos"]],"Submodules":[[11,"submodules"],[13,"submodules"],[17,"submodules"],[22,"submodules"]],"Subpackages":[[10,"subpackages"]],"Visualization":[[4,"visualization"]],"Welcome to pofff\u2019s documentation!":[[5,null]],"ad-micp":[[29,"ad-micp"]],"expreccs":[[29,"expreccs"]],"plopm":[[29,"plopm"]],"pofff":[[1,"pofff"],[8,null]],"pofff Python API":[[1,null]],"pofff package":[[10,null]],"pofff.core package":[[11,null]],"pofff.core.pofff module":[[12,null]],"pofff.jobs package":[[13,null]],"pofff.jobs.data module":[[14,null]],"pofff.jobs.delete module":[[15,null]],"pofff.jobs.metric module":[[16,null]],"pofff.utils package":[[17,null]],"pofff.utils.inputvalues module":[[18,null]],"pofff.utils.mapproperties module":[[19,null]],"pofff.utils.runs module":[[20,null]],"pofff.utils.writefile module":[[21,null]],"pofff.visualization package":[[22,null]],"pofff.visualization.benchmark module":[[23,null]],"pofff.visualization.error_table module":[[24,null]],"pofff.visualization.everert module":[[25,null]],"pofff.visualization.maps module":[[26,null]],"pofff.visualization.sparse_values module":[[27,null]],"pycopm":[[29,"pycopm"]],"pymm":[[29,"pymm"]],"pyopmnearwell":[[29,"pyopmnearwell"]],"pyopmspe11":[[29,"pyopmspe11"]]},"docnames":["about","api","configuration_file","contributing","examples","index","installation","introduction","modules","output_folder","pofff","pofff.core","pofff.core.pofff","pofff.jobs","pofff.jobs.data","pofff.jobs.delete","pofff.jobs.metric","pofff.utils","pofff.utils.inputvalues","pofff.utils.mapproperties","pofff.utils.runs","pofff.utils.writefile","pofff.visualization","pofff.visualization.benchmark","pofff.visualization.error_table","pofff.visualization.everert","pofff.visualization.maps","pofff.visualization.sparse_values","publication","related"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2},"filenames":["about.rst","api.rst","configuration_file.rst","contributing.rst","examples.rst","index.rst","installation.rst","introduction.rst","modules.rst","output_folder.rst","pofff.rst","pofff.core.rst","pofff.core.pofff.rst","pofff.jobs.rst","pofff.jobs.data.rst","pofff.jobs.delete.rst","pofff.jobs.metric.rst","pofff.utils.rst","pofff.utils.inputvalues.rst","pofff.utils.mapproperties.rst","pofff.utils.runs.rst","pofff.utils.writefile.rst","pofff.visualization.rst","pofff.visualization.benchmark.rst","pofff.visualization.error_table.rst","pofff.visualization.everert.rst","pofff.visualization.maps.rst","pofff.visualization.sparse_values.rst","publication.rst","related.rst"],"indexentries":{},"objects":{"":[[10,0,0,"-","pofff"]],"pofff":[[11,0,0,"-","core"],[13,0,0,"-","jobs"],[17,0,0,"-","utils"],[22,0,0,"-","visualization"]],"pofff.core":[[12,0,0,"-","pofff"]],"pofff.core.pofff":[[12,1,1,"","load_parser"],[12,1,1,"","main"],[12,1,1,"","pofff"]],"pofff.jobs":[[14,0,0,"-","data"],[15,0,0,"-","delete"],[16,0,0,"-","metric"]],"pofff.jobs.data":[[14,1,1,"","compute_m_c"],[14,1,1,"","create_from_summary"],[14,1,1,"","dense_data"],[14,1,1,"","generate_arrays"],[14,1,1,"","main"],[14,1,1,"","map_to_report_grid"],[14,1,1,"","read_opm"],[14,1,1,"","sparse_data"],[14,1,1,"","write_dense_data"],[14,1,1,"","write_sparse_data"]],"pofff.jobs.metric":[[16,1,1,"","before_emd"],[16,1,1,"","calculate_emd"],[16,1,1,"","generate_segment_map"],[16,1,1,"","main"]],"pofff.utils":[[18,0,0,"-","inputvalues"],[19,0,0,"-","mapproperties"],[20,0,0,"-","runs"],[21,0,0,"-","writefile"]],"pofff.utils.inputvalues":[[18,1,1,"","handle_thickness_map"],[18,1,1,"","process_input"]],"pofff.utils.mapproperties":[[19,1,1,"","boxes"],[19,1,1,"","check_facie1"],[19,1,1,"","corner"],[19,1,1,"","corner_point_handling_fluidflower"],[19,1,1,"","get_cellmaps"],[19,1,1,"","get_lines"],[19,1,1,"","getpolygons"],[19,1,1,"","grid"],[19,1,1,"","positions"],[19,1,1,"","refinement_z"],[19,1,1,"","sensors"],[19,1,1,"","structured_handling_fluidflower"],[19,1,1,"","wells"]],"pofff.utils.runs":[[20,1,1,"","benchmark"],[20,1,1,"","data"],[20,1,1,"","ert"],[20,1,1,"","everest"],[20,1,1,"","flow"],[20,1,1,"","postprocess"]],"pofff.utils.writefile":[[21,1,1,"","compact_format"],[21,1,1,"","create_corner_point_grid"],[21,1,1,"","opm_files"],[21,1,1,"","write_keywords"]],"pofff.visualization":[[23,0,0,"-","benchmark"],[24,0,0,"-","error_table"],[25,0,0,"-","everert"],[26,0,0,"-","maps"],[27,0,0,"-","sparse_values"]],"pofff.visualization.benchmark":[[23,1,1,"","benchmark"],[23,1,1,"","load_parser"],[23,1,1,"","postprocessing"]],"pofff.visualization.error_table":[[24,1,1,"","error_table"]],"pofff.visualization.everert":[[25,1,1,"","figures"],[25,1,1,"","find_best"],[25,1,1,"","find_optimal"],[25,1,1,"","initialize_ert"],[25,1,1,"","load_parser"],[25,1,1,"","make_figures"],[25,1,1,"","para_dist"],[25,1,1,"","plot_cumulative_misfit"],[25,1,1,"","plot_optimization_details"],[25,1,1,"","plot_optimization_results"],[25,1,1,"","plot_parameters"],[25,1,1,"","process_optimization_results"],[25,1,1,"","read_hm"]],"pofff.visualization.maps":[[26,1,1,"","load_points"],[26,1,1,"","maps"],[26,1,1,"","pngs"],[26,1,1,"","segment"]],"pofff.visualization.sparse_values":[[27,1,1,"","postprocessing"]]},"objnames":{"0":["py","module","Python module"],"1":["py","function","Python function"]},"objtypes":{"0":"py:module","1":"py:function"},"terms":{"":[2,3,6,7],"0":[2,4,6,7,28],"005":2,"01":4,"01_conmin":[4,28],"02":[4,28],"04":[3,6],"05":28,"0f":28,"1":[2,4,6,7,19,28],"10":[2,6],"100":2,"1000":4,"100e3":2,"101":28,"10200":4,"104900":2,"11":28,"12":[2,3,4,6],"120":[4,28],"124":28,"127":28,"13":[3,6],"14":[2,6],"140":2,"147":28,"148":28,"15":28,"150":2,"1500":2,"1500e3":2,"16":28,"16666666666666666":28,"17":[4,6],"18":2,"181":28,"191":28,"193":28,"1cm":28,"1cmish":28,"1e":[2,4,7,28],"1mm":28,"2":[2,4,7,28],"20":[2,28],"200":2,"200000":4,"2025":6,"21600":4,"24":[3,4,6,28],"25":7,"26":[3,6],"280":28,"2e":[2,28],"2f":[4,28],"3":[2,3,6,28],"30":4,"300":4,"3000e3":2,"300e3":2,"32":[2,28],"3300":4,"331841":0,"345600":4,"35":28,"3600":4,"37":2,"375707":28,"375716":28,"375719":28,"38":2,"39":[2,4],"3e":[2,4],"4":[2,4,28],"40":2,"42":2,"437":4,"48":[4,28],"5":[2,4,28],"50":4,"50e3":2,"53":28,"56":28,"57":28,"5d":28,"5e":[2,4,7,28],"5f":28,"6":[2,28],"636b45":28,"64":28,"64800":4,"65":[2,28],"66":28,"7":[2,4,28],"72":[4,28],"73":28,"75":28,"7e":28,"8":[2,4,28],"800":2,"800e3":2,"81":28,"8100":4,"9":2,"900":2,"96":[4,28],"97":28,"9ca245":28,"9da347":28,"9fa44a":28,"A":[27,28,29],"For":[0,2,3,4,6,28],"If":[2,4,6,28],"In":[3,6],"One":4,"The":[0,1,2,3,4,6,7,9,28],"Then":[4,6,28],"There":6,"To":[4,6,28],"_2":28,"_build":3,"a0a64d":28,"a2a750":28,"a3a953":28,"a5aa56":28,"a6ac59":28,"a8ad5c":28,"a9af5f":28,"abb062":28,"abl":6,"about":[3,5],"abov":7,"accept":3,"access":28,"accuraci":28,"achiev":6,"action":[3,6],"activ":6,"ad":[2,5,6,9,28],"adapt":28,"adb164":28,"add":[2,3,4,28],"addit":[3,4,6,28],"adjust":28,"aeb367":28,"after":[4,6,9,28],"al":28,"all":[1,3,4,6,7,28],"also":[3,4,6,28],"altern":3,"alwai":4,"an":[0,2,3,4,6,29],"anaconda":6,"analys":3,"ani":3,"answer":3,"api":[5,28],"appendix":28,"appendixb":[4,28],"appendixc":28,"appl":6,"approach":[0,3],"apt":6,"ar":[0,1,3,4,6,7,28,29],"arg":[14,18,19,20,21,25,26],"argument":[7,12,23,25],"arrai":[2,14,26],"assign":19,"attempt":28,"avail":[6,28],"avoid":2,"b":[27,28],"b0b46a":28,"b1":28,"b1b66d":28,"b2":28,"b2d":28,"b2f":28,"b3":28,"b3b770":28,"b4b973":28,"b6ba76":28,"b7bc79":28,"b9bd7c":28,"babf7f":28,"background":28,"base":[7,26,28,29],"basic":7,"batch":25,"bcc082":28,"bec184":28,"been":6,"befor":3,"before_emd":[10,13,16],"below":29,"benchmark":[1,7,10,14,17,19,20,22,28,29],"best_simul":9,"better":4,"between":[19,24,26],"bfc387":28,"bin":[2,3,6],"binari":[3,5],"black":[3,28],"boost":6,"bottom":2,"box":[10,14,17,19,27],"branch":6,"brew":5,"build":[2,3,5],"build_opm_mpi":6,"built":6,"c":[2,4,7,14,27,28],"c00b0b":28,"c1":7,"c10f0f":28,"c1c48a":28,"c2":7,"c21313":28,"c2c68d":28,"c3":28,"c31717":28,"c4":28,"c41b1b":28,"c4c790":28,"c5":[7,28],"c51f1f":28,"c5c993":28,"c62323":28,"c72626":28,"c7ca96":28,"c82a2a":28,"c8cc99":28,"c92e2e":28,"ca3232":28,"cacd9c":28,"calcit":29,"calculate_emd":[10,13,16],"call":[1,4],"can":[3,4,6,28],"cap":2,"capabl":4,"capillari":2,"cartesian":[2,19,28],"case":[4,28],"cb3636":28,"cbcf9f":28,"cbsfax":[4,28],"cc3a3a":28,"cd":[6,28],"cd3e3e":28,"cdd0a2":28,"ce4141":28,"cell":[2,14,19],"center":[0,19],"cet_diverging_gwr_55_95_c38":28,"cf4545":28,"cfd":29,"cfd1a4":28,"cformat":[4,28],"chang":[3,4,28],"check":[6,29],"check_facie1":[10,17,19],"checker":3,"checkout":6,"choic":28,"ci":[3,6],"ci_pycopm_maco":3,"clabel":28,"clang":6,"clone":6,"closest":[9,25],"cm":[6,28],"cmake":6,"cnum":28,"cnv":28,"cnv_relax":28,"co":28,"co2":[7,26,28,29],"code":[3,6,10],"collabor":3,"color":4,"com":[1,4,6,7,28],"comaparison":23,"combin":[7,28],"comma":7,"command":[4,6,28],"commit":3,"common":[4,6],"compact":21,"compact_format":[10,17,21],"compar":[4,24,28],"compare_all_time_seri":4,"comput":[7,16,27,28],"compute_m_c":[10,13,14],"comun":1,"concentr":[7,14,28],"concept":5,"configur":[4,5,7,18,28],"conmin":[16,26],"connect":26,"consid":7,"contain":[1,3,4,9],"content":[1,3,5,8,28],"continu":26,"contour":26,"contribut":[0,5,6],"control":28,"coordin":[2,19],"copi":[3,6],"core":[1,4,6,8,10,28],"corner":[1,2,10,17,19,21,28],"corner_point_handling_fluidflow":[10,17,19],"correctli":4,"correspond":[4,28],"could":[4,6,28],"cov":3,"cpr_trueimp":28,"cpu":28,"creat":[3,6,19,26],"create_corner_point_grid":[10,17,21],"create_from_summari":[10,13,14],"csiro":4,"csp":29,"cssr":[0,4,6,7,28],"csv":[4,7,14,26,28],"ctick":28,"cumul":25,"curl":28,"current":[6,7],"current_directori":6,"custom":[4,28],"d":[4,28],"d04949":28,"d0d3a7":28,"d14d4d":28,"d25151":28,"d2d4aa":28,"d35555":28,"d3d6ad":28,"d45959":28,"d55c5c":28,"d5d7b0":28,"d66060":28,"d6d9b3":28,"d76464":28,"d86868":28,"d8dab6":28,"d96c6c":28,"d9dcb9":28,"da7070":28,"dai":28,"daru":28,"data":[1,4,7,10,13,17,19,20,23,25,26,28],"datafil":28,"datum":2,"db7474":28,"dbddbc":28,"dc7777":28,"dcdfbf":28,"dcmake_build_typ":6,"dcmake_disable_find_package_mpi":6,"dcmake_prefix_path":6,"dd7b7b":28,"de":28,"de7f7f":28,"decai":28,"deck":1,"decreas":[4,28],"dedic":6,"dee0c1":28,"default":7,"defin":2,"delax":28,"delet":[10,13],"dens":14,"dense_data":[10,13,14],"depend":[3,6],"describ":[3,7],"descript":[2,4],"detail":[4,28],"dev":[3,6],"develop":6,"df8383":28,"dic":[18,19,20,21,23,25],"dict":[14,18,19,20,21,25],"dictionari":[14,18,19,20,21,25],"differ":[1,4,19,28],"differential_evolut":25,"diffus":2,"dig":[14,25],"dil":14,"dir":[2,19],"directli":4,"directori":[3,28],"discret":26,"disperc1":2,"disperc2":2,"disperc3":2,"disperc4":2,"disperc5":2,"disperc6":2,"dissolevd":26,"dissolv":[7,26],"distanc":[7,16,28],"distribut":25,"divid":2,"dmar":2,"do":6,"doc":3,"docmunet":4,"document":[3,4,6,7],"doe":28,"done":6,"download":[1,6,28],"dpi":4,"dune":6,"dunecontrol":6,"duse_mpi":6,"dvipng":6,"dwith_ndebug":6,"dynam":29,"e":[2,3,4,6,7,28],"e08787":28,"e0e1c4":28,"e18b8b":28,"e1e3c7":28,"e28f8f":28,"e39292":28,"e3e4ca":28,"e49696":28,"e4e6cd":28,"e59a9a":28,"e69e9":28,"e6e7d0":28,"e7a2a2":28,"e7e9d3":28,"e8a6a6":28,"e9aaaa":28,"e9ead6":28,"eaadad":28,"each":2,"eaecd9":28,"ebb1b1":28,"ecb5b5":28,"eceddc":28,"echo":6,"edb9b9":28,"edefdf":28,"edg":6,"edit":28,"eebdbd":28,"efc1c1":28,"eff0e1":28,"either":6,"els":6,"em":29,"email":[3,6],"enabl":[2,28],"encod":28,"end":[4,28],"enterpris":6,"entri":2,"environ":[3,6],"error":[4,24],"error_t":[10,22],"error_table_satmin":[4,28],"ert":[1,4,5,6,7,10,17,20,25],"esf":28,"etc":4,"evalu":[2,4,7,16],"everert":[10,22],"everest":[1,4,5,7,10,17,20,25,28],"everest_iter_3":4,"exampl":[2,5,9,28],"except":2,"execut":[1,2,3,4,6,7,9,12,28],"experi":[24,26],"experiment":[4,7,26],"experimental_data":16,"export":[3,6],"exprecc":5,"extend":3,"extra":6,"extract":25,"f":[4,7,28],"f0c5c5":28,"f1c8c8":28,"f1f1e4":28,"f2cccc":28,"f2f3e7":28,"f3d0d0":28,"f4d4d4":28,"f4f4ea":28,"f5d8d8":28,"f5f6ed":28,"f6dcdc":28,"f7e0e0":28,"f7f7f0":28,"f8e3e3":28,"f8f9f3":28,"f9e7e7":28,"face":6,"faci":[2,19],"facie1":2,"facie2":2,"facie3":2,"facie4":2,"facie5":2,"facie6":2,"factor":28,"faebeb":28,"fafaf6":28,"fail":25,"fair":[7,28],"familiar":3,"fbefef":28,"fbfcf9":28,"fcf3f3":28,"fdf7f7":28,"fdfdfc":28,"featur":0,"fefbfb":28,"few":4,"ff0000":28,"ff0100":28,"ff0200":28,"ff0300":28,"ff0400":28,"ff0500":28,"ff0600":28,"ff0700":28,"ff0800":28,"ff0900":28,"ff0a00":28,"ff0b00":28,"ff0c00":28,"ff0d00":28,"ff0e00":28,"ff0f00":28,"ff1000":28,"ff1100":28,"ff1200":28,"ff1300":28,"ff1400":28,"ff1500":28,"ff1600":28,"ff1700":28,"ff1800":28,"ff1900":28,"ff1a00":28,"ff1b00":28,"ff1c00":28,"ff1d00":28,"ff1e00":28,"ff1f00":28,"ff2000":28,"ff2100":28,"ff2200":28,"ff2300":28,"ff2400":28,"ff2500":28,"ff2600":28,"ff2700":28,"ff2800":28,"ff2900":28,"ff2a00":28,"ff2b00":28,"ff2c00":28,"ff2d00":28,"ff2e00":28,"ff2f00":28,"ff3000":28,"ff3100":28,"ff3200":28,"ff3300":28,"ff3400":28,"ff3500":28,"ff3600":28,"ff3700":28,"ff3800":28,"ff3900":28,"ff3a00":28,"ff3b00":28,"ff3c00":28,"ff3d00":28,"ff3e00":28,"ff3f00":28,"ff4000":28,"ff4100":28,"ff4200":28,"ff4300":28,"ff4400":28,"ff4500":28,"ff4600":28,"ff4700":28,"ff4800":28,"ff4900":28,"ff4a00":28,"ff4b00":28,"ff4c00":28,"ff4d00":28,"ff4e00":28,"ff4f00":28,"ff5000":28,"ff5100":28,"ff5200":28,"ff5300":28,"ff5400":28,"ff5500":28,"ff5600":28,"ff5700":28,"ff5800":28,"ff5900":28,"ff5a00":28,"ff5b00":28,"ff5c00":28,"ff5d00":28,"ff5e00":28,"ff5f00":28,"ff6000":28,"ff6100":28,"ff6200":28,"ff6300":28,"ff6400":28,"ff6500":28,"ff6600":28,"ff6700":28,"ff6800":28,"ff6900":28,"ff6a00":28,"ff6b00":28,"ff6c00":28,"ff6d00":28,"ff6e00":28,"ff6f00":28,"ff7000":28,"ff7100":28,"ff7200":28,"ff7300":28,"ff7400":28,"ff7500":28,"ff7600":28,"ff7700":28,"ff7800":28,"ff7900":28,"ff7a00":28,"ff7b00":28,"ff7c00":28,"ff7d00":28,"ff7e00":28,"ff7f00":28,"ff8000":28,"ff8100":28,"ff8200":28,"ff8300":28,"ff8400":28,"ff8500":28,"ff8600":28,"ff8700":28,"ff8800":28,"ff8900":28,"ff8a00":28,"ff8b00":28,"ff8c00":28,"ff8d00":28,"ff8e00":28,"ff8f00":28,"ff9000":28,"ff9100":28,"ff9200":28,"ff9300":28,"ff9400":28,"ff9500":28,"ff9600":28,"ff9700":28,"ff9800":28,"ff9900":28,"ff9a00":28,"ff9b00":28,"ff9c00":28,"ff9d00":28,"ff9e00":28,"ff9f00":28,"ffa000":28,"ffa100":28,"ffa200":28,"ffa300":28,"ffa400":28,"ffa500":28,"ffa600":28,"ffa700":28,"ffa800":28,"ffa900":28,"ffaa00":28,"ffab00":28,"ffac00":28,"ffad00":28,"ffae00":28,"ffaf00":28,"ffb000":28,"ffb100":28,"ffb200":28,"ffb300":28,"ffb400":28,"ffb500":28,"ffb600":28,"ffb700":28,"ffb800":28,"ffb900":28,"ffba00":28,"ffbb00":28,"ffbc00":28,"ffbd00":28,"ffbe00":28,"ffbf00":28,"ffc000":28,"ffc100":28,"ffc200":28,"ffc300":28,"ffc400":28,"ffc500":28,"ffc600":28,"ffc700":28,"ffc800":28,"ffc900":28,"ffca00":28,"ffcb00":28,"ffcc00":28,"ffcd00":28,"ffce00":28,"ffcf00":28,"ffd000":28,"ffd100":28,"ffd200":28,"ffd300":28,"ffd400":28,"ffd500":28,"ffd600":28,"ffd700":28,"ffd800":28,"ffd900":28,"ffda00":28,"ffdb00":28,"ffdc00":28,"ffdd00":28,"ffde00":28,"ffdf00":28,"ffe000":28,"ffe100":28,"ffe200":28,"ffe300":28,"ffe400":28,"ffe500":28,"ffe600":28,"ffe700":28,"ffe800":28,"ffe900":28,"ffea00":28,"ffeb00":28,"ffec00":28,"ffed00":28,"ffee00":28,"ffef00":28,"fff000":28,"fff100":28,"fff200":28,"fff300":28,"fff400":28,"fff500":28,"fff600":28,"fff700":28,"fff800":28,"fff900":28,"fffa00":28,"fffb00":28,"fffc00":28,"fffd00":28,"ffffff":28,"fi":6,"field":14,"fig":25,"figur":[4,6,7,9,10,20,22,23,25,28],"figure3":28,"figure3a":28,"figure3b":28,"figure4":28,"figure4ish":28,"figure5":28,"figure5d":28,"figure5f":28,"figureb2":28,"figureb2d":28,"figureb2f":28,"figures5":28,"figures5d":28,"figuresb2":28,"figuresb2d":28,"file":[1,3,4,5,6,7,9,14,15,18,19,21,26,28],"file_1":16,"file_2":16,"file_nam":16,"filenam":28,"filledtempl":28,"final":[1,2,28],"find":[19,25],"find_best":[10,22,25],"find_optim":[10,22,25],"findist":25,"fipnum":19,"first":[2,6],"fix":[2,3],"flag":[2,4,28],"flexibl":28,"float":[19,26],"flow":[2,3,5,7,10,17,20,21,28,29],"flow_maco":3,"fludflow":19,"fluidflow":[1,7,19],"fluxnum":19,"folder":[1,3,4,5,6,7,25,28],"follow":[2,4,6,7,9,28],"font":[4,6],"forecast":4,"fork":[0,3],"forlder":1,"format":[3,6,14,23,28],"formula":5,"fraction":28,"framework":[1,4,7,29],"friend":28,"friendli":7,"from":[1,3,6,19,26,28,29],"full":2,"function":[2,4,12,18,19,20,21,23,25],"fund":0,"g":[2,3,4,6,28],"ga":[2,26],"gaseou":7,"gener":[1,2,3,4,7,9,14,20,23,27,28,29],"generate_arrai":[10,13,14],"generate_segment_map":[10,13,16],"geo":19,"geolog":[19,29],"geologi":1,"geometri":[1,6],"get":[3,6,26],"get_cellmap":[10,17,19],"get_lin":[10,17,19],"getpolygon":[10,17,19],"gif":[4,29],"git":[4,6,28],"github":[1,2,3,4,6,7,28],"githubusercont":28,"gitlab":6,"give":28,"given":4,"global":[14,18,19,20,21,25],"grid":[1,2,4,6,10,14,17,19,21,26,28],"ground":5,"growth":28,"h":[4,28],"ha":[1,6],"handl":19,"handle_thickness_map":[10,17,18],"hat":6,"have":[4,6,28],"head":28,"hello":5,"help":[3,6],"here":2,"histori":[2,5,7],"hm":25,"homebrew":6,"horizont":19,"host":[1,7],"hour":[7,26],"how":4,"html":3,"http":[1,4,6,7,28],"i":[0,1,2,3,4,6,7,9,19,25,28],"ignor":3,"imag":[7,29],"implement":7,"import":[3,28],"in_fil":18,"includ":[6,28],"increas":28,"index":[5,14,19],"indic":19,"induc":29,"indx":16,"inform":4,"inidist":25,"initi":[2,4],"initialize_ert":[10,22,25],"inj":[2,4],"inject":2,"input":[1,2,7,18,28],"inputvalu":[10,17],"insid":6,"instal":[3,4,5,28],"instruct":6,"int":[14,19],"integ":19,"interest":[6,28,29],"interfac":26,"interpol":14,"interv":4,"introduct":5,"issu":[0,4,5,6],"istl":6,"iter":[2,4,25,28],"j":[19,25],"j5":6,"job":[1,8,10],"k":[19,25],"keyword":[4,21],"kg":2,"krn":2,"krw":2,"l":[6,28],"label":4,"larg":15,"last":4,"latest":6,"latex":6,"leakag":29,"less":4,"librari":6,"like":[4,6],"limit":28,"line":[2,3,4,6,19,26,28],"linear":28,"link":6,"lint":6,"linux":5,"liquid":[2,28],"list":[14,19,21,26],"load_pars":[10,11,12,22,23,25],"load_point":[10,22,26],"local":[3,4,14],"locat":[1,19,25,26],"look":3,"loop":4,"low":4,"m":[2,4,6,7,9,28],"mac":28,"machin":[2,4,6,28],"maco":[3,5],"macport":6,"mactex":6,"main":[1,3,10,11,12,13,14,16,23,25,28],"maintain":[3,6],"make":[3,6,25],"make_figur":[10,22,25],"mako":[1,21,28],"mamba":6,"manag":6,"mantain":3,"manual":28,"map":[2,4,10,14,18,19,22,28],"map_24h":4,"map_to_report_grid":[10,13,14],"mapproperti":[10,17],"mask":[4,28],"maskthr":[4,28],"mass":28,"master":6,"match":[2,5,7],"matrix":7,"max":[2,28],"max_function_evalu":4,"maximum":4,"measur":2,"merg":3,"mesh":26,"method":25,"metric":[7,10,13],"micp":5,"microbi":29,"microsystem":29,"might":[3,4,6,28,29],"min":[2,28],"miniforg":6,"minimum":7,"misfit":25,"miss":[3,4],"mit_m1":4,"mkdir":[6,28],"model":[2,19,26,29],"model_result":16,"modifi":[1,4,6,14,18,19,21],"modul":[1,5,6,8,29],"more":[0,3],"most":4,"mpi":[6,28],"mpirun":[2,28],"mult_thick":2,"multipli":2,"multx":28,"my_simul":4,"mypi":3,"mytempl":28,"n":[14,21],"name":[4,7,14,18,26],"name_of_input_fil":7,"ncx":19,"ncz":19,"need":[3,4,6,28],"new":[0,3,4,19,28],"newton":[2,28],"newtoniterationcount":28,"next":2,"nice":[3,6],"nkrn":2,"nkrn1":2,"nkrn2":2,"nkrn3":2,"nkrn4":2,"nkrn5":2,"nkrn6":2,"nkrw":2,"nkrw1":2,"nkrw2":2,"nkrw3":2,"nkrw4":2,"nkrw5":2,"nkrw6":2,"non":2,"none":[4,7,14,19,20,21,25,26,28],"normal":14,"notat":21,"note":4,"np":[2,28],"npe1":2,"npe2":2,"npe3":2,"npe4":2,"npe5":2,"npe6":2,"npen":2,"npnt1":2,"npnt2":2,"npnt3":2,"npnt4":2,"npnt5":2,"npnt6":2,"npntn":2,"numa":19,"numb":19,"number":[2,4,14,19,25,28],"o":[4,7,9,28],"observ":[9,25],"obtain":[25,28],"off":28,"one":[2,4],"onli":[6,7],"onlin":[4,6],"open":[6,7,28,29],"openbla":6,"oper":28,"opm":[2,3,5,7,14,20,21,28,29],"opm2":28,"opm3":28,"opm4":28,"opm_fil":[10,17,21],"optim":25,"option":[6,7,12,23,25],"org":6,"other":[4,6],"otherwis":[2,19],"our":[3,28],"out":29,"outpur":4,"output":[2,5,7],"over":25,"overlai":26,"overlap":19,"overview":5,"own":3,"pa":2,"packag":[1,3,5,8],"page":[3,5],"paper":[4,28],"para_dist":[10,22,25],"parallel":4,"paramet":[2,4,20,25],"part":1,"path":[2,3,6,26],"pen":2,"pen1":2,"pen2":2,"pen3":2,"pen4":2,"pen5":2,"pen6":2,"per":[19,25],"perm":2,"permx1":2,"permx2":2,"permx3":2,"permx4":2,"permx5":2,"permx6":2,"permz1":2,"permz2":2,"permz3":2,"permz4":2,"permz5":2,"permz6":2,"phase":28,"pip":[3,4,6,28],"platform":6,"pleas":[0,3,4],"plopm":[4,5,6,28],"plot":[4,7,16,20,25],"plot_cumulative_misfit":[10,22,25],"plot_optimization_detail":[10,22,25],"plot_optimization_result":[10,22,25],"plot_paramet":[10,22,25],"png":[4,9,10,22,26,29],"poff":4,"pofff":[3,4,6,7,9,28],"point":[1,2,19,21,26,28],"polygon":19,"poro1":2,"poro2":2,"poro3":2,"poro4":2,"poro5":2,"poro6":2,"posit":[2,10,17,19],"possibl":3,"postprocess":[1,4,10,14,17,20,22,23,25,27],"pr":3,"precipit":29,"precomput":7,"prefer":3,"prerequisit":6,"pressur":2,"previou":[3,6],"principl":28,"problem":[5,6],"process":[18,20,25],"process_input":[10,17,18],"process_optimization_result":[10,22,25],"profil":[4,28],"project":[0,6,29],"properti":2,"public":[2,4,5],"pull":[0,3,4],"push":3,"pushd":3,"pvtnum":28,"pwd":6,"py":[4,28],"pycopm":[3,5],"pylint":3,"pymm":5,"pyopmnearwel":5,"pyopmspe11":[5,28],"pytest":3,"python":[3,5,28,29],"python3":[6,28],"quantifi":24,"quantiti":[14,27],"quick":29,"r":[3,6,28],"r2_cart_1cm_capmax2500pa":28,"r3_cp_1cmish_capmax2500pa":28,"r4_cart_1mm_capmax2500pa":28,"r5_cart_1mm_capmax2500pa_strictol":28,"rais":[0,3,4,6],"ran":4,"random":[4,28],"random_se":28,"rang":4,"rate":[2,28],"raw":28,"read":[14,19],"read_hm":[10,22,25],"read_opm":[10,13,14],"real":2,"recent":6,"recommend":6,"red":6,"ref":28,"refer":4,"refin":[2,19],"refinement_z":[10,17,19],"regard":28,"region":29,"rel":2,"relat":[3,5,21],"releas":6,"relev":25,"remedi":29,"remov":[4,28],"render":28,"repit":21,"replac":3,"repo":[3,6],"report":[5,14,19,28],"repositori":[3,6],"reproduc":[4,28],"request":[0,3,4],"requir":[3,4,6,20,28],"requiri":18,"reservoir":29,"resinsight":6,"resolut":4,"resourc":[0,28],"restart":[14,28],"result":[2,5,6,9,16,25,26,28],"return":[14,18,19,20,21,25,26],"review":3,"rig":2,"rise":3,"routin":25,"rst":[2,28],"rule":5,"run":[3,4,5,6,7,10,17,21,28],"sand":[19,26,28],"satmin":[16,26],"satnum":[4,28],"satur":[2,7,26],"save":[21,28],"schedul":2,"screenshot":9,"script":[1,3,4,6,12,14,15,16,23,24,25,26,27,28],"search":5,"section":28,"see":[2,3,4,6,28],"seed":[4,28],"seek":5,"segment":[7,10,16,22,26],"send":[3,6],"sensit":28,"sensor":[10,17,19],"separ":7,"set":[2,4,6,7,18,28],"setup":28,"setuptool":6,"sh":6,"shorter":4,"should":6,"show":[9,28],"similar":28,"similarli":28,"simpli":6,"simul":[2,3,4,6,7,9,14,19,20,24,25,26,28,29],"singl":[3,4,5,7,28],"site":29,"six":3,"size":[2,4,18],"skip":6,"slow":7,"sni":2,"sni1":2,"sni2":2,"sni3":2,"sni4":2,"sni5":2,"sni6":2,"so":6,"softwar":5,"solut":25,"solver":28,"some":[21,29],"soon":3,"sourc":[2,3,5,7,19,29],"source1":2,"source2":2,"spars":[6,14,27],"sparse_data":[4,10,13,14],"sparse_valu":[10,22],"spatial":[4,14,26,28],"spatial_map_xh":4,"spe11":29,"spe11a":28,"spe11a_spatial_map_48h":28,"specif":6,"speed":[7,28],"split":4,"squash":3,"src":3,"static":3,"step":[2,3,4,6,25,28],"still":6,"storag":[21,29],"str":[18,26],"stricter":28,"string":14,"structured_handling_fluidflow":[10,17,19],"studi":[4,7,25,28,29],"stuttgart":28,"style":4,"subfig":28,"submit":28,"submodul":[1,8,10],"subpackag":[1,5,8],"subsect":[9,28],"subsurfac":0,"subsystem":6,"succe":[3,25],"succed":6,"sudo":6,"suit":6,"summari":14,"super":6,"support":[2,4,5,6,7,28],"suptitl":28,"surfac":19,"sustain":0,"sw":2,"swi":2,"swi1":2,"swi2":2,"swi3":2,"swi4":2,"swi5":2,"swi6":2,"system":[3,4,28],"t":[4,7,26,28],"t_n":14,"tabl":[2,9,24,28],"tag":6,"taho":6,"tailor":29,"temperatur":2,"templat":[21,28],"templeat":1,"tensor":[2,19],"term":3,"termin":[4,6,28],"test":[2,3,4,6],"texliv":6,"text":18,"than":[0,3],"thi":[0,2,3,4,6,7,28],"thick":[2,18,28],"those":4,"thre1":2,"thre2":2,"thre3":2,"thre4":2,"thre5":2,"thre6":2,"thren":2,"threshold":[2,16,26],"through":6,"time":[2,4,7,28],"time_seri":4,"toler":28,"toml":[2,4,7,9,28],"tool":[0,3,4,6,7,28,29],"top":2,"total":14,"trade":28,"true":[2,28],"try":[3,6,28],"tug":6,"tune":2,"tunit":4,"turn":6,"tutori":[3,6],"txt":[3,6],"type":[2,6,19,29],"u":7,"ubuntu":[3,6],"uni":28,"unzip":28,"up":[7,28],"updat":6,"upgrad":6,"us":[0,2,3,4,6,7,14,16,21,28,29],"user":[2,3,6,7],"utf8":28,"util":[1,8,10],"utilii":[18,19,20,21],"v":[4,28],"v2":6,"v2025":6,"valid":7,"valu":[2,7,18,21,25,26,27,28],"var":28,"variabl":[2,3,4,21,25],"variat":14,"venv":6,"version":[6,10],"vertic":26,"via":[4,6],"virtual":6,"visit":3,"visual":[1,5,6,8,10],"vpofff":6,"vtk":29,"w":28,"wasserstain":7,"wasserstein":[7,16,28],"we":[2,3,4,6,28],"websit":28,"welcom":[0,3,4],"well":[2,3,10,17,19,25,28,29],"were":28,"wet":2,"wheel":6,"when":6,"where":[7,28],"which":[1,4,6,7,28],"while":[4,6],"window":5,"within":14,"without":28,"work":[3,6],"world":5,"would":[4,6],"write":[2,6,14,19,21,25,28],"write_dense_data":[10,13,14],"write_keyword":[10,17,21],"write_sparse_data":[10,13,14],"writefil":[10,17],"wsl":6,"www":6,"x":[2,4,19,21,26],"x_c":19,"xci":19,"xco2l":[4,28],"xcoord":21,"xcr":19,"xformat":28,"xlim":16,"xlnum":28,"xunit":28,"y":[2,18],"yet":6,"yformat":28,"yml":[3,4,6],"you":[3,4,6,28],"your":[2,3,5,6,9,28],"yournam":3,"yunit":28,"z":[2,4,19,26],"z_c":19,"zci":19,"zcoord":21,"zcr":19,"zip":28,"zlim":16,"znr":19,"zprofil":6},"titles":["About pofff","pofff Python API","Configuration file","Contributing","Examples","Welcome to pofff\u2019s documentation!","Installation","Introduction","pofff","Output folder","pofff package","pofff.core package","pofff.core.pofff module","pofff.jobs package","pofff.jobs.data module","pofff.jobs.delete module","pofff.jobs.metric module","pofff.utils package","pofff.utils.inputvalues module","pofff.utils.mapproperties module","pofff.utils.runs module","pofff.utils.writefile module","pofff.visualization package","pofff.visualization.benchmark module","pofff.visualization.error_table module","pofff.visualization.everert module","pofff.visualization.maps module","pofff.visualization.sparse_values module","Publication","Related"],"titleterms":{"":5,"about":0,"ad":[4,29],"api":1,"benchmark":23,"binari":6,"brew":6,"build":6,"concept":7,"configur":2,"content":[10,11,13,17,22],"contribut":3,"core":[11,12],"data":14,"delet":15,"document":5,"error_t":24,"ert":9,"everert":25,"everest":9,"exampl":4,"exprecc":29,"file":2,"flow":6,"folder":9,"formula":6,"ground":3,"hello":4,"histori":4,"indic":5,"inputvalu":18,"instal":6,"introduct":7,"issu":3,"job":[13,14,15,16],"linux":6,"maco":6,"map":26,"mapproperti":19,"match":4,"metric":16,"micp":29,"modul":[10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],"opm":6,"output":9,"overview":7,"packag":[6,10,11,13,17,22],"plopm":29,"pofff":[0,1,5,8,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27],"problem":3,"public":28,"pycopm":29,"pymm":29,"pyopmnearwel":29,"pyopmspe11":29,"python":[1,6],"relat":29,"report":3,"result":4,"rule":3,"run":[9,20],"seek":3,"singl":9,"softwar":3,"sourc":6,"sparse_valu":27,"submodul":[11,13,17,22],"subpackag":10,"support":3,"tabl":5,"util":[17,18,19,20,21],"visual":[4,22,23,24,25,26,27],"welcom":5,"window":6,"world":4,"writefil":21,"your":4}}) \ No newline at end of file diff --git a/docs/text/conf.py b/docs/text/conf.py index a7c89fb..b55ee83 100644 --- a/docs/text/conf.py +++ b/docs/text/conf.py @@ -7,7 +7,7 @@ # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information project = 'pofff' -copyright = '2025, NORCE Research AS' +copyright = '2025-2026, NORCE Research AS' # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/docs/text/examples.rst b/docs/text/examples.rst index 809d9b7..0be38e9 100644 --- a/docs/text/examples.rst +++ b/docs/text/examples.rst @@ -22,8 +22,7 @@ Adding your results =================== The `publication `_ folder contains the configuration files used for the results in the -`pofff paper `_ (see :doc:`publication <./publication>` for details in the steps to reproduce the figures in the paper). -For example, running inside that folder: +`pofff paper `_ (see :doc:`publication <./publication>` for details in the steps to reproduce the figures in the paper). .. code-block:: bash @@ -77,3 +76,36 @@ see/run the scripts in the `tests `_ for an example of splitting the generation of the files, running of everest, and postprocessing). Please raise an issue for missing keywords in the toml configuration files that you would like to be added. + +============= +Visualization +============= +To postprocess the data, `plopm `_ can be used. + +.. tip:: + You can install `plopm `_ by executing in the terminal: + + .. code-block:: bash + + pip install git+https://github.com/cssr-tools/plopm.git + +For example, if you run the `appendixb.toml `_ configuration file and change the 'inj' variable in line 17 to: + +.. code-block:: bash + + inj=[[8100, 300, 3E-7, 0], + [10200, 300, 3E-7, 3E-7], + [3300, 300, 0, 0], + [64800, 3600, 0, 0], + [345600, 21600, 0, 0]] + +Then the following GIF is generated by: + + .. code-block:: bash + + pofff -i appendixb.toml -o plopm -m single -c '5e-2' -f none + plopm -v xco2l -i plopm/PLOPM -d 8,2.5 -mask satnum -m gif -dpi 1000 -f 12 -loop 1 -cformat .2f -cbsfax 0.30,0.01,0.4,0.02 -remove 0,0,1,0 -interval 437.5 -maskthr 1e-5 -tunits h + +.. image:: ./figs/plopm_xco2l.gif + +See the `plopm online docmunetation `_ for additional information of supported flag parameters to generate customized PNGs and GIFs. diff --git a/docs/text/figs/plopm_xco2l.gif b/docs/text/figs/plopm_xco2l.gif new file mode 100644 index 0000000..1ed2dd8 Binary files /dev/null and b/docs/text/figs/plopm_xco2l.gif differ diff --git a/docs/text/installation.rst b/docs/text/installation.rst index 65d3977..7cb231d 100644 --- a/docs/text/installation.rst +++ b/docs/text/installation.rst @@ -7,6 +7,18 @@ While using package managers such as Anaconda, Miniforge, or Mamba might work, t update the documentation when Python 3.14 is supported (e.g., the ert Python package is not yet available via pip install in Python 3.14). +`ResInsight `_ and `plopm `_ can be used for the visualization of the results. + +.. note:: + + There are binary packages for Linux and Windows to install Resinsight, see the `ResInsight Documentation `_. For macOS users, you could try to install it using `brew `_ by executing: + + .. code-block:: bash + + brew install cssr-tools/opm/resinsight + + Then, you should be able to open resinsight by typing in the terminal **resinsight**. + .. _vpofff: Python package @@ -44,6 +56,14 @@ install the Python requirements in a virtual environment with the following comm Typing **git tag -l** writes all available specific versions. +.. note:: + + For not macOS users, to install the (optional but recommended) dependencies used for the figure's LaTeX formatting, execute + + **sudo apt-get install texlive-fonts-recommended texlive-fonts-extra dvipng cm-super** + + For macOS users, the LaTeX dependency can be installed from https://www.tug.org/mactex/ + .. _opmflow: OPM Flow @@ -52,6 +72,13 @@ You also need to install: * OPM Flow (https://opm-project.org, Release 2025.10 or current master branches) +Binary packages ++++++++++++++++ + +See the `downloading and installing `_ OPM Flow online documentation for +instructions to install the binary packages in Ubuntu and Red Hat Enterprise Linux, and for other platforms which are +supported either via source builds or through running a virtual machine. + .. tip:: See the `CI.yml `_ script @@ -89,11 +116,24 @@ in the terminal the following lines (which in turn should build flow in the fold .. _macOS: +Brew formula for macOS +++++++++++++++++++++++ +For macOS, there are no available binary packages, so OPM Flow needs to be built from source. Recently, a formula to build flow using brew has +been added in `https://github.com/cssr-tools/homebrew-opm `_. +Then, you can try to install flow (v2025.10) by simply typing: + +.. code-block:: console + + brew install cssr-tools/opm/opm-simulators + +You can check if the installation of OPM Flow succeded by typing in the terminal **flow \-\-help**. + +.. tip:: + See the actions in the `cssr-tools/homebrew-opm `_ repository. + Source build in macOS +++++++++++++++++++++ -For macOS, there are no available binary packages, so OPM Flow needs to be built from source, in addition to the dune libraries -(see the `prerequisites `_, which can be installed using macports or brew). For example, -with brew the prerequisites can be installed by: +If you would like to build the latest OPM Flow from the master branch, then you can first install the prerequisites using brew: .. code-block:: console @@ -101,18 +141,15 @@ with brew the prerequisites can be installed by: In addition, it is recommended to upgrade and update your macOS to the latest available versions (the following steps have worked for macOS Tahoe 26.1 with Apple clang version 17.0.0). -After the prerequisites are installed and the vpofff Python environment is created (see :ref:`vpofff`), -then building OPM Flow and the opm Python package can be achieved with the following lines: +After the prerequisites are installed, then building OPM Flow can be achieved with the following lines: .. code-block:: console CURRENT_DIRECTORY="$PWD" - deactivate - source vpofff/bin/activate - for module in common geometry grid istl - do git clone https://gitlab.dune-project.org/core/dune-$module.git --branch v2.9.1 + do git clone https://gitlab.dune-project.org/core/dune-$module.git + cd dune-$module && git checkout v2.10.0 && cd .. ./dune-common/bin/dunecontrol --only=dune-$module cmake -DCMAKE_DISABLE_FIND_PACKAGE_MPI=1 ./dune-common/bin/dunecontrol --only=dune-$module make -j5 done @@ -121,9 +158,8 @@ then building OPM Flow and the opm Python package can be achieved with the follo for repo in common grid simulators do git clone https://github.com/OPM/opm-$repo.git - mkdir build/opm-$repo - cd build/opm-$repo - cmake -DWITH_NDEBUG=1 -DUSE_MPI=0 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$CURRENT_DIRECTORY/dune-common/build-cmake;$CURRENT_DIRECTORY/dune-grid/build-cmake;$CURRENT_DIRECTORY/dune-geometry/build-cmake;$CURRENT_DIRECTORY/dune-istl/build-cmake;$CURRENT_DIRECTORY/build/opm-common;$CURRENT_DIRECTORY/build/opm-grid" $CURRENT_DIRECTORY/opm-$repo + mkdir build/opm-$repo && cd build/opm-$repo + cmake -DUSE_MPI=0 -DWITH_NDEBUG=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$CURRENT_DIRECTORY/dune-common/build-cmake;$CURRENT_DIRECTORY/dune-grid/build-cmake;$CURRENT_DIRECTORY/dune-geometry/build-cmake;$CURRENT_DIRECTORY/dune-istl/build-cmake;$CURRENT_DIRECTORY/build/opm-common;$CURRENT_DIRECTORY/build/opm-grid" $CURRENT_DIRECTORY/opm-$repo if [[ $repo == simulators ]]; then make -j5 flow else @@ -132,15 +168,11 @@ then building OPM Flow and the opm Python package can be achieved with the follo cd ../.. done - echo "export PATH=\$PATH:$CURRENT_DIRECTORY/build/opm-simulators/bin" >> $CURRENT_DIRECTORY/vpofff/bin/activate + echo "export PATH=\$PATH:$CURRENT_DIRECTORY/build/opm-simulators/bin" >> ~/.zprofile + source ~/.zprofile - deactivate - source vpofff/bin/activate - -This builds OPM Flow, and it exports the path to the flow executable (i.e., executing in the terminal **which flow** should print the path). +This builds OPM Flow, and it exports the path to the flow executable. You can check if the installation of OPM Flow succeded by typing in the terminal **flow \-\-help**. .. tip:: See `this repository `_ dedicated to build OPM Flow from source in the latest macOS (GitHub actions). If you still face problems, raise an issue in the GitHub repository, or you could also send an email to the maintainers. - -For macOS, the LaTeX dependency can be installed from https://www.tug.org/mactex/. diff --git a/docs/text/publication.rst b/docs/text/publication.rst index 58dd8b0..2af9a6a 100644 --- a/docs/text/publication.rst +++ b/docs/text/publication.rst @@ -23,7 +23,7 @@ Figure 3: plopm -i figure3/FIGURE3 -v 'multx * 1.75' -grid 'black,1e-2' -remove 1,1,0,1 -d 20,15 -clabel 'Thickness map [cm]' -cformat .2f -cnum 5 -f 20 -o figure3 -save figure3b Figure 4 requires running the SPE11A cases using `pyopmspe11 `_, which uses the simulation grid. You might need to edit the configuration files to -adjust the computational resources to your machine (e.g., `r3_cp_1cmish_capmax2500Pa.txt `_ is run with 32 cpus). +adjust the computational resources to your machine (e.g., `r3_cp_1cmish_capmax2500Pa.toml `_ is run with 32 cpus). .. tip:: You can install `pyopmspe11 `_ by executing in the terminal: @@ -35,18 +35,18 @@ adjust the computational resources to your machine (e.g., `r3_cp_1cmish_capmax25 .. code-block:: bash mkdir figure4 && cd figure4 - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.txt - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.txt - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r4_Cart_1mm_capmax2500Pa.txt - curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r5_Cart_1mm_capmax2500Pa_strictol.txt - pyopmspe11 -i r2_Cart_1cm_capmax2500Pa.txt -o r2_Cart_1cm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 - pyopmspe11 -i r3_cp_1cmish_capmax2500Pa.txt -o r3_cp_1cmish_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 - pyopmspe11 -i r4_Cart_1mm_capmax2500Pa.txt -o r4_Cart_1mm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 - pyopmspe11 -i r5_Cart_1mm_capmax2500Pa_strictol.txt -o r5_Cart_1mm_capmax2500Pa_strictol -t 1 -r 280,1,120 -w 0.16666666666666666 + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.toml + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r3_cp_1cmish_capmax2500Pa.toml + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r4_Cart_1mm_capmax2500Pa.toml + curl -O https://raw.githubusercontent.com/OPM/pyopmspe11/refs/heads/main/benchmark/spe11a/r5_Cart_1mm_capmax2500Pa_strictol.toml + pyopmspe11 -i r2_Cart_1cm_capmax2500Pa.toml -o r2_Cart_1cm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 + pyopmspe11 -i r3_cp_1cmish_capmax2500Pa.toml -o r3_cp_1cmish_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 + pyopmspe11 -i r4_Cart_1mm_capmax2500Pa.toml -o r4_Cart_1mm_capmax2500Pa -t 1 -r 280,1,120 -w 0.16666666666666666 + pyopmspe11 -i r5_Cart_1mm_capmax2500Pa_strictol.toml -o r5_Cart_1mm_capmax2500Pa_strictol -t 1 -r 280,1,120 -w 0.16666666666666666 plopm -v xco2l -r 53 -mask satnum -maskthr 7e-5 -i 'r2_Cart_1cm_capmax2500Pa/flow/R2_CART_1CM_CAPMAX2500PA r3_cp_1cmish_capmax2500Pa/flow/R3_CP_1CMISH_CAPMAX2500PA r4_Cart_1mm_capmax2500Pa/flow/R4_CART_1MM_CAPMAX2500PA r5_Cart_1mm_capmax2500Pa_strictol/flow/R5_CART_1MM_CAPMAX2500PA_STRICTOL' -cnum 3 -xlnum 8 -clabel 'OPM results for SPE11A: CO$_2$ mass fraction (liquid phase) after 2 days' -d 16,6.5 -t "(a) Cartesian grid 1cm (b) Corner-point grid 1cmish (c) Cartesian grid 1mm (d) Cartesian grid 1mm stricter tolerances" -yunits cm -xunits cm -yformat .0f -xformat .0f -f 16 -save figure4 -cformat .2e -suptitle 0 -subfigs 2,2 -cbsfax 0.35,0.97,0.3,0.02 -delax 1 -c '#9ca245 #9da347 #9fa44a #a0a64d #a2a750 #a3a953 #a5aa56 #a6ac59 #a8ad5c #a9af5f #abb062 #adb164 #aeb367 #b0b46a #b1b66d #b3b770 #b4b973 #b6ba76 #b7bc79 #b9bd7c #babf7f #bcc082 #bec184 #bfc387 #c1c48a #c2c68d #c4c790 #c5c993 #c7ca96 #c8cc99 #cacd9c #cbcf9f #cdd0a2 #cfd1a4 #d0d3a7 #d2d4aa #d3d6ad #d5d7b0 #d6d9b3 #d8dab6 #d9dcb9 #dbddbc #dcdfbf #dee0c1 #e0e1c4 #e1e3c7 #e3e4ca #e4e6cd #e6e7d0 #e7e9d3 #e9ead6 #eaecd9 #eceddc #edefdf #eff0e1 #f1f1e4 #f2f3e7 #f4f4ea #f5f6ed #f7f7f0 #f8f9f3 #fafaf6 #fbfcf9 #fdfdfc #ffffff #fefbfb #fdf7f7 #fcf3f3 #fbefef #faebeb #f9e7e7 #f8e3e3 #f7e0e0 #f6dcdc #f5d8d8 #f4d4d4 #f3d0d0 #f2cccc #f1c8c8 #f0c5c5 #efc1c1 #eebdbd #edb9b9 #ecb5b5 #ebb1b1 #eaadad #e9aaaa #e8a6a6 #e7a2a2 #e69e9e #e59a9a #e49696 #e39292 #e28f8f #e18b8b #e08787 #df8383 #de7f7f #dd7b7b #dc7777 #db7474 #da7070 #d96c6c #d86868 #d76464 #d66060 #d55c5c #d45959 #d35555 #d25151 #d14d4d #d04949 #cf4545 #ce4141 #cd3e3e #cc3a3a #cb3636 #ca3232 #c92e2e #c82a2a #c72626 #c62323 #c51f1f #c41b1b #c31717 #c21313 #c10f0f #c00b0b' A similar figure without the need of running the simulations (not showing the sands in the background and using the reporting grid) can be obtained by downloading the SPE11A benchmark data in csv format available at -`this website `_ (the submitted benchmark data does not include the `r5_Cart_1mm_capmax2500Pa_strictol.txt `_ results): +`this website `_ (the submitted benchmark data does not include the `r5_Cart_1mm_capmax2500Pa_strictol.toml `_ results): .. code-block:: bash diff --git a/publication/accuracy.py b/publication/accuracy.py index fafd1e5..141b777 100644 --- a/publication/accuracy.py +++ b/publication/accuracy.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """Table C5 in the pofff paper""" diff --git a/publication/profiling.py b/publication/profiling.py index 2627411..7c58a1c 100644 --- a/publication/profiling.py +++ b/publication/profiling.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """Table C3 and Figure C4 in the pofff paper""" diff --git a/publication/sensitivity.py b/publication/sensitivity.py index 3dc682d..6987cd7 100644 --- a/publication/sensitivity.py +++ b/publication/sensitivity.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """Table C4 in the pofff paper""" diff --git a/src/pofff/core/pofff.py b/src/pofff/core/pofff.py index 60cb62f..d648e5c 100644 --- a/src/pofff/core/pofff.py +++ b/src/pofff/core/pofff.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=R0912,R0915 diff --git a/src/pofff/geology/horizonts.geo b/src/pofff/geology/horizonts.geo index ddb6f41..d4be911 100644 --- a/src/pofff/geology/horizonts.geo +++ b/src/pofff/geology/horizonts.geo @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 NORCE Research AS +// SPDX-FileCopyrightText: 2025-2026 NORCE Research AS // SPDX-License-Identifier: GPL-3.0 Merge "fluidflower.jpg"; Plugin(ModifyComponents).Expression0 = "v0 * 20000"; diff --git a/src/pofff/geology/lines.geo b/src/pofff/geology/lines.geo index 4c233d4..69ed166 100644 --- a/src/pofff/geology/lines.geo +++ b/src/pofff/geology/lines.geo @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 NORCE Research AS +// SPDX-FileCopyrightText: 2025-2026 NORCE Research AS // SPDX-License-Identifier: GPL-3.0 Line(1) = {1, 2}; Line(2) = {2, 3}; diff --git a/src/pofff/geology/points.geo b/src/pofff/geology/points.geo index a089083..3bbd5a8 100644 --- a/src/pofff/geology/points.geo +++ b/src/pofff/geology/points.geo @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 NORCE Research AS +// SPDX-FileCopyrightText: 2025-2026 NORCE Research AS // SPDX-License-Identifier: GPL-3.0 Point(1) = {0.0, 0, 0, 0}; Point(2) = {0.0, 70, 0, 0}; diff --git a/src/pofff/geology/polygons.geo b/src/pofff/geology/polygons.geo index f53a4cb..36baba3 100755 --- a/src/pofff/geology/polygons.geo +++ b/src/pofff/geology/polygons.geo @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 NORCE Research AS +// SPDX-FileCopyrightText: 2025-2026 NORCE Research AS // SPDX-License-Identifier: GPL-3.0 Merge "fluidflower.jpg"; Plugin(ModifyComponents).Expression0 = "v0 * 20000"; diff --git a/src/pofff/jobs/data.py b/src/pofff/jobs/data.py index 51df053..1e6ef51 100755 --- a/src/pofff/jobs/data.py +++ b/src/pofff/jobs/data.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# SPDX-FileCopyrightText: 2023 NORCE +# SPDX-FileCopyrightText: 2023-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=C0302, R0912, R0914, R0801, R0915, E1102, C0325 @@ -317,9 +317,11 @@ def dense_data(dig): None """ - dil = {"rstno": []} - for time in dig["dense_t"]: - dil["rstno"].append(dig["times"].index(time)) + dil = {"rstno": [], "indices": []} + for i, time in enumerate(dig["dense_t"]): + if time in dig["times"]: + dil["rstno"].append(dig["times"].index(time)) + dil["indices"].append(i) dil["nrstno"] = len(dil["rstno"]) for i, j, k in zip(["x", "y", "z"], dig["dims"], dig["nxyz"]): dil[f"ref{i}vert"] = np.linspace(0, j, k + 1) @@ -330,7 +332,7 @@ def dense_data(dig): dil["cell_cent"] = np.load(dig["maps"]) dig["actindr"] = [] names = ["sgas", "cco2"] - for i, t_n in enumerate(dil["rstno"]): + for i, t_n in zip(dil["indices"], dil["rstno"]): generate_arrays(dig, dil, names, t_n) map_to_report_grid(dil, names) if dig["dense_t"][i] % 3600 == 0: diff --git a/src/pofff/jobs/delete.py b/src/pofff/jobs/delete.py index b7440c5..0bfcbbe 100755 --- a/src/pofff/jobs/delete.py +++ b/src/pofff/jobs/delete.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """ diff --git a/src/pofff/jobs/metric.py b/src/pofff/jobs/metric.py index 86fcda5..b75e565 100755 --- a/src/pofff/jobs/metric.py +++ b/src/pofff/jobs/metric.py @@ -25,11 +25,11 @@ def calculate_emd(file_1, file_2): im1 = Image.open(file_1).convert("L") im1 = im1.resize((140, 60), Image.Resampling.LANCZOS) n_x, n_z = im1.size - a_1 = np.array(im1.getdata()).reshape(n_x, n_z) + a_1 = np.array(im1.get_flattened_data()).reshape(n_x, n_z) im2 = Image.open(file_2).convert("L") im2 = im2.resize(im1.size, Image.Resampling.LANCZOS) - b_1 = np.array(im2.getdata()).reshape(n_x, n_z) + b_1 = np.array(im2.get_flattened_data()).reshape(n_x, n_z) im2.save(file_2) # Make a and b 'true' distributions diff --git a/src/pofff/templates/bcprop.mako b/src/pofff/templates/bcprop.mako index 2ade582..0710a65 100644 --- a/src/pofff/templates/bcprop.mako +++ b/src/pofff/templates/bcprop.mako @@ -1,5 +1,5 @@ #!/usr/bin/env python -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 import os diff --git a/src/pofff/templates/copyd.mako b/src/pofff/templates/copyd.mako index bda3b51..0ad6466 100644 --- a/src/pofff/templates/copyd.mako +++ b/src/pofff/templates/copyd.mako @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 import os diff --git a/src/pofff/templates/deck.mako b/src/pofff/templates/deck.mako index a280889..613287b 100644 --- a/src/pofff/templates/deck.mako +++ b/src/pofff/templates/deck.mako @@ -1,4 +1,4 @@ --- Copyright (C) 2025 NORCE Research AS +-- Copyright (C) 2025-2026 NORCE Research AS -- This deck was generated by pofff https://github.com/OPM/pofff ---------------------------------------------------------------------------- RUNSPEC diff --git a/src/pofff/templates/equalreg.mako b/src/pofff/templates/equalreg.mako index bb75fc9..c58ab14 100644 --- a/src/pofff/templates/equalreg.mako +++ b/src/pofff/templates/equalreg.mako @@ -1,5 +1,5 @@ #!/usr/bin/env python -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 import os diff --git a/src/pofff/templates/flow.mako b/src/pofff/templates/flow.mako index 48bdb6d..44ebc32 100644 --- a/src/pofff/templates/flow.mako +++ b/src/pofff/templates/flow.mako @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 import os diff --git a/src/pofff/templates/monotonic.mako b/src/pofff/templates/monotonic.mako index 2a377e6..d715bbf 100644 --- a/src/pofff/templates/monotonic.mako +++ b/src/pofff/templates/monotonic.mako @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """ diff --git a/src/pofff/templates/satufunc.mako b/src/pofff/templates/satufunc.mako index 764ae4c..fb47c51 100644 --- a/src/pofff/templates/satufunc.mako +++ b/src/pofff/templates/satufunc.mako @@ -1,5 +1,5 @@ #!/usr/bin/env python -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 import os diff --git a/src/pofff/utils/inputvalues.py b/src/pofff/utils/inputvalues.py index 2df8623..0f3387d 100644 --- a/src/pofff/utils/inputvalues.py +++ b/src/pofff/utils/inputvalues.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=R1702 diff --git a/src/pofff/utils/mapproperties.py b/src/pofff/utils/mapproperties.py index 12a6c90..d9aba32 100644 --- a/src/pofff/utils/mapproperties.py +++ b/src/pofff/utils/mapproperties.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=C0302, R0912, R0914, R0915, E1102 diff --git a/src/pofff/utils/runs.py b/src/pofff/utils/runs.py index 3b660f4..cbd2655 100644 --- a/src/pofff/utils/runs.py +++ b/src/pofff/utils/runs.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """ diff --git a/src/pofff/utils/writefile.py b/src/pofff/utils/writefile.py index df537ac..0bae54b 100644 --- a/src/pofff/utils/writefile.py +++ b/src/pofff/utils/writefile.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=R0912,R0915 @@ -23,8 +23,8 @@ def create_corner_point_grid(dic, xcoord, zcoord): """ grid, tmp = [], [] + grid.append("-- Copyright (C) 2025-2026 NORCE Research AS\n") grid.append("-- This deck was generated by pofff https://github.com/OPM/pofff\n") - grid.append("-- Copyright (C) 2025 NORCE Research AS\n") grid.append("COORD\n") for j in range(dic["noCells"][1] + 1): for i in range(dic["noCells"][0] + 1): @@ -96,7 +96,7 @@ def write_keywords(dic): dic[f"{names}"] = compact_format(dic[f"{names}"]) dic[f"{names}"].insert(0, f"{names.upper()}\n") dic[f"{names}"].insert(0, git) - dic[f"{names}"].insert(0, "-- Copyright (C) 2025 NORCE Research AS\n") + dic[f"{names}"].insert(0, "-- Copyright (C) 2025-2026 NORCE Research AS\n") dic[f"{names}"].append("/") with open( f"{dic['deck']}/{names.upper()}.INC", diff --git a/src/pofff/visualization/benchmark.py b/src/pofff/visualization/benchmark.py index 7e7e344..a1f2251 100644 --- a/src/pofff/visualization/benchmark.py +++ b/src/pofff/visualization/benchmark.py @@ -1,5 +1,5 @@ #!/usr/bin/env python -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """ diff --git a/src/pofff/visualization/everert.py b/src/pofff/visualization/everert.py index 1b6a8a0..eb8ca3d 100644 --- a/src/pofff/visualization/everert.py +++ b/src/pofff/visualization/everert.py @@ -1,5 +1,5 @@ #!/usr/bin/env python -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """ diff --git a/src/pofff/visualization/sparse_values.py b/src/pofff/visualization/sparse_values.py index bb22fed..54ecaf8 100644 --- a/src/pofff/visualization/sparse_values.py +++ b/src/pofff/visualization/sparse_values.py @@ -1,5 +1,5 @@ #!/usr/bin/env python -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """ diff --git a/tests/test_0_main.py b/tests/test_0_main.py index 79148a9..9e8adfc 100644 --- a/tests/test_0_main.py +++ b/tests/test_0_main.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=R0801 diff --git a/tests/test_1_everest.py b/tests/test_1_everest.py index 7608ba8..ed537f6 100644 --- a/tests/test_1_everest.py +++ b/tests/test_1_everest.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=R0801 diff --git a/tests/test_2_ert.py b/tests/test_2_ert.py index e1051d7..abe5a69 100644 --- a/tests/test_2_ert.py +++ b/tests/test_2_ert.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 # pylint: disable=R0801 diff --git a/tests/test_3_benchmark.py b/tests/test_3_benchmark.py index 2388e67..f151357 100644 --- a/tests/test_3_benchmark.py +++ b/tests/test_3_benchmark.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """Test the single functionality and plotting for the benchmark""" diff --git a/tests/test_4_fair.py b/tests/test_4_fair.py index 68265d9..fed1a4a 100644 --- a/tests/test_4_fair.py +++ b/tests/test_4_fair.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 NORCE Research AS +# SPDX-FileCopyrightText: 2025-2026 NORCE Research AS # SPDX-License-Identifier: GPL-3.0 """Generate figures in the main paper in the Appendix"""