Commit Graph

9193 Commits

Author SHA1 Message Date
Bård Skaflestad
93b059eca1
Merge pull request #4046 from akva2/mswellhelper_priv
make MSWellHelpers templates private
2022-09-01 16:44:15 +02:00
Bård Skaflestad
d1ba2ce5bc
Merge pull request #4045 from akva2/wellgrouphelper_priv
Make one more template private in WellGroupHelper
2022-09-01 16:33:43 +02:00
Arne Morten Kvarving
5052a09d6e make MSWellHelpers templates private 2022-09-01 15:17:04 +02:00
Arne Morten Kvarving
5d9ee32853 WellGroupHelpers: simply template instantation
use types for ParallelCommunication.hpp
2022-09-01 14:55:19 +02:00
Arne Morten Kvarving
2135a4268d WellGroupHelpers: make template private 2022-09-01 14:55:19 +02:00
Atgeirr Flø Rasmussen
92538b0612 Ensure intensive quantities are calculated at start of simulation.
Moving it ensures it is also done for restart simulation runs. Without
this, the well model will actually initialize the IQs, but only for
owned cells, not overlap/ghost cells, which caused parallel failure.
2022-09-01 14:00:42 +02:00
Arne Morten Kvarving
5824af3f1b use libfmt
also change from debug to error
2022-09-01 13:54:40 +02:00
Arne Morten Kvarving
6bd790fd16 avoid pointer semantics 2022-09-01 13:48:01 +02:00
Arne Morten Kvarving
a6517d6111 remove unused template 2022-09-01 13:37:54 +02:00
Arne Morten Kvarving
18d8914ef1 wellhelpers: remove indentation for namespaces 2022-09-01 13:37:11 +02:00
Arne Morten Kvarving
69db0dd175 wellhelpers: make templates private
to increase header encapsulation
2022-09-01 13:37:11 +02:00
Arne Morten Kvarving
2c0ff6f81e consistently use ParallelCommunication.hpp for communication definition 2022-09-01 12:26:11 +02:00
Arne Morten Kvarving
004e7e55fb avoid two communication calls
one less network latency cost
2022-08-31 12:54:47 +02:00
Markus Blatt
c58a30068e
Merge pull request #4027 from aritorto/lambda
Code modernization
2022-08-26 12:19:47 +02:00
Bård Skaflestad
949bb6ecb5
Merge pull request #4031 from akva2/use_std_array
changed: consistently use std::array
2022-08-26 10:14:17 +02:00
Bård Skaflestad
17ef437993
Merge pull request #4032 from akva2/remove_param_group
changed: remove unneeded includes for ParameterGroup
2022-08-26 09:55:55 +02:00
Arne Morten Kvarving
3b0b5b4708 changed: remove unneeded includes for ParameterGroup 2022-08-26 09:21:46 +02:00
Antonella Ritorto
57183081c8 Code modernization
Change from Functor class to functions.
2022-08-26 08:54:48 +02:00
Arne Morten Kvarving
a9590215dc changed: consistently use std::array 2022-08-26 08:28:46 +02:00
Arne Morten Kvarving
71ca7a0c40 changed: no need to pull in polyhedralgrid if it is not used 2022-08-26 08:25:05 +02:00
Tor Harald Sandve
9b7ba49495 Simplify and fix check for violation of GRUP for multiple level of guiderates 2022-08-25 16:09:53 +02:00
Arne Morten Kvarving
1a348c0d29 changed: get rid of duplicate MatrixBlock headers/classes
this has already led to some confusion. move some of the code
upstream to opm-models and remove the rest of the duplicated code.

