late_filling#

late_filling(phase, pressure='pore.pressure', Pc_star='pore.pc_star', Swp_star=0.2, eta=3)[source]#

Calculates the fraction of a pore or throat filled with invading fluid based on the capillary pressure in the invading phase. The invading phase volume is calculated from:

\[S_{nwp} = 1 - S_{wp}^{*} (P^{*}/P_{c})^{\eta}\]
Parameters:
  • pressure (str) – Name of the dictionary key on the target object pointing to the array containing values of capillary pressure in the non-wetting phase (Pc > 0).

  • Pc_star (str) – Name of the dictionary key on the target object pointing to the array containing values of minimum pressure required to create an interface within the pore body or throat. Typically this would be calculated using the Washburn equation.

  • Swp_star (float) – The residual wetting phase in an invaded pore or throat at a pressure of pc_star.

  • eta (float) – Exponent controlling the rate at which wetting phase is displaced with increasing pressure.

Returns:

  • values (ndarray) – A numpy ndarray containing the computed values of fraction of each pore or throat that would be filled with

  • non-wetting phase at the given phase pressure. This does not account

  • for whether or not the element is actually invaded, which requires a

  • percolation algorithm of some sort.