MRST - MATLAB Reservoir Simulation Toolbox

AD-FI old
MRST offers capabilities for industry-standard reservoir simulation using fully-implicit discretizations, CPR-type preconditioners in combination with multigrid linear solvers, automated time-step selection, ECLIPSE type input decks, simple computation of adjoints and sensitivities, etc. Since the simulators are based on automatic differentiation, they are simple to extend with new constitutive relationships, extra conservation equations, new functional dependencies, etc


Comparing adjoint and numerical derivatives

In this example a schedule for a simple oil/water system is solved and both numerical and adjoint-based derivatives are calculated for an objective function.

Read more... 


Adjoint derivatives with polymer injection

 In this example the effects of polymer injection is demonstrated on a simple example. The adjoint implementation is independent of all the system used, and can be used here as well.

Read more... 


Fully implicit SPE1

Solving the SPE1 case using a black-oil solver. The results are then validated by comparing to well rates from a commerical simulator.



Fully implicit SPE10, model 2 subset

Solving a subset of the SPE10 model 2 problem using a two phase solver.

Read more... 


Model reduction using Proper Orthogonal Decomposition

The implementation includes a solver independent framework for doing some simple model reduction.

Read more... 



This module contains a set of fully implicit solvers based on automatic differentiation. This enables quick prototyping of new models for subsurface flow without the need to compute Jacobians by hand in a tedious process. The framework includes a standard three-phase black-oil solver as well as Oil/Water and Oil/Water/Polymer solvers.

All the solvers are also capable of calculating analytic derivatives for some objective function using an adjoint formulation. In addition to this,  simple model reduction based on singular value decomposition can be used when solving several similar schedules.

Verification / Validation

The solvers have been tested extensively in-house, with good match with commercial simulators on both standard benchmarks and real field data from partners. For a full worked example, see the SPE1 example from the tutorial section. The figures below show validation studies for the SPE9 benchmark case and the Voador field from Brazil. For SPE9, the only difference from the baseline case is defaulted reference depth for the wells, as they are set to very high values in the input file. All wells are controlled dynamically based on the limits specified by the schedule. MRST shows excellent match with the commercial simulator in both cases.



This module is included with MRST from version 2012b and onwards under the name 'ad-fi' (Automatic differentiation - fully implicit). Later the module has been split into multiple parts, where the basic simulator functionality is found in  'ad-fi', while specific equation systems for black-oil models are found in 'ad-blackoil', etc.

Published December 20, 2012