Commit Graph

4738 Commits

Author SHA1 Message Date
Alf Birger Rustad
91a670d796 PARAOPTS and SOLVDIRS should only give warning 2023-09-14 09:22:36 +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
Svenn Tveit
913ba450a7 Activate CSKIN 2023-09-14 08:52:05 +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
Atgeirr Flø Rasmussen
9206e8b3db
Merge pull request #4863 from bska/interior-cell-grid-view
Implement Interior Cell Counts for Grid Views
2023-09-13 12:24:00 +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
Bård Skaflestad
a2d43cd0f5 Implement Interior Cell Counts for Grid Views
This is mostly to prepare for implementing partitionCells() for
grid views instead of grids.
2023-09-12 12:37:10 +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
Håkon Hægland
ac927d997b Added a get_dt() method
Added a get_dt() to the opm.simulators.BlackOilSimulator Python module.
This will return the size of the previous simulator time step.
2023-09-08 19:40:42 +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
Håkon Hægland
e2f62644ae Get cell volumes from Python
Adds a new method get_cell_volumes() to the opm.simulators Python module
that returns a python list of the cell volumes in the black oil
simulator.
2023-09-08 09:39:24 +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
Bård Skaflestad
f32b8e17ed
Merge pull request #4815 from plgbrts/std-netw-gaslift
Add FLO as supported option of item 6 of GRUPNET
2023-09-06 14:51:51 +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
Bård Skaflestad
27466bae66
Merge pull request #4834 from steink/assure_non_negative_oil_fraction
Prevent negative oil fractions in well segments
2023-09-06 12:44:21 +02:00
Atgeirr Flø Rasmussen
87b9dd3ec2
Merge pull request #4837 from bska/remove-unused-code
Remove Unused Functions
2023-09-06 09:09:54 +02:00
Bård Skaflestad
e6c2413d05 Remove Unused Functions
These functions became unused in commits 952ccf8338 and f027262ec4,
but their definitions remained in place.  We no longer need them.
2023-09-05 19:03:43 +02:00
Atgeirr Flø Rasmussen
8900962fd5
Merge pull request #4827 from jcbowden/damaris-fix-for-deadlock
Damaris fix for deadlock at end of simulation when run with Damaris
2023-09-05 14:28:32 +02:00
Stein Krogstad
7981253f39 prevent negative oil fractions 2023-09-05 11:18:16 +02:00
Atgeirr Flø Rasmussen
7327a6b429
Merge pull request #4260 from atgeirr/dynamic-linear-solver-choice
Support for multiple linear solvers.
2023-09-04 13:53:43 +02:00
Atgeirr Flø Rasmussen
cede2b4add Improving generality and output of hybrid approach. 2023-09-04 13:13:52 +02:00
Paul
1912faf47c Add FLO as supported option of item 6 of GRUPNET 2023-09-04 11:21:59 +02:00
Bård Skaflestad
9c58585538
Merge pull request #4823 from akva2/ecltimestepping_separate
changed: put ecl time stepping parameters in separate struct
2023-09-04 10:54:46 +02:00
Josh Bowden
6e4f3bd37e added changes as discussed in PR 4827 2023-09-01 18:28:03 +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
Atgeirr Flø Rasmussen
079bf9323a
Merge pull request #4830 from jcbowden/damaris-hdf5-select-keyword
Damaris internal XML file update to support HDF5 local to global write.
2023-09-01 15:01:50 +02:00
Atgeirr Flø Rasmussen
efa50c3640 Check for multiple solvers before trying to use them. 2023-09-01 13:18:09 +02:00
Atgeirr Flø Rasmussen
758b4bbdb6 Use "hybrid" linear solver choice to get multi-option. 2023-09-01 13:18:09 +02:00
Franz Georg Fuchs
6ee90b3f8f Support for multiple linear solvers. 2023-09-01 13:18:06 +02:00
Josh Bowden
89d13e479c Update to the opm-flow internal Damaris XML to support the HDF5 select writing option so that local variable data is written to global variable position in HDF5 output 2023-09-01 12:02:04 +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
Atgeirr Flø Rasmussen
91c2e12a25 Document new input parameter. 2023-09-01 11:19:36 +02:00
Atgeirr Flø Rasmussen
583fb902d2 Guards communication parts inside HAVE_MPI. 2023-09-01 11:19:16 +02:00
Bård Skaflestad
c6e30fbf3c
Merge pull request #4820 from atgeirr/parallel-nldd-fixes
Fixes to enable using the NLDD nonlinear solver option in MPI parallel runs
2023-09-01 09:51:06 +02:00
Atgeirr Flø Rasmussen
99fca58dca Improvements from review. 2023-09-01 08:48:11 +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
Josh Bowden
84d3530fd9 fix for deadlock at end of simulation when run with Damaris and test for whether Damaris can be run as Damaris requires at least 2 MPI ranks (one for simulation and the other as to run Damaris i/o) 2023-08-31 15:51:34 +02:00
Atgeirr Flø Rasmussen
06c706e7d6 Also copy flags, and helper function with test. 2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
151eac9110 Copy overlap data after local solve.
Also update intensive quantities in overlap afterwards.
2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
961a5fa482 Avoid collective copyParValues() call in serial run. 2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
e1dd2bf148 Add forceSerial parameter to ISTLSolverEbos.
Used for single-domain solves.
2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
622103a367 Avoid collective operation in single-domain context. 2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
609dfd6051 Only owned cells should be part of NLDD partitions. 2023-08-31 13:01:28 +02:00
Arne Morten Kvarving
3c525aefae changed: put ecl time stepping parameters in separate struct
this to allow reuse in ebos simulators
2023-08-30 11:22:22 +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
a5899f6f2f Added missing header file 2023-08-29 09:02:12 +02:00
Antonella Ritorto
5d9f8a88b4 LookUpCellCentroid used to search cell centroids in eclbasevanguard 2023-08-29 08:45:59 +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
Vegard Kippe
f5c31588cb Quick fix.. 2023-08-25 14:01:51 +02:00
Paul
d4743ed4a5 item 7 added to partially supported keywords 2023-08-23 16:24:35 +02:00
Paul
5780aa8d38 add regression test 2023-08-23 16:24:35 +02:00
Paul
dcba4d9496 Add GRUPNET to partially suppported keywords 2023-08-23 16:24:35 +02:00
Paul
893568fd64 removed GRUPNET from unsupported keyword list 2023-08-23 16:24:35 +02:00
Bård Skaflestad
b772d685d3
Merge pull request #4781 from totto82/addToEvent
Include production/injection update as timestepping event
2023-08-23 15:40:38 +02:00
Kai Bao
6d011131cd UDQ for the injection concentration for WINJFCNC 2023-08-23 11:44:50 +02:00
Vegard Kippe
f762711111 Addressing review comment (removed blank line and updated SaveStep docstring) 2023-08-22 17:11:54 +02:00
Vegard Kippe
ac27c5fc86 Extended serialization to have negative stride mean 'only save last' + allow loading from different file than saving to. 2023-08-22 14:16:20 +02:00
Atgeirr Flø Rasmussen
ecfe98dd3d
Merge pull request #4758 from hnil/subdomain_updates
moved fully implicit calls to opm-simulators
2023-08-18 08:18:58 +02:00
Markus Blatt
b4e7a4fc85
Merge pull request #4770 from akva2/eclproblem_cleanup_timestepping
EclProblem: cleanup time stepping related members
2023-08-17 11:19:55 +02:00
Arne Morten Kvarving
290c783f83 SimulatorFullyImplicitBlackoilEbos: remove unused member 2023-08-16 08:58:08 +02:00
Arne Morten Kvarving
13b0e14f18 EclGenericProblem: remove unused time steppping parameters
and remove some hidden duplicates
2023-08-15 14:02:55 +02:00
Bård Skaflestad
ba6fc03fa3
Merge pull request #4797 from akva2/eclinterregflows_move
changed: move EclInterRegFlows to opm/simulators/flow
2023-08-15 13:53:19 +02:00
Bård Skaflestad
118acff2ed
Merge pull request #4796 from akva2/janitoring
Bda: mark some more parameters maybe_unused
2023-08-15 13:44:15 +02:00
Arne Morten Kvarving
46aae8cda6 changed: move EclInterRegFlows to opm/simulators/flow
no opm-models usage
2023-08-15 13:14:42 +02:00
Arne Morten Kvarving
7562b5b70f ISTLSolverEbosBda: mark parameter maybe_unused 2023-08-15 12:18:41 +02:00
Arne Morten Kvarving
e0c664d162 BdaBridge: mark some more parameters maybe_unused 2023-08-15 12:18:41 +02:00
Arne Morten Kvarving
368eac1078 EclActionHandler: mark method const 2023-08-15 12:11:33 +02:00
Arne Morten Kvarving
7da3c96247 EclActionHandler: fix indent 2023-08-15 12:10:51 +02:00
Arne Morten Kvarving
dd1359bcf0 changed: move EclActionHandler to opm/simulators/flow
no opm-models usage
2023-08-15 12:10:01 +02:00
Bård Skaflestad
0960494aeb
Merge pull request #4794 from akva2/avoid_segfault_in_cleanup
fixed: avoid segfault in cleanup if simulator has not been set up
2023-08-15 11:57:26 +02:00
Arne Morten Kvarving
19f446a7a5 fixed: avoid segfault in cleanup if simulator has not been set up 2023-08-15 09:51:41 +02:00
Arne Morten Kvarving
92fa9577da consistently use std::size_t 2023-08-15 09:32:10 +02:00
Arne Morten Kvarving
b0f1e5d3f5 move output error log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
e2d4bae78d move output of fip reservoir log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
daced47301 move output of fip log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
38e9b5a100 changed: move helpers for calculation pressure averages to separate compile unit
for reuse purposes
2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
f5985ff02f move output of injection log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
c9b703f40d move output of production log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
91a4701fa4 added: add dedicated class for output of logs
start by moving output of cumulative logs to the new class
2023-08-14 11:44:32 +02:00
Bård Skaflestad
43acfb6142
Merge pull request #4791 from svenn-t/aquifer_h2store
Enable aquifers with H2STORE
2023-08-12 13:42:16 +02:00
Bård Skaflestad
e59a53820a Bring WellContributions Declaration in Scope
This restores the build on machines which enable the BDA bridge,
but which do not have OpenCL installed.
2023-08-11 17:04:24 +02:00
Svenn Tveit
b84837fc61 Moved water phase check outside loop 2023-08-11 15:34:31 +02:00
Svenn Tveit
8b6a504874 Enable aquifers in H2STORE oil/gas version 2023-08-11 13:23:57 +02:00
Arne Morten Kvarving
0883d46d50 rename ISTLSolverEbosWithGpu to ISTLSolverEbosBda
BDA also includes CPU (amgcl) solvers
2023-08-11 11:00:07 +02:00
Arne Morten Kvarving
896cb8484d added: option to disable the BDA solvers 2023-08-11 11:00:07 +02:00
hnil
07fb18422d hopefully fixed compilation and linking problems with WITHGPU 2023-08-11 11:00:07 +02:00
hnil
63b9b01671 fixed includegards 2023-08-11 11:00:07 +02:00
hnil
68322c06e5 added forgotten GPU versions 2023-08-11 11:00:07 +02:00
hnil
d623695d2a - moded all bda spesific tings to separete class 2023-08-11 11:00:07 +02:00
Atgeirr Flø Rasmussen
1a59c91c51 Silence release-mode warning. 2023-08-09 12:06:20 +02:00
Arne Morten Kvarving
c6f1aa0110
Merge pull request #4765 from hnil/change_poly_alugrid
removed use of hidden private defines for poly and alugrid
2023-08-09 11:15:02 +02:00
hnil
66ff026008 remove use of hidden private defines for poly and alugrid
- fixed polygrid
- renamed executables to include blackoil in name
2023-08-08 15:30:05 +02:00
Kai Bao
c46f60103e adding perf_data comparison in equality operator for SingleWellState 2023-08-08 14:52:49 +02:00
Tor Harald Sandve
8083765a65 Include production/injection update as timestepping event 2023-08-08 12:19:36 +02:00
Arne Morten Kvarving
82ba00b4ba remove accidentially left-over member 2023-08-04 15:34:05 +02:00
Atgeirr Flø Rasmussen
840dd9de90
Merge pull request #4752 from hnil/linearsolver_timing
-- added more timing to get better coverage of cpr solver
2023-07-27 15:14:10 +02:00
hnil
59de509105 -- moved fully implict related updates to FIblackoil
-- changed spesicic nldd calls to use subDomain instead of gridview
(-- clang formated FIBlackoil)
2023-07-26 11:07:26 +02:00
Markus Blatt
f20716eaf3 Rename LinearTimeSteppingBreakdown to TimeSteppingBreakdown. 2023-07-25 15:10:07 +02:00
Atgeirr Flø Rasmussen
7c9d57cc84 Add code path for the no-MPI case. 2023-07-25 13:20:16 +02:00
Atgeirr Flø Rasmussen
0d2d8dfe21
Merge pull request #4734 from atgeirr/add-linear-system-size-printout
Add output of linear system sizes to DBG file.
2023-07-25 10:51:29 +02:00
Atgeirr Flø Rasmussen
30a9e02998 Add output of linear system sizes to DBG file. 2023-07-25 09:43:51 +02:00
Markus Blatt
943d84c836 Don't write out of bounds (fixes fallout from PR #4750)
While we never use the data receive, we should still not write beyond
arrays as this may create problems.
2023-07-24 16:04:15 +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
Markus Blatt
118dfdf041 Move MPI process check to *-cpp file. 2023-07-19 14:05:19 +02:00
Markus Blatt
7551229e77 Do a graceful exit instead of MPI_Abort for expected exceptions.
Instead of unconditionally issuing MPI_Abort if we encounter a fatal
exception, we try to test whether all processes have experienced this
exception and if this is the case just terminate nomally with a exit
code that signals an error. We still use MPI_Abort if not all
processes get an exception as this is the only way to make sure that
the program aborts.

