# Welcome to the MRST quick documentation!¶

- Core functionality
- Plotting routines
- Grid generation, processing and manipulation
- Parameters, states and forces
- Utilities
- Units
- Examples
- My First Flow Solver: Gravity Column
- Single-phase Compressible AD Solver
- Introduction to Automatic Differentiation
- Basic Objects in MRST Workflows
- Visualizing in MRST
- Stair-stepped grid
- Visualizing the Johansen Data Set
- Introduction to the Norne Model
- Introduction to the SAIGUP Model
- Model 2 of the 10th SPE Comparative Solution Project
- How to Read, Display, and Manipulate Corner-Point Grids
- Overview of Grid Factory Routines
- Basic Grid Tutorial: Rectilinear/Curvilinear Grids
- Basic Grid Operations and Manipulations: Rectilinear/Curvilinear Grids

`ad-core`

: Automatic Differentiation Core- Models
- Simulators
- Solvers
- Time-step selection
- Model upscaling
- Plotting
- Automatic differentation backends
- Utilities
- Examples
- Classic Buckley-Leverett Problem: 1D Horizontal Displacement
- Managing simulations: Restart, packed problems and more
- The use of regions: Different functions in different parts of the domain
- Demonstrate Interactive Plotting of Fluid Properties for AD-solvers
- Introduction to StateFunctions for the AD-OO framework
- Set up scenario

`ad-props`

: PVT, fluid models and other properties for the AD-solvers`ad-blackoil`

: Black-oil solvers- Models
- Utilities
- Examples
- load modules
- Example demonstrating use of boundary conditions for pressure support
- Fully-implicit
- Gravity segregation using two phase AD solvers
- Example demonstrating accelerated assembly for faster simulation
- Example: Depletion of a closed or open reservoir compartment
- Example demonstrating in-situ plotting capabilities in MRST-AD
- Fully-implicit
- Multi-segment well example based on SPE 1 benchmark model
- Workflow example for MRST-AD
- Example demonstrating the two-phase oil-water Egg model
- The Odeh Benchmark (SPE1)
- Automated Time-Step Control
- Example Simulation of Model One From Tenth SPE CSP
- Ninth Comparative Solution Project

`ad-eor`

: Enhanced oil recovery solvers- Models
- Utilities
- Examples
- Computation of Adjoints for Polymer and Waterflooding
- Set up model and initial conditions
- Polymer solver with boundary conditions and sources
- Black-Oil Polymer System for a Layer of the SPE10 Model
- 2D Tutorial For ad Black-Oil-Surfactant system
- 1D Tutorial For a Oil-Water-Surfactant system
- Tutorial for a simple 3D case of a oil-water-surfactant system

`ad-mechanics`

: Coupled flow and mechanics`adjoint`

: Two-phase, incompressible adjoint solvers`agglom`

: Flow and property-based coarse-grid generation`blackoil-sequential`

: Sequential implicit black-oil solvers- Models
- Utilities
- Examples
- Buckley-Leverett problem with multiple substeps
- Set up simulation problem
- Simulate the Egg model
- Set up and run a five-spot problem with water-alternating-gas (WAG) drive
- Compare sequential solver to fully implicit, applied to the SPE1 problem
- Solve layers of SPE10 with sequential and fully implicit solver

`book`

