Bård Skaflestad
586d8e2ddc
Generate Property Object Directly
...
This commit switches computePropertiesForPressures() to return a
Properties object directly instead of populating an object
constructed in the caller. There is just a single call site for
this function so there's no benefit to using an out parameter here.
While here, also collect the property callbacks into a structure to
simplify the function signature. This also enables not filling in
the solvent properties unless solvent is active in the run. Update
caller accordingly.
2024-08-22 14:51:00 +02:00
Bård Skaflestad
6f2ee80e41
Refactor Perforation Pressure Property Helper Function
...
In particular, split the sections of the main loop out to helper
functions
- calculatePerforationOutflow() uses the global container factory
to compute the outflow from each connection
- initialiseConnectionMixture() computes the 'mix' array depending
on the local flowing conditions of the connection. We have
renamed 'x' and 'mix' arrays to 'currentMixture' and
'previousMixture' respectively to give more descriptive names in
the process.
We've also split out the redistribution of the individual phases to
the new private helper functions reapportionGasOilMixture() and
reapportionGasWaterMixture() in order to reduce the cognitive load
of the main loop in computePropertiesForPressures(). While here,
employ pointer arithmetic to expose the underlying structure of the
assignment expressions.
2024-08-22 14:51:00 +02:00
Bård Skaflestad
fa199461b5
Varnish Parts of Well Implementation
...
In particular
* Split some long lines
* Reverse conditions to reduce nesting
* Mark potentially unused arguments as [[maybe_unused]]
* Try to remove redundant calculations
* Mark some objets 'const' where possible
2024-08-22 14:51:00 +02:00
Tor Harald Sandve
66fd1dfcf3
Merge pull request #5527 from totto82/pvtnum_drdsdtcon
...
Support deactivation of individual DRSDT/DRVDT/DRSDTCON regions
2024-08-22 14:30:03 +02:00
Kjetil Olsen Lye
c4f686227b
Merge pull request #5451 from multitalentloes/generalize_thread_block_tuner
...
Generalize thread block tuner
2024-08-22 12:56:14 +02:00
Tobias Meyer Andersen
8a1dfceeed
clang format OpmCuilu0.cpp
2024-08-22 10:24:17 +02:00
Tobias Meyer Andersen
45f6116d5e
clang format autotuner
2024-08-22 10:23:36 +02:00
Tobias Meyer Andersen
dcdce71d4b
add more explanations
2024-08-22 10:17:53 +02:00
Tobias Meyer Andersen
8b50c90fd1
make use of OpmLog for printing tuning result
2024-08-22 10:07:06 +02:00
Atgeirr Flø Rasmussen
9b4c51de7e
Merge pull request #5553 from jakobtorben/add_support_for_changing_local_solver_in_NLDD
...
Make local solver in NLDD a runtime specified ISTLSolver
2024-08-22 09:45:32 +02:00
Tor Harald Sandve
b0bfe9f1c1
Adapt to mixControl moving from genericProblem
2024-08-21 16:03:59 +02:00
jakobtorben
1f285ae0d5
Make local solver in NLDD a runtime specified ISTLSolver
2024-08-21 14:24:23 +02:00
Arne Morten Kvarving
267d282d1d
NonlinearSolver: optionally instantiate for float
2024-08-21 10:12:25 +02:00
Arne Morten Kvarving
d938d821ad
EclGenericWriter: optionally instantiate for float
2024-08-21 10:05:04 +02:00
Arne Morten Kvarving
6a364ea961
GenericOutputBlackoilModule: optionally instantiate for float
2024-08-21 09:56:01 +02:00
Arne Morten Kvarving
aadc5cb69c
GenericOutputBlackoilModule: obtain data using appropriate overload
2024-08-21 09:49:22 +02:00
Bård Skaflestad
5914744f7c
Merge pull request #5546 from totto82/fix_no_wells
...
BUGFIX Fix no wells case
2024-08-21 09:36:16 +02:00
Bård Skaflestad
5fd5027ebd
Merge pull request #5549 from akva2/actionhandler_float
...
ActionHandler: instance for float
2024-08-21 09:22:13 +02:00
Tor Harald Sandve
fffa19e757
Only resize drsdt related vectors when needed
2024-08-21 09:17:25 +02:00
Tor Harald Sandve
914f0b8644
Support deactivation of individual DRSDT/DRVDT/DRSDTCON regions
2024-08-21 09:17:25 +02:00
Tor Harald Sandve
e584e05435
Fix shut wells case for output of gas mass injected rates
2024-08-21 08:50:57 +02:00
Atgeirr Flø Rasmussen
908a9b37ff
Merge pull request #5445 from jakobtorben/make_cpr_reuse_option_only_apply_to_cpr
...
Make CPR reuse setup option only apply to CPR
2024-08-21 08:45:09 +02:00
Bård Skaflestad
e0e60fec8e
Merge pull request #5548 from akva2/float_support2
...
Support float simulators - batch 2
2024-08-20 18:48:00 +02:00
jakobtorben
5d54c50ba0
Add method for defining if preconditioners should be recreated
2024-08-20 17:57:38 +02:00
Tobias Meyer Andersen
ae4e6a65fc
make autotuner use lambda that only depends on blocksize
2024-08-20 15:06:59 +02:00
Tobias Meyer Andersen
14ea44246a
add autotuner
2024-08-20 13:35:33 +02:00
Arne Morten Kvarving
d762f2b29c
ActionHandler: optionally instantiate for float
2024-08-20 12:31:10 +02:00
Arne Morten Kvarving
bc1fd4f01c
BlackoilWellModelGeneric: optionally instantiate for float
...
BlackoilWellModelRestart: optionally instantiate for float
these need to be in the same commit due to circular dependencies
2024-08-20 12:31:07 +02:00
Arne Morten Kvarving
dcbd1c7baf
BlackoilWellModelGeneric: convert input data to appropriate Scalar type
2024-08-20 12:31:07 +02:00
Kai Bao
5866e9af84
Merge pull request #5535 from GitPaean/relocate_mixing_control
...
relocating mixControls_ form FlowGenericProblem to FlowProblem
2024-08-20 11:50:39 +02:00
Arne Morten Kvarving
62daa16304
ParallelWBPCalculation: optionally instantiate for float
2024-08-20 11:41:12 +02:00
Arne Morten Kvarving
35b93eed14
ParallelPAvgCalculator: optionally instantiate for float
2024-08-20 11:36:24 +02:00
Arne Morten Kvarving
86b3879806
ParallelPAvgDynamicSourceData: optionally instantiate for float
2024-08-20 11:08:34 +02:00
Atgeirr Flø Rasmussen
1615719993
Merge pull request #5110 from totto82/fixDrift
...
Remove check for active wells for drift compensation
2024-08-20 09:53:25 +02:00
Bård Skaflestad
afe34e1868
Merge pull request #5542 from akva2/float_support1
...
Add float support to simulators: Batch 1
2024-08-20 09:29:40 +02:00
Bård Skaflestad
36494d19f8
Merge pull request #5541 from atgeirr/warn-petgrid
...
More helpful message for PETGRID.
2024-08-19 17:03:25 +02:00
Arne Morten Kvarving
14bc929fb0
ParallelOverlappingILU0: optionally instantiate for float
2024-08-19 13:51:15 +02:00
Arne Morten Kvarving
f94f1d1012
MILU: optionally instantiate for float
2024-08-19 13:50:08 +02:00
Arne Morten Kvarving
554bb7d8b7
StandardWellConnections: optionally instantiate for float
2024-08-19 13:47:49 +02:00
Arne Morten Kvarving
5c37e497cc
StandardWellAssemble: optionally instantiate for float
2024-08-19 13:46:50 +02:00
Arne Morten Kvarving
3e6afbe480
StandardWellPrimaryVariables: optionally instantiate for float
2024-08-19 13:45:34 +02:00
Arne Morten Kvarving
bee3dea736
WellConvergence: optionally instantiate for float
2024-08-19 13:44:35 +02:00
Arne Morten Kvarving
7105fb8601
MultisegmentWellAssemble: optionally instantiate for float
2024-08-19 13:41:17 +02:00
Arne Morten Kvarving
aceadc5e88
WellAssemble: optionally instantiate for float
2024-08-19 13:40:12 +02:00
Arne Morten Kvarving
db3d552fe7
MultisegmentWellPrimaryVariables: optionally instantiate for float
2024-08-19 13:37:59 +02:00
Arne Morten Kvarving
41e93ba730
MultisegmentWellGeneric: optionally instantiate for float
2024-08-19 13:37:14 +02:00
Arne Morten Kvarving
26bb0c3d85
WellInterfaceIndices: optionally instantiate for float
2024-08-19 13:36:30 +02:00
Arne Morten Kvarving
610abd0b6c
WellInterfaceFluidSystem: optionally instantiate for float
2024-08-19 13:35:43 +02:00
Arne Morten Kvarving
6fa7f970f0
WellGroupConstraints: optionally instantiate for float
2024-08-19 13:34:57 +02:00
Arne Morten Kvarving
66c445b36e
WellConstraints: optionally instantiate for float
2024-08-19 13:34:12 +02:00