Opm::SimulatorConvergenceOutput Class Reference

Class handling convergence history output for a simulator. More...

#include <SimulatorConvergenceOutput.hpp>

Public Member Functions

void startThread (const EclipseState &eclState, std::string_view convOutputOptions, std::string_view optionName, ConvergenceOutputThread::ComponentToPhaseName getPhaseName)
 
void write (const std::vector< StepReport > &reports)
 
void endThread ()
 

Detailed Description

Class handling convergence history output for a simulator.

Member Function Documentation

◆ endThread()

void Opm::SimulatorConvergenceOutput::endThread ( )

Request that convergence output thread be shut down.

No additional output requests should be submitted to write() once this function is called.

Referenced by Opm::SimulatorFullyImplicitBlackoil< TypeTag >::~SimulatorFullyImplicitBlackoil().

◆ startThread()

void Opm::SimulatorConvergenceOutput::startThread ( const EclipseState &  eclState,
std::string_view  convOutputOptions,
std::string_view  optionName,
ConvergenceOutputThread::ComponentToPhaseName  getPhaseName 
)

Start convergence output thread.

Thread starts only if explicitly requested in runtime user options.

Parameters
[in]eclStateStatic model object. Needed to determine run's output directory, base name, and unit conventions.
[in]convOutputOptionsComma separated option string as required by class ConvergenceOutputConfiguration.
[in]optionNameName of command line option whose value is convOutputOptions. Used as diagnostic information only.
[in]getPhaseNameCallable object for converting component indices into human readable component names.

◆ write()

void Opm::SimulatorConvergenceOutput::write ( const std::vector< StepReport > &  reports)

Create convergence output requests.

Must not be called before startThread() or after endThread().

Only those reports which have not previously been emitted will be written, and only if the run actually requests convergence output at the non-linear iteration level.

Parameters
[in]reportsAll step reports generated in the simulation run so far. Class SimulatorConvergenceOutput maintains a record of which reports have been written.

Referenced by Opm::SimulatorFullyImplicitBlackoil< TypeTag >::runStep().


The documentation for this class was generated from the following file: