Opm::ConvergenceReport Class Reference

#include <ConvergenceReport.hpp>

Classes

class  ReservoirConvergenceMetric
 
class  ReservoirFailure
 
class  WellFailure
 

Public Types

enum  Status { AllGood = 0 , ReservoirFailed = 1 << 0 , WellFailed = 1 << 1 }
 
enum struct  Severity { None = 0 , Normal = 1 , TooLarge = 2 , NotANumber = 3 }
 

Public Member Functions

 ConvergenceReport ()
 
 ConvergenceReport (const double reportTime)
 
void clear ()
 
void setReservoirFailed (const ReservoirFailure &rf)
 
void setWellFailed (const WellFailure &wf)
 
template<typename... Args>
void setReservoirConvergenceMetric (Args &&... args)
 
void setWellGroupTargetsViolated (const bool wellGroupTargetsViolated)
 
ConvergenceReportoperator+= (const ConvergenceReport &other)
 
double reportTime () const
 
bool converged () const
 
bool reservoirFailed () const
 
bool wellFailed () const
 
const std::vector< ReservoirFailure > & reservoirFailures () const
 
const std::vector< ReservoirConvergenceMetric > & reservoirConvergence () const
 
const std::vector< WellFailure > & wellFailures () const
 
Severity severityOfWorstFailure () const
 

Detailed Description

Represents the convergence status of the whole simulator, to make it possible to query and store the reasons for convergence failures.

Member Enumeration Documentation

◆ Severity

Enumerator
None 
Normal 
TooLarge 
NotANumber 

◆ Status

Enumerator
AllGood 
ReservoirFailed 
WellFailed 

Constructor & Destructor Documentation

◆ ConvergenceReport() [1/2]

Opm::ConvergenceReport::ConvergenceReport ( )
inline

◆ ConvergenceReport() [2/2]

Opm::ConvergenceReport::ConvergenceReport ( const double  reportTime)
inlineexplicit

Member Function Documentation

◆ clear()

void Opm::ConvergenceReport::clear ( )
inline

References AllGood.

◆ converged()

bool Opm::ConvergenceReport::converged ( ) const
inline

References AllGood.

◆ operator+=()

ConvergenceReport & Opm::ConvergenceReport::operator+= ( const ConvergenceReport other)
inline

References reservoirFailed(), and wellFailed().

◆ reportTime()

double Opm::ConvergenceReport::reportTime ( ) const
inline

◆ reservoirConvergence()

const std::vector< ReservoirConvergenceMetric > & Opm::ConvergenceReport::reservoirConvergence ( ) const
inline

◆ reservoirFailed()

bool Opm::ConvergenceReport::reservoirFailed ( ) const
inline

References ReservoirFailed.

Referenced by operator+=().

◆ reservoirFailures()

const std::vector< ReservoirFailure > & Opm::ConvergenceReport::reservoirFailures ( ) const
inline

◆ setReservoirConvergenceMetric()

template<typename... Args>
void Opm::ConvergenceReport::setReservoirConvergenceMetric ( Args &&...  args)
inline

◆ setReservoirFailed()

void Opm::ConvergenceReport::setReservoirFailed ( const ReservoirFailure rf)
inline

◆ setWellFailed()

void Opm::ConvergenceReport::setWellFailed ( const WellFailure wf)
inline

◆ setWellGroupTargetsViolated()

void Opm::ConvergenceReport::setWellGroupTargetsViolated ( const bool  wellGroupTargetsViolated)
inline

◆ severityOfWorstFailure()

Severity Opm::ConvergenceReport::severityOfWorstFailure ( ) const
inline

References None.

◆ wellFailed()

bool Opm::ConvergenceReport::wellFailed ( ) const
inline

References WellFailed.

Referenced by operator+=().

◆ wellFailures()

const std::vector< WellFailure > & Opm::ConvergenceReport::wellFailures ( ) const
inline

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