Commit Graph

62 Commits

Author SHA1 Message Date
Arne Morten Kvarving
dcd739fa09 BlackoilModel: add impl file 2025-01-15 11:51:39 +01:00
Arne Morten Kvarving
653cdfc247 BlackoilModel: move to has-a instead of is-a modelling of penalty cards 2025-01-14 06:26:52 +01:00
Arne Morten Kvarving
7590f015bf BlackoilModel: make wasSwitched_ private 2025-01-13 14:20:16 +01:00
Arne Morten Kvarving
c909283288 BlackoilModel: move properties to separate header 2025-01-13 11:34:14 +01:00
Lisa Julia Nebel
9f4fdd09fa Throw an error if the status "lastStepFailed" in prepareStep of BlackoilModel is not the same across all processes 2024-11-21 15:01:46 +01:00
Kai Bao
3d04a97ff5 removing invalidateLocalData() in updateSolution() in BlackoilModel 2024-10-21 10:42:39 +02:00
jakobtorben
58a8d5ee41 Map global index to local subdomain index in well operator 2024-10-07 09:13:00 +02:00
jakobtorben
b830208573 PR review changes 2024-10-03 18:05:06 +02:00
jakobtorben
ff20c1f809 Fix calculation of distance 2024-10-03 08:56:39 +02:00
jakobtorben
6ff83e19ae Write penalty count to infoiter file 2024-10-03 08:56:39 +02:00
jakobtorben
71a64fbd13 Ensure correct propagation of failed report 2024-10-03 08:56:39 +02:00
jakobtorben
6d53daaa42 Store report of failed step before cutting from convergence monitoring 2024-10-03 08:56:39 +02:00
jakobtorben
eef0ba50bf Change non-convergence monitor to checking if number of non-converged has increased 2024-10-03 08:56:39 +02:00
jakobtorben
cda47a6387 Register convergence monitoring parameters 2024-10-03 08:56:39 +02:00
jakobtorben
5f17c9de6a Cut timestep if penlaty exceeds limit 2024-10-03 08:56:39 +02:00
jakobtorben
d476a328de Add distance decay penalty 2024-10-03 08:56:39 +02:00
jakobtorben
3e6f9c52bb Reset the total penalty card after each nonlinear iteration 2024-10-03 08:56:39 +02:00
jakobtorben
e1e577fab1 Add penalty for unconverged well 2024-10-03 08:56:39 +02:00
jakobtorben
861cfeec49 Add penalty card for increase in convergence metrics 2024-10-03 08:56:39 +02:00
Vegard Kippe
18a8b5bb90 Add energy balance tolerances + use standard tolerances as defaults for now 2024-09-16 14:39:33 +02:00
Vegard Kippe
33b72a9722 Rebased to current master. TODO: pvSplit with energy 2024-09-16 14:39:33 +02:00
Kai Bao
85513754bc splitting Blackoil related to FlowProblemBlackoil
so FlowProblem can be used for compositional or other setting
2024-09-11 14:58:14 +02:00
Atgeirr Flø Rasmussen
9dd54fb11a Avoid capturing structured bindings.
This is an error before C++20, and clang refuses it.
2024-08-30 13:17:07 +02:00
Bård Skaflestad
68cc5d917e Output CNV Histogram to INFOITER File
This commit tracks the number of cells and their associate fraction
of the model's "eligible" pore volume (total pore volume in
numerical aquifers subtracted from the model's total pore volume) in
three distinct categories as a function of the non-linear iteration
number:

  - 0: MAX_p { CNV_p } <= strict CNV tolerance
  - 1: MAX_p { CNV_p } \in (strict, relaxed]
  - 2: MAX_p { CNV_p } > relaxed CNV tolerance

We then output these cell counts and pore volume fractions as new
items in the INFOITER file to enable more targeted analysis of the
non-linear convergence behaviour.

To this end, introduce a type alias CnvPvSplit in the
ConvergenceReport and aggregate these across the MPI ranks before we
collect them in the ConvergenceReport objects.

