Commit Graph

1147 Commits

Author SHA1 Message Date
Tor Harald Sandve
a45ad36c70 Add rsw to restart arrays and remove temperature 2024-10-17 08:53:17 +02:00
Tor Harald Sandve
438e40b143 FIX gas-water restart 2024-10-15 10:34:32 +02:00
Bård Skaflestad
65654c8e01 Use Rank's Local Cells for Tracer Concentration Restart
The 'globalIdx' generated by localIdxToGlobalIdx() is in the range
zero to number of active cells in global model, not zero to number
of active cells on rank.  Using 'globalIdx' as an argument to
set*TracerConcentration() therefore ends up indexing out-of-bounds
for the internal arrays in the tracer model object in parallel
restarted simulation runs.

The problem has been present since the restart support for tracers
was added in commit e9c45f4ca (PR #3708).

This commit switches to using the 'elemIdx' instead, as we already
do when calling the output module's setRestart() member function.
Following this, we are able to restart the standard Norne benchmark
case (NORNE_ATW2013.DATA) in parallel.  The numerical results for
the tracer concentrations are, however, a little questionable and
will warrant further investigation.  Nevertheless, the tracer values
are now the same in a parallel restarted run as in a sequential
restarted run.
2024-10-11 18:05:48 +02:00
Atgeirr Flø Rasmussen
a7efc0091d
Merge pull request #5341 from jakobtorben/NLDD_remove_need_for_addWellContrib
Remove the need for add well contributions to matrix for NLDD
2024-10-10 16:23:52 +02:00
jakobtorben
3ea5c5820e Add well operator for NLDD domains 2024-10-10 15:12:48 +02:00
Bård Skaflestad
71079ce737 Initialise Fluid-in-Place Balance Sheets at Restart
Commit 6ba9dc086 (PR #5626) moved the balance sheet report output
logic ahead of the timestep.  As a consequence, the output module's
'inplace_' and 'initialInplace_' data members must be fully
initialised the first time we call 'writeReports()' if the run
requests balance sheet output.

This commit initialises those objects by calling calc_inplace() from
EclWriter<>::endRestart().  Doing so restores the behaviour from
before PR #5626.  Note, however, that using this value for
'initialInplace_' is incorrect as the simulator then, in a restarted
run, will calculate recovery factors based on the fluid distribution
at the restart time instead of at the start of the base run.
Nevertheless this is, as alluded to earlier, how the simulator has
always performed.  The behaviour is just a little more explicit now.
2024-10-10 12:47:13 +02:00
Bård Skaflestad
9344423d04 Varnish EclWriter::beginRestart() Implementation
In particular,

  - Split some long lines
  - Mark objects 'const' where possible
  - Reduce scope of objects
  - Add braces to single statement control structures
  - Prefer pre-increment
  - Prefer type deduction for induction variables
2024-10-10 11:35:21 +02:00
Vegard Kippe
ac5de96ad4 Add dampening to the injectivity multipliers (WINJMULT) 2024-10-08 15:49:10 +02:00
Bård Skaflestad
6a7efcbcaa
Merge pull request #5645 from kjetilly/flowexp_components
Support for 2 to 7 components in flowexp_comp
2024-10-08 09:25:08 +02:00
jakobtorben
58a8d5ee41 Map global index to local subdomain index in well operator 2024-10-07 09:13:00 +02:00
Markus Blatt
ed0e37e31d
Merge pull request #5577 from blattms/feature/full-pinch-option-4-all
Correctly treat transmissibilities for PINCH option(4) ALL.
2024-10-04 16:45:46 +02:00
Arne Morten Kvarving
55c42d7b83 one translation unit per instance 2024-10-04 14:45:34 +02:00
Bård Skaflestad
0b94f11b5c
Merge pull request #5625 from GitPaean/zmf_supporet
supporting ZMF explicit solution
2024-10-04 09:16:25 +02:00
Atgeirr Flø Rasmussen
9654215223
Merge pull request #5590 from jakobtorben/convergence_monitors
Convergence monitors
2024-10-04 08:21:03 +02:00
jakobtorben
b830208573 PR review changes 2024-10-03 18:05:06 +02:00
Kai Bao
29deffda26 addressing reviewing comments for PR OPM/opm-simulators#5625 2024-10-03 16:06:23 +02:00
Stein Krogstad
5713c68992 Add option to check group constraints during local well solve - set default to true 2024-10-03 11:36:17 +02:00
jakobtorben
ff20c1f809 Fix calculation of distance 2024-10-03 08:56:39 +02:00
jakobtorben
6ff83e19ae Write penalty count to infoiter file 2024-10-03 08:56:39 +02:00
jakobtorben
71a64fbd13 Ensure correct propagation of failed report 2024-10-03 08:56:39 +02:00
jakobtorben
6d53daaa42 Store report of failed step before cutting from convergence monitoring 2024-10-03 08:56:39 +02:00
jakobtorben
eef0ba50bf Change non-convergence monitor to checking if number of non-converged has increased 2024-10-03 08:56:39 +02:00
jakobtorben
cda47a6387 Register convergence monitoring parameters 2024-10-03 08:56:39 +02:00
jakobtorben
5f17c9de6a Cut timestep if penlaty exceeds limit 2024-10-03 08:56:39 +02:00
jakobtorben
d476a328de Add distance decay penalty 2024-10-03 08:56:39 +02:00
jakobtorben
3e6f9c52bb Reset the total penalty card after each nonlinear iteration 2024-10-03 08:56:39 +02:00
jakobtorben
e1e577fab1 Add penalty for unconverged well 2024-10-03 08:56:39 +02:00
jakobtorben
861cfeec49 Add penalty card for increase in convergence metrics 2024-10-03 08:56:39 +02:00
Kai Bao
562da9ef70 support ZMF explicit initialization 2024-10-02 22:08:19 +02:00
Kai Bao
69c6294978 set newton tolerance to be 1.e-7 for compositional running 2024-10-01 15:54:25 +02:00
Bård Skaflestad
919f30029f
Merge pull request #5635 from akva2/dont_store_sched_deck
changed: don't store schedule keywords unless required in simulators
2024-10-01 13:12:21 +02:00
Markus Blatt
e743f2aa1e Skip bogus warning about missing cells for PINCH NNCs
Cells are only missing if both are in the ghost overlap layer.
In this case we do not have a connection here to keep the matrix
more sparse.
2024-10-01 11:15:11 +02:00
Markus Blatt
9e31831917 [Cleanup] Adapt to changed return values from PINCH processing. 2024-10-01 11:15:11 +02:00
Markus Blatt
4b3808fa93 [Refactor] Adapt to PINCH NNC separated from the normal ones.
This is also a preparation for correct MULTZ processing.
2024-10-01 11:15:11 +02:00
Markus Blatt
a56526607c Remove unneeded parameter from applyAllZMultipliers_ 2024-10-01 11:15:11 +02:00
Markus Blatt
e816ae4df3 Correctly treat transmissibilities for PINCH option(4) ALL.
In that case processEclipseFormat will create NNCs over the pinched
out cells with correct transmissibilities. Those NNCs are marked as
being created in PINCH and used to overwrite calculated
transmissibilties for the horizontal intersections (transmissibilities
of normal NNCs are usually added).

Note that the trnasmissibilities (without the multipliers) do not
change later. Only the multipliers can change them in the schedule and
that will still happen.
2024-10-01 11:15:11 +02:00
Arne Morten Kvarving
2353ba56a6 changed: don't store schedule keywords unless required in simulators
in the python simulator we cannot make this decision up front
since the schedule can be modified from python code so we have
to do the safe thing
2024-09-27 11:24:20 +02:00
Elyes Ahmed
265c7b8520 cleanup and removing wrong instructions 2024-09-26 10:27:13 +02:00
Elyes Ahmed
6c2e957df0 add changes to fix the order
enabling reordering as default
2024-09-25 10:26:02 +02:00
Bård Skaflestad
02555ac504
Merge pull request #5626 from vkip/rptsched_wells
Support RPTSCHED WELLS=N
2024-09-25 09:27:58 +02:00
Vegard Kippe
2c2b0bc930 Use the correct rstep for well reports 2024-09-24 16:27:18 +02:00
Bård Skaflestad
a38704ecb0 Implement 'RFIP' and 'SFIP' Mnemonics For RPTRST
The 'FIP' mnemonic continues to be an alias for 'SFIP' in the
current implementation, and the output layer will create the 'SFIP'
arrays as copies of 'FIP' if passed only the 'FIP' arrays.

To this end, make 'outputFipRestart_' into a structure that tracks
which of the *FIP mnemonics have been requested, and insert the
pertinent solution arrays into the data::Solution object when
needed.
2024-09-24 13:38:56 +02:00
Bård Skaflestad
096e0e11c9 Initialise Output Module's Boolean Flags
While here, also insert a few blank lines in the copyright statement
to make it more in line with the rest of opm-simulators.
2024-09-24 13:38:56 +02:00
Vegard Kippe
5745f92b08 Avoid unused variable warning 2024-09-24 13:00:34 +02:00
Vegard Kippe
6ba9dc086c Support RPTSCHED WELLS=N 2024-09-24 13:00:34 +02:00
Kai Bao
68503eb9b2 xmfData to ymfData, typo correction 2024-09-23 10:17:18 +02:00
Arne Morten Kvarving
048ae50255 add missing overrides 2024-09-17 07:52:10 +02:00
Arne Morten Kvarving
ea8ee36f51 FlowProblem: add virtual dtor 2024-09-17 07:51:56 +02:00
Bård Skaflestad
32886f6cb4
Merge pull request #5612 from akva2/more_tus
Split out vtk module parameters to separate translation units
2024-09-16 15:47:30 +02:00
Arne Morten Kvarving
1b19fa02f4 newtonmethodparameters.hh: rename to newtonmethodparams.hpp 2024-09-16 15:17:50 +02:00