Commit Graph

121 Commits

Author SHA1 Message Date
Arne Morten Kvarving
a32a32649d changed: put MILU in separate compile unit 2022-08-16 10:46:20 +02:00
Elyes Ahmed
5c2b60bcd0 rebasing 2022-07-28 20:40:34 +02:00
Atgeirr Flø Rasmussen
ffb09ee53e
Merge pull request #3937 from atgeirr/pressure-bhp-cpr
Pressure bhp cpr
2022-06-16 17:15:49 +02:00
Atgeirr Flø Rasmussen
2992ec25d8 Address issues raised in review. 2022-06-10 15:59:45 +02:00
hnil
4ead854b69 - taking pullrequest information into account
- Moving transfere level to be template of OwningTwolevelPrecontitioner
2022-06-08 17:03:27 +02:00
hnil
8f4cf8a952 removed compiler warnings 2022-06-08 17:03:27 +02:00
hnil
66c4a8c862 made resue interval separate paramter 2022-06-08 17:03:27 +02:00
hnil
141a816e5d new restart options 2022-06-08 17:03:25 +02:00
hnil
f3acfcde0b Adding functions for pressure system manipulation to well models.
Also add well-aware operator and transfer policy.
This will be used for CPR with custom operators.
2022-06-08 17:01:33 +02:00
Bård Skaflestad
e6dff88eb7 Temporarily Limit Block-Jacobi Partitioner to OpenCL Only
The block-Jacobi partitioner (commit e360c00b7) uses grid interfaces
that are only available in CpGrid and this blocks introducing other
grid managers such as ALUGrid.  Since the partitioner was only added
for OpenCL, guard special purposes accesses with HAVE_OPENCL.

This is a temporary measure and we will venture to restore the
partitioner later, although possibly restricted to CpGrid only.
2022-06-08 16:14:39 +02:00
Tong Dong Qiu
4db112cafa Use row_wise mode to build jacMatrix 2022-04-21 17:19:01 +02:00
Tong Dong Qiu
1a1bc24bef Delay creating sparsity pattern for jacobi Matrix 2022-04-21 17:19:01 +02:00
Tong Dong Qiu
2683019280 Bugfix: set vector size for MSwells was removed during refactoring 2022-04-21 17:19:01 +02:00
Tong Dong Qiu
1cec56fa68 Use implicit mode to build jacMatrix
Fix print variable
2022-04-21 17:19:01 +02:00
Tong Dong Qiu
550ce92902 Faster copying to jacMatrix 2022-04-21 17:19:01 +02:00
Tong Dong Qiu
61f693dbaf reenable normal opencl
Rebased
2022-04-21 17:18:54 +02:00
Tong Dong Qiu
e360c00b73 add block-jacobi partitioner option. Add block-jacobi matrix for use in OpenCL preconditioner
Rebased
2022-04-21 17:18:32 +02:00
Tong Dong Qiu
6465cf9cbb Add CPR preconditioner for openclSolver and
change raw pointers to vector for Matrix
2021-12-01 11:43:30 +01:00
Markus Blatt
50867bf23c Guard include of WellContributions.cpp 2021-11-17 19:23:46 +01:00
Markus Blatt
d2caf41037 Fix incomplete type ‘Opm::WellContributions’ compiler error (g++-8)
Fixes
```
In file included from opm-simulators/opm/simulators/flow/BlackoilModelEbos.hpp:53,
                 from opm-simulators/opm/simulators/flow/SimulatorFullyImplicitBlackoilEbos.hpp:26,
                 from opm-simulators/flow/flow_ebos_gaswater.cpp:28:
opm-simulators/opm/simulators/linalg/ISTLSolverEbos.hpp: In member function ‘bool Opm::ISTLSolverEbos<TypeTag>::solve(Opm::ISTLSolverEbos<TypeTag>::Vector&)’:
opm-simulators/opm/simulators/linalg/ISTLSolverEbos.hpp:265:56: error: incomplete type ‘Opm::WellContributions’ used in nested name specifier
                 auto wellContribs = WellContributions::create(accelerator_mode, useWellConn_);
                                                        ^~~~~~
```
2021-11-17 17:30:01 +01:00
Arne Morten Kvarving
e25caba8ed changed: refactor BDA well contributions
split in API specific classes for Cuda/OpenCL

this to
1) it's cleaner
2) it avoids pulling in openCL code in cuda classes which leads
to clashes between nvidia headers and opencl.hpp

