Skip to content

yohanesnuwara/MRST-simulations

Repository files navigation

MRST Simulations

My various reservoir simulations done in Matlab Reservoir Simulation Toolbox (MRST). Can be run in Octave.

  • 3D Hydrostatic (gravity) column of incompressible fluid > Script
  • 3D Single-phase incompressible fluid (water) simulation (ALL B.C.) > Script
  • 3D Single-phase compressible fluid (oil) simulation - constant viscosity over pressure (NO FLOW B.C.) > Script
  • 3D Single-phase compressible fluid (gas) simulation - pressure-dependent viscosity (NO FLOW B.C.) > Script
  • 3D Single-phase compressible fluid (polymer) simulation - Non-Newtonian fluid (with 2 numerical methods: cell-based, or face-based) (NO FLOW B.C.) > Script
  • 3D Single-phase compressible fluid simulation with thermal effect (NO FLOW B.C.) > Script
  • Two-phase incompressible and immiscible fluid
    • Simulation of waterflooding to an oil (dead oil) bank
      • 1D Buckley-Leverett simulation > Script
      • 2D Buckley-Leverett simulation > Script
      • Observation of viscous fingering > Script

These scripts are adapted from MRST tutorial codes, but I have modified it.

Note:

  • I added some Matlab functionalities used in the scripts that Octave currently doesn't have, such as deval. See in the ./modules/nuwara folder.
  • I experienced that plotyy (an Octave function) doesn't work properly. plotyy is used e.g. in Simulation 3 to 6 (above). To fix this, this is my way round (in the command line):
    • Add path: addpath 'C:\Octave\Octave-5.2.0\mingw64\share\octave\5.2.0\m\plot\draw'
    • Run: plotyy

Current Experimentation

  • MRST scripts are called from Google Colab
  • For the optimization-related scripts (e.g. computeLorenzSPE10.m), Python optimizers will be used > Porting Python and Octave in Google Colab
  • Utilizing GPU in Google Colab to run the MRST scripts, speeding up simulations