Arne Morten Kvarving
3284ba80e8
StandardWell: rename ebosSimulator to simulator
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
fb7c4f6fd2
move ebos/eclproblem.hh to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
3475da7d8c
Rename ebos_simulator members/parameters to simulator
2024-03-06 10:53:00 +01:00
Kai Bao
cd9a208757
Merge pull request #5166 from akva2/indices_drop_ebos
...
Drop ebos in index functions
2024-03-05 23:31:27 +01:00
Kai Bao
c61f0b104c
outputting segments with pressure close to lower limit
...
if the well does not get converged.
2024-03-02 16:28:33 +01:00
Kai Bao
f7ad5cb211
not using spres_lower_limit limit non-top segments
...
with multi-segments, the segment pressure can be lower than the bhp, so
it is not desirable to use spres_lower_limit to limit the segment
pressure. We only use spres_lower_limit to limit the bhp, which is still
valid until we begin using bhp limit lower than 1 bar.
2024-03-02 15:19:17 +01:00
Markus Blatt
5bafd76b94
Merge pull request #5230 from akva2/fractioncalculator_split
...
FractionCalculator: put in separate translation unit
2024-02-29 08:22:59 +01:00
Kai Bao
06dba324d2
Merge pull request #5221 from vkip/avoid_injector_alq_lookup
...
Avoid injector alq lookup
2024-02-28 11:40:27 +01:00
Arne Morten Kvarving
33dcc0bd50
FractionCalculator: put in separate translation unit
2024-02-27 13:00:23 +01:00
Arne Morten Kvarving
dc95f0534c
WellGroupHelpers: use type alias instead of template parameter for Comm
2024-02-27 12:29:08 +01:00
Arne Morten Kvarving
fd33e2262a
WellInterface: improve IDE experience
2024-02-27 10:43:03 +01:00
Arne Morten Kvarving
d0072727cd
StandardWell: improve IDE experience
2024-02-27 10:43:03 +01:00
Arne Morten Kvarving
865079bbe1
MultisegmentWell: improve IDE experience
2024-02-27 10:43:03 +01:00
Arne Morten Kvarving
f9a2c63519
GasLiftSingleWell: improve IDE experience
2024-02-27 10:43:03 +01:00
Arne Morten Kvarving
90aadd4c94
BlackoilWellModel: improve IDE experience
2024-02-27 10:43:03 +01:00
Arne Morten Kvarving
73410e1c3a
remove unused includes
2024-02-23 08:20:14 +01:00
Arne Morten Kvarving
9cc13977b0
MultisegmentWell: use CTAD
2024-02-23 08:20:14 +01:00
Vegard Kippe
6a760f40dd
Avoid looking up (non-existing) ALQ value for injectors.
2024-02-22 14:33:39 +01:00
Kai Bao
60594a5e1b
Merge pull request #5129 from steink/avoid_reopening_stopped_wells
...
Avoid re-opening previously stopped wells
2024-02-12 14:44:15 +01:00
Arne Morten Kvarving
dd290b4a1d
RegionAverageCalculator: rename EbosSimulator to Simulator
2024-02-08 14:45:29 +01:00
Arne Morten Kvarving
7706748210
RateConverter: rename EbosSimulator to Simulator
2024-02-08 14:45:02 +01:00
Arne Morten Kvarving
c0a50597a1
BlackoilWellModel::computePotentials: improve exception message
...
- add which well the exception added for
- concatenate message for all exceptions to show all, not just last exception
2024-02-07 14:12:54 +01:00
Arne Morten Kvarving
34e883c1de
WellInterfaceFluidSystem: rename flowPhaseToEbosPhaseIdx to flowPhaseToModelPhaseIdx
2024-02-07 08:08:30 +01:00
Arne Morten Kvarving
c4c7d2e4f5
WellInterfaceIndices: rename ebosCompIdxToFlowCompIdx to modelCompIdxToFlowCompIdx
2024-02-07 08:08:30 +01:00
Arne Morten Kvarving
c029a57c72
WellInterfaceIndices: rename flowPhaseToEboxCompIdx to flowPhaseToModelCompIdx
2024-02-07 08:08:30 +01:00
Bård Skaflestad
f6c5397af2
Merge pull request #5139 from GitPaean/shutwell_noxflow_zerorate
...
shutting wells zero rate constraint and not allowing crossflow
2024-02-02 09:59:05 +01:00
Tor Harald Sandve
6afee54ec0
Merge pull request #5140 from svenn-t/fix_grat_solvent
...
Fix WCONPROD GRAT control mode with solvent
2024-02-02 08:21:39 +01:00
Kai Bao
e5e9143a2a
shutting wells zero rate constraint and not allowing crossflow
2024-02-01 23:09:53 +01:00
Arne Morten Kvarving
dd92a7446c
BlackoilModelParametersEbos: rename to BlackoilModelParameters
2024-02-01 09:05:40 +01:00
Svenn Tveit
b65f85a6c4
Add solvent rate in GRAT control mode
2024-01-31 18:18:19 +01:00
Kai Bao
2ddba5b339
Merge pull request #5128 from steink/fix_network_convergence_issues
...
Fix network convergence issues
2024-01-30 00:17:09 +01:00
Stein Krogstad
97477ea593
avoid re-opening previously stopped wells
2024-01-26 16:24:09 +01:00
Stein Krogstad
24c4f75ecb
Use stricter tolerance when dynamic thp
2024-01-26 15:02:14 +01:00
Stein Krogstad
a9ab62e6b8
Don't set lower bound on network update
2024-01-26 14:58:06 +01:00
Vegard Kippe
31b46b4829
Revert the choice to open history wells at every step, since this may cause some models to be stuck at very short time steps.
2024-01-26 12:05:26 +01:00
Bård Skaflestad
d2af824b27
Merge pull request #5120 from atgeirr/avoid-nldd-crash
...
Avoid illegal combination of options.
2024-01-25 15:38:36 +01: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
Bård Skaflestad
8a8af09e7a
Defer More Static D-Factor Calculation to Connection Class
...
In particular, we don't need the porosity value anymore now that the
"getDFactor()" function takes only the component density of gas at
surface conditions, the current dynamic gas viscosity at reservoir
conditions and a Connection object.
While here, split a few long lines and make more objects 'const' for
better maintainability.
2024-01-24 18:03:09 +01:00
Atgeirr Flø Rasmussen
3c4dd1f3b7
Avoid illegal combination of options.
...
NLDD requires --matrix-add-well-contributions=true for now.
Also: minor improvement to well rank and subdomain output clutter.
2024-01-24 14:19:07 +01:00
Bård Skaflestad
24ebb77257
Merge pull request #5116 from atgeirr/parallel-well-domain-output
...
Parallel well domain and error logging for NLDD
2024-01-23 15:41:11 +01:00
Arne Morten Kvarving
98c704c1c3
changed: move ebos/eclmpiserializer.hh to opm/simulators/utils/MPISerializer.hpp
...
it does not use the typetag system
2024-01-23 10:51:32 +01:00
Atgeirr Flø Rasmussen
1842df7cfd
Output well subdomain info properly in the parallel case.
2024-01-19 16:15:53 +01:00
Bård Skaflestad
ceffbd2fc5
Chase Constructor API Change for Opm::Connection Class
2024-01-15 11:05:02 +01:00
Bård Skaflestad
534465d212
Merge pull request #5104 from atgeirr/nldd-improved-reporting
...
Nldd improved reporting
2024-01-15 11:00:58 +01:00
Atgeirr Flø Rasmussen
6eb670b5c7
Improve parallel logging in NLDD solver.
2024-01-15 09:08:52 +01:00
Tor Harald Sandve
d72ea5fcb0
add option for explicit pressure for rock compaction (only transmissibility)
2024-01-11 16:09:08 +01:00
Stein Krogstad
cdb43d917b
Include all derivatives for acceleration term in MS wells
2024-01-09 11:59:07 +01:00
Vegard Kippe
b7b99a2445
Fixed var names
2023-12-20 15:06:01 +01:00
Vegard Kippe
32634f47d1
Properly check both positive and negative solutions to the connection IPR with flow-dependent skin
2023-12-20 14:20:50 +01:00
Vegard Kippe
ab690980de
Pick valid rate or use zero flow-dependent skin
2023-12-20 14:20:50 +01:00
Vegard Kippe
d252f069e4
Test using rate consistent D-factor transmissibility multipliers
2023-12-20 14:20:50 +01:00
Stein Krogstad
e908c95ca2
Avoid call to saturationPressure
2023-12-19 09:54:52 +01:00
Bård Skaflestad
fc73a51310
Merge pull request #4873 from vkip/wsegvalv_uda_item4
...
Allow UDA for WSEGVALV item 4
2023-12-13 21:19:27 +01:00
Vegard Kippe
fcc3a19a42
Explicit cast to avoid narrowing warning.
2023-12-13 14:34:36 +01:00
Arne Morten Kvarving
6e21bdb35b
GroupEconomicLimitsChecker: use std::array
2023-12-12 15:56:08 +01:00
Arne Morten Kvarving
d9cd6b51c3
GroupEconomicLimitsChecker::closeWellsRecursive: pass group as const ref
2023-12-12 15:53:37 +01:00
Arne Morten Kvarving
825b4b6677
GroupEconomicLimitsChecker: cleanup includes
2023-12-12 15:51:37 +01:00
Vegard Kippe
62de832e8b
Post review update
2023-12-12 09:52:01 +01:00
Vegard Kippe
62ac4dc663
Take default UDQ value from UDQPARAM
2023-12-12 09:52:01 +01:00
Vegard Kippe
15305e467d
Allow UDA for WSEGVALV item 4
2023-12-12 09:51:50 +01:00
Arne Morten Kvarving
035bd3a725
GasLiftXXX: clean up includes
...
in particular avoid including GasLiftStage2.hpp in BlackoilWellModel
2023-12-11 15:55:05 +01:00
Arne Morten Kvarving
7841f6abcb
remove dead store
2023-12-08 18:42:41 +01:00
Arne Morten Kvarving
3534c6d1fa
mark overriden virtual method as such
2023-12-08 18:42:21 +01:00
Atgeirr Flø Rasmussen
a52877081e
Merge pull request #5046 from blattms/comm-exception-wetgaspvt-sat-pressure
...
[fix,MPI] Handle exception during assembleWellEqWithoutIteration correctly
2023-12-08 13:02:42 +01:00
Stein Krogstad
051f4d4eab
Remove early-return functionality due to unintended consequences
2023-12-08 00:36:39 +01:00
Markus Blatt
50e1d09a8c
Add semicolon to help with indentation.
2023-12-07 16:41:16 +01:00
Markus Blatt
260dac77a5
[MPI] Handle exception during assembleWellEqWithoutIteration correctly
...
For this particular model WetGasPVT::saturationPressure did throw
because convergence in the newton solver is not reached in 20
iterations. Unfortunately, the exception was only seen on one MPI rank
and the others continued.
With this commit we communicate the problem and throw on all MPI
processes. Time step will be cut as a result.
2023-12-07 15:41:35 +01:00
Stein Krogstad
7c91c015cf
updates according to Atgeirrs comments
2023-12-07 13:09:00 +01:00
Stein Krogstad
1fd1c5afc6
Updates according to Atgeirr's comments
2023-12-07 13:09:00 +01:00
Stein Krogstad
00bd006eb4
Fix bugs
2023-12-07 13:09:00 +01:00
Stein Krogstad
94cde80235
always set wells operable to avoid skipping linear solve/updating
2023-12-07 13:09:00 +01:00
Stein Krogstad
2121373e4f
clean-up
2023-12-07 13:09:00 +01:00
Stein Krogstad
5083052a3f
clean-up, fixing and add debug info
2023-12-07 13:09:00 +01:00
Stein Krogstad
743c7bd120
add argument to get proper conv for well-copies
2023-12-07 13:09:00 +01:00
Stein Krogstad
9a5aef6e5e
move function for proper access to well_state
2023-12-07 13:09:00 +01:00
Stein Krogstad
88ede7b7fc
revert to original
2023-12-07 13:09:00 +01:00
Stein Krogstad
ee16e90ba2
fix well-convergence for well-copies
2023-12-07 13:09:00 +01:00
Stein Krogstad
03366b92eb
include thp-solve for potentials
2023-12-07 13:09:00 +01:00
Stein Krogstad
44e17fa615
cleanup thp-solve
2023-12-07 13:09:00 +01:00
Stein Krogstad
3e6732a67b
rename to implicit_ipr
2023-12-07 13:09:00 +01:00
Stein Krogstad
746e05db5d
Include implicit ipr for ms-wells
2023-12-07 13:09:00 +01:00
Stein Krogstad
b287981e5e
testing
2023-12-07 13:09:00 +01:00
Stein Krogstad
7aa50f149f
updates
2023-12-07 13:09:00 +01:00
Stein Krogstad
2470b20d13
final revert
2023-12-07 13:09:00 +01:00
Stein Krogstad
94c0b49cf7
revert changes
2023-12-07 13:09:00 +01:00
Bård Skaflestad
d2ee47de7f
Merge pull request #5041 from steink/prevent_nans_for_valve_models
...
Guard against nans from certain expressions in the valve models
2023-12-06 19:42:32 +01:00
Stein Krogstad
4355a94511
make reference to parameter
2023-12-06 14:45:18 +01:00
Markus Blatt
abd387abba
Merge pull request #5036 from blattms/comm-sigular-mat-exception
...
Communicate exceptions during WellModel::updateAndCommunicate
2023-12-06 09:54:00 +01:00
Stein Krogstad
a483839caa
return zero for powers with negative base
2023-12-05 21:28:54 +01:00
Markus Blatt
3a9c586d19
Make sure that problems with singular matrices are logged.
...
Previously, if the problem occured on an MPI process with rank other
than zero the the logging would not seen (at least in the output
files). Now together with the previous commit the problem should be
logged together with the well name and calling method.
2023-12-04 23:15:08 +01:00
Markus Blatt
779dd74923
Communicate exceptions during WellModel::updateAndCommunicate
...
For multi segment well the underlying call to
MultisegmentWell::updateWellStateWithTarget (at least if
updateWellStateWithTHPTargetProd is called for a producer under thp
control) might throw as there might be a singular matrix during the
solve needed in MultisegmentWell::iterateWellEqWithControl.
Previously, if that happened then the MPI process where it happened would
stop the nonlinear iteration as failed and try with a chopped time
step. The others might go one with the current time step and we would
see MPI errors about truncated messages.
Now we communicate any exception happening during this part of
WellModel::updateAndCommunicate and all processes will stop the
nonlinear iteration as failed and chop the time step.
2023-12-04 22:26:55 +01:00
Vegard Kippe
55067636f4
Ensuring that the UDA is updated every time step, not just only report step.
2023-12-01 19:44:09 +01:00
Vegard Kippe
fa6697a5fa
Capture reference in lambda
2023-12-01 13:30:48 +01:00
Vegard Kippe
69f82f1104
Allow using UDQ for WCONPROD item 12 (ALQ)
2023-12-01 13:21:34 +01:00
Vegard Kippe
17452e0fc6
Adding const
2023-12-01 09:34:42 +01:00
Vegard Kippe
0acb148ba7
Using std::exception
2023-11-30 16:13:40 +01:00
Vegard Kippe
2294983759
Catch exceptions from well testing (often: inf/nan in MSW matrices).
2023-11-29 09:17:53 +01:00
Bård Skaflestad
5fe1eafb34
Merge pull request #5026 from totto82/fix_gpmaint2
...
Bugfix sign of gpmaint prod
2023-11-28 11:16:03 +01:00
Tor Harald Sandve
f7323bd679
fix sign of gpmaint prod
2023-11-27 15:10:11 +01:00
Atgeirr Flø Rasmussen
cb3ab14a71
Merge pull request #5025 from blattms/expect-singular-matrices-upate-WellControl
...
[bugfix] Expect singular matrices, terminate updateWellControls/nonlinear and cut timestep
2023-11-27 08:42:11 +01:00
Markus Blatt
31ab752ae6
[fix] Parallel try-catch also added for updateWellControls for groups.
...
Not sure whether this is needed, but better safe than sorry.
2023-11-25 21:04:13 +01:00
Markus Blatt
50c25ead52
[bugfix] Expect singular matrices and terminate updateWellControls.
...
We are experiencing singular matrices when solving mulisegment wells
sometimes. In that case (here during
BlackoilModelEbos::assembleReservoir <-
BlackoilModelEbos::initialLinerization <-
BlackoilModelEbos:::nonlinearIterationNewton ) an exception is thrown
when updating the controls of a well.
The problem here is that this exception only happens on one
process. That one goes to the catch block in
NonLinearSolverEbos::step, marks the nonlinear solve as failed and
cuts the time step. The others move to the collective communication
below. Somehow and somewhen all end up in a non-matching collective
communication with different data types and we get an MPI Error that
the message was truncated.
Now all processes will throw, terminate the nonlinear solver and cut
the timestep as it should be.
2023-11-25 19:32:11 +01:00
Bård Skaflestad
cd94ac3a7c
Merge pull request #5023 from totto82/wpimult
...
Adapt wdfac to wpimult
2023-11-23 16:28:32 +01:00
Bård Skaflestad
7343aca2be
Merge pull request #5018 from blattms/parallel-well-fixes
...
[fix] Do parallel sums with int instead of bool.
2023-11-23 16:24:36 +01:00
Tor Harald Sandve
e1aa233026
Adapt wdfac to wpimult
2023-11-23 15:22:51 +01:00
Kai Bao
3aed0b9501
not updating the connection pressure for StandardWell
...
at the early stage of computeWellRatesWithBhpIterations. The perforation rates are not updated,
and it is not sensible to update based on the inconsistent well rates and perforation rates.
Better to keep the original explicit quantities for better consistency.
Furthermore, it can be dangerous to update the explicit quantities based on the
irrelevant perforation rates, since the ratios can be very undesirable due to crossflow.
2023-11-23 09:13:57 +01:00
Stein Krogstad
b08bc029e6
Fix shut-in logic for wells with shut-intructions
2023-11-22 16:53:48 +01:00
Markus Blatt
6a866ac8d2
[fix] Do parallel sums with int instead of bool.
...
Using bool here is at least frowned upon. To be honest, I have no idea
what happens underneath here if we pass a bool. In contrast to other
pod types we do not associate it with a builtin type of MPI (not even
sure what to use). Hence we probably create a custom type for sending
and receiving. That should work. But I have no idea what will be used
for summation.
BTW: I am debugging a case that previously crashed and now suddenly
works and this seems to be the only relevant change I made in the
meantime.
2023-11-22 16:50:57 +01:00
Bård Skaflestad
8dca5a931e
Merge pull request #5005 from totto82/fixWDFACCOR
...
dont scale d factor from wdfaccor with connection factor
2023-11-22 14:55:51 +01:00
Tor Harald Sandve
be06132702
remove trans multiplier from dake
2023-11-22 13:59:06 +01:00
Tor Harald Sandve
4879896789
adapt to refactoring of getDFactor
2023-11-22 09:17:28 +01:00
Tor Harald Sandve
ecd9930225
dont scale d factor from wdfaccor
2023-11-21 17:51:36 +01:00
Tor Harald Sandve
ee77d30fe5
Add output of connection dissolved gas and vapporized oil
2023-11-21 14:29:40 +01:00
Kai Bao
6ab809c69d
Merge pull request #5004 from blattms/control-mode-typo
...
Fixed typo: control model -> control mode.
2023-11-20 09:13:03 +01:00
Markus Blatt
de50fe5702
Fixed typo: control model -> control mode.
2023-11-20 08:29:24 +01:00
Vegard Kippe
abbcb4b148
Check if a well was closed this step before re-opening in history mode
2023-11-17 17:29:30 +01:00
Bård Skaflestad
c559de51cf
Merge pull request #4996 from totto82/fixWDFAC
...
Fix wdfac and d factor in comdat
2023-11-17 09:09:22 +01:00
Tor Harald Sandve
82cb3c3b53
Fix connection and well dfactor
...
The well dfactor is scaled by the well index
If postive the connection dfactor is threated as a well factor
and also scaled. If negative the connection dfactor is not scaled
2023-11-16 14:50:59 +01:00
Kai Bao
e355990ac2
Merge pull request #4999 from vkip/always_open_historic_wells
...
Always check if wells on historic controls can be opened
2023-11-15 20:29:21 +01:00
Vegard Kippe
e0d1ff9c66
Always check if wells on historic controls can be opened
2023-11-15 19:04:48 +01:00
Bård Skaflestad
f195f73949
Extract Binary_Search Out to Helper
...
Mostly for readability.
2023-11-15 13:31:41 +01:00
Bård Skaflestad
0b2c396a01
Merge pull request #4961 from vkip/network_restart_use_node_pressures
...
Use network pressures from restart
2023-11-15 09:46:35 +01:00
Tor Harald Sandve
0f12977b17
only use d factor for gas wells
2023-11-14 12:45:25 +01:00
Tor Harald Sandve
e33d27ca90
Merge pull request #4973 from daavid00/enabledisgaswatvap
...
Enabling disGas and watVap at compile time for gasWaterBrine systems
2023-11-13 15:01:38 +01:00
Kai Bao
bbdad520d6
Merge pull request #4915 from vkip/network_multi_root
...
Support computation of network pressures in networks with multiple roots
2023-11-13 14:39:07 +01:00
Arne Morten Kvarving
ddd0c5629d
GasLiftSingleWellGeneric: avoid dead store
...
all branches below write a new value
2023-11-10 14:32:30 +01:00
Vegard Kippe
4ce9c41a37
Replacing loop by assignment
2023-11-10 09:01:09 +01:00
Bård Skaflestad
16c8184e3f
Merge pull request #4914 from vkip/extra_network_output
...
Allow output of network pressures based on rates at end of time step
2023-11-09 23:19:48 +01:00
Bård Skaflestad
7832c1ba54
Merge pull request #4976 from totto82/fix_rsw
...
Fix rsw computation of wellbore density for StW
2023-11-09 09:37:16 +01:00
Kai Bao
25b007c46e
Merge pull request #4945 from vkip/network_reroute
...
Network reroute - avoid looking up nonexisting nodes
2023-11-08 19:59:40 +01:00
Atgeirr Flø Rasmussen
749ea93e24
Add and use OPM_DEFLOG_PROBLEM macro.
...
This should replace OPM_DEFLOG_THROW in places where the problem
category is more appropriate than the error category.
In this commit, uses of OPM_DEFLOG_THROW have been replaced whenever
the exception class used was NumericalProblem.
2023-11-08 15:16:17 +01:00
David Landa Marban
92de5355b2
Enabling disGas and watVap at compile time for gasWaterBrine
2023-11-07 18:35:30 +01:00
Bård Skaflestad
abfb5c9d82
Update Well Topology if Triggered From ACTIONX
...
This commit adds a new flag data member,
wellStructureChangedDynamically_
to the generic black-oil well model. This flag captures the
well_structure_changed
value from the 'SimulatorUpdate' structure in the updateEclWells()
member function. Then, in BlackoilWellModel::beginTimeStep(), we
key a well structure update off this flag when set. This, in turn,
enables creating or opening wells as a result of an ACTIONX block
updating the structure in the middle of a report step.
2023-11-07 17:02:18 +01:00
Tor Harald Sandve
26247a2aba
Fix rsw computation of wellbore density for StW
2023-11-07 15:53:51 +01:00
Stein Krogstad
0756e2d1c1
Initialize rates/previous rates before well-test
2023-11-06 11:46:44 +01:00
Arne Morten Kvarving
e3cd06c164
avoid uninitialized value static analyzer warning
2023-11-06 08:56:53 +01:00
Arne Morten Kvarving
fa45790bfb
changed: rename variable
...
this indicates that bracketing was successfully found,
not that we are looking for a bracket
2023-11-06 08:56:53 +01:00
Bård Skaflestad
9233e32d81
Merge pull request #4826 from totto82/fixResvRates
...
Compute resv rates based on pressure and temperature in the well for injectors in thermal cases
2023-11-01 16:24:10 +01:00
Vegard Kippe
14b7f926da
Avoid looking up nonexisting nodes..
2023-11-01 13:36:21 +01:00
Tor Harald Sandve
d7401e3b6b
Merge pull request #4919 from daavid00/saltprecPermFac
...
Multiply well trans due to perm reduction in salt prec
2023-11-01 13:29:57 +01:00
Bård Skaflestad
17886f934c
Merge pull request #4924 from GitPaean/fixing_gecon_welopen
...
use the WELL_SET_TO_OPEN event to open closed wells
2023-11-01 10:24:18 +01:00
David Landa Marban
c93d46c1be
Mult well trans due to perm reduction in salt prec
2023-10-31 22:11:55 +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
Vegard Kippe
c9cc261891
Use network pressures from restart
2023-10-30 23:26:35 +01:00
Vegard Kippe
429b312bc0
Re-introducing check for negative reportStepIdx and adding forgotten hasGroup check.
2023-10-27 20:30:48 +02:00
Vegard Kippe
f137565bb6
Avoid exception for non-group nodes
2023-10-26 19:35:56 +02:00
Vegard Kippe
5fbf981af8
Output of network pressures based on rates at end of time step
2023-10-26 19:35:56 +02:00
Tor Harald Sandve
a40ede9957
Compute reservoir injection rates from well temperature and pressure for thermal cases
2023-10-26 15:57:41 +02:00
Kai Bao
3e03ebbb58
making a few assertion to throw in StandardWellPrimaryVariables
...
to get more outputting information and also avoid harsh termination due
to assert.
They are technically numerical problem instead of programming mistakes.
2023-10-26 11:36:25 +02:00
Bård Skaflestad
95bc3822fb
Merge pull request #4948 from GitPaean/glo_active_enter_glift
...
checking LIFTOPT active before gliftBeginTimeStepWellTestUpdateALQ and before attempting to optimize alq in gliftBeginTimeStepWellTestIterateWellEquations
2023-10-26 09:06:23 +02:00
Kai Bao
beda7a0b35
checking LIFTOPT active before trying to optimizing alq
...
in gliftBeginTimeStepWellTestIterateWellEquations.
otherwise, if the increment is 0 (inactive), the function
gliftBeginTimeStepWellTestIterateWellEquations
might return undesired results or enter endless loop.
2023-10-25 23:00:54 +02:00
Kai Bao
2b97c3fe1d
checking LIFTOPT active before gliftBeginTimeStepWellTestUpdateALQ
...
to avoid meaningless message output related to GLIFT and WTEST
2023-10-25 21:45:19 +02: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
83ed0f01e5
use the REQUEST_OPEN_WELL event to open closed wells
2023-10-20 13:08:07 +02:00
Stein Krogstad
57c960d7c5
default value of option for extra derivatives
2023-10-19 15:12:00 +02:00
Stein Krogstad
dd6d195a6b
Add missing reverse flow derivatives for valve/icd/aicd
2023-10-19 15:12:00 +02:00
Bård Skaflestad
b60eb25285
Merge pull request #4918 from GitPaean/remove_white_spaces_wells_folder
...
removing white spaces in the wells folder
2023-10-19 09:08:03 +02:00
Bård Skaflestad
d98de155de
Merge pull request #4930 from GitPaean/not_reset_thp_value_well_state
...
not setting THP to be zero based whether having THP constraint from the Deck input in the WellState
2023-10-16 22:02:43 +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
b975ebff65
Merge pull request #4881 from vkip/no_network_solve_in_history
...
Avoid iterating network if no network wells are in prediciton mode
2023-10-16 14:54:36 +02:00
Vegard Kippe
5bb0942a02
Reverting unintended change.
2023-10-16 10:38:08 +02:00
Kai Bao
f5d3489d23
distinguishing report step and time step
...
for the funcitons related to createWellContainer() and
runWellPIScaling().
So it is not exhaustive, but we should do it gradually.
2023-10-11 11:33:02 +02:00
Kai Bao
a525f0865f
removing white spaces in the wells folder
2023-10-09 11:14:48 +02:00
Vegard Kippe
56997655d1
Support computation of network pressures in networks with multiple roots
2023-10-06 18:29:12 +02:00
Vegard Kippe
77bb7aa9cf
Let reported pressures (GPR) respect the NETBALAN configuration
2023-10-06 15:15:43 +02:00
Vegard Kippe
389db91839
Slight restructuring/renaming for (possibly) improved clarity.
2023-10-06 15:15:43 +02:00
Vegard Kippe
a8b4c25bfb
Separate network active and need for rebalance bool + perform check per timestep only.
2023-10-06 15:15:43 +02:00
Vegard Kippe
663c62e366
Avoid iterating network if no network wells are in prediciton mode
2023-10-06 15:15:42 +02:00
Arne Morten Kvarving
900056e8d7
mark variable maybe_unused
...
quells a clang warning
2023-10-05 09:31:36 +02:00
Markus Blatt
6a705b9b8e
Fixed spelling.
2023-10-04 13:24:01 +02:00
Markus Blatt
9279ce19e8
[bugfix] Fixes stopping network update in parallel at max steps.
...
We did only break in the loop for rank 0 and not the other ones. Hence
all other processes kept iterating beyond the maximum number of
allowed iterations. This lead to hard to find crashes because of
non-matching MPI communication.
2023-10-04 12:56:44 +02:00
Markus Blatt
fa04666b8a
Merge pull request #4888 from blattms/fix-compute-temperature-for-distwells
...
Fixes computation of temperature for distributed wells.
2023-10-02 17:22:09 +02:00
Kai Bao
b1974bbe45
recovering the SHUT during iteration beahvoir in prepareWellBeforeAssembling
...
when local_well_solver_control_switching_ is off
and incoporating commenst regarding resetting wellStatus_ in StandardWell within
the function iterateWellEqWithSwitching.
2023-09-29 10:55:19 +02:00
Kai Bao
e38e557bbc
cleaning up to preapre for pull request
2023-09-29 10:55:19 +02:00
Stein Krogstad
035d216641
adding function iterateWellEqWithSwitching
...
when we do the local solve for well equations, control/status will be
updated during the iteration process, such that the converged well gets
correct control/status regarding to the current reservoir state.
various change in the other parts of the code were made to make the
function work as intended.
2023-09-29 10:51:04 +02:00
Markus Blatt
2721b9fa2d
Fixes computation of temperature for distributed wells.
...
Previously, we did a global summation of the size of the
well_perf_data vector to determine the number of perforations
of a well. In the case of distributed wells this will try to access
more perforations than stored for the well in well_perf_data and hence
might use data from cells that actually are not perforated by this
cell. Note that for well not distributed the code worked as the
summation has no effect.
This commit changes this to only query peforations on the
local process. This should be enough to fix this problem.
In addition it removes the computation of connpos which is never used.
2023-09-22 18:56:27 +02:00
Bård Skaflestad
40927cb173
Merge pull request #4877 from GitPaean/bhp_lower_limit_below_1bar
...
reducing the bhp lower limit slightly to handle 1 bar bhp limit
2023-09-19 18:44:37 +02:00
Kai Bao
9d642fd7ce
only outputting some network info to the rank 0 process
2023-09-19 16:17:19 +02:00
Kai Bao
f4a420d2f9
reducing the bhp lower limit slightly to handle 1 bar bhp limit
...
it turns out that 1bar is the default bhp constraint for some keywords,
and some cases are depending on it.
2023-09-19 15:30:42 +02:00
Vegard Kippe
cc39e04180
Addresing review comments
2023-09-18 13:05:12 +02:00
Tor Harald Sandve
b55270defe
Merge pull request #4854 from vkip/gecon_closure_reason_group
...
Set GECON closure reason to GROUP, to not open with WTEST option 'E'.
2023-09-14 08:58:32 +02:00
Bård Skaflestad
6f27ffa68d
Merge pull request #4862 from vkip/avoid_negative_relaxation_factor_fraction
...
Avoid fraction relaxation factors outside [0,1] (standard wells)
2023-09-13 16:45:11 +02:00
Bård Skaflestad
69e9bf624a
Merge pull request #4860 from GitPaean/not_relaxing_rate_update
...
removing rate relaxation during updateNewton for StandardWellPrimaryVariables
2023-09-13 15:31:44 +02:00
Kai Bao
b79e3a7de2
removing rate relaxation during updateNewton in StandardWellPrimaryVariables
...
it was introduced back then for some purpose. The purpose might not
apply anymore due to other development. And also, some issues were
reported for some situtation with the approach.
2023-09-13 12:16:58 +02:00
Atgeirr Flø Rasmussen
708401ca14
Merge pull request #4861 from hnil/fixed_msw_addwellcontricutions
...
fixed add-well-contributions for multisegement wells
2023-09-13 11:40:40 +02:00
Atgeirr Flø Rasmussen
3673c05242
Merge pull request #4848 from vkip/gconsump_mpi_fix
...
Avoid adding/substracting GCONSUMP values per MPI process..
2023-09-13 11:00:04 +02:00
Vegard Kippe
2b45785097
Using std::clamp
2023-09-12 12:52:41 +02:00
hnil
29e968c232
fixed add-well-contributions for multisegement wells
2023-09-12 09:49:15 +02:00
Vegard Kippe
4638b3a9be
Avoid fraction relaxation factors outside [0,1] in the standard well model.
2023-09-12 00:20:02 +02:00
Vegard Kippe
a12f0aaa13
Set GECON closure reason to GROUP, to not open with WTEST option 'E'.
2023-09-08 11:16:11 +02:00
Vegard Kippe
dbd1d343e8
Avoid adding/substracting GCONSUMP values per MPI process..
2023-09-07 14:14:56 +02:00
Bård Skaflestad
1d33e7caf0
Merge pull request #4806 from totto82/initBHPinj
...
initialize all injectors with a rate to avoid singularities
2023-09-07 14:06:23 +02:00
Bård Skaflestad
bb04054d2c
Merge pull request #4842 from totto82/wellPressGW
...
use gas pressure for gas-water system in the well model
2023-09-07 12:47:05 +02:00
Bård Skaflestad
467671b946
Merge pull request #4840 from totto82/solvent_well_fix
...
Solvent well fix
2023-09-07 12:45:56 +02:00
Tor Harald Sandve
79e0b7256a
initialize all injectors with a rate to avoid singularities
2023-09-07 12:03:04 +02:00
Kai Bao
529af98ce9
setting uninitialized bhp to be bhp_limit in updateWellStateWithTarget
...
to avoid uninitialized bhp 0. to be used.
2023-09-07 08:50:37 +02:00
Tor Harald Sandve
8796fa1ccc
use gas pressure for gas-water system in the well model
2023-09-06 13:46:18 +02:00
Tor Harald Sandve
e31b2f3492
don't use relaxation factor fraction in combination with solvent
2023-09-06 13:24:31 +02:00
Tor Harald Sandve
c239427233
add solvent contribution to the gas potential
2023-09-06 13:23:55 +02:00
Stein Krogstad
7981253f39
prevent negative oil fractions
2023-09-05 11:18:16 +02:00
Tor Harald Sandve
80cbfe7fda
Merge pull request #4819 from hakonhagland/gecon3
...
Implement support for GECON keyword
2023-09-01 15:06:48 +02:00
Håkon Hægland
b1274096e9
Added to partially supported keywords
...
Added GECON to the list of partially supported keywords
2023-09-01 11:29:18 +02:00
Vegard Kippe
a75f58f19a
Moved two lines
2023-08-31 16:11:29 +02:00
Vegard Kippe
deeecfcd1f
Fixing indent
2023-08-31 16:11:28 +02:00
Vegard Kippe
edd421ac93
Adding hydrostatic and acceleration pressure losses to icd segments
2023-08-31 16:11:28 +02:00
Kai Bao
f7bd386402
adding the support for filtration_summary_keywords
2023-08-29 21:31:24 +02:00
Stein Krogstad
e7a0dbacf2
don't do rate-init for stopped/zero target
2023-08-29 14:52:09 +02:00
Håkon Hægland
2f9b136bb1
Implement support for GECON keyword
...
Implement support for item 2 and 3 of the GECON keyword
2023-08-29 01:07:21 +02:00
Kai Bao
6d011131cd
UDQ for the injection concentration for WINJFCNC
2023-08-23 11:44:50 +02:00
Arne Morten Kvarving
92fa9577da
consistently use std::size_t
2023-08-15 09:32:10 +02:00
Arne Morten Kvarving
896cb8484d
added: option to disable the BDA solvers
2023-08-11 11:00:07 +02:00
Atgeirr Flø Rasmussen
1a59c91c51
Silence release-mode warning.
2023-08-09 12:06:20 +02:00
Kai Bao
c46f60103e
adding perf_data comparison in equality operator for SingleWellState
2023-08-08 14:52:49 +02:00
hnil
c065d34d0e
-- added more timing to get better coverage of amg solver
...
-- added includes needed
2023-07-24 12:28:08 +02:00
Bård Skaflestad
ac6b9b2f34
Merge pull request #4748 from plgbrts/gconprod
...
Enable items, 11, 12 and 13 of GCONPROD
2023-07-14 21:30:14 +02:00
Paul
ae553787ba
Use struct for collecting group limit actions
2023-07-14 11:20:03 +02:00
Paul
1796b3343b
improved messages text
2023-07-13 13:15:54 +02:00
Paul
7302c37b78
Enable items, 11, 12 and 13 of GCONPROD
2023-07-12 20:44:10 +02:00
Bård Skaflestad
8c9682ab7a
Split Well and Group Initialization Out to Helper
...
In preparation of adding support for opening/creating wells or
groups in the middle of a report step. This is needed if an
ACTIONX block runs something like WELOPEN or WELSPECS/COMPDAT.
2023-07-12 17:23:14 +02:00
Bård Skaflestad
e965f6f27f
Prune Unused Well State Parameter
...
The WellState parameter in setCmodeGroup() became unused when we
split the GroupState out of the WellState in commit e1d117c59f
.
2023-07-12 17:23:14 +02:00
Bård Skaflestad
7f89276fe8
Hook New WBPn Calculation Up to Well Model
...
This commit activates the support for calculating WBPn summary
result values per well in parallel. To affect the calculation we
add two new data members in BlackoilWellModelGeneric:
- conn_idx_map_:
Maps well's connection index (0..getConnections().size() - 1) to
connections on current rank. Its local() connections are
negative 1 (-1) if the connection is not on current rank, and a
non-negative value otherwise. The global() function maps well
connections on current rank to global connection ID for each
well. Effectively the reverse of local(). Finally, the open()
function maps well connections on current rank to open/flowing
connections on current rank. Negative 1 if connection is not
flowing.
- wbpCalculationService:
Parallel collection of WBPn calculation objects that knows how
to exchange source and result information between all ranks in a
communicator. Also handles distributed wells.
We furthermore need a way to compute connection-level fluid mixture
density values. For the standard well class we add a way to access
the StandardWellConnection's 'perf_densities_' values. However,
since these are defined for open/flowing connections only, this
means we're not able to fully meet the requirements of the
WELL/ALL
WPAVE depth correction procedure for standard wells. The
multi-segmented well type, on the other hand, uses the fluid mixture
density in the associated well segment and is therefore well defined
for ALL connections. OPEN well connections are supported for both
well types.
2023-07-10 13:42:46 +02:00
Bård Skaflestad
ff9e6ca18a
Merge pull request #4745 from akva2/filtercake_separate_class
...
FilterCake: put code in separate class
2023-07-07 16:51:23 +02:00
Arne Morten Kvarving
60b92d02eb
WellFilterCake: make stateful
2023-07-07 16:08:42 +02:00
Arne Morten Kvarving
dcf8a444fd
changed: put calculation of filter cake multiplier in WellFilterCake
2023-07-07 16:08:20 +02:00
Arne Morten Kvarving
aaeedf4091
put updating of FilterCake multiplier in separate method
2023-07-07 16:08:20 +02:00
Arne Morten Kvarving
1e7ca08702
changed: put handling of filtration particle volume in separate class
2023-07-07 16:08:17 +02:00
Bård Skaflestad
95d715b807
Add Parallel Calculation Support for WBPn/WPAVE
...
This commit adds a parallel calculation object derived from the serial
PAvgCalculator class. This parallel version is aware of MPI
communicators and knows how to aggregate contributions from wells that
might be distributed across ranks.
We also add a wrapper class, ParallelWBPCalculation, which knows how to
exchange information from PAvgCalculatorCollection objects on different
ranks and, especially, how to properly prune inactive cells/connections.
2023-07-07 15:01:05 +02:00
Stein Krogstad
b1c11f6d88
Move function to WellInterfaceGeneric
2023-07-07 13:13:43 +02:00
Stein Krogstad
252d08f1bd
No need to loop over phases here
2023-07-07 13:13:43 +02:00
Stein Krogstad
2f8d210896
Also do explicit fallback for double-interp
2023-07-07 13:13:43 +02:00
Stein Krogstad
2dcebd4bdd
Rephrase explicit to prev(uous)
2023-07-07 13:13:43 +02:00
Stein Krogstad
ab98e477c4
Use explicit rates as fallback for small FLO
2023-07-07 13:13:42 +02:00
Stein Krogstad
5212d20a96
Add explicit rates to well state
2023-07-07 13:12:34 +02:00
Kai Bao
e264042c62
refining the function updateInjFCMult
...
for code improvements.
2023-07-07 09:32:03 +02:00
Kai Bao
22269c92c3
adding regression tests for filtration cake model
2023-07-06 23:38:53 +02:00
Kai Bao
1981a3bf4d
switching to scale the mobility instead of the well index
...
mostly to make the calculation of productivity easier.
2023-07-06 15:58:30 +02:00
Kai Bao
cb74d26e85
WIP in storing the filtration_particle_volume in BlackoilWellModelGeneric
...
instead of PerfData to handle the situation that well can be SHUT and
OPEN again.
2023-07-05 13:25:03 +02:00
Kai Bao
274c431492
tracking filtration particle volume instead of water injection volume
...
for filter cake calculation. The main reason is that the injection
concentration may vary during the simulation, which makes the tracking
of water injection volume is not very helpful when used for filter cake
calculation.
2023-07-05 13:25:03 +02:00
Kai Bao
eb08e2e863
cleaning up implementation related to filter cake
2023-07-05 13:25:03 +02:00
Kai Bao
7e5f1a1642
slightly different way to calculate the skin factor
...
for the radial model of the filter cake.
not tested yet.
2023-07-05 13:25:03 +02:00
Kai Bao
4cb3574e0f
incoporate keyword WINJCLN
...
still in draft state.
2023-07-05 13:25:03 +02:00
Kai Bao
43196800b6
a draft version for for RADIAL model for WINJDAM
2023-07-05 13:25:03 +02:00
Kai Bao
aa5062683d
a draft version for the linear geomery WINJDAM
2023-07-05 13:25:03 +02:00
Kai Bao
5e4cb8aeed
WIP in using the filter cake to generate the skin factor
2023-07-05 13:25:03 +02:00
Kai Bao
49774186ab
calculating the accumulative water injection volume
...
for each connection
2023-07-05 13:25:03 +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
Alf Birger Rustad
93a0bb0de3
improve message when shutting well due to convergence issues
2023-07-04 14:15:53 +02:00
Atgeirr Flø Rasmussen
363163b156
Silence unused capture warning.
2023-06-28 16:21:05 +02:00
Bård Skaflestad
9de535098f
Merge pull request #3764 from atgeirr/aspin
...
Add nonlinear solver based on domain decomposition method
2023-06-28 15:49:56 +02:00
Bård Skaflestad
82a2d284fb
Merge pull request #4686 from GitPaean/support_winjmult_rebase
...
Support WINJMULT
2023-06-27 15:40:06 +02:00
Bård Skaflestad
37fe56451b
Merge pull request #4719 from akva2/connection_rate_to_connections
...
Move connection rate helpers to StandardWellConnections
2023-06-27 15:19:57 +02:00
Kai Bao
f78f8e45f7
addressing the review comments
2023-06-27 14:46:11 +02:00
Arne Morten Kvarving
fffb3d9f0e
suppress unused lambda capture warnings with clang
2023-06-27 14:35:35 +02:00
Arne Morten Kvarving
adfe80cba0
avoid dead stores
2023-06-27 13:40:54 +02:00
Arne Morten Kvarving
62a2ee1713
StandardWell: move connectionRatezFraction to Connections class
2023-06-27 13:23:21 +02:00
Arne Morten Kvarving
56014ccff9
StandardWell: move connectionRatePolymer to Connections class
2023-06-27 13:22:08 +02:00
Arne Morten Kvarving
bf5108d09f
StandardWell: move connectionRatesMICP to Connections class
2023-06-27 13:22:08 +02:00
Arne Morten Kvarving
2f6623993a
StandardWell: move connectionRateFoam to Connections class
2023-06-27 13:22:08 +02:00
Arne Morten Kvarving
73ece47d97
StandardWell: move connectionRateBrine to Connections class
2023-06-27 13:22:08 +02:00
Arne Morten Kvarving
41a38cc9d6
WellInterfaceGeneric: add accessor for well_efficiency_factor
2023-06-27 13:22:08 +02:00
Arne Morten Kvarving
d1a2d27acb
changed: move Eval and restrictEval to WellInterfaceIndices
2023-06-27 13:22:08 +02:00
Kai Bao
cacec2739c
moving the inj_multiplier to BlackoilWellModelGeneric
...
to handle the situation that a well can be `SHUT` in the Schedule.
If stored in PerfData, when a well is `SHUT`, the inforamtion related to
WINJMULT will be discarded.
Before we want to change how the `PerfData` works, storing
`inj_multiplier` in BlackoilWellModelGeneric is the viable approach.
2023-06-27 12:49:25 +02:00
Kai Bao
b50c404247
adjusting the implementation of WINJMULT support
...
addn relaxed the absolute tolearnce of the parallel running test for
WINJMUT_MSW
2023-06-27 12:49:25 +02:00
Kai Bao
b1fad4bb10
store the inj_multiper in PerfData in WellState
2023-06-27 12:49:25 +02:00
Kai Bao
cc9ee9c059
support WINJMULT
2023-06-27 12:49:25 +02:00
Atgeirr Flø Rasmussen
15c1e38533
Silence unused variable/parameter warnings.
2023-06-23 16:24:18 +02:00
Arne Morten Kvarving
9f681e8193
put formating of invalid d-value error in helper function
2023-06-23 10:49:19 +02:00
Arne Morten Kvarving
bbdfa35a62
changed: put calculation of injection gas-water perf rates in separate method
2023-06-23 10:45:10 +02:00
Arne Morten Kvarving
79c4797cd5
changed: put calculation of injection gas-oil perf rates in separate method
2023-06-23 10:33:07 +02:00
Arne Morten Kvarving
e0003eb6d6
changed: put calculation of gas-oil volume ratio in separate method
2023-06-23 09:40:09 +02:00
Arne Morten Kvarving
fdfd181629
changed: put calculation of vaporized and dissolved water volume ratio in separate method
2023-06-23 09:40:07 +02:00
Arne Morten Kvarving
516320699e
changed: put calculation of production gas-water perf rates in separate method
2023-06-23 09:35:02 +02:00
Arne Morten Kvarving
21aa783d88
changed: put calculation of production gas-oil perf rates in separate method
2023-06-23 09:29:49 +02:00
Arne Morten Kvarving
e7bb51740e
cosmetics
2023-06-23 08:47:11 +02:00
Arne Morten Kvarving
a994394dca
changed: use {fmt} in connectionRateEnergy
2023-06-22 14:40:45 +02:00
Arne Morten Kvarving
9574e40ac4
changed: put calculation of energy connection rate in separate method
2023-06-22 14:40:45 +02:00
Arne Morten Kvarving
b3fd64d915
changed: put calculation of polymer connection rate in separate method
2023-06-22 14:40:45 +02:00
Arne Morten Kvarving
4041644171
changed: put calculation of foam connection rate in separate method
2023-06-22 14:40:45 +02:00
Arne Morten Kvarving
c239cbd14f
changed: put calculation of zFraction connection rate in separate method
2023-06-22 14:35:41 +02:00
Arne Morten Kvarving
b1cafa25ca
changed: put calculation of micp connection rates in separate method
2023-06-22 14:35:41 +02:00
Arne Morten Kvarving
8b38943485
changed: put calculation of brine connection rate in separate method
2023-06-22 14:35:40 +02:00
Arne Morten Kvarving
768a4903a3
reorganize (Std|MS)Well::computeWellPotentials
...
put shared parts in WellInterfaceGeneric::computeWellPotentials and
WellInterfaceGeneric::checkNegativeWellPotentials
2023-06-22 11:28:59 +02:00
Arne Morten Kvarving
7b33cc6d62
move computeConnLevel(Inj|Prod)Ind to WellInterface
...
now code is shared between STW and MSW
2023-06-22 09:58:58 +02:00
Arne Morten Kvarving
c234d4faa5
StandardWell: use scalar mobilities in computeConnLevel(Inj|Prod)Ind
...
unifies code with MultisegmentWell
2023-06-22 09:56:48 +02:00
Bård Skaflestad
b5517c8600
Merge pull request #4652 from akva2/update_ws_thp_prod_shared
...
move updateWellStateWithTHPTargetProd to WellInterface
2023-06-22 09:54:35 +02:00
Bård Skaflestad
3219b9d36e
Merge pull request #4631 from akva2/unify_perf_rate
...
changed: unify computePerfRate(Eval|Scalar)
2023-06-22 09:35:36 +02:00
Arne Morten Kvarving
01c4aa1927
move updateWellStateWithTHPTargetProd to WellInterface
...
to share implementation between STW and MSW
2023-06-22 09:10:38 +02:00
Arne Morten Kvarving
b55ca83917
changed: unify MultisegmentdWell::computePerfRate(Eval|Scalar)
2023-06-22 08:46:06 +02:00
Arne Morten Kvarving
58bed1e30a
changed: unify StandardWell::computePerfRate(Eval|Scalar)
2023-06-22 08:46:06 +02:00
Arne Morten Kvarving
e7738e70dc
BlackoilWellModel: move numLocalNonshutWells to generic class
2023-06-22 08:27:05 +02:00
Arne Morten Kvarving
aaa1006e2b
BlackoilWellModel: move numLocalWellsEnd to generic class
2023-06-22 08:26:01 +02:00
Arne Morten Kvarving
dd9a2835fe
BlackoilWellModel: move getMaxWellConnections to generic class
2023-06-22 08:26:01 +02:00
Arne Morten Kvarving
7ab8d94215
BlackoilWellModel: move assignWellTracerRates to generic class
2023-06-22 08:26:00 +02:00
Bård Skaflestad
77adc6ea3b
Add Container for Dynamic WBPn Source Values
...
This commit adds a new container class,
ParallelPAvgDynamicSourceData
which inherits from PAvgDynamicSourceData and provides a parallel
view of source contributions. Member function
collectLocalSources
will call the user-provided source term evaluation function for each
source location in its purview--typically those locations owned by
the current MPI rank. Those values will be distributed to other MPI
ranks through member function synchroniseSources which will fill the
base class' 'src_' data member, and become available to clients
through read-only item spans.
2023-06-21 12:06:49 +02:00
Bård Skaflestad
6464f5ee4e
Merge pull request #4716 from akva2/janitoring
...
Some janitoring
2023-06-21 09:46:57 +02:00
Arne Morten Kvarving
3c566a9e4e
avoid dead store
2023-06-21 08:59:26 +02:00
Arne Morten Kvarving
2327768db6
anonymize unused parameter
2023-06-21 08:55:11 +02:00
Arne Morten Kvarving
f88bf57388
use temporary helper variable
2023-06-21 08:54:53 +02:00
Kai Bao
5f344eef26
avoid dividing by zero in updateWellStateRates()
2023-06-20 23:14:50 +02:00
Vegard Kippe
d6d4b94b25
Parameterized iteration limits in network solver
2023-06-16 12:15:06 +02:00