Opm::ECLUnits::Convert::VaporisedOilGasRatio Class Reference

#include <ECLPropertyUnitConversion.hpp>

Inheritance diagram for Opm::ECLUnits::Convert::VaporisedOilGasRatio:
Inheritance graph

Public Member Functions

void appliedTo (std::vector< double > &Rv) const override
 
PhysicalQuantityfrom (const UnitSystem &usys)
 
PhysicalQuantityto (const UnitSystem &usys)
 

Protected Member Functions

const UnitSystemfrom () const
 
const UnitSystemto () const
 

Detailed Description

Facility for converting vaporised oil/gas ratio (Rv) values between user-selected units of measure.

Member Function Documentation

◆ appliedTo()

void Opm::ECLUnits::Convert::VaporisedOilGasRatio::appliedTo ( std::vector< double > &  Rv) const
overridevirtual

Convert a sequence of vaporised oil/gas ratio values from its input unit of measure to its output unit of measure.

Will throw an exception of type

std::invalid_argument

unless both of the input and output unit system conventions have been previously specified.

Example: Extract the saturated state curve for gas in cell 161803 in Metric units.

const auto rset = ResultSet("Case.EGRID");
const auto init = ECLInitFileData{ rset.initFile() };
const auto G = ECLGraph.load(rset.gridFile(), init);
const auto si = internalUnitConvention();
const auto metric = metricUnitConventions();
const auto pvtCC = ECLPvtCurveCollection(G, init);
const auto satState =
pvtCC.getPvtCurve(RawCurve::SaturatedState,
Convert::Pressure().to(*metric).from(*si)
.appliedTo(satState.first);
.appliedTo(satState.second);
Definition: ECLGraph.hpp:52
static ECLGraph load(const boost::filesystem::path &gridFile, const ECLInitFileData &init)
Definition: ECLResultData.hpp:177
PhysicalQuantity & to(const UnitSystem &usys)
PhysicalQuantity & from(const UnitSystem &usys)
virtual void appliedTo(std::vector< double > &x) const =0
Definition: ECLPropertyUnitConversion.hpp:421
std::unique_ptr< const UnitSystem > metricUnitConventions()
@ Pressure
Definition: eclipse/VectorItems/aquifer.hpp:62
std::vector< double > init(const std::string &kewyord, const TableManager &tables, const Phases &phases, const std::vector< double > &cell_depth, const std::vector< int > &num, const std::vector< int > &endnum)
Parameters
[in,out]RvOn input, a sequence of vapourised oil/gas ratio values assumed to be defined in the input unit specified through
from(usys)
const UnitSystem * from() const
. On output, the same seqeuence of gas Rv values converted to the output unit of measure specified through
to(usys)
.

Implements Opm::ECLUnits::Convert::PhysicalQuantity.

◆ from() [1/2]

const UnitSystem * Opm::ECLUnits::Convert::PhysicalQuantity::from ( ) const
protectedinherited

Retrieve input unit system.

Exists for the benefit of derived classes.

Returns
Input unit system. Null if not specified by caller.

◆ from() [2/2]

PhysicalQuantity & Opm::ECLUnits::Convert::PhysicalQuantity::from ( const UnitSystem usys)
inherited

Specify collection of units of measure of the inputs.

Parameters
[in]usysCollection of units of measure of inputs.
Returns
*this
.

◆ to() [1/2]

const UnitSystem * Opm::ECLUnits::Convert::PhysicalQuantity::to ( ) const
protectedinherited

Retrieve output unit system.

Exists for the benefit of derived classes.

Returns
Output unit system. Null if not specified by caller.

◆ to() [2/2]

PhysicalQuantity & Opm::ECLUnits::Convert::PhysicalQuantity::to ( const UnitSystem usys)
inherited

Specify collection of units of measure of the output.

Parameters
[in]usysCollection of units of measure of outputs.
Returns
*this
.

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