Opm::SatFunc::EPSEvalInterface Class Referenceabstract

Protocol for computing scaled saturation values. More...

#include <ECLEndPointScaling.hpp>

Inheritance diagram for Opm::SatFunc::EPSEvalInterface:
Inheritance graph

Classes

struct  SaturationAssoc
 Associate a saturation value to a specific cell. More...
 
struct  TableEndPoints
 

Public Types

using SaturationPoints = std::vector< SaturationAssoc >
 Convenience type alias. More...
 

Public Member Functions

virtual std::vector< double > eval (const TableEndPoints &tep, const SaturationPoints &sp) const =0
 
virtual std::vector< double > reverse (const TableEndPoints &tep, const SaturationPoints &sp) const =0
 
virtual std::unique_ptr< EPSEvalInterfaceclone () const =0
 Virtual copy constructor. More...
 
virtual ~EPSEvalInterface ()
 Destructor. Must be virtual. More...
 

Detailed Description

Protocol for computing scaled saturation values.

Member Typedef Documentation

◆ SaturationPoints

Convenience type alias.

Constructor & Destructor Documentation

◆ ~EPSEvalInterface()

virtual Opm::SatFunc::EPSEvalInterface::~EPSEvalInterface ( )
virtual

Destructor. Must be virtual.

Member Function Documentation

◆ clone()

virtual std::unique_ptr< EPSEvalInterface > Opm::SatFunc::EPSEvalInterface::clone ( ) const
pure virtual

Virtual copy constructor.

Implemented in Opm::SatFunc::TwoPointScaling, and Opm::SatFunc::ThreePointScaling.

◆ eval()

virtual std::vector< double > Opm::SatFunc::EPSEvalInterface::eval ( const TableEndPoints tep,
const SaturationPoints sp 
) const
pure virtual

Derive scaled saturations–inputs to subsequent evaluation of saturation functions–corresponding to a sequence of unscaled saturation values.

Parameters
[in]tepStatic end points that identify the saturation scaling intervals of a particular tabulated saturation function.
[in]spSequence of saturation points.
Returns
Sequence of scaled saturation values in order of the input sequence. In particular the i-th element of this result is the scaled version of
sp[i].sat
.

Implemented in Opm::SatFunc::TwoPointScaling, and Opm::SatFunc::ThreePointScaling.

◆ reverse()

virtual std::vector< double > Opm::SatFunc::EPSEvalInterface::reverse ( const TableEndPoints tep,
const SaturationPoints sp 
) const
pure virtual

Derive unscaled (raw) input saturations from a sequence of table points (independent variate in a tabulated saturation function).

This function maps the result of

eval()
virtual std::vector< double > eval(const TableEndPoints &tep, const SaturationPoints &sp) const =0

back to its original arguments. In other words, this is the inverse of member function

eval()

.

Parameters
[in]tepStatic end points that identify the saturation scaling intervals of a particular tabulated saturation function.
[in]spSequence of saturation points.
Returns
Sequence of input saturation values in order of the input sequence. In particular the i-th element of this result is the scaled version of
sp[i].sat
.

Implemented in Opm::SatFunc::TwoPointScaling, and Opm::SatFunc::ThreePointScaling.


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