Commit Graph

5584 Commits

Author SHA1 Message Date
Arne Morten Kvarving
0481c7c0b2 adjust to PAvgCalculator templating 2024-05-22 10:51:07 +02:00
Arne Morten Kvarving
59e6d4db08 adjust to PAvgDynamicSourceData templating 2024-05-22 10:51:07 +02:00
Arne Morten Kvarving
e0bcb314ea MSWellHelpers: template Scalar type 2024-05-22 09:57:44 +02:00
Arne Morten Kvarving
16f5290038 ParallelWellInfo: template Scalar type 2024-05-22 09:48:22 +02:00
Arne Morten Kvarving
81189b89c7 PerforationData: template Scalar type 2024-05-22 09:48:07 +02:00
Arne Morten Kvarving
d2cbf33b62 PerforationRates: template Scalar type 2024-05-22 09:48:06 +02:00
Arne Morten Kvarving
1be9a08d3d RateConverter: use Scalar type of FluidSystem 2024-05-22 09:47:37 +02:00
Arne Morten Kvarving
4e7ab26841 RegionAttributeHelpers: template Scalar type 2024-05-22 09:47:37 +02:00
Arne Morten Kvarving
e3891843df RegionAverageCalculator: use Scalar type of FluidSystem 2024-05-22 09:47:37 +02:00
Arne Morten Kvarving
f65b8ef33b StandardWell: use Scalar type 2024-05-22 09:01:05 +02:00
Arne Morten Kvarving
21c2352c44 StandardWellEval: use Scalar type 2024-05-22 09:01:05 +02:00
Arne Morten Kvarving
5636721bab StandardWellEquations: use Scalar type 2024-05-22 09:01:05 +02:00
Arne Morten Kvarving
e9794e1de5 StandardWellPrimaryVariables: use Scalar type 2024-05-22 09:01:05 +02:00
Arne Morten Kvarving
e6b48dce8b StandardWellConnections: use Scalar type 2024-05-22 08:09:39 +02:00
Arne Morten Kvarving
b736460afd StandardWellAssemble: use Scalar type 2024-05-22 07:58:55 +02:00
Bård Skaflestad
9b1797e7b7
Merge pull request #5353 from akva2/vfp_template_scalar
VFP classes: template Scalar type
2024-05-21 17:52:10 +02:00
Arne Morten Kvarving
d5d16eaee4 VFPHelpers: move some functions into a class with static members
and template Scalar type
2024-05-21 17:01:30 +02:00
Arne Morten Kvarving
3747981347 VFPProperties: template Scalar type 2024-05-21 17:01:30 +02:00
Arne Morten Kvarving
29d142b5e4 VFPProdProperties: template Scalar type 2024-05-21 17:01:30 +02:00
Arne Morten Kvarving
099322b0f0 VFPInjProperties: template Scalar type 2024-05-21 17:01:30 +02:00
Bård Skaflestad
0aaa69c6e0 Rerun UDQ Assignments After Action Processing
If an action block happens to run a UDQ ASSIGN operation and,
furthermore, happens to run at the last time step of an episode then
the "clear pending assignments" behaviour of the ScheduleState copy
constructor leads to not performing the UDQ assignment at all.  This
commit works around this problem by invoking the action handler's
UDQ assignment function after processing all active action blocks.

The underlying problem has been present since at least Pull Request
OPM/opm-common#3587 which introduced the "clear pending assignments"
behaviour of ScheduleState's copy constructor.
2024-05-21 13:51:06 +02:00
Bård Skaflestad
9731a84cad Adjust Whitespace in FlowProblem File
In particular, be consistent about four-space indent levels and add
braces to a number of single-statement control blocks.  Add a few
blank lines for readability.

