Commit Graph

1352 Commits

Author SHA1 Message Date
Joakim Hove
454220b9e7 Rename data::WellRates -> data::Wells in opm-common 2021-06-13 08:37:56 +02:00
Bård Skaflestad
faba44dd2e
Merge pull request #3368 from joakim-hove/del-timemap
Remove unused #include <TimeMap>
2021-06-10 17:12:17 +02:00
Markus Blatt
db0f19ba88 Determine index of pressure from model used.
Previously, the user had to specify it in the json file read from the
FlexibleSolver or 1 was used. Unfortunately, the index depends on the
model used and it seem rather opaque to a user what that index is.

With this commit we determine the pressure index from the model.
2021-06-10 16:19:18 +02:00
Joakim Hove
308e191ad5 Remove unused #include <TimeMap> 2021-06-10 14:38:14 +02:00
Joakim Hove
76838cd8a4 Use PerfData for perforation pressure 2021-06-10 07:19:21 +02:00
Joakim Hove
4b69d12335 Use PerfData for perforation rates 2021-06-10 07:18:46 +02:00
Joakim Hove
b6318ac017 Add WellContainer<PerfData> to WellState 2021-06-10 07:18:46 +02:00
Joakim Hove
34481e48c3 Add data container PerfData to use in WellState 2021-06-10 07:18:46 +02:00
Arne Morten Kvarving
b7e2ad3bfe added: PropertyTree class
this is a thin wrapper around boost::property_tree
with this we avoid parsing property tree headers in all
simulator objects
2021-06-09 15:21:52 +02:00
Tong Dong Qiu
31eeb33039 Added error checking to tests 2021-06-08 16:07:38 +02:00
Joakim Hove
023edc67e5 Remove first perf member from Well classes 2021-06-08 14:24:26 +02:00
Arne Morten Kvarving
059140f2ee split out typetag independent code from BlackoilWellModel 2021-06-07 12:04:06 +02:00
Tong Dong Qiu
393ab24154 Updated copyright notice 2021-06-07 11:40:03 +02:00
Tong Dong Qiu
74b46e4d8d Added tests for cusparseSolver and openclSolver 2021-06-07 11:40:03 +02:00
Joakim Hove
fcc4970337
Merge pull request #3318 from akva2/eclwellmodel_no_default
changed: do not set the ebos well model as default type
2021-06-04 09:58:46 +02:00
Joakim Hove
59f36eacc0 Remove WellState::top_segment_index 2021-06-03 10:46:26 +02:00
Joakim Hove
f7b1f90c12 Add method SegmentState::size() 2021-06-03 10:46:26 +02:00
Joakim Hove
ac12c8b3a4 Use SegmentState for rates 2021-06-03 10:46:26 +02:00
Joakim Hove
eac69061c2 Use SegmentState when copying pressure 2021-06-03 10:46:04 +02:00
Joakim Hove
df7d96494b Add small method SegmentState::scale_pressure() 2021-06-03 10:46:04 +02:00
Joakim Hove
bccb4f36e4 Don't test pressure & rates for top segment in non MSW well 2021-06-03 10:46:04 +02:00
Joakim Hove
45e7c8c982 Add WellContainer<SegmentState> member 2021-06-03 10:46:04 +02:00
Joakim Hove
5dc267c6f5 Add class SegmentState 2021-06-03 10:46:04 +02:00
Arne Morten Kvarving
5754747009 add regression test for flow_onephase_energy 2021-06-02 13:57:05 +02:00
Bård Skaflestad
fc47eb8b4f
Merge pull request #3332 from akva2/fix_trans_writer_par
eclwriter: fix regression in parallel
2021-06-01 10:32:20 +02:00
Arne Morten Kvarving
c2211b532f eclwriter: fix regression in parallel
order of constructing and obtaining global transmissibilities
was off. replace constructor argument with a setter so it can be
set at the appropriate time.
2021-06-01 09:08:38 +02:00
Arne Morten Kvarving
c76803b913 changed: make bhp template hidden and use explicit instantations
this to avoid includes in headers.
2021-05-31 11:42:29 +02:00
Bård Skaflestad
bd9b9a7118 Prepare to Save/Restore Richer Set of Aquifer Values
This commit adds logic to communicate more dynamic aquifer values
between the simulation and I/O layers.  In particular, we ensure
that we allocate the 'aquFet' and 'aquCT' substructures of the
dynamic aquifer data as appropriate and that we collect this
information on the I/O rank as part of the restart output process.
We furthermore make the 'ParallelRestart' facility aware of dynamic
aquifer data in preparation of loading these values from the restart
file.
2021-05-28 14:47:17 +02:00
Arne Morten Kvarving
d65a9a5f70 changed: do not set the ebos well model as default type
rather, only set it where we want to use it. this avoids including
eclwellmanager.hh and eclpeacemanwell.hh unnecessarily in
simulator objects (where BlackoilWellModel is used).
2021-05-28 11:28:43 +02:00
Joakim Hove
5ac53f8106 Use well index for segment rates 2021-05-27 10:45:33 +02:00
Joakim Hove
34ef516472 Use well index for segment pressure 2021-05-27 10:45:33 +02:00
Joakim Hove
8e0ed53207 Add method WellContainer::well_index() 2021-05-24 09:14:36 +02:00
Arne Morten Kvarving
70ece6d25a eclwriter: split in typetag dependent and typetag-independent parts 2021-05-22 13:21:09 +02:00
Joakim Hove
23180e06d2 Rename WellStateFullyImplicitBlackoil -> WellState 2021-05-21 15:07:21 +02:00
Arne Morten Kvarving
1614767362 GasLiftSingleWell: split typetag independent code to separate class 2021-05-21 09:09:10 +02:00
Joakim Hove
506a349085
Use wellcontainer2 (#3255)
Use WellContainer<> to manage members in WellState
2021-05-20 16:16:12 +02:00
Tor Harald Sandve
bf87a1b519 Add SPE9_CP_GROUP_RESV to the test suite 2021-05-19 09:44:48 +02:00
Peter Verveer
ad0b62ab1c Simplify the message for keywords with only a single record 2021-05-14 15:12:12 +02:00
Arne Morten Kvarving
861899de2e changed: put WellStateFullyImplicitBlackoil in separate compile unit 2021-05-13 12:01:03 +02:00
Joakim Hove
66c56bb8c3 Add initializer_list based WellContainer constructor 2021-05-12 09:18:58 +02:00
Arne Morten Kvarving
c7c29483e7 fix regression: unconditional dereferences
equilGrid and equilCartesianMapper can only
be dereferenced on rank 0.
2021-05-11 15:21:50 +02:00
Arne Morten Kvarving
3397cd6252 eclbasevanguard: split in template and non-template parts 2021-05-11 09:15:11 +02:00
Bård Skaflestad
9d3cf25366
Merge pull request #3217 from akva2/adjust_enums
adjust to upstream enum changes
2021-05-07 21:48:19 +02:00
Markus Blatt
d462aee2f8
Merge pull request #3204 from akva2/collect_separate_compile_unit
CollectDataToIORank: move to separate compile unit
2021-05-07 08:55:47 +02:00
Joakim Hove
36cc9e8567 Add small class WellContainer to manage well data in WellState 2021-05-06 15:46:52 +02:00
Arne Morten Kvarving
a8627d1974 adjust to upstream enum changes 2021-05-05 22:06:06 +02:00
Arne Morten Kvarving
543dbe7114 CollectDataToIORank: move to separate compile unit
make it a template for grid types. this allows using
explicit template instantation and compile this code
only once per grid type, instead of once per simulator object.
2021-05-03 13:45:52 +02:00
Joakim Hove
8a78dc1c59 Add class GlobalWellInfo and use it from WellState 2021-05-03 13:28:28 +02:00
Bård Skaflestad
ff2caa5675 Well Model Test: Supply Valid 'ecl_index' Values
The WellInterface::initCompletions() member function needs these.
2021-04-30 17:05:20 +02:00
Bård Skaflestad
aa1df1352f
Merge pull request #3197 from akva2/move_to_comp_units
Move to separate compilation units
2021-04-30 16:50:54 +02:00
Arne Morten Kvarving
541ebdde13 phaseUsageFromDeck: move to separate compile unit 2021-04-29 13:00:23 +02:00
Arne Morten Kvarving
bbfda699d3 KeywordValidation: use forwarding 2021-04-29 12:46:49 +02:00
Joakim Hove
8bae5e0127 Add class ALQState to manage the ALQ state in the WellState 2021-04-28 09:33:06 +02:00
Joakim Hove
42a6505cf1
Merge pull request #3179 from joakim-hove/groupstate-dump
Add json dump to GroupState
2021-04-27 07:52:11 +02:00
Bård Skaflestad
6cbe5ae8f4
Merge pull request #3178 from joakim-hove/wellstate-internalize-pu
WellState will internalize PhaseUsage member
2021-04-27 06:33:18 +02:00
Joakim Hove
a68589eb9a WellState will internalize PhaseUsage member 2021-04-27 00:11:04 +02:00
Arne Morten Kvarving
a4c5429341 fixed: include required headers where needed 2021-04-26 22:39:32 +02:00
Joakim Hove
5a4190bbea Add json dump to GroupState 2021-04-26 11:51:07 +02:00
Joakim Hove
7fecd9f433 Create new class GroupState to maintain runtime state of groups 2021-04-21 13:07:57 +02:00
Joakim Hove
c8db0d1090 Assign number of phases in WellState constructor 2021-04-21 13:07:57 +02:00
Kai Bao
06fa81f4e3 following interface change for processEcipseFormat 2021-04-20 11:27:15 +02:00
Kai Bao
06ec3d2420 fixing test_relpermdiagnostics test 2021-04-14 09:48:55 +02:00
Joakim Hove
061b5c2395
Merge pull request #3062 from joakim-hove/enable-actionx-test
Enable new test udq_actionx/ACTIONX_M1
2021-04-13 09:28:32 +02:00
Peter Verveer
1640c4afcf Implement a new keyword validator 2021-04-12 16:47:02 +02:00
Håkon Hægland
61e67b143d Adds a simple test case for gas lift.
Adds a simple test case for gas lift optimization. Currently this is
very simplistic and only covers a fraction of the gas lift optimization
code. The plan is to use this as a building block to add more tests
in the future.
2021-04-01 16:41:46 +02:00
Joakim Hove
0515d3c7f3 Add SPE1 testcase where grid data is loaded iwth IMPORT 2021-03-31 20:39:35 +02:00
Joakim Hove
d750d5c68f Enable new test udq_actionx/ACTIONX_M1 2021-03-31 11:52:23 +02:00
Joakim Hove
3d226abd24 Remove references to RestartConfig 2021-03-26 08:03:07 +01:00
Bård Skaflestad
9d72ee157c
Merge pull request #3130 from totto82/addCO2testCases
add more co2 tests to ctest
2021-03-23 20:55:41 +01:00
Tor Harald Sandve
a204cc4b3c add more co2 tests to ctest 2021-03-23 10:54:54 +01:00
Bård Skaflestad
0468b2eee6
Merge pull request #2972 from goncalvesmachadoc/spider
Add cases to regression tests
2021-03-20 01:14:13 +01:00
Bård Skaflestad
b982ad0fd2 Record Dynamic Well Status in 'wellData()' Output
This commit sets the 'data::Well::dynamicStatus' based on the
dynamically updated 'Schedule' object (i.e., from ACTIONX and
similar) and the results of well/operability testing (WECON and/or
WTEST).  If a well is closed due to economic limits (WECON) we still
provide summary-style data at the timestep that closed the well, but
omit this data at later steps until the well reopens.

We add a new parameter to WellState::report() to distinguish these
situations.

This is in preparation of making the 'BlackoilWellModel' manage both
open and shut wells alike.
2021-03-18 17:28:28 +01:00
Cintia Goncalves Machado
49f3728396
Add test for flow_onephase_energy 2021-03-10 12:15:50 +01:00
Kai Bao
69619339a1 Merge branch 'master' into new_numerical_aquifer 2021-03-04 22:54:36 +01:00
Joakim Hove
74ca0d12e0 Use std::chrono::system_clock with 1/1000 second resolution 2021-02-25 23:50:25 +01:00
Joakim Hove
6f15765f53 Use Schedule time functions - avoid TimeMap 2021-02-25 18:10:22 +01:00
Tor Harald Sandve
0902568fa5 Add CO2STORE test to ctest 2021-02-24 09:56:04 +01:00
Kai Bao
d76251818f adding tests for numerical aquifers 2021-02-22 23:18:43 +01:00
Kai Bao
524e63a255 adapting to the upstream interface change. 2021-02-22 23:15:26 +01:00
Joakim Hove
fc398c8555
Merge pull request #3067 from joakim-hove/add-tran-parallel-test
Add parallel test of partial TRAN EDIT
2021-02-17 16:44:15 +01:00
Joakim Hove
2df154017b Add parallel test of partial TRAN EDIT 2021-02-16 08:04:12 +01:00
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