Commit Graph

857 Commits

Author SHA1 Message Date
Svenn Tveit
b00cc2c1a5 Extend tracer model to solution tracers.
Solve an extended linear system with free and solution tracers with mass transfer coupling term.
2024-06-10 14:41:21 +02:00
Bård Skaflestad
58edb5b9aa
Merge pull request #5417 from blattms/feature-correct-comment-parallel
Update wrong comment about storage of transmissibilities
2024-06-07 16:50:38 +02:00
Atgeirr Flø Rasmussen
fc906842ad
Merge pull request #5352 from jcbowden/damaris-limit-variables-v1
Add ability to pass multiple variables to Damaris using DamarisWriter class.
2024-06-07 15:54:59 +02:00
Markus Blatt
d80b8411b7 Fixed spelling of comments. 2024-06-07 14:58:47 +02:00
Markus Blatt
2f3c1b7310 Update wrong comment about storage of transmissibilities
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).
2024-06-07 06:46:18 +02:00
Markus Blatt
302503e172
Merge pull request #5414 from totto82/fix_mpi_edit_trans
Fix modifications of TRANX/Y/Z in parallel (e.g. MULTIPLY of TRANX in EDIT)
2024-06-07 06:28:35 +02:00
Bård Skaflestad
e3bf48541f
Merge pull request #5406 from GitPaean/only_trans
only allocate trans_ for globalTrans_
2024-06-06 21:50:11 +02:00
Kai Bao
8f67881809 using enum class to replace boolean onlyTrans for
Transmissibility::update() for better readability, which is suggested by the reviewer.
2024-06-06 20:09:44 +02:00
Atgeirr Flø Rasmussen
ab4d9cb36e Initialize double member for serialization test. 2024-06-06 15:24:20 +02:00
Tor Harald Sandve
42702e1d50 Fix mpi for MULTIPLY TRANX in EDIT 2024-06-06 12:59:41 +02:00
Atgeirr Flø Rasmussen
f06c238753 Add damping treatment to subdomain Newton iterations. 2024-06-06 12:59:22 +02:00
josh bowden
6fcec07bab cast to remove: comparison of integer expressions of different signedness warning. 2024-06-06 10:36:25 +02:00
Kai Bao
303a677a81 only allocate trans_ for globalTrans_
others are not needed for globalTrans_ for now. It will help to flatten
the peak memory usage for rank 0 during a parallel running.
2024-06-05 21:35:46 +02:00
josh bowden
7fc6cc0430 Other small additions from github comments and removal of compile time logic that checks for ParaView and Python - makes code more readable and alows use of Damaris libraries with differing compiled in backends to be swapped without need for recompiling opm-simulators 2024-06-05 17:26:34 +02:00
Bård Skaflestad
4cf8a50b26
Merge pull request #5398 from atgeirr/minor-oscillation-handling-fix
Detect oscillation in just one phase.
2024-06-05 13:56:35 +02:00
Atgeirr Flø Rasmussen
558d888d90 Allow oscillation detection with less that two phases.
We should not require two phases to have oscillating residuals to
start handling it.
2024-06-05 11:50:01 +02:00
Vegard Kippe
78cc10f620 Fix typo 2024-06-03 15:26:16 +02:00
Bård Skaflestad
a3a2b7a978 Make SummaryState Objects Aware of Undefined UDQ Value
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.
2024-05-29 09:16:56 +02:00
Bård Skaflestad
6e8da2309b Delay UDQ Assignments Until After Summary Output
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.
2024-05-28 18:16:30 +02:00
Atgeirr Flø Rasmussen
6a7e1e08c0 Avoid memory leak from the *unique_ptr<X>.release() antipattern. 2024-05-28 16:49:08 +02:00
Bård Skaflestad
9841c5d21c
Merge pull request #5377 from akva2/equil_template_scalar
InitStateEquil: template Scalar type
2024-05-23 10:48:04 +02:00
Arne Morten Kvarving
4bef925974 InitStateEquil: use Scalar type from FluidSystem 2024-05-23 09:39:49 +02:00
Arne Morten Kvarving
4cfb7a8566 EquilibrationHelpers: template Scalar type 2024-05-23 09:38:27 +02:00
Arne Morten Kvarving
600e7ea2f7 Transmissibility: consistently use Scalar type 2024-05-23 08:42:51 +02:00
Arne Morten Kvarving
27ca3ab5f7 OutputBlackoilModule: consistently use Scalar type 2024-05-23 08:34:09 +02:00
Arne Morten Kvarving
39554ab7dd NonLinearSolver: use Scalar type 2024-05-23 08:25:37 +02:00
Arne Morten Kvarving
cdf227bcbd BlackoilModelParameters: consistently use Scalar
parameters are registered as Scalar not double
2024-05-23 08:17:45 +02:00
Arne Morten Kvarving
2205c68f0d BlackoilModel: use Scalar type 2024-05-23 08:09:53 +02:00
Arne Morten Kvarving
aa4758ff07 BlackoilModelNldd: use Scalar type 2024-05-22 15:52:13 +02:00
Arne Morten Kvarving
61bfea46c7 GenericTracerModel: use Scalar type 2024-05-22 15:46:50 +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
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
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
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
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