Commit Graph

20374 Commits

Author SHA1 Message Date
Bård Skaflestad
329ad50e59 Don't Count Cells Unless Needed
If the user chooses a specific number of NLDD domains, there is no
need to compute the default number of domains based on a specific
target number of cells per domain.  Defer the, potentially costly,
calculation to when we know we need it.

While here, also split/rejoin a couple of long lines.
2024-09-05 09:45:16 +02:00
Bård Skaflestad
415d1a1173
Merge pull request #5572 from bska/wphase-sfunc-consistency-checks-impl
Add Water Phase Saturation Function Consistency Checks
2024-09-04 15:02:00 +02:00
Bård Skaflestad
be64ef3ef6 Add Water Phase Saturation Function Consistency Checks
This commit introduces a set of consistency checks for the water
phase saturation functions.  These plug into the framework
introduced in commit c3939c544 (PR #5438).  We implement the
following three checks

  - 0 <= SWL < 1
  - 0 < SWU <= 1
  - SWL <= SWCR < SWU

which collectively enable a non-negative oil saturation in the two
phase oil/water system.
2024-09-04 13:47:33 +02:00
Arne Morten Kvarving
f4801ec787
Merge pull request #5576 from akva2/fix_build_no_float_no_mpi
Fix build without float simulators
2024-09-04 13:45:42 +02:00
Bård Skaflestad
d69d929d37
Merge pull request #5571 from bska/gphase-sfunc-consistency-checks-impl
Add Gas Phase Saturation Function Consistency Checks
2024-09-04 13:02:25 +02:00
Arne Morten Kvarving
d36fefd428 fixed: build without MPI 2024-09-04 12:51:05 +02:00
Arne Morten Kvarving
c4871367e8 fixed: building without float simulators
pointy hat is all mine
2024-09-04 12:51:05 +02:00
Bård Skaflestad
da1e7b1114
Merge pull request #5575 from akva2/parallel_tu
Add some more translation units for code from opm-models
2024-09-04 12:46:05 +02:00
Arne Morten Kvarving
f838cb6ecf timer: introduce translation unit 2024-09-04 12:06:52 +02:00
Arne Morten Kvarving
b3e08b4f2f timer.hh: rename to timer.hpp 2024-09-04 12:06:35 +02:00
Arne Morten Kvarving
13b575eae9 tasklets: introduce translation unit 2024-09-04 12:06:21 +02:00
Arne Morten Kvarving
d35d80427e tasklets.hh: rename to tasklets.hpp 2024-09-04 12:06:21 +02:00
Arne Morten Kvarving
27f9277c47 mpiutil: add translation unit 2024-09-04 12:06:21 +02:00
Arne Morten Kvarving
fcd0168691 mpiutil.hh: rename to mpiutil.hpp 2024-09-04 12:06:21 +02:00
Arne Morten Kvarving
e7a9c4cd21 threadmanager: remove unused typetag template parameter
and move implementation to a translation unit
2024-09-04 12:06:21 +02:00
Bård Skaflestad
9c246faefa Add Gas Phase Saturation Function Consistency Checks
This commit introduces a set of consistency checks for the gas phase
saturation functions.  These plug into the framework introduced in
commit c3939c544 (PR #5438).  We implement the following three checks

  - 0 <= SGL < 1
  - 0 <= SGU < 1
  - SGL <= SGCR < SGU

which collectively enable a non-negative oil saturation in the two
phase gas/oil system.
2024-09-04 11:34:39 +02:00
Arne Morten Kvarving
3ee5eddf48 threadmanager.hh: rename to threadmanager.hpp 2024-09-04 11:32:21 +02:00
Bård Skaflestad
44d22a05ba
Merge pull request #5574 from akva2/blackoilparams_tu
BlackoilXXParams: introduce translation units
2024-09-04 11:31:19 +02:00
Arne Morten Kvarving
55a0a6da54 blackoilsolventparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 11:17:40 +02:00
Arne Morten Kvarving
6ceeb3098e blackoilsolventparams.hh: rename to blackoilsolventparams.hpp 2024-09-04 11:17:40 +02:00
Arne Morten Kvarving
3aed1aa7f9 blackoilpolymerparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 11:17:40 +02:00
Bård Skaflestad
b2863da3c9
Merge pull request #5560 from akva2/add_flow_blackoil_float
Add float blackoil simulator
2024-09-04 10:23:30 +02:00
Arne Morten Kvarving
85cc5ffa5f blackoilpolymerparams.hh: rename to blackoilpolymerparams.hpp 2024-09-04 09:21:09 +02:00
Arne Morten Kvarving
5a567de3e2 blackoilmicpparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 09:17:26 +02:00
Arne Morten Kvarving
e1453e5a48 blackoilmicpparams.hh: rename to blackoilmicpparams.hpp 2024-09-04 09:16:34 +02:00
Arne Morten Kvarving
f6d3893093 blackoilfoamparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 09:13:02 +02:00
Arne Morten Kvarving
6bb6e3db43 blackoilfoamparams.hh: rename to blackoilfoamparams.hpp 2024-09-04 09:11:58 +02:00
Arne Morten Kvarving
a04d9fdd00 blackoilextboparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 09:08:12 +02:00
Arne Morten Kvarving
9fd99ab232 blackoilexboparams.hh: rename to blackoilextboparams.hpp 2024-09-04 09:06:59 +02:00
Arne Morten Kvarving
a51e13c244 blackoilbrineparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 09:02:17 +02:00
Arne Morten Kvarving
99d64ff7ec blackoilbrineparams.hh: rename to blackoilbrineparams.hpp 2024-09-04 09:00:02 +02:00
Bård Skaflestad
5b9051a120
Merge pull request #5570 from bska/ophase-sfunc-consistency-checks-impl
Add Oil Phase Saturation Function Consistency Checks
2024-09-03 12:49:12 +02:00
Bård Skaflestad
2e70fc407e Add Oil Phase Saturation Function Consistency Checks
This commit introduces a set of consistency checks for the oil phase
saturation functions.  These plug into the framework introduced in
commit c3939c544 (PR #5438).  We implement the following four checks
for the gas/oil two-phase system

  - 0 <= SOGCR < 1
  - SWL + SGU <= 1
  - SOGCR < 1 - SWL - SGL
  - SOGCR < 1 - SWL - SGCR

which all guarantee a non-negative (mobile) oil saturation in the
gas/oil system.  Similarly, we implement the following four checks
for the oil/water two-phase system

  - 0 <= SOWCR < 1
  - SGL + SWU <= 1
  - SOWCR < 1 - SWL - SGL
  - SOWCR < 1 - SWCR - SGL

which provide the same guarantees as outlined above, but for the
oil/water system.

We add a base class, PhaseCheckBase<Scalar>, which provides a common
representation of the violated/critical predicates and implement the
specific checks as derived types of this base class.
2024-09-03 12:35:44 +02:00
Bård Skaflestad
f3db66057f
Merge pull request #4627 from akva2/import_opm_models
Import opm-models
2024-09-03 11:15:42 +02:00
Bård Skaflestad
a26b981f45 Don't Require Floating Point from_chars() Function
This commit broadens the scope of commit 2ad332e0b (PR #922) to
apply to all compilers/libraries, not just Clang/libc++, which do
not have support for floating-point types in std::from_chars().
While hopefully a transient situation, this enables building the
parameter system with GCC versions prior to GCC 11.  We expect to
require version 11 in the not too distant future, though.  At that
point we should revert this commit.

We use a configure-time feature test of the compiler (CMake command
'try_compile') to detect whether or not the compiler supports
floating-point overloads of std::from_chars() and emit the result to
config.h as the new preprocessor symbol

    HAVE_FLOATING_POINT_FROM_CHARS

We use std::strtod() as the fall-back alternative for floating point
conversion if this symbol is defined to false (zero).
2024-09-03 10:49:49 +02:00
Arne Morten Kvarving
e3a16df477 add imported opm-models code to buildsystem 2024-09-03 10:49:49 +02:00
Arne Morten Kvarving
bc46647aa5 Import opm-models 2024-09-02 10:55:19 +02:00
Bård Skaflestad
d90d7113e0
Merge pull request #5569 from akva2/fix_python_depends
fixed: make python simulator object depend on copy_python
2024-09-02 09:39:09 +02:00
Arne Morten Kvarving
a78337fc33 fixed: make python simulator object depend on copy_python
if not building just the python binding won't end up in
a complete build
2024-09-02 08:21:36 +02:00
Bård Skaflestad
d591c5ab3c
Merge pull request #5565 from bska/fix-logic-statement
Fix DRVDT Initialisation Conditional
2024-08-30 17:36:35 +02:00
Arne Morten Kvarving
ed11ba604d
Merge pull request #5567 from akva2/add_python_packaging
add python packaging fluff
2024-08-30 17:04:11 +02:00
Bård Skaflestad
f5aeffc8f5 Merge pull request #896 from akva2/floats
Add necessary changes to build float simulators
2024-08-30 15:28:34 +02:00
Bård Skaflestad
a73cb6ee93 Fix DRVDT Initialisation Conditional
It does not make sense to pass

    episodeIdx && maxDRv_.empty()

as an argument to drvdtActive().
2024-08-30 15:16:46 +02:00
Arne Morten Kvarving
07f5fdd35b add float variant for flow blackoil 2024-08-30 15:09:25 +02:00
Atgeirr Flø Rasmussen
58ce7cbc7c
Merge pull request #5556 from akva2/float_support5
Float support in simulators: Batch 5
2024-08-30 15:06:35 +02:00
Bård Skaflestad
a84359c1f7
Merge pull request #5566 from atgeirr/fix-cpp20ism
Avoid capturing structured bindings.
2024-08-30 14:31:27 +02:00
Arne Morten Kvarving
0203f74b3f add python packaging fluff 2024-08-30 14:28:25 +02:00
Atgeirr Flø Rasmussen
9dd54fb11a Avoid capturing structured bindings.
This is an error before C++20, and clang refuses it.
2024-08-30 13:17:07 +02:00
hnil
eb1b2c6711 fixing some of output 2024-08-30 09:46:23 +02:00
Kai Bao
f47d00c9d7
Merge pull request #5236 from hnil/no_early_exit_zero_flux
Avoid deleting derivative i.e. getting "wrong" matrix in case of zero…
2024-08-29 14:46:09 +02:00