: Book examples- Examples
- Example: specification of boundary conditions
- Use of Peacemann well models
- Gravity Column
- Compare grid-orientation effects for TPFA/mimetic schemes
- Quarter five spot
- Pressure Solver: Example of a realistic Field Model
- Grid-orientation and anisotropy effects
- Demonstrate lack of convergence for the TPFA scheme
- Solve the Poisson problem
- Grid
- Grid
- Triangular grid
- Non-Newtonian fluid
- Non-Newtonian fluid
- Single-phase compressible AD solver
- Pressure-dependent viscosity
- Single-phase compressible AD solver with thermal effects
- Lorenz coefficient for layers of SPE 10, Model 2
- Example: Interactive Diagnostics Tool for the SAIGUP Model
- Simple 2D reservoir with two injectors and three producers
- Simple Model of an Anticline
- Set up and solve flow problem
- Illustrate the use of residence-time distributions
- Generate Coarse Grids with Near-Well Refinement
- Coarsen Real Models: the Johansen Formation
- Coarsen Real Models: SAIGUP Shallow-Marine Reservoir Model
- Example: three uses of simpleGrdecl
- CaseB4: merge small cells
- —— S E G M E N T A T I O N ——
- Simple Model of an Anticline
- Stair-stepped grid
- Examples of How to Generate Coarse Grids
- Illustration of Geometry Computation for a Hexahedral Cell
- Show Geometry Computation for a PEBI Cell
- Example of Realistic Corner-Point Geometry: SAIGUP
- Graphical View of the Grid Structure
- Hierarchical Coarsening
- Example 1: Cartesian grid with radial refinement
- Example 1: Cartesian grid with refinement in the middle
- Examples of Voronoi / Perpendicular Bisector (PEBI) grids
- How to Partition Grids
- Plot pillars
- Plot grid
- Simple 2D Cartesian grids
- Tessellations of 2D space
- Triangulation of a set of random points
- Illustrate the correspondence between Voronoi and Delaunay
- Classic test case: 1D Buckley-Leverett
- Two-Phase Flow in Inclined Gravity Column
- Capillary Equilibrium within Vertical Columns
- Simulate model with water coning
- Grid-orientation effects for the five-spot
- Inverted Gravity Column
- Simulate model with gravity override
- Homogeneous quarter five-spot
- Two-Phase Incompressible Simulation on the Norne Model
- Demonstrate various analytical fluid models
- Compare grid-orientation effects for skew grids
- Heterogeneous quarter five-spot: temporal splitting errors
- Quarter five-spot: Illustration of temporal splitting errors
- Heterogeneous quarter five-spot
- Simple formula using two scalars
- Bed Models 1
- Show fluid models from SPE 1, SPE 3 and SPE 9
- Conceptual three-phase compressible model
- Conceptual two-phase compressible model
- Advection: classic schemes
- Visualizing the Johansen Data Set
- Visualizing a realization of the SAIGUP project
- Modle 2 of the 10th SPE Comparative Solution Project
- Simple examples
- Averaging of SPE10 layer
- Assessment of upscaling accuracy on 8x8x8 grid
- Figures for conceptual illustration of upscaling
- Upscale a problem with a diagonal trend
- Assessment of upscaling accuracy on 8x8x8 grid
- Upscale a problem with a diagonal trend
- Illustrate use of flow diagnostics to verify upscaling
- Upscaling workflow

- Examples
`coarsegrid`

: Generation of coarse grids`compositional`

: Equation-of-state compositional solvers- Models
- PVT models
- Examples
- Example comparing natural variables and overall composition with boundary conditions
- Example demonstrating a three dimensional, six component problem
- Conceptual example on how to run larger compositional problems
- Compare MRST results with other simulators
- Example demonstrating compositional solvers with K-values

`co2lab`

: Numerical CO_{2}laboratory- Examples
- Grid Models from the CO2 Storage Atlas
- CO2 Storage Atlas: the Norwegian North Sea
- Johansen formation: the effect of coarsening on trapping
- Trapping example
- Optimal injection points
- Top-Surface Grids
- Interactive spill point analysis of top surface grids
- Effects of scales structures on trapping capacity
- IGEMS Data Set
- Inspect the Hugin West Formation
- Trapping on Johansen grids
- Brine Production Example
- VE simulation in a standard black-oil solver
- Examples to demonstrate forecast of CO2 leakage and its application
- Simple example of pressure-limited injection for CO2 storage
- VE-incomp: Comparison of h and S-formulation
- Vertical-Averaged Simulation of the Johansen Formation
- Vertical-Averaged Simulation: SLEIPNER
- VE-incomp: C-accelerated simulation of sloping aquifer
- VE-incomp: C-Acceleration on Large Model
- Simulate long term migration on the Utsira formation

- Examples
`deckformat`

: Reading and conversion of input decks`dfm`

: Discrete fracture matrix implementation`dg`

: Discontinous Galerkin discretizations`diagnostics`

: Flow diagnostics functionality- Examples
- Ranking of different realizations of the same model
- Flow Pattern and Dynamic Heterogeneity for 2D Five-Spot Problem
- Introduction to Flow Diagnostics
- Optimizing Well Placement and Rates
- Well Optimization using Adjoints and Flow Diagnostics
- Illustrate use of flow diagnostics to verify upscaling
- Interactive diagnostics on the SAIGUP dataset
- Well-Pair Diagnostics for 3D Subset of SPE10
- Diagnostics GUI using MRST simulation output

