We try to share our codes on GitHub as much as possible. Check out the GAIA repository here: https://github.com/GAIA-UNIL. Below is a description of some elements of this repository. You will also find some other things, such as links to external codes we are typically using or datasets.
A set of training images is provided on our repository.
MPS using Quantile Sampling
The Quantile Sampling MPS code is freely available for Linux / macOS / Windows 10 and is usable form Matlab / Python3 and R on the dedicated GitHub repository. This is our latest MPS implementation, more recent than Direct Sampling, and often faster.
MPS using Direct Sampling
The Direct Sampling code comes in many versions. Some are properly compiled codes, other only Matlab scripts:
A full version, with graphical interface, examples and a proper documentation, can be requested from the University of Neuchatel by contacting Prof. Philippe Renard (https://www.unine.ch/philippe.renard/home/the-team/philippe-renard.html). It is only available for academic, non-commercial purposes, and to the discretion of the University of Neuchatel. It is the most advanced and best implemented distribution of DS.
The full version of DS that I developed in his PhD and continued to develop since (but less and less as the version above has most features). It comes as a compiled C executable that you can obtain from me on demand, but you will still have to sign an academic license agreement with the University of Neuchatel. If you want it, just send me an email and we can see if this can be arranged. In this version, most of the features presented in the literature are present.
There is an excellent and freely available MPS library written by Thomas Hansen from the Nield Bohr Institute, available here http://www.sciencedirect.com/science/article/pii/S2352711016300164: .
A simple version written in Matlab, with a fixed template, is available for demonstration and teaching purposes. IT SHOULD NOT BE USED FOR BENCHMARKING OR FOR COMPARISON WITH OTHER METHODS BECAUSE IT IS EXTREMELY BASIC AND SLOW.
An advanced version of the Matlab Direct Sampling code for is also available. It considers variable lag vectors and flexible data events, and seems to have issues with conditioning (I will fix it when I find the time). THIS ONE SHOULD ALSO NOT BE USED FOR BENCHMARKING OR FOR COMPARISON WITH OTHER METHODS BECAUSE EVEN SLOWER THAN THE SIMPLE VERSION. MOREOVER IT HAS PROBLEMS WITH CONDITIONING.
Note that there may be other versions out there that I am not aware of!
MPS using Graph-cuts based simulation
We recently developed a graph-cuts based MPS simulation algorithm which is an improvement over Image Quilting. The Matlab code can be found here.
MPS using Image Quilting
General purpose utilities
Here is a set of small Matlab geostatistical tools that you can download and use freely. A basic documentation is also included. Thanks for sending feedback!
Our patterns validation code (Windows executable and Fortran code) allows finding out if a training image is compatible with a given data pointset.
If you are working on spatial inverse models with MPS and are looking for a benchmark forward flow and transport model, you can use one of the case studies we developed in our paper on parallel tempering. It uses the MAFLOT flow and transport simulation code for the forward problem (http://www.maflot.com/Site/MaFloT.html). The forward problem is very fast, which is needed when investing inverse approaches.