#include <PvtLiveOil.hpp>

Inheritance diagram for Opm::PvtLiveOil:
Inheritance graph

Public Types

enum  PhaseIndex { Aqua = 0, Liquid = 1, Vapour = 2 }
 

Public Member Functions

 PvtLiveOil (const std::vector< Opm::PvtoTable > &pvtoTables)
 
virtual ~PvtLiveOil ()
 
virtual void mu (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *z, double *output_mu) const
 Viscosity as a function of p, T and z. More...
 
virtual void mu (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *r, double *output_mu, double *output_dmudp, double *output_dmudr) const
 
virtual void mu (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *r, const PhasePresence *cond, double *output_mu, double *output_dmudp, double *output_dmudr) const
 
virtual void B (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *z, double *output_B) const
 Formation volume factor as a function of p, T and z. More...
 
virtual void dBdp (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *z, double *output_B, double *output_dBdp) const
 Formation volume factor and p-derivative as functions of p, T and z. More...
 
virtual void b (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *r, double *output_b, double *output_dbdp, double *output_dbdr) const
 
virtual void b (const int n, const int *pvtTableIdx, const double *p, const double *T, const double *r, const PhasePresence *cond, double *output_b, double *output_dbdp, double *output_dbdr) const
 
virtual void rsSat (const int n, const int *pvtTableIdx, const double *p, double *output_rsSat, double *output_drsSatdp) const
 Solution gas/oil ratio and its derivatives at saturated conditions as a function of p. More...
 
virtual void rvSat (const int n, const int *pvtTableIdx, const double *p, double *output_rvSat, double *output_drvSatdp) const
 Vapor oil/gas ratio and its derivatives at saturated conditions as a function of p. More...
 
virtual void R (const int n, const int *pvtTableIdx, const double *p, const double *z, double *output_R) const
 Solution factor as a function of p and z. More...
 
virtual void dRdp (const int n, const int *pvtTableIdx, const double *p, const double *z, double *output_R, double *output_dRdp) const
 Solution factor and p-derivative as functions of p and z. More...
 
void setPhaseConfiguration (const int num_phases, const int *phase_pos)
 

Static Public Attributes

static const int MaxNumPhases = 3
 

Protected Attributes

int num_phases_
 
int phase_pos_ [MaxNumPhases]
 

Detailed Description

Class for miscible live oil (with dissolved gas in liquid phase). The PVT properties can either be given as a function of pressure (p), temperature (T) and surface volume (z) or pressure (p), temperature (T) and gas resolution factor (r). For all the virtual methods, the following apply: p, r and z are expected to be of size n, size n and n*num_phases, respectively. Output arrays shall be of size n, and must be valid before calling the method.

Member Enumeration Documentation

Enumerator
Aqua 
Liquid 
Vapour 

Constructor & Destructor Documentation

Opm::PvtLiveOil::PvtLiveOil ( const std::vector< Opm::PvtoTable > &  pvtoTables)
virtual Opm::PvtLiveOil::~PvtLiveOil ( )
virtual

Member Function Documentation

virtual void Opm::PvtLiveOil::B ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  z,
double *  output_B 
) const
virtual

Formation volume factor as a function of p, T and z.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::b ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  r,
double *  output_b,
double *  output_dbdp,
double *  output_dbdr 
) const
virtual

The inverse of the formation volume factor b = 1 / B, and its derivatives as a function of p, T and r. The fluid is considered saturated if r >= rsSat(p).

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::b ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  r,
const PhasePresence cond,
double *  output_b,
double *  output_dbdp,
double *  output_dbdr 
) const
virtual

The inverse of the formation volume factor b = 1 / B, and its derivatives as a function of p, T and r. State condition determined by 'cond'.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::dBdp ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  z,
double *  output_B,
double *  output_dBdp 
) const
virtual

Formation volume factor and p-derivative as functions of p, T and z.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::dRdp ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  z,
double *  output_R,
double *  output_dRdp 
) const
virtual

Solution factor and p-derivative as functions of p and z.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::mu ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  z,
double *  output_mu 
) const
virtual

Viscosity as a function of p, T and z.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::mu ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  r,
double *  output_mu,
double *  output_dmudp,
double *  output_dmudr 
) const
virtual

Viscosity and its p and r derivatives as a function of p, T and r. The fluid is considered saturated if r >= rsSat(p).

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::mu ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  T,
const double *  r,
const PhasePresence cond,
double *  output_mu,
double *  output_dmudp,
double *  output_dmudr 
) const
virtual

Viscosity as a function of p, T and r. State condition determined by 'cond'.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::R ( const int  n,
const int *  pvtTableIdx,
const double *  p,
const double *  z,
double *  output_R 
) const
virtual

Solution factor as a function of p and z.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::rsSat ( const int  n,
const int *  pvtTableIdx,
const double *  p,
double *  output_rsSat,
double *  output_drsSatdp 
) const
virtual

Solution gas/oil ratio and its derivatives at saturated conditions as a function of p.

Implements Opm::PvtInterface.

virtual void Opm::PvtLiveOil::rvSat ( const int  n,
const int *  pvtTableIdx,
const double *  p,
double *  output_rvSat,
double *  output_drvSatdp 
) const
virtual

Vapor oil/gas ratio and its derivatives at saturated conditions as a function of p.

Implements Opm::PvtInterface.

void Opm::PvtInterface::setPhaseConfiguration ( const int  num_phases,
const int *  phase_pos 
)
inherited
Parameters
[in]num_phasesThe number of active phases.
[in]phase_posArray of BlackpoilPhases::MaxNumPhases integers, giving the relative positions of the three canonical phases A, L, V in order to handle arbitrary two-phase and three-phase situations.

Member Data Documentation

int Opm::PvtInterface::num_phases_
protectedinherited
int Opm::PvtInterface::phase_pos_[MaxNumPhases]
protectedinherited

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