SoftwareX (May 2023)
PyFWI: A Python package for full-waveform inversion and reservoir monitoring
Abstract
Full-waveform inversion (FWI) of seismic data is a technique that can be used to image the subsurface as well as to monitor time-lapse changes in the subsurface (TL-FWI). PyFWI is a package that has been designed to carry out FWI and TL-FWI efficiently on GPU for research purposes. Several time-lapse strategies are implemented in PyFWI, such as parallel, double-difference, cascaded, central-difference, cross-updating, simultaneous, and weighted-average. An important challenge of TL-FWI is the crosstalk between parameters across different vintages. To alleviate this problem, PyFWI allows using different parameterizations. PyFWI is written in Python and relies on OpenCL for enabling calculations on GPUs, which leads to significant reduction of computation time compared to CPU implementation. Using OpenCL makes PyFWI portable across systems built with GPUs from different manufacturers.