#include <VFPProdTable.hpp>
|
enum | FLO_TYPE { FLO_OIL =1,
FLO_LIQ,
FLO_GAS,
FLO_INVALID
} |
| Rate type. More...
|
|
enum | WFR_TYPE { WFR_WOR =11,
WFR_WCT,
WFR_WGR,
WFR_INVALID
} |
| Water fraction variable. More...
|
|
enum | GFR_TYPE { GFR_GOR =21,
GFR_GLR,
GFR_OGR,
GFR_INVALID
} |
| Gas fraction variable. More...
|
|
enum | ALQ_TYPE {
ALQ_GRAT =31,
ALQ_IGLR,
ALQ_TGLR,
ALQ_PUMP,
ALQ_COMP,
ALQ_BEAN,
ALQ_UNDEF,
ALQ_INVALID
} |
| Artificial lift quantity. More...
|
|
typedef boost::multi_array
< double, 5 > | array_type |
|
typedef boost::array
< array_type::index, 5 > | extents |
|
|
| VFPProdTable () |
|
void | init (int table_num, double datum_depth, FLO_TYPE flo_type, WFR_TYPE wfr_type, GFR_TYPE gfr_type, ALQ_TYPE alq_type, const std::vector< double > &flo_data, const std::vector< double > &thp_data, const std::vector< double > &wfr_data, const std::vector< double > &gfr_data, const std::vector< double > &alq_data, const array_type &data) |
|
void | init (DeckKeywordConstPtr table, std::shared_ptr< Opm::UnitSystem > deck_unit_system) |
|
int | getTableNum () const |
|
double | getDatumDepth () const |
|
FLO_TYPE | getFloType () const |
|
WFR_TYPE | getWFRType () const |
|
GFR_TYPE | getGFRType () const |
|
ALQ_TYPE | getALQType () const |
|
const std::vector< double > & | getFloAxis () const |
|
const std::vector< double > & | getTHPAxis () const |
|
const std::vector< double > & | getWFRAxis () const |
|
const std::vector< double > & | getGFRAxis () const |
|
const std::vector< double > & | getALQAxis () const |
|
const array_type & | getTable () const |
|
Class for reading data from a VFPPROD (vertical flow performance production) table
Artificial lift quantity.
Enumerator |
---|
ALQ_GRAT |
|
ALQ_IGLR |
|
ALQ_TGLR |
|
ALQ_PUMP |
|
ALQ_COMP |
|
ALQ_BEAN |
|
ALQ_UNDEF |
|
ALQ_INVALID |
|
Rate type.
Enumerator |
---|
FLO_OIL |
|
FLO_LIQ |
|
FLO_GAS |
|
FLO_INVALID |
|
Gas fraction variable.
Enumerator |
---|
GFR_GOR |
|
GFR_GLR |
|
GFR_OGR |
|
GFR_INVALID |
|
Water fraction variable.
Enumerator |
---|
WFR_WOR |
|
WFR_WCT |
|
WFR_WGR |
|
WFR_INVALID |
|
Opm::VFPProdTable::VFPProdTable |
( |
| ) |
|
|
inline |
const std::vector<double>& Opm::VFPProdTable::getALQAxis |
( |
| ) |
const |
|
inline |
Returns the coordinates for the artificial lift quantity points in the table - Returns
- Artificial lift quantity coordinates
ALQ_TYPE Opm::VFPProdTable::getALQType |
( |
| ) |
const |
|
inline |
Returns the artificial lift quantity type for the ALQ axis - Returns
- artificial lift quantity type
double Opm::VFPProdTable::getDatumDepth |
( |
| ) |
const |
|
inline |
Returns the datum depth for the table data - Returns
- datum depth
const std::vector<double>& Opm::VFPProdTable::getFloAxis |
( |
| ) |
const |
|
inline |
Returns the coordinates of the FLO sample points in the table - Returns
- Flo sample coordinates
FLO_TYPE Opm::VFPProdTable::getFloType |
( |
| ) |
const |
|
inline |
Returns the rate/flo type for the flo axis - Returns
- flo type
const std::vector<double>& Opm::VFPProdTable::getGFRAxis |
( |
| ) |
const |
|
inline |
Returns the coordinates for the gas fraction sample points in the table - Returns
- Gas fraction coordinates
GFR_TYPE Opm::VFPProdTable::getGFRType |
( |
| ) |
const |
|
inline |
Returns the gas fraction type for the GFR axis - Returns
- gas fraction type
const array_type& Opm::VFPProdTable::getTable |
( |
| ) |
const |
|
inline |
Returns the data of the table itself. The data is ordered so that
table = getTable(); bhp = table[thp_idx][wfr_idx][gfr_idx][alq_idx][flo_idx];
gives the bottom hole pressure value in the table for the coordinate given by flo_axis = getFloAxis(); thp_axis = getTHPAxis(); ...
flo_coord = flo_axis(flo_idx); thp_coord = thp_axis(thp_idx); ...
int Opm::VFPProdTable::getTableNum |
( |
| ) |
const |
|
inline |
Returns the table number - Returns
- table number
const std::vector<double>& Opm::VFPProdTable::getTHPAxis |
( |
| ) |
const |
|
inline |
Returns the coordinates for the tubing head pressure sample points in the table - Returns
- Tubing head pressure coordinates
const std::vector<double>& Opm::VFPProdTable::getWFRAxis |
( |
| ) |
const |
|
inline |
Returns the coordinates for the water fraction sample points in the table - Returns
- Water fraction coordinates
WFR_TYPE Opm::VFPProdTable::getWFRType |
( |
| ) |
const |
|
inline |
Returns the water fraction type for the WFR axis - Returns
- water fraction type
void Opm::VFPProdTable::init |
( |
int |
table_num, |
|
|
double |
datum_depth, |
|
|
FLO_TYPE |
flo_type, |
|
|
WFR_TYPE |
wfr_type, |
|
|
GFR_TYPE |
gfr_type, |
|
|
ALQ_TYPE |
alq_type, |
|
|
const std::vector< double > & |
flo_data, |
|
|
const std::vector< double > & |
thp_data, |
|
|
const std::vector< double > & |
wfr_data, |
|
|
const std::vector< double > & |
gfr_data, |
|
|
const std::vector< double > & |
alq_data, |
|
|
const array_type & |
data |
|
) |
| |
Initializes objects from raw data. NOTE: All raw data assumed to be in SI units - Parameters
-
table_num | VFP table number |
datum_depth | Reference depth for BHP |
flo_type | Specifies what flo_data represents |
wfr_type | Specifies what wfr_data represents |
gfr_type | Specifies what gfr_data represents |
alq_type | Specifies what alq_data represents |
flo_data | Axis for flo_type |
thp_data | Axis for tubing head pressure |
wfr_data | Axis for wfr_type |
gfr_data | Axis for gfr_type |
alq_data | Axis for alq_type |
data | BHP to be interpolated. Given as a 5D array so that BHP = data[thp][wfr][gfr][alq][flo] for the indices thp, wfr, etc. |
Constructor which parses a deck keyword and retrieves the relevant parts for a VFP table.
The documentation for this class was generated from the following file:
|