A Python framework for efficient use of pre-computed Green's functions in seismological and other physical forward and inverse source problems

Sebastian Heimann, Hannes Vasyura-Bathke, Henriette Sudhaus, Marius Paul Isken, Marius Kriegerowski, Andreas Steinberg, Torsten Dahm

Research output: Contribution to journalArticlepeer-review

47 Scopus citations


The finite physical source problem is usually studied with the concept of volume and time integrals over Green's functions (GFs), representing delta-impulse solutions to the governing partial differential field equations. In seismology, the use of realistic Earth models requires the calculation of numerical or synthetic GFs, as analytical solutions are rarely available. The computation of such synthetic GFs is computationally and operationally demanding. As a consequence, the on-the-fly recalculation of synthetic GFs in each iteration of an optimisation is time-consuming and impractical. Therefore, the pre-calculation and efficient storage of synthetic GFs on a dense grid of source to receiver combinations enables the efficient lookup and utilisation of GFs in time-critical scenarios. We present a Python-based framework and toolkit-Pyrocko-GF-that enables the pre-calculation of synthetic GF stores, which are independent of their numerical calculation method and GF transfer function. The framework aids in the creation of such GF stores by interfacing a suite of established numerical forward modelling codes in seismology (computational back ends). So far, interfaces to back ends for layered Earth model cases have been provided; however, the architecture of Pyrocko-GF is designed to cover back ends for other geometries (e.g. full 3-D heterogeneous media) and other physical quantities (e.g. gravity, pressure, tilt). Therefore, Pyrocko-GF defines an extensible GF storage format suitable for a wide range of GF types, especially handling elasticity and wave propagation problems. The framework assists with visualisations, quality control, and the exchange of GF stores, which is supported through an online platform that provides many pre-calculated GF stores for local, regional, and global studies. The Pyrocko-GF toolkit comes with a well-documented application programming interface (API) for the Python programming language to efficiently facilitate forward modelling of geophysical processes, e.g. synthetic waveforms or static displacements for a wide range of source models.
Original languageEnglish (US)
Pages (from-to)1921-1935
Number of pages15
JournalSolid Earth
Issue number6
StatePublished - Nov 11 2019

Bibliographical note

KAUST Repository Item: Exported on 2020-10-01
Acknowledged KAUST grant number(s): BAS/1/1353-01-01
Acknowledgements: Henriette Sudhaus, Andreas Steinberg, and Marius Paul Isken acknowledge funding by the German Research Foundation (DFG) through an Emmy-Noether Young Researcher Grant (276464525). Hannes Vasyura-Bathke was financially supported by the King Abdullah University of Science and Technology (KAUST) BAS/1/1353-01-01 as well as by Geo.X, the Research Network for Geosciences in Berlin and Potsdam (project number: SO_087_GeoX). Torsten Dahm and Sebastian Heimann acknowledge co-funding by SERA (EU grant 730900). Timothy Willey helped to implement fomosto report plots. We thank the University of Nevada, Reno, for processing and providing GNSS deformation data for Mayotte (Blewitt et al., 2018).


Dive into the research topics of 'A Python framework for efficient use of pre-computed Green's functions in seismological and other physical forward and inverse source problems'. Together they form a unique fingerprint.

Cite this