Commit Graph

1220 Commits

Author SHA1 Message Date
Joakim Hove
6383f3c1ac Use class based enums for VFP flow types 2021-02-15 19:17:39 +01:00
Joakim Hove
648b0f6581 Use Well::updateDeckPI( ) 2021-02-11 13:47:27 +01:00
Bård Skaflestad
27a11508ae
Merge pull request #3031 from totto82/relperm_diag
Removing explicit usage of the Grid in the relperm diagnostics
2021-01-27 09:18:16 +01:00
Tor Harald Sandve
c145722798 pass CartesianIndexMapper instead of the grid to the RelpermDiagnositics 2021-01-26 14:59:36 +01:00
Joakim Hove
e4789d4eb7 Use std::reference_wrapper for VFP tables 2021-01-26 07:56:59 +01:00
Joakim Hove
208209bd95 Don't test serialization for isolated ScheduleState 2021-01-20 09:00:30 +01:00
Atgeirr Flø Rasmussen
3a0dbdc6e7
Merge pull request #2993 from blattms/stdwell-comm-rebase-split-cont-clean
Final fixes to make distributed wells work for Norne.
2021-01-15 15:42:45 +01:00
Joakim Hove
17fcdfc87a Use ScheduleState to handle VFP propertes + simplifications 2021-01-14 19:22:34 +01:00
Joakim Hove
31b2f597ac Enable serialization testing for ScheduleDeck / ScheduleState 2021-01-12 14:12:39 +01:00
Joakim Hove
914bbeca82 Fetch messagelimits from ScheduleState 2021-01-12 07:44:10 +01:00
Kai Bao
a3004580e6 adapting to the directory change in opm-common related to aquifer 2021-01-08 23:18:41 +01:00
Markus Blatt
c037bd762d
Merge pull request #2990 from atgeirr/testing-precfactory-operators
Only add AMG preconditioners to factory if sensible.
2020-12-22 09:52:53 +01:00
Atgeirr Flø Rasmussen
2cce4a1af5
Merge pull request #2962 from totto82/addFLowDynTest
add flow solvent dynamic test
2020-12-21 16:07:21 +01:00
Tor Harald Sandve
4636e7956e add flow_dyn test 2020-12-21 08:25:39 +01:00
Markus Blatt
69fd6495c0 Added factory to construct the global representation of perf data.
Some of our computations are heavily serial and need a complete
representation of the data attached to all perforation no matter
whether a perforation lives on the local partition or not. This commit
adds a factory that allows to easily create such a representaion and
helps writing data back to the local representation.
2020-12-18 14:48:19 +01:00
Markus Blatt
a9c327b321 refactored ParallelWellInfo test code for further testing. 2020-12-18 14:48:19 +01:00
Atgeirr Flø Rasmussen
d910d42f6e Only add AMG preconditioners to factory if sensible.
Also add test using a new operator class, that would not compile
without the change.
2020-12-17 14:54:59 +01:00
Arne Morten Kvarving
b7c8baf08f add serialization test for AutoICD 2020-12-16 08:36:30 +01:00
Markus Blatt
35218bf042 Added possibility to communicate values from perforations below. 2020-12-10 11:06:28 +01:00
Bård Skaflestad
0e938c0ca7
Merge pull request #2941 from totto82/dunifyInitCode
dunify and make the initialization parallel
2020-12-09 20:46:28 +01:00
Markus Blatt
c1da6a896a Cleanup wellstatefullyimplicit test. 2020-12-07 20:41:24 +01:00
Markus Blatt
562f9ffd03 Fixes test for WellStateFullyImplicitBlackoil 2020-12-07 15:40:51 +01:00
Markus Blatt
4edca71a1b Correct pressure and pvt region index for distributed wells.
To get this we need to determine which process has the
very first open well connection and use that to broadcast
pressure and pvt region index.
2020-12-07 15:40:50 +01:00
Arne Morten Kvarving
f3c5a496c2 changed: use BOOST_CHECK instead of BOOST_TEST
BOOST_TEST is not available in older versions of boost.
in particular this broke building on rh6/7.
2020-12-07 08:34:56 +01:00
Kai Bao
7ecb2e4813
Merge pull request #2866 from bska/activate-welpi-scaling
Initial Implementation of WELPI Feature
2020-12-04 20:44:42 +01:00
Atgeirr Flø Rasmussen
83a6c2abae
Merge pull request #2947 from blattms/fix-parallel-well-red
Prepares for apply distributed standard wells.
2020-12-04 20:32:30 +01:00
Bård Skaflestad
aaca907f77 Productivity Index Calculator: Add Reinitialization operation
This commit adds a new member function

    WellProdIndexCalculator::reInit(const Well& well)