While here, also mark a number of objects as 'const'.
2024-05-21 13:51:06 +02:00
Bård Skaflestad
8a4e78e7c4
Merge pull request #5354 from akva2/various_well_helpers_template_scalar
Various well helpers: template Scalar type
2024-05-21 13:14:50 +02:00
Bård Skaflestad
c5810d722b
Merge pull request #5363 from akva2/support_dune_fem_2.9
fixed: build with dune-fem 2.9
2024-05-21 11:22:40 +02:00
Bård Skaflestad
2fe957ca6c
Merge pull request #5368 from multitalentloes/fix_typo_cuda_aware_mpi
fix typo that would cause crash cuda aware openmpi
2024-05-21 11:15:00 +02:00
Tobias Meyer Andersen
9d6dcb00a3 fix typo that would cause crash cuda aware openmpi 2024-05-21 10:20:02 +02:00
josh bowden
2744614f9c update after pull request comments; addition of OUTPUTDIR variable to Damaris XML configuration 2024-05-17 17:36:18 +02:00
Arne Morten Kvarving
b74b170d5b fixed: build with dune-fem 2.9 2024-05-16 10:58:08 +02:00
Tor Harald Sandve
2ea6cea895
Merge pull request #5292 from gdfldm/patch-1
Update GMDS and GMGP definitions in GenericOutputBlackoilModule.cpp
2024-05-15 15:00:10 +02:00
Arne Morten Kvarving
ee1c531431 InitStateEquil: remove template parameter from Comm and use Parallel::Communication directly
in the process this quells a deprecation warning for
Dune::CollectiveCommunication usage
2024-05-15 11:20:29 +02:00
Arne Morten Kvarving
60defa4fd8
Merge pull request #5355 from multitalentloes/famg_warning_fix
Resolve warning delete-abstract-non-virtual-dtor
2024-05-15 11:00:34 +02:00
Tobias Meyer Andersen
73746b56bc Resolve warning delete-abstract-non-virtual-dtor 2024-05-15 10:00:14 +02:00
Arne Morten Kvarving
8e000d08ce WellAssemble: use Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
9c431d1921 WellBhpThpCalculator: template Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
5a340258aa WellConstraints: template Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
720e177aaa WellConvergence: template Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
96c4a2f510 WellHelpers: template computeHydrostaticCorrection Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
ca9baea09d WellTest: template Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
9bbd23acca WellGroupControls: template Scalar type 2024-05-15 08:19:36 +02:00
Arne Morten Kvarving
d25ea9ec26 WellGroupConstraints: template Scalar type 2024-05-15 08:19:36 +02:00
Atgeirr Flø Rasmussen
48eb73fa80
Merge pull request #5350 from totto82/gpmain_reset
Reset gpmain state when rate is zero
2024-05-15 08:12:16 +02:00
josh bowden
3630177e3e added ability to pass through multiple variables to Damaris, with full list still defined in initDamarisXmlFile.cpp ; Also adds ability to limit the variables to be passed through using --damaris-limit-variables=<CSV list> coammand line option 2024-05-14 21:08:47 +02:00
Arne Morten Kvarving
f70c7f15f8 ActionHandler: template Scalar type 2024-05-14 16:21:55 +02:00
Tor Harald Sandve
c0c301043c Reset gpmain state when rate is zero 2024-05-14 13:14:51 +02:00
Arne Morten Kvarving
3d8e5e5750 WellInterface: use Scalar type 2024-05-14 10:26:58 +02:00
Arne Morten Kvarving
5dfb926643 WellInterfaceIndices: use Scalar type 2024-05-14 10:26:58 +02:00
Arne Morten Kvarving
3067e56182 WellInterfaceFluidSystem: use Scalar type 2024-05-14 10:26:58 +02:00
Arne Morten Kvarving
11b5ba3f18 WellInterfaceGeneric: template Scalar type 2024-05-14 10:26:58 +02:00
Atgeirr Flø Rasmussen
226410cd44
Merge pull request #5303 from akva2/gaslift_template_scalar
GasLift: template Scalar type
2024-05-14 09:59:42 +02:00
Bård Skaflestad
2e7a7a0c44
Merge pull request #5347 from akva2/janitoring_gcc14
add missing include
2024-05-13 21:27:26 +02:00
Arne Morten Kvarving
5d54d36dc4 add missing include
in particular fixes build with gcc14
2024-05-13 15:05:47 +02:00
Bård Skaflestad
0f67799e9c
Merge pull request #5344 from totto82/GMST
Add GMST and modify GMTR output the maximum trapped CO2 in the gas phase
2024-05-13 13:56:49 +02:00
Tor Harald Sandve
b42a8cbcc3 Add output of GMST/GMUS
Rename GMTR to GMMO as ending with TR are used for tracers
[FR]GMTR output maximum trapped CO2 in the gas phase
2024-05-13 11:24:08 +02:00
Kai Bao
5fda72d24f removing unused releaseGlobalTransmissibility()
from AluGridVanguard and CpGridVanguard.
they exist is becaluse of typo in the function name. There is another
releaseGlobalTransmissibilities() function actually gets used.
2024-05-10 16:45:00 +02:00
Bård Skaflestad
a417968464
Merge pull request #5333 from GitPaean/remove_unused_updateImbnum_
removing unused updateImbnum_ function
2024-05-08 10:59:41 +02:00
Kai Bao
b225ec240f removing updateKrnum_
which does not have effects, which was suggested by Håkon Hægland.

And also removing the following member variables from
FlowGenericProblem because they are not in use anymore.

    krnumx_, krnumy_, krnumz_;
    imbnumx_, imbnumy_, imbnumz_;