there is still too much API specific things in interface between the
bda components to work through a virtual interface so we still have to cast
to the relevant implementation in various places.
2021-11-11 14:49:33 +01:00
Tong Dong Qiu
282f611f92 Make sure amgcl can be used without CUDA 2021-07-07 16:24:52 +02:00
Tong Dong Qiu
7c7911b9bc Allow to use amgcl when CUDA and OpenCL are not found 2021-07-07 16:24:51 +02:00
Tong Dong Qiu
5918c64b54 Add useWellConn parameter to WellContributions() 2021-07-07 16:24:51 +02:00
Markus Blatt
db0f19ba88 Determine index of pressure from model used.
Previously, the user had to specify it in the json file read from the
FlexibleSolver or 1 was used. Unfortunately, the index depends on the
model used and it seem rather opaque to a user what that index is.

With this commit we determine the pressure index from the model.
2021-06-10 16:19:18 +02:00
Arne Morten Kvarving
b7e2ad3bfe added: PropertyTree class
this is a thin wrapper around boost::property_tree
with this we avoid parsing property tree headers in all
simulator objects
2021-06-09 15:21:52 +02:00
Arne Morten Kvarving
29ae002a87 changed: avoid templating in setupPropertyTree
simply pass the required params to function instead.
2021-06-09 12:54:14 +02:00
Arne Morten Kvarving
a4c0af09d9 fixed: do not use Opm:: prefix when inside namespace Opm 2021-05-05 11:59:18 +02:00
Tong Dong Qiu
81c0a3d9f9 Simplified CPU fallback warnings 2021-03-12 11:15:02 +01:00
Giacomo Marchiori
b4aa28771f Added fpgaSolver 2021-03-12 11:14:59 +01:00
Tong Dong Qiu
748dc4ccb3 Reduced header inclusion, also moved WellContributions OpenCL initialization 2021-03-01 09:42:56 +01:00
Tor Harald Sandve
f924ac7ffe
Merge pull request #2933 from totto82/dunefem
WIP make Flow compile with dune-fem
2020-11-26 15:10:34 +01:00
Tor Harald Sandve
c4c0b7a756 Make it compile with dune-fem 2020-11-19 15:45:37 +01:00
Jose Eduardo Bueno
a9c2a684c6 Removed WellContributionsOCLContainer class (rebase) 2020-11-18 09:14:31 -03:00
tqiu
a372a1e4bd Added cmdline parameter --ilu-reorder-strategy 2020-10-19 11:33:32 +02:00
Bård Skaflestad
9a71bbe4b0 Move 'gridForConn' Into Cuda/OpenCL Block
It is only used within this context and produces a warning of the
form

  ISTLSolverEbos.hpp:128:25: warning: unused variable ‘gridForConn’

unless the build configures accelerator support.
2020-10-19 02:28:05 +02:00
Atgeirr Flø Rasmussen
dedbe78cee Copyright additions. 2020-10-12 17:06:11 +02:00
Atgeirr Flø Rasmussen
385880485a Fix logic of shouldCreateSolver(). 2020-10-11 22:46:02 +02:00
Atgeirr Flø Rasmussen
0a70d95bee Refactor shouldCreateSolver(). 2020-10-11 08:20:19 +02:00
Atgeirr Flø Rasmussen
1c208e9a92 Avoid unnecessary extra matrix manipulation.
When using the ParallelOverlappingILU0 it is not necessary to fix the overlap rows.
2020-10-10 10:09:23 +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
Joakim Hove
0565d6f402 Remove unused #include of exceptions 2020-09-21 11:12:15 +02:00
Arne Morten Kvarving
273d465c32 fixed: use the proper linear operator without wells in matrix in serial 2020-09-03 15:53:57 +02:00
Markus Blatt
e997d7b130
Merge pull request #2751 from ducbueno/opencl-stdwell-clean
AddStandardWell functionality in OpenCL backend
2020-09-02 22:02:05 +02:00
Jose Eduardo Bueno
56c1c0862c Added StandardWell functionality to OpenCL backend 2020-09-02 15:00:34 -03:00
Arne Morten Kvarving
7305f84351 use std::make_unique where applicable 2020-09-02 15:35:39 +02:00
Arne Morten Kvarving
941e4916f8 changed: remove SET_PROP macro usage 2020-08-27 14:02:05 +02:00
Arne Morten Kvarving
e8248b44ff changed: remove NEW_TYPE_TAG macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
914053ac3c changed: remove GET_PROP_VALUE macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
74fac38d85 changed: remove GET_PROP_TYPE / GET_PROP macro usage 2020-08-27 08:19:39 +02:00