Bård Skaflestad
6dd043446e
Communicate Dynamic Transmissibility Multiplier to Output Layer
...
This commit captures the rock compaction transmissibility multiplier
in the 'PerfData' during the non-lienear iterations and communicates
the converged value back to the output layer through the new data
member to the data::Connection structure,
double data::Connection::compact_mult
2024-01-25 09:35:08 +01:00
Vegard Kippe
69f82f1104
Allow using UDQ for WCONPROD item 12 (ALQ)
2023-12-01 13:21:34 +01:00
Tor Harald Sandve
ee77d30fe5
Add output of connection dissolved gas and vapporized oil
2023-11-21 14:29:40 +01:00
Bård Skaflestad
bf72698310
Merge pull request #4832 from totto82/wdaccor_refactor
...
Implement Forchheimer term in wellIndex
2023-10-31 17:46:49 +01:00
Tor Harald Sandve
90e791877c
Implement Forchheimer term in wellIndex
...
Add output of CDFAC
Add effect of compaction on CTFAC
2023-10-23 08:55:21 +02:00
Kai Bao
e1018e2815
if there is no VFP table associated with the well
...
we set the thp to be zero in the WellState. The previous logic related
this to THP constraints does not hold in multiple situations:
1. VFP table is specified, we need the THP value for output purpose
2. network is involved, we need the THP value for constraint check.
2023-10-16 21:43:18 +02:00
Kai Bao
f7bd386402
adding the support for filtration_summary_keywords
2023-08-29 21:31:24 +02:00
Arne Morten Kvarving
92fa9577da
consistently use std::size_t
2023-08-15 09:32:10 +02:00
Bård Skaflestad
77fe28979e
Calculate Segment Phase and Mixture Densities for Summary Output
...
This commit adds logic and backing storage in the SegmentState to
provide the segment level summary vectors
- SDENx -- Phase density of phase 'x' (O, G, W)
- SDENM -- Mixture density without flowing fraction exponents
- SMDEN -- Mixture density with flowing fraction exponents
We defer the calculation of SDENM and, especially, SMDEN, to the
MultisegmentWellSegments class since this class maintains the
current flowing fractions.
2023-07-05 11:05:26 +02:00
Kai Bao
b1fad4bb10
store the inj_multiper in PerfData in WellState
2023-06-27 12:49:25 +02:00
Arne Morten Kvarving
c18fb6a577
changed: store rates in an array in SingleWellState
...
introduce an enum for indexing into the array. this again
allows us to coalesce 4 parallel reductions into one.
2023-05-09 12:26:18 +02:00
Tor Harald Sandve
dbe8c3d294
Support WGRUPCON item 2 = no
2023-03-31 11:47:33 +02:00
Arne Morten Kvarving
d9c801033a
cosmetics
2023-02-16 09:52:36 +01:00
Arne Morten Kvarving
b7a531b93a
WellState: add serialization support
2023-02-16 09:43:39 +01:00
Arne Morten Kvarving
df181f2200
WellState.hpp: remove unnecessary Well.hpp include
...
forward WellStatus
2023-01-18 11:24:25 +01:00
Arne Morten Kvarving
6d97ca97a1
add missing Well.hpp includes
2023-01-18 11:24:25 +01:00
Arne Morten Kvarving
351181f355
add missing WellSegments.hpp includes
2023-01-12 14:37:32 +01:00
Arne Morten Kvarving
7f7b373a2d
add missing WellConnections.hpp includes
2023-01-12 12:24:32 +01:00
Arne Morten Kvarving
7dce14929b
WellState: avoid use of sstream
2023-01-02 15:25:13 +01:00
Tor Harald Sandve
5854b8a7a1
Support gas dissolution in water (Rsw)
...
- adapt to interface change in waterPvt()
- add gas + water + disgasw simulator
Note
- MSW is not supported
- EQUIL initialization is not supported
2022-12-21 13:13:52 +01:00
Markus Blatt
8cde90fbd0
[bugfix,mswell] Throw for connections not attached to segments.
...
If there are connections of a multisegment well that are not
connected to any segment, we throw with a meaningful error message
instead of a silent segmentation fault. In that case an invalid segment index
of zero would be returned. The corresponding storage index returned by
segmentToNumberIndex ould become -1. This previously lead to segmentation
faults when using it to index a container.
2022-12-16 16:12:47 +01:00
Kai Bao
3d86688d0f
renaming local_comp_index to local_conn_index
...
in function WellState::reportConnections() since there is no
completion involved here.
2022-12-01 15:42:18 +01:00
Kai Bao
aaf76227f6
using correct CPI indices for connections
...
in WellState::reportConnections()
2022-12-01 15:16:35 +01:00
Bård Skaflestad
5b69890ece
Report Solution GOR and OGR at Segment Level
...
This enables calculating the SOFRF and SGFRF summary vectors.
2022-11-22 18:06:05 +01:00
Markus Blatt
d8ca55fe34
Merge pull request #4265 from totto82/well_temp
...
adapt to changes in temperature location in opm-common
2022-11-22 12:26:46 +01:00
Bård Skaflestad
936e9e87e7
Convey More Dynamic State Values per Segment to Output Layer
...
In particular, report local condition segment flow velocities,
segment holdup fractions, and segment phase viscosities.
2022-11-17 11:49:29 +01:00
Tor Harald Sandve
76dc8255fc
adapt to changes in temperature location in opm-common
2022-11-11 13:19:38 +01:00
Kai Bao
178d554d2c
we do not copy SegmentState if the segment number changes
2022-11-04 16:38:57 +01:00
Bård Skaflestad
203ade29b8
Support Variable Length Connection Data in Distributed Wells
...
With the addition of tracer information in the data::Rates object
we must relax the assumption that the object is POD. Switch to
using the Point2PointCommunicator protocol for gathering connection
solutions on the well's owner before transferring well solution
objects to the I/O rank.
2022-11-03 11:37:53 +01:00
Arne Morten Kvarving
c68d979d4b
remove unused variables
2022-09-09 08:38:17 +02:00
Arne Morten Kvarving
2c0ff6f81e
consistently use ParallelCommunication.hpp for communication definition
2022-09-01 12:26:11 +02:00
Markus Blatt
c22114af41
Handle injection/producer targets correctly for distributed wells.
...
We should never return in a function if there are no local
perforations for a distributed well, but that is what we did before
this fix.
2022-07-28 17:52:26 +02:00
Paul Egberts
ab3be6dce4
adjustments to account for vaporized water
2022-04-08 22:36:39 +02:00
Joakim Hove
6b92443cb4
Downstream filesystem reorganisation in opm-common
2022-01-02 14:33:34 +01:00
Joakim Hove
44ad5ab190
Remove superfluos is injector or producer test
2021-11-03 12:35:28 +01:00
Joakim Hove
05317e1d72
Extract functionality to update target rates to SingleWellState
2021-11-03 12:30:40 +01:00
Joakim Hove
53dba36513
Move resetConnectionFactor to SingleWellState
2021-11-03 12:30:40 +01:00
Joakim Hove
ec780676e2
Split initSinglewell for producer and injector
2021-11-01 16:02:34 +01:00
Joakim Hove
d213bc9d78
Initialize static perforation data in SingleWellState constructor
2021-11-01 16:02:34 +01:00
Joakim Hove
6c16b5dbb8
Move variable to local scope
2021-11-01 16:02:34 +01:00
Joakim Hove
93218b05c2
Use multiple returns in init single well
2021-11-01 16:02:34 +01:00
Joakim Hove
2527970d11
Replace two assert() with one throw
2021-11-01 16:02:34 +01:00
Joakim Hove
029d1794f8
Remove local variable
2021-11-01 16:02:34 +01:00
Joakim Hove
807ac101d8
Add name member to SingleWellState
2021-11-01 16:02:34 +01:00
Joakim Hove
03cf7b0327
Move updateStatus functionality to SingleWellState
2021-11-01 16:02:31 +01:00
Joakim Hove
d150f400fe
Move code from WellState to SingleWellState
2021-11-01 13:23:17 +01:00
Joakim Hove
122678e5ea
Remove unused function argument
2021-10-01 08:34:58 +02:00
Joakim Hove
2f94f0436b
Remove irrelevant private functions
2021-10-01 08:34:27 +02:00
Joakim Hove
3aaaa23ed1
Implement connection rate summation in SingleWellState
2021-09-28 23:45:40 +02:00
Joakim Hove
86a0662381
Use std::reference_wrapper<> for parallel well info
2021-09-28 21:42:57 +02:00