2024-05-08 09:41:46 +02:00
Kai Bao
79236c4927 removing unused updateImbnum_ function 2024-05-08 09:33:00 +02:00
Bård Skaflestad
cc28bbe989 Enforce Relaxed Tolerances Not Stricter Than Strict
Relaxed tolerances being more strict than the strict tolerances does
not make sense in our use case.
2024-05-07 15:03:18 +02:00
Arne Morten Kvarving
66131bd350
Merge pull request #5253 from multitalentloes/script_test
Add HIP support
2024-05-07 08:02:53 +02:00
Tobias Meyer Andersen
e9d6b326cc Add HIP support for AMD GPUs
This commits adds cmake functionality that can
hipify the cuistl framework to support AMD GPUs.

Some tests have been written as HIP does not mirror
CUDA exactly.

CONVERT_CUDA_TO_HIP is the new CMAKE argument.
CMAKE version is increased to include HIP
as a language (3.21 required).

A macro is added to create a layer of indirection
that will make only cuistl files that have been
changed rehipified.

Some BDA stuff is extracted to make sure CUDA
is not accidentally included.
2024-05-06 15:56:53 +02:00
Vegard Kippe
b27c83b2fd Tag 'BASIC=0' as allowed in RPTRST 2024-05-06 15:17:08 +02:00
Bård Skaflestad
027eed16e9 Report CNV Violation Pore-Volume Fraction to INFOITER
This commit includes the fraction of pore-volume whose CNV targets
are violated as a new per-iteration quantity in the INFOITER file
(--output-extra-convergence-info=iteration), with the column header
"CnvErrPvFrac".  We collect the values which are already calculated
in

    BlackoilModel<>::getReservoirConvergence()

and store these as a pair of numerator and denominator in the
ConvergenceReport class.  Note that we need both the numerator and
the denominator in order to aggregate contributions from multiple
ranks.