the remainder of MatrixBlock.hpp is renamed to SmallDenseMatrixUtils.hpp
2022-08-25 12:48:53 +02:00
Atgeirr Flø Rasmussen
432df26ecc
Merge pull request #4025 from bska/remove-dune-unused
Prefer Attributes to Macros
2022-08-25 08:29:33 +02:00
Bård Skaflestad
a56cd6752c
Revert "changed: reduce some code duplication" 2022-08-24 20:34:52 +02:00
Bård Skaflestad
f3fc5331f0 Prefer Attributes to Macros 2022-08-24 17:05:55 +02:00
Bård Skaflestad
e66c7f6444
Merge pull request #4022 from akva2/reduce_dup
changed: reduce some code duplication
2022-08-24 16:53:16 +02:00
Bård Skaflestad
fe04df94e6
Merge pull request #4023 from atgeirr/fix-packing
Add packing support for classes needing it.
2022-08-24 16:44:06 +02:00
Atgeirr Flø Rasmussen
c0e5996b70
Merge pull request #4024 from atgeirr/silence-override-warning
Add override qualifier to silence warning.
2022-08-24 16:07:04 +02:00
Arne Morten Kvarving
447d77b579 changed: get rid of duplicate MatrixBlock headers/classes
this has already led to some confusion. move some of the code
upstream to opm-models and remove the rest of the duplicated code.

