fmu.tools.properties package
Submodules
fmu.tools.properties.swfunction module
Sw J or BVW or Brooks-Corey general functions, by direct or integration.
Solve a system on form:
sw = a(m + x*h)^b
The “x” can e.g. be the J term in the Leverett equation, but without the height term.
In many cases m is zero.
Note: The public library xtgeo must be available.
- class fmu.tools.properties.swfunction.SwFunction(grid, x=0.0, a=1.0, b=-1.0, ffl=999.0, m=0.0, swira=0.0, swmax=1.0, method='cell_center_above_ffl', gridname='', project=None, invert=False, hcenter=None, htop=None, hbot=None, debug=False, tag='')[source]
Bases:
object
Generic Sw calc for formulation Sw = a * (m + x * h)^b.
Some theory for this is shown here:
pdf
.- Parameters:
grid (
Grid
) – The xtgeo grid objectx (
float
|GridProperty
) – Thex
term in the generic saturation. For a simplified J function, this will be sqrt(perm/poro).a (
float
|GridProperty
) – Thea
term in the generic saturation.b (
float
|GridProperty
) – Theb
term in the generic saturation.ffl (
float
|GridProperty
) – The free fluid level, either as a number or a 3D xtgeo gridproperty object.m (
float
|GridProperty
) – Them
term in the equation above, either as a number or a 3D xtgeo gridproperty object. Defaults to zero.swira (
float
|GridProperty
) – The absolute irreducable satuation applied as asymptote in the equation. Defaults to zero.swmax (
float
|GridProperty
) – The maximum applied as asymptote in the equation. Defaults to 1.method (
str
) – How to look at cell geometry. There are three options: ‘cell_center’, ‘cell_center-above_ffl’ and ‘cell_corners_above_ffl’.gridname (
str
) – Optional - only needed when debug keyword is True.project (
Any
|None
) – Optional. Must be included when working in RMS.invert (
bool
) – Optional, will in case inverta
andb
in case the J function (or similar) is formulated as Sw = (J/A)^(1/B). This is the case in e.g. RMSzdepth – Optional. May speed up computation if provided, in case the function is called several time for the same grid.
hcenter (
GridProperty
) – Optional. May speed up computation if provided, in case the function is called several time for the same grid, or hcenter is pre-computed in a special way. The hcenter will work with direct method only, not integration.htop (
GridProperty
) – Optional. May speed up computation if provided, in case the function is called several time for the same grid.hbot (
GridProperty
) – Optional. May speed up computation if provided, in case the function is called several time for the same grid.debug (
bool
) – If True, several “check parameters” will we given, either as grid properties (if working in RMS) or as ROFF files (if working outside RMS).tag (
str
) – Optional string to identify debug parameters.
-
grid:
Grid
-
x:
float
|GridProperty
= 0.0
-
a:
float
|GridProperty
= 1.0
-
b:
float
|GridProperty
= -1.0
-
ffl:
float
|GridProperty
= 999.0
-
m:
float
|GridProperty
= 0.0
-
swira:
float
|GridProperty
= 0.0
-
swmax:
float
|GridProperty
= 1.0
-
method:
str
= 'cell_center_above_ffl'
-
gridname:
str
= ''
-
project:
Any
|None
= None
-
invert:
bool
= False
-
hcenter:
GridProperty
= None
-
htop:
GridProperty
= None
-
hbot:
GridProperty
= None
-
debug:
bool
= False
-
tag:
str
= ''
Module contents
- class fmu.tools.properties.SwFunction(grid, x=0.0, a=1.0, b=-1.0, ffl=999.0, m=0.0, swira=0.0, swmax=1.0, method='cell_center_above_ffl', gridname='', project=None, invert=False, hcenter=None, htop=None, hbot=None, debug=False, tag='')[source]
Bases:
object
Generic Sw calc for formulation Sw = a * (m + x * h)^b.
Some theory for this is shown here:
pdf
.- Parameters:
grid (
Grid
) – The xtgeo grid objectx (
float
|GridProperty
) – Thex
term in the generic saturation. For a simplified J function, this will be sqrt(perm/poro).a (
float
|GridProperty
) – Thea
term in the generic saturation.b (
float
|GridProperty
) – Theb
term in the generic saturation.ffl (
float
|GridProperty
) – The free fluid level, either as a number or a 3D xtgeo gridproperty object.m (
float
|GridProperty
) – Them
term in the equation above, either as a number or a 3D xtgeo gridproperty object. Defaults to zero.swira (
float
|GridProperty
) – The absolute irreducable satuation applied as asymptote in the equation. Defaults to zero.swmax (
float
|GridProperty
) – The maximum applied as asymptote in the equation. Defaults to 1.method (
str
) – How to look at cell geometry. There are three options: ‘cell_center’, ‘cell_center-above_ffl’ and ‘cell_corners_above_ffl’.gridname (
str
) – Optional - only needed when debug keyword is True.project (
Any
|None
) – Optional. Must be included when working in RMS.invert (
bool
) – Optional, will in case inverta
andb
in case the J function (or similar) is formulated as Sw = (J/A)^(1/B). This is the case in e.g. RMSzdepth – Optional. May speed up computation if provided, in case the function is called several time for the same grid.
hcenter (
GridProperty
) – Optional. May speed up computation if provided, in case the function is called several time for the same grid, or hcenter is pre-computed in a special way. The hcenter will work with direct method only, not integration.htop (
GridProperty
) – Optional. May speed up computation if provided, in case the function is called several time for the same grid.hbot (
GridProperty
) – Optional. May speed up computation if provided, in case the function is called several time for the same grid.debug (
bool
) – If True, several “check parameters” will we given, either as grid properties (if working in RMS) or as ROFF files (if working outside RMS).tag (
str
) – Optional string to identify debug parameters.
-
grid:
Grid
-
x:
float
|GridProperty
= 0.0
-
a:
float
|GridProperty
= 1.0
-
b:
float
|GridProperty
= -1.0
-
ffl:
float
|GridProperty
= 999.0
-
m:
float
|GridProperty
= 0.0
-
swira:
float
|GridProperty
= 0.0
-
swmax:
float
|GridProperty
= 1.0
-
method:
str
= 'cell_center_above_ffl'
-
gridname:
str
= ''
-
project:
Any
|None
= None
-
invert:
bool
= False
-
hcenter:
GridProperty
= None
-
htop:
GridProperty
= None
-
hbot:
GridProperty
= None
-
debug:
bool
= False
-
tag:
str
= ''