While here, also make a few more objects 'const' and calculate
column widths directly instead of the maximum number of characters
in writeConvergenceHeader().
2024-05-06 11:31:47 +02:00
Bård Skaflestad
f01635dcf2
Merge pull request #5331 from totto82/fix_restart_co2
Bugfix: initialize the input temperature in restart run without temperature in the restart file
2024-05-06 11:19:18 +02:00
Bård Skaflestad
26c59ce5cb
Merge pull request #5329 from vkip/input_skip_mode
Add parameter InputSkipMode to parameterise SKIP100 and SKIP300
2024-05-06 10:56:38 +02:00
Tor Harald Sandve
c6c447dc94 initialize the input temperature in restart run without temperature in the restart file 2024-05-06 10:21:42 +02:00
Bård Skaflestad
1e9943bfe6 Accumulate CNV Pore-Volume Sum for Interior Cells Only
The 'interiorBorder' category is *probably* equivalent to the
'interior' category for codimension zero elements, but it's better
to be safe than sorry.  We don't want to accumulate pore-volume
contributions twice.
2024-05-03 14:19:00 +02:00
Arne Morten Kvarving
0cafaf92cb
Merge pull request #5332 from multitalentloes/remove_thrust_dependency
remove usage of thrust
2024-05-03 14:14:14 +02:00
Tobias Meyer Andersen
d5c088bb20 remove unused headers 2024-05-03 13:45:24 +02:00
Tobias Meyer Andersen
d795561100 remove usage of thrust 2024-05-03 12:52:27 +02:00
Bård Skaflestad
226e90f8e1
Merge pull request #5324 from daavid00/fixMass
Bug fix massGas in place
2024-05-03 09:41:14 +02:00
Vegard Kippe
b68a55a9b9 Add parameter InputSkipMode to parameterise the behvaviour of the SKIP100 and SKIP300 keywords 2024-05-03 09:28:14 +02:00
Atgeirr Flø Rasmussen
f0855f4f48
Merge pull request #5293 from totto82/fixInitGW
Fix gas-water initialization with transision zone
2024-05-02 15:57:13 +02:00
Bård Skaflestad
a9d7457ca3
Merge pull request #5326 from akva2/fix_bda_disable
fixed: properly avoid inclusion of BDA types if BDA is disabled
2024-05-02 13:07:19 +02:00
Arne Morten Kvarving
0c3da92272
Merge pull request #5325 from hakonhagland/python_mpi
Allow Python bindings to control MPI setup in the OPM::Main constructor
2024-05-02 11:38:32 +02:00
Arne Morten Kvarving
3024fba293 fixed: properly avoid inclusion of BDA types if BDA is disabled 2024-05-02 11:37:03 +02:00
Håkon Hægland
a1b7d4b5dd Allow Python bindings to setup MPI
Allows the Python bindings to control whether MPI_Init() and
MPI_Finalize() will be called when creating an OPM::Main object.
2024-05-02 11:14:07 +02:00
David Landa Marban
955cdbf02f Bug fix massGas in place 2024-04-30 11:51:16 +02:00
Atgeirr Flø Rasmussen
da5f20a0d9
Merge pull request #5145 from multitalentloes/add_gpu_direct
Add GPU Direct
2024-04-29 14:08:25 +02:00
Atgeirr Flø Rasmussen
e767b6145f Avoid getting parameters in hot path. 2024-04-26 16:46:27 +02:00
Bård Skaflestad
d25c9d035f
Merge pull request #5311 from blattms/fix/uninit-warn
Fixes uninitialized variable warning with gcc-12
2024-04-25 10:34:05 +02:00
Markus Blatt
87c4471f96 Fixes uninitialized variable warning with gcc-12 2024-04-25 09:26:31 +02:00
Bård Skaflestad
1dfdae3892
Merge pull request #5309 from akva2/aquifers_template_scalar
Aquifer: use Scalar type
2024-04-24 16:50:31 +02:00
Arne Morten Kvarving
ec90ca1736 GasLiftSingleWell: use Scalar type 2024-04-24 15:34:07 +02:00
Arne Morten Kvarving
4feebaba4f GasLiftSingleWell: drop indent for namespace 2024-04-24 15:34:07 +02:00
Arne Morten Kvarving
ababeb79c4 GasLiftStage2: template Scalar type 2024-04-24 15:34:07 +02:00
Arne Morten Kvarving
09065dd130 GasLiftSingleWellGeneric: template Scalar type 2024-04-24 15:31:13 +02:00
Arne Morten Kvarving
25de745dab GasLiftWellState: template Scalar type 2024-04-24 15:31:13 +02:00
Arne Morten Kvarving
56dbfde657 GasLiftWellState: drop indent for namespace 2024-04-24 15:31:13 +02:00
Arne Morten Kvarving
772b00bc19 GasLiftGroupInfo: template Scalar type 2024-04-24 15:31:13 +02:00
Arne Morten Kvarving
37fa8cc5b8 GasLiftCommon: template Scalar type 2024-04-24 15:31:13 +02:00
Arne Morten Kvarving
6d0cbb47f3 BlackoilAquiferModel: use Scalar type 2024-04-24 15:22:00 +02:00
Arne Morten Kvarving
46e668911d AquiferCarterTracy: use Scalar type 2024-04-24 15:15:24 +02:00
Arne Morten Kvarving
687695882c AquiferConstantFlux: use Scalar type 2024-04-24 15:08:41 +02:00
Arne Morten Kvarving
f9f568d5ea AquiferNumerical: use Scalar type 2024-04-24 15:01:55 +02:00
Tor Harald Sandve
bf5380b2c6
Merge pull request #5296 from totto82/fixGasLift2LevelAlqLimit
Redistribute gaslift for groups with alq limit
2024-04-24 14:54:22 +02:00
Arne Morten Kvarving
a1ebca0a3e AquiferAnalytical: use Scalar type 2024-04-24 14:50:25 +02:00
Arne Morten Kvarving
7e86106ecc AquiferInterface: use Scalar type 2024-04-24 14:43:08 +02:00
Tor Harald Sandve
bac49c200e Redistribute gaslift for groups with alq limit 2024-04-24 09:44:09 +02:00
Arne Morten Kvarving
f5d6b69703 BlackoilWellModel: use Scalar type 2024-04-23 11:33:33 +02:00
Arne Morten Kvarving
f0e7f8842b BlackoilWellModelGeneric: template Scalar type 2024-04-23 11:33:33 +02:00
Arne Morten Kvarving
3d381bac91 BlackoilWellModelGuideRates: template Scalar type 2024-04-22 15:39:51 +02:00
Arne Morten Kvarving
77f9692277 BlackoilWellModelConstraints: template Scalar type 2024-04-22 15:39:51 +02:00
Arne Morten Kvarving
ddd61f4176 BlackoilWellModelRestart: template Scalar type 2024-04-22 15:39:51 +02:00
Atgeirr Flø Rasmussen
edf4be5f79
Merge pull request #5227 from akva2/improve_ide_experience
Improve IDE experience
2024-04-22 15:31:08 +02:00
Atgeirr Flø Rasmussen
a2b660d705
Merge pull request #5295 from akva2/wellgrouphelpers_template_scalar
WellGroupHelpers: template Scalar type
2024-04-22 13:14:23 +02:00
Bård Skaflestad
450bfd04fb
Merge pull request #5297 from akva2/fix_rstconv_mpich
fixed: do not send and recv from same buffer
2024-04-19 23:30:37 +02:00
Arne Morten Kvarving
70c9e5345d fixed: do not send and recv from same buffer
even though it's perfectly fine to do so in this case, mpich
will error out with an error if send and recv buffer is
the same
2024-04-19 20:10:47 +02:00
Arne Morten Kvarving
aa03d06c4d WellGroupHelpers: template Scalar type 2024-04-19 11:28:40 +02:00
Arne Morten Kvarving
522625aca8 WellGroupHelpers: change from namespace to class with static members
this to simplify adding support for float Scalars
2024-04-19 11:01:29 +02:00
Arne Morten Kvarving
ca0ca3c43e FractionCalculator: template Scalar type 2024-04-19 11:00:57 +02:00
Arne Morten Kvarving
c226c5c216 InjectionTargetCalculator: template Scalar type 2024-04-19 11:00:44 +02:00
Arne Morten Kvarving
eb3bbbb926 TargetCalculator: template Scalar type 2024-04-19 11:00:38 +02:00
Arne Morten Kvarving
6197aab409 TargetCalculator: move to namespace Opm::WGHelpers 2024-04-19 11:00:28 +02:00
Arne Morten Kvarving
9a42b70f20 TargetCalculator: drop indent for namespace 2024-04-19 11:00:20 +02:00
Arne Morten Kvarving
d6fc7cc4f6 WellGroupHelpers: drop indent for namespace 2024-04-19 10:59:53 +02:00
Tor Harald Sandve
af2e08d5aa Also fix gas-oil initialization with transision zone 2024-04-19 10:12:14 +02:00
Tor Harald Sandve
575bc813dd Fix gas-water initialization with transision zone 2024-04-19 08:39:24 +02:00
Tobias Meyer Andersen
f4b9e0a3a8 add safe conversion 2024-04-17 14:31:07 +02:00
Tobias Meyer Andersen
29cc7c4925 make variable naming convention more consistent 2024-04-17 13:49:08 +02:00
Tobias Meyer Andersen
2eefedf661 remove error logging in std::cerr 2024-04-17 13:46:49 +02:00
Matthew Goodfield
6ed2d95929
Update GMDS and GMGP definitions in GenericOutputBlackoilModule.cpp
Should GMDS be CO2 dissolved in water phase and GMGP be CO2 in gas phase (rather than the other way around)?
2024-04-17 12:31:10 +01:00
Tobias Meyer Andersen
ccd014cc1a remove some usage of this-> 2024-04-17 13:28:30 +02:00
Tobias Meyer Andersen
a649bef271 update GPU direct support check 2024-04-17 13:28:30 +02:00
Tobias Meyer Andersen
7235f34f0e Add classes handling correct MPI implementation
Make some changes to Georgs original code:
dynamically allocated arrays with std::vectors instead
Implement new class structure handling what
MPI communication implementation to use
create extra scopes to avoid reuse of index variable i

