Commit Graph

20230 Commits

Author SHA1 Message Date
Arne Morten Kvarving
741e97da61 Parameters::IsSet split out parts of implementation
allows putting it in translation unit
2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
98b33d582f Parameters::Register split out parts of implementation
allows putting it in translation unit
2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
48bcf6ac04 Parameters::Hide split out main implementation
allows putting it in translation unit
2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
7584f588a7 parametersystem: parseKey/transformKey can now be implementation details 2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
427b619ca5 parametersystem: use a std::function instead of template parameter for callback
allows putting implementation in translation unit and this is hardly
performance critical
2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
bc83bb6e1c parametersystem: introduce translation unit 2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
05f01bf819 parametersystem.hh: rename to .hpp 2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
2bdab9e518 parametersystem: pass add callback for adding keys to positional parameter handler
this way the backing store for the parameters can be an implementation
detail of the parameter system
2024-09-05 10:07:40 +02:00
Bård Skaflestad
be94b037bc
Merge pull request #5579 from bska/dont-count-cells-if-not-needed
Don't Count Cells Unless Needed
2024-09-05 10:04:41 +02:00
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