Skip to content

Commit 84ea2e9

Browse files
committed
Updating to 2023.10 version and dispersion
1 parent 209f7bd commit 84ea2e9

27 files changed

+108
-86
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[![Build Status](https://github.com/OPM/pyopmspe11/actions/workflows/CI.yml/badge.svg)](https://github.com/OPM/pyopmspe11/actions/workflows/CI.yml)
2-
<a href="https://www.python.org/"><img src="https://img.shields.io/badge/python-3.8%20|%203.9%20|%203.10-blue.svg"></a>
2+
<a href="https://www.python.org/"><img src="https://img.shields.io/badge/python-3.8%20|%203.9%20|%203.10%20|%203.11-blue.svg"></a>
33
[![Code style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
44
[![License: MIT](https://img.shields.io/badge/license-MIT-blue)](https://opensource.org/license/mit/)
55

@@ -12,7 +12,7 @@ Here we use the [_OPM-Flow_](https://opm-project.org/?page_id=19) simulator.
1212

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

1717
To build dune and the corresponding OPM master branches from source (e.g., you are a macOS user), you can run the script
1818
`./build_dune_and_opm-flow.bash`, which in turn should build flow in the folder

docs/_images/dissolved.png

-99.8 KB
Binary file not shown.

docs/_images/facies.png

-103 KB
Binary file not shown.

docs/_images/saturation.png

-90.7 KB
Binary file not shown.

docs/_sources/configuration_file.rst.txt

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,14 @@ The following input lines in the configuration file are:
3838
12 #If cartesian, number of z cells [-]; if tensor, variable array of z-refinment; if corner-point, fix array of z-refinment (17 entries)
3939
70. 36.25 #Temperature bottom and top rig [C]
4040
19620000. #Pressure on the top [Pa]
41-
1e-9 2e-8 #CO2 diffusion (in liquid and gas) [m^2/s]
41+
1e-9 2e-8 0 #Diffusion (in liquid and gas) [m^2/s] and dispersion [m] (disperison only available in Flow master)
4242
8.5e-1 2500. #Rock specific heat and density (for spe11b/c)
4343
5e4 1. #Pore volume on lateral boundaries and width of buffer cell [m] (for spe11b/c)
4444
150. 10. #Elevation of the parabola and back [m] (for spe11c)
4545
46-
In line 5 you specify if you are using OPM Flow from the master branch or from the latest stable release (OPM-flow 2023.4 release).
47-
This since there are continuous changues in the OPM master branch (e.g., the format of the boundary condition keyword BC). Then we
48-
will keep updating the decks for using Flow from master and also we will keep the framework to produce decks compatible for the latest OPM stable release .
46+
In line 5 you specify if you are using OPM Flow from the master branch or from the latest stable release (OPM-flow 2023.10 release).
47+
This since there are continuous changues in the OPM master branch (e.g., implementation of mechanical dispersion). Then we
48+
will keep updating the decks for using Flow from master and also we will keep the framework to produce decks compatible for the latest OPM stable release.
4949
The immiscible model allows for faster prototyping while the complete model includes dissolution of the components in the
5050
gas and liquid phases, in addition to thermal effects. Regarding the grid type, the cartesian mode generates an uniform grid
5151
with the defined number of elements in lines 9 to 11. The tensor grid allows to define arrays in each direction where the grid
@@ -63,6 +63,10 @@ resulting in 17 levels. Then, the z-refinment in each of these levels is set. Se
6363
elements, the tensor grid by setting the x-array to 50,100,20; the y-array to 5,10,70,10,5; and the z-array to 5,10,20,20,20,20,20,5; and
6464
the corner-point grid using the same xy-arrays as in the tensor grid and for the z-refinment 4,4,3,3,5,3,7,5,13,5,7,5,3,9,21,21,2.
6565

66+
.. warning::
67+
Dispersion seems to work fine for the spe11a case where there are no thermal effects nor water evaporation. However, for spe11b/c there are
68+
issues with the current implementation (we are working in this, then for now disperison should be set to 0 for spe11b/c).
69+
6670
***********************
6771
Soil-related parameters
6872
***********************
@@ -96,13 +100,17 @@ The following entries define the properties of the different facies:
96100
PERM4 506.625 PORO4 0.20 THCONR4 1.25
97101
PERM5 1013.25 PORO5 0.25 THCONR5 0.92
98102
PERM6 2026.50 PORO6 0.35 THCONR6 0.26
99-
PERM7 0 PORO7 0 THCONR7 2.00
103+
PERM7 0 PORO7 1E-6 THCONR7 2.00
100104
101105
.. figure:: figs/kr.png
102106
.. figure:: figs/cap.png
103107

104108
Visualization in ResInsight of the relative permeability and capillary pressure functions in the facie 1.
105109

110+
.. note::
111+
For spe11b/c, adding a small value of porosity in facie 7 (i.e., 1E-6 in this example), allows to include the termal effects
112+
from the caprock (facie 7).
113+
106114
***********************
107115
Well-related parameters
108116
***********************

docs/_sources/introduction.rst.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@ The numerical simulations for the CO2 are performed using the
1111
Concept
1212
-------
1313
Simplified and flexible testing framework for the three cases in the SPE Comparative Solution Project
14-
using the open-source simulator OPM Flow. This is work in progress and current efforts focus on the
15-
implementation of dispersion.
14+
using the open-source simulator OPM Flow.
1615

1716
Overview
1817
--------

docs/_sources/output_folder.rst.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,8 @@ The simulation results are saved in the **flow** folder, and
1414
In addition, some figures are plotted in png format in the **figures** folder.
1515
Then after running **pyopmspe11**, one could modify the generated OPM related files and
1616
run directly the simulations calling the Flow solvers, e.g., to add tracers
17-
(see the OPM Flow documentation `here <https://opm-project.org/?page_id=955>`_).
17+
(see the OPM Flow documentation `here <https://opm-project.org/?page_id=955>`_).
18+
19+
.. tip::
20+
If you install the dev-requirements.txt, executing **pytest --cov=pyopmspe11 --cov-report term-missing tests/** runs the
21+
configuration files in the tests with different argument options for **pyopmspe11**, then one can see the different outputs.

docs/configuration_file.html

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -110,15 +110,15 @@ <h2>Reservoir-related parameters<a class="headerlink" href="#reservoir-related-p
110110
<span class="linenos">11</span><span class="mi">12</span> <span class="c1">#If cartesian, number of z cells [-]; if tensor, variable array of z-refinment; if corner-point, fix array of z-refinment (17 entries)</span>
111111
<span class="linenos">12</span><span class="mf">70.</span> <span class="mf">36.25</span> <span class="c1">#Temperature bottom and top rig [C]</span>
112112
<span class="linenos">13</span><span class="mf">19620000.</span> <span class="c1">#Pressure on the top [Pa]</span>
113-
<span class="linenos">14</span><span class="mf">1e-9</span> <span class="mf">2e-8</span> <span class="c1">#CO2 diffusion (in liquid and gas) [m^2/s]</span>
113+
<span class="linenos">14</span><span class="mf">1e-9</span> <span class="mf">2e-8</span> <span class="mi">0</span> <span class="c1">#Diffusion (in liquid and gas) [m^2/s] and dispersion [m] (disperison only available in Flow master)</span>
114114
<span class="linenos">15</span><span class="mf">8.5e-1</span> <span class="mf">2500.</span> <span class="c1">#Rock specific heat and density (for spe11b/c)</span>
115115
<span class="linenos">16</span><span class="mf">5e4</span> <span class="mf">1.</span> <span class="c1">#Pore volume on lateral boundaries and width of buffer cell [m] (for spe11b/c)</span>
116116
<span class="linenos">17</span><span class="mf">150.</span> <span class="mf">10.</span> <span class="c1">#Elevation of the parabola and back [m] (for spe11c)</span>
117117
</pre></div>
118118
</div>
119-
<p>In line 5 you specify if you are using OPM Flow from the master branch or from the latest stable release (OPM-flow 2023.4 release).
120-
This since there are continuous changues in the OPM master branch (e.g., the format of the boundary condition keyword BC). Then we
121-
will keep updating the decks for using Flow from master and also we will keep the framework to produce decks compatible for the latest OPM stable release .
119+
<p>In line 5 you specify if you are using OPM Flow from the master branch or from the latest stable release (OPM-flow 2023.10 release).
120+
This since there are continuous changues in the OPM master branch (e.g., implementation of mechanical dispersion). Then we
121+
will keep updating the decks for using Flow from master and also we will keep the framework to produce decks compatible for the latest OPM stable release.
122122
The immiscible model allows for faster prototyping while the complete model includes dissolution of the components in the
123123
gas and liquid phases, in addition to thermal effects. Regarding the grid type, the cartesian mode generates an uniform grid
124124
with the defined number of elements in lines 9 to 11. The tensor grid allows to define arrays in each direction where the grid
@@ -141,6 +141,11 @@ <h2>Reservoir-related parameters<a class="headerlink" href="#reservoir-related-p
141141
the corner-point grid using the same xy-arrays as in the tensor grid and for the z-refinment 4,4,3,3,5,3,7,5,13,5,7,5,3,9,21,21,2.</span><a class="headerlink" href="#id1" title="Link to this image"></a></p>
142142
</figcaption>
143143
</figure>
144+
<div class="admonition warning">
145+
<p class="admonition-title">Warning</p>
146+
<p>Dispersion seems to work fine for the spe11a case where there are no thermal effects nor water evaporation. However, for spe11b/c there are
147+
issues with the current implementation (we are working in this, then for now disperison should be set to 0 for spe11b/c).</p>
148+
</div>
144149
</section>
145150
<section id="soil-related-parameters">
146151
<h2>Soil-related parameters<a class="headerlink" href="#soil-related-parameters" title="Link to this heading"></a></h2>
@@ -169,7 +174,7 @@ <h2>Soil-related parameters<a class="headerlink" href="#soil-related-parameters"
169174
<span class="linenos">40</span><span class="n">PERM4</span> <span class="mf">506.625</span> <span class="n">PORO4</span> <span class="mf">0.20</span> <span class="n">THCONR4</span> <span class="mf">1.25</span>
170175
<span class="linenos">41</span><span class="n">PERM5</span> <span class="mf">1013.25</span> <span class="n">PORO5</span> <span class="mf">0.25</span> <span class="n">THCONR5</span> <span class="mf">0.92</span>
171176
<span class="linenos">42</span><span class="n">PERM6</span> <span class="mf">2026.50</span> <span class="n">PORO6</span> <span class="mf">0.35</span> <span class="n">THCONR6</span> <span class="mf">0.26</span>
172-
<span class="linenos">43</span><span class="n">PERM7</span> <span class="mi">0</span> <span class="n">PORO7</span> <span class="mi">0</span> <span class="n">THCONR7</span> <span class="mf">2.00</span>
177+
<span class="linenos">43</span><span class="n">PERM7</span> <span class="mi">0</span> <span class="n">PORO7</span> <span class="mf">1E-6</span> <span class="n">THCONR7</span> <span class="mf">2.00</span>
173178
</pre></div>
174179
</div>
175180
<figure class="align-default">
@@ -181,6 +186,11 @@ <h2>Soil-related parameters<a class="headerlink" href="#soil-related-parameters"
181186
<p><span class="caption-text">Visualization in ResInsight of the relative permeability and capillary pressure functions in the facie 1.</span><a class="headerlink" href="#id2" title="Link to this image"></a></p>
182187
</figcaption>
183188
</figure>
189+
<div class="admonition note">
190+
<p class="admonition-title">Note</p>
191+
<p>For spe11b/c, adding a small value of porosity in facie 7 (i.e., 1E-6 in this example), allows to include the termal effects
192+
from the caprock (facie 7).</p>
193+
</div>
184194
</section>
185195
<section id="well-related-parameters">
186196
<h2>Well-related parameters<a class="headerlink" href="#well-related-parameters" title="Link to this heading"></a></h2>

docs/introduction.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,7 @@ <h1>Introduction<a class="headerlink" href="#introduction" title="Link to this h
9191
<section id="concept">
9292
<h2>Concept<a class="headerlink" href="#concept" title="Link to this heading"></a></h2>
9393
<p>Simplified and flexible testing framework for the three cases in the SPE Comparative Solution Project
94-
using the open-source simulator OPM Flow. This is work in progress and current efforts focus on the
95-
implementation of dispersion.</p>
94+
using the open-source simulator OPM Flow.</p>
9695
</section>
9796
<section id="overview">
9897
<h2>Overview<a class="headerlink" href="#overview" title="Link to this heading"></a></h2>

docs/output_folder.html

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,11 @@ <h1>Output folder<a class="headerlink" href="#output-folder" title="Link to this
9393
Then after running <strong>pyopmspe11</strong>, one could modify the generated OPM related files and
9494
run directly the simulations calling the Flow solvers, e.g., to add tracers
9595
(see the OPM Flow documentation <a class="reference external" href="https://opm-project.org/?page_id=955">here</a>).</p>
96+
<div class="admonition tip">
97+
<p class="admonition-title">Tip</p>
98+
<p>If you install the dev-requirements.txt, executing <strong>pytest –cov=pyopmspe11 –cov-report term-missing tests/</strong> runs the
99+
configuration files in the tests with different argument options for <strong>pyopmspe11</strong>, then one can see the different outputs.</p>
100+
</div>
96101
</section>
97102

98103

docs/pyopmspe11.core.html

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,11 @@
4444
</form>
4545
</div>
4646
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
47-
<ul class="current">
47+
<ul>
4848
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
4949
<li class="toctree-l1"><a class="reference internal" href="configuration_file.html">Configuration file</a></li>
5050
<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a></li>
51-
<li class="toctree-l1 current"><a class="reference internal" href="api.html">pyopmspe11 Python API</a><ul class="current">
52-
<li class="toctree-l2 current"><a class="reference internal" href="api.html#pyopmspe11">pyopmspe11</a><ul class="current">
53-
<li class="toctree-l3 current"><a class="reference internal" href="pyopmspe11.html">pyopmspe11 package</a><ul class="current">
54-
<li class="toctree-l4 current"><a class="reference internal" href="pyopmspe11.html#subpackages">Subpackages</a></li>
55-
<li class="toctree-l4"><a class="reference internal" href="pyopmspe11.html#module-pyopmspe11">Module contents</a></li>
56-
</ul>
57-
</li>
58-
</ul>
59-
</li>
60-
</ul>
61-
</li>
51+
<li class="toctree-l1"><a class="reference internal" href="api.html">pyopmspe11 Python API</a></li>
6252
<li class="toctree-l1"><a class="reference internal" href="output_folder.html">Output folder</a></li>
6353
<li class="toctree-l1"><a class="reference internal" href="about.html">About pyopmspe11</a></li>
6454
</ul>

docs/pyopmspe11.core.pyopmspe11.html

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,11 @@
4444
</form>
4545
</div>
4646
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
47-
<ul class="current">
47+
<ul>
4848
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a></li>
4949
<li class="toctree-l1"><a class="reference internal" href="configuration_file.html">Configuration file</a></li>
5050
<li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a></li>
51-
<li class="toctree-l1 current"><a class="reference internal" href="api.html">pyopmspe11 Python API</a><ul class="current">
52-
<li class="toctree-l2 current"><a class="reference internal" href="api.html#pyopmspe11">pyopmspe11</a><ul class="current">
53-
<li class="toctree-l3 current"><a class="reference internal" href="pyopmspe11.html">pyopmspe11 package</a><ul class="current">
54-
<li class="toctree-l4 current"><a class="reference internal" href="pyopmspe11.html#subpackages">Subpackages</a></li>
55-
<li class="toctree-l4"><a class="reference internal" href="pyopmspe11.html#module-pyopmspe11">Module contents</a></li>
56-
</ul>
57-
</li>
58-
</ul>
59-
</li>
60-
</ul>
61-
</li>
51+
<li class="toctree-l1"><a class="reference internal" href="api.html">pyopmspe11 Python API</a></li>
6252
<li class="toctree-l1"><a class="reference internal" href="output_folder.html">Output folder</a></li>
6353
<li class="toctree-l1"><a class="reference internal" href="about.html">About pyopmspe11</a></li>
6454
</ul>

0 commit comments

Comments
 (0)