Update related tests:
Update test_cuowneroverlapcopy to account for new
class strucutre
Also remove line that invalidates the MPI tests for multiple processes
2024-04-17 13:28:30 +02:00
Georg Zitzlsberger
eb6f9dc1f9 Prototype implementation of CUDA aware MPI 2024-04-17 13:28:30 +02:00
Arne Morten Kvarving
7354bc6371 GroupEconomicLimitsChecker: template Scalar type 2024-04-17 11:21:34 +02:00
Arne Morten Kvarving
88bc65c201 GroupEconomicLimitsChecker: drop indent for namespace 2024-04-17 11:21:26 +02:00
Arne Morten Kvarving
137741e572 WellFilterCake: template Scalar type 2024-04-17 11:13:01 +02:00
Arne Morten Kvarving
15d75c5228 WGState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
67f1811234 GroupState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
be57843296 WellState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
58f334b264 ALQState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
ab0e696709 SingleWellState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
e46e52f3dc SegmentState: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
d350049876 PerfData: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
ea1f4f822b ConnFiltrateData: template Scalar type 2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
3b3fb6752c ConnFiltrateData: remove indent for namespace 2024-04-17 11:12:40 +02:00
Bård Skaflestad
456e149a64
Merge pull request #5290 from akva2/constraints_fix_bare_throw
BlackoilWellModelConstraints: fix throw of bare string
2024-04-17 11:06:25 +02:00
Bård Skaflestad
b847a2b532
Merge pull request #5289 from akva2/wellstate_direct_comm
WellState: remove template parameters for comm
2024-04-17 10:53:13 +02:00
Arne Morten Kvarving
a3f554e4fb fixed: don't throw a bare string
and use OPM_THROW
2024-04-17 10:38:40 +02:00
Arne Morten Kvarving
99f45ae916 BlackoilWellModelConstraints: use fmt 2024-04-17 10:38:40 +02:00
Arne Morten Kvarving
2886fe2fe9 BlackoilWellModelConstraints: break some long lines 2024-04-17 10:38:37 +02:00
Arne Morten Kvarving
a6cb9134ff WellState: remove template parameters for comm
use Parallel::Communication directly instead
2024-04-17 09:37:04 +02:00
Arne Morten Kvarving
7eba120662 avoid including MultisegmentWellContribution in WellContributions.hpp 2024-04-17 08:11:47 +02:00
Atgeirr Flø Rasmussen
d3b22323f1
Merge pull request #5284 from multitalentloes/fix_fast_amg_wrapper
Fix fast amg wrapper and generalize RebuildOnUpdatePreconditioner
2024-04-17 08:05:02 +02:00
Tobias Meyer Andersen
296f41ecc0 Make function that infers templates, avoid use of new 2024-04-16 15:39:17 +02:00
Arne Morten Kvarving
7311948b89 openCl preconditioners: make argument orders consistent 2024-04-16 09:39:56 +02:00
Arne Morten Kvarving
34e94256be Preconditioner: replace if nest with switch 2024-04-16 09:39:48 +02:00
Arne Morten Kvarving
cc5f362fdc changed: make PreconditionerType an enum class
this to avoid symbol clashes with the implementations.
while at it rename it to Type as Preconditioner::PreconditionerType is
redundant
2024-04-16 09:06:13 +02:00
Tobias Meyer Andersen
9e7b7b3e40 clang-format PreconditionerWithUpdate.hpp 2024-04-15 16:28:37 +02:00
Tobias Meyer Andersen
9ab15e3ff9 bugfix: make famg reconstruct on update 2024-04-15 16:24:43 +02:00
Tobias Meyer Andersen
0079a17889 re-enable DuneILU for multiprocess 2024-04-15 16:06:37 +02:00
Tobias Meyer Andersen
d97d7ba732 add some documentation 2024-04-15 15:41:58 +02:00
Tobias Meyer Andersen
e275c637f5 Proof Of Concept generic Preconditioner with update 2024-04-15 15:27:37 +02:00
Atgeirr Flø Rasmussen
4f53ea512b
Merge pull request #5028 from multitalentloes/update_prec_factory
Update prec factory
2024-04-15 14:09:58 +02:00
Arne Morten Kvarving
6b5cd88bee WellGroupHelpers: drop unnecessary template parameter
use Parallel::Communication type directly
2024-04-15 11:26:08 +02:00
Tobias Meyer Andersen
b45c6cebbe update variable names 2024-04-15 10:36:05 +02:00
Tobias Meyer Andersen
2815a8db86 update variable and template names 2024-04-15 08:32:18 +02:00
Arne Morten Kvarving
0aacefeeec adjust to Parameters::isSet change 2024-04-15 08:12:05 +02:00
Razvan Nane
cc1dfca9e0 add support for single thread copy 2024-04-12 20:17:38 +02:00
Bård Skaflestad
f71c652b0a
Merge pull request #5281 from daavid00/immCO2
Summary for immobile free-phase at saturations for which the nonwetting relative permeability equals zero
2024-04-12 17:06:21 +02:00
Tobias Meyer Andersen
2a7251efc5 change pointers to const references 2024-04-12 15:39:35 +02:00
David Landa Marban
9671792106 summary for immobile free-phase at saturations for which the nonwetting relative permeability equals zero 2024-04-12 15:31:22 +02:00
Bård Skaflestad
b1be391d4c
Merge pull request #5172 from totto82/gconprod7
Implement WELL as group limit action
2024-04-11 17:36:55 +02:00
Tobias Meyer Andersen
8177400602 clang-format PreconditionerFactory_impl 2024-04-11 15:09:09 +02:00
Tobias Meyer Andersen
3d9b3a3013 clang-format PreconditionerWIthUpdate 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
1685f928f7 add RebuildOnUpdate for single process preconditioners. Also refactor wrapPreconditioner to match type of wrapper 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
6cfe647c81 clean up and fix multiprocess RebuildOnUpdate wrapper 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
71d58afc0e Add a valid wrapper through OwningBlockPreconditioner that rebuiilds the preconditioner on updates. Still has excessive matrix copy and misses a wrapper function 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
6b73856fd9 update comments 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
df401e52b8 add jac smoother 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
6c0ee61d6f add ILUn smoother 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
fd6319fe38 add SSOR smoother 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
f6c539f819 add SOR smoother 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
b02e001ae3 add gs preconditioner for amg and kamg 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
030720f855 add dune ILU0 for multiprocess simulations 2024-04-11 15:07:17 +02:00
Tobias Meyer Andersen
8b5ab973e2 Add dune ILU when using only one process 2024-04-11 15:07:17 +02:00
Bård Skaflestad
ac9d6eaa34 Prepare for Including Region Level Quantities in Field Level UDQs
Meet the new UDQConfig::eval() API requirement by adding a matcher
factory for region-level summary vectors.
2024-04-08 09:04:22 +02:00
Bård Skaflestad
10d2f52cd2 Add Procedure for Calculating Basic FIP Region Statistics
This commit implements the parallel version of

    EclipseState::computeFipRegionStatistics()

