Commit Graph

16886 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
6f04c31c7c Use string to enum helper. 2023-11-23 14:06:39 +01:00
Atgeirr Flø Rasmussen
7578fbf144 Change nldd default approach to gauss-seidel.
Also adjust local CNV tolerance scaling to 0.1 instead of 0.01.
2023-11-23 14:06:39 +01:00
Atgeirr Flø Rasmussen
94554ea4f2 Change default nldd number of domains to one per 1000 cells. 2023-11-23 14:06:39 +01:00
Atgeirr Flø Rasmussen
8acc8af2a4 Add MaxPressure NLDD domain ordering option, make it default. 2023-11-23 14:06:39 +01:00
Kai Bao
3aed0b9501 not updating the connection pressure for StandardWell
at the early stage of computeWellRatesWithBhpIterations. The perforation rates are not updated,
and it is not sensible to update based on the inconsistent well rates and perforation rates.

Better to keep the original explicit quantities for better consistency.

Furthermore, it can be dangerous to update the explicit quantities based on the
irrelevant perforation rates, since the ratios can be very undesirable due to crossflow.
2023-11-23 09:13:57 +01:00
Bård Skaflestad
8f6b2b99e7
Merge pull request #5014 from bska/fix_shut_in_for_non_operable_wells
Fix shut-in logic for wells with shut-instructions (revised)
2023-11-22 19:41:56 +01:00
Bård Skaflestad
6f64388f1e Reduce Timestep for Certain Sensitive Tests
This increases the cost of those tests, but in return we get
improved determinism and stability of the tests.
2023-11-22 16:53:48 +01:00
Stein Krogstad
b08bc029e6 Fix shut-in logic for wells with shut-intructions 2023-11-22 16:53:48 +01:00
Markus Blatt
6a866ac8d2 [fix] Do parallel sums with int instead of bool.
Using bool here is at least frowned upon. To be honest, I have no idea
what happens underneath here if we pass a bool. In contrast to other
pod types we do not associate it with a builtin type of MPI (not even
sure what to use). Hence we probably create a custom type for sending
and receiving. That should work. But I have no idea what will be used
for summation.

