Atgeirr Flø Rasmussen
92c9d88c1b
Merge pull request #5743 from vkip/thpres_restart
...
Restore threshold pressures from restart
2024-11-27 15:16:38 +01:00
Tor Harald Sandve
e043dc6e50
Change default max iterations for network
2024-11-27 14:21:05 +01:00
Lisa Julia Nebel
6bdb80126f
Add parameter enableDistributedWells to the well state an when set to true, do not throw when initalizing distributed multi-segment wells in WellState.cpp
2024-11-22 15:16:00 +01:00
Lisa Julia Nebel
9f4fdd09fa
Throw an error if the status "lastStepFailed" in prepareStep of BlackoilModel is not the same across all processes
2024-11-21 15:01:46 +01:00
Tor Harald Sandve
71614ea5b0
Add parameter --nupcol_group_rate_tolerance to be able to set the relative tolerance. Default is 0.001
2024-11-20 17:46:31 +01:00
Vegard Kippe
1c22d18771
Restore threshold pressures from restart
2024-11-18 12:59:48 +01:00
Bård Skaflestad
d199977d75
Chase API Update of Action::Result
...
The type no longer uses operator overloading and the matching entity
back-end has been revised to no longer expose a vector of strings
for the well names directly.
2024-11-13 12:23:52 +01:00
Arne Morten Kvarving
8197b6083a
ValidationFunctions: some cleanup
...
- introduce a type alias for the std::function type
- make implementation of specialValidations() private
- make validateBRINE private
2024-11-12 16:20:32 +01:00
Arne Morten Kvarving
91aabf6a92
Merge pull request #5706 from BigDataAccelerate/rename-bda-to-gpu
...
Remove bda naming from project
2024-11-11 16:26:21 +01:00
Razvan Nane
23e24a8cca
Rename ISTLSolverGpu to ISTLSolverGpuBridge
2024-11-11 15:02:01 +01:00
Arne Morten Kvarving
d1e416cfe6
fixed: fmt::join is in ranges.h using {{fmt11}}
2024-11-11 12:04:23 +01:00
Bård Skaflestad
4739821cb4
Don't Pass Action::Result By Value Into Add_Run()
...
This is no longer needed so we can go back to using 'const' objects.
2024-11-07 12:15:41 +01:00
Bård Skaflestad
c8366e96ac
Merge pull request #5716 from akva2/c++20_stuff
...
Quell c++-20 warnings
2024-11-06 11:17:44 +01:00
Arne Morten Kvarving
d9a3dd6f77
add casts to avoid comparison to / arithmetics with enums
2024-11-06 10:38:50 +01:00
Bård Skaflestad
ef434a9b59
Chase API Update of UDQConfig's Evaluation Functions
...
The functions no longer use the 'episeodeIdx' or Schedule
parameters. Update callers accordingly.
While here, split some long lines and remove unneeded local objects.
2024-11-05 18:18:43 +01:00
Bård Skaflestad
2546d2b181
Merge pull request #5713 from akva2/fmt_fix_runtime_formats
...
fixed: use constexpr formats and/or mark format strings runtime
2024-11-05 15:59:40 +01:00
Arne Morten Kvarving
ca6a5521a4
fixed: use constexpr formats and/or mark format strings runtime
...
fmt wants to do compile time validation of format strings under c++-20.
mark formatting strings constexpr where possible, and mark formats
runtime to disable validation where not possible.
2024-11-05 15:03:17 +01:00
Arne Morten Kvarving
72ac61a0b7
quell unused private member warning
2024-11-05 14:58:06 +01:00
Razvan Nane
baf94f76d2
Rename bda to gpu for classes
2024-11-04 12:31:34 +01:00
Bård Skaflestad
d155d4b76a
Simplify Logic for Exchanging PI/II Values in ACTIONX/WELPI
...
This commit switches to using the new guarantees provided by
ActionX::wellpi_wells (PR OPM/opm-common#4296 ), namely that the well
names are returned in sorted order on all ranks, to simplify how we
exchange the PI/II values. In particular, given this guarantee, we
can calculate the maximum values across all ranks because zero
values correspond to missing entries and non-zero values correspond
to known entries.
2024-11-01 09:10:39 +01:00
Kjetil Olsen Lye
e81cf62e79
Merge pull request #5611 from multitalentloes/print_gpu_info_on_startup
...
Print gpus used on simulator startup
2024-10-31 21:29:08 +01:00
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
Tobias Meyer Andersen
798f7d5426
Print GPU used on every rank
2024-10-30 11:03:29 +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
Vegard Kippe
81de304642
Skip empty positional arguments
2024-10-16 13:32:11 +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
Bård Skaflestad
6a7efcbcaa
Merge pull request #5645 from kjetilly/flowexp_components
...
Support for 2 to 7 components in flowexp_comp
2024-10-08 09:25:08 +02:00
jakobtorben
58a8d5ee41
Map global index to local subdomain index in well operator
2024-10-07 09:13:00 +02:00
Markus Blatt
ed0e37e31d
Merge pull request #5577 from blattms/feature/full-pinch-option-4-all
...
Correctly treat transmissibilities for PINCH option(4) ALL.
2024-10-04 16:45:46 +02:00
Arne Morten Kvarving
55c42d7b83
one translation unit per instance
2024-10-04 14:45:34 +02:00
Bård Skaflestad
0b94f11b5c
Merge pull request #5625 from GitPaean/zmf_supporet
...
supporting ZMF explicit solution
2024-10-04 09:16:25 +02:00
Atgeirr Flø Rasmussen
9654215223
Merge pull request #5590 from jakobtorben/convergence_monitors
...
Convergence monitors
2024-10-04 08:21:03 +02:00
jakobtorben
b830208573
PR review changes
2024-10-03 18:05:06 +02:00
Kai Bao
29deffda26
addressing reviewing comments for PR OPM/opm-simulators#5625
2024-10-03 16:06:23 +02:00
Stein Krogstad
5713c68992
Add option to check group constraints during local well solve - set default to true
2024-10-03 11:36:17 +02:00
jakobtorben
ff20c1f809
Fix calculation of distance
2024-10-03 08:56:39 +02:00
jakobtorben
6ff83e19ae
Write penalty count to infoiter file
2024-10-03 08:56:39 +02:00
jakobtorben
71a64fbd13
Ensure correct propagation of failed report
2024-10-03 08:56:39 +02:00
jakobtorben
6d53daaa42
Store report of failed step before cutting from convergence monitoring
2024-10-03 08:56:39 +02:00
jakobtorben
eef0ba50bf
Change non-convergence monitor to checking if number of non-converged has increased
2024-10-03 08:56:39 +02:00
jakobtorben
cda47a6387
Register convergence monitoring parameters
2024-10-03 08:56:39 +02:00
jakobtorben
5f17c9de6a
Cut timestep if penlaty exceeds limit
2024-10-03 08:56:39 +02:00
jakobtorben
d476a328de
Add distance decay penalty
2024-10-03 08:56:39 +02:00
jakobtorben
3e6f9c52bb
Reset the total penalty card after each nonlinear iteration
2024-10-03 08:56:39 +02:00
jakobtorben
e1e577fab1
Add penalty for unconverged well
2024-10-03 08:56:39 +02:00
jakobtorben
861cfeec49
Add penalty card for increase in convergence metrics
2024-10-03 08:56:39 +02:00
Kai Bao
562da9ef70
support ZMF explicit initialization
2024-10-02 22:08:19 +02:00
Kai Bao
69c6294978
set newton tolerance to be 1.e-7 for compositional running
2024-10-01 15:54:25 +02:00
Bård Skaflestad
919f30029f
Merge pull request #5635 from akva2/dont_store_sched_deck
...
changed: don't store schedule keywords unless required in simulators
2024-10-01 13:12:21 +02:00
Markus Blatt
e743f2aa1e
Skip bogus warning about missing cells for PINCH NNCs
...
Cells are only missing if both are in the ghost overlap layer.
In this case we do not have a connection here to keep the matrix
more sparse.
2024-10-01 11:15:11 +02:00
Markus Blatt
9e31831917
[Cleanup] Adapt to changed return values from PINCH processing.
2024-10-01 11:15:11 +02:00
Markus Blatt
4b3808fa93
[Refactor] Adapt to PINCH NNC separated from the normal ones.
...
This is also a preparation for correct MULTZ processing.
2024-10-01 11:15:11 +02:00
Markus Blatt
a56526607c
Remove unneeded parameter from applyAllZMultipliers_
2024-10-01 11:15:11 +02:00
Markus Blatt
e816ae4df3
Correctly treat transmissibilities for PINCH option(4) ALL.
...
In that case processEclipseFormat will create NNCs over the pinched
out cells with correct transmissibilities. Those NNCs are marked as
being created in PINCH and used to overwrite calculated
transmissibilties for the horizontal intersections (transmissibilities
of normal NNCs are usually added).
Note that the trnasmissibilities (without the multipliers) do not
change later. Only the multipliers can change them in the schedule and
that will still happen.
2024-10-01 11:15:11 +02:00
Arne Morten Kvarving
2353ba56a6
changed: don't store schedule keywords unless required in simulators
...
in the python simulator we cannot make this decision up front
since the schedule can be modified from python code so we have
to do the safe thing
2024-09-27 11:24:20 +02:00
Elyes Ahmed
265c7b8520
cleanup and removing wrong instructions
2024-09-26 10:27:13 +02:00
Elyes Ahmed
6c2e957df0
add changes to fix the order
...
enabling reordering as default
2024-09-25 10:26:02 +02:00
Bård Skaflestad
02555ac504
Merge pull request #5626 from vkip/rptsched_wells
...
Support RPTSCHED WELLS=N
2024-09-25 09:27:58 +02:00
Vegard Kippe
2c2b0bc930
Use the correct rstep for well reports
2024-09-24 16:27:18 +02:00
Bård Skaflestad
a38704ecb0
Implement 'RFIP' and 'SFIP' Mnemonics For RPTRST
...
The 'FIP' mnemonic continues to be an alias for 'SFIP' in the
current implementation, and the output layer will create the 'SFIP'
arrays as copies of 'FIP' if passed only the 'FIP' arrays.
To this end, make 'outputFipRestart_' into a structure that tracks
which of the *FIP mnemonics have been requested, and insert the
pertinent solution arrays into the data::Solution object when
needed.
2024-09-24 13:38:56 +02:00
Bård Skaflestad
096e0e11c9
Initialise Output Module's Boolean Flags
...
While here, also insert a few blank lines in the copyright statement
to make it more in line with the rest of opm-simulators.
2024-09-24 13:38:56 +02:00
Vegard Kippe
5745f92b08
Avoid unused variable warning
2024-09-24 13:00:34 +02:00
Vegard Kippe
6ba9dc086c
Support RPTSCHED WELLS=N
2024-09-24 13:00:34 +02:00
Kai Bao
68503eb9b2
xmfData to ymfData, typo correction
2024-09-23 10:17:18 +02:00
Arne Morten Kvarving
048ae50255
add missing overrides
2024-09-17 07:52:10 +02:00
Arne Morten Kvarving
ea8ee36f51
FlowProblem: add virtual dtor
2024-09-17 07:51:56 +02:00
Bård Skaflestad
32886f6cb4
Merge pull request #5612 from akva2/more_tus
...
Split out vtk module parameters to separate translation units
2024-09-16 15:47:30 +02:00
Arne Morten Kvarving
1b19fa02f4
newtonmethodparameters.hh: rename to newtonmethodparams.hpp
2024-09-16 15:17:50 +02:00
Arne Morten Kvarving
e093101d1c
vtktemperaturemodule.hh: rename to vtktemperaturemodule.hpp
2024-09-16 15:17:50 +02:00
Arne Morten Kvarving
be4026ecce
vtkprimaryvarsmodule.hh: rename to vtkprimaryvarsmodule.hpp
2024-09-16 15:17:50 +02:00
Arne Morten Kvarving
a895678c30
vtkmultiphasemodule.hh: rename to vtkmultiphasemodule.hpp
2024-09-16 15:17:50 +02:00
Arne Morten Kvarving
6ab0fbe6c2
vtkdiffusionmodule.hh: rename to vtkdiffusionmodule.hpp
2024-09-16 15:17:50 +02:00
Arne Morten Kvarving
c7c15fbe23
vtkcompositionmodule.hh: rename to vtkcompositionmodule.hpp
2024-09-16 15:17:50 +02:00
Arne Morten Kvarving
6a1b33c793
vtkblackoilmodule.hh: rename to vtkblackoilmodule.hpp
2024-09-16 15:17:50 +02:00
Vegard Kippe
18a8b5bb90
Add energy balance tolerances + use standard tolerances as defaults for now
2024-09-16 14:39:33 +02:00
Vegard Kippe
33b72a9722
Rebased to current master. TODO: pvSplit with energy
2024-09-16 14:39:33 +02:00
Arne Morten Kvarving
6d8b5b204b
fixed: make sure we have valid indices in readInitialCondition_
...
quells warnings building flowexp_comp
2024-09-12 10:56:44 +02:00
Kai Bao
2c75adf165
adding a compositional simulator
...
flowexp_comp
2024-09-11 14:58:33 +02:00
Kai Bao
85513754bc
splitting Blackoil related to FlowProblemBlackoil
...
so FlowProblem can be used for compositional or other setting
2024-09-11 14:58:14 +02:00
Arne Morten Kvarving
2a9d81227b
changed: subclass Main for python
...
move the initFlowBlackoil method into it
in particular we then avoid the FlowMainType type alias
in Main.hpp
2024-09-09 14:28:20 +02:00
Arne Morten Kvarving
fc96e9da75
Main: mark some members protected
...
to enable subclassing
2024-09-09 14:28:11 +02:00
Arne Morten Kvarving
4967323c29
Parameters::printValues: drop default parameter for stream
2024-09-05 10:08:09 +02:00
Arne Morten Kvarving
3161b4f547
ParameterSystem: add function to query if registration is open
2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
05f01bf819
parametersystem.hh: rename to .hpp
2024-09-05 10:07:40 +02:00
Arne Morten Kvarving
2bdab9e518
parametersystem: pass add callback for adding keys to positional parameter handler
...
this way the backing store for the parameters can be an implementation
detail of the parameter system
2024-09-05 10:07:40 +02:00
Bård Skaflestad
329ad50e59
Don't Count Cells Unless Needed
...
If the user chooses a specific number of NLDD domains, there is no
need to compute the default number of domains based on a specific
target number of cells per domain. Defer the, potentially costly,
calculation to when we know we need it.
While here, also split/rejoin a couple of long lines.
2024-09-05 09:45:16 +02:00
Arne Morten Kvarving
d35d80427e
tasklets.hh: rename to tasklets.hpp
2024-09-04 12:06:21 +02:00
Arne Morten Kvarving
e7a9c4cd21
threadmanager: remove unused typetag template parameter
...
and move implementation to a translation unit
2024-09-04 12:06:21 +02:00
Arne Morten Kvarving
55a0a6da54
blackoilsolventparams: introduce translation unit
...
move code for loading parameters from eclipse state into it
2024-09-04 11:17:40 +02:00
Arne Morten Kvarving
3aed1aa7f9
blackoilpolymerparams: introduce translation unit
...
move code for loading parameters from eclipse state into it
2024-09-04 11:17:40 +02:00
Arne Morten Kvarving
5a567de3e2
blackoilmicpparams: introduce translation unit
...
move code for loading parameters from eclipse state into it
2024-09-04 09:17:26 +02:00
Arne Morten Kvarving
f6d3893093
blackoilfoamparams: introduce translation unit
...
move code for loading parameters from eclipse state into it
2024-09-04 09:13:02 +02:00
Arne Morten Kvarving
a04d9fdd00
blackoilextboparams: introduce translation unit
...
move code for loading parameters from eclipse state into it
2024-09-04 09:08:12 +02:00
Arne Morten Kvarving
a51e13c244
blackoilbrineparams: introduce translation unit
...
move code for loading parameters from eclipse state into it
2024-09-04 09:02:17 +02:00
Bård Skaflestad
a73cb6ee93
Fix DRVDT Initialisation Conditional
...
It does not make sense to pass
episodeIdx && maxDRv_.empty()
as an argument to drvdtActive().
2024-08-30 15:16:46 +02:00
Atgeirr Flø Rasmussen
58ce7cbc7c
Merge pull request #5556 from akva2/float_support5
...
Float support in simulators: Batch 5
2024-08-30 15:06:35 +02:00
Atgeirr Flø Rasmussen
9dd54fb11a
Avoid capturing structured bindings.
...
This is an error before C++20, and clang refuses it.
2024-08-30 13:17:07 +02:00
Kai Bao
f47d00c9d7
Merge pull request #5236 from hnil/no_early_exit_zero_flux
...
Avoid deleting derivative i.e. getting "wrong" matrix in case of zero…
2024-08-29 14:46:09 +02:00
Vegard Kippe
eb869f211f
Avoid time step dependent jump in RS after restart
2024-08-28 16:28:51 +02:00
Vegard Kippe
0b6dd93903
Avoid negative time step size after restart (trouble for DRSDT init)
2024-08-28 15:04:15 +02:00
Vegard Kippe
0485bfb47f
Set correct episode before initial call to invalidateAndUpdateIntensiveQuantities
2024-08-28 15:04:15 +02:00
Vegard Kippe
8f45cbe4c4
Properly initialize mixing controls after restart.
2024-08-28 15:04:15 +02:00
Vegard Kippe
cc08df226e
Update after merging #5527
2024-08-28 15:04:15 +02:00
Bård Skaflestad
9dca8256f3
Split Request Writing Into Stages
...
This commit introduces helper functions for each individual part of
a convergence report record in the INFOITER file. In particular, we
create helpers for
- Time related columns (report step, time step, time &c)
- CNV pore-volume histogram columns
- Reservoir convergence metrics (CNV and MB values per phase)
- Well convergence metrics
This makes the body of the main loop in writeConvergenceRequest()
slightly easier to read and means that we can apply some additional
logic to the CNV pore-volume histograms if the number of values does
not match the expected 3 per type. In that case we output sentinel
values (e.g., NaN and -1) to signify that the corresponding pieces
of information are unavailable.
2024-08-27 10:50:06 +02:00
Bård Skaflestad
68cc5d917e
Output CNV Histogram to INFOITER File
...
This commit tracks the number of cells and their associate fraction
of the model's "eligible" pore volume (total pore volume in
numerical aquifers subtracted from the model's total pore volume) in
three distinct categories as a function of the non-linear iteration
number:
- 0: MAX_p { CNV_p } <= strict CNV tolerance
- 1: MAX_p { CNV_p } \in (strict, relaxed]
- 2: MAX_p { CNV_p } > relaxed CNV tolerance
We then output these cell counts and pore volume fractions as new
items in the INFOITER file to enable more targeted analysis of the
non-linear convergence behaviour.
To this end, introduce a type alias CnvPvSplit in the
ConvergenceReport and aggregate these across the MPI ranks before we
collect them in the ConvergenceReport objects.
While here, also reduce the amount of repeated logic in
gatherConvergenceReport.cpp through a few local lambdas.
2024-08-27 10:50:06 +02:00
Kjetil Olsen Lye
f97389d1b5
Merge pull request #5554 from multitalentloes/refactor_cuistl
...
refactor cuistl to gpuistl
2024-08-26 09:55:13 +02:00
Markus Blatt
7ebb6e7034
Merge pull request #5547 from lisajulia/feature/action-parsing-strictness
...
Add action-parsing-strictness command line parameter
2024-08-26 09:06:25 +02:00
Arne Morten Kvarving
b5bd290887
BlackoilModel: use appropriate Scalar type
2024-08-23 11:15:03 +02:00
Arne Morten Kvarving
fda7298374
FlowGenericVanguard: optionally instantiate for float
2024-08-23 11:15:03 +02:00
Bård Skaflestad
3dbeed2199
Merge pull request #5550 from akva2/float_support3
...
Float support in simulators: Batch 3
2024-08-23 10:29:14 +02:00
Tobias Meyer Andersen
85a9ad2b61
refactor cuistl folder names
2024-08-22 15:32:21 +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
Tobias Meyer Andersen
3f4ae4ddf4
refactor cuistl namespace
2024-08-22 13:52:50 +02:00
hnil
ec11bbaac3
Avoid deleting derivative i.e. getting "wrong" matrix in case of zero flux
2024-08-22 11:47:14 +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
Arne Morten Kvarving
05d37bfbf6
InitStateEquil: optionally instantiate for float
2024-08-21 09:45:11 +02:00
Arne Morten Kvarving
b16fd2f724
EquilibrationHelpers: optionally instantiate for float
2024-08-21 09:43:25 +02:00
Arne Morten Kvarving
bff3dae230
GenericTracerModel: optionally instantiate for float
2024-08-21 09:41:56 +02:00
Arne Morten Kvarving
d28b751742
BlackoilModelParameters: optionally instantiate for float
2024-08-21 09:23:31 +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
Arne Morten Kvarving
d762f2b29c
ActionHandler: optionally instantiate for float
2024-08-20 12:31:10 +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
Lisa Julia Nebel
d02f84afb7
Add action-parsing-strictness
2024-08-20 10:50:56 +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
Arne Morten Kvarving
352beaf2ae
FlowUtils: optionally instantiate for float
2024-08-19 13:19:39 +02:00
Arne Morten Kvarving
e0f9fefbc7
FlowProblemParameters: optionally instantiate for float
2024-08-19 13:18:03 +02:00
Arne Morten Kvarving
122aeba4d3
RSTConv: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
e0deff8b1e
Transmissibility: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
174b73ebd1
GenericThresholdPressure: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
c29d60640c
GenericThresholdPressure: convert data to appropriate Scalar
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
1113746b7d
FlowGenericProblem: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
6ad616bd98
FlowGenericProblem: convert data to appropriate Scalar type
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
ae38896b1c
MixingRateControls: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
5a935ccfb5
SolutionContainers: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
58a930507a
LogOutputHelper: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Arne Morten Kvarving
e267c377e6
GenericCpGridVanguard: optionally instantiate for float
2024-08-19 13:09:41 +02:00
Tor Harald Sandve
8fe55dba4e
Remove check for active wells for drift compensation
2024-08-19 12:37:22 +02:00
Arne Morten Kvarving
5cf468e48a
fixed: do not try to hide parameters that are not registered without MPI
2024-08-19 09:14:10 +02:00
Kai Bao
6f2073908c
relocating mixControls_ form FlowGenericProblem to FlowProblem
...
so FlowGenericProblem can be used for non-blackoil setting
2024-08-17 00:41:28 +02:00
Arne Morten Kvarving
d15cdea9ec
FlowProblem: move parameter registration to FlowProblemParameters.cpp
2024-08-16 17:15:53 +02:00
Arne Morten Kvarving
19c77bdaa1
FlowBaseVanguard: move parameter registration to FlowGenericVanguard
2024-08-16 17:15:53 +02:00
Arne Morten Kvarving
9a9d4e0974
FlowMain: move hiding of parameters to utility function in FlowUtils
2024-08-16 17:15:53 +02:00
Arne Morten Kvarving
b902f83fa6
BlackoilModelParameters: introduce translation unit
2024-08-16 17:15:53 +02:00
Arne Morten Kvarving
a0ec0fca72
NonlinearSolver: move parameter registration to translation unit
2024-08-16 16:59:51 +02:00
Arne Morten Kvarving
f6cc23aa4e
DamarisParameters: introduce translation unit
2024-08-16 16:59:51 +02:00
Arne Morten Kvarving
3751ca6be4
move FlowLinearSolver parameters to TypeTag-free parameter system
2024-08-16 13:23:16 +02:00
Arne Morten Kvarving
280704e2e0
move AdaptiveTimeStepping parameters to TypeTag-free parameter system
2024-08-16 13:22:17 +02:00
Arne Morten Kvarving
e2b8715b42
move EclTimeStepping parameters to TypeTag-free parameter system
2024-08-16 13:22:17 +02:00
Arne Morten Kvarving
707afc79eb
move SimulatorFullyImplicitBlackoil parameters to TypeTag-free parameter system
2024-08-16 13:22:17 +02:00
Arne Morten Kvarving
8111d2eaa0
move EclWriter parameters to TypeTag-free parameter system
2024-08-16 13:22:15 +02:00
Arne Morten Kvarving
414f313d2a
move FlowProblem parameters to TypeTag-free parameter system
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
fdcc9a0fb2
fixed: EnableDebuggingChecks is a property, not a parameter
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
9141f2c2d5
move Damaris parameters to TypeTag-free parameter system
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
94c30a74b8
move NonLinearSolver parameters to TypeTag-free parameter system
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
dd1bc8d75b
move FlowBaseVanguard parameters to TypeTag-free parameter system
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
bfe6f47d58
move FlowMain parameters to TypeTag-free parameter system
2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
3716ee664d
move BlackoilModel parameters to TypeTag-free parameter system
2024-08-16 13:20:04 +02:00
Arne Morten Kvarving
febb359951
move VtkTracerModule parameters to TypeTag-free parameter system
2024-08-16 13:17:56 +02:00
Arne Morten Kvarving
aab40a32e2
move EnableTerminalOutput parameter to TypeTag-free parameter system
2024-08-16 13:17:56 +02:00
Tor Harald Sandve
0371cd5342
Change defaults
...
Use implicit IPR as default
Allow for switching of control during local well solves as default
2024-08-16 10:16:04 +02:00
Tor Harald Sandve
d7331ca3ae
use -1 as defult min-strict-iter
2024-08-16 10:16:04 +02:00
Tor Harald Sandve
36a58445b4
use 10-7 as default mass balance tolerance
2024-08-16 10:16:04 +02:00
Bård Skaflestad
9c1239a63f
Merge pull request #5529 from akva2/typetag_free_params2
...
Move parameters to typetag free parameter system: Batch 3
2024-08-14 14:44:27 +02:00
Bård Skaflestad
366a9de26f
Merge pull request #5530 from totto82/renameMIMtoMTR
...
rename GMIM to GMTR
2024-08-14 13:57:43 +02:00
Markus Blatt
ac232197dc
Merge pull request #5510 from lisajulia/fix/COMPDAT-NLDD-parallel
...
Fix/compdat nldd parallel
2024-08-14 11:18:28 +02:00
Tor Harald Sandve
42500f41bb
rename GMIM to GMTR
2024-08-14 09:48:25 +02:00
Arne Morten Kvarving
0a662e8b21
EnableGravity moved to TypeTag-free parameter system
2024-08-14 09:16:47 +02:00
Arne Morten Kvarving
8fb6fb8aa3
VtkBlackoilModule parameters moved to TypeTag-free parameter system
2024-08-14 08:58:16 +02:00
Arne Morten Kvarving
73a559312d
VtkTemperatureModule parameters moved to TypeTag-free parameter system
2024-08-14 08:52:00 +02:00
Arne Morten Kvarving
0d59aeef6e
VtkPrimaryVars parameters moved to TypeTag-free parameter system
2024-08-14 08:40:45 +02:00
Lisa Julia Nebel
87a46d7b01
Fix NLDD solver for parallel runs with the COMPDAT keyword inside an ACTIONX
2024-08-14 08:31:37 +02:00
Arne Morten Kvarving
84e6b0183b
VtkCompositionModule parameters moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
48321e857e
VtkDiffusionModule parameters moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
eb37499b17
VtkMultiphaseModule parameters moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
64557a136d
NewtonMaxIterations moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
643efb7108
NewtonTargetIterations moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
0bbcb09480
NewtonMaxError moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
0195f8f113
NewtonTolerance moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
6280602201
NewtonWriteConvergence moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
b81c00292b
NewtonVerbose moved to TypeTag-free parameter system
2024-08-13 20:13:28 +02:00
Arne Morten Kvarving
53730ce5cf
EnableThermodynamicHints moved to TypeTag-free parameter system
2024-08-13 14:30:50 +02:00
Arne Morten Kvarving
08b227f7e3
EnableStorageCache moved to TypeTag-free parameter system
2024-08-13 14:03:02 +02:00
Arne Morten Kvarving
77f0cda5d4
EnableIntensiveQuantityCache moved to TypeTag-free parameter system
2024-08-13 13:38:52 +02:00
Arne Morten Kvarving
d5d9bca291
MaxTimeStepDivisions moved to TypeTag-free parameter system
2024-08-13 12:31:02 +02:00
Arne Morten Kvarving
3e53ba2d42
MinTimeStepSize moved to TypeTag-free parameter system
2024-08-13 12:02:42 +02:00
Arne Morten Kvarving
bff4774f84
MaxTimeStepSize moved to TypeTag-free parameter system
2024-08-13 11:38:05 +02:00
Arne Morten Kvarving
fd012efac8
EnableVtkOutput moved to TypeTag-free parameter system
2024-08-13 10:30:50 +02:00
Arne Morten Kvarving
18a18a64c7
OutputDir moved to TypeTag-free parameter system
2024-08-12 15:51:19 +02:00
Arne Morten Kvarving
e5bedd3b47
EnableGridAdaptation moved to TypeTag-free parameter system
2024-08-12 15:28:58 +02:00
Arne Morten Kvarving
9e11888ccb
ThreadsPerProcess moved to TypeTag-free parameter system
2024-08-12 14:48:56 +02:00
Arne Morten Kvarving
a20cb10572
InitialTimeStepSize moved to TypeTag-free parameter system
2024-08-12 13:56:36 +02:00
Arne Morten Kvarving
3e8929b04f
EndTime moved to TypeTag-free parameter system
2024-08-12 13:45:31 +02:00
Arne Morten Kvarving
91a0fd79a9
RestartTime moved to TypeTag-free parameter system
2024-08-12 13:32:22 +02:00
Arne Morten Kvarving
2f8c91222f
PrintParameters moved to TypeTag-free parameter system
2024-08-12 13:24:44 +02:00
Arne Morten Kvarving
c80219c85f
PredeterminedTimeStepsFile moved to TypeTag-free parameter system
2024-08-12 13:14:46 +02:00