Commit Graph

177 Commits

Author SHA1 Message Date
Vegard Kippe
60d738bc1c Allow query for efficiency scaling factor in off-process wells where required 2024-12-19 13:31:52 +01:00
Arne Morten Kvarving
82a9698d27 added: support a scaling factor for well efficiency 2024-12-17 08:41:25 +01:00
Lisa Julia Nebel
6bdb80126f Add parameter enableDistributedWells to the well state an when set to true, do not throw when initalizing distributed multi-segment wells in WellState.cpp 2024-11-22 15:16:00 +01:00
Kai Bao
588b8215f2
Merge pull request #5680 from lisajulia/feature/ms-wells
Feature/ms wells - part 1: Initial assembly of B C D and the residual
2024-11-21 22:54:48 +01:00
Lisa Julia Nebel
655f4011c7 Calculate the segment rates of the well state correctly, i.e. sum when the well is distributed over multiple processes 2024-11-21 16:09:10 +01:00
Vegard Kippe
673d541932 Earlier continue and rename vector 2024-11-20 16:25:38 +01:00
Vegard Kippe
e189d56167 Explicit check for inactive wells and throw if trying to initialize a distributed multi-segment well 2024-11-20 15:40:18 +01:00
Vegard Kippe
c42f02e802 Do not try to compute initial solution for inactive multi-segment wells 2024-11-19 15:57:49 +01:00
Vegard Kippe
7f6c7aec01 Info message, cmdline option and avoid splitting wells on restart (for now) 2024-10-22 20:29:24 +02:00
Vegard Kippe
6c4512be12 Fix MPI restart issue (test failures for some oil-water cases) 2024-10-16 22:24:01 +02:00
Vegard Kippe
f7ac4f8a3c Avoid initializing inactive multi-segment wells + avoid direct MPI call 2024-10-16 22:24:01 +02:00
Arne Morten Kvarving
11158a219a WellState: optionally instantiate for float 2024-08-19 13:09:42 +02:00
Vegard Kippe
0320a14eed Avoid expensive schedule.getWells() call and also update BlackoilWellModel_impl.hpp to use new signature of updateWellsDefaultALQ 2024-08-15 21:04:04 +02:00
Vegard Kippe
9dc5272ecc Ensure default ALQ is set for all production wells on all processes 2024-08-15 15:11:30 +02:00
Tor Harald Sandve
f678c082de Adapt to inj prefix and cleanup 2024-08-01 11:23:00 +02:00
Tor Harald Sandve
5f8916c0c3 Use cell temperature in perforated cell to compute reservoir rates 2024-08-01 11:14:29 +02:00
Atgeirr Flø Rasmussen
34d44876fb Initialize member for test constructor. 2024-06-27 11:24:54 +02:00
Arne Morten Kvarving
16f5290038 ParallelWellInfo: template Scalar type 2024-05-22 09:48:22 +02:00
Arne Morten Kvarving
81189b89c7 PerforationData: template Scalar type 2024-05-22 09:48:07 +02:00
Arne Morten Kvarving
be57843296 WellState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
58f334b264 ALQState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
ab0e696709 SingleWellState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
e46e52f3dc SegmentState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
a6cb9134ff WellState: remove template parameters for comm
use Parallel::Communication directly instead
2024-04-17 09:37:04 +02:00
Arne Morten Kvarving
ba96a94277 avoid derefing out-of-bounds if there are no alqs 2024-04-02 16:43:02 +02:00
Arne Morten Kvarving
c263ae9b66 fixed: out-of-bounds reference with no wells 2024-04-01 21:34:42 +02:00
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