Kjetil Olsen Lye
042172588d
Added CuSeqILU0 as a parallel preconditioner as well.
2023-05-31 16:28:51 +02:00
Kjetil Olsen Lye
411bf6b0ca
Added missing file
2023-05-31 15:52:50 +02:00
Kjetil Olsen Lye
ceb15e22e3
Expose CuISTL solver in FlexibleSolver.
2023-05-31 15:03:31 +02:00
Kjetil Olsen Lye
0269f7215c
Added conversion preconditioner.
2023-05-31 14:55:48 +02:00
Atgeirr Flø Rasmussen
0923698667
Merge pull request #4635 from kjetilly/cuistl_preconditioners
...
Path to multigpu: Cuistl preconditioners
2023-05-31 14:43:49 +02:00
Kjetil Olsen Lye
90c9eedc79
Fixed typo in error message.
2023-05-31 14:03:59 +02:00
Kjetil Olsen Lye
dfb3ccb72b
Typo in variable name.
2023-05-31 13:14:37 +02:00
Kjetil Olsen Lye
697c49a08b
Documentation fixes.
2023-05-31 13:13:48 +02:00
Kjetil Olsen Lye
e8bc314e04
Documentation update.
2023-05-31 13:11:39 +02:00
Arne Morten Kvarving
f50c9a70ed
fixed: forward struct as struct
2023-05-31 09:35:16 +02:00
Arne Morten Kvarving
127ddd44a2
supress unused capture warning with clang
...
a bug in clang causes it to emit unused lambda captures
here due to the if constexpr usage. use standard (void)
trick to suppress it
2023-05-31 09:35:16 +02:00
Kjetil Olsen Lye
54598a44d5
Removed commented code line.
2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
bb9c51a6cc
Cleaned up fiz_zero_diagonal.hpp and added documentation.
2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
9c28b485ef
Added some missing header files.
2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
dea49a5406
Added CUILU0 to the PreconditionerFactory.
2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
dfc5331696
Marked constructor as explicit.
2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
84305a7a8d
Added conversion preconditioner.
2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
b30e6d79d5
Added CuSeqILU0 with the preconditioner adapter.
2023-05-30 11:49:58 +02:00
Atgeirr Flø Rasmussen
ed91f7528b
Merge pull request #4664 from totto82/fix_gpmaint
...
dont store history of inactive gpmaint rates
2023-05-30 11:38:27 +02:00
Bård Skaflestad
3549d85d83
Merge pull request #4568 from totto82/2psolvent
...
Add gaswater solvent
2023-05-30 11:36:16 +02:00
Atgeirr Flø Rasmussen
e5672ee816
Merge pull request #4634 from kjetilly/cuistl_vector_matrix
...
Path to multigpu: Cuistl vector and matrix classes
2023-05-30 11:35:15 +02:00
Kjetil Olsen Lye
1bd2edb003
Renamed types.
2023-05-30 10:30:55 +02:00
Kjetil Olsen Lye
ed2747db1c
Added sanity check.
2023-05-30 10:28:29 +02:00
Kjetil Olsen Lye
a8dd329307
Typo in documentation.
2023-05-30 10:14:30 +02:00
Kjetil Olsen Lye
0eb60e5336
Added test of size for copyToHost.
2023-05-30 10:03:54 +02:00
Kjetil Olsen Lye
b4b1a7b77f
Added TODO for perf, renamed to bvector.
2023-05-30 09:54:22 +02:00
Kai Bao
23c0126095
Merge pull request #4640 from steink/ms_pressure_eq_derivatives
...
Update of multisegment well pressure equations - testing
2023-05-26 22:57:23 +02:00
Bård Skaflestad
7a77f28b71
Add Support for Initialising Constant Flux Aquifers from Restart
...
In particular, form constant flux aquifer objects from the restart
step's collection if available and properly initialise their total
produced volume.
2023-05-26 20:21:52 +02:00
Bård Skaflestad
3c643dba13
Don't Provide Deck Accessors in FlowMainEbos
...
Following commits f4f8c033d
and c7016854d
(PR #4286 ), the "vanguard"
no longer maintains an internal Deck data member. Don't pretend
that it does by providing member functions to access that data
member. If someone tries to actually call these member functions
then they will get an unfriendly diagnostic message and a build
failure.
2023-05-26 17:12:30 +02:00
Tor Harald Sandve
7cf3f69cf9
Add gaswater solvent
...
Fix some places that assumed 3p + solvent
2023-05-26 16:24:38 +02:00
Bård Skaflestad
14a63a4636
Synchronise Face-Area Fractions Between All Processes
...
We need a global view of face-area fractions if aquifer connections
happen to be shared between processes. Add a new helper function,
BlackoilAquiferModel::computeConnectionAreaFraction()
that performs a collective operation to compute the total face areas
and then defers to the local aquifer objects to compute their face
area fractions.
While here, also split the initialisation of analytic aquifers into
two parts, one for the face area and connection mappings, and one
for the connection depths. Run the former as part of the object
constructor and the latter as part of 'initQuantities()'. This
ensures that we can computeConnectionAreaFraction() for all analytic
aquifers before assigning solution quantities from the restart file.
2023-05-25 09:50:51 +02:00
Bård Skaflestad
5586ce63a0
Calculate Local Face Area Fraction for Aquifer's Connections
...
This is in preparation of reinitialising the total produced volume
from the constant flux aquifer from the restart file in the case
that the aquifer's connections are split across multiple MPI ranks.
2023-05-25 09:50:51 +02:00
Kai Bao
35621058c6
Merge pull request #4654 from totto82/solvent_foam
...
Add solvent + foam simulator
2023-05-24 22:50:20 +02:00
Tor Harald Sandve
1592ef8bd2
solvent + foam simulator
2023-05-24 16:03:09 +02:00
Stein Krogstad
3beef758e4
Merge branch 'OPM:master' into ms_pressure_eq_derivatives
2023-05-24 13:35:11 +02:00
Arne Morten Kvarving
2630522d7f
avoid unused variable warning with NDEBUG
2023-05-24 12:39:24 +02:00
Tor Harald Sandve
cf169167d0
Merge pull request #4591 from totto82/fix_rswrvw_well
...
Fixes related to rsw/rvw handling in standard well
2023-05-24 08:27:06 +02:00
Stein Krogstad
5c0b76f337
Revert to original segment density computations
...
(keep average version as option)
2023-05-23 12:44:06 +02:00
Tor Harald Sandve
86edaeae77
dont store history of inactive gpmaint rates
2023-05-23 11:02:22 +02:00
Markus Blatt
73d79b4010
Merge pull request #4603 from blattms/mark-nogap-as-supported
...
Mark PINCH option 2 NOGAP as fully supported.
2023-05-17 08:20:11 +02:00
Stein Krogstad
51604e5956
Move hydro p-loss assembly to end of function
2023-05-16 13:26:58 +02:00
Stein Krogstad
a3860e7d0c
Updates as requested PR review
2023-05-16 12:58:19 +02:00
Stein Krogstad
0417f101bf
Use average density for hydro p-drop
2023-05-16 12:58:19 +02:00
Stein Krogstad
8ee3493aed
don't upwind densitiy
2023-05-16 12:58:19 +02:00
Stein Krogstad
e5ac9f9dec
Inluding all derivatives for reversed flow
2023-05-16 12:58:19 +02:00
Tor Harald Sandve
f5b44ad26d
Merge pull request #4650 from totto82/addPrecEnergy
...
Add energy + precipitation of salt in brine-gas simulator
2023-05-16 12:17:35 +02:00
Kjetil Olsen Lye
70310160c0
Updated documentation to reflect limitations on int.
2023-05-16 10:01:39 +02:00
Kjetil Olsen Lye
b4aa427bbe
Fixed documentation for vector_operations.hpp.
2023-05-16 09:56:21 +02:00
Arne Morten Kvarving
0406a033a2
introduce getMobility in WellInterface
...
we now share implementation between StandardWell and MultisegmentWell
2023-05-15 21:39:59 +02:00
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
Bård Skaflestad
6e8b8b2f6c
Merge pull request #4522 from blattms/removed-use-uninit-warnings
...
[cleanup] Fix that phaseUsage might be used uninitialzed in test.
2023-03-10 15:06:01 +01:00
Markus Blatt
9cabbede2c
[cleanup] Fix that phaseUsage might be used uninitialzed in test.
...
We need to make sure that all pods are initialzed when using
the default constructor. Fixes
```
RateConverter.hpp:83:50: warning: ‘phaseUsage’ may be used uninitialized in this function [-Wmaybe-uninitialized]
83 | , attr_ (rmap_, Attributes())
| ^
```
2023-03-10 14:06:46 +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
Bård Skaflestad
ff2fd22fa0
Merge pull request #4485 from totto82/gsf_wsf
...
GSF WSF diagnostics
2023-02-24 17:17:50 +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
Tor Harald Sandve
05caaa8946
GSF WSF diagnostics
2023-02-24 09:41:25 +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