Fluids
digirock.WaterBW92
Water fluid class based upon B&W 92.
Temperature (degC) and pressure (MPa) dependent.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
sal |
float |
Brine salinity in ppm |
__init__(self, name=None, salinity=0)
special
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
optional |
Name of fluid. Defaults to None. |
None |
salinity |
optional |
Water salinity in ppm. Defaults to 0. |
0 |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for water with fixed salt concentration.
Uses BW92 wat_bulkmod
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Water modulus (GPa) |
density(self, props, **kwargs)
Temperature and pressure dependent density for water with fixed salt concentration.
Uses BW92 wat_density_brine
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
array-like |
Water density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
velocity(self, props, **kwargs)
Temperature and pressure dependent acoustic velocity for water with fixed salt concentration.
Uses BW92 wat_velocity_brine
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Water velocity (m/s) |
digirock.WaterECL
Water fluid class which uses Eclipse methodology for Density calculations.
Modulus and velocity are calculated using B&W 92 with the modified density.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
density_asc |
float |
Density (g/cc) at surface conditions. |
ref_pres |
float |
Reference pressure of bw (MPa) |
bw |
float |
Formation volume factor at ref_pres (rm3/sm3) |
comp |
float |
Compressibility of fluid. l/MPa |
visc |
float |
Viscosity of fluid cP |
cvisc |
float |
Viscosibility (1/MPa) |
salinity |
float |
Salinity in |
fvf1_pres |
float |
The reference pressure when the FVF=1. Defaults to 1Atm |
density_asc: float
property
readonly
Density at atmospheric conditions.
Uses Batzle and Wang 92 with Eclipse Standard Condition values.
Returns:
Type | Description |
---|---|
float |
Water density (g/cc) |
__init__(self, ref_pres, bw, comp, visc, cvisc, name=None, salinity=0, fvf1_pres=None)
special
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ref_pres |
float |
Reference pressure of bw, should be close to in-situ pressure (MPa). |
required |
bw |
float |
Water formation volume factor at ref_pres (frac). |
required |
comp |
float |
Compressibility of water at ref_pres (1/MPa) |
required |
visc |
float |
Water viscosity at ref_pres (cP) |
required |
cvisc |
float |
Water viscosibility (1/MPa) |
required |
name |
str |
Name for fluid. Defaults to None. |
None |
salinity |
int |
Salinity of brine (ppm). Defaults to 0. |
0 |
fvf1_pres |
float |
The reference pressure when the FVF=1. Defaults to 0.101325 MPa. |
None |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for a fixed fixed salt concentration.
Uses BW92 wat_bulkmod
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
modulus |
Water modulus in GPa |
density(self, props, **kwargs)
Temperature and pressure dependent density for water with fixed salt concentration adjusted for FVF.
Uses Eclipse e100_bw
for calculating FVF. Eclipse multiplies the surface presure
the expansion factor FVF relative to surface conditions to calculate the adjusted density.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Water density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
Summary of properties. |
velocity(self, props, **kwargs)
Temperature and pressure dependent velocity for a fixed fixed salt concentration.
Uses BW92 wat_velocity_brine
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
velocity |
Water velocity in m/s |
digirock.BaseOil
Dead Oil fluid class for oils with no dissolved gasses.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
api |
float |
API gravity of oil. |
std_density |
float |
Standard bulk density in g/cc at 15.6degC. |
bo |
float, xarray.DataArray |
The formation volume factor or table. |
bo(self, pres=None)
Get the formation volume factor (bo) at pressure if specified.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
pres |
Union[numpy.ndarray, float] |
Pressure to sample bo (MPa), required when Bo is a table. |
None |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Formation volume factor fvf (frac) |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for dead oil adjusted for FVF.
Uses BW92 oil_bulkmod
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil modulus (GPa) |
density(self, props, **kwargs)
Temperature and pressure dependent density for dead oil adjusted for FVF.
Uses BW92 oil_density
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
set_api(self, api)
Set the density of the oil using API gravity.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
api |
float |
Api of oil. |
required |
set_pvt(self, bo, pres=None)
Set the PVT table for DeadOil. If pressure is not specified bo should be a constant.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
bo |
Union[numpy.ndarray, float] |
Bo constant or table matching pressure input. |
required |
pres |
Union[numpy.ndarray, float] |
Pressures that bo is defined at. Defaults to None. |
None |
Exceptions:
Type | Description |
---|---|
ValueError |
When inputs are incorrect. |
set_standard_density(self, std_density)
Set the density of the oil at standard pressure and temperature (15.6 degC).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std_density |
float |
The density of oil at standard conditions (g/cc) |
required |
velocity(self, props, **kwargs)
Temperature and pressure dependent acoustic velocity for dead oil adjusted for FVF.
Uses BW92 oil_velocity
, gas Rs is assumed to be 0.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil acoustic velocity (m/s) |
digirock.DeadOil
Dead Oil fluid class for oils with no dissolved gasses.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
api |
float |
API gravity of oil. |
std_density |
float |
Standard bulk density in g/cc at 15.6degC. |
bo |
float, xarray.DataArray |
The formation volume factor or table. |
bo(self, pres=None)
Get the formation volume factor (bo) at pressure if specified.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
pres |
Union[numpy.ndarray, float] |
Pressure to sample bo (MPa), required when Bo is a table. |
None |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Formation volume factor fvf (frac) |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for dead oil adjusted for FVF.
Uses BW92 oil_bulkmod
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil modulus (GPa) |
density(self, props, **kwargs)
Temperature and pressure dependent density for dead oil adjusted for FVF.
Uses BW92 oil_density
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
set_api(self, api)
Set the density of the oil using API gravity.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
api |
float |
Api of oil. |
required |
set_pvt(self, bo, pres=None)
Set the PVT table for DeadOil. If pressure is not specified bo should be a constant.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
bo |
Union[numpy.ndarray, float] |
Bo constant or table matching pressure input. |
required |
pres |
Union[numpy.ndarray, float] |
Pressures that bo is defined at. Defaults to None. |
None |
Exceptions:
Type | Description |
---|---|
ValueError |
When inputs are incorrect. |
set_standard_density(self, std_density)
Set the density of the oil at standard pressure and temperature (15.6 degC).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
std_density |
float |
The density of oil at standard conditions (g/cc) |
required |
velocity(self, props, **kwargs)
Temperature and pressure dependent acoustic velocity for dead oil adjusted for FVF.
Uses BW92 oil_velocity
, gas Rs is assumed to be 0.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil acoustic velocity (m/s) |
digirock.OilBW92
Oil fluid class for oils with dissolved gas, i.e. Live Oil.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
api |
float |
API gravity of oil. |
std_density |
float |
Standard bulk density in g/cc at 15.6degC. |
gas_sg |
float |
The dissolved gas standard gravity. |
pvt |
dict, xarray.DataArray |
PVT table for Oil |
bo(self, props)
Calculate the oil formation volume factor (bo) using BW92.
Set the attribute bo
using BW92 oil_fvf.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Formation volume factor FVF (L/L) |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for Oil adjusted for rs
(solution gas) and bo
(FVF).
Modulus is calculated using BW92 oil_bulkmod.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil modulus (GPa) |
density(self, props, **kwargs)
Temperature and pressure dependent density for Oil with adjustments for rs
(solution gas) and bo
(FVF).
Density is calculated using BW92 oil_density after adjusting for gas saturation with oil_rho_sat.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
rs(self, props)
Calculate the solution gas (rs) from pressure/rs table.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
solution gas (L/L) |
set_rst(self, rs, pres=None)
Set the RS table for Oil.
The solution gas ratio rs
i[] set for tables of bo
and pres
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rs |
Union[numpy.ndarray, float] |
The solution gas ratio for bo or bo table. Has shape (M, ) |
required |
pres |
Union[numpy.ndarray, float] |
Pressure values (MPa) to match rs if defined. Has shape (M, ). |
None |
velocity(self, props, **kwargs)
Temperature and pressure dependent acoustic velocity for Oil adjusted for rs
(solution gas) and bo
(FVF).
Velocity is calculated using BW92 oil_velocity.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil velocity (m/s) |
digirock.OilPVT
Oil fluid class for oils with dissolved gas using PVT Tables, i.e. Live Oil.
Uses BW92 elastic properties but replaces the bo
calculation of BW92 with an
explicit table.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
api |
float |
API gravity of oil. |
std_density |
float |
Standard bulk density in g/cc at 15.6degC. |
gas_sg |
float |
The dissolved gas standard gravity. |
pvt |
dict, xarray.DataArray |
PVT table for Oil |
__init__(self, name=None, api=None, std_density=None, gas_sg=None)
special
api
and std_density
are mutually exclusive inputs.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
str |
Name of fluid |
None |
api |
float |
Oil API |
None |
std_density |
float |
Standard bulk density in g/cc at 15.6degC |
None |
gas_sg |
float |
Dissolved gas standard gravity (required) |
None |
bo(self, props)
Interpolate bo from pvt table.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Formation volume factor FVF (L/L) |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for Oil adjusted for rs
(solution gas) and bo
(FVF).
Modulus is calculated using BW92 oil_bulkmod.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil modulus (GPa) |
density(self, props, **kwargs)
Temperature and pressure dependent density for Oil with adjustments for rs
(solution gas) and bo
(FVF).
Density is calculated using BW92 oil_density after adjusting for gas saturation with oil_rho_sat.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
set_pvt(self, rs, bo, pres=None)
Set the PVT table for Oil.
The solution gas ratio rs
i[] set for tables of bo
and pres
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
rs |
Union[numpy.ndarray, float] |
The solution gas ratio for bo or bo table. Has shape (M, ) |
required |
bo |
Union[numpy.ndarray, float] |
Can be a float of table of pressure (MPa) and bo (frac) pairs. Has shape (M, N) |
required |
pres |
Union[numpy.ndarray, float] |
Pressure values (MPa) to match bo. Has shape (M, N). |
None |
velocity(self, props, **kwargs)
Temperature and pressure dependent acoustic velocity for Oil adjusted for rs
(solution gas) and bo
(FVF).
Velocity is calculated using BW92 oil_velocity.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil velocity (m/s) |
digirock.GasBW92
Gas fluid class.
Notes that the acoustic velocity of gas is undefined.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
gas_sg |
float |
Gas specific gravity. |
gas_density |
float |
Gas density (g/cc) |
__init__(self, name=None, gas_sg=None, gas_density=None)
special
gas_sg and gas_density are mutually exclusive inputs.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
str |
Name of fluid |
None |
gas_sg |
float |
Gas specific gravity |
None |
gas_density |
float |
Gas density (g/cc) |
None |
bulk_modulus(self, props, **kwargs)
Temperature and pressure dependent bulk modulus for Gas.
Uses BW92 gas_adiabatic_bulkmod
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Oil modulus (GPa) |
density(self, props, **kwargs)
Temperature and pressure dependent density for Gas.
Uses BW92 gas_oga_density
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Gas density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
set_gas_density(self, gas_density)
Sets the gas density
Calculates gas_sg
using BW92 density of air.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
gas_density |
float |
Density of gas |
required |
set_gas_sg(self, gas_sg)
Set the gas sepcific gravity
Calculates gas_density
using BW92 density of air.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
gas_sg |
float |
gas specific gravity |
required |
digirock.GasPVT
Gas fluid class which uses values from PVDG table and Density/Gravity Tables of ECL PROPS section.
Attributes:
Name | Type | Description |
---|---|---|
name |
str |
name of the fluid |
density_asc |
Density (g/cc) at surface conditions. |
|
pvt |
pvt dicts, contains ref_pres: Reference pressure of bw (MPa) bw: Formation volume factor at ref_pres (rm3/sm3) comp: Compressibility of fluid. l/MPa visc: Viscosity of fluid cP cvisc: Viscosibility (1/MPa) |
__init__(self, density_asc, name=None)
special
Parameters:
Name | Type | Description | Default |
---|---|---|---|
density |
The gas density at surface conditions (g/cc) |
required | |
name |
str |
The fluid ID |
None |
density(self, props, **kwargs)
Pressure dependent density for Gas.
Uses BW92 gas_oga_density
with
bg from table.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
props |
Dict[str, Union[numpy.ndarray, float, int]] |
A dictionary of properties; requires |
required |
kwargs |
ignored |
{} |
Returns:
Type | Description |
---|---|
Union[numpy.ndarray, float] |
Gas density (g/cc) |
get_summary(self)
Return a dictionary containing a summary of the fluid.
Returns:
Type | Description |
---|---|
dict |
Summary of properties. |
set_pvt(self, pres, bg)
Set the PVT table for the gas expansion for a given pressure.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
pres |
Union[numpy.ndarray, float] |
Pressure (MPa) |
required |
bg |
Union[numpy.ndarray, float] |
Expansion relative to surface conditions (vfrac) |
required |
Loading Methods
digirock.load_pvtw
Load a PVTW table into multiple [WaterECL
][digirock.WaterECL] classes.
PVTW tables have the form (where units may differ):
PVTW
--RefPres Bw Cw Vw dVw
-- bara rm3/m3 1/bara cP 1/bara
268.5 1.03382 0.31289E-04 0.38509 0.97801E-04 / -- #1
268.5 1.03382 0.31289E-04 0.38509 0.97801E-04 / -- #2
If salinity is None, the salinity is backed out from the Water density using BW92
wat_salinity_brine
. the DENSITY keyword must
be present in the same input file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
filepath |
Union[str, pathlib.Path] |
Filepath or str to text file containing PVTW keyword tables. |
required |
units |
str |
The Eclipse units of the PVTW table, one of ['METRIC', 'PVTM', 'FIELD', 'LAB']. Defaults to 'METRIC'. |
'METRIC' |
prefix |
str |
The prefix to apply to the name of each loaded fluid. |
'pvtw' |
salinity |
List[int] |
The salinity of the pvt tables in PPM |
None |
Returns:
Type | Description |
---|---|
Dict[str, digirock._fluids._water.WaterECL] |
A dictionary of WaterECL instance for each PVT table entry. |
Exceptions:
Type | Description |
---|---|
AssertionError |
units is not valid |
ValueError |
DENSITY kw not in file with PVTW |
digirock.load_pvto
Load a PVTO table into multiple [OilPVT
][digirock.OilPVT] classes.
PVTO tables have the form (where units may differ):
PVTO
------------------------------------------------------------
--SOLUTION PRESSURE OIL FVF OIL
-- GOR Rs Po Bo VISCOSITY
-- Sm3/Sm3 bara rm3/Sm3 cP
------------------------------------------------------------
--
PVTO
-- REGION 1
27.4 50.0 1.17014 1.224
100.0 1.16296 1.310
150.0 1.15664 1.393 /
54.3 100.0 1.24802 0.953
150.0 1.23902 1.027
200.0 1.23114 1.099 /
/
-- REGION 2
27.4 50.0 1.17014 1.224
100.0 1.16296 1.310
150.0 1.15664 1.393 /
54.3 100.0 1.24802 0.953
150.0 1.23902 1.027
200.0 1.23114 1.099 /
/
api
and std_density
cannot be specified together. If both are None
then the DENSITY keyword must be present in the same input file to get the oil density.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
filepath |
Union[str, pathlib.Path] |
Filepath or str to text file containing PVTW keyword tables |
required |
units |
str |
The Eclipse units of the PVTW table, one of ['METRIC', 'PVTM', 'FIELD', 'LAB']. Defaults to 'METRIC' |
'METRIC' |
prefix |
str |
The prefix to apply to the name of each loaded fluid |
'pvto' |
api |
Union[List[float], float] |
A single oil API or list of API values for each PVT Region in the file |
None |
std_density |
Union[List[float], float] |
A single standard density in g/cc at 15.6degC or a list of values for each PVT Region in the file |
None |
gas_sg |
Union[List[float], float] |
A single standard gravity for the disovled gas or a list of values for each PVT Region in the file |
None |
Returns:
Type | Description |
---|---|
Dict[str, digirock._fluids._oil.OilPVT] |
A dictionary of Oil instance for each PVT table entry. |
Exceptions:
Type | Description |
---|---|
AssertionError |
units is not valid |
digirock.load_pvdg
Load a PVDG table into multiple [GasPVT
][digirock.GasPVT] classes.
PVDG tables have the form (where units may differ):
PVDG
------------------------------------------------------------
--PRESSURE VAPORIZED GAS FVF GAS
-- Pg OGR Rv Bg VISCOSITY
-- bara Sm3/Sm3 rm3/Sm3 cP
------------------------------------------------------------
-- PVT region 1
50.0 0.024734 0.014335
100.0 0.011846 0.015991
150.0 0.007763 0.018581 /
-- PVT region 2
50.0 0.024734 0.014335
100.0 0.011846 0.015991
150.0 0.007763 0.018581 /
Parameters:
Name | Type | Description | Default |
---|---|---|---|
filepath |
Union[str, pathlib.Path] |
Filepath or str to text file containing PVTW keyword tables. |
required |
units |
str |
The Eclipse units of the PVTW table, one of ['METRIC', 'PVTM', 'FIELD', 'LAB']. Defaults to 'METRIC'. |
'METRIC' |
prefix |
str |
The prefix to apply to the name of each loaded fluid. |
'pvdg' |
density_asc |
Union[List[float], float] |
The density of the gas/s, required if DENSITY KW is missing from file. |
None |
Returns:
Type | Description |
---|---|
Dict[str, digirock._fluids._gas.GasPVT] |
A dictionary of GasPVT instance for each PVT table entry. |
Exceptions:
Type | Description |
---|---|
AssertionError |
units is not valid |
ValueError |
DENSITY kw not in file with PVDG |