Field data inversion (“Koenigsee”)

This minimalistic example shows how the Refraction Manager can be used to invert a field data set. Here, we consider the Koenigsee data set, which represents classical refraction seismics data set with slightly heterogeneous overburden and some high-velocity bedrock. The data file can be found in the pyGIMLi example data repository.

We import pyGIMLi and the refraction manager.

import pygimli as pg
from pygimli.physics import Refraction

The helper function pg.getExampleFile downloads the data set and saves it into a temporary location.

filename = pg.getExampleFile("traveltime/koenigsee.sgt")

We initialize an instance of the refraction manager with the filename.


Data: Sensors: 63 data: 714
Refraction object
Data: Sensors: 63 data: 714

Let’s have a look at the data in the form of traveltime curves and apparent velocity images.

ra.showData()  # show first arrivals as curves (done later with response)
ra.showVA()  # show data as apparent velocity image
  • ../../_images/sphx_glr_plot_5_koenigsee_001.png
  • ../../_images/sphx_glr_plot_5_koenigsee_002.png


(<matplotlib.axes._subplots.AxesSubplot object at 0x7f40fcbb9e80>, <matplotlib.colorbar.Colorbar object at 0x7f40f5a62c50>)

Finally, we call the invert method and plot the result.The mesh is created based on the sensor positions on-the-fly. Yes, it is really as simple as that.



(<matplotlib.axes._subplots.AxesSubplot object at 0x7f40fc139470>, <matplotlib.colorbar.Colorbar object at 0x7f40fcbe3ac8>)

You can play around with the gradient starting model (vtop and vbottom arguments) and the regularization strength lam. You can also customize the mesh by calling ra.createMesh() with options of your choice prior to the inversion call.

Gallery generated by Sphinx-Gallery

2019 - GIMLi Development Team
Created using Bootstrap, Sphinx and pyGIMLi 1.0.12+18.g099282e0 on Jan 27, 2020.