Commit Graph

2175 Commits

Author SHA1 Message Date
Markus Blatt
ca71415297
Merge pull request #5266 from lisajulia/feature/pyAction-comparison-tests
Comparison tests for PYACTION
2024-04-04 19:40:25 +02:00
Lisa Julia Nebel
6f7cc94da2 Add script to compare the summary files of two different simulator runs 2024-04-03 16:05:44 +02:00
Arne Morten Kvarving
bf83fab00d fixed: segfault due to taking a reference to temporary 2024-04-03 14:36:31 +02:00
Tor Harald Sandve
920ad68782 Implement WELL as group limit action
And remove G as unsupported option in WTEST
2024-04-03 08:51:09 +02:00
Kai Bao
29358ee70b removing the including of FlowProblem in BlackoilWellModel 2024-03-27 13:12:55 +01:00
Arne Morten Kvarving
958f33fbfc GenericProblem: remove unnecessary Scalar template parameter
use the Scalar type from the FluidSystem
2024-03-08 16:23:49 +01:00
Arne Morten Kvarving
2a91fb4c2f remove unused ebos/eclnewtonmethod.hh 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
fb7c4f6fd2 move ebos/eclproblem.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
6f5d53b20b move ebos/eclgenericproblem.[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
15339fe02f move ebos/eclproblem_properties.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
7b49bcb09e rename EclBaseProblem to FlowBaseProblem 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
57905c1069 move ebos/ecltransmissibility[_impl].[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
6869516230 changed: move ebos/ebos.hh to test/TestTypeTag.hpp
rename EbosTypeTag to TestTypeTag as it is only used in tests

drop unused EbosProblem class
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
1362143e48 move ebos/eclgenericvanguard.[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
2d604e12a7 move ebos/eclequilinitializer.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
9d256bc233 move ebos/ecltracermodel.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
3a3881e8d9 move ebos/eclgenerictracermodel[_impl].[hh|cc] to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
c9b3de16f1 move ebos/femcpgridcompat.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Bård Skaflestad
d1d22668ea Add Utility for Region-Based Phase-Filled Averages
The initial use case is calculating the phase-filled pore-volume
weighted average of the fluid mass densities per PVT region.  This
value goes into calculating depth-corrected per-cell phase pressure
values such as the BPPO and BPPG summary vectors.

This class manages a single linear array which separately tracks the
averages' numerators and denominators as running sums per region and
region set.  We pick this data structure to simplify the cross-rank
reduction needed in MPI parallel runs.  Client code is expected to
add individual per-cell and per-phase contributions using the
addCell() member function and then call the accumulateParallel()
member to affect the cross-rank reduction.  The averages will then
be available through the fieldValue() and value() member functions.

As a further view towards the initial use case, we track two
different types of average per phase--one for the phase-filled
volume and one for the pore-volume filled volume.  The latter is the
average we would get for the case of the phase saturation being one
throughout the region.  This alternative value is the fallback
option for the case of the phase saturation being identically zero
throughout the region.
2024-02-28 12:08:24 +01:00
Arne Morten Kvarving
991f89816e rename EclWellModel property to WellModel 2024-02-23 10:24:53 +01:00
Arne Morten Kvarving
67c9bba4c9 rename TTag::EclFlowProblem to TTag::FlowProblem 2024-02-23 09:27:48 +01:00
Bård Skaflestad
d69ba021a9
Merge pull request #5168 from lisajulia/feature/removeFilesOnSimulationStartup
Feature/remove files on simulation startup
2024-02-08 17:30:07 +01:00
Lisa Julia Nebel
7077cfb35c Indentation for previous commit 2024-02-08 16:08:55 +01:00
Lisa Julia Nebel
e4080a3fe4 Add 'prepareResultOutputDirectory' function in Opm namespace that removes possible old simulation output files from the specified output directory.
This function is called during 'setupLogging' before the actual logging starts.
2024-02-08 16:08:50 +01:00
Arne Morten Kvarving
b09c70213b FlowMainEbos: rename to FlowMain 2024-02-06 10:42:23 +01:00
Bård Skaflestad
6d2d22f390
Merge pull request #5155 from lisajulia/feature/NONNC
Two more enhancements concerning NONNC
2024-02-02 18:57:13 +01:00
Lisa Julia Nebel
77067c064f Change copyright owner of test_nonnc.cpp to Equinor ASA 2024-02-02 13:15:12 +01:00
Arne Morten Kvarving
d25d4432eb EclInterRegFlows: rename to InterRegFlows 2024-02-02 12:53:11 +01:00
Bård Skaflestad
a6eb7b65a1
Merge pull request #5149 from akva2/adaptivetimestepping_drop_ebos
AdaptiveTimeSteppingEbos: rename to AdaptiveTimeStepping
2024-02-01 18:36:36 +01:00
Arne Morten Kvarving
cbb8cb29f5 AdaptiveTimeSteppingEbos: rename to AdaptiveTimeStepping 2024-02-01 17:57:59 +01:00
Bård Skaflestad
ba3c64443c
Merge pull request #5150 from akva2/istlsolver_drop_ebos
ISTLSolverEbos: rename to ISTLSolver
2024-02-01 17:43:34 +01:00
Arne Morten Kvarving
b6e47ab1e7 ISTLSolverEbos: rename to ISTLSolver 2024-02-01 15:49:40 +01:00
Arne Morten Kvarving
d6f59c1d4b
Merge pull request #5134 from lisajulia/feature/NONNC
Feature/NONNC
2024-02-01 15:13:58 +01:00
Lisa Julia Nebel
631409ec2c Add test for NONNC keyword 2024-02-01 13:57:49 +01:00
Bård Skaflestad
71b383d8e7
Merge pull request #5142 from akva2/blackoilmodel_remove_ebos
BlackoilModel: remove Ebos from class names
2024-02-01 12:34:12 +01:00
Arne Morten Kvarving
e13c77ae95 BlackoilModelEbos: rename to BlackoilModel 2024-02-01 09:05:40 +01:00
Arne Morten Kvarving
dd92a7446c BlackoilModelParametersEbos: rename to BlackoilModelParameters 2024-02-01 09:05:40 +01:00
Arne Morten Kvarving
ce4f138a92 header cleanups 2024-02-01 09:04:21 +01:00
Arne Morten Kvarving
b0c16b8976 add a basic regression test for Damaris output 2024-01-30 15:28:12 +01:00
Bård Skaflestad
472199f63d
Merge pull request #5132 from blattms/fix-shared-linking
Fix linking errors when using shared libraries.
2024-01-30 11:02:51 +01:00
Markus Blatt
819842d7cf Fix linking errors when using shared libraries.
We accomplish that by passing the module version as a string to the
constructors of LogOutputHelper and EclGenericOutputBlackoilModel
instead of calling moduleVersionName() in LogOutputHelper. That way
moduleVersionName is not needed by libopmsimulators anymore and
compilation works again for people requesting shared libraries via
CMake's BUILD_SHARED_LIBS variable.
2024-01-29 16:37:38 +01:00
Arne Morten Kvarving
96a3a6d45a changed: move hdf5serializer to opm/simulators/utils/HDF5Serializer.hpp
does not interact with typetag system
2024-01-29 09:42:49 +01:00
Tor Harald Sandve
343f1201eb make test independent on inplace.size() 2024-01-26 09:15:43 +01:00
Atgeirr Flø Rasmussen
2626fbb84b
Merge pull request #5002 from multitalentloes/add_cudilu
Add cudilu
2024-01-25 15:43:39 +01:00
Tobias Meyer Andersen
4b0dd54f15 Add CUDA implementation of the DILU
preconditioner. Uses graph coloring to exploit
parallelism in upper and triangular solves when
computing a diagonal approximate inverse of a
sparse matrix. Supports blocksizes up to 3.
2024-01-25 14:26:38 +01:00
Bård Skaflestad
eb9ead5577 Support at Least NTFIP Distinict Regions for Inter-Region Flow
This commit ensures that we have backing support for region IDs up
to and including NTFIP (TABDIMS(5), REGDIMS(1)).  The existing setup
would fail (segmentation violation) in the case of a summary vector
of the form

    ROFT
      36 31 /
    /

when the maximum FIPNUM value was 30.  We nevertheless support
maximum FIPNUM values exceeding NTFIP.

We add a new optional parameter to the EclInterRegionFlowMap
constructor.  The parameter allows client code to specifiy a
"minimum maximum" region ID that all ranks must support.  This value
will be enforced during parallel aggregation.
2024-01-24 09:54:44 +01:00
Arne Morten Kvarving
98c704c1c3 changed: move ebos/eclmpiserializer.hh to opm/simulators/utils/MPISerializer.hpp
it does not use the typetag system
2024-01-23 10:51:32 +01:00
Arne Morten Kvarving
873102e9ea added: RST CONV support for polymer, solvent and brine 2024-01-22 09:58:06 +01:00
Bård Skaflestad
ceffbd2fc5 Chase Constructor API Change for Opm::Connection Class 2024-01-15 11:05:02 +01:00
Arne Morten Kvarving
e686fabb39 added: class for calculating RPTRST CONV 2024-01-10 13:07:34 +01:00
Atgeirr Flø Rasmussen
ea623f0f3e
Merge pull request #5050 from totto82/addSource
support source term from deck (SOURCE)
2024-01-09 13:16:16 +01:00
Bård Skaflestad
60c7c79f58 Output Well Flow Sheets for All Wells
There is no need to restrict PRT file flow reports to those wells
which are active on the current rank since the SummaryState object
holds information for all wells active at the current report step.
2024-01-08 08:58:51 +01:00
Torbjørn Skille
72892f0c4b PRT file updates
* Arrays genarated from RPTSOL + FIP is now strictly following Eclipse format
* Adding reservoir volume array also for custom FIP regions
2024-01-03 21:47:54 +01:00
Tor Harald Sandve
16a80fc293 add source to parallel serialization 2023-12-22 10:59:09 +01:00
Tor Harald Sandve
f508f3d4e8 add output of dissolved solvent rswsol 2023-12-21 10:48:58 +01:00
Arne Morten Kvarving
de9c3ddfda added: test for outputdir 2023-12-19 15:21:58 +01:00
Tor Harald Sandve
b9ecc2ac8f
Merge pull request #5058 from totto82/fixInitTemp
BUGFIX. Use given temperature in the density calculations in the initialisation
2023-12-13 15:49:32 +01:00
Tor Harald Sandve
8c66465c71 BUGFIX. Use given temperature in the density calculations in the initialization 2023-12-13 09:45:38 +01:00
Bård Skaflestad
c03f794f9c Remove Dashed Lines Between Records in PRT File Reports
This commit splits the production, injection, and cumulative
*Report_() functions into three logically distinct parts, one for
outputting the report header (begin*Report_()), one for outputting a
single report record (output*ReportRecord_()), and one for ending
the report (end*Report_()).  This simplifies the logic of the
*Record_() member functions since they no longer need to infer the
context which is already available in the caller and can perform a
more narrow task than before.

With this separation we're also able to remove the dashed lines
which would previously separate each report record, thereby creating
PRT file report sheets which have a more expected layout.

Moreover, as an aid to future maintenance, we also factor out common
code for the well and group cases in each *Record_() function.

Finally, fix a unit conversion problem in the report values for
cumulative gas quantities.  The sheet header states that we should
be outputting values in 'MM' prefixed units, but we were only
scaling the gas values by a factor of 1000 instead of 1000*1000.  In
other words, the injection and production gas values in the
cumulative sheet were off by a factor of 1000.
2023-12-11 10:01:22 +01:00
Bård Skaflestad
ec549df37b Remove Spurious Blank Lines in PRT File Reports
The StreamLog::addMessageUnconditionally() member function will end
each message with a newline (std::endl) so we should not add such
newlines ourselves.  The extra newline characters produce spurious
blank lines in the report sheets, e.g., for the "PRODUCTION REPORT".

This commit removes the last newline character from each report
request, thus deferring that responsibility to OpmLog::note()
instead.  Doing so, however, means we have take a little more care
with the first line of each report lest we create report sheets
which are smushed together.
2023-12-08 10:22:43 +01:00
Arne Morten Kvarving
7da71783ba fix dead stores 2023-12-04 12:40:55 +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
Kai Bao
9f0fb32713 various cleaning up and refactoring for co2 ptflash simulation 2023-11-21 15:52:56 +01:00
Trine Mykkeltvedt
83cb5670b7 a simple 1D test demonstrating the usage of the PTFlash compostional modeling 2023-11-21 15:52:56 +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
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
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
Tobias Meyer Andersen
6ca84a16e1 test_dilu: cosmetics 2023-11-20 13:06:44 +01:00
Tor Harald Sandve
e33d27ca90
Merge pull request #4973 from daavid00/enabledisgaswatvap
Enabling disGas and watVap at compile time for gasWaterBrine systems
2023-11-13 15:01:38 +01:00
Arne Morten Kvarving
44ce054492 changed: refactor LogOutputHelper::fip
only do one output per call. allow passing the name of the
regions to process
2023-11-09 13:08:17 +01:00
David Landa Marban
92de5355b2 Enabling disGas and watVap at compile time for gasWaterBrine 2023-11-07 18:35:30 +01:00
Arne Morten Kvarving
de0b249eaa fixed: make sure we get exact match for test name
if not test names that are a substring of another might
match the wrong entry in the file
2023-11-03 10:48:55 +01:00
Arne Morten Kvarving
2fcc8bddd4 avoid more dead stores 2023-11-02 12:14:10 +01:00
Bård Skaflestad
bf72698310
Merge pull request #4832 from totto82/wdaccor_refactor
Implement Forchheimer term in wellIndex
2023-10-31 17:46:49 +01:00
Arne Morten Kvarving
5e801bc488 avoid dead stores 2023-10-27 08:59:15 +02:00
Tor Harald Sandve
90e791877c Implement Forchheimer term in wellIndex
Add output of CDFAC

Add effect of compaction on CTFAC
2023-10-23 08:55:21 +02:00
jakobtorben
ab0ca76194 Add DILU preconditioner 2023-10-18 14:30:17 +02:00
Tobias Meyer Andersen
8b396fa3dc Update test properties of new tests using CUDA. Avoid comparison causing new warning 2023-10-16 11:31:00 +02:00
Tobias Meyer Andersen
533c5a1a3e Combine new diagonalMV kernels into one using
template arguements.
Use more consistent naming conventions.
Change printing function of CuVector from output
stream overload to toDebugString().
2023-10-16 09:53:02 +02:00
Tobias Meyer Andersen
c809819cbd Fuse kernels to optimize performance and update
the tests and documentation.
2023-10-13 10:31:17 +02:00
Tobias Meyer Andersen
1e4b0e97ee Add jacobi preconditioner that runs on the GPU.
Implement calls to cuBlas, cuSparse and implement necessary
CUDA kernels to perform a single iteration of the jacobi preconditioner.

Add tests that verify new kernels and the preconditioner in its totality.

The preconditioner is verified on 2x2 and 3x3 blocks, which as of now
are the only supported sizes. 1x1 are not supported because cuSparse
does not support it.
2023-10-13 10:31:17 +02:00
Atgeirr Flø Rasmussen
18883e7f83 Use the non-accelerated linear solver for some tests.
This is just for the type tag.
2023-09-25 10:44:06 +02:00
Bård Skaflestad
9c58585538
Merge pull request #4823 from akva2/ecltimestepping_separate
changed: put ecl time stepping parameters in separate struct
2023-09-04 10:54:46 +02:00
Tor Harald Sandve
80cbfe7fda
Merge pull request #4819 from hakonhagland/gecon3
Implement support for GECON keyword
2023-09-01 15:06:48 +02:00
Atgeirr Flø Rasmussen
06c706e7d6 Also copy flags, and helper function with test. 2023-08-31 13:01:50 +02:00
Arne Morten Kvarving
3c525aefae changed: put ecl time stepping parameters in separate struct
this to allow reuse in ebos simulators
2023-08-30 11:22:22 +02:00
Håkon Hægland
dba282c7a4 Added missing header file 2023-08-29 09:14:35 +02:00
Vegard Kippe
8666cd8dc3 re-introducing line that was deleted by mistake.. 2023-08-25 14:26:51 +02:00
Vegard Kippe
0944cbbed9 fixing indent 2023-08-25 14:13:04 +02:00
Vegard Kippe
4ff08ffd2d Added testcase for TUNING/TSINIT and NEXTSTEP - depends on https://github.com/OPM/opm-tests/pull/1028 2023-08-25 14:01:51 +02:00
Arne Morten Kvarving
13b0e14f18 EclGenericProblem: remove unused time steppping parameters
and remove some hidden duplicates
2023-08-15 14:02:55 +02:00
Arne Morten Kvarving
46aae8cda6 changed: move EclInterRegFlows to opm/simulators/flow
no opm-models usage
2023-08-15 13:14:42 +02:00
Arne Morten Kvarving
933f28b575 add tests for LogOutputHelper
reference data was created before the refactoring
2023-08-14 11:44:32 +02:00
Bård Skaflestad
95d715b807 Add Parallel Calculation Support for WBPn/WPAVE
This commit adds a parallel calculation object derived from the serial
PAvgCalculator class.  This parallel version is aware of MPI
communicators and knows how to aggregate contributions from wells that
might be distributed across ranks.

We also add a wrapper class, ParallelWBPCalculation, which knows how to
exchange information from PAvgCalculatorCollection objects on different
ranks and, especially, how to properly prune inactive cells/connections.
2023-07-07 15:01:05 +02:00
Arne Morten Kvarving
4d35ec26de isNumericalAquiferCell: put in separate struct for easier reuse 2023-07-04 14:56:10 +02:00
Arne Morten Kvarving
c3847e8325 simplify cmake code for tuning tests
add a post command to the runSimulator script and use this to
execute the unit test at the end of the run
2023-07-03 09:05:45 +02:00
Vegard Kippe
7fc9a2eef3 Addressing review comments. 2023-06-30 12:21:25 +02:00
Vegard Kippe
7a0074f0e9 Cleaning up test code 2023-06-29 15:22:52 +02:00
Vegard Kippe
a80f44a3be Updating variable name in SimulatorFullyImplicitBlackoilEbos.hpp and adding tests 2023-06-29 15:20:38 +02:00
Bård Skaflestad
77adc6ea3b Add Container for Dynamic WBPn Source Values
This commit adds a new container class,

    ParallelPAvgDynamicSourceData

which inherits from PAvgDynamicSourceData and provides a parallel
view of source contributions.  Member function

    collectLocalSources

will call the user-provided source term evaluation function for each
source location in its purview--typically those locations owned by
the current MPI rank.  Those values will be distributed to other MPI
ranks through member function synchroniseSources which will fill the
base class' 'src_' data member, and become available to clients
through read-only item spans.
2023-06-21 12:06:49 +02:00
Arne Morten Kvarving
3c566a9e4e avoid dead store 2023-06-21 08:59:26 +02:00
Bård Skaflestad
a2d4153830
Merge pull request #4711 from atgeirr/well-additions-for-local-solves
Well additions for local solves.
2023-06-15 18:15:43 +02:00
Atgeirr Flø Rasmussen
654df6fd59 Well additions for local solves.
Also, remove uneeded function updatePerforationIntensiveQuantities().
2023-06-15 16:49:12 +02:00
Ove Sævareid
9dbadfdaae Some support for WAG hysteresis. 2023-06-15 12:03:39 +02:00
Bård Skaflestad
9d75915e4b Prepare for Revised Implementation of WBPn
This initial commit changes the API of the CollectDataToIORank
class' handling of WBPn values from collecting a set cell pressures
into communicating pre-computed WBPn values through the new
WellBlockAveragePressures container class.  This is in preparation
of moving the WBPn calculation to the simulator side for greater
parallelism.  For now we do not compute any of the actual WBPn
values.  That will be the subject of follow-up commits.

While here, also split a number of very long lines for readability.
2023-06-09 13:25:43 +02:00
Bård Skaflestad
665be4e435
Merge pull request #4699 from atgeirr/nldd-utilities
Add utilities that will be needed for NLDD solvers.
2023-06-09 10:35:48 +02:00
Atgeirr Flø Rasmussen
712a7c8131 Add utilities that will be needed for NLDD solvers.
Includes:
 - SubDomain struct,
 - simple partitioning utilities for testing,
 - some matrix and vector manipulation functions,
 - tests for the above.
2023-06-09 10:08:29 +02:00
Bård Skaflestad
479a575539 Add Brief Documentation Block to Test Property AWK Script
Mostly to aid future maintainers.
2023-06-08 12:05:16 +02:00
Arne Morten Kvarving
4a3a47c764 changed: no need to manually specify test data in update script
rather specify it as properties on the tests themself and extract
using some awk-ing.
2023-06-08 10:33:36 +02:00
Håkon Hægland
bdfa287fec Add missing include file 2023-06-02 09:25:34 +02:00
Torbjørn Skille
afe0ede324 start regression testing of test case with VAPPARS keyword in Solution section 2023-06-01 13:05:32 +02:00
Atgeirr Flø Rasmussen
ee6edd83a0
Merge pull request #4636 from kjetilly/cuistl_multigpu
Path to multigpu: Cuistl multigpu
2023-06-01 07:23:39 +02:00
Bård Skaflestad
4faa5e1fe7
Merge pull request #4667 from akva2/no_adap_timestep_flag_in_driver
changed: stop forcing no adaptive time stepping in parallel restart test driver
2023-05-31 21:37:51 +02:00
Kjetil Olsen Lye
ea86e45fef SolverAdapter now takes a reference to scalar product. 2023-05-31 16:39:45 +02:00
Kjetil Olsen Lye
ceb15e22e3 Expose CuISTL solver in FlexibleSolver. 2023-05-31 15:03:31 +02:00
Atgeirr Flø Rasmussen
0923698667
Merge pull request #4635 from kjetilly/cuistl_preconditioners
Path to multigpu: Cuistl preconditioners
2023-05-31 14:43:49 +02:00
Markus Blatt
290e7146ad Added working PINCH test cases as regressions.
This hopefully will prevent breaking things when further work for
PINCH is done.

The following tests are still known to fail with current master:
T2A_NOPINCH T2A_GAP T2A_NOGAP T4A1_NOGAP T4A1_GAP
2023-05-31 12:23:00 +02:00
Arne Morten Kvarving
0f010daaf8 remove unused variables 2023-05-31 09:35:16 +02:00
Kjetil Olsen Lye
84305a7a8d Added conversion preconditioner. 2023-05-30 11:50:02 +02:00
Kjetil Olsen Lye
b30e6d79d5 Added CuSeqILU0 with the preconditioner adapter. 2023-05-30 11:49:58 +02:00
Bård Skaflestad
3549d85d83
Merge pull request #4568 from totto82/2psolvent
Add gaswater solvent
2023-05-30 11:36:16 +02:00
Atgeirr Flø Rasmussen
e5672ee816
Merge pull request #4634 from kjetilly/cuistl_vector_matrix
Path to multigpu: Cuistl vector and matrix classes
2023-05-30 11:35:15 +02:00
Kjetil Olsen Lye
dfa7034f1b Made error tolerances stricter. 2023-05-30 10:12:31 +02:00
Kjetil Olsen Lye
63fb363a83 Renamed CopyConstructor to CopyAssignment. 2023-05-30 10:06:08 +02:00
Tor Harald Sandve
77d6a99376 add SPE1CASE2_GASWATER_SOLVENT as test case 2023-05-30 09:44:08 +02:00
Bård Skaflestad
f156bc9b7d Enable Restart Tests for Constant Flux Aquifers
Uses the example models AQUFLUX-01 and AQUFLUX-02 from OPM-Tests.
Both sequential and parallel modes activated for both models.
2023-05-26 20:21:52 +02:00
Arne Morten Kvarving
9b93046a69 changed: stop forcing no adaptive time stepping in parallel restart test driver
this should be controllable on a per-test level as other options.

keep current behavior for existing test by re-adding the option
using TEST_ARGS.
2023-05-25 20:23:48 +02:00
Tor Harald Sandve
8c9220c8e9 add solvent+foam test 2023-05-24 16:03:09 +02:00
Kjetil Olsen Lye
133a8897a0 Fixed indexing mistake in cuistl/vector_operations 2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
f006b0b4f5 Removed unused type variable. 2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
b6a67275c9 Rename to to_int and to_size_t 2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
5373fb7a9c Added int to size_t conversion. Added some static_asserts. 2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
9418d5311d Added safe conversion from size_t to int. 2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
31e7ef04ba Added a CuSparse matrix wrapper. 2023-05-12 08:23:18 +02:00
Kjetil Olsen Lye
858d8b189b Added CuVector with tests. 2023-05-12 08:23:18 +02:00
Torbjørn Skille
d5100fac23 start regression testing of WGRUPCON tests 2023-05-10 20:52:50 +02:00
Kjetil Olsen Lye
062d692c83 Added handles for cusparse and cublas. 2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
03a7fb6c9d Added error macros to check last CUDA error. 2023-05-09 15:20:34 +02:00
Kjetil Olsen Lye
bf9dd4e1dd Added safe call macros for CUDA, CuBlas and CuSparse. 2023-05-09 15:20:34 +02:00
Arne Morten Kvarving
60079dc065 gputests: missing device is a test failure 2023-05-09 12:27:41 +02:00
Kai Bao
c3f5d0c81c adding parallel tests and reference update for network modeling 2023-05-08 15:29:01 +02:00
Kai Bao
b9348ee435 try to honor the network balance tolerance
without considering the iteration number. Because of the different
implementaion from other simulators, it is difficult to honour
procedure-dependent parameters.
2023-05-08 10:43:49 +02:00
Kai Bao
bb7ed4d78e making sure to update the pressure when needing network balance 2023-05-08 10:43:49 +02:00
Atgeirr Flø Rasmussen
77d151e0b5 Refactor get_error_report() for more flexibility. 2023-04-25 10:33:20 +02:00
Torbjørn Skille
e98b26aa55 Remove two tests from regression testing
There are issues with both of these that should be fixed before these are used for regression testing
2023-04-13 15:55:39 +02:00
Markus Blatt
8142788b58
Merge pull request #4406 from Tongdongq/rocsparse
Add rocsparseSolver
2023-04-12 12:07:58 +02:00
Arne Morten Kvarving
f2983ac6af minimum dune version required is now 2.7 2023-04-12 09:41:23 +02:00
Tong Dong Qiu
ed8f37ec82 Initialize HIP/rocsparse in constructor 2023-04-06 13:14:19 +02:00
Tong Dong Qiu
eaef4b8c85 Update CMakeLists for rocm 2023-04-06 13:14:19 +02:00
Tong Dong Qiu
11ea024fbe Add test_rocsparseSolver 2023-04-06 13:14:19 +02:00
Bård Skaflestad
62f8a6433d
Merge pull request #4474 from tskille/regtest_pinch_multz-
Regression testing for PINCH and MULTZ- barrier
2023-03-30 15:16:44 +02:00
Tor Harald Sandve
a2ae7d5bed Fix resv for groups 2023-03-27 16:03:40 +02:00
Bård Skaflestad
7abfdc52e0 Refactor Construction of Analytic Aquifer Objects
In particular, split the 'static' aquifer object initialisation
of member function 'init()' into a new helper function

  initializeStaticAquifers()

This is in preparation of adding a similar function to handle
dynamic aquifer object initialisation from a restart file.  To that
end, also add a new member function

  createDynamicAquifers(episode_index)

containing the current implementation of beginEpisode().  Creating
the dynamic objects from a restart file then amounts to calling this
function with a different 'episode_index'.  As another aid to
maintainability, add a new templated member function

  createAnalyticAquiferPointer()

which forms 'unique_ptr<AquiferInterface>' objects for every known
type of analytic aquifer.  This, in turn, requires reordering the
parameters of the AquiferConstantFlux constructor to match those of
the existing Fetkovich and Carter-Tracy types.

Finally, split the calculation of the constant flux aquifer's total
flux rate out to a new helper function

  AquiferConstantFlux::totalFluxRate()
2023-03-09 18:04:55 +01:00
Arne Morten Kvarving
bd767923b3 fixed: remove opm-material from data update script 2023-03-06 12:02:09 +01:00
Arne Morten Kvarving
ac6e0d3e7e add restart serialization test for Inplace 2023-02-27 13:57:05 +01:00
Arne Morten Kvarving
e3d9ee9780 add restart serialization test for EclHysteresisTwoPhaseLawParams 2023-02-24 09:59:37 +01:00
Bård Skaflestad
d364b7b80c
Merge pull request #4479 from akva2/serialization_missing_perfdata
RestartSerialization: add missing PerfData
2023-02-22 15:53:42 +01:00
Arne Morten Kvarving
da4784b314 AquiferConstantFlux: add restart serialization support 2023-02-22 14:41:07 +01:00
Arne Morten Kvarving
8d339c464c PerfData: add serialization support 2023-02-22 13:59:59 +01:00
Kai Bao
7a67b16c3e addressing review comments for PR OPM/opm-simulators#4429 2023-02-21 15:27:05 +01:00
Torbjørn Skille
8714630cd7 Regression testing for PINCH and MULTZ- barrier
Both test cases are using PINCH + ALL in item 5. One case have
a MULTZ barrier the other not.
2023-02-21 08:20:54 +01:00
Bård Skaflestad
85a2703e88 Add Regression Test for NOPINCH Feature
Thanks a lot to [at]tskille for providing a test case.
2023-02-19 15:05:53 +01:00
Bård Skaflestad
b73440d794 Add Regression Test for JFUNC Feature
There are no such tests in the test suite and we've already had one
instance of the feature breaking during code refactoring.

Thanks to [at]tskille for providing the test case.
2023-02-17 17:46:44 +01:00
Bård Skaflestad
e861d72f78 Use Uniform Initialization
Avoids "most vexing parse" for non-MPI builds.
2023-02-16 17:32:04 +01:00
Arne Morten Kvarving
55e3c8fe27 added: parallel serialization restart test for spe1 2023-02-16 14:49:38 +01:00
Arne Morten Kvarving
8c3400f562 added: parallel support to HDF5File / HDF5Serializer 2023-02-16 14:49:38 +01:00
Arne Morten Kvarving
eb00299373 added: serialization restart test for spe1 2023-02-16 13:56:29 +01:00
Arne Morten Kvarving
a21d59977d SimulatorReport: add serialization support 2023-02-16 11:56:40 +01:00
Arne Morten Kvarving
f0ca3120ff SimulatorReportSingle: add serialization support 2023-02-16 11:56:40 +01:00
Arne Morten Kvarving
28e7da5468 BlackoilWellModelGeneric: add serialization support 2023-02-16 11:19:06 +01:00
Arne Morten Kvarving
90fbdcee0a WGState: add serialization support 2023-02-16 10:48:34 +01:00
Arne Morten Kvarving
b7a531b93a WellState: add serialization support 2023-02-16 09:43:39 +01:00
Arne Morten Kvarving
6d93b2d12f ALQState: add serialization support 2023-02-16 08:35:34 +01:00
Arne Morten Kvarving
b87bf2b3ae GroupState: add serialization support 2023-02-15 22:57:44 +01:00
Arne Morten Kvarving
7f36bac579 WellContainer: add serialization support 2023-02-15 21:55:19 +01:00
Atgeirr Flø Rasmussen
e1942d145f
Merge pull request #4437 from akva2/singlewellstate_serialize
SingleWellState: add serialization support
2023-02-15 15:29:08 +01:00
Arne Morten Kvarving
60a5273d0e SingleWellState: add serialization of dynamic state 2023-02-15 13:56:25 +01:00
Arne Morten Kvarving
0852fea8bd
Merge pull request #4463 from atgeirr/fix-link-error
Fix link and runtime errors when HAVE_DUNE_FEM is true.
2023-02-15 13:53:50 +01:00
Atgeirr Flø Rasmussen
dcd484b6cc Fix link and runtime errors when HAVE_DUNE_FEM is true. 2023-02-15 13:14:43 +01:00
Arne Morten Kvarving
482c32b117 SegmentState: add serialization support 2023-02-15 12:59:18 +01:00
Arne Morten Kvarving
87c242a468 EclTracerModel: add serialization of dynamic state 2023-02-14 19:15:14 +01:00
Arne Morten Kvarving
24798e68d5 EclGenericTracerModel: add serialization of dynamic state 2023-02-14 19:09:26 +01:00
Arne Morten Kvarving
d5f22dbc99 BlackoilAquiferModel: add serialization of dynamic state 2023-02-14 17:51:25 +01:00
Arne Morten Kvarving
a66fd75715 AquiferNumerical: add serialization of dynamic state 2023-02-14 16:15:25 +01:00
Arne Morten Kvarving
03f6309ff7 AquiferFetkovich: add serialization of dynamic state 2023-02-14 16:15:25 +01:00
Arne Morten Kvarving
51e5e61c39 AquiferCarterTracy: add serialization of dynamic state 2023-02-14 16:15:25 +01:00
Arne Morten Kvarving
1bec857445 EclGenericProblem: add serialization support 2023-02-14 15:36:24 +01:00
Arne Morten Kvarving
400dd0b794 add serialization test for FvBaseDiscretization::BlockVectorWrapper
this is where the primary solution is stored and is needed for
restart serialization.

this proxies for testing FvBaseDiscretization directly, as
FvBaseDiscretization requires a fully configured simulator to setup.
2023-02-14 14:45:54 +01:00
Bård Skaflestad
ce51f3378a
Merge pull request #4421 from akva2/blackoilprimaryvariables_serialize
BlackoilPrimaryVariables: add serialization support
2023-02-14 14:44:27 +01:00
Atgeirr Flø Rasmussen
ecfd928699
Merge pull request #4432 from akva2/add_hdf5serializer
added: HDF5 serializer
2023-02-14 14:25:45 +01:00
Arne Morten Kvarving
96b3478ae9 add serialization test for BlackoilPrimaryVariables 2023-02-14 14:24:36 +01:00
Arne Morten Kvarving
24fda63778 mark variables const 2023-02-14 13:48:24 +01:00
Arne Morten Kvarving
a825a060c3 EclGenericVanguard: add serialization support 2023-02-14 13:48:09 +01:00
Arne Morten Kvarving
4b07f6d010 added: HDF5Serializer
this takes the serialization data and stores it in a hdf5 file,
alternatively reads the data and deserializes.

will be used for restarting purposes
2023-02-14 13:15:43 +01:00
Arne Morten Kvarving
e5c2fcfaf2 added: HDF5File::list
lists a given HDF5 group
2023-02-14 13:15:43 +01:00
Arne Morten Kvarving
13a54bbdbb AdaptiveTimeSteppingEbos: add serialization support 2023-02-13 22:03:58 +01:00
Arne Morten Kvarving
5f6bc76512 PIDAndIterationCountTimeStepControl: add serialization support 2023-02-13 22:03:19 +01:00
Arne Morten Kvarving
1827de96a2 PIDTimeStepControl: add serialization support 2023-02-13 22:03:19 +01:00