the remainder of MatrixBlock.hpp is renamed to SmallDenseMatrixUtils.hpp
2022-08-24 15:54:01 +02:00
Atgeirr Flø Rasmussen
6cf02813e5 Add override qualifier to silence warning. 2022-08-24 15:36:56 +02:00
Atgeirr Flø Rasmussen
51e5459be5 Add packing support for classes needing it.
Since Rates is not longer a POD, it needs explicit
packSize()/pack()/unpack() support. This also applies
to classes containing Rates, namely Connection and Segment.
Similarly, SegmentPressures is not a POD.
2022-08-24 15:11:27 +02:00
Bård Skaflestad
6d3d64a843
Merge pull request #4015 from GitPaean/handling_numerical_aquifer_no_connection
ignoring analytical aquifers without valid connections
2022-08-24 09:59:26 +02:00
Kai Bao
c25e1392ba ignoring analytical aquifers without valid connections 2022-08-23 15:50:50 +02:00
Arne Morten Kvarving
3faccb4a17 changed: reduce some code duplication 2022-08-23 09:31:27 +02:00
Arne Morten Kvarving
3ef07d7f62 changed: put ParallelOverlappingILU0 in separate compile unit
i chose to split in a separate _impl file because this code is so
generic that there may be downstream users who want to use on other
matrix types than what we use in opm-simulators.
2022-08-22 11:21:31 +02:00
Markus Blatt
c631a4ee63
Merge pull request #4018 from akva2/preconditionerfactory_separate
changed: split PreconditionerFactory in _impl file
2022-08-22 10:16:45 +02:00
Arne Morten Kvarving
ec089af048 changed: split PreconditionerFactory in _impl file
and put instances in separate cpp files.
2022-08-22 09:33:15 +02:00
Atgeirr Flø Rasmussen
04fe35a82e
Merge pull request #4013 from GitPaean/num_aquifer_construct_simpli
simplifying the constructor for AquiferNumerical
2022-08-22 08:20:34 +02:00
Markus Blatt
e7cc14de4c Revert: Split PreconditionerFactory in _impl file
This reverts commit 7f8c88769e.
Apparently the macros unconditionally use Classes that are only
there for parallel builds.
2022-08-19 14:42:55 +02:00
Arne Morten Kvarving
7f8c88769e changed: split PreconditionerFactory in _impl file
and put instances in separate cpp files.
2022-08-19 12:43:28 +02:00
Tor Harald Sandve
0f969dd7a5 check ipr for wells prevented to change to thp 2022-08-19 10:48:56 +02:00
Tor Harald Sandve
7a8eed6a6c adapt to renaming in opm-common 2022-08-19 10:33:19 +02:00
Tor Harald Sandve
96222f8afb dont use explicit vfp lookup for newly opened wells 2022-08-19 10:33:19 +02:00
Tor Harald Sandve
9364d4c54b Add option for wvfpexp item 2 plus minor fixes 2022-08-19 10:33:19 +02:00
Tor Harald Sandve
e875849497 Adapt test cases and vfpprint 2022-08-19 10:33:19 +02:00
Tor Harald Sandve
b1b23a57de Add option for explicit vfp lookup for problmatic wells 2022-08-19 10:33:19 +02:00
Bård Skaflestad
b87154223b Restore Non-MPI Builds
Commit 371b2592f misordered the closing brace of a namespace and
the conditional declarations dependent upon MPI availability.  This
commit restores the expected order and fixes non-MPI builds.
2022-08-18 16:08:41 +02:00
Kai Bao
d69c80b84a simplifying the constructor for AquiferNumerical
removing the unused global_cell and avoid the unnecessary construction of cartesianToCompressed
2022-08-18 15:55:04 +02:00
Arne Morten Kvarving
371b2592f5 changed: put ParallelIstlInformation in separate compile unit 2022-08-18 09:15:28 +02:00
Atgeirr Flø Rasmussen
c94ff12e4c Bugfix and simplification of cartesian mapping.
We already have the mapping available, and using the equilGrid() is only valid
on rank 0.
2022-08-17 14:13:13 +02:00
Bård Skaflestad
1ca731a388
Merge pull request #4007 from atgeirr/limit-terminal-warnings-during-deck-input
Limit warnings to terminal during deck input.
2022-08-16 18:20:05 +02:00
Atgeirr Flø Rasmussen
04180031e1 Limit warnings to terminal during deck input.
With this, the tag limit of 10 is used from the very start of the run,
and not only after the deck has been read.
2022-08-16 14:43:07 +02:00
Arne Morten Kvarving
a32a32649d changed: put MILU in separate compile unit 2022-08-16 10:46:20 +02:00
Arne Morten Kvarving
d2ba2e75e8 remove include of Well header 2022-08-11 11:49:42 +02:00
Arne Morten Kvarving
4917c860fe BlackOilAquiferModel: use aquifers through base interface 2022-08-11 10:04:49 +02:00
Arne Morten Kvarving
271d5bee3a added: (re)introduce AquiferInterface
now a base class for both analytical and numerical aquifers
2022-08-11 09:59:49 +02:00
Arne Morten Kvarving
f166920e75 changed: rename AquiferInterface to AquiferAnalytical 2022-08-11 09:59:49 +02:00
Arne Morten Kvarving
66b4f1edb7 Aquiferxxx: some modernization
- typedef -> using
- use constexpr
2022-08-11 09:59:46 +02:00
Bård Skaflestad
e73d3368e0
Merge pull request #3989 from Tongdongq/tweak-opencl-launch-params
Tweak opencl launch params v2
2022-08-10 14:22:52 +02:00
Tong Dong Qiu
18d9f8cca7 Include missing header 2022-08-10 14:03:32 +02:00
Atgeirr Flø Rasmussen
a5c8d40cfa Remove unneeded timeIdx arguments, also silence other warnings. 2022-08-10 10:01:54 +02:00
Tong Dong Qiu
58b20fe2fb Tweak ILU opencl kernel launch params 2022-08-09 13:39:35 +02:00
Tong Dong Qiu
d0aa42e9e3 Reduce source code line lengths 2022-08-09 13:38:57 +02:00
Tong Dong Qiu
5607329b05 Backport to fix ChowPatelIlu 2022-08-09 11:49:47 +02:00
Atgeirr Flø Rasmussen
90e8a9af69 Do not change true impes weights. 2022-08-09 11:11:36 +02:00
Atgeirr Flø Rasmussen
322dcbfb36 Make getWaterFlux() take const ref argument. Minor formatting cleanups. 2022-08-09 11:11:36 +02:00
Atgeirr Flø Rasmussen
cabe64cc58 Further reduction of modifications. 2022-08-09 11:11:36 +02:00
Atgeirr Flø Rasmussen
5fba14373b Modification to reduce PR to minimal changes. 2022-08-09 11:11:36 +02:00
Atgeirr Flø Rasmussen
5042b02138 Rename method and move to impl file. 2022-08-09 11:11:36 +02:00
Atgeirr Flø Rasmussen
0da2b68e0b Adapt to changed interface. 2022-08-09 11:11:36 +02:00
Atgeirr Flø Rasmussen
b1bcab31b9 Refactor addToSource to add interface not using element context. 2022-08-09 11:09:48 +02:00
Atgeirr Flø Rasmussen
66a1c46413 Remove unused code branch. 2022-08-09 11:09:48 +02:00
Atgeirr Flø Rasmussen
5d0ae333f4 Fix: add template argument. 2022-08-09 11:09:48 +02:00
hnil
f751279841 fixed true impes for new code 2022-08-09 11:09:48 +02:00
hnil
4f6755025c -prototype on trueimpes in new system
-probably better threading
2022-08-09 11:09:48 +02:00
hnil
6d3b0a7c1f tried to make openmp work 2022-08-09 11:09:48 +02:00
hnil
5a39724606 added functions for direct setting of well rates contribution to reservoir 2022-08-09 11:09:48 +02:00
hnil
8f5e0940fe restructuring to be able to call without local indices 2022-08-09 11:09:48 +02:00
hnil
d53b6ad9fa added spesialisation for using simple property updating 2022-08-09 11:09:48 +02:00
hnil
060877a08b runs first steps of norne 2022-08-09 11:09:48 +02:00
hnil
95308d7d02 ensure intensive quantities is updated 2022-08-09 11:09:48 +02:00
Atgeirr Flø Rasmussen
93ce28e9a2
Merge pull request #3972 from ElyesAhmed/alugrid2
Alugrid2
2022-08-04 15:43:24 +02:00
Arne Morten Kvarving
36b167b451 remove use of Unused.hpp 2022-08-02 11:53:54 +02:00
Markus Blatt
af28030123
Merge pull request #3983 from blattms/fix-perf-all-zero
[bugfix] Fixes deadlocks with agressively distributed wells
2022-07-29 09:37:10 +02:00
Elyes Ahmed
5c2b60bcd0 rebasing 2022-07-28 20:40:34 +02:00
Markus Blatt
941957c13e Fix shadowed variable warning. 2022-07-28 19:50:24 +02:00
Markus Blatt
c22114af41 Handle injection/producer targets correctly for distributed wells.
We should never return in a function if there are no local
perforations for a distributed well, but that is what we did before
this fix.
2022-07-28 17:52:26 +02:00
Arne Morten Kvarving
eeeeb283c5 remove unnecessary includes 2022-07-26 19:03:39 +02:00
Markus Blatt
f7dec58ee2 Fix deadlock for distributed wells when calculating densities/pressures
There was a check that is supposed that all rates are zero but for
distributed wells it only checked local perforations. Of course that
can lead to different outcome on processes for distributed wells.
2022-07-15 17:58:04 +02:00
Markus Blatt
412cf1d6cd
Merge pull request #3976 from blattms/well-fix-distributed-tw
[bugfix] Fix well transmissibility weights for distributed wells.
2022-07-15 10:39:48 +02:00
Markus Blatt
bfd1d3187a [bugfix] Fix well transmissibility weights for distributed wells.
If we compute a sum over all perforations than we need to cater for the
case of distributed wells. That is we need to also sum up over all processes
involved after performing the local sum.

