pyscal.utils.capillarypressure
Support functions for capillary pressure
- pyscal.utils.capillarypressure.simple_J(sw, a, b, poro_ref, perm_ref, drho, g=9.81)[source]
Calculate capillary pressure with bar as unit
RMS version:
\[J = a S_w^b\]J is not dimensionless in this equation.
This is identical to the also seen formula
\[J = 10^{b \log(S_w) + \log(a)}\]- Parameters:
sw (
float
) – float, water saturation value to be used. Normalize when needed.a (
float
) – a coefficientb (
float
) – b coefficientporo_ref (
float
) – Reference porosity for scaling to Pc, between 0 and 1perm_ref (
float
) – Reference permeability for scaling to Pc, in milliDarcydrho (
float
) – Density difference between water and oil, in SI units kg/m³. Default value is 300g (
float
) – Gravitational acceleration, in SI units m/s², default value is 9.81
- Return type:
float
- Returns:
capillary pressure, same type as swnpc input argument.
- pyscal.utils.capillarypressure.swl_from_height_simpleJ(swlheight, swirr, a, b, poro_ref, perm_ref)[source]
Calculate a swl value based on a height parameter.
The height parameter is typically meters above free water level (FWL)
- Parameters:
swlheight (
float
) – Height above free water level, in meters, where we want swl to be.swirr (
float
) – Asymptotic irreducible water saturation. This is used to normalized the outputted swl.a (
float
) – a coefficient in RMS simplified J functionb (
float
) – b coefficient in RMS simplified J functionporo_ref (
float
) – Reference porosity for scaling to Pc, between 0 and 1perm_ref (
float
) – Reference permeability for scaling to Pc, in milliDarcy
- Return type:
float
- Returns:
A value that can be used for swl.