BTW: I am debugging a case that previously crashed and now suddenly
works and this seems to be the only relevant change I made in the
meantime.
2023-11-22 16:50:57 +01:00
Bård Skaflestad
82a83d04e2
Merge pull request #5017 from akva2/missing_include
add missing include
2023-11-22 15:26:14 +01:00
Bård Skaflestad
8dca5a931e
Merge pull request #5005 from totto82/fixWDFACCOR
dont scale d factor from wdfaccor with connection factor
2023-11-22 14:55:51 +01:00
Tor Harald Sandve
be06132702 remove trans multiplier from dake 2023-11-22 13:59:06 +01:00
Tor Harald Sandve
5a6af752e3
Merge pull request #4912 from totto82/fix_bccon
fix issue when BCPROP is not set initially
2023-11-22 13:41:19 +01:00
Arne Morten Kvarving
f2a2fc2938 add missing include 2023-11-22 13:18:56 +01:00
Bård Skaflestad
3a01da0a12
Merge pull request #5010 from totto82/cgfrf
Add output of connection dissolved gas and vaporized oil
2023-11-22 12:54:33 +01:00
Bård Skaflestad
925d5685a1
Merge pull request #5016 from akva2/fix_gen_headers_superbuild_ninja
fixed: also add dependency with ninja generator
2023-11-22 12:51:05 +01:00
Arne Morten Kvarving
0157385668 fixed: also add dependency with ninja generator 2023-11-22 12:27:31 +01:00
Arne Morten Kvarving
06d0e7f877
Merge pull request #4967 from multitalentloes/parallelize_cpu_dilu
OpenMP parallelize DILU with matrix reordering
2023-11-22 11:19:23 +01:00
Tobias Meyer Andersen
ee95223b27 Use std::optional to only allocate reordered matrix when using multiple threads 2023-11-22 10:10:29 +01:00
Tor Harald Sandve
4879896789 adapt to refactoring of getDFactor 2023-11-22 09:17:28 +01:00
Tobias Meyer Andersen
e22f4399a0 fix typo 2023-11-22 09:16:43 +01:00
Arne Morten Kvarving
b761b3f08b
Merge pull request #5012 from akva2/vendor_libfmt
vendor libfmt using FetchContent
2023-11-22 09:06:38 +01:00
Arne Morten Kvarving
2829ee1f9b
Merge pull request #5013 from akva2/janitoring
Some janitoring
2023-11-22 08:33:19 +01:00
Tor Harald Sandve
ecd9930225 dont scale d factor from wdfaccor 2023-11-21 17:51:36 +01:00
Tobias Meyer Andersen
5f6c97ff3b add OpenMP parallelized version of DILU.
Implement graphcoloring to expose rows in level sets that that can be
executed in parallel during the sparse triangular solves.
Add copy of A matrix that is reordered to ensure continuous memory reads
when traversing the matrix in level set order.
TODO: add number of threads available as constructor argument in DILU
2023-11-21 15:41:53 +01:00
Arne Morten Kvarving
842af08276 test_graphcoloring: cosmetics 2023-11-21 15:20:07 +01:00
Arne Morten Kvarving
3932cce392 fixed: never include config.h in a header 2023-11-21 15:12:48 +01:00
Arne Morten Kvarving
32dfa0b473 vendor libfmt using FetchContent 2023-11-21 15:10:26 +01:00
Tor Harald Sandve
ee77d30fe5 Add output of connection dissolved gas and vapporized oil 2023-11-21 14:29:40 +01:00
Arne Morten Kvarving
b00d3ca4bb
Merge pull request #5009 from multitalentloes/add_graphcoloring
add graph coloring
2023-11-21 10:57:03 +01:00
Tobias Meyer Andersen
e2a531dd65 replace loop with std function, remove print from test 2023-11-21 09:52:48 +01:00
Tobias Meyer Andersen
3cd1873771 add graph coloring 2023-11-20 16:57:56 +01:00
Bård Skaflestad
518df3fa7e
Merge pull request #5007 from akva2/fix_loghelper_test_logger
fixed: we need to initialize logger before parsing
2023-11-20 16:30:58 +01:00
Antonella Ritorto
6d180a7f91 compressedLevelZero added in AluCartIdxMapper, used in RelpermDiags 2023-11-20 15:56:17 +01:00
Arne Morten Kvarving
9af3a2f790 fixed: we need to initialize logger before parsing
parsing logs some errors which meant using uninitialized values
if no logger has been set
2023-11-20 15:06:52 +01:00
Arne Morten Kvarving
4ccc5cddc7
Merge pull request #5006 from akva2/janitoring
Some janitoring
2023-11-20 14:29:45 +01:00
Tobias Meyer Andersen
6ca84a16e1 test_dilu: cosmetics 2023-11-20 13:06:44 +01:00
Tobias Meyer Andersen
54b7f9c44f GraphColoring.hpp: cosmetics 2023-11-20 13:06:40 +01:00
Tobias Meyer Andersen
9309f96d8f GraphColoring.hpp: reorder headers 2023-11-20 13:06:34 +01:00
Atgeirr Flø Rasmussen
9c9fae26a8 Require initial assembly for subdomains with Gauss-Seidel. 2023-11-20 12:59:44 +01:00
Kai Bao
6ab809c69d
Merge pull request #5004 from blattms/control-mode-typo
Fixed typo: control model -> control mode.
2023-11-20 09:13:03 +01:00
Kai Bao
3b1ef932c2
Merge pull request #5003 from vkip/check_if_closed_before_hist_open
Check if well was closed this step before re-opening during history
2023-11-20 09:03:06 +01:00
Atgeirr Flø Rasmussen
77df0e613f
Merge pull request #4938 from bska/external-nldd-partition
Enable Loading Parallel NLDD Partition From File
2023-11-20 08:54:13 +01:00
Markus Blatt
de50fe5702 Fixed typo: control model -> control mode. 2023-11-20 08:29:24 +01:00
Bård Skaflestad
ea3b22480a Enable Loading Parallel NLDD Partition From File
This commit adds support for loading a three-column NLDD
partitioning scheme of the form

    MPI_Rank  Cartesian_Index  NLDD_Domain_ID

from a text file.  In an MPI run it is assumed that the first column
holds integers in the range 0..MPI_Size()-1, and typically that each
such integer is listed at least once.  In a sequential run, the MPI
rank column is ignored.

With this scheme we can load the same partition files that we write,
for increased repeatability and determinism, and we can also
experiment with externally generated NLDD partitions.
2023-11-17 17:39:17 +01:00
Vegard Kippe
abbcb4b148 Check if a well was closed this step before re-opening in history mode 2023-11-17 17:29:30 +01:00
Bård Skaflestad
68fe118781 Make Compress/Count Partition Vector Helper Generally Available
This function pair is useful also when loading a partition from
file to ensure that there are no gaps in block numbering.
2023-11-17 09:17:46 +01:00
Bård Skaflestad
c0c96123bc Add Support for Writing NLDD-Like Partitions in Parallel
This commit adds a new (hidden) debugging option,

    DebugEmitCellPartition (--debug-emit-cell-partition)

which, when set, will cause each rank to write a three-column text
file of the form

    MPI_Rank  Cartesian_Index  NLDD_Domain_ID

into the directory

    partition/CaseName

of the run's output directory.  That file will be named according to
the process' MPI rank, so the first column will be the same as the
file name.

The option is primarily intended for debugging the NLDD partitioning
scheme, so is mostly reserved for runs with low MPI sizes (e.g.,
less than 20).

While here, also make the MPIPartitionFromFile helper class aware of
this format so that we can use concatenated output files as an input
to the MPI partitioning algorithm for repeatability.
2023-11-17 09:17:46 +01:00
Bård Skaflestad
c559de51cf
Merge pull request #4996 from totto82/fixWDFAC
Fix wdfac and d factor in comdat
2023-11-17 09:09:22 +01:00
Atgeirr Flø Rasmussen
d069081b52
Merge pull request #4960 from daavid00/dispersivity
Support for mechanical dispersion
2023-11-17 08:50:00 +01:00