Commit Graph
11257 Commits
Author SHA1 Message Date
Markus Blatt 7ed960b6d1 Use normal pointer to assembled matrix. 2020-05-13 12:23:20 +02:00
Markus Blatt ddd947bf0a Use correct matrix for flexible solver when parallel.
In this case matrix_ is a nullptr and noGhostMat_ is the optimized
matrix to use. Before this commit we experienced a segmentation fault
as the nullptr was dereferenced and passed to the solver.
2020-05-12 19:06:12 +02:00
Markus Blatt 1f177b33e7 Use communicator to decide whether this is a truly parallel. 2020-05-12 12:46:04 +02:00
Markus Blatt 1ff1f24fbb Fix when the matrix with no ghosts will be used. 2020-05-12 12:46:04 +02:00
Markus Blatt e8b79b2b63 Prevent matrix copy in serial run. 2020-05-12 12:46:04 +02:00
Markus Blatt 357469dc21 Only extract overlap and interior information if needed.
That is, if actually set up the additional matrix with no ghosts.
2020-05-12 11:52:19 +02:00
Markus Blatt aa54b4d8db Remove unused weight_filename from json file. 2020-05-12 11:52:19 +02:00
Markus Blatt 47acb6ecb3 Make flexible solvers and CPR accessible for flow binary.
Previously, one had to call a seperate binary called
flow_blackoil_dunecpr. Unforntunately, that was only built if users
requested that the tests (`-DBUILD_TESTING=ON`) and the flow
variants (`-DBUILD_FLOW_VARIANTS=ON`) should be built. In addition
it would use a slightly different nonlinear solver implementation.

With this commit flow can be asked to either use
CPR (`--use-cpr=true --matrix-add-well-contributions=true`) or to use
the flexible solvers bx setting the `--linear-solver-configuration`
option. In all other cases the usual solver implementations are still
used.

Note that the flexible solvers still need
`--matrix-add-well-contributions=true` and hence cannot cope with
multi-segment wells.
2020-05-12 11:52:19 +02:00
Markus Blatt 71b234ec54 Make CprReuseSetup always use same default value.
The default was 0 for flow and 3 for flow_blackoil_dunecpr. Now we
always use 3. This is safe as it will not be used for any other
solvers than the flexible ones.
2020-05-12 11:52:19 +02:00
Markus Blatt 5b4acd5417 Do not query wells for solver if it is actually not needed. 2020-05-12 11:52:19 +02:00
Markus Blatt d54d69df25 Merge pull request #2610 from blattms/fix-write-matrix-dune-2,7
For DUNE 2.7 and up we need to specialize for Opm:MatrixBlock
2020-05-12 11:50:21 +02:00
Markus Blatt 19bd9cea65 for DUNE 2.7 and up we need to specialize for Opm:MatrixBlock
as there already is a specialization for an arbitrary Block
and that one leads to compile errors because we redefine it
in OPM (and miss some other specializations for Opm:MatrixBlock,
e.g. isNumber).
2020-05-11 21:29:47 +02:00
Joakim Hove b5fda287d4 Merge pull request #2555 from hakonhagland/python_simulators3
Python bindings for the blackoil simulator (simplified).
2020-05-11 18:55:04 +02:00
Bård Skaflestad e786c713fb Merge pull request #2600 from totto82/improve_msw_convergence_clean
compute initial volume fractions on the well copies
2020-05-11 17:45:37 +02:00
Håkon Hægland eda0475459 Install Python module as opm.simulators
Install Python module as opm.simulators and not
opm.simulators.simulators. There is currently no need for two levels of
nesting.
2020-05-11 15:03:17 +02:00
Håkon Hægland 4bb7048ba2 Fixed missing prefix for install destination.
The variable PYTHON_INSTALL_PREFIX was not defined, which caused
"make install" to install to a wrong directory. We set
PYTHON_INSTALL_PREFIX such that the Python module is installed the same
place as the Python modules from opm-common.
2020-05-11 15:03:17 +02:00
Håkon Hægland f94553c5a7 Python bindings for the blackoil simulator.
A simplified version of PR #2518 that uses a deck filename to construct
the simulator.

After private discussion with @joakim-hove it was decided that the
construction of the blackoil simulator from Python using deck,
ecliseState, schedule and summaryConfig as constructor arguments from
\#2518 should be replaced by a constructor taking only the deck filename
as parameter.

A rewrite of the Python bindings for the blackoil simulator using
pybind11 as introduced in PR #2127. The new version uses the
refactored flow.cpp introduced in PR #2516 and thus avoids duplication
of the code in simulators.cpp.

