Commit Graph
399 Commits
Author SHA1 Message Date
Arne Morten Kvarving a032c5a80e changed: put WellState in separate compile unit 2021-05-13 00:38:08 +02:00
Arne Morten Kvarving ca1a799e95 changed: put partially supported keywords in separate compile unit
avoid triggering full simulator rebuilds when updating
this list
2021-05-12 14:29:33 +02:00
Arne Morten Kvarving 306593af3b changed: put unsupported keywords in separate compile unit
avoid triggering full simulator rebuilds when updating
this list
2021-05-12 14:29:33 +02:00
Arne Morten Kvarving 7ff44d9093 ecltransmissibility: separate from typetag
this allows using explicit template instantation to only
compile this code per grid, not per simulator object
2021-05-12 12:10:29 +02:00
Arne Morten Kvarving 215a8b7c25 eclcpgridvanguard: split in typetag dependent and typetag-independent parts 2021-05-11 11:30:35 +02:00
Arne Morten Kvarving 3397cd6252 eclbasevanguard: split in template and non-template parts 2021-05-11 09:15:11 +02:00
Markus Blatt d462aee2f8 Merge pull request #3204 from akva2/collect_separate_compile_unit
CollectDataToIORank: move to separate compile unit
2021-05-07 08:55:47 +02:00
Joakim Hove 36cc9e8567 Add small class WellContainer to manage well data in WellState 2021-05-06 15:46:52 +02:00
Arne Morten Kvarving d4b67e9af0 TargetCalculator: move to separate compile unit
use explicit instantation to avoid some templates being
instanced a lot of places in a lot of objects.
2021-05-04 08:42:02 +02:00
Bård Skaflestad c0b68ea117 Merge pull request #3205 from akva2/relperm_compile_unit
RelpermDiagnostics: make templates private
2021-05-04 00:19:24 +02:00
Arne Morten Kvarving 0e2c61856f RelpermDiagnostics: make templates private
use explicit template instantation. to avoid rebuilding
this code over and over (minor), and to avoid includes in headers.
2021-05-03 20:39:37 +02:00
Arne Morten Kvarving 543dbe7114 CollectDataToIORank: move to separate compile unit
make it a template for grid types. this allows using
explicit template instantation and compile this code
only once per grid type, instead of once per simulator object.
2021-05-03 13:45:52 +02:00
Joakim Hove 8a78dc1c59 Add class GlobalWellInfo and use it from WellState 2021-05-03 13:28:28 +02:00
Arne Morten Kvarving cf06a322ec countGlobalCells: put non-template code in separate compile unit 2021-04-30 15:09:23 +02:00
Arne Morten Kvarving 541ebdde13 phaseUsageFromDeck: move to separate compile unit 2021-04-29 13:00:23 +02:00
Arne Morten Kvarving 0cb0971673 ParallelFileMerger: move to separate compile unit 2021-04-29 12:57:27 +02:00
Joakim Hove 8bae5e0127 Add class ALQState to manage the ALQ state in the WellState 2021-04-28 09:33:06 +02:00
Joakim Hove e1d117c59f Extract group state and create WGState to manage well & group state 2021-04-27 10:55:38 +02:00
Joakim Hove 7fecd9f433 Create new class GroupState to maintain runtime state of groups 2021-04-21 13:07:57 +02:00
Markus Blatt 13f62a718b Merge pull request #2998 from g-marchiori/fpgasolver-integration
Added fpgaSolver, requires Xilinx Alveo U280 FPGA board
2021-04-15 11:21:39 +02:00
Peter Verveer 1640c4afcf Implement a new keyword validator 2021-04-12 16:47:02 +02:00
Håkon Hægland 61e67b143d Adds a simple test case for gas lift.
Adds a simple test case for gas lift optimization. Currently this is
very simplistic and only covers a fraction of the gas lift optimization
code. The plan is to use this as a building block to add more tests
in the future.
2021-04-01 16:41:46 +02:00
Giacomo Marchiori a933d4da10 Modified CMakeLists.txt after comments by blattms.
Also, tentative changes to compile the FPGA library from a different module: this part needs to be revised because it assumes a fixed path for the OPM/FPGA module.
Modified CMakeLists_files.cmake to remove files moved to the OPM/FPGA module.
2021-03-12 11:15:02 +01:00
Giacomo Marchiori b4aa28771f Added fpgaSolver 2021-03-12 11:14:59 +01:00
Kai Bao 9ecdca75d9 Merge remote-tracking branch 'upstream/master' into new_numerical_aquifer 2021-03-11 14:08:42 +01:00
Tong Dong Qiu 688d8ff627 Shorten opencl kernel params, add source file for openclKernels 2021-03-03 13:09:24 +01:00
Kai Bao 6008aa8339 begining simulator code for numerical aquifer
most of the functionality is to collect data for summary output.
2021-02-22 23:15:26 +01:00
tqiu c8dca99fad Renamed fgpilu to ChowPatelIlu 2021-02-03 17:43:54 +01:00
tqiu 9f92a69037 Added CPU and GPU implementations of Fine-Grained Parallel ILU (FGPILU) 2021-01-12 15:21:19 +01:00
Atgeirr Flø Rasmussen d910d42f6e Only add AMG preconditioners to factory if sensible.
Also add test using a new operator class, that would not compile
without the change.
2020-12-17 14:54:59 +01:00
Markus Blatt 3996967344 Added a class with information and comunicator for parallel wells.
BlackoilWellModel now stores an instance of this class for each
well. Inside that class there is a custom communicator that only
contains ranks that will have local cells perforated by the well.
This will be used in the application of the distributed well operator.

