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
Joakim Hove
a2195f367d
Use well index for brine perf rates
2021-06-03 13:21:23 +02:00
Joakim Hove
fa829cce7a
Use well index for polymer perforation rates
2021-06-03 13:21:23 +02:00
Joakim Hove
f62b0a5d1e
Use well index for well water perf velocity
2021-06-03 13:21:23 +02:00
Joakim Hove
8f9a3f0140
Use Well index for perf skin pressure
2021-06-03 13:21:23 +02:00
Joakim Hove
89ae75b46c
Use well index to access WellState::perfThroughput()
2021-06-03 13:21:23 +02:00
Atgeirr Flø Rasmussen
8e6e1c3d5e
Remove unused PhaseUsage data member.
2021-06-03 13:02:31 +02:00
Joakim Hove
59f36eacc0
Remove WellState::top_segment_index
2021-06-03 10:46:26 +02:00
Joakim Hove
5d8a4c5751
Remove WellState member nseg_
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
19ba223c2a
Use SegmentState for segment_number()
2021-06-03 10:46:26 +02:00
Joakim Hove
d3e019fbce
Add private member segment_number to SegmentState class
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
357cb11667
Use SegmentState::scale_pressure()
2021-06-03 10:46:04 +02:00
Joakim Hove
eac69061c2
Use SegmentState when copying pressure
2021-06-03 10:46:04 +02:00
Joakim Hove
eb937e8ba2
Use SegmentState as backing store for segment pressure
2021-06-03 10:46:04 +02:00
Joakim Hove
fc185afc02
Initialize pressure in top segment for non MSW well to zero
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
7d89c6e09c
Add std::string overload for WellState::segments()
2021-06-03 10:46:04 +02:00
Joakim Hove
3fd6d7781b
Remove WellState::segPressDrop()
2021-06-03 10:46:04 +02:00
Joakim Hove
6a859c0664
Segmentstate for accelarition pressure drop
2021-06-03 10:46:04 +02:00
Joakim Hove
33f18279d7
Use segmentstate for hydrostatic pressure drop
2021-06-03 10:46:04 +02:00
Joakim Hove
9801469488
Use segmentstate for friction pressure
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
Joakim Hove
702dc3a924
Merge pull request #3338 from joakim-hove/remove-unused
...
Use perfrates.size() instead of storing num_perf explicitly
2021-06-03 07:58:56 +02:00
Bård Skaflestad
a03d7589b2
Merge pull request #3341 from joakim-hove/explicitly-clear-well-potentials
...
Explicitly zero well potentials at the start of report step
2021-06-02 18:14:41 +02:00
Arne Morten Kvarving
29137eae7c
remove unused prototype
2021-06-02 15:27:03 +02:00
Joakim Hove
f733e33d70
Explicitly zero vectors at the start of report step
2021-06-02 14:21:36 +02:00
Joakim Hove
c5a7b49c3d
Use perfrates.size() instead of storing num_perf explicitly
2021-06-02 10:21:02 +02:00
Joakim Hove
d57a8514a2
Merge pull request #3323 from joakim-hove/remove-segment-pressure-drop
...
Remove segment pressure drop as separate variable
2021-05-31 14:08:38 +02:00
Arne Morten Kvarving
92dd2a1075
pass doubles by value, not reference
2021-05-31 11:44:08 +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
Arne Morten Kvarving
ef635d42af
VFPHelpers: put in separate compile unit
2021-05-31 11:42:29 +02:00
Arne Morten Kvarving
4c4a612cc5
changed: remove unused functions from VFPHelpers
2021-05-31 11:42:29 +02:00
Joakim Hove
2d67d085ef
Remove segment pressure drop as separate variable
2021-05-31 09:10:33 +02:00
Markus Blatt
1ea70da7e6
Merge pull request #3321 from blattms/fix-cuda-only-compilation
...
Fixes compilation with CUDA but without OpenCL.
2021-05-31 08:53:54 +02:00
Bård Skaflestad
5793f91ae0
Merge pull request #3313 from totto82/fix_ginj_reduction
...
fix reduction rate for injection groups
2021-05-29 17:17:27 +02:00
Joakim Hove
db49c8aeef
Merge pull request #3309 from joakim-hove/wellrates-at
...
Make sure all wells are added to the well_rates map
2021-05-29 07:53:45 +02:00
Markus Blatt
7c17db3d06
Fixes unused variable warnings for CUDA only.
2021-05-28 16:26:46 +02:00
Markus Blatt
6ffde47096
Fixes compilation with CUDA but without OpenCL.
...
Using statements should not be in namespaces anyway...
2021-05-28 16:26:46 +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
Bård Skaflestad
d3437d77b1
Merge pull request #3317 from joakim-hove/fix-unused
...
Remove unused variable
2021-05-28 14:14:27 +02:00
Bård Skaflestad
e695c356c5
Merge pull request #3310 from joakim-hove/disable-color-coding
...
Check that stdout is connected to tty before applying color coding
2021-05-28 13:09:08 +02:00
Bård Skaflestad
f7b0d599c8
Merge pull request #3314 from akva2/eclproblem_typetag_split
...
eclproblem: split in typetag and typetag independent parts
2021-05-28 11:47:37 +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
953de0c6b9
Remove unused variable
2021-05-28 11:14:19 +02:00
Joakim Hove
3fae970e7e
Merge pull request #3316 from joakim-hove/segment-use-well-index2
...
Segment use well index2
2021-05-28 10:48:13 +02:00
Joakim Hove
d2510714e0
Check that stdout is attached to terminal before applying color
2021-05-28 10:20:10 +02:00