Ziyi Yin
Georgia Institute of Technology
Mathias Louboutin
Georgia Institute of Technology
Ali Siahkoohi
Georgia Institute of Technology
Gabrio Rizzuti
Georgia Institute of Technology
Rafael Orozco
Georgia Institute of Technology
Felix J. Herrmann
Georgia Institute of Technology
Philipp A. Witte
Microsoft Research for Industry
Henryk Modzelewski
University of British Columbia

Julia for geoscience

In this tutorial, we will introduce the Julia programming language to the geoscience community, covering topics such as I/O, data processing, inversion, and machine learning. We will begin by installing Julia and relevant packages. Through a series of tutorials, we will demonstrate Julia's abstraction power and show how to load and plot data, write your own functions/operators, form and solve a geophysical inverse problem, and demonstrate how to integrate wave-equation solvers in Julia with machine learning frameworks. The intent of this presentation is to provide an introductory level tutorial that will be useful to members of the geoscience community.


  • Ziyi Yin - Georgia Institute of Technology


This tutorial has been made possible by the collaborative work of a number of contributors:

  • Mathias Louboutin, Ali Siahkoohi, Gabrio Rizzuti, Ziyi Yin, Rafael Orozco, Felix J. Herrmann at Georgia Institute of Technology
  • Philipp A. Witte at Microsoft Research for Industry (alumni of SLIM group)
  • Henryk Modzelewski at the University of British Columbia


The software packages used in the tutorial are located in the Seismic Laboratory for Imaging and Modeling (SLIM) public GitHub Account https://github.com/slimgroup, more information about the SLIM group is at https://slim.gatech.edu/.

What you’ll need

Executed Tutorial Notebooks