Arne Morten Kvarving
e406d2f0a1
StandardWell::getMobility: use if constexpr
2023-05-15 21:38:39 +02:00
Arne Morten Kvarving
c0bc0abc73
StandardWell::getMobility: use Scalar relperms when possible
2023-05-15 21:38:39 +02:00
Arne Morten Kvarving
5126097d7b
changed: unify MultisegmentWell::getMobility(Eval|Scalar)
2023-05-15 21:38:39 +02:00
Arne Morten Kvarving
35c56e4ce4
changed: unify StandardWell::getMobility(Eval|Scalar)
2023-05-15 21:38:37 +02:00
Paul
ce3ecd800e
allow value NONE for item 7 of GCONPROD
2023-05-15 17:37:40 +02:00
Kjetil Olsen Lye
bc3cb8c1db
Fixed typo in documentation.
2023-05-15 11:32:25 +02:00
Kjetil Olsen Lye
1a6720996a
Switched from size_t to std::size_t in safe_conversion.hpp.
2023-05-15 11:23:33 +02:00
Arne Morten Kvarving
1b073185a1
fixed: copy the mobility values into the temporary Eval vector
2023-05-12 15:13:34 +02:00
Tor Harald Sandve
ee39117771
Add energy + precsalt simulator
2023-05-12 10:49:17 +02:00
Tor Harald Sandve
23e9bf599d
Fixes related to rsw/rvw handling in standard well
2023-05-12 09:44:11 +02:00
Kjetil Olsen Lye
a703e9f7bd
Removed exceptions from destructors.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
133a8897a0
Fixed indexing mistake in cuistl/vector_operations
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
046ef6cdc0
Replaced some macro size checks with function calls.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
e32b6ac0a8
Removed use of macro to check equal size.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
42b6a74ce5
Made CuSparseMatrix non-copyable.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
67f94ce8a3
Now handling sparsity pattern copying in a more elegant way.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
e14da5e053
Formatting fixes.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
cc8db08e83
Fixed unsafe type conversion.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
3f1cbbe1b8
Used safe conversion in CuVector
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
5fee5cece8
Inlined safe conversion functions.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
b6a67275c9
Rename to to_int and to_size_t
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
5373fb7a9c
Added int to size_t conversion. Added some static_asserts.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
9418d5311d
Added safe conversion from size_t to int.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
31e7ef04ba
Added a CuSparse matrix wrapper.
2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
858d8b189b
Added CuVector with tests.
2023-05-12 08:23:18 +02:00
Kai Bao
49a327f372
we should not request alq_value for injectors
...
through the function { return well_.wellEcl().alq_value(); }.
It will throw a runtime_error which is not properly caught.
2023-05-11 15:23:25 +02:00
Kjetil Olsen Lye
a6b0ffac70
Removed unused using statement.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
4228daf670
Added cusparseWarnIfError and CUSPARSE_WARN_IF_ERROR.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
81bc76384d
Documentation fix.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
863647f592
Added cudaWarnIfError/OPM_CUDA_WARN_IF_ERROR
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
cab0efeec5
Added cublasWarnIfError/CUBLAS_WARN_IF_ERROR.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
e4c0ce08dc
Fixed documentation and formatting.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
b456fee209
Updated copyright headers.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
062d692c83
Added handles for cusparse and cublas.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
03a7fb6c9d
Added error macros to check last CUDA error.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
a204708f37
Refactored CUDA error macros to call inline functions.
2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
bf9dd4e1dd
Added safe call macros for CUDA, CuBlas and CuSparse.
2023-05-09 15:20:34 +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
Kai Bao
d30e1f7a2a
adding comment to address reviewing comments for PR#4598
2023-05-08 13:55:30 +02:00
Kai Bao
926228401a
moving function needRebalanceNetwork to BlackoilWellModelGeneric
2023-05-08 13:26:23 +02:00
Kai Bao
fa39f1f183
adding max_iter and relaxation_iter for updateWellControlsAndNetwork
...
to avoid getting stuck during the iteration.
2023-05-08 10:43:49 +02:00
Kai Bao
b9348ee435
try to honor the network balance tolerance
...
without considering the iteration number. Because of the different
implementaion from other simulators, it is difficult to honour
procedure-dependent parameters.
2023-05-08 10:43:49 +02:00
Kai Bao
6148e97771
we dampen the nodal pressure update for each iteration
...
to improve the network update convergence. The current network update is
somehow explicit.
2023-05-08 10:43:49 +02:00
Kai Bao
ee77fa122c
updating the thp of the wells during the network update iteration
2023-05-08 10:43:49 +02:00
Kai Bao
bb7ed4d78e
making sure to update the pressure when needing network balance
2023-05-08 10:43:49 +02:00
Kai Bao
5536b24a84
fixing the comilation from the reverted commit
...
the interface has changed.
2023-05-08 10:43:49 +02:00
Kai Bao
2d67d819e7
Revert "removing unused function solveEqAndUpdateWellState"
...
This reverts commit 7931e6e00a
.
2023-05-08 10:43:49 +02:00
Kai Bao
8644801ac8
adding function balanceNetwork
...
not compiling yet due to the change in the master branch
2023-05-08 10:43:49 +02:00
Kai Bao
b3a6009b1b
network pressure needs to be updated even without wells open
...
mostly to make the comparison plot against reference results easier for
the network nodal pressures.
2023-05-08 10:43:49 +02:00
Kai Bao
0f4da07aaf
when a well is in a network node with nodal pressure
...
setting the dynamic thp limit with the the nodal pressure.
2023-05-08 10:43:49 +02:00
Arne Morten Kvarving
e4c15531a8
Merge pull request #4626 from akva2/simplify_wellconnection_pressures
...
Simplify WellconnectionPressures properties signatures
2023-05-08 10:22:44 +02:00
Bård Skaflestad
b4945a0a5e
Merge pull request #4615 from GitPaean/only_prediction_well_has_thp_constraint
...
only prediction wells can have THP constraint
2023-05-05 09:37:26 +02:00
Arne Morten Kvarving
59c9a139cc
changed: simplify WellConnectionPressure calculation by passing a struct
2023-05-04 14:30:55 +02:00
Arne Morten Kvarving
fafca7b382
changed: introduce a struct StandardWellConnections::Properties
...
this holds the various properties for a connection
2023-05-04 14:30:33 +02:00
Arne Morten Kvarving
f06cc1f626
changed: simplify computePerfRate signatures
...
pass a PerforationRates ref instead of multiple references
to doubles
2023-05-04 13:33:45 +02:00
Arne Morten Kvarving
9bfe835652
changed: introduce a struct PerforationRates
...
this holds various rates for a perforation that used to be
kept as separate variables
2023-05-04 13:33:45 +02:00
Atgeirr Flø Rasmussen
61e5ce3d73
Merge pull request #4617 from GitPaean/updating_interval_avoid_stallment
...
updating the interval when doing bisectBracket()
2023-05-03 13:23:30 +02:00
Bård Skaflestad
bf0b7ed948
Merge pull request #4592 from totto82/fix_vapwat_gw
...
pick correct version of flow for gas-water-vapwat case
2023-05-03 11:14:22 +02:00
Kai Bao
2b054ce2a2
updating the interval when doing bisectBracket()
...
to avoid getting stuck and iterate for no purpose. It might not affect the
result much, while from the code, it looks like it should be updated
iteratively.
2023-05-01 16:01:35 +02:00
Kai Bao
a2c6e674dc
only prediction wells can have THP constraint
2023-04-27 14:00:49 +02:00
Bård Skaflestad
4dba837b39
Merge pull request #4606 from akva2/opmrst_more_checks
...
Serialized restart: Add some more checks
2023-04-27 13:32:19 +02:00
Arne Morten Kvarving
c61639251f
added: check command line parameters when doing a .OPMRST restart
...
compare command line used to create .OPMRST differ
to current run and warn if they differ. safety net to avoid
misunderstandings
2023-04-27 12:32:00 +02:00
Markus Blatt
5a2b25ec31
Merge pull request #4609 from akva2/fix_wtest_for_newly_created_well
...
WellGroupHelpers: make sure we have a GuideRate value or potential for well
2023-04-27 09:17:14 +02:00
Arne Morten Kvarving
7f58ad69ac
WellGroupHelpers: make sure we have a GuideRate value or potential for well
...
this is not the case when WTEST executes at the beginning
of (the first time step of) a report step if the well was created
at that report step. this led to an exception being thrown trying
to deref the potentials array
2023-04-26 15:55:56 +02:00
Atgeirr Flø Rasmussen
8ac8b207ca
Minor adjustment avoids exception when used with FIELD group.
2023-04-26 11:51:57 +02:00
Atgeirr Flø Rasmussen
b90cf68d46
Merge pull request #4604 from atgeirr/strict-parsing-parameter
...
Strict parsing parameter
2023-04-25 15:19:44 +02:00
Arne Morten Kvarving
1003bf7735
added: explicitly check that number of processes matches .OPMRST file
...
while the grid hash check would pick this up as well, it's better
to emit an explicit error message
2023-04-25 15:07:58 +02:00
Arne Morten Kvarving
163ea6f0b0
fixed: missed a .SAVE -> .OPMRST
2023-04-25 15:07:31 +02:00
Atgeirr Flø Rasmussen
86259ff52e
Fix: add missing parameter to fmt::format() call.
2023-04-25 14:49:28 +02:00
Atgeirr Flø Rasmussen
ca62d96714
Add helpful message about termination due to unsupported keywords.
2023-04-25 13:02:45 +02:00
Atgeirr Flø Rasmussen
9ca6034388
Remove EclStrictParsing, replace with ParsingStrictness.
...
The new parameter takes the "high", "normal" (default), or "low" string.
Also implemented behaviour.
2023-04-25 12:03:13 +02:00
Atgeirr Flø Rasmussen
04d2b8f39d
Make KeywordValidation::validateDeck() more flexible.
...
Adding a bool argument 'treat_critical_as_noncritical' to possibly
reduce terminating errors to warnings.
2023-04-25 10:44:59 +02:00
Atgeirr Flø Rasmussen
77d151e0b5
Refactor get_error_report() for more flexibility.
2023-04-25 10:33:20 +02:00
Markus Blatt
3d144ce4d7
Mark PINCH option 2 NOGAP as fully supported.
...
All the test cases that were provided to me are actually already
supported by current master.
2023-04-24 12:47:13 +02:00
Kai Bao
79eeeae16e
addressing the reviewing comments for PR #4596
2023-04-20 15:47:31 +02:00
Kai Bao
1542f2c087
refactor the network update
...
moving the well controls and network update out of assembleImpl to avoid
call assmebleImpl in a recursive manner
2023-04-20 14:59:50 +02:00
Bård Skaflestad
30f7ed1ed9
Split CO2 Store Handling Out to Helper Functions
...
This is mostly to aid readability by avoiding nested conditionals.
While here, also remove redundant 'inline' and 'virtual' keywords.
2023-04-19 20:44:01 +02:00
Markus Blatt
20e2058333
Merge pull request #4578 from blattms/support-editnncr
...
Support EDITNNCR keyword
2023-04-19 11:34:04 +02:00
Tor Harald Sandve
ec4a927d1b
Merge pull request #4579 from hakonhagland/glwtest_it
...
Check all ALQ values when testing a gaslift well for reopening
2023-04-18 14:46:10 +02:00
Tor Harald Sandve
2a20ad8283
pick currect version of flow for gas-water-vapwat case
2023-04-17 15:25:59 +02:00
Torbjørn Skille
cce70db1a2
GCONPROD Item 7, only RATE is supported
2023-04-15 16:12:00 +02:00
Kai Bao
ceba5c468b
Merge pull request #4572 from GitPaean/tightenging_tolerance_for_zero_rate_wells
...
stricter tolerance for wells with zero rate target
2023-04-14 11:19:35 +02:00
Tor Harald Sandve
fcb6eeb0ea
Merge pull request #4575 from totto82/wgrupcon_no
...
Support WGRUPCON item 2 = no
2023-04-14 08:16:28 +02:00
Håkon Hægland
e241fccbca
Only iterate wells activated for gaslift
2023-04-13 11:08:30 +02:00
Håkon Hægland
4ba5e3efad
Iterate ALQ when testing gaslift well
...
When testing a gaslift well under THP control, if the
well does not converge with maximum alq, try to reduce alq
in increments until well equations converge.
2023-04-13 10:40:29 +02:00
Kai Bao
688d575802
Merge pull request #4584 from GitPaean/fixing_unopen_injector
...
checking Producer or Injector when comparing bhp against BHP constraint during well operability check
2023-04-13 09:27:46 +02:00
Markus Blatt
1ef30ec85e
Mark keyword EDITNNCR as supported
2023-04-12 14:24:47 +02:00
Markus Blatt
8142788b58
Merge pull request #4406 from Tongdongq/rocsparse
...
Add rocsparseSolver
2023-04-12 12:07:58 +02:00
Arne Morten Kvarving
f2983ac6af
minimum dune version required is now 2.7
2023-04-12 09:41:23 +02:00
Tor Harald Sandve
5309ba22f7
Merge pull request #4580 from GitPaean/fixing_co2store_water_gas
...
fixing running with CO2Store + water + gas + AquiferCarterTracy
2023-04-11 15:11:36 +02:00
Kai Bao
ed4aa75721
checking Producer or Injector when comparing bhp against BHP constraint
...
during well operability check.
2023-04-11 14:34:47 +02:00
Tong Dong Qiu
270dcd53fc
Restore old HAVE_CUDA value
2023-04-11 14:30:20 +02:00
Tong Dong Qiu
bec51c4471
Prevent throwing in destructors
2023-04-06 13:14:19 +02:00
Tong Dong Qiu
f124792879
Detect ROCm version to suppress deprecated warning
2023-04-06 13:14:19 +02:00
Tong Dong Qiu
ed8f37ec82
Initialize HIP/rocsparse in constructor
2023-04-06 13:14:19 +02:00
Tong Dong Qiu
2c50951ddd
Implement PR comments
2023-04-06 13:14:19 +02:00
Tong Dong Qiu
eaef4b8c85
Update CMakeLists for rocm
2023-04-06 13:14:19 +02:00
Tong Dong Qiu
91a3e238ce
Add rocsparseSolver
2023-04-06 13:14:19 +02:00
Kai Bao
4b95123895
removing extra bracket to restore compilation
2023-04-03 14:15:16 +02:00
Markus Blatt
f9d2dccb02
Merge pull request #4564 from hnil/flexiblegmres
...
- added flexiblegmres
2023-04-03 13:14:42 +02:00
Kai Bao
e5efe796bf
fixing running with CO2Store + water + gas + AquiferCarterTracy
2023-04-03 12:41:54 +02:00
Markus Blatt
734eb76910
Merge pull request #4573 from hakonhagland/glift_grad
...
Fix bug when recalculating gaslift gradient
2023-04-03 11:20:15 +02:00
Tor Harald Sandve
dbe8c3d294
Support WGRUPCON item 2 = no
2023-03-31 11:47:33 +02:00
Bård Skaflestad
c52ab4ccd5
Merge pull request #4347 from atgeirr/afr_well_assemble_separate
...
Implement functionality to add well source terms to the residual separately
2023-03-31 11:10:01 +02:00
hnil
1773ea8229
fixed comment
2023-03-31 11:03:57 +02:00
hnil
528921ee6f
- added flexiblegmres
2023-03-31 11:01:49 +02:00
Kai Bao
fcb6e41490
Merge pull request #4574 from totto82/add_gas_water_energy
...
add gas + water + energy to flow
2023-03-31 10:44:41 +02:00
Håkon Hægland
973a883043
Some minor changes as requested in review.
2023-03-31 09:26:28 +02:00
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