One of these global sums was missing in computeWellConnectionDensitesPressures
for producers when we compute the weights based on well transmissibilities.
2022-07-13 13:40:16 +02:00
Bård Skaflestad
bdfe58f500
Merge pull request #3975 from OPMUSER/Unsupported-Keywords
Unsupported keywords
2022-07-12 13:00:50 +02:00
OPMUSER
f9ba52e91b Update UnsupportedFlowKeywords.cpp
Remove MINPORV from unsupported keyword list
2022-07-09 20:13:30 +08:00
Elyes Ahmed
cd169660e8 rewriting MaxWellConnections 2022-07-08 13:44:38 +02:00
OPMUSER
65addddb06 Update UnsupportedFlowKeywords.cpp
Remove TEMPVD from the unsupported key list, as tested as working.
2022-07-08 18:20:18 +08:00
OPMUSER
b784a6d78b Update UnsupportedFlowKeywords.cpp
Remove RTEMPA from the unsupported keywords list as testing shows it is supported.
2022-07-08 17:36:12 +08:00
Bård Skaflestad
9d9ec6c522
Revert "Tweak opencl launch params" 2022-07-07 15:21:53 +02:00
Markus Blatt
f22d58a1d0
Merge pull request #3953 from Tongdongq/tweak-opencl-launch-params
Tweak opencl launch params
2022-07-07 10:43:15 +02:00
Tor Harald Sandve
04b0c3515d
Merge pull request #3957 from totto82/regStw
regularize equation for problematic std wells
2022-06-30 11:24:20 +02:00
Tor Harald Sandve
cf1abb086f remove msw(ms) from regulariztion parameter 2022-06-29 15:39:51 +02:00