which computes a FIPRegionStatistics object for the current run's
fluid-in-place regions.  The object construction uses an MPI-aware
reduction process to compute the maximum region IDs across all MPI
ranks.

While here, also unconditionally form the statistics object as part
of the EclWriter's constructor to ensure that all ranks participate
in the process.  The initial approach of constructing the object on
first use is not robust in parallel.  We may however wish to compute
these statistics only when needed.  If so, that will be the subject
of follow-up work.
2024-04-05 17:06:13 +02:00
Arne Morten Kvarving
0161d69660 adjust to removal of EWOMS_GET_PARAM 2024-04-05 14:02:28 +02:00
Arne Morten Kvarving
b8284fea9c adjust to Parameters::hideParam change 2024-04-05 12:56:38 +02:00
Arne Morten Kvarving
6fba1a95c9 adjust to removal of EWOMS_REGISTER_PARAM 2024-04-05 12:24:48 +02:00
Arne Morten Kvarving
fdab87d336
Merge pull request #5255 from BigDataAccelerate/fix_dep_rocm_ocl
Bug fix: remove dependencies for rocm & cuda on opencl to run block Jacobi ILU
2024-04-05 12:02:30 +02:00
Arne Morten Kvarving
21bc4c7f0d adjust to EWOMS_HIDE_PARAM macro removal 2024-04-04 08:18:19 +02:00
Bård Skaflestad
3334726871
Merge pull request #5270 from akva2/adjust_ewoms_param_is_set
adjust to EWOMS_PARAM_IS_SET macro removal
2024-04-03 21:47:52 +02:00
Arne Morten Kvarving
46c3402eba adjust to EWOMS_PARAM_IS_SET macro removal 2024-04-03 19:54:45 +02:00
Arne Morten Kvarving
b4d2189bd2 adjust to EWOMS_END_PARAM_REGISTRATION macro removal 2024-04-03 16:18:39 +02:00
Razvan Nane
b0157def17 enable multithreaded copy only when openmp found 2024-04-03 15:29:32 +02:00
Tor Harald Sandve
2210b523e4 Close worst-offending well based on ratio between violated and preferred phase 2024-04-03 09:16:39 +02:00
Tor Harald Sandve
920ad68782 Implement WELL as group limit action
And remove G as unsupported option in WTEST
2024-04-03 08:51:09 +02:00
Arne Morten Kvarving
ba96a94277 avoid derefing out-of-bounds if there are no alqs 2024-04-02 16:43:02 +02:00
Arne Morten Kvarving
cecedc1042 fixed: rate converter must be initialized early if WELLPI is enabled 2024-04-02 16:42:40 +02:00
Arne Morten Kvarving
ae60f0b640 BlackoilWellModel: header cleanup
add necessary headers, remove unused
2024-04-02 14:20:50 +02:00
Markus Blatt
1243148d38
Merge pull request #5264 from akva2/fix_oob_no_wells
fixed: out-of-bounds reference with no wells
2024-04-02 10:48:26 +02:00
Arne Morten Kvarving
c263ae9b66 fixed: out-of-bounds reference with no wells 2024-04-01 21:34:42 +02:00
Kai Bao
29358ee70b removing the including of FlowProblem in BlackoilWellModel 2024-03-27 13:12:55 +01:00
Bård Skaflestad
1799b6ee07 Switch to Using Declared Maximum Region IDs From Common
The declaredMaxRegionID() function is now available in OPM-Common.
2024-03-22 21:24:11 +01:00
Bård Skaflestad
785b96f6f3 Distribute SummaryConfig Objects With eclBroadcast
Suggested by [at]akva2.

