MRST - MATLAB Reservoir Simulation Toolbox

EOR module
In this module, we provide simulation tools for two water-based enhanced oil recovery techniques, namely polymer and surfactant injection.

Polymer is injected with water to reduce the unfavorable mobility ratio between oil and water, by increasing the water viscosity. Permeability reduction effects also increase the sweep efficiency.

Surfactant is used to mobilize immobile oil. The effect of surfactant is essentially modeled through a parametrization of the relative permeability curves with respect to the surfactant concentration.

The precise model equations used in the module are almost identical to those implemented in Eclipse 100; see the description notes on the polymer and surfactant models used in MRST. For polymer, the models include

  • Todd-Longstaff model for viscosity (includes incomplete mixing)
  • permeability reduction
  • adsorption
  • inaccessible pore space
  • shear-thinning

and for surfactant, the models also include

  • Relative permeability curves that depend on the surfactant concentration. They are obtained by interpolation based on estimation of the capillary number.
  • Water viscosity depending on surfactant concentration (typically tabulated data)
  • Adsorption

The discretization method is based on a standard two-point flux approximation for the pressure and single-point upstream-mobility weighting for evaluating the flux functions in the mass conservation equations, for each component. The polymer simulator is built on  top of a general, three-phase black-oil model, whereas surfactant has only been implemented for an oil-water system. The equations are solved fully implicitly.  To do so, we rely heavily on the automatic-differentiation framework and the flexible Newton solver that are readily available from the modules ad-props and ad-core of MRST. The black-oil implementation is taken from the module ad-blackoil. Adjoint computations for optimization can be setup using the optimization module.

Examples that are available in this module:

  • Black-oil and two-phase flow with polymer injections on a simple 2D model and a more realistic reservoir model (layer of SPE10).
  • An example that illustrates how to set up physical boundary conditions, instead of using well objects.
  • A 3D case using an oil-water model, which also shows how to set up computations of the gradient of an objective function (defined as a net-present-value (NPV) function) with respect to injection parameters by using an adjoint approach. Such computations are essential ingredients in optimization routines.
  • Surfactant injection for two-phase flow, using an 1D model (for illustration purpose) and a 3D model (among which, a layer of the SPE 10).

To get a list of the examples, type mrstExamples('ad-eor').

Polymer example (spe10 layer)

Click on image to obtain full-size version.

Surfactant example (spe10 layer)

Related references

  1. K. Bao, K.-A. Lie, O. Møyner, and M. Liu Fully-implicit simulation of polymer flooding with MRST. ECMOR XV- 15th European Conference on the Mathematics of Oil Recovery, Amsterdam, Netherlands, 29 Aug--1 Sept, 2016. DOI: 10.3997/2214-4609.201601880. The examples of the paper can be downloaded here.
  2. Krogstad S., Lie, K.A., Møyner O., Nilsen H., Raynaud X. and Skaflestad B., MRST-AD--an open-source framework for rapid prototyping and evaluation of reservoir simulation problems, 2015 SPE Reservoir Simulation Symposium, Houston, Texas, USA, 23-25 February 2015. DOI: 10.2118/173317-MS

Published November 29, 2016