The simulation will just chop the time step and continue.
Note, that the error count in the PRT file is used by engineers to
decide whether a simulation was successfull. Hence the error count
should not be increased here.
-Only output or restart solution tracers for gas/oil tracers with DISGAS/VAPOIL enabled (no solution tracers in water phase!).
-Initial tracers (free/solution) will be set to zero initially if TBLK/TVDP is not given.
- Do not calculate mass transfer between free and solution tracers if it is not necessary.
-Calculate well rates using updated tracer concentrations
If we use transmissibilities for loadbalancing, then we calculate
transmissibilities twice. First on the global grid before
loadbalancing and then on the local grid after that. This is the
default. In this case all warnings will be shown correctly when
calculating the global transmissibilities.
If the user requests the same weights for all faces (command line
parameter --edge-weights-method=0) then the transmissibilities are only
calculated on the loadbalanced grid. Unfortunately, in this case only
rank 0 will issue warnings for his part including the false positives
mentioned below.
Due to load balancing many NNCs might be stored on another process,
but we still use all EDITNNC entries when computing transmissibilties
locally. Hence when applying EDITNNC on the loadbalanced grid we
will issue warnings for cases where there are no problems (e.g. NNC
between two overlap cells.
With this PR we will only warn when computing the transmissibilities
for the first time. For the default settings this will remove spurious
and duplicate warnings.
Not that for --edge-weights-method=0 nothing changes and we will still
see only warnings for the first rank including spurious one.
This is a follow up of the fix in #5414.
The comment said that the ordering of the compressed index of cells is
coherent with the cartesian index. THis is not the case in parallel
where cells in the overlap/ghost region might be ordered last (default).
This PR switches to calling the SummaryState constructor which is
aware of the value of undefined UDQs (OPM/opm-common#4052) directly.
While here, also sort headers, split some long lines, and prefer
initialisation lists to constructor body assignments.
Commit 0aaa69c6e (PR #5330) was a little too eager in its effort to
handle UDQ ASSIGN operations after action processing[%]. In
particular, the assignments, which alter the internal structures of
the SummaryState and UDQState objects, would happen prior to writing
summary files. In turn, this would make it appear as if the
assignment happened too early. This commit defers UDQ assignments
triggered by action processing until FlowProblem<>::endEpisode() for
two reasons
1. The problem originally addressed in 0aaa69c6e only presented
when the assignment was triggered on the final time step of an
episode (report step), so handling this situation here is a
more targeted approach.
2. Member function FlowProblem<>::endEpisode() is called after we
write the summary file output so any alterations to the
internal structures of the SummaryState will not be visible in
the summary output until the next time step. This is the
expected behaviour.
[%] Insufficient testing by: [at]bska.