While here, also switch to using type deduction instead of explicit
template arguments for the eclBroadcast overloads.
2024-03-22 16:53:51 +01:00
Bård Skaflestad
8e9cb4b249 Defer SummaryConfig Initialisation
In the current approach, the full list of summary vectors,
especially those that are defined at the region level, is not known
until we've processed all UDQ and/or ACTIONX definitions.  As a
quick solution to this, switch to using the 'SummaryConfig' object
that's defined in the EclipseIO container instead of the object that
gets constructed when reading the input files.

It is likely that we will have to rethink and refactor this
construction process later.
2024-03-22 16:53:51 +01:00
Bård Skaflestad
4ea4ec94d8
Merge pull request #5259 from blattms/fix-limit-nextstep
[bugfix] Use reasonable timestep if  NEXTSTEP in ACTIONX is used.
2024-03-22 16:49:54 +01:00
Markus Blatt
dc17b86865
Merge pull request #5261 from blattms/fix-libfmt-call
[bugfix] Correctly form debug message to avoid exceptions in libfmt.
2024-03-22 15:03:06 +01:00
Markus Blatt
98e11bf14e [bugfix] Use reasonable timestep if NEXTSTEP in ACTIONX is used.
The step size might still need to be smaller than suggested to not
simulate beyond the end of the current report step. To ensure this we
now use AdaptiveTimeSimulationTimer::provideTimeStepEstimate which
will limit it and also make sure that subsequent time steps will not
get to small either.
2024-03-22 14:25:09 +01:00
Markus Blatt
fee12696cb [bugfix] Correctly form debug message to avoid exceptions in libfmt. 2024-03-22 14:12:05 +01:00
Atgeirr Flø Rasmussen
1507529151
Merge pull request #5229 from akva2/wghelpers_simplify_comm
WellGroupHelpers: use type alias instead of template parameter for Comm
2024-03-21 11:16:14 +01:00
Antonella Ritorto
5e1a37e497 Simulation partially supported for CpGrid with LGRs 2024-03-20 08:48:09 +01:00
Bård Skaflestad
7056c81a7b Allow for Sparse Source-Location Subsets
If a well is nominally connected in inactive cells, i.e., if its
connections have not been filtered down to the active connections
only, then 'allIndices' may not be a permutation of

    0 .. allIndices.size()-1

