Commit Graph
6024 Commits
Author SHA1 Message Date
Arne Morten Kvarving c7c15fbe23 vtkcompositionmodule.hh: rename to vtkcompositionmodule.hpp 2024-09-16 15:17:50 +02:00
Arne Morten Kvarving 6a1b33c793 vtkblackoilmodule.hh: rename to vtkblackoilmodule.hpp 2024-09-16 15:17:50 +02:00
Arne Morten Kvarving 3a5d527417 Merge pull request #5602 from totto82/fixBHPCO2
BUGFIX fix injection bhp pressure for CO2/H2 STORE
2024-09-13 15:48:17 +02:00
Tor Harald Sandve 50a4742c23 Merge pull request #5323 from vkip/energy_efficiency_factor
Apply well/group efficiency factors for connection energy rates.
2024-09-13 12:48:36 +02:00
Kjetil Olsen Lye 567a3bc0fa Merge pull request #5606 from multitalentloes/fix_opmcuilu0_name
update OpmCuILU0 to OpmGpuILU0
2024-09-13 10:25:10 +02:00
Tor Harald Sandve d13b4a3956 BUGFIX fix injection bhp pressure for CO2/H2 STORE 2024-09-13 09:17:37 +02:00
Tobias Meyer Andersen 0bab02f809 update name of opm cuilu0 to match gpuistl 2024-09-13 09:15:19 +02:00
Atgeirr Flø Rasmussen 8de619111b Merge pull request #5476 from jakobtorben/remove_bug_in_simple_iteration_timestep_control
Set correct target iterations in SimpleIterationTimestepControl
2024-09-12 21:43:18 +02:00
Arne Morten Kvarving 6d8b5b204b fixed: make sure we have valid indices in readInitialCondition_
quells warnings building flowexp_comp
2024-09-12 10:56:44 +02:00
Kai Bao 2c75adf165 adding a compositional simulator
flowexp_comp
2024-09-11 14:58:33 +02:00
Kai Bao 85513754bc splitting Blackoil related to FlowProblemBlackoil
so FlowProblem can be used for compositional or other setting
2024-09-11 14:58:14 +02:00
Arne Morten Kvarving e559fc371b MPIPacker: mark buffer const in unpacker functions 2024-09-11 12:46:44 +02:00
Arne Morten Kvarving e808a3d2f3 adjust to change in MemPacker unpack signature 2024-09-11 12:46:44 +02:00
Bård Skaflestad fc8135894c Merge pull request #5594 from bska/fix-sgmax-consistency-check
Fix Consistency Check for Maximum Gas Saturation
2024-09-11 08:48:23 +02:00
Arne Morten Kvarving 7fb5260e53 Merge pull request #5593 from multitalentloes/fix_macro_todo
reolve gpuistl macro todo
2024-09-10 20:10:30 +02:00
Tobias Meyer Andersen 9d8679ccc6 reolve temporary macro todo 2024-09-10 15:44:20 +02:00
Bård Skaflestad ba1419b31f Fix Consistency Check for Maximum Gas Saturation
The earlier condition

    0 <= SGU < 1

was not appropriate and would, for instance, fail the NORNE_ATW2013
test case in which SGU = 1 in the unscaled table for saturation
region 1.  Revise the condition to be more in line with that of SWU,
i.e., as

    0 < SGU <= 1

Pointy Hat: [at]bska
2024-09-10 15:44:16 +02:00
Tobias Meyer Andersen 5947090a9e update the name of the solver to fit with gpuistl 2024-09-10 14:10:58 +02:00
Arne Morten Kvarving 2a9d81227b changed: subclass Main for python
move the initFlowBlackoil method into it

in particular we then avoid the FlowMainType type alias
in Main.hpp
2024-09-09 14:28:20 +02:00
Arne Morten Kvarving fc96e9da75 Main: mark some members protected
to enable subclassing
2024-09-09 14:28:11 +02:00
Bård Skaflestad 3de20b46b6 Add Saturation Function Consistency Checks for SCALECRS
This commit introduces consistency checks for the scaled displacing
saturation in the three point horizontal scaling method
(SCALECRS=YES).  These plug into the framework introduced in commit
c3939c544 (PR #5438).  We implement the following two checks

  - SGCR < 1-SOGCR-SWL < SGU
  - SWCR < 1-SOWCR-SGL < SWU

which collectively guarantee a mobile displacing oil saturation in
the two phase gas/oil and oil/water systems.
2024-09-05 10:36:43 +02:00
Arne Morten Kvarving 4967323c29 Parameters::printValues: drop default parameter for stream 2024-09-05 10:08:09 +02:00
Arne Morten Kvarving 3161b4f547 ParameterSystem: add function to query if registration is open 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 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 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
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 b3e08b4f2f timer.hh: rename to timer.hpp 2024-09-04 12:06:35 +02:00
Arne Morten Kvarving d35d80427e tasklets.hh: rename to tasklets.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 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 3aed1aa7f9 blackoilpolymerparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 11:17:40 +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 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 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 a51e13c244 blackoilbrineparams: introduce translation unit
move code for loading parameters from eclipse state into it
2024-09-04 09:02:17 +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 bc46647aa5 Import opm-models 2024-09-02 10:55:19 +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
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
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
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
Vegard Kippe eb869f211f Avoid time step dependent jump in RS after restart 2024-08-28 16:28:51 +02:00
Vegard Kippe 0b6dd93903 Avoid negative time step size after restart (trouble for DRSDT init) 2024-08-28 15:04:15 +02:00
Vegard Kippe 0485bfb47f Set correct episode before initial call to invalidateAndUpdateIntensiveQuantities 2024-08-28 15:04:15 +02:00
Vegard Kippe 8f45cbe4c4 Properly initialize mixing controls after restart. 2024-08-28 15:04:15 +02:00
Vegard Kippe cc08df226e Update after merging #5527 2024-08-28 15:04:15 +02:00
Bård Skaflestad 9dca8256f3 Split Request Writing Into Stages
This commit introduces helper functions for each individual part of
a convergence report record in the INFOITER file.  In particular, we
create helpers for

  - Time related columns (report step, time step, time &c)
  - CNV pore-volume histogram columns
  - Reservoir convergence metrics (CNV and MB values per phase)
  - Well convergence metrics

This makes the body of the main loop in writeConvergenceRequest()
slightly easier to read and means that we can apply some additional
logic to the CNV pore-volume histograms if the number of values does
not match the expected 3 per type.  In that case we output sentinel
values (e.g., NaN and -1) to signify that the corresponding pieces
of information are unavailable.
2024-08-27 10:50:06 +02:00