Tor Harald Sandve
4dd0798e5b
add gas + water + energy to flow
2023-03-31 08:47:19 +02:00
Håkon Hægland
c2916bc7d9
Fix bug when recalculating gaslift gradient
...
Fixes a bug in recalculateGradientAndUpdateData_() if gaslift stage2.
Also adds some more debugging output.
2023-03-30 17:44:21 +02:00
Kai Bao
7c06ec38a3
stricter tolerance for wells with zero rate target
...
for StandardWell only at this moment.
2023-03-30 15:49:27 +02:00
Bård Skaflestad
e9b372ff1c
Merge pull request #4563 from GitPaean/treating_zero_injection_rate_well_as_stoppped
...
for the wells under zero rate target control, the THP output will be zero
2023-03-30 13:03:36 +02:00
Bård Skaflestad
5a3deaf57b
Merge pull request #4571 from totto82/fixgl
...
Increase alq to its minimum value while checking that is does not violate its rate limits
2023-03-30 10:31:51 +02:00
Tor Harald Sandve
77ed90ceb8
Increase alq to its minimum value while checking that is does not violate its rate limits
2023-03-30 08:59:59 +02:00
Kai Bao
9304542dbe
combining wellIsStopped and wellUnderZeroRateTaget
...
for better readability.
2023-03-29 14:40:50 +02:00
Kai Bao
b6eecf5c55
not updating the THP for zero rate controlled wells
2023-03-29 13:48:34 +02:00
Kai Bao
f4e0a996b9
wells under zero injection target are also treated as stopped well
...
when formulating the well control equations
2023-03-29 13:48:34 +02:00
Markus Blatt
b4b8e7aff1
Merge pull request #4558 from Tongdongq/move-cpu-decomposition
...
Only do CPU decomposition if needed, when using GPU
2023-03-29 12:54:38 +02:00
Bård Skaflestad
dcdb9413b4
Merge pull request #4565 from hnil/reduced_linearsolver_option
...
Reduced linearsolver option
2023-03-29 10:44:56 +02:00
Bård Skaflestad
a2fd7d0ae3
Merge pull request #4567 from akva2/janitoring
...
FlexibleSolver: use std::make_shared
2023-03-29 10:43:52 +02:00
Bård Skaflestad
9524348401
Merge pull request #4549 from totto82/resv_undersat
...
fix RESV for undersaturated wells
2023-03-29 10:35:33 +02:00
Arne Morten Kvarving
5f6339f6fd
FlexibleSolver: use std::make_shared
2023-03-29 09:50:09 +02:00
hnil
2e4d5ee57b
- Remove wrong output if already converged
2023-03-29 09:47:02 +02:00
hnil
445e4f10fe
fixed spelling
2023-03-29 08:55:31 +02:00
Tor Harald Sandve
57c1e52019
fix error message for rs/rsw =1
2023-03-29 08:47:28 +02:00
hnil
6b4082a1fe
better messages
2023-03-28 13:54:09 +02:00
Tor Harald Sandve
a73f4078ef
add missing include
2023-03-28 12:45:39 +02:00
hnil
992edc1fec
- added a reduced tolerance for linear for the nonlinear solver to accept the result
2023-03-28 11:43:00 +02:00
hnil
f0b5e6a670
- changed pointer to refernace for IQ for possibility of using rvalues
2023-03-28 09:37:00 +02:00
Tor Harald Sandve
a2ae7d5bed
Fix resv for groups
2023-03-27 16:03:40 +02:00
Tor Harald Sandve
42527ac829
fix RESV for undersaturated wells
2023-03-27 16:03:40 +02:00
Kai Bao
7931e6e00a
removing unused function solveEqAndUpdateWellState
...
from MultisegmentWell and WellInterface .
2023-03-27 13:26:00 +02:00
Kai Bao
2c5a4398c9
make sure zero production rates are obtained for the following wells
...
1. stopped production wells
2. production wells under zero rate control
We guarantee the objective through enforce zero values for the WQTotal
primary variable during the initialization and update process during the
Newton solution.
2023-03-27 13:24:08 +02:00
Tong Dong Qiu
0bf91691fe
Only do CPU decomposition if needed, when using GPU
2023-03-27 11:43:26 +02:00
hnil
2769cc5c3d
minimal change to not called cachedIntensive
2023-03-24 20:01:47 +01:00
hnil
aa40d2f0f3
-- prepared for possibliy of not using cached intentensive quantities
2023-03-24 19:57:31 +01:00
Kai Bao
c8d914caad
using double for regularization_factor_wells_
2023-03-23 16:47:03 +01:00
Bård Skaflestad
0ebcef62e2
Merge pull request #4542 from hnil/optimize_processdata
...
Optimisation of data processing for actionX and output
2023-03-22 23:13:43 +01:00
hnil
dedda84a2b
fixed review comments
2023-03-22 19:17:22 +01:00
hnil
e1c4a73c43
-- removed double evaluation of processLocalData
...
-- separated fluid in place work from other cell based data
-- added some timing macros for better preformance overview
2023-03-22 11:55:37 +01:00
Bård Skaflestad
0a9d2a7099
Merge pull request #4543 from hnil/more-timings
...
added more timing macros
2023-03-22 10:51:28 +01:00
hnil
122a478341
added more timing macros
2023-03-21 22:44:14 +01:00
Atgeirr Flø Rasmussen
e25657943e
Merge pull request #4534 from akva2/disable_hdf5_compression_old_versions
...
changed: disable HDF5 compression with hdf5 <= 1.8
2023-03-21 09:49:19 +01:00
steink
c997b438dd
assembleWellEq
2023-03-20 13:15:59 +01:00
Bård Skaflestad
8dfac0d8e6
Merge pull request #4524 from goncalvesmachadoc/temp
...
allow for TEMP
2023-03-16 16:37:09 +01:00
Arne Morten Kvarving
52008d5231
changed: disable HDF5 compression with hdf5 <= 1.8
...
seems to be broken (in particular 1.8.12 on rh7)
2023-03-16 08:54:39 +01:00
Markus Blatt
5c1d964478
Merge pull request #4512 from akva2/rateconverter_compile_unit
...
RateConverter: introduce a compile unit
2023-03-15 20:54:26 +01:00
goncalvesmachadoc
3eb684ae7d
allow for TEMP
2023-03-13 14:18:48 +01:00
David Landa Marban
a19e70c59a
fix to broken built with clang
2023-03-10 22:39:39 +01:00
Bård Skaflestad
1ac190e4a0
Merge pull request #4518 from atgeirr/fix-zero-rate-control-eq
...
Treat rate control with zero target same as stopped well.
2023-03-10 16:12:08 +01:00
Bård Skaflestad
f25d204281
Tag Unused Parameter as Maybe_Unused
...
Noted by [at]akva2
2023-03-10 11:36:11 +01:00
Bård Skaflestad
7abfdc52e0
Refactor Construction of Analytic Aquifer Objects
...
In particular, split the 'static' aquifer object initialisation
of member function 'init()' into a new helper function
initializeStaticAquifers()
This is in preparation of adding a similar function to handle
dynamic aquifer object initialisation from a restart file. To that
end, also add a new member function
createDynamicAquifers(episode_index)
containing the current implementation of beginEpisode(). Creating
the dynamic objects from a restart file then amounts to calling this
function with a different 'episode_index'. As another aid to
maintainability, add a new templated member function
createAnalyticAquiferPointer()
which forms 'unique_ptr<AquiferInterface>' objects for every known
type of analytic aquifer. This, in turn, requires reordering the
parameters of the AquiferConstantFlux constructor to match those of
the existing Fetkovich and Carter-Tracy types.
Finally, split the calculation of the constant flux aquifer's total
flux rate out to a new helper function
AquiferConstantFlux::totalFluxRate()
2023-03-09 18:04:55 +01:00
Atgeirr Flø Rasmussen
2964bd409e
Use diagonal matrix block pointers for well source terms.
2023-03-08 16:41:36 +01:00
hnil
e705dc41c2
modification to to well assembly form well side to avoid asking for wells on all cells
2023-03-08 16:41:36 +01:00
Arne Morten Kvarving
3967eb001b
RateConverter: prefer using
2023-03-08 15:40:18 +01:00
Arne Morten Kvarving
173e3900d4
RateConverter: move inferDissolvedVaporisedRatio to compile unit
2023-03-08 15:40:18 +01:00
Arne Morten Kvarving
8c233ffba2
RateConverter: move calcReservoirVoidageRates to compile unit
2023-03-08 15:40:18 +01:00
Arne Morten Kvarving
ae9ed506e8
RateConverter: move calcCoeff to compile unit
2023-03-08 15:40:18 +01:00
Arne Morten Kvarving
11602bbdda
RateConverter: move calcInjCoeff to compile unit
2023-03-08 15:40:18 +01:00
Arne Morten Kvarving
7672e14890
RateConvert: introduce compile unit
...
move global rate reductions into it
2023-03-08 15:40:15 +01:00
Atgeirr Flø Rasmussen
60cdbb8cfd
Treat rate control with zero target same as stopped well.
2023-03-08 15:32:55 +01:00
Arne Morten Kvarving
917af4e28e
RateConverter: coalesce global reductions
2023-03-08 12:55:04 +01:00
Atgeirr Flø Rasmussen
fc06fc77c3
Merge pull request #4500 from GitPaean/unifying_interface_assemble_noiteration
...
make sure computeWellRatesWithBhpIterations honor bhp limit (can change) for StandardWell
2023-03-07 21:02:44 +01:00
Arne Morten Kvarving
7a90bd48b8
GasLiftSingleWell: avoid unused variable warning with NDEBUG
2023-03-07 11:22:01 +01:00
Arne Morten Kvarving
aeee2ad9d3
RateConverter: throw an exception, not a bare string
2023-03-06 13:08:33 +01:00
Atgeirr Flø Rasmussen
fb076a7acc
Merge pull request #4508 from akva2/simulatorreport_avoid_nan
...
SimulatorReport: protect against division by zero
2023-03-03 11:55:42 +01:00
Arne Morten Kvarving
0cb69ffaa8
SimulatorReport: protect against division by zero
2023-03-03 10:39:57 +01:00
Atgeirr Flø Rasmussen
c9ba0afea3
Silence warnings: struct/class, missing override.
2023-03-03 10:12:46 +01:00
Kai Bao
2152ac6465
make sure computeWellRatesWithBhpIterations honor bhp limit
...
for StandardWell
2023-03-02 23:53:56 +01:00
Bård Skaflestad
dcf2a1304b
Merge pull request #4499 from akva2/adaptivetimesteppingebos_more_compile_unit
...
AdaptiveTimeSteppingEbos: move more code to compile unit
2023-03-02 13:38:07 +01:00
Arne Morten Kvarving
c4e025190e
AdaptiveTimeSteppingEbos: put consistentlyFailingWells in detail namespace
...
no reason for this to be a template
2023-03-02 12:37:13 +01:00
Arne Morten Kvarving
b232613623
AdaptiveTimeSteppingEbos: put logTimer in detail namespace
2023-03-02 12:37:13 +01:00
Arne Morten Kvarving
ebd53ee72d
move StepReport into ConvergenceReport.hpp
...
there is no reason for this to be typetag dependent
2023-03-02 12:37:13 +01:00
Bård Skaflestad
00da723b59
Merge pull request #4497 from akva2/nonlinearsolverebos_compile_unit
...
NonlinearsolverEbos: add compile unit
2023-03-01 16:14:22 +01:00
Arne Morten Kvarving
aaaf00f2fd
adjust to timing macro header split
2023-03-01 13:18:16 +01:00
Arne Morten Kvarving
cbaaca4f14
NonlinearSolverEbos: put stabilizeNonlinearUpdate in compile unit
2023-03-01 10:48:17 +01:00
Arne Morten Kvarving
4aeb980f4f
changed: make NonlinearSolverEbos::RelaxType a namespace scoped enum class
...
name it NonlinearRelaxType
2023-03-01 10:46:51 +01:00
Arne Morten Kvarving
64c4694bab
NonlinearSolverEbos: put detectOscillations in compile unit
2023-03-01 10:46:51 +01:00
Arne Morten Kvarving
c92195c96a
changed: pass the version info as parameters in Banners.cpp/Main.cpp
...
we want to avoid these symbols in the library
2023-03-01 09:11:18 +01:00
Bård Skaflestad
6636b2f331
Merge pull request #4494 from akva2/flowmainebos_compile_unit
...
FlowMainEbos: add a compile unit
2023-02-28 20:13:30 +01:00
Arne Morten Kvarving
b238bba53b
FlowMainEbos: move ExtraConvergenceOutput code to compile unit
2023-02-28 16:02:08 +01:00
Atgeirr Flø Rasmussen
b5678bf5cb
Merge pull request #4495 from atgeirr/add_timing_block
...
Add timing block
2023-02-28 15:00:17 +01:00
Arne Morten Kvarving
143139c6ee
FlowMainEbos: move parallel file merge code to separate compile unit
...
avoid some headers in simulator objects
2023-02-28 14:05:51 +01:00
Arne Morten Kvarving
fe011bbd41
FlowMainEbos: prefer std::make_unique
2023-02-28 13:58:52 +01:00
Atgeirr Flø Rasmussen
7acc6feb18
Make names more consistent.
2023-02-28 13:58:02 +01:00
Arne Morten Kvarving
5f08897247
fixed: add missing HAVE_MPI ifs
2023-02-28 09:49:01 +01:00
Atgeirr Flø Rasmussen
e9d1bbc355
Merge pull request #4481 from akva2/hdf5_enable_compression
...
HDF5File: enable gzip compression
2023-02-28 08:13:51 +01:00
Atgeirr Flø Rasmussen
8efb30d2bb
Merge pull request #4482 from totto82/addGasWaterEnergy
...
Add gaswater energy simulator
2023-02-28 08:01:06 +01:00
Atgeirr Flø Rasmussen
3e62a6817f
Merge pull request #4483 from GitPaean/wrong_direction_flow_not_converged
...
not considering wells with wrong flow direction as converged
2023-02-28 07:55:07 +01:00
Arne Morten Kvarving
5fd5753ed7
fixed: mixed-up input and output paths for restart serialization
2023-02-27 12:17:00 +01:00
Kai Bao
460aa5027b
not considering wells with wrong flow direction as converged
...
under THP constraint, well can get converged with wrong flow direction
(e.g. a producer is injecting), becasue we cut off the wrong flow
direction as zero rate in the VFP evaluation
2023-02-24 14:30:45 +01:00
Arne Morten Kvarving
8b673c09cc
HDF5File: enable gzip compression
2023-02-24 11:56:17 +01:00
Atgeirr Flø Rasmussen
1b92971e8b
Merge pull request #4478 from akva2/serialization_output_dir
...
fixed: output OPMRST file to output dir
2023-02-23 11:18:21 +01:00
Tor Harald Sandve
5028e0fbf1
Add gaswater energy simulator
2023-02-23 09:25:50 +01:00
Bård Skaflestad
4e8381b6f9
Merge pull request #4370 from totto82/computeCVIR
...
compute CVIR and CVPR
2023-02-22 17:38:33 +01:00
Bård Skaflestad
d364b7b80c
Merge pull request #4479 from akva2/serialization_missing_perfdata
...
RestartSerialization: add missing PerfData
2023-02-22 15:53:42 +01:00
Arne Morten Kvarving
da4784b314
AquiferConstantFlux: add restart serialization support
2023-02-22 14:41:07 +01:00
Arne Morten Kvarving
9418110d3e
AquiferConstantFlux: mark method override
2023-02-22 14:41:07 +01:00
Arne Morten Kvarving
6073af784d
AquiferConstantFlux: add missing includes
2023-02-22 14:41:07 +01:00
Arne Morten Kvarving
070f3677f7
fixed: output OPMRST file to output dir
...
will look in both output dir and input file dir on load
2023-02-22 14:26:23 +01:00
Arne Morten Kvarving
bdd75a3a59
SingleWellState: serialize PerfData
2023-02-22 13:59:59 +01:00
Arne Morten Kvarving
8d339c464c
PerfData: add serialization support
2023-02-22 13:59:59 +01:00
Tor Harald Sandve
054d832bff
compute CVIR and CVPR
2023-02-22 08:54:47 +01:00
Kai Bao
7a67b16c3e
addressing review comments for PR OPM/opm-simulators#4429
2023-02-21 15:27:05 +01:00
Kai Bao
73dc31a7a5
updating AquiferConstantFlux with AQUFLUX
...
not recreating new instances to avoid unnecessary cost from constructor.
2023-02-21 13:20:36 +01:00
Kai Bao
71119b6e42
WIP in making AQUFLUX running in parallel.
2023-02-21 13:20:36 +01:00
Kai Bao
7bd1cd9aa1
following the AQUFLUX design change from opm-common
2023-02-21 13:20:36 +01:00
Kai Bao
9a0ea0cb97
WIP in adding summary output for AQUFLUX aquifers
...
FAQR and FAQT are not working properly yet.
2023-02-21 13:20:36 +01:00
Kai Bao
248f6b73d9
WIP of supporting AQUFLUX from simulator side
2023-02-21 13:20:36 +01:00
Bård Skaflestad
37959ee26a
Merge pull request #4468 from vkip/fix_connpress_report
...
Fixing MSW connection pressure output
2023-02-17 17:44:39 +01:00
Vegard Kippe
f527267593
Fixing MSW connection pressure output
2023-02-17 12:17:41 +01:00
Bård Skaflestad
981299c2e0
Merge pull request #4461 from totto82/injalq
...
Fix default alq injector
2023-02-17 11:58:03 +01:00
Bård Skaflestad
1369889074
Fix Sequential Build
...
Include <cassert> for 'assert' macro.
2023-02-16 16:36:53 +01:00
Arne Morten Kvarving
c50fcc5818
added: store a hash of the grid cell mapping on each process
...
this is a simple sanity check to make sure the restarted run
has the same grid partitioning as the original run.
2023-02-16 14:49:38 +01:00
Arne Morten Kvarving
8c3400f562
added: parallel support to HDF5File / HDF5Serializer
2023-02-16 14:49:38 +01:00
Arne Morten Kvarving
a60b7e50ca
added: ability to specify .OPMRST file to be used
...
useful, in particular for testing.
2023-02-16 13:56:29 +01:00
Arne Morten Kvarving
72133deadc
added: support for loading serialized state from .OPMRST file
2023-02-16 13:48:36 +01:00
Arne Morten Kvarving
ed170026c1
added: support for saving serialized state to OPMRST file
...
uses a HDF5 container
2023-02-16 13:46:36 +01:00
Arne Morten Kvarving
524c1320bb
add serialization support to SimulatorFullyImplicitBlackoilEbos
...
this is the top of the hierarchy so a test would basically
be a full restart test
2023-02-16 12:38:02 +01:00
Arne Morten Kvarving
a21d59977d
SimulatorReport: add serialization support
2023-02-16 11:56:40 +01:00
Arne Morten Kvarving
f0ca3120ff
SimulatorReportSingle: add serialization support
2023-02-16 11:56:40 +01:00
Arne Morten Kvarving
28e7da5468
BlackoilWellModelGeneric: add serialization support
2023-02-16 11:19:06 +01:00
Arne Morten Kvarving
90fbdcee0a
WGState: add serialization support
2023-02-16 10:48:34 +01: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
6d93b2d12f
ALQState: add serialization support
2023-02-16 08:35:34 +01:00
Arne Morten Kvarving
b87bf2b3ae
GroupState: add serialization support
2023-02-15 22:57:44 +01:00
Arne Morten Kvarving
1a5ae624b1
GroupState: add gpmaint_state to comparison operator
2023-02-15 22:51:19 +01:00
Arne Morten Kvarving
7f36bac579
WellContainer: add serialization support
2023-02-15 21:55:19 +01:00
Atgeirr Flø Rasmussen
e1942d145f
Merge pull request #4437 from akva2/singlewellstate_serialize
...
SingleWellState: add serialization support
2023-02-15 15:29:08 +01:00
hnil
79d7698dd8
added timeblocks in linear solver
2023-02-15 15:07:58 +01:00
Bård Skaflestad
3be62f4bb6
Merge pull request #4460 from totto82/fixVREP
...
FIX VREF for groups with both gas and water injectors
2023-02-15 14:34:52 +01:00
Arne Morten Kvarving
60a5273d0e
SingleWellState: add serialization of dynamic state
2023-02-15 13:56:25 +01:00
Tor Harald Sandve
be2b021167
Fix default alq injector
2023-02-15 13:42:50 +01:00
Tor Harald Sandve
5356dbbaa8
FIX VREF for groups with both gas and water injectors
2023-02-15 13:35:12 +01:00
Arne Morten Kvarving
482c32b117
SegmentState: add serialization support
2023-02-15 12:59:18 +01:00
hnil
fd98d8ea27
added timing blocks to most important parts
2023-02-15 09:41:37 +01:00
Arne Morten Kvarving
0a1df9d6f7
Merge pull request #4426 from akva2/blackoilaquifermodel_serialize
...
BlackoilAquiferModel: add serialization of dynamic state
2023-02-14 19:00:42 +01:00
Arne Morten Kvarving
d5f22dbc99
BlackoilAquiferModel: add serialization of dynamic state
2023-02-14 17:51:25 +01:00
Bård Skaflestad
273477ef2c
Merge pull request #4458 from atgeirr/fix-warnings
...
Fix a few warnings in recently added code.
2023-02-14 16:43:22 +01:00
Arne Morten Kvarving
a66fd75715
AquiferNumerical: add serialization of dynamic state
2023-02-14 16:15:25 +01:00
Arne Morten Kvarving
03f6309ff7
AquiferFetkovich: add serialization of dynamic state
2023-02-14 16:15:25 +01:00
Arne Morten Kvarving
51e5e61c39
AquiferCarterTracy: add serialization of dynamic state
2023-02-14 16:15:25 +01:00
Arne Morten Kvarving
6dc63b2da8
AquiferAnalytical: add serialization of dynamic state
2023-02-14 16:15:25 +01:00
Markus Blatt
7449a32d2d
Merge pull request #4427 from atgeirr/do-not-recreate-matrix-ilu0
...
Avoid copying the matrix in the ILU preconditioner.
2023-02-14 16:11:14 +01:00
Atgeirr Flø Rasmussen
358d9997ee
Fix a few warnings in recently added code.
2023-02-14 15:46:08 +01:00
Arne Morten Kvarving
a90189c78d
HDF5File: add recursive group creation in write
2023-02-14 13:15:43 +01:00
Arne Morten Kvarving
e5c2fcfaf2
added: HDF5File::list
...
lists a given HDF5 group
2023-02-14 13:15:43 +01:00
Arne Morten Kvarving
13a54bbdbb
AdaptiveTimeSteppingEbos: add serialization support
2023-02-13 22:03:58 +01:00
Arne Morten Kvarving
5f6bc76512
PIDAndIterationCountTimeStepControl: add serialization support
2023-02-13 22:03:19 +01:00
Arne Morten Kvarving
1827de96a2
PIDTimeStepControl: add serialization support
2023-02-13 22:03:19 +01:00
Arne Morten Kvarving
87bc1d8c10
HardcodedTimeStepControl: add serialization support
2023-02-13 22:03:19 +01:00
Arne Morten Kvarving
bd538cf61d
SimpleIterationCountTimeStepControl: add serialization support
2023-02-13 22:03:19 +01:00
Bård Skaflestad
e89b28c9a2
Merge pull request #4419 from akva2/eclgenericvanguard_setup_params
...
changed: introduce EclGenericVanguard::SetupParams
2023-02-13 21:12:01 +01:00
Bård Skaflestad
2c702aee78
Merge pull request #4416 from akva2/simulatortimer_serialize
...
SimulatorTimer: add serialization support
2023-02-13 21:08:31 +01:00
Arne Morten Kvarving
c33240f5c1
changed: introduce EclGenericVanguard::SimulationModelParams
...
this is a struct that holds the information transferred
from the simulator prior to vanguard instantation.
this way we can avoid the static members for state,
which causes issues for serialization (in particular, it makes
it impossible to compare two instances like we do in tests).
2023-02-13 18:52:38 +01:00
Arne Morten Kvarving
f2a14b2d07
SimulatorTimer: add serialization support
2023-02-13 18:01:16 +01:00
Arne Morten Kvarving
4786deeffc
SimulatorTimer: include boost header instead of forwarding
...
drop the pointer usage which was used to enable forwarding
2023-02-13 17:59:35 +01:00