Commit Graph

2766 Commits

Author SHA1 Message Date
Tor Harald Sandve
153cd678c6 Add a derivative free version of the well rate calculations 2021-08-04 11:32:50 +02:00
Arne Morten Kvarving
08e950686f use .empty() instead of .size() comparisons 2021-08-04 09:19:03 +02:00
Arne Morten Kvarving
8d40860b0b mark variables [[maybe_unused]] 2021-08-04 08:44:03 +02:00
Joakim Hove
1cbc096d20
Merge pull request #3450 from joakim-hove/small
Small
2021-08-03 18:08:33 +02:00
Joakim Hove
d5f2b02716 Check production and injection constraints separately 2021-08-03 14:39:39 +02:00
Joakim Hove
6542a62cc0
Merge pull request #3452 from joakim-hove/constraint-bug
BUG? Make sure WellState injection control is updated
2021-08-03 14:38:20 +02:00
Joakim Hove
ea4cf8d28f
Merge pull request #3428 from akva2/remove_altidx
remove ebos_altidx
2021-08-03 14:10:00 +02:00
Joakim Hove
c70f63b99b Make sure WellState injection control is updated 2021-08-03 13:54:59 +02:00
Tor Harald Sandve
43d129861f
Merge pull request #3454 from plgbrts/gw1
adjustments needed for gas-water system
2021-08-03 12:01:34 +02:00
Kai Bao
5e74466aed
Merge pull request #3445 from plgbrts/rateconvfixed
Rateconvfixed
2021-08-03 00:07:19 +02:00
Arne Morten Kvarving
78c5675daf changed: get rid of OPM_UNUSED macro usages
prefer anonymous parameters or c++17 [[maybe_unused]]
2021-08-02 14:55:41 +02:00
Paul Egberts
a80894d679 using if constexpr () 2021-08-02 13:39:55 +02:00
Paul Egberts
8e8f6c5ff2 fix compositionSwitchEnabled declaration. For gas-water it is disabled 2021-08-01 21:02:07 +02:00
Paul Egberts
70d43fbefc using has_wfrac(gfrac)_variable logic, In case of gas-water system GFrac is primary variable index 2021-08-01 20:51:28 +02:00
Paul Egberts
5be63a59e0 Introduction of has_wfrac(gfrac)_variables analogue to multisegmentwell implementation 2021-08-01 20:40:04 +02:00
Paul Egberts
367c762a06 moved WFrac, GFrac definition to StandardWellEval.hpp 2021-08-01 20:36:05 +02:00
Paul Egberts
d5653d9ca2 removed exit failure for gas-water system 2021-08-01 18:11:56 +02:00
Paul Egberts
e25b78f106 fix for relative change calculation for gas-water system 2021-08-01 18:09:54 +02:00
Joakim Hove
e01910adc2 Add methods WellState::size() and WellState::producer() 2021-07-26 14:21:50 +02:00
Joakim Hove
a39fcc9708 Set WellState::thp when loading restart file 2021-07-26 13:07:12 +02:00
Joakim Hove
057db0ec0e Add method WellState::name() 2021-07-26 13:07:12 +02:00
Paul Egberts
0efe03497a some clean up 2021-07-23 16:41:50 +02:00
Paul Egberts
92f7b19594 delete head message 2021-07-23 16:41:50 +02:00
Paul Egberts
a813d9e875 fix for the situation that hydrocarbon consist only of gas 2021-07-23 16:41:50 +02:00
Markus Blatt
ea4e4a1520
Merge pull request #3346 from Tongdongq/amgcl-support
Amgcl support
2021-07-21 15:02:25 +02:00
Bård Skaflestad
48e1af8bbe Address Static Code Analysis Warnings
In particular, don't print uninitialized memory (Reorder.cpp:left)
and don't capture objects ('prm') that aren't actually used.  While
here, refactor the initialization of the MT19937 random number
generator.  Constructing this object is too expensive to do for each
try, especially when we can just run the generator in place.
2021-07-13 11:37:57 +02:00
OPMUSER
272ae1c8f8 Minor updates
Delete time stamp
update WCONPROD, TRACER and TRACERS
2021-07-10 14:05:33 +08:00
OPMUSER
22a2720e5a Partially Supported Keywords Validation
All keywords that can be checked with the existing validation frame work. All failures will continue, even if the message says "will STOP". The only exception is GUIDERAT(2) as parser check results in the STOP; however, this going to change so the STOP will happen with this code.

