Joakim Hove
203cc2ff73
Update WellState::temperature()
2021-05-19 10:05:11 +02:00
Joakim Hove
6af03f4a6a
Update WellState::thp()
2021-05-19 10:05:11 +02:00
Joakim Hove
3ec7feba75
Update WellState::bhp()
2021-05-19 10:05:11 +02:00
Tor Harald Sandve
2a5610e5cf
Merge pull request #3276 from hakonhagland/stage2_fix2
...
Fixes a bug in GasLiftStage2_impl.hpp
2021-05-19 09:28:44 +02:00
Arne Morten Kvarving
0f4bb49ed9
changed: split out non-typetag dependent code from WellInterface
2021-05-19 09:25:03 +02:00
Tor Harald Sandve
ce5e3ac075
remove ElemType and zero()
2021-05-19 09:00:53 +02:00
Tor Harald Sandve
93237ec345
FIX wrong type RESV group control
2021-05-19 09:00:53 +02:00
Tor Harald Sandve
7f3dc1dc48
Merge pull request #3275 from atgeirr/fix-msw-indices
...
Fix incorrect indices for 1 and 2-phase cases with MSW.
2021-05-19 07:53:43 +02:00
Håkon Hægland
0abcac3777
Fixes a bug in GasLiftStage2_impl.hpp
...
When making gas lift parallel, see PR #3148 , redistributeALQ() did not
reserve space for the decremental and incremental gradients. Later in
execution thread when push_back() was called to add elements to the
vectors, the capacity of the vector could get exceeded and hence the
internal representation of the vector could be reallocated. This seems
to have caused access to undefined memory errors since the iterators into
the vectors was long longer valid.
2021-05-19 00:54:48 +02:00
Atgeirr Flø Rasmussen
377d7eca60
Merge pull request #3271 from totto82/fixRESVpred
...
BUGFIX fix direction of the resv check
2021-05-18 19:05:17 +02:00
Atgeirr Flø Rasmussen
32d0854f14
Fix incorrect indices for 1 and 2-phase cases with MSW.
2021-05-18 15:32:15 +02:00
Arne Morten Kvarving
bcfab1fed3
use if constexpr to eliminate some brine code
2021-05-18 15:04:47 +02:00
Arne Morten Kvarving
db668e8d80
make has_energy constexpr and use if constexpr to eliminate code
2021-05-18 15:04:47 +02:00
Arne Morten Kvarving
268201eeb1
make has_polymermw constexpr and use if constexpr to eliminate code
2021-05-18 15:04:47 +02:00
Arne Morten Kvarving
a7507cf544
fixed: forward structs as structs
...
clang warns
2021-05-18 12:07:04 +02:00
Tor Harald Sandve
4cf08deede
BUGFIX fix direction of the resv check
2021-05-18 10:45:10 +02:00
Arne Morten Kvarving
dd04eb128a
use if constexpr to eliminate some zFraction code
2021-05-18 10:18:11 +02:00
Arne Morten Kvarving
83595d84c3
use if constexpr to eliminate some polymer code
2021-05-18 10:18:11 +02:00
Arne Morten Kvarving
1fa74b5889
use if constexpr to eliminate some foam code
2021-05-18 10:18:11 +02:00
Arne Morten Kvarving
6157122bd8
use if constexpr to eliminate some solvent code
2021-05-18 10:17:21 +02:00
Arne Morten Kvarving
8c34172ef0
remove some Opm:: qualifiers inside Opm namespace
2021-05-18 10:09:45 +02:00
Joakim Hove
842e0a53a4
Merge pull request #3263 from akva2/move_ecldeck_param
...
changed: move Deck parameter to BlackoilModelParametersEbos
2021-05-18 08:19:19 +02:00
Joakim Hove
28129b87bb
Merge pull request #3250 from bska/activate-aqudata-move-semantics
...
Reduce Aquifer Data Copying
2021-05-18 08:08:00 +02:00
Joakim Hove
ee91333402
Merge pull request #3261 from joakim-hove/wellstate-msw1
...
Reorder variables and remove .reserve() calls
2021-05-18 07:54:32 +02:00
Bård Skaflestad
15116bf2a9
Reduce Aquifer Data Copying
...
This commit switches to using 'map<>::insert_or_assign()' as the
primary interface for collecting dynamic aquifer data. In turn,
this activates move semantics for the substructures and reduces the
number of times the data is copied.
Insert_or_assign requires the key, so provide this value--i.e., the
aquifer ID--as part of the AquiferInterface.
2021-05-17 23:24:52 +02:00
Arne Morten Kvarving
8d1a8126ea
changed: move Deck parameter to BlackoilModelParametersEbos
...
it is used there. now eclbasevanguard.hh includes
BlackoilModelParametersEbos, instead of the other way around.
2021-05-15 14:42:50 +02:00
Joakim Hove
2ac7b5e4bf
Reorder variables and remove .reserve() calls
2021-05-15 08:49:14 +02:00
Peter Verveer
ad0b62ab1c
Simplify the message for keywords with only a single record
2021-05-14 15:12:12 +02:00
Joakim Hove
fcba55080f
Merge pull request #3243 from akva2/small_cleanups
...
Small cleanups in WellInterface
2021-05-14 09:12:11 +02:00
Arne Morten Kvarving
7c29453512
cosmetics
...
do not indent for namespace
2021-05-13 12:04:43 +02:00
Arne Morten Kvarving
861899de2e
changed: put WellStateFullyImplicitBlackoil in separate compile unit
2021-05-13 12:01:03 +02:00
Arne Morten Kvarving
80a05ceb33
cosmetics
...
- do not indent for namespace
- move constructors and destructors to top
- use public/protected/private order
2021-05-13 00:38:08 +02:00
Arne Morten Kvarving
2c1a6ae8cb
replace typedef with using statements
2021-05-13 00:38:08 +02:00
Arne Morten Kvarving
a032c5a80e
changed: put WellState in separate compile unit
2021-05-13 00:38:08 +02:00
Arne Morten Kvarving
ca1a799e95
changed: put partially supported keywords in separate compile unit
...
avoid triggering full simulator rebuilds when updating
this list
2021-05-12 14:29:33 +02:00
Arne Morten Kvarving
306593af3b
changed: put unsupported keywords in separate compile unit
...
avoid triggering full simulator rebuilds when updating
this list
2021-05-12 14:29:33 +02:00
Cintia Goncalves Machado
5c51d4dea4
Remove COPYREG and add RPTSOL
...
Remove COPYREG (https://github.com/OPM/opm-simulators/issues/3234 ) and add RPTSOL (https://github.com/OPM/opm-simulators/issues/3248 ) as non-critical missing keyword
2021-05-12 12:04:01 +02:00
Joakim Hove
77f3b93b88
Merge pull request #3241 from joakim-hove/wellcontainer-initializer-list
...
Add initializer_list based WellContainer constructor
2021-05-12 11:15:53 +02:00
Arne Morten Kvarving
1568479d3d
fix function name
...
Frations -> Fractions
2021-05-12 10:50:46 +02:00
Joakim Hove
66c56bb8c3
Add initializer_list based WellContainer constructor
2021-05-12 09:18:58 +02:00
Arne Morten Kvarving
9758cd4f92
replace typedefs with using statements
2021-05-12 09:06:37 +02:00
Arne Morten Kvarving
ab4772aba8
fixed: use Scalar type from TypeTag
2021-05-12 09:02:29 +02:00
Arne Morten Kvarving
d5cdbf38d6
remove Opm:: prefix for symbols
...
we are already in the Opm:: namespace
2021-05-12 08:57:07 +02:00
Arne Morten Kvarving
9de5d077f6
remove unused modestring array
2021-05-12 08:47:49 +02:00
Arne Morten Kvarving
539c83687c
changed: (re)move unnecessary includes
2021-05-12 08:47:22 +02:00
Bård Skaflestad
57d45011af
Restore Debug Builds
...
This was broken in commit b5580f39f
(PR #3222 ) which removed the
'start_perf_next_well' symbol but did not update every use location.
2021-05-12 08:37:19 +02:00
Joakim Hove
817e81d3b7
Merge pull request #3235 from akva2/constexpr_micro_optim_wells
...
Small micro-optims in WellInterface
2021-05-12 06:55:22 +02:00
Joakim Hove
b5580f39fa
Let the perforation index run over the indices for one well
2021-05-11 22:38:11 +02:00
Joakim Hove
846809ec29
Rename mutable perfPhaseRates()
2021-05-11 18:48:05 +02:00
Arne Morten Kvarving
ceb9bb4311
changed: make has_brine contexpr
...
and use if constexpr to eliminate some code
2021-05-11 12:52:44 +02:00
Arne Morten Kvarving
f48ee17d59
changed: make has_foam contexpr
...
and use if constexpr to eliminate some code
2021-05-11 12:46:54 +02:00
Arne Morten Kvarving
73ccb42634
changed: make has_polymer contexpr
...
and use if constexpr to eliminate some code
2021-05-11 12:33:54 +02:00
Arne Morten Kvarving
a78c7e598d
changed: make has_solvent and has_zFraction constexpr
...
and use if constexpr to eliminate some code
2021-05-11 12:28:10 +02:00
Arne Morten Kvarving
3397cd6252
eclbasevanguard: split in template and non-template parts
2021-05-11 09:15:11 +02:00
Arne Morten Kvarving
86bc095e3a
eclbasevanguard: change canonicalDeckPath to std::string
...
makes use of filesystem an implementation detail
2021-05-11 09:15:11 +02:00
Joakim Hove
83f32729fc
Fix function argument
2021-05-11 08:10:49 +02:00
Joakim Hove
b832b00ca3
Merge pull request #3221 from joakim-hove/distribute-events
...
Distribute events
2021-05-11 07:24:00 +02:00
Joakim Hove
c01f2fe074
Merge pull request #3226 from joakim-hove/wellstate-remove-unused
...
Remove unused getXXXXOffset() methods
2021-05-11 07:23:08 +02:00
Joakim Hove
df2f27ab43
Merge pull request #3230 from GitPaean/aquifer_keyowrds_supported
...
removing numerical aquifer keywords from unsupported keyword list
2021-05-11 07:22:55 +02:00
Kai Bao
2d24abb630
removing numerical aquifer keywords from unsupported list
...
AQUNUM, AQUCON
2021-05-10 22:48:56 +02:00
Tor Harald Sandve
55dfc84067
Merge pull request #3176 from totto82/refactorPrepareTimeStep
...
move solveWellEquation inside prepareTimeStep
2021-05-10 16:35:16 +02:00
Bård Skaflestad
38292aca72
Merge pull request #3225 from totto82/refactorAssembleWellEq
...
Avoid code duplication
2021-05-10 12:27:52 +02:00
Joakim Hove
21751d87fc
Remove unused getXXXXOffset() methods
2021-05-10 10:07:05 +02:00
Tor Harald Sandve
80413e0794
add useInnerIteration method and move assembleWellEq to the well interface to avoid code duplication
2021-05-10 09:41:18 +02:00
Tor Harald Sandve
c87c2666d1
Merge pull request #3184 from totto82/fixZeroInit
...
Improve initialization of the well rates for trivial rates
2021-05-10 08:53:16 +02:00
Joakim Hove
f52398a32e
Use WellContainer<Events> to manage per well events
2021-05-09 16:42:50 +02:00
Joakim Hove
0083022742
Add const T& overload to WellContainer
2021-05-09 15:54:20 +02:00
Joakim Hove
744039eb2f
Add documentation to WellContainer<T> class
2021-05-09 11:57:54 +02:00
Tor Harald Sandve
62d902435a
move solveWellEquation inside prepareTimeStep
2021-05-07 08:51:15 +02:00
Joakim Hove
36cc9e8567
Add small class WellContainer to manage well data in WellState
2021-05-06 15:46:52 +02:00
Joakim Hove
a1f1d1047e
Use mutable WellGroupEvents instance to track events in WellState
2021-05-06 14:02:03 +02:00
Tor Harald Sandve
1cd6ea14a9
only compute well potential when needed
2021-05-06 12:59:02 +02:00
Tor Harald Sandve
2796a9862e
Merge pull request #3169 from totto82/alt_init
...
Initialize empty producers using mobility and transmissibility ratio
2021-05-06 11:10:23 +02:00
Tor Harald Sandve
687a2ca977
Improve initialization of the well rates for trivial rates
...
This also applies for rates with opposite direction.
2021-05-06 08:48:30 +02:00
Bård Skaflestad
a6c7453a24
Merge pull request #3212 from joakim-hove/num-connections
...
Store the number of connections in separate vector
2021-05-05 22:11:26 +02:00
Bård Skaflestad
e73be1352b
Merge pull request #3211 from totto82/removeUnusedVFPcode
...
remove unused calculateBhpWithTHPTarget
2021-05-05 18:53:45 +02:00
Bård Skaflestad
f8e2aa74de
Merge pull request #3207 from akva2/targetcalc_comp_unit
...
TargetCalculator: move to separate compile unit
2021-05-05 18:53:07 +02:00
Bård Skaflestad
9139e3c2f1
Merge pull request #3213 from akva2/no_opm_in_opm
...
fixed: do not use Opm:: prefix when inside namespace Opm
2021-05-05 16:15:50 +02:00
Arne Morten Kvarving
a4c0af09d9
fixed: do not use Opm:: prefix when inside namespace Opm
2021-05-05 11:59:18 +02:00
Joakim Hove
fe9a627aa3
Store the number of connections in separate vector
2021-05-05 11:30:33 +02:00
Tor Harald Sandve
bc9034e325
remove unused calculateBhpWithTHPTarget
2021-05-05 09:51:43 +02:00
Tor Harald Sandve
eeb1b7e36c
Initialize empty producers using the mobility ratio and the transmissbility ratio
2021-05-05 08:31:36 +02:00
Joakim Hove
24285009a8
The MAPUNITS keyword is supported
2021-05-05 08:12:40 +02:00
Bård Skaflestad
6b02180ca3
Merge pull request #3208 from akva2/fix_gaslift_impl_include
...
fixed: do not include headers into Opm namespace
2021-05-04 18:04:35 +02:00
Arne Morten Kvarving
a0e4bb9e52
fixed: do not include headers into Opm namespace
2021-05-04 14:35:41 +02:00
Arne Morten Kvarving
d4b67e9af0
TargetCalculator: move to separate compile unit
...
use explicit instantation to avoid some templates being
instanced a lot of places in a lot of objects.
2021-05-04 08:42:02 +02:00
Arne Morten Kvarving
a61c453a2a
WellGroupHelpers: make templates private
...
use explicit template instantation. to avoid rebuilding
this code over and over (minor), and to avoid includes in headers.
2021-05-04 08:21:32 +02:00
Arne Morten Kvarving
1ec65b14b8
FractionCalculator: make member a const reference
2021-05-04 08:14:07 +02:00
Bård Skaflestad
c0b68ea117
Merge pull request #3205 from akva2/relperm_compile_unit
...
RelpermDiagnostics: make templates private
2021-05-04 00:19:24 +02:00
Arne Morten Kvarving
0e2c61856f
RelpermDiagnostics: make templates private
...
use explicit template instantation. to avoid rebuilding
this code over and over (minor), and to avoid includes in headers.
2021-05-03 20:39:37 +02:00
Joakim Hove
8a78dc1c59
Add class GlobalWellInfo and use it from WellState
2021-05-03 13:28:28 +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
Bård Skaflestad
7be6e5bbf1
Merge pull request #3196 from akva2/use_forwarding
...
Use forwarding where possible in some headers
2021-04-30 16:00:41 +02:00
Arne Morten Kvarving
cf06a322ec
countGlobalCells: put non-template code in separate compile unit
2021-04-30 15:09:23 +02:00
Bård Skaflestad
f273e06c66
Merge pull request #3198 from akva2/janitoring
...
Remove some unused members and quell some warnings
2021-04-30 15:08:48 +02:00
Arne Morten Kvarving
e0a6e56588
WellGroupHelpers: use forwarding
2021-04-30 13:29:00 +02:00
Arne Morten Kvarving
d4a0d2962f
ParallelWellInfo: use forwarding
2021-04-30 13:24:06 +02:00
Arne Morten Kvarving
17963b07c1
ParallelRestart: use forwarding
2021-04-30 13:18:44 +02:00
Arne Morten Kvarving
e74b3249e9
WGState: forward struct as struct
2021-04-30 13:09:25 +02:00
Arne Morten Kvarving
3c77b97cae
MultisegmentWellContribution: remove unused members
2021-04-30 13:09:25 +02:00
Arne Morten Kvarving
5dd5f5a8f4
FractionCalculator: remove unused summary_state member
2021-04-30 11:02:50 +02:00
Arne Morten Kvarving
8ff32b594a
TargetCalculator: remove unused wellstate member
2021-04-30 11:02:50 +02:00
Tor Harald Sandve
70150ab212
Remove code duplication between STW and MSW
2021-04-30 09:27:35 +02:00
Arne Morten Kvarving
541ebdde13
phaseUsageFromDeck: move to separate compile unit
2021-04-29 13:00:23 +02:00
Arne Morten Kvarving
0cb0971673
ParallelFileMerger: move to separate compile unit
2021-04-29 12:57:27 +02:00
Arne Morten Kvarving
b30fc4eac1
ExtractParallelGridInfoToISTL: use forwarding
2021-04-29 12:50:19 +02:00
Arne Morten Kvarving
238109b0e9
FlowMainEbos: use forwarding
...
also remove unnecessary includes
2021-04-29 12:47:27 +02:00
Arne Morten Kvarving
bbfda699d3
KeywordValidation: use forwarding
2021-04-29 12:46:49 +02:00
Arne Morten Kvarving
5fb5f79318
readDeck: use forwarding
2021-04-29 12:43:51 +02:00
Bård Skaflestad
dae6b61370
Merge pull request #3189 from joakim-hove/alqstate
...
Add class ALQState to manage the ALQ state in the WellState
2021-04-28 11:52:40 +02:00
Bård Skaflestad
eb8e270b50
Merge pull request #3190 from akva2/fix_missing_include
...
fixed: include <cstring> for strlen
2021-04-28 11:03:55 +02:00
Joakim Hove
8bae5e0127
Add class ALQState to manage the ALQ state in the WellState
2021-04-28 09:33:06 +02:00
Arne Morten Kvarving
f004b59217
fixed: include <cstring> for strlen
2021-04-28 09:01:09 +02:00
Bård Skaflestad
a6c374a27c
Compute Well-Level PI For Shut Wells
...
This commit includes the shut wells in 'wells_ecl_' and expands the
PI/II value calculation to apply to those shut wells too. With this
in place we are able to run cases that have a 'WELPI' keyword before
the well opens, even at the very first report step.
2021-04-27 14:51:18 +02:00
Bård Skaflestad
6e9d2bd89e
Initialise More Data Members at Construction Time
...
In particular, apply explicit default constructors to most data
members and push initialisation to initialiser list if convenient.
While here, also split long lines and apply const in more places.
Finally, reset well- and connection-level PI values to zero in
WellState::shutWell(). This is in preparation of including shut
wells in BlackoilWellModel's internal state.
2021-04-27 14:50:37 +02:00
Joakim Hove
1de5c9539c
Merge pull request #3174 from joakim-hove/use-groupstate2
...
Use groupstate2
2021-04-27 14:15:49 +02:00
Joakim Hove
e1d117c59f
Extract group state and create WGState to manage well & group state
2021-04-27 10:55:38 +02:00
Bård Skaflestad
1f14c6ddef
Forward Potential Rates to Next Report Step
...
These are used as part of calculating the BHP/THP when computing new
potential rates in models that feature VFP tables and must therefore
be properly initialised in the next report step's well state object.
2021-04-27 07:58:21 +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
Bård Skaflestad
266197fd75
Merge pull request #3186 from akva2/include_headers
...
fixed: include required headers where needed
2021-04-27 06:31:34 +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
29673a168d
Use std::array<> in PhaseUsage
2021-04-26 19:03:22 +02:00
Tor Harald Sandve
12880be916
Merge pull request #3159 from totto82/updateWellTargetFix
...
get bhp from thp without solving
2021-04-26 13:15:30 +02:00
Joakim Hove
5a4190bbea
Add json dump to GroupState
2021-04-26 11:51:07 +02:00
Joakim Hove
43f42ab7d7
Merge pull request #3162 from totto82/addSwitchEvent
...
Use the event for swithing between producer and injector
2021-04-23 08:17:47 +02:00
Tor Harald Sandve
93ac6e8283
Merge pull request #3165 from joakim-hove/wellstate-split
...
Wellstate split
2021-04-22 12:28:33 +02:00
Markus Blatt
824df60e94
Merge pull request #3150 from Tongdongq/always_print_prec_info
...
Always print CHOW_PATEL info if used
2021-04-21 19:51:22 +02:00
Tor Harald Sandve
3445f2e03a
Merge pull request #3168 from joakim-hove/simplify-global-is-grup
...
Simplify global is grup
2021-04-21 14:49:13 +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
Joakim Hove
7131647362
Use Well.insert_index() instead of maintaining extra counter
2021-04-21 10:34:57 +02:00
Joakim Hove
ed2fb11084
Avoid superfluos code to reset globalIsProductionGrup to false
2021-04-21 09:04:55 +02:00
Atgeirr Flø Rasmussen
fc8d17c04e
Merge pull request #3164 from totto82/fixNOgrp
...
honour group available for higher controll
2021-04-20 11:13:27 +02:00
Tor Harald Sandve
352e40d109
honour group available for higher controll
2021-04-19 14:34:38 +02:00
Arne Morten Kvarving
b9c19958fb
fixed: mark possibly unused variables as such to quell warnings
...
also take chance to break an extremely long line
2021-04-19 09:49:20 +02:00
Markus Blatt
8fe9314104
Merge pull request #3148 from totto82/gliftmpi2
...
make gaslift parallel
2021-04-19 08:30:14 +02:00
Tor Harald Sandve
090b75425f
Use switch event
2021-04-16 13:38:56 +02:00
Tor Harald Sandve
e69b097ac5
fix for distributed wells
2021-04-15 14:00:28 +02:00
Markus Blatt
13f62a718b
Merge pull request #2998 from g-marchiori/fpgasolver-integration
...
Added fpgaSolver, requires Xilinx Alveo U280 FPGA board
2021-04-15 11:21:39 +02:00
Tor Harald Sandve
ebcaea3faa
get bhp from thp without solving
2021-04-14 15:58:58 +02:00
Tor Harald Sandve
9d56588906
Make gaslift parallel
2021-04-14 14:14:39 +02:00
Bård Skaflestad
481c72a0fc
Merge pull request #3156 from joakim-hove/well-init-restart-bug
...
Well init restart bug
2021-04-14 09:10:30 +02:00
Joakim Hove
289e0ea938
Handle closed connections when loading connection data from restart
2021-04-14 07:59:55 +02:00
Joakim Hove
7d825ba9d0
Rename function wellToState -> loadRestartData
2021-04-13 21:02:36 +02:00
Alf Birger Rustad
a7f7c1af72
Removed four supported keywords
2021-04-13 09:53:15 +02:00
Peter Verveer
1640c4afcf
Implement a new keyword validator
2021-04-12 16:47:02 +02:00
Joakim Hove
e1fe527719
Change output to indicate start of time step
2021-04-10 13:37:12 +02:00
Tong Dong Qiu
5466b0f5f2
Always print CHOW_PATEL info if used
2021-04-09 16:19:45 +02:00