This approach also works around issues in some MPI implementations
that might not correctly return the error.

Multiple messages like this are gone now:
```
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 1 in communicator MPI_COMM_WORLD
with errorcode 1.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
[smaug.dr-blatt.de:129359] 1 more process has sent help message help-mpi-api.txt / mpi-abort
[smaug.dr-blatt.de:129359] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
```

Bu we still see something like this:
```
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

  Process name: [[35057,1],0]
  Exit code:    1
--------------------------------------------------------------------------
```
2023-07-19 13:44:12 +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
Markus Blatt
fc9b1cccce Improve error message when time step is cut too often/much.
Changes
```
Program threw an exception: [/home/mblatt/src/dune/opm/opm-simulators/opm/simulators/timestepping/AdaptiveTimeSteppingEbos.hpp:586] Solver failed to converge after cutting timestep 11 times.
```
to
```
Simulation aborted: Solver failed to converge after cutting timestep 11 times.
```

Which seems more user friendly.
2023-07-12 16:18:29 +02:00
Bård Skaflestad
7b880727b5 Declare Support for WPAVE/WBPn
We emit a warning if the model uses connection flag 'ALL', but
continue the run.  This behaviour is still being debated and we
may decide to halt the run in this situation.
2023-07-11 11:29:08 +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
Bård Skaflestad
a560b06dce
Merge pull request #4346 from GitPaean/support_cake_filtration
A simple cake model to simulate formation damage due to suspended solids in injection water
2023-07-07 10:23:30 +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
Arne Morten Kvarving
1b905f884c
Merge pull request #4743 from akva2/blackoilmodelebos_nldd_separate
BlackoilModelEbos: separate out NLDD code to separate class
2023-07-05 14:23:29 +02:00
Arne Morten Kvarving
8e7de83218 BlackoilModelEbos: put Nldd solver in separate class 2023-07-05 13:40:13 +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