This is another small step in the direction of distributed wells,
but it should be safe to merge this (note creation of the custom
communicators is a collective operation in MPI but done only once).
2020-12-03 09:29:43 +01:00
Jose Eduardo Bueno 09e38a38e9 Fixed CMakeLists_files.cmake 2020-11-19 15:41:59 -03:00
Jose Eduardo Bueno a9c2a684c6 Removed WellContributionsOCLContainer class (rebase) 2020-11-18 09:14:31 -03:00
Markus Blatt 64fa5a2b30 Merge pull request #2858 from Tongdongq/ilu-reorder-strategy
Added cmdline parameter --ilu-reorder-strategy
2020-11-17 09:35:12 +01:00
Joakim Hove da2bc2affd Refactor application of NNC / EDITNNC
- The edit manipulations from EDITNNC have already been applied to the NNC data
  from opm-common

- The NNC data structures are guaranteed to be ordered, both with cell1 <= cell2
  and the NNCs are in ascending order

- The NNC output to EGRID / INIT files is based on std::vector<NNCdata>
2020-11-10 16:59:30 +01:00
tqiu 0cdac39732 Removed deleted ILUReorder.cpp, added headers to CMake 2020-10-19 11:36:25 +02:00
tqiu d25405d39a Renamed parameter to OpenclIluReorder and moved error checking to BdaBridge constructor. 2020-10-19 11:36:25 +02:00
Atgeirr Flø Rasmussen 6155188a70 Remove unused file SimFIBODetails.hpp. 2020-10-15 16:35:35 +02:00
Bård Skaflestad b6e0bd1b7b Add Calculator for Connection/Well Productivity Index
Switches between using the logarithmic and unit scaling factor based
on whether or not the well has an explicit, positive drainage radius
(WELSPECS item 7).  Does presently not include the D factor.

Add a set of unit tests to exercise the facility.
2020-10-13 15:42:35 +02:00
Atgeirr Flø Rasmussen 842afd312e Refactor setupPropertyTree(). 2020-10-11 09:24:05 +02:00
Atgeirr Flø Rasmussen 65817c9068 Removed old amg/cpr code that can be replaced.
The replacement consists of using the FlexibleSolver code.
2020-10-08 15:12:41 +02:00
Jose Eduardo Bueno 1ba81cece2 First commit 2020-09-24 16:35:36 -03:00
Markus Blatt 575245d785 Factored out logging setup and deck reading from class Main.
These codes are reimplemented in the ebos simulator and should
be reused, instead. This commit factilitates this and starts
reusing the logging setup code in ebos. Hence reduces code duplication.
2020-08-27 09:05:09 +02:00
Markus Blatt faaee51d09 Merge pull request #2682 from Tongdongq/openclSolver
Added openclSolver
2020-07-10 13:38:32 +02:00
T.D. (Tongdong) Qiu 5971a7ae9e Split WellContributions into .cpp and .cu 2020-07-10 11:13:55 +02:00
T.D. (Tongdong) Qiu ab49f60eca Added opencl.hpp to define variables and import opencl
Added opencl.cpp to get OpenCL error strings
2020-07-07 13:46:47 +02:00
T.D. (Tongdong) Qiu 91591abd56 Removed removed file from cmake install list 2020-07-07 11:42:00 +02:00
T.D. (Tongdong) Qiu 8913e1d057 Make sure OpenCL can be used without CUDA 2020-06-25 18:44:49 +02:00
Atgeirr Flø Rasmussen c2c79f0903 Move well operators to separate file.
Also introduce new class WellModelAsLinearOperator making a well model
into an actual Dune::LinearOperator, this prevents the TypeTag dependent
type from leaking into the type of the WellModelMatrixAdapter instantiation.

As a side benefit, the adapter classes can now adapt (i.e. combine with a
matrix operator) any linear operator.
2020-06-25 10:13:12 +02:00
T.D. (Tongdong) Qiu 98ddf47b44 Added block_size template to BdaSolvers and BILU0 2020-06-25 09:39:55 +02:00