Commit Graph

126 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
3c4dd1f3b7 Avoid illegal combination of options.
NLDD requires --matrix-add-well-contributions=true for now.

Also: minor improvement to well rank and subdomain output clutter.
2024-01-24 14:19:07 +01:00
Arne Morten Kvarving
873102e9ea added: RST CONV support for polymer, solvent and brine 2024-01-22 09:58:06 +01:00
Arne Morten Kvarving
be84969338 added: hook up RPTRST CONV output to restart file if requested 2024-01-16 12:58:02 +01:00
Tor Harald Sandve
20fb8fa699 Fix minimum newton iteration
We also change the default to 2 to keep the same results
2024-01-11 09:17:50 +01:00
Bård Skaflestad
c0c96123bc Add Support for Writing NLDD-Like Partitions in Parallel
This commit adds a new (hidden) debugging option,

    DebugEmitCellPartition (--debug-emit-cell-partition)

which, when set, will cause each rank to write a three-column text
file of the form

    MPI_Rank  Cartesian_Index  NLDD_Domain_ID

into the directory

    partition/CaseName

of the run's output directory.  That file will be named according to
the process' MPI rank, so the first column will be the same as the
file name.

The option is primarily intended for debugging the NLDD partitioning
scheme, so is mostly reserved for runs with low MPI sizes (e.g.,
less than 20).

While here, also make the MPIPartitionFromFile helper class aware of
this format so that we can use concatenated output files as an input
to the MPI partitioning algorithm for repeatability.
2023-11-17 09:17:46 +01:00
David Landa Marban
bc03821d57 Support for mechanical dispersion 2023-11-16 16:55:01 +01:00
Bård Skaflestad
e2ad737848 Make Number of Initial Global Iterations Configurable
The NLDD solver would always take one global non-linear (Newton)
iteration before starting the local non-linear iterations.  This
commit introduces a new command-line parameter,

    --nldd-num-initial-newton-iter (NlddNumInitialNewtonIter)

which allows the user to configure this value at runtime.  The
default value, 1, preserves the current behaviour.
2023-10-10 18:29:05 +02:00
Atgeirr Flø Rasmussen
cede2b4add Improving generality and output of hybrid approach. 2023-09-04 13:13:52 +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
Arne Morten Kvarving
290c783f83 SimulatorFullyImplicitBlackoilEbos: remove unused member 2023-08-16 08:58:08 +02:00
Arne Morten Kvarving
82ba00b4ba remove accidentially left-over member 2023-08-04 15:34:05 +02:00
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
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
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
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
Atgeirr Flø Rasmussen
7f3635145b Make solver object a member of SimulatorFullyImplicitBlackoilEbos. 2023-06-14 10:01:53 +02:00
Arne Morten Kvarving
f2983ac6af minimum dune version required is now 2.7 2023-04-12 09:41:23 +02:00
hnil
dedda84a2b fixed review comments 2023-03-22 19:17:22 +01:00
hnil
e1c4a73c43 -- removed double evaluation of processLocalData
-- separated fluid in place work from other cell based data
-- added some timing macros for better preformance overview
2023-03-22 11:55:37 +01:00
Arne Morten Kvarving
ebd53ee72d move StepReport into ConvergenceReport.hpp
there is no reason for this to be typetag dependent
2023-03-02 12:37:13 +01:00