Reservoir Simulation Datasets

6 December 2019


Purpose of these datasets is using them for testing using MRST and its derivative Proof of Concept (POC) in Pyhon using the machine learning library PyTorch.

Since PyTorch has built-in functionality to work with Graphics Processing Units or GPUs, we expect demonstrating -before embarking in the full porting of MRST-, that PyTorch GPU-based tensors could significantly reduce compute time during reservoir simulation.

Evaluation for Proof of Concept

The steps are the following:

  1. Find the Partial Differential Equations (PDE) that constitute the code of the MRST solvers.

    • Test the running times of the solvers using Matlab and Octave. Some code for testing is available in the latest book An Introduction to Reservoir Simulation Using MATLAB, Octave by Knut-Andreas Lie. See Appendix.
    • Code is being tested for performance under Matlab and Octave. Code will be published in a separate repository.
  2. Replicate the functionality in Python using PyTorch for GPUs.

    • Convert the Matlab code to PyTorch
    • Measure the compute time of the original MRST solvers.

If the compute times are 10 to 100 faster in PyTorch, we will proceed with converting more Matlab code to PyTorch tensor based calculations.


  • MRST (downloaded)
    • SPE9
    • SPE10
    • CaseB4
    • SAIGUP
  • OPM
    • SPE1
    • SPE9
    • SPE10: model1, model2
  • PUNQS3
  • SPE1
  • SPE2
  • SPE3
  • SPE5
  • SPE6
  • SPE9
  • SPE9-petrofaq
  • SPE10


  • SPE10 from MRST contains .dat and .mat files
  • Not all datasets from OPM included here; only SPE, SPE9 and SPE10.
  • SPE10 does not download using MRST-2018. It had to be downloaded from another source. MRST-2019 does download SPE10 normally
  • VOLVE and PUNQS3 available for reference at this time. Tests will mainly focused to datasets available in MRST first.


« A transcript of the interview of John Hopfield by Lex Friedman | My TikZ Favorites »