Commit Graph

1189 Commits

Author SHA1 Message Date
Bård Skaflestad
a08d49d3a4
Merge pull request #5701 from akva2/fix_set_active_indices
fixed: set active indices in fieldprops
2024-10-31 08:53:43 +01:00
Bård Skaflestad
9e7c3b9254
Merge pull request #5687 from GitPaean/tyring_ecl_compositional
ecl style output for compositional simulation
2024-10-30 15:49:35 +01:00
Kai Bao
0edb5a462d checking compIdx or phaseIdx when adding entries to SolutionVector
std::vector is used instead of std::array. when compIdx is -1, the
origional code trigger array-bounds warning.
2024-10-30 15:32:39 +01:00
Kai Bao
c6201e9b6a addressing reviewing comments 2024-10-30 13:15:38 +01:00
Bård Skaflestad
70e8d25276 Make WELPI Infrastructure for ACTIONX Fully Private
This is in preparation of making the match set for ACTIONX more
general.  Having a fully private WELPI framework means we can change
the types more freely without having to rebuild all users of
ActionHandler.

While here, also add Doxygen-style documentation to the ActionHandler.
2024-10-30 12:48:02 +01:00
Kai Bao
56db6ad3fe cleaning unused headers and declarations in OutputCompositionalModule 2024-10-30 11:23:16 +01:00
Kai Bao
cd9009dc75 adding isCompositional_ variable to GenericOutputBlackoilModule
to indicate whether it is a compostional simulation.
2024-10-30 11:23:16 +01:00
Kai Bao
65e858c84c fixing all the warnings related 2024-10-30 11:23:16 +01:00
Kai Bao
51c534e6fb removing Damaris from FlowProblemComp 2024-10-30 11:23:16 +01:00
Kai Bao
def30fa131 recovering OutputBlackoilModule
there is not change needed for this file.
2024-10-30 11:23:16 +01:00
Kai Bao
e4d1311589 adding thresholdPressure() interface to FlowProblemComp
although we do not support it yet.
2024-10-30 11:23:16 +01:00
Kai Bao
3635132d95 making OutputModule template parameter of EclWriter 2024-10-30 11:23:16 +01:00
Kai Bao
197282ccfc cleaing up EclWriter related and DamarisWriter.hpp 2024-10-30 11:23:16 +01:00
Kai Bao
0153da2009 cleaning up OutputCompositionalModule 2024-10-30 11:23:16 +01:00
Kai Bao
a8d2c5bc2c removing GenericOutputCompositionalModule
we do the compostional related in GenericOutputBlackoilModule to minimize the code change.
there needs to be refatoring for GenericOutputBlackoilModule to split
the black oil and compostional related.
2024-10-30 11:22:04 +01:00
Kai Bao
ad587e77ad output XMF ,YMF and ZMF in UNRST file.
currently, it looks the value for ZMF is based on XMF and YMF.
ideally, the ZMF is part of the primary varialbes, it does not need to
be calculated based on XMF and YMF.

there is some refactoring that we can do here.
2024-10-30 11:15:38 +01:00
Kai Bao
4ba1cd53d7 add EclWriter to FlowProblemComp
so the FlowProblemComp can output ecl style output.
it duplicates the OutputBlackoilModule and GenericOutputBlackoilModule
for compositional related output for now.
2024-10-30 11:14:18 +01:00
Arne Morten Kvarving
942d63c7b1 fixed: set active indices in fieldprops 2024-10-30 10:22:17 +01:00
Bård Skaflestad
e8b4cfb7ef Add Logging for Python Actions
Similar to the logging facilities we have for the regular ACTIONX
keyword, although without an explicit list of "matching" wells.
2024-10-29 21:21:27 +01:00
Arne Morten Kvarving
58365df3ff add missing ReservoirCouplingInfo.hpp includes
now that Schedule(State) properly serializes the member
2024-10-28 15:51:14 +01:00
Bård Skaflestad
d8c6ebb509
Merge pull request #5691 from GitPaean/enableThresholdPressure_false
enableThresholdPressure_ initialized to be false
2024-10-25 12:45:44 +02:00
Markus Blatt
4a60c167fb
Merge pull request #5686 from vkip/bugfix_inactive_rank0
Bugfixes #5609
2024-10-25 12:00:46 +02:00
Kai Bao
6742679e48 enableThresholdPressure_ initialized to be false
in GenericThresholdPressure
2024-10-25 11:58:27 +02:00
Bård Skaflestad
7f4d787522 Get WellMatcher Object Directly From Schedule
There's no need for us to invoke the WellMatcher constructor when
the Schedule object already knows how to do that.
2024-10-25 10:55:32 +02:00
Vegard Kippe
7f6c7aec01 Info message, cmdline option and avoid splitting wells on restart (for now) 2024-10-22 20:29:24 +02:00
Vegard Kippe
729d3c2a59 Use bool, not int, to also add inactive wells to rank 0... 2024-10-21 15:30:50 +02:00
Lisa Julia Nebel
5032a37283
Merge pull request #5649 from aritorto/levelsCartMappALU
Separate non-DUNE methods in LevelCartesianIndexMapper<AluGrid>
2024-10-21 15:01:22 +02:00
Antonella Ritorto
b875ba8122 LevelCartesianIndexMapper for AluGrid 2024-10-21 11:25:27 +02:00
Kai Bao
3d04a97ff5 removing invalidateLocalData() in updateSolution() in BlackoilModel 2024-10-21 10:42:39 +02:00
Kai Bao
2d082cae42 in flowexp_blackoil, invalidate output data after solution is updated 2024-10-21 10:34:00 +02:00
Markus Blatt
afcfedb9f1
Merge pull request #5609 from vkip/use_only_active_wells_in_partitioning
In partitioning, only account for wells that will be active at some point in time
2024-10-21 07:35:28 +02:00
Arne Morten Kvarving
139088398c
Merge pull request #5682 from akva2/lambda_janitoring
Some lambda fixes
2024-10-17 12:54:55 +02:00
Arne Morten Kvarving
0af94eef27 remove unused capture 2024-10-17 11:32:04 +02:00
Bård Skaflestad
0d4b7ece0a
Merge pull request #5668 from totto82/fixGWrestart
FIX gas-water restart
2024-10-17 09:18:31 +02:00
Tor Harald Sandve
a45ad36c70 Add rsw to restart arrays and remove temperature 2024-10-17 08:53:17 +02:00
Vegard Kippe
9d9726920b Post-review update - reducing global communication and simplifying 2024-10-16 22:24:01 +02:00
Vegard Kippe
4bc904d941 Fix RFT output for non-root connections.. 2024-10-16 22:24:01 +02:00
Vegard Kippe
f7ac4f8a3c Avoid initializing inactive multi-segment wells + avoid direct MPI call 2024-10-16 22:24:01 +02:00
Vegard Kippe
5191271883 Add inactive wells to all partitions with connections 2024-10-16 22:24:01 +02:00
Vegard Kippe
cd26ce5568 Add inactive wells to rank 0 for output 2024-10-16 22:24:00 +02:00
Vegard Kippe
7ee218b1e2 In partitioning, only account for wells that will be active at some point in the simulation. 2024-10-16 22:24:00 +02:00
Bård Skaflestad
2aac0d6cf5 Enable New Saturation Function Consistency Checks
The new parameter CheckSatfuncConsistency, command line option
--check-satfunc-consistency, allows users to opt into running the
checks.  The option currently defaults to 'false' to reflect the
somewhat experimental nature of the new facility.

