Commit Graph

552 Commits

Author SHA1 Message Date
Arne Morten Kvarving
8e7de83218 BlackoilModelEbos: put Nldd solver in separate class 2023-07-05 13:40:13 +02:00
Arne Morten Kvarving
241c1d3279 BlackoilModelEbos: use value in localAccumulatedReports
cheap to copy and aids refactoring
2023-07-05 10:26:14 +02:00
Arne Morten Kvarving
184c6128cd BlackoilModelEbos: add acccessor for component names 2023-07-05 10:26:14 +02:00
Arne Morten Kvarving
0c8446eed3 BlackoilModelEbos: add acccessor for model parameters 2023-07-05 10:26:14 +02:00
Arne Morten Kvarving
6f726049ce BlackoilModelEbos: add accessor to linear solve setup time
to allow for external usage
2023-07-05 09:38:08 +02:00
Arne Morten Kvarving
cee8dc4c6e BlackoilModelEbos: make getMaxCoeff public
to make it possible to call externally
2023-07-05 09:38:08 +02:00
Arne Morten Kvarving
8fc2b83948 BlackoilModelEbos: make initialLinearization public
to make it possible to call externally
2023-07-05 09:38:08 +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
c6cd74270b BlackoilModelEbos: enumerate solver approach for NLDD
adds command line validation and allows us to remove an assert on
user provided data
2023-07-03 15:51:07 +02:00
Arne Morten Kvarving
8eb5e173c3 BlackoilModelEbos: put Gauss-Seidel NLDD solve in separate method
increases readability of nonlinearIterationNldd
2023-07-03 14:53:12 +02:00
Arne Morten Kvarving
faa4bb25d7 BlackoilModelEbos: put jacobi NLDD solve in separate method
increases readability of nonlinearIterationNldd
2023-07-03 14:53:12 +02:00
Arne Morten Kvarving
cf6697b630 BlackoilModelEbos: make domain ordering measure configurable 2023-07-03 12:24:41 +02:00
Arne Morten Kvarving
e17b696a7e BlackoilModelEbos: put selection of domain order in separate method
to increase readability of nonlinearIterationNldd code
2023-07-03 12:24:41 +02:00
Arne Morten Kvarving
c7f9d2d357 put initial linearization in separate method
to share code between newton and nldd
2023-07-03 10:51:10 +02:00
Arne Morten Kvarving
3656196684 put calculation of max coefficient in separate method
to reduce code duplication
2023-07-03 10:51:10 +02:00
Bård Skaflestad
8c6a92356f
Merge pull request #4621 from vkip/use_mb_from_tuning
Use mass balance limit (XXXMBE) from TUNING with --enable-tuning=true
2023-06-30 13:04:49 +02:00
Arne Morten Kvarving
64ce4a206e
Merge pull request #4729 from akva2/partitioncells_reorg
PartitionCells: move all related code to compile unit
2023-06-30 13:02:20 +02:00
Arne Morten Kvarving
b95b342517 partitionCells: drop indent for namespace 2023-06-30 12:14:47 +02:00
Arne Morten Kvarving
e8f04eec68 changed: move all partitionCells code to partitionCells.cpp 2023-06-30 12:14:11 +02:00
Arne Morten Kvarving
35bb329022 put BlackoilModelEbos::ComponentName in separate header
more tidy and potentially easier to reuse
2023-06-30 11:18:27 +02:00
Arne Morten Kvarving
4201d94241 BlackoilModelEbos: remove unused includes 2023-06-30 09:53:59 +02:00
Arne Morten Kvarving
034f20c37e BlackoilModelEbos: include tuple 2023-06-30 09:53:50 +02:00
Arne Morten Kvarving
e008c76a80 BlackoilModelEbos: output error message using OpmLog 2023-06-30 08:57:14 +02:00
Arne Morten Kvarving
e88c44eaaf BlackoilModelEbos: remove unused member function 2023-06-30 08:57:14 +02:00
Arne Morten Kvarving
0a670f3694 BlackoilModelEbos: use constexpr where appropriate 2023-06-30 08:57:14 +02:00
Arne Morten Kvarving
5874377937 BlackoilModelEbos: prefer using 2023-06-30 08:57:14 +02:00
Arne Morten Kvarving
b29f24c9be BlackoilModelEbos: use Parallel::Communication type alias 2023-06-30 08:57:14 +02:00
Vegard Kippe
a80f44a3be Updating variable name in SimulatorFullyImplicitBlackoilEbos.hpp and adding tests 2023-06-29 15:20:38 +02:00
Vegard Kippe
65f73f5462 Chaning to new TUNING semantics (opm-common pr3522) 2023-06-29 15:13:10 +02:00
Vegard Kippe
029e3c8616 Removing some whitespace 2023-06-29 15:13:10 +02:00
Vegard Kippe
462ec3153d Use mass balance limit from TUNING 2023-06-29 15:12:51 +02:00
Bård Skaflestad
9de535098f
Merge pull request #3764 from atgeirr/aspin
Add nonlinear solver based on domain decomposition method
2023-06-28 15:49:56 +02:00
Arne Morten Kvarving
adfe80cba0 avoid dead stores 2023-06-27 13:40:54 +02:00
Atgeirr Flø Rasmussen
98b7f4d986 Fix header order and remove dead code. 2023-06-26 17:37:13 +02:00
Atgeirr Flø Rasmussen
424ee2174d Make sure micp and energy fixes are not discarded.
Also do not change getting intensive quantities in convergence
checks.
2023-06-26 11:18:57 +02:00
Atgeirr Flø Rasmussen
15c1e38533 Silence unused variable/parameter warnings. 2023-06-23 16:24:18 +02:00
Atgeirr Flø Rasmussen
cbfe25d0f0 Add NLDD nonlinear solver option. 2023-06-23 16:24:18 +02:00
Vegard Kippe
d6d4b94b25 Parameterized iteration limits in network solver 2023-06-16 12:15:06 +02:00
Atgeirr Flø Rasmussen
81bda54c67
Merge pull request #4709 from blattms/omp-allow-oversubscribe
OpenMP: allow oversubscribing to prevent only 1 thread on some hardware
2023-06-14 13:58:12 +02:00
Markus Blatt
2906d7157d Allow oversubscribing OpenMP threads.
There is a strange interaction when using MPI and OpenMP on some
hardware/MPI implementations. I a serial run omp_get_num_procs() would
return the number of processors but when started under mpirun it would
always return 1.