While here, also reduce the amount of repeated logic in
gatherConvergenceReport.cpp through a few local lambdas.
2024-08-27 10:50:06 +02:00
Arne Morten Kvarving
b902f83fa6 BlackoilModelParameters: introduce translation unit 2024-08-16 17:15:53 +02:00
Arne Morten Kvarving
280704e2e0 move AdaptiveTimeStepping parameters to TypeTag-free parameter system 2024-08-16 13:22:17 +02:00
Arne Morten Kvarving
414f313d2a move FlowProblem parameters to TypeTag-free parameter system 2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
fdcc9a0fb2 fixed: EnableDebuggingChecks is a property, not a parameter 2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
94c30a74b8 move NonLinearSolver parameters to TypeTag-free parameter system 2024-08-16 13:20:06 +02:00
Arne Morten Kvarving
3716ee664d move BlackoilModel parameters to TypeTag-free parameter system 2024-08-16 13:20:04 +02:00
Tor Harald Sandve
d7331ca3ae use -1 as defult min-strict-iter 2024-08-16 10:16:04 +02:00
Arne Morten Kvarving
18a18a64c7 OutputDir moved to TypeTag-free parameter system 2024-08-12 15:51:19 +02:00
Tor Harald Sandve
0a63fc8e24 Move modification of density to convectiveMixingModule 2024-08-09 10:53:38 +02:00
Trine Mykkeltvedt
f10c44279f adressed minor comments by reviewer, added enableConvectiveMixing flag to drsdtcon, fixed indentation and bug in lastRs for gas/water 2024-08-09 10:51:19 +02:00
Arne Morten Kvarving
917fdbedfd changed: FlowProblem parameters moved to Opm::Parameters namespace 2024-08-06 09:50:02 +02:00
Arne Morten Kvarving
b3fae7f0f9 changed: OutputDir parameter moved to Opm::Parameters namespace 2024-06-28 14:43:11 +02:00
Bård Skaflestad
26cd7ab993 Move opm/core/props to opm/simulators/utils
The opm/core directory is no longer meaningful, and it contains only
components which might collectively be described as simulator
utilities.
2024-06-25 12:22:09 +02:00
Markus Blatt
238b7b2980 [fix] Do not count experiencing nans as error in PRT file.
The simulation will just chop the time step and continue.
Note, that the error count in the PRT file is used by engineers to
decide whether a simulation was successfull. Hence the error count
should not be increased here.
2024-06-20 10:40:37 +02:00
Arne Morten Kvarving
2205c68f0d BlackoilModel: use Scalar type 2024-05-23 08:09:53 +02:00
Bård Skaflestad
027eed16e9 Report CNV Violation Pore-Volume Fraction to INFOITER
This commit includes the fraction of pore-volume whose CNV targets
are violated as a new per-iteration quantity in the INFOITER file
(--output-extra-convergence-info=iteration), with the column header
"CnvErrPvFrac".  We collect the values which are already calculated
in

    BlackoilModel<>::getReservoirConvergence()

and store these as a pair of numerator and denominator in the
ConvergenceReport class.  Note that we need both the numerator and
the denominator in order to aggregate contributions from multiple
ranks.

While here, also make a few more objects 'const' and calculate
column widths directly instead of the maximum number of characters
in writeConvergenceHeader().
2024-05-06 11:31:47 +02:00
Bård Skaflestad
1e9943bfe6 Accumulate CNV Pore-Volume Sum for Interior Cells Only
The 'interiorBorder' category is *probably* equivalent to the
'interior' category for codimension zero elements, but it's better
to be safe than sorry.  We don't want to accumulate pore-volume
contributions twice.
2024-05-03 14:19:00 +02:00
Arne Morten Kvarving
fb7c4f6fd2 move ebos/eclproblem.hh to opm/simulators/flow 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
7b49bcb09e rename EclBaseProblem to FlowBaseProblem 2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
233d4c90ac ebos/collecttoiorank: move to opm/simulators/flow 2024-03-06 09:30:21 +01:00
Arne Morten Kvarving
b6cbf513bc move ebos/ecloutputblackoilmodule.hh to opm/simulators/flow 2024-03-04 13:09:48 +01:00
Arne Morten Kvarving
6b0dbfdf2d rename EclAquiferModel property to AquiferModel 2024-02-23 10:25:16 +01:00
Arne Morten Kvarving
991f89816e rename EclWellModel property to WellModel 2024-02-23 10:24:53 +01:00
Arne Morten Kvarving
67c9bba4c9 rename TTag::EclFlowProblem to TTag::FlowProblem 2024-02-23 09:27:48 +01:00
Tor Harald Sandve
c73337186e clean-up relaxed tolerances 2024-02-15 09:22:42 +01:00
Tor Harald Sandve
3c8ac1fd74 Use relaxed tolerances if maximum number of iterations are used 2024-02-15 08:27:51 +01:00