Introduction
Petroleum production
Reservoir simulation
Outline of the book
The first encounter with MRST
Part I Geological Models and Grids
Modelling Reservoir Rocks
Formation of sedimentary rocks
Creation of crude oil and natural gas
Multiscale modelling of permeable rocks
Macroscopic models
Representative elementary volumes
Microscopic models: The pore scale
Mesoscopic models
Modelling rock properties
Porosity
Permeability
Other parameters
Property modelling in MRST
Homogeneous models
Random and lognormal models
10th SPE Comparative Solution Project: Model 2
The Johansen Formation
SAIGUP: shallow-marine reservoirs
Grids in Subsurface Modeling
Structured grids
Unstructured grids
Delaunay tessellation
Voronoi diagrams
Other types of tessellations
Using an external mesh generator
Stratigraphic grids
Corner-point grids
2.5D unstructured grids
Grid structure in MRST
Examples of more complex grids
Part II Single-Phase Flow
Mathematical Models and Basic Discretizations
Fundamental concept: Darcy's law
General flow equations for single-phase flow
Auxiliary conditions and equations
Boundary and initial conditions
Injection and production wells
Field lines and time-of-flight
Tracers and volume partitions
Basic finite-volume discretizations
Two-point flux-approximation
Discrete div and grad operators
Time-of-flight and tracer
Incompressible Solvers
Basic data structures in a simulation model
Fluid properties
Reservoir states
Fluid sources
Boundary conditions
Wells
Incompressible two-point pressure solver
Upwind solver for time-of-flight and tracer
Simulation examples
Quarter five-spot
Boundary conditions
Structured versus unstructured stencils
Using Peaceman well models
Single-Phase Flow and Rapid Prototyping
Implicit discretization
A simulator based on automatic differentiation
Model setup and initial state
Discrete operators and equations
Well model
The simulation loop
Pressure-dependent viscosity
Non-Newtonian fluid
Thermal effects
Part III Multiphase Flow
Mathematical Models for Multiphase Flow
New physical properties and phenomena
Saturation
Wettability
Capillary pressure
Relative permeability
Flow equations for multiphase flow
Single-component phases
Multicomponent phases
Black-oil models
Model reformulations for immiscible two-phase flow
Pressure formulation
Fractional flow formulation in phase pressure
Fractional flow formulation in global pressure
Fractional flow formulation in phase potential
Richards' equation
The Buckley–Leverett theory of 1D displacements
Horizontal displacement
Gravity segregation
Front tracking: semi-analytical solutions
Solvers for Incompressible Immiscible Flow
Fluid objects for multiphase flow
Sequential solution procedures
Pressure solvers
Saturation solvers
Simulation examples
Buckley–Leverett displacement
Inverted gravity column
Homogeneous quarter five-spot
Heterogeneous quarter five-spot: viscous fingering
Buoyant migration of CO2 in a sloping sandbox
Water coning and gravity override
The effect of capillary forces – capillary fringe
Norne: simplified simulation of a real-field model
Numerical errors
Splitting errors
Grid-orientation errors
Part IV Reservoir Engineering Workflows
Flow Diagnostics
Flow patterns and volumetric connections
Volumetric partitions
Time-of-flight per tracer region: improved accuracy
Well-allocation factors
Measures of dynamic heterogeneity
Flow and storage capacity
Lorenz coefficient and sweep efficiency
Summary of diagnostic curves and measures
Case studies
Tarbert formation: volumetric connections
Layers of SPE10: heterogeneity and sweep improvement
Interactive flow diagnostics tools
Simple 2D example
SAIGUP: flow patterns and volumetric connections
The MATLAB Reservoir Simulation Toolbox
Getting started with the software
Core functionality and add-on modules
Downloading and installing
Exploring the functionality and getting help
Release policy and version numbers
Software requirements and backward compatibility
Terms of usage
Public data sets and test cases
More about modules and advanced functionality
Operating the module system
What characterizes a module?
List of modules
Rapid prototyping using MATLAB and MRST
Automatic differentiation in MRST
References