My Project
|
Represents the convergence status of the whole simulator, to make it possible to query and store the reasons for convergence failures. More...
#include <ConvergenceReport.hpp>
Classes | |
struct | PenaltyCard |
class | ReservoirConvergenceMetric |
class | ReservoirFailure |
class | WellConvergenceMetric |
class | WellFailure |
Public Types | |
enum | Status { AllGood = 0 , ReservoirFailed = 1 << 0 , WellFailed = 1 << 1 } |
enum struct | Severity { None = 0 , Normal = 1 , ConvergenceMonitorFailure = 2 , TooLarge = 3 , NotANumber = 4 } |
using | CnvPvSplit |
Public Member Functions | |
ConvergenceReport (const double reportTime) | |
void | clear () |
void | setReservoirFailed (const ReservoirFailure &rf) |
void | setWellFailed (const WellFailure &wf) |
template<typename... Args> | |
void | setReservoirConvergenceMetric (Args &&... args) |
template<typename... Args> | |
void | setWellConvergenceMetric (Args &&... args) |
void | setWellGroupTargetsViolated (const bool wellGroupTargetsViolated) |
void | setCnvPoreVolSplit (const CnvPvSplit &cnvPvSplit, const double eligiblePoreVolume) |
ConvergenceReport & | operator+= (const ConvergenceReport &other) |
double | reportTime () const |
double | eligiblePoreVolume () const |
const CnvPvSplit & | cnvPvSplit () 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 |
const std::vector< WellConvergenceMetric > & | wellConvergence () const |
const PenaltyCard & | getPenaltyCard () const |
void | addNonConvergedPenalty () |
void | addDistanceDecayPenalty () |
void | addLargeWellResidualsPenalty () |
Severity | severityOfWorstFailure () const |
template<typename Serializer > | |
void | serializeOp (Serializer &serializer) |
Represents the convergence status of the whole simulator, to make it possible to query and store the reasons for convergence failures.
using Opm::ConvergenceReport::CnvPvSplit |