Comments and agreement between continue and STOP actions appreciated-
2021-07-10 14:05:33 +08:00
OPMUSER
741fddc2f7 Update UnsupportedFlowKeywords with Some Output Comments
Just minor changes to the output strings for better clarity.
2021-07-10 14:05:33 +08:00
OPMUSER
82834c0a3b Unsupported Keywords: Fix RVCONST add ROCKOPTS
Added ROCKOPTS to unsupported keyword list, as there are no opm-test examples, is this correct?

If ROCKOPTS is supported what is supported?
2021-07-10 14:05:33 +08:00
Tong Dong Qiu
796d1b7f8a Allow to choose a platform and device when using amgcl with VexCL 2021-07-09 17:03:11 +02:00
Tong Dong Qiu
0ee6b58fb0 Only initialize VexCL once 2021-07-09 15:39:35 +02:00
Tong Dong Qiu
b0749ce7d4 Use default parameters if json file does not specify all.
Throw exception if json file cannot be parsed.
2021-07-09 14:07:55 +02:00
Atgeirr Flø Rasmussen
3253a79693 Instantiate pack etc. for new integer type.
The std::uint_fast64_t is used in WriteRestartFileEvents, from
opm-common.
2021-07-08 17:55:28 +02:00
Tong Dong Qiu
f77d745b51 Factor out CUDA part of amgclSolver 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
b2156a4edc Remove unused variable warnings 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
b28c96699b Combine blocked and unblocked VexCL implementations 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
5306ae6a60 Allow VexCL to use unblocked matrices 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
47ffeaf24a Allow VexCL to use runtime parameters 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
b4eb711c71 Enable the VexCL backend, disabled for blocksize=1 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
a3d8d6655f Added enum for amgcl_backend_type 2021-07-07 16:24:52 +02:00
Markus Blatt
adc2bf46b9 Search for VexCL and create an imported target.
Unfortunately, we cannot us the imported targets. They add some compile
parameters using generator expressions based on the CXX_COMPILER_ID.
While we are using the system CXX compiler for most of the stuff, some
cuda code is compiled with nvcc which at least for some versions does
not support -Wno-catch-value (which gets passed as normal compiler
option).
2021-07-07 16:24:52 +02:00
Tong Dong Qiu
d45f9d08f7 Allow amgcl without CUDA 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
e556124405 Allow to choose amgcl backend at runtime, added default amgcl params 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
282f611f92 Make sure amgcl can be used without CUDA 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
3c1bfeb72f Let amgcl use runtime parameters via JSON file 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
a23d881817 Reuse amgcl parameters 2021-07-07 16:24:51 +02:00
Tong Dong Qiu
47e2899ba8 Moved amgcl declarations to header 2021-07-07 16:24:51 +02:00
Tong Dong Qiu
7c7911b9bc Allow to use amgcl when CUDA and OpenCL are not found 2021-07-07 16:24:51 +02:00
Tong Dong Qiu
c2869810e2 Added amgclSolverBackend 2021-07-07 16:24:51 +02:00
Tong Dong Qiu
5918c64b54 Add useWellConn parameter to WellContributions() 2021-07-07 16:24:51 +02:00
Bård Skaflestad
2627a05c1e
Merge pull request #3433 from osae/tracerDefaultTrue
Default activation of tracer model.
2021-07-07 11:54:28 +02:00
Ove Sævareid
738877fc1b Default activation of tracer model. 2021-07-06 17:06:10 +02:00
Arne Morten Kvarving
8443306fb6 remove ebos_altidx
building a whole simulator for this, and then not even
running a test for it, seems rather excessive. if a test for
index-conformance is wanted, a better approach should be taken.
2021-07-05 13:17:13 +02:00
Joakim Hove
c62a9ba198 Set external UDQState for flow blackoil 2021-07-04 08:55:07 +02:00
Joakim Hove
2b680f27af Load udq state results from restart file 2021-07-03 10:08:25 +02:00
Bård Skaflestad
bbd8beb822
Merge pull request #3423 from joakim-hove/set-udq-state
Assemble UDQState external to the vanguard
2021-07-02 23:53:11 +02:00
Markus Blatt
ef8bd1861f
Merge pull request #3425 from akva2/nullopt
changed: use std::nullopt
2021-07-01 15:31:09 +02:00
Markus Blatt
8d0a254211
Merge pull request #3364 from blattms/flexible-solver-determine-pressure-idx-from-model
Determine index of pressure from model used to increase usability
2021-07-01 15:22:50 +02:00
Tor Harald Sandve
65f207836b
Merge pull request #3421 from totto82/compPotNW
compute potentials for newly opened wells due to testing
2021-07-01 12:08:13 +02:00
Arne Morten Kvarving
b0a2fc8a67 changed: use std::nullopt
the alternative causes some compilers to emit uninitialized
use warnings
2021-07-01 09:00:56 +02:00
Joakim Hove
528078e8e1 Assemble UDQState external to the vanguard 2021-07-01 08:24:59 +02:00
Bård Skaflestad
4392cc8713 Don't Access Phase Rates Unless Active
Fixes two-phase Oil/Water runs.  Probably needs more refinement
later.
2021-06-30 17:21:52 +02:00
Tor Harald Sandve
a00c42c673 compute potentials for newly opened wells due to testing 2021-06-30 13:13:56 +02:00
Bård Skaflestad
5ddac2e8d5
Merge pull request #3406 from GitPaean/new_fixing_guide_rate_update_together
[new attempt] updating the guide rates for all the wells and groups at the same time
2021-06-30 12:40:45 +02:00
Tor Harald Sandve
60f59cd6e6 Potentially reduce gaslift when under well is under group control
Current implemention only support ORAT and GRAT controlled groups
2021-06-30 09:59:09 +02:00
Kai Bao
12fa7a4ac8 putting all the guide rate update function in one single function
to make sure we only do once checking of the expiration of the guide
rates.
2021-06-29 11:41:26 +02:00
Tor Harald Sandve
42dd7ad56d
Merge pull request #3413 from totto82/fixLocalFraction
make sure the newly switched well is included in the local fraction sum
2021-06-28 15:41:45 +02:00
Bård Skaflestad
b79b08e86f
Merge pull request #3414 from OPMUSER/RUNSPEC-GRID
Add GRAVITY keyword to UnsupportedFlowKeywords
2021-06-28 13:26:43 +02:00
OPMUSER
5d9e3811af Add GRAVITY keyword to UnsupportedFlowKeywords
Add GRAVITY keyword to UnsupportedFlowKeywords with message to use DENSITY instead.
2021-06-28 18:11:49 +08:00
Tor Harald Sandve
4aaf86d5ef make sure the current well are included in the local fraction sum 2021-06-28 11:47:13 +02:00
Bård Skaflestad
3fe922b27f
Merge pull request #3404 from OPMUSER/RUNSPEC-GRID
PartiallySupportedKeywords for RUNSPEC and GRID Sections
2021-06-27 17:04:20 +02:00
Bård Skaflestad
71de144399
Merge pull request #3239 from osae/tracer
Tracer summary curves, collect well rates.
2021-06-25 17:48:40 +02:00
Bård Skaflestad
5e883e562c Chase Type Specific Aquifer Data API Change
This commit switches to using the new 'typeData' interface for
representing type-specific aquifer data items.  In particular we use
the new 'typeData.is<>()' and 'typeData.get<>()' member functions to
query and access the data that is specific to each aquifer type
(e.g., Carter-Tracy or numerical).