This PR will be the starting point for implementing the Python bindings
introduced in PR #2403.
2020-05-11 15:03:17 +02:00
Joakim Hove b03609317f Merge pull request #2606 from bska/fix-missing-feature-diagnostics
Remove 'MAXVALUE' From List of Missing Features
2020-05-11 09:37:06 +02:00
Bård Skaflestad 34b750336e Remove 'MAXVALUE' From List of Missing Features
We've supported that operator for quite some time.
2020-05-10 14:38:17 +02:00
Tor Harald Sandve 904353367d compute initial volume fractions on the well copies also 2020-05-08 19:29:20 +02:00
Atgeirr Flø Rasmussen 7beabdb9fb Merge pull request #2599 from atgeirr/improve-matrix-output
Improvements to matrix writing facility.
2020-05-08 15:41:33 +02:00
Atgeirr Flø Rasmussen 329036612b Enable matrix dumping also without MPI.
Also remove the need for the reinterpret_cast by adding some extra
implementation details for more general block matrices.
2020-05-08 13:32:36 +02:00
Atgeirr Flø Rasmussen 1e0b1b4a2b Merge pull request #2598 from atgeirr/timestepreport-revised
Add writing detailed performance report
2020-05-08 12:41:23 +02:00
Atgeirr Flø Rasmussen d108f9afa6 Avoid file-ending starting with S or A to not confuse comparison program. 2020-05-08 11:56:52 +02:00
Atgeirr Flø Rasmussen cf7b258f72 Minor adjustments from review. 2020-05-08 09:21:25 +02:00
Atgeirr Flø Rasmussen 561bec4a64 Make CASENAME.STEPINFO the name of the step info report file. 2020-05-07 22:29:01 +02:00
Atgeirr Flø Rasmussen 9458357009 Use = rather than += when appropriate for reports. 2020-05-07 22:09:17 +02:00
Atgeirr Flø Rasmussen 9dd2275af9 Remove seconds and add timestep to ITERINFO report. 2020-05-07 21:19:31 +02:00
Atgeirr Flø Rasmussen 769028b591 Remove 'verbosity' member and reorganize. 2020-05-07 21:00:39 +02:00
Atgeirr Flø Rasmussen 8dd53a38e9 Refactor SimulatorReport system.
Now SimulatorReport object contains a vector of SimulatorReportSingle objects,
for both successful and failing steps.
2020-05-07 16:13:39 +02:00
Atgeirr Flø Rasmussen cfdb2b9be6 Modifications of formatting, compile fix. 2020-05-07 15:04:20 +02:00
hnil 0f33835e67 added writing of detailed performance report 2020-05-07 11:37:24 +02:00
Atgeirr Flø Rasmussen 9476dfc35a Merge pull request #2594 from atgeirr/writematrix-revised
Add a writeSystem() helper and use it to write system matrices.
2020-05-07 09:07:07 +02:00
hnil d275242b01 Add a writeSystem() helper and use it to write system matrices.
Triggered only when using the flexible solver and a solver verbosity > 10.
2020-05-06 16:56:30 +02:00
Bård Skaflestad a64f660bff Merge pull request #2589 from alfbr/group-tests5
Group tests5
2020-05-05 19:58:13 +02:00
Alf Birger Rustad 090d1467e7 Fix typo 2020-05-05 18:15:19 +02:00
Markus Blatt d26c993d86 Merge pull request #2579 from akva2/quell_dep_warning_boost_1.71
quell deprecation warnings with boost 1.71
2020-05-05 17:29:33 +02:00
Markus Blatt 3f65235935 Merge pull request #2591 from atgeirr/fix-parameter-setup
Do not run setupParameter_() twice for the static-typed sims.
2020-05-05 17:27:44 +02:00
Atgeirr Flø Rasmussen 9357919201 Do not run setupParameter_() twice for the static-typed sims. 2020-05-05 16:19:10 +02:00
Atgeirr Flø Rasmussen 7dbbc0f2e5 Merge pull request #2588 from totto82/addMinMaxSupportGCONSALE
Implement min/max for GCONSALE
2020-05-05 15:46:36 +02:00
Tor Harald Sandve 85e95fb87d Implement min/max for GCONSALE
Only default action RATE is implemented for violation of maximum sales target
2020-05-05 14:24:17 +02:00
Markus Blatt c6fe4c7bab Merge pull request #2569 from blattms/prevent-cmake-error-for-cuda-g++-master
Prevent Cmake error for CUDA with incompatible c++ compiler.
2020-05-05 13:32:10 +02:00
Atgeirr Flø Rasmussen 859db45e45 Merge pull request #2590 from totto82/fixSolventRein
Fix solvent reinjection when different reinjection group is given
2020-05-05 11:36:50 +02:00
Tor Harald Sandve f33737afc4 Fix solvent reinjection when different reinjection group is given 2020-05-05 10:46:49 +02:00
Alf Birger Rustad 0b7e9489a6 Update data for 9_3E/D cases. 2020-05-05 09:58:09 +02:00
Alf Birger Rustad 3b9f8bffd6 Added 9_3D/E cases to testing. 2020-05-05 09:54:44 +02:00
Arne Morten Kvarving fa5c4a8573 Merge pull request #2586 from atgeirr/fix-tag-for-init
Ensure that the typetag used for initialization is correct.
2020-05-04 11:12:44 +02:00
Atgeirr Flø Rasmussen f0b1ee76b8 Ensure that the typetag used for initialization is correct.
Without this, properties set in the static variants of flow such as
flow_blackoil_dunecpr.cpp will be honored in the run. However, the
text for '--help' and the property printout in the .DBG file will not
reflect the true type tag, but the default.

This bug was added during the recent refactoring of all Flow variants
to use the same initialization and setup code.
2020-05-04 08:52:49 +02:00
Joakim Hove 1885426f3c Merge pull request #2573 from joakim-hove/segdist-refactor
Update connection <-> segment implementation
2020-05-01 08:52:58 +02:00
Bård Skaflestad e2c85db9c3 Merge pull request #2585 from alfbr/group-tests4
Group tests4
2020-04-30 19:02:14 +02:00