Handle this case by sizing 'storageIndex_' according to the maximum
index value insted of 'allIndices.size()'.
2024-03-19 09:17:48 +01:00
Bård Skaflestad
4a87dcf5f3 Use In-place Construction of PerforationData Objects
This is (slightly) faster than construct + copy.
2024-03-19 09:16:23 +01:00
Razvan Nane
411a3978b6 OPT: overlap create jacMat with copy to GPU 2024-03-15 11:25:38 +01:00
Razvan Nane
0fcad4b0fc Bug fix: remove dep rocm & cuda on opencl for blockJacobi ILU 2024-03-13 16:47:55 +01:00
Arne Morten Kvarving
c5eb0816e6 fixed: we need to call loadRestartData on all processes
we need to read in group data even if there are no
local wells
2024-03-12 11:08:07 +01:00
Bård Skaflestad
2fcefbd743
Merge pull request #5226 from akva2/avoid_alu_poly
changed: put SupportsFaceTag in separate header
2024-03-11 12:35:26 +01:00
Arne Morten Kvarving
696f9cd875
Merge pull request #5228 from akva2/simplify_template_params
Simplify template params
2024-03-08 17:03:03 +01:00
Markus Blatt
0c87b3386a
Merge pull request #5159 from akva2/quell_rocsparse_warnings
Quell rocsparse warnings
2024-03-08 16:44:40 +01:00
Arne Morten Kvarving
958f33fbfc GenericProblem: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 16:23:49 +01:00
Arne Morten Kvarving
5972b3c88d MixingRateControls: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 16:23:47 +01:00
Arne Morten Kvarving
2c35cb9659 GenericOutputBlackoilModule: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 16:23:39 +01:00
Bård Skaflestad
6a43099511
Merge pull request #5249 from atgeirr/nldd-add-missing-convergence-metrics
Add missing convergence metrics to domain convergence report.
2024-03-08 15:39:16 +01:00
Arne Morten Kvarving
1f4b248564 WellInterfaceIndices: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
215d22730b MultisegmentWellSegments: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
58e8022bb1 MultisegmentWellEval: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
e2e6385918 MultisegmentWellPrimaryVariables: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
5affbf4bd5 StandardWellPrimaryVariables: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
9997cde07a StandardWellEval: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
2fb05a4996 StandardWellConnections: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
9ab6ab27a0 MultisegmentWellAssemble: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:53 +01:00
Arne Morten Kvarving
b2139d2cdf StandardWellAssemble: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 15:13:52 +01:00
Arne Morten Kvarving
3284ba80e8 StandardWell: rename ebosSimulator to simulator 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
32e1a86f4f OutputBlackoilModule: rename ebosResid to modelResid 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
acb066eac1 AdaptiveTimeStepping: rename ebosProblem to problem 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
638e5006e0 FlowGenericProblem: remove ebos banner 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
2a2a9f5de4 DamarisKeywords: correct paths in comments 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
52fb89b66e PyFluidState: rename ebos_simulator to simulator
and align ref/ptr with variable type
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
2a91fb4c2f remove unused ebos/eclnewtonmethod.hh 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
fb7c4f6fd2 move ebos/eclproblem.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
6f5d53b20b move ebos/eclgenericproblem.[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
15339fe02f move ebos/eclproblem_properties.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
7b49bcb09e rename EclBaseProblem to FlowBaseProblem 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
57905c1069 move ebos/ecltransmissibility[_impl].[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
9facaaf816 ebos/damariswriter: move to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
76ccaf45ef ebos/damaris_properties.hh: move to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
1362143e48 move ebos/eclgenericvanguard.[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
6949abbf0d move ebos/eclbasevanguard.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
9fe969378d move ebos/eclgenericcpgridvanguard.[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
04ed17ebd0 move ebos/eclcpgridvanguard.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
bc2dd1110e move ebos/eclfluxmodule.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
2d604e12a7 move ebos/eclequilinitializer.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
d717d96590 move ebos/eclthresholdpressure.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
f6475f8c1e move ebos/eclgenericthresholdpressure[_impl].[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
e6eac2039b move ebos/vtkecltracermodule.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
9d256bc233 move ebos/ecltracermodel.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00