Rock and saturation properties#
Rock records#
Each physical layer uses [Kxy, Kz, porosity, thickness, z_cells]. Only the
final boundary-rock record may use [Kxy, Kz, porosity]. Permeabilities are
non-negative, porosity lies in [0, 1], thickness is positive, and cell counts
are positive integers.
Saturation expressions#
krw, krn, and pcap are restricted Python expressions that must
reference sw. Approved positional NumPy functions include np.maximum,
np.minimum, np.clip, np.where, np.exp, np.log, and related
safe numerical functions.
Saturation records#
Every safu row has 11 entries: swi, sni, wetting and non-wetting
end points, entry pressure, three exponents, capillary threshold, low-saturation
control, and number of points. Endpoint saturations lie in [0, 1] and sum to at
most one. At least two table points are required.
Hysteresis and boundary behavior#
ehystr configures EHYSTR. pvmult controls boundary pore volume: positive
values apply a multiplier, zero may use producers, and -1 disables it.