The new parameter --num-satfunc-consistency-sample-points allows the
user to select the maximum number of reported failures for each
individual consistency check.  By default, the simulator will report
at most five failures for each check.

We check the unscaled curves if the run does not activate the
end-point scaling option and the scaled curves otherwise.  At
present we're limited to reversible and non-directional saturation
functions for the drainage process, but those restrictions will be
lifted in due time.
2024-10-16 15:03:07 +02:00
Bård Skaflestad
92efa31c31 Tidy Up FlowProblem* Classes
In preparation of enabling the new saturation function consistency
checks.
2024-10-16 12:18:33 +02:00
Tor Harald Sandve
438e40b143 FIX gas-water restart 2024-10-15 10:34:32 +02:00
Bård Skaflestad
65654c8e01 Use Rank's Local Cells for Tracer Concentration Restart
The 'globalIdx' generated by localIdxToGlobalIdx() is in the range
zero to number of active cells in global model, not zero to number
of active cells on rank.  Using 'globalIdx' as an argument to
set*TracerConcentration() therefore ends up indexing out-of-bounds
for the internal arrays in the tracer model object in parallel
restarted simulation runs.

The problem has been present since the restart support for tracers
was added in commit e9c45f4ca (PR #3708).

This commit switches to using the 'elemIdx' instead, as we already
do when calling the output module's setRestart() member function.
Following this, we are able to restart the standard Norne benchmark
case (NORNE_ATW2013.DATA) in parallel.  The numerical results for
the tracer concentrations are, however, a little questionable and
will warrant further investigation.  Nevertheless, the tracer values
are now the same in a parallel restarted run as in a sequential
restarted run.
2024-10-11 18:05:48 +02:00
Atgeirr Flø Rasmussen
a7efc0091d
Merge pull request #5341 from jakobtorben/NLDD_remove_need_for_addWellContrib
Remove the need for add well contributions to matrix for NLDD
2024-10-10 16:23:52 +02:00
jakobtorben
3ea5c5820e Add well operator for NLDD domains 2024-10-10 15:12:48 +02:00
Bård Skaflestad
71079ce737 Initialise Fluid-in-Place Balance Sheets at Restart
Commit 6ba9dc086 (PR #5626) moved the balance sheet report output
logic ahead of the timestep.  As a consequence, the output module's
'inplace_' and 'initialInplace_' data members must be fully
initialised the first time we call 'writeReports()' if the run
requests balance sheet output.

This commit initialises those objects by calling calc_inplace() from
EclWriter<>::endRestart().  Doing so restores the behaviour from
before PR #5626.  Note, however, that using this value for
'initialInplace_' is incorrect as the simulator then, in a restarted
run, will calculate recovery factors based on the fluid distribution
at the restart time instead of at the start of the base run.
Nevertheless this is, as alluded to earlier, how the simulator has
always performed.  The behaviour is just a little more explicit now.
2024-10-10 12:47:13 +02:00
Bård Skaflestad
9344423d04 Varnish EclWriter::beginRestart() Implementation
In particular,

  - Split some long lines
  - Mark objects 'const' where possible
  - Reduce scope of objects
  - Add braces to single statement control structures
  - Prefer pre-increment
  - Prefer type deduction for induction variables
2024-10-10 11:35:21 +02:00
Vegard Kippe
ac5de96ad4 Add dampening to the injectivity multipliers (WINJMULT) 2024-10-08 15:49:10 +02:00