With this we now allow users to use any amount of threads.
2023-06-14 12:03:56 +02:00
Markus Blatt
ae1f319c10 [bugfix] Honor command line --threads-per-process
While we reported that we used the number of threads that were passed
on the command line, we never really used it for OpenMP but always
sticked to two unless environment variable OMP_NUM_THREADS was set.

Note that because the ThreadManager in opm-models would always use the
command line option and hence the linearizer would use that number of
threads.

Please note that the only use of OpenMP in opm-common (volume
calculation in EclipseGrid) is not effected by this as it happens
before we set the number of OpenMP threads.
2023-06-14 12:02:25 +02:00
Atgeirr Flø Rasmussen
7f3635145b Make solver object a member of SimulatorFullyImplicitBlackoilEbos. 2023-06-14 10:01:53 +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
Kjetil Olsen Lye
c478e46c8d Setting CUDA device for MPI runs. 2023-05-31 21:47:46 +02:00
Bård Skaflestad
3549d85d83
Merge pull request #4568 from totto82/2psolvent
Add gaswater solvent
2023-05-30 11:36:16 +02:00
Kai Bao
23c0126095
Merge pull request #4640 from steink/ms_pressure_eq_derivatives
Update of multisegment well pressure equations - testing
2023-05-26 22:57:23 +02:00
Bård Skaflestad
3c643dba13 Don't Provide Deck Accessors in FlowMainEbos
Following commits f4f8c033d and c7016854d (PR #4286), the "vanguard"
no longer maintains an internal Deck data member.  Don't pretend
that it does by providing member functions to access that data
member.  If someone tries to actually call these member functions
then they will get an unfriendly diagnostic message and a build
failure.
2023-05-26 17:12:30 +02:00
Tor Harald Sandve
7cf3f69cf9 Add gaswater solvent
Fix some places that assumed 3p + solvent
2023-05-26 16:24:38 +02:00
Tor Harald Sandve
1592ef8bd2 solvent + foam simulator 2023-05-24 16:03:09 +02:00
Stein Krogstad
3beef758e4
Merge branch 'OPM:master' into ms_pressure_eq_derivatives 2023-05-24 13:35:11 +02:00