While here, also expand the reported data items for numerical
aquifers to one initial pressure value for each aquifer cell.  This
is needed for restart purposes.
2021-06-25 09:58:27 +02:00
OPMUSER
7dee294c50 Clean License & Copyright Header
Clean License & Copyright Header - Done
2021-06-25 15:34:19 +08:00
Bård Skaflestad
704c33f08f Chase Restart Loading API Change 2021-06-25 09:11:09 +02:00
OPMUSER
2cf11dfe05 Revised RUNSPEC and GRID PartiallySupportedFlowKeywords.cpp
Revised version for RUNSPEC and GRID partially supported keywords. Fixed miss match with value type and comments etc. Also Trap NUMRES != 1 with STOP if > 1.
2021-06-25 13:17:13 +08:00
OPMUSER
e7b28b1b5f Removed NUMRES from UnsupportedKeywords List
Removed NUMRES from UnsupportedKeywords list and will trap values not equal to 1 in the PartiallySupportedKeyword list. PartiallySupportedKeyword update to follow.
2021-06-25 13:01:29 +08:00
Tor Harald Sandve
0dcd91ac93
Merge pull request #3369 from totto82/grupWellState
handle GRUP in wellState from target
2021-06-24 13:02:24 +02:00
Bård Skaflestad
c101ed10f4
Merge pull request #3389 from totto82/scaleGuideRates
scale guiderates from si
2021-06-23 16:53:12 +02:00
Tor Harald Sandve
5368343512 handle GRUP in wellState from target 2021-06-23 14:46:35 +02:00
OPMUSER
c3fe22a6cf PartiallySupportedKeywords for RUNSPEC and GRID Sections
RUNSPEC and GRID keywords for partially supported keywords
2021-06-23 12:58:35 +08:00
Bård Skaflestad
9394a93c68 Don't Create Well Instance for Wells With No Connections
This commit protects against Opm::Well instances for which the sets
of connections are empty.  In those cases, do not put entries in the
well container as there is no influence on the systems of non-linear
equations.
2021-06-22 20:43:21 +02:00
Bård Skaflestad
e4dd8a91e8 Use Aquifer's Notion of Water Properties
This commit switches to using the analytic aquifer's intrinsic water
properties (i.e., the mass density and the viscosity), and to get
the time constant from the *_data structure instead of calculating
this value with separate logic.  Note that this switches to using a
single density value for the aquifer instead of separate density
values for each aquifer connection.

