opm-simulators/opm/simulators/flow
Bård Skaflestad 858ca8fa49 Output Non-Linear Convergence to Separate File if Requested
This commit enables outputting non-linear convergence metrics, i.e.,
the MB and CNV values, per phase, for each non-linear iteration in
each timestep.  If the user passes the option value "iterations" to
the --extra-convergence-output command line option, this commit will
create a new output file, CASE.INFOITER, that holds

    * report step
    * time step within that report step
    * elapsed time
    * MB and CNV values per phase
    * well convergence status

for each non-linear iteration.

We use an asynchronous file writing procedure and confer ownership
of the report step's unprocessed convergence reports to this
procedure just before the end of

    SimulatorFullyImplicitBlackoilEbos::runStep()

At that point, the convergence reports are about to go out of scope.
The asynchronous protocol uses a dedicated queue of output requests,
class ConvergenceReportQueue, into which the producer-i.e., member
function runStep()-inserts new convergence reports and from which
the output thread, ConvergenceOutputThread::writeASynchronous(),
retrieves those requests before writing the file data.
2022-12-20 10:14:13 +01:00
..
python comment out unused private variable (causes a warning) 2022-10-26 10:59:43 +02:00
BlackoilModelEbos.hpp Output Non-Linear Convergence to Separate File if Requested 2022-12-20 10:14:13 +01:00
BlackoilModelParametersEbos.hpp changing max_strict_iter_ to min_strict_cnv_iter_ 2022-09-07 14:28:41 +02:00
ConvergenceOutputConfiguration.cpp Don't Output INFOSTEP File by Default 2022-12-15 13:02:09 +01:00
ConvergenceOutputConfiguration.hpp Don't Output INFOSTEP File by Default 2022-12-15 13:02:09 +01:00
countGlobalCells.cpp changed: put ParallelIstlInformation in separate compile unit 2022-08-18 09:15:28 +02:00
countGlobalCells.hpp changed: put ParallelIstlInformation in separate compile unit 2022-08-18 09:15:28 +02:00
ExtraConvergenceOutputThread.cpp Output Non-Linear Convergence to Separate File if Requested 2022-12-20 10:14:13 +01:00
ExtraConvergenceOutputThread.hpp Output Non-Linear Convergence to Separate File if Requested 2022-12-20 10:14:13 +01:00
FlowMainEbos.hpp Don't Output INFOSTEP File by Default 2022-12-15 13:02:09 +01:00
KeywordValidation.cpp Added missing include of config.h in cpp files. 2022-10-12 15:28:38 +02:00
KeywordValidation.hpp Add missing include for unordered_map. 2021-09-09 12:17:54 +02:00
Main.hpp changed: make the deck an implementation detail in Opm::readDeck 2022-11-24 13:00:38 +01:00
NonlinearSolverEbos.hpp Remove references of flow i usage string of Newton method properties. 2022-10-28 16:41:54 +02:00
SimulatorFullyImplicitBlackoilEbos.cpp Downstream filesystem reorganisation in opm-common 2022-01-02 14:33:34 +01:00
SimulatorFullyImplicitBlackoilEbos.hpp Output Non-Linear Convergence to Separate File if Requested 2022-12-20 10:14:13 +01:00
ValidationFunctions.cpp Added missing include of config.h in cpp files. 2022-10-12 15:28:38 +02:00
ValidationFunctions.hpp remove unnecessary includes 2022-07-26 19:03:39 +02:00