- Examples
`dual-porosity`

: Dual porosity/permeability model for fractures`fvbiot`

: Consistent finite-volume discretizations for poroelasticity`geochemistry`

: Surface geochemistry`heterogeneity`

`hfm`

: Hierarchical and embedded fractures`incomp`

: Solvers for incompressible flow and transport- Examples
- Norne: Single-Phase Pressure Solver
- SAIGUP: Solving One-Phase Flow on a Realistic Corner-Point Model
- Basic Flow-Solver Tutorial
- Pressure Solver: Simple Corner-Point Grid with Linear Pressure Drop
- How to Specify Sources and Boundary Conditions
- Time-of-flight
- Using Peacemann Well Models
- Norne: Two-Phase Incompressible Simulator
- SAIGUP: Solving Two-Phase Flow on a Realistic Corner-Point Model
- Interopability between incomp solvers and ad-props fluids
- Pressure Solver with capillary pressure:
- Two-Phase Flow in Inclined Gravity Column
- Basic Transport-Solver Tutorial

- Examples
`libgeometry`

:`linearsolvers`

:`matlab_bgl`

:`mimetic`

: Mimetic solvers for pressure problems`mpfa`

: Multi-point flux approximation solvers for pressure`mrst_api`

: API for writing C/C++ for MRST`mrst-gui`

: Graphical user-interfaces for MRST`msfvm`

: Multiscale Finite-Volume method for pressure- Utilities
- Examples
- MsFV example on PEBI grid
- Example demonstrating the effects of aspect ratios and contrast on msfvm
- Example demonstrating Multiscale Finite Volume Solver over a fault for a corner point grid.
- A simple two phase problem solved using the Multiscale Finite Volume method
- Multiscale Finite Volume Pressure solver: Iterative improvements
- Multiscale Finite Volume Pressure Solver

`msmfem`

: Multiscale Mixed Finite-Element method for pressure- Utilities
- Examples
- Multiscale Pressure Solver: Simple Case Driven by Gravity
- Basic Multiscale Tutorial
- Multiscale Pressure Solver: Simple Corner-Point Grid with Linear Pressure Drop
- plot output
- Multiscale Pressure Solver: Flow Driven by Horizontal and Vertical Well
- Alternative 1:
- Multiscale Pressure Solver with Overlap:
- Multiscale: Sources and Boundary Conditions
- Multiscale Pressure Solver: Flow Driven by Horizontal and Vertical Well
- Multiscale Pressure Solver with Overlap:
- Multiscale Pressure Solver Speed up:
- Multiscale Pressure Solver: Dynamic update of basis functions

`msrsb`

: Multiscale Restriction-Smoothed Basis method for pressure- Utilities
- Examples
- Simulate a transport problem with the MsRSB method
- MsRSB basis function with mex acceleration
- Multiscale solver applied to high-resolution bed model
- Problem comparing different multiscale methods on an idealized channel
- Multiscale solver with inactive cells / inclusions
- Introduction to the use of multiscale solvers as an iterative two-level method
- Introduction to multiscale finite-volume methods
- Lack of Monotonicity (Layers of SPE10)
- Water injection in a field model using the MsRSB-method

`nwm`

: Near Wellbore Modelling- Examples
- The grids in the Near-wellbore modeling (NWM) method
- Coupled model of the near-wellbore model (NWM) and multi-segment well (MSW)
- Simulation on the Near-wellbore modeling (NWM) hybrid grid
- Near-wellbore modeling (NWM) workflow example
- Example of connecting the well-region grid to Cartesian grid by the Voronoi grid
- Demonstration of gluing the radial grid to Cartesian grid
- Example of simulation on a radial-Cartesian hybrid grid
- Demonstration of building an individual radial grid
- Example of creating layered grids

- Examples
`opm_gridprocessing`

`optimization`

`re-mpfa`

: Richards’ equation with multi-point flux`solvent`

: Solvent solvers`spe10`

: Access to the SPE10 benchmark case`steady-state`

Steady-state upscaling of functions`streamlines`

: Compute streamlines`triangle`

: Triangular grids`upscaling`

: Upscaling of reservoir problems`vem`

: Virtual element method on general grids`vemmech`

: Mechanics for general grids using the virtual element method`wellpaths`

: Generation of wells using general curves