If the aquifer's initial pressure is defaulted we still compute an
equilibrated initial pressure value.  We then use the *_data
structure's 'finishInitialisation()' member function to derive the
aforementioned PVT properties.

Finally, report these values in the aquifer type-specific sub
structures of data::AquiferData for restart output purposes.
2021-06-22 14:47:56 +02:00
Bård Skaflestad
6d3da3d2e0 Report Pressure Dependent Pore Volume in PRT File
This commit distinguishes the reference condition pore volume from
the dynamic, pressure (and/or temperature) dependent pore volume
value.  Previously we would report the latter as the 'PORV' value in
the "Field Totals" and "FIPNUM region" reports, but this commit
switches to reporting the former instead-mostly for compatibility.
We still report the dynamic pore volume value, but now we report
this on a line of its own, before the table, using one of the forms

Field total pressure dependent pore volume = 12345 RM3
FIPNUM report region 1 pressure dependent pore volume = 123 RM3
2021-06-22 12:00:56 +02:00
Håkon Hægland
dd1ca3197d Add missing header file to GasLiftGroupInfo.cpp
GasLiftGroupInfo.cpp did not include "config.h" which caused HAVE_MPI
to be undefined causing the file to be compiled with
Dune::Communication<No_Comm> instead of with
Dune::Communication<MPI_Comm>. Which later caused linking problems with files
that used MPI.
2021-06-22 09:52:22 +02:00
Bård Skaflestad
7a9c9bedea
Merge pull request #3390 from akva2/janitoring
fixed: do not assert conditions guaranteed by unsigned
2021-06-18 16:52:47 +02:00
Peter Verveer
7be1bce651 Small fix for the keyword validation 2021-06-18 12:12:58 +02:00
Arne Morten Kvarving
592af11e55 avoid include in header
also add include for config.h
2021-06-18 11:43:54 +02:00
Atgeirr Flø Rasmussen
8c5a6b12d5
Merge pull request #3158 from totto82/operability_solve
shut/stop unsolvable wells
2021-06-18 10:13:14 +02:00
Bård Skaflestad
d9f89b4c89
Merge pull request #3366 from totto82/scaleWellRatesAfterGroupSwitching
Scale well rates after group switching
2021-06-18 10:05:00 +02:00
Tor Harald Sandve
c3cf59327d scale guiderates from si 2021-06-17 23:56:02 +02:00
Markus Blatt
2260fde478
Merge pull request #3300 from Tongdongq/add-tests
Added tests for cusparseSolver and openclSolver
2021-06-17 22:31:23 +02:00
Tor Harald Sandve
161c6cb1f8
Merge pull request #3385 from totto82/fixMSWtarget
Change wellStateFromTarget to virtual to make sure the MSW part is run
2021-06-17 13:03:33 +02:00
Tor Harald Sandve
b5e29684f2 shut/stop unsolvable wells 2021-06-17 11:50:31 +02:00
Håkon Hægland
860cfd9fb5 Fix some sign compare warnings. 2021-06-17 10:44:32 +02:00
Tor Harald Sandve
eb4e25c3f6 Change wellStateFromTarget to virtual to make sure the MSW part is run 2021-06-16 15:53:34 +02:00
Håkon Hægland
fbb24e2a5a Check group limits in gas lift stage 1.
Check group limits in gas lift stage 1 to avoid adding too much ALQ which must
anyway later be removed in stage 2. This should make the optimization
more efficient for small ALQ increment values. Also adds MPI support.
2021-06-16 12:00:54 +02:00
Ove Sævareid
33511b45c1 Relegating implementation details. 2021-06-15 17:18:46 +02:00
Ove Sævareid
581408c760 Batchwise tracer calculations. 2021-06-15 17:18:46 +02:00
Tor Harald Sandve
b2341a84d6 scale well rates after group switching 2021-06-15 09:29:24 +02:00
Joakim Hove
969fc20154
Merge pull request #3373 from verveerpj/improve_validation
Add keyword validation using a predicate function
2021-06-15 07:47:37 +02:00
Kai Bao
b415cd4fb8 not comparing guideRate_ with nullptr
it is not a pointer anymore since OPM/opm-simulators#3380
2021-06-15 00:00:43 +02:00
Joakim Hove
0cf158cd15
Merge pull request #3379 from joakim-hove/wellrates-rename-X
Rename data::WellRates -> data::Wells
2021-06-14 18:21:39 +02:00
Peter Verveer
fd753e20c4 Add keyword validation using a predicate function 2021-06-14 18:10:36 +02:00
Joakim Hove
f9618faceb
Merge pull request #3377 from joakim-hove/perf-data-injector
PerfData maintains producre / injector status
2021-06-14 15:53:15 +02:00
Joakim Hove
166907c45d
Merge pull request #3380 from joakim-hove/guiderate-value
Use GuideRate value instead of std::unique_ptr<GuideRate>
2021-06-14 15:52:08 +02:00
Joakim Hove
b1600b904f Rename data::WellRates -> data::Wells 2021-06-14 15:27:56 +02:00
Joakim Hove
193657fee1 Use GuideRate value instead of std::unique_ptr<GuideRate> 2021-06-14 14:35:55 +02:00
Bård Skaflestad
dc7a6018f6
Merge pull request #3381 from akva2/boost_version_include
fixed: add missing include for boost version
2021-06-14 13:29:14 +02:00
Arne Morten Kvarving
54d928583b fixed: add missing include for boost version 2021-06-14 11:50:57 +02:00
Arne Morten Kvarving
86b454f4c8 fixed: initialize to avoid sca warning 2021-06-14 09:26:32 +02:00
Arne Morten Kvarving
6b5c7b66fd fixed: mark methods as override 2021-06-14 09:09:33 +02:00
Arne Morten Kvarving
a84d05c83b fixed: forward classes as classes 2021-06-14 09:09:15 +02:00
Joakim Hove
a22b836b82 PerfData maintains producre / injector status 2021-06-14 09:03:02 +02:00
Joakim Hove
7c133bb0eb
Merge pull request #3374 from joakim-hove/rename-wellrates
Rename data::WellRates -> data::Wells in opm-common
2021-06-13 13:14:03 +02:00
Joakim Hove
454220b9e7 Rename data::WellRates -> data::Wells in opm-common 2021-06-13 08:37:56 +02:00
Joakim Hove
fe5e4a9ac3 Minor renames++ in WellState report 2021-06-11 16:01:25 +02:00
Joakim Hove
2dae87fb74
Merge pull request #3370 from totto82/bugMaxInnerIter
change get param from bool to int
2021-06-11 12:39:45 +02:00
Tor Harald Sandve
96091f4313 change get param from bool to int 2021-06-11 08:09:35 +02:00
Joakim Hove
7a1f71feaa Simplify check for number of perforations 2021-06-10 23:26:51 +02:00
Tor Harald Sandve
5686d90c61
Merge pull request #3350 from totto82/maxNiWi
Change the inner iterations logic
2021-06-10 19:49:23 +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
3c3a4afcfc Use PerfData for connection productivity index 2021-06-10 14:32:45 +02:00
Joakim Hove
81c5ce8843 Use PerfData for water throughput, water velocity and skin pressure 2021-06-10 14:32:45 +02:00
Joakim Hove
db02b9f112 Use PerfData for solvent perforation rates 2021-06-10 14:27:37 +02:00
Joakim Hove
49e9b51269 Use PerfData for polymer rates 2021-06-10 07:19:21 +02:00
Joakim Hove
3010b96611 Use PerfData for perforation rates 2021-06-10 07:19:21 +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
Bård Skaflestad
ed131190eb
Merge pull request #3353 from akva2/msw_eval
add MultisegmentWellEval
2021-06-10 00:10:31 +02:00
Joakim Hove
1a7c514879
Merge pull request #3359 from joakim-hove/rm-mpi-sum
Use ecl well for total number of connections
2021-06-09 17:13:25 +02:00
Joakim Hove
fc5e2be4e2
Merge pull request #3365 from akva2/wrap_property_tree
Add Opm::PropertyTree
2021-06-09 17:12:38 +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
Arne Morten Kvarving
68fc2b0bc6 add MultisegmentWellEval 2021-06-09 15:17:36 +02:00
Arne Morten Kvarving
29ae002a87 changed: avoid templating in setupPropertyTree
simply pass the required params to function instead.
2021-06-09 12:54:14 +02:00
Bård Skaflestad
72bd3368e7
Merge pull request #3360 from akva2/stdwell_eval
add StandardWellEval
2021-06-09 11:02:52 +02:00
Bård Skaflestad
7add6b33de
Merge pull request #3363 from totto82/fixRESV2
removed dissolved gas and vapporized oil from RESV injection rates
2021-06-09 09:29:19 +02:00
Arne Morten Kvarving
eb06c4bd70 add StandardWellEval 2021-06-09 08:32:30 +02:00
Joakim Hove
b868f87420 Use ecl well for total number of connections 2021-06-08 21:14:16 +02:00
Bård Skaflestad
bb050683f1
Merge pull request #3355 from joakim-hove/remove-first-perf
Remove first perf member from Well classes
2021-06-08 20:47:09 +02:00
Tor Harald Sandve
28a567550b removed dissolved gas and vapporized oil from RESV injection rates 2021-06-08 20:17:01 +02:00
Bård Skaflestad
aa12201ee2
Merge pull request #3362 from akva2/date_time_prune
Avoid boost/date_time in simulator objects
2021-06-08 17:46:34 +02:00
Arne Morten Kvarving
ce01d780cf SimulatorTimerInterface: avoid boost includes in header 2021-06-08 15:44:56 +02:00
Arne Morten Kvarving
14ea3e6dd1 SimulatorFullyIplicitBlackoilEbos: avoid boost includes in header 2021-06-08 15:44:28 +02:00
Arne Morten Kvarving
fce3247c56 AdaptiveTimeSteppingEbos: avoid boost include in header 2021-06-08 15:44:28 +02:00
Arne Morten Kvarving
30d4cbc2f2 AdaptiveSimulatorTimer: void boost includes in header 2021-06-08 15:44:28 +02:00
Arne Morten Kvarving
fcb5d3dd82 SimulatorTimer: avoid boost includes in headers 2021-06-08 15:44:28 +02:00
Arne Morten Kvarving
04e856f831 SimulatorTimer: mark methods override 2021-06-08 15:32:58 +02:00
Arne Morten Kvarving
2460d950b1 remove unused boost include 2021-06-08 15:17:18 +02:00
Arne Morten Kvarving
a0dea4d58f remove unused method 2021-06-08 15:10:11 +02:00
Joakim Hove
023edc67e5 Remove first perf member from Well classes 2021-06-08 14:24:26 +02:00
Arne Morten Kvarving
c623fba017 add MultisegmentWellGeneric
avoid rebuilding this for all simulators when code
is only dependent on Scalar. instanced for double
2021-06-08 10:43:10 +02:00
Arne Morten Kvarving
10ff86af52 add StandardWellGeneric
avoid rebuilding this for all simulators when code
is only dependent on Scalar. specialized for double
2021-06-08 08:08:50 +02:00
Bård Skaflestad
6c1ca7450f
Merge pull request #3282 from akva2/blackoilwellmodel_generic_split
split out typetag independent code from BlackoilWellModel
2021-06-07 22:13:36 +02:00
Bård Skaflestad
4767311f76
Merge pull request #3334 from akva2/wellif_further_split
Further splitting in WellInterface
2021-06-07 21:41:12 +02:00
Arne Morten Kvarving
0ef68b452a BlackoilWellModel: move runWellPIScaling to generic class 2021-06-07 15:01:10 +02:00
Arne Morten Kvarving
7219f09fdc BlackoilWellModel: mutate well_container_ directly in createWellContainer 2021-06-07 14:49:41 +02:00
Arne Morten Kvarving
2c5942595c BlackoilWellModel: put well container init in a separate method 2021-06-07 14:35:34 +02:00
Arne Morten Kvarving
30a59cd190 BlackoilWellModel: move updateWellPotentials to generic class 2021-06-07 14:22:30 +02:00
Arne Morten Kvarving
004abd942b BlackoilWellModel: put code for computing potentials in separate method 2021-06-07 14:09:36 +02:00
Arne Morten Kvarving
b0b0ae20d3 BlackoilWellModel: move some glift stuff to generic class 2021-06-07 13:36:22 +02:00
Arne Morten Kvarving
2b9141035e BlackoilWellModel: move setRepRadiusPerfLength to generic class 2021-06-07 13:36:17 +02:00
Arne Morten Kvarving
c5fae280f3 bring setWSolvent closer to original code
by introducing a getter for generic wells
2021-06-07 13:04:29 +02:00
Arne Morten Kvarving
60e7c90b1e BlackoilWellModel: move calculateEfficiencyFactors to generic class 2021-06-07 12:56:45 +02:00
Arne Morten Kvarving
811afb854b BlackoilWellModel: move updateNetworkPressures to generic class 2021-06-07 12:46:14 +02:00
Arne Morten Kvarving
172d344ab2 BlackoilWellModel: move inferLocalShutWells to generic class 2021-06-07 12:32:01 +02:00
Arne Morten Kvarving
ad4b34dc30 BlackoilWellModel: move forceShutWellByNameIfPredictionMode to generic class 2021-06-07 12:25:04 +02:00
Arne Morten Kvarving
54ff1c4c45 BlackoilWellModel: move hasTHPConstraints to generic class 2021-06-07 12:20:49 +02:00
Arne Morten Kvarving
cf6a3801fb keep a vector of WellInterfaceGeneric* in BlackoilWellModelGeneric
these points to the same objects as well_container_
2021-06-07 12:15:36 +02:00
Arne Morten Kvarving
059140f2ee split out typetag independent code from BlackoilWellModel 2021-06-07 12:04:06 +02:00
Tong Dong Qiu
74b46e4d8d Added tests for cusparseSolver and openclSolver 2021-06-07 11:40:03 +02:00
Tong Dong Qiu
0e63cda518 Instantiate whole class instead of each function 2021-06-07 11:40:03 +02:00
Bård Skaflestad
a3ce4a11e0
Merge pull request #3349 from totto82/fixRESVgconinje
Scale target with resv conversion factor
2021-06-07 09:39:52 +02:00
Arne Morten Kvarving
4c09b5dde3 add WellInterfaceEval 2021-06-07 08:26:43 +02:00
Arne Morten Kvarving
29842ff9a2 add WellInterfaceIndices
while not a lot of class in this layer, having it helps
in downstream well code.
2021-06-07 08:26:43 +02:00
Arne Morten Kvarving
1fb68c59e2 changed: move fluidsystem-only dependent method to WellInterfaceFluidSystem 2021-06-07 08:25:59 +02:00
Bård Skaflestad
87599af8b8 Restore Debug Build
Commit 6a21371b5 (PR #3344) removed 'num_perf_this_well' but did not
make all requisite changes.  Fix an accompanying 'assert' to restore
builds that do not define 'NDEBUG'.
2021-06-06 16:58:42 +02:00
Joakim Hove
e83d4d0dbd
Merge pull request #3336 from joakim-hove/wellpotential_wellcontainer
Manage well potentials with WellContainer<>
2021-06-06 08:33:26 +02:00
Arne Morten Kvarving
62bee530cb MSW: drop unused method 2021-06-05 22:58:57 +02:00
Joakim Hove
32a6f32660 Use WellContainer to manage perf phase rate 2021-06-05 07:50:56 +02:00
Joakim Hove
6a21371b59 Use WellContainer to manage perf phase rates 2021-06-04 18:23:20 +02:00
Joakim Hove
76292552ec Use WellContainer for perf rate of polymer/solvent/brine 2021-06-04 18:23:20 +02:00
Joakim Hove
104036d4b8 Use WellContainer for perf water velocity 2021-06-04 18:23:20 +02:00
Joakim Hove
a2009b1189 Use WellContainer for perforation throughput 2021-06-04 18:23:20 +02:00
Joakim Hove
b0fd14a597 Use WellContainer<> for perforation skin pressure 2021-06-04 18:23:20 +02:00
Bård Skaflestad
36cd1f51e9
Merge pull request #3305 from akva2/gasliftstage2_cleanups
GasLiftStage2: some cleanups
2021-06-04 17:52:47 +02:00
Tor Harald Sandve
3ca6e215dc Change the inner iterations logic
This replace the Boolean switch to enable inner iterations with a
int that controls for which maximum number of newton iterations
inner iterations applies.

Default is set to 3
2021-06-04 10:51:15 +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
Tor Harald Sandve
8c9a7db8c9 Scale target with resv conversion factor 2021-06-04 09:27:51 +02:00
Arne Morten Kvarving
6119f11a7a cosmetics: do not indent for namespace 2021-06-04 09:03:37 +02:00
Arne Morten Kvarving
e8a9158202 GasLiftStage2: drop unnecessary type aliases 2021-06-04 09:03:05 +02:00
Arne Morten Kvarving
c476d07b00 GLiftStage2: use constexpr 2021-06-04 09:00:47 +02:00
Arne Morten Kvarving
078a92dd51 fixed: pass by const ref 2021-06-04 09:00:47 +02:00
Joakim Hove
1285d02873
Merge pull request #3339 from joakim-hove/perf-well-access
Perf well access
2021-06-04 08:41:47 +02:00
Joakim Hove
cb800abd05
Merge pull request #3345 from atgeirr/silence-warnings
Silence warnings
2021-06-03 17:25:47 +02:00
Joakim Hove
1a6737aff3 Use well index for perforation rates 2021-06-03 13:29:45 +02:00
Joakim Hove
739f6ad28a Use well index for solvent perf rates 2021-06-03 13:21:23 +02:00