which reinitializes the internal arrays in the same way as the
constructor.  This is needed to ensure that the PI calculation
device is synchronised in the case of CTF rescaling-e.g., as a
result of WELPI.
2020-12-04 15:16:24 +01:00
Joakim Hove
66a532f33e
Merge pull request #2957 from joakim-hove/wbp-collect
Wbp collect
2020-12-04 09:11:21 +01:00
Kai Bao
3f5402fb5b adding running test for WSEGAICD 2020-12-03 15:23:14 +01:00
Markus Blatt
0126243f02 Utility to communicate above value of a perf of distributed well
This adds an utility that creates a vector of all above values for
the local perforations. For distributed wells this is needed as the
perforation above might live on another processor. We use the parallel
index sets together with the global index of the cells that are
perforated.
2020-12-03 11:10:36 +01:00
Markus Blatt
8ee58096ba Make the parallel reduction when applying the Wells.
The B matrix is basically a component-wise multiplication
with a vector followed by a parallel reduction. We do that
reduction to all ranks computing for the well to save the
broadcast when applying C^T.
2020-12-03 11:10:36 +01:00
Markus Blatt
3996967344 Added a class with information and comunicator for parallel wells.
BlackoilWellModel now stores an instance of this class for each
well. Inside that class there is a custom communicator that only
contains ranks that will have local cells perforated by the well.
This will be used in the application of the distributed well operator.

This is another small step in the direction of distributed wells,
but it should be safe to merge this (note creation of the custom
communicators is a collective operation in MPI but done only once).
2020-12-03 09:29:43 +01:00
Arne Morten Kvarving
9c5d1aa034 add regression tests for flow_onephase 2020-12-02 11:46:38 +01:00
Joakim Hove
1d86e2dc97 Pass wbp index list to output module 2020-12-01 07:52:58 +01:00
Tor Harald Sandve
246c339b13 Pass gridView instead of the vanguard to the initialization 2020-11-27 13:46:04 +01:00
Tor Harald Sandve
6c06a72466 dunify and make the initialization parallel 2020-11-27 12:38:17 +01:00
Bård Skaflestad
966d7e1761 Restore Case Name for 'msw_2d_h' Regression Test 2020-11-19 22:42:36 +01:00
Joakim Hove
20f7503d67
Merge pull request #2913 from joakim-hove/add-parallel-test-pavg
Add packing test for class PAvg
2020-11-17 08:19:28 +01:00
Joakim Hove
f4deebeb77 Add packing test for class PAvg 2020-11-11 15:17:34 +01:00
Joakim Hove
da2bc2affd Refactor application of NNC / EDITNNC
- The edit manipulations from EDITNNC have already been applied to the NNC data
  from opm-common

- The NNC data structures are guaranteed to be ordered, both with cell1 <= cell2
  and the NNCs are in ascending order

- The NNC output to EGRID / INIT files is based on std::vector<NNCdata>
2020-11-10 16:59:30 +01:00
Joakim Hove
b46a98e6dc Add regression test for summary + completion variables 2020-11-09 16:06:58 +01:00
Bård Skaflestad
6f032e8efe
Merge pull request #2876 from akva2/equil_to_boost_test
Use boost::test in test_equil
2020-10-28 13:02:13 +01:00
Arne Morten Kvarving
4edb27bd37 fixed: drop some shadowing typedefs 2020-10-28 12:11:52 +01:00
Arne Morten Kvarving
1064c62e10 test_equil: change to boost::test 2020-10-28 12:11:52 +01:00
Bård Skaflestad
fb962da061
Merge pull request #2877 from akva2/ecl_output_to_boost_test
Use boost::test in test_ecl_output
2020-10-28 11:41:21 +01:00
Arne Morten Kvarving
939a132af7 test_ecl_output: change to boost::test 2020-10-27 12:59:58 +01:00
Arne Morten Kvarving
cf15d07a94 changed: measure reltol as percentage in macro
this to make it similar to how BOOST_CHECK_CLOSE works.
2020-10-27 12:55:08 +01:00
Arne Morten Kvarving
3c1c3ba1f6 changed: measure relative error in a more standard way (knuth)
|(value-expected)/expected| < tol or |(value-expected)/value| < tol
instead of
|(value-expected)/(value+expected)|

this is how boost::test defines its check
2020-10-27 12:55:08 +01:00
Arne Morten Kvarving
1006991795 changed: measure reltol as percentage in macro
this to make it similar to how BOOST_CHECK_CLOSE works.
2020-10-27 12:09:44 +01:00
Arne Morten Kvarving
6d1f8c75d6 changed: measure relative error in a more standard way (knuth)
|(value-expected)/expected| < tol or |(value-expected)/value| < tol
instead of
|(value-expected)/(value+expected)|

this is how boost::test defines its check
2020-10-27 12:09:44 +01:00