Commit Graph

2144 Commits

Author SHA1 Message Date
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
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
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
0b40277e01 Revise Convergence Report Collection Procedure
This commit switches the parallel implemenation of function
Opm::gatherConvergenceReport() into using the general serialisation
framework (classes Opm::Serializer<> and Opm::Mpi::Packer).  In
particular, we add serializeOp() functions to each of the types

  - ConvergenceReport
  - ConvergenceReport::ReservoirFailure
  - ConvergenceReport::ReservoirConvergenceMetric
  - ConvergenceReport::WellFailure

and defer the job of converting the objects between in-memory and
byte stream representations to Opm::Serializer<>.  The new special
purpose class CollectConvReports inherits from the latter and uses
its pack() and unpack() member functions, along with its internal
m_buffer data member, to distribute each rank's convergence report
object to all ranks.  We add this feature here, in a very narrowly
scoped use case, to enable testing and experimentation before we
consider adding this distribution mechanism as a general feature in
Opm::MpiSerializer.
2024-08-27 10:50:06 +02:00
Bård Skaflestad
1a6b063824
Merge pull request #5559 from akva2/janitoring
do not capture compile time data in lambda
2024-08-26 10:34:36 +02:00
Arne Morten Kvarving
fb9f7541f3 do not capture compile time data in lambda
quells clang warnings
2024-08-26 08:27:34 +02:00
Tobias Meyer Andersen
d925d62bf2 refactor cusparsematrixoperations 2024-08-23 11:15:18 +02:00
Tobias Meyer Andersen
d2681b26ed refactor opm_cuda_safe_call 2024-08-23 11:12:13 +02:00
Tobias Meyer Andersen
85a9ad2b61 refactor cuistl folder names 2024-08-22 15:32:21 +02:00
Tobias Meyer Andersen
5919b417e3 refactor cuview 2024-08-22 15:27:23 +02:00
Tobias Meyer Andersen
fba1858f42 refactor cuvector 2024-08-22 15:20:20 +02:00
Tobias Meyer Andersen
3aa1767548 refactor cusparsematrix 2024-08-22 15:14:33 +02:00
Tobias Meyer Andersen
0c1ea3ee4d refactor cuseqilu0 2024-08-22 15:07:53 +02:00
Tobias Meyer Andersen
1721a1071f refactor cuowneroverlapcopy 2024-08-22 14:46:38 +02:00
Tobias Meyer Andersen
158619083e refacor cujac 2024-08-22 14:40:23 +02:00
Tobias Meyer Andersen
d17ee3315b refactor CuDILU 2024-08-22 14:28:33 +02:00
Tobias Meyer Andersen
69897753e8 refactor CuBuffer 2024-08-22 14:12:30 +02:00
Tobias Meyer Andersen
3f4ae4ddf4 refactor cuistl namespace 2024-08-22 13:52:50 +02:00
jakobtorben
5d54c50ba0 Add method for defining if preconditioners should be recreated 2024-08-20 17:57:38 +02:00
Arne Morten Kvarving
965c89d7a2 added: (restart-)serialization test for MixingRateControls 2024-08-19 14:03:47 +02:00
Arne Morten Kvarving
b902f83fa6 BlackoilModelParameters: introduce translation unit 2024-08-16 17:15:53 +02:00
Arne Morten Kvarving
280704e2e0 move AdaptiveTimeStepping parameters to TypeTag-free parameter system 2024-08-16 13:22:17 +02:00
Arne Morten Kvarving
e2b8715b42 move EclTimeStepping parameters to TypeTag-free parameter system 2024-08-16 13:22:17 +02:00
Arne Morten Kvarving
3716ee664d move BlackoilModel parameters to TypeTag-free parameter system 2024-08-16 13:20:04 +02:00
Arne Morten Kvarving
aab40a32e2 move EnableTerminalOutput parameter to TypeTag-free parameter system 2024-08-16 13:17:56 +02:00
Arne Morten Kvarving
64557a136d NewtonMaxIterations moved to TypeTag-free parameter system 2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
0195f8f113 NewtonTolerance moved to TypeTag-free parameter system 2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
43f9a46b51 ContinueOnConvergenceError moved to TypeTag-free parameter system 2024-08-13 13:31:11 +02:00
Arne Morten Kvarving
9e11888ccb ThreadsPerProcess moved to TypeTag-free parameter system 2024-08-12 14:48:56 +02:00
Kjetil Olsen Lye
eb3d4e9203
Merge pull request #5441 from multitalentloes/add_opm_cuilu0
Add OpmCuILU0 and clean up cuistl
2024-08-12 09:46:37 +02:00
Tobias Meyer Andersen
7a30aaa46e Add an OPM implementation of ILU0
improve file structure in cuistl
run clang-format
2024-08-09 15:52:42 +02:00
Arne Morten Kvarving
edb99264ea add test for new parameter system 2024-08-09 15:29:27 +02:00
Arne Morten Kvarving
e1bcd00a36 adapt to ParameterSystem typetag removal 2024-08-09 10:56:07 +02:00
Arne Morten Kvarving
a65ddff8f6 changed: BlackoilModel parameters moved to Opm::Parameters namespace 2024-08-06 09:50:02 +02:00
Arne Morten Kvarving
d75b91aaba changed: SimulatorFullyImplicitBlackoil parameters moved to Opm::Parameters namespace 2024-08-06 09:50:02 +02:00
Kjetil Olsen Lye
51e8bb7191
Merge pull request #5392 from multitalentloes/add_CuBuffer
Add CuBuffer and CuView
2024-08-05 15:29:59 +02:00
Tobias Meyer Andersen
e8ac31da16 add CuBuffer and CuView to cuISTL 2024-08-01 16:38:16 +02:00
Tor Harald Sandve
f678c082de Adapt to inj prefix and cleanup 2024-08-01 11:23:00 +02:00
Tor Harald Sandve
5f8916c0c3 Use cell temperature in perforated cell to compute reservoir rates 2024-08-01 11:14:29 +02:00
Markus Blatt
03dc006b88
Merge pull request #5488 from lisajulia/fix/ACTIONX-COMPDAT
Fix/actionx compdat
2024-07-30 17:18:04 +02:00
Lisa Julia Nebel
3d8c1a11b7 Add option to compare two parallel runs 2024-07-25 16:26:20 +02:00
Atgeirr Flø Rasmussen
3e3dd7fa26 BSD and macOS getopts require options first. 2024-07-25 16:19:59 +02:00
Markus Blatt
ca2ef490aa
Merge pull request #5408 from BigDataAccelerate/cpr_rocsparse
rocsparse CPR initial version
2024-07-16 18:57:40 +02:00
Lisa Julia Nebel
c92bad8cfe Change asserts to BOOST_REQUIRE_* in test_tasklets_failure 2024-07-15 14:56:26 +02:00
Lisa Julia Nebel
c78a629528 Fix indentation 2024-07-15 14:52:47 +02:00
Lisa Julia Nebel
0a70296eb9 Change pointer to tasklet runners to smart pointer and add comment about why they are created on the heap 2024-07-15 14:51:52 +02:00
Lisa Julia Nebel
c73a51650f Change lock mechanism to std::lock_guard 2024-07-15 14:22:28 +02:00
Lisa Julia Nebel
4d0179cffc Implement a more polling-based interface for the tasklets failure mechanism 2024-07-12 15:12:41 +02:00