Commit Graph

602 Commits

Author SHA1 Message Date
Kai Bao
83bbe89342 LocalWellSolveControlSwitching default to be false 2023-09-29 10:55:19 +02:00
Stein Krogstad
035d216641 adding function iterateWellEqWithSwitching
when we do the local solve for well equations, control/status will be
updated during the iteration process, such that the converged well gets
correct control/status regarding to the current reservoir state.

various change in the other parts of the code were made to make the
function work as intended.
2023-09-29 10:51:04 +02:00
Markus Blatt
81c9594f5d Include name of missing OPM restart file in error.
Otherwise it is hard to tell for the (newbie?) user what went wrong.
2023-09-14 16:10:42 +02:00
Bård Skaflestad
a2d43cd0f5 Implement Interior Cell Counts for Grid Views
This is mostly to prepare for implementing partitionCells() for
grid views instead of grids.
2023-09-12 12:37:10 +02:00
Atgeirr Flø Rasmussen
87b9dd3ec2
Merge pull request #4837 from bska/remove-unused-code
Remove Unused Functions
2023-09-06 09:09:54 +02:00
Bård Skaflestad
e6c2413d05 Remove Unused Functions
These functions became unused in commits 952ccf8338 and f027262ec4,
but their definitions remained in place.  We no longer need them.
2023-09-05 19:03:43 +02:00
Atgeirr Flø Rasmussen
8900962fd5
Merge pull request #4827 from jcbowden/damaris-fix-for-deadlock
Damaris fix for deadlock at end of simulation when run with Damaris
2023-09-05 14:28:32 +02:00
Atgeirr Flø Rasmussen
cede2b4add Improving generality and output of hybrid approach. 2023-09-04 13:13:52 +02:00
Josh Bowden
6e4f3bd37e added changes as discussed in PR 4827 2023-09-01 18:28:03 +02:00
Atgeirr Flø Rasmussen
efa50c3640 Check for multiple solvers before trying to use them. 2023-09-01 13:18:09 +02:00
Franz Georg Fuchs
6ee90b3f8f Support for multiple linear solvers. 2023-09-01 13:18:06 +02:00
Atgeirr Flø Rasmussen
583fb902d2 Guards communication parts inside HAVE_MPI. 2023-09-01 11:19:16 +02:00
Atgeirr Flø Rasmussen
99fca58dca Improvements from review. 2023-09-01 08:48:11 +02:00
Josh Bowden
84d3530fd9 fix for deadlock at end of simulation when run with Damaris and test for whether Damaris can be run as Damaris requires at least 2 MPI ranks (one for simulation and the other as to run Damaris i/o) 2023-08-31 15:51:34 +02:00
Atgeirr Flø Rasmussen
06c706e7d6 Also copy flags, and helper function with test. 2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
151eac9110 Copy overlap data after local solve.
Also update intensive quantities in overlap afterwards.
2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
e1dd2bf148 Add forceSerial parameter to ISTLSolverEbos.
Used for single-domain solves.
2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
622103a367 Avoid collective operation in single-domain context. 2023-08-31 13:01:50 +02:00
Atgeirr Flø Rasmussen
609dfd6051 Only owned cells should be part of NLDD partitions. 2023-08-31 13:01:28 +02:00
Bård Skaflestad
b772d685d3
Merge pull request #4781 from totto82/addToEvent
Include production/injection update as timestepping event
2023-08-23 15:40:38 +02:00
Vegard Kippe
f762711111 Addressing review comment (removed blank line and updated SaveStep docstring) 2023-08-22 17:11:54 +02:00
Vegard Kippe
ac27c5fc86 Extended serialization to have negative stride mean 'only save last' + allow loading from different file than saving to. 2023-08-22 14:16:20 +02:00
Atgeirr Flø Rasmussen
ecfe98dd3d
Merge pull request #4758 from hnil/subdomain_updates
moved fully implicit calls to opm-simulators
2023-08-18 08:18:58 +02:00
Markus Blatt
b4e7a4fc85
Merge pull request #4770 from akva2/eclproblem_cleanup_timestepping
EclProblem: cleanup time stepping related members
2023-08-17 11:19:55 +02:00
Arne Morten Kvarving
290c783f83 SimulatorFullyImplicitBlackoilEbos: remove unused member 2023-08-16 08:58:08 +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
368eac1078 EclActionHandler: mark method const 2023-08-15 12:11:33 +02:00
Arne Morten Kvarving
7da3c96247 EclActionHandler: fix indent 2023-08-15 12:10:51 +02:00
Arne Morten Kvarving
dd1359bcf0 changed: move EclActionHandler to opm/simulators/flow
no opm-models usage
2023-08-15 12:10:01 +02:00
Bård Skaflestad
0960494aeb
Merge pull request #4794 from akva2/avoid_segfault_in_cleanup
fixed: avoid segfault in cleanup if simulator has not been set up
2023-08-15 11:57:26 +02:00
Arne Morten Kvarving
19f446a7a5 fixed: avoid segfault in cleanup if simulator has not been set up 2023-08-15 09:51:41 +02:00
Arne Morten Kvarving
92fa9577da consistently use std::size_t 2023-08-15 09:32:10 +02:00
Arne Morten Kvarving
b0f1e5d3f5 move output error log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
e2d4bae78d move output of fip reservoir log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
daced47301 move output of fip log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
f5985ff02f move output of injection log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
c9b703f40d move output of production log to LogOutputHelper 2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
91a4701fa4 added: add dedicated class for output of logs
start by moving output of cumulative logs to the new class
2023-08-14 11:44:32 +02:00
Arne Morten Kvarving
0883d46d50 rename ISTLSolverEbosWithGpu to ISTLSolverEbosBda
BDA also includes CPU (amgcl) solvers
2023-08-11 11:00:07 +02:00
Arne Morten Kvarving
896cb8484d added: option to disable the BDA solvers 2023-08-11 11:00:07 +02:00
hnil
07fb18422d hopefully fixed compilation and linking problems with WITHGPU 2023-08-11 11:00:07 +02:00
Tor Harald Sandve
8083765a65 Include production/injection update as timestepping event 2023-08-08 12:19:36 +02:00
Arne Morten Kvarving
82ba00b4ba remove accidentially left-over member 2023-08-04 15:34:05 +02:00
hnil
59de509105 -- moved fully implict related updates to FIblackoil
-- changed spesicic nldd calls to use subDomain instead of gridview
(-- clang formated FIBlackoil)
2023-07-26 11:07:26 +02:00
Markus Blatt
f20716eaf3 Rename LinearTimeSteppingBreakdown to TimeSteppingBreakdown. 2023-07-25 15:10:07 +02:00
Markus Blatt
943d84c836 Don't write out of bounds (fixes fallout from PR #4750)
While we never use the data receive, we should still not write beyond
arrays as this may create problems.
2023-07-24 16:04:15 +02:00
Markus Blatt
118dfdf041 Move MPI process check to *-cpp file. 2023-07-19 14:05:19 +02:00
Markus Blatt
7551229e77 Do a graceful exit instead of MPI_Abort for expected exceptions.
Instead of unconditionally issuing MPI_Abort if we encounter a fatal
exception, we try to test whether all processes have experienced this
exception and if this is the case just terminate nomally with a exit
code that signals an error. We still use MPI_Abort if not all
processes get an exception as this is the only way to make sure that
the program aborts.

This approach also works around issues in some MPI implementations
that might not correctly return the error.

Multiple messages like this are gone now:
```
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 1 in communicator MPI_COMM_WORLD
with errorcode 1.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
[smaug.dr-blatt.de:129359] 1 more process has sent help message help-mpi-api.txt / mpi-abort
[smaug.dr-blatt.de:129359] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
```

Bu we still see something like this:
```
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

  Process name: [[35057,1],0]
  Exit code:    1
--------------------------------------------------------------------------
```
2023-07-19 13:44:12 +02:00
Markus Blatt
fc9b1cccce Improve error message when time step is cut too often/much.
Changes
```
Program threw an exception: [/home/mblatt/src/dune/opm/opm-simulators/opm/simulators/timestepping/AdaptiveTimeSteppingEbos.hpp:586] Solver failed to converge after cutting timestep 11 times.
```
to
```
Simulation aborted: Solver failed to converge after cutting timestep 11 times.
```

Which seems more user friendly.
2023-07-12 16:18:29 +02:00