Opm::ECLPVT::PVDx Class Reference

#include <ECLPvtCommon.hpp>

Public Types

using ElemIt = ECLPropTableRawData::ElementIterator
 Convenience type alias. More...
 

Public Member Functions

 PVDx (ElemIt xBegin, ElemIt xEnd, const ConvertUnits &convert, std::vector< ElemIt > &colIt)
 
std::vector< double > formationVolumeFactor (const std::vector< double > &p) const
 
std::vector< double > viscosity (const std::vector< double > &p) const
 
PVTGraph getPvtCurve (const RawCurve curve) const
 

Detailed Description

Evaluate pressure-dependent properties (formation volume factor, viscosity &c) for dead oil (PVDO) or dry gas (PVDG) from tabulated functions as represented in an ECL result set (ECLInitData).

Member Typedef Documentation

◆ ElemIt

Constructor & Destructor Documentation

◆ PVDx()

Opm::ECLPVT::PVDx::PVDx ( ElemIt  xBegin,
ElemIt  xEnd,
const ConvertUnits convert,
std::vector< ElemIt > &  colIt 
)

Constructor.

Parameters
[in]xBeginStarting position of range of independent variable (phase pressure).
[in]xEndOne past the end of range of independent variable. Must be reachable from xBegin.
[in,out]colItColumn iterators that reference the dependent variables (reciprocal FVF &c). Should be size 4 to represent the FVF, the viscosity and the derivatives with respect to phase pressure. On input, positioned at the beginning of a single table's dependent variables columns. On output, advanced across
std::distance(xBegin, xEnd)
rows/entries.

Member Function Documentation

◆ formationVolumeFactor()

std::vector< double > Opm::ECLPVT::PVDx::formationVolumeFactor ( const std::vector< double > &  p) const

Evaluate the phase FVF in selection of pressure points.

Parameters
[in]pSet of phase pressure points.
Returns
Phase Formation volume factors for each pressure point.

◆ getPvtCurve()

PVTGraph Opm::ECLPVT::PVDx::getPvtCurve ( const RawCurve  curve) const

Retrieve 2D graph representation PVT property function.

Parameters
[in]curvePVT property curve descriptor
Returns
2D graph for PVT property curve identified by requests represented by func. Mixing ratio is a vector of zeros.

Example: Retrieve formation volume factor curve.

const auto graph =
pvdx.getPvtCurve(ECLPVT::RawCurve::FVF);
@ FVF
Formation volume factor (B_\alpha)

◆ viscosity()

std::vector< double > Opm::ECLPVT::PVDx::viscosity ( const std::vector< double > &  p) const

Evaluate the phase viscosity in selection of pressure points.

Parameters
[in]pSet of phase pressure points.
Returns
Phase viscosity for each pressure point.

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