CC-FJpy: A Python Package for seismic ambient noise cross-correlation
and the frequency-Bessel transform method
Abstract
In the past two decades, surface wave imaging based on seismic ambient
noise cross-correlation (CC) has been one of the most important
technologies in the field of seismology. With the development of this
technology, high-mode surface waves have received increasing attention,
especially after the proposition of the frequency-Bessel transform (F-J)
method, which can effectively extract multimode dispersion curves from
ambient noise data. In the past few years, our research group has made
many attempts to improve this method. We summarized these experiences
and the corresponding algorithm for fast CC, and packaged them into a
Python package called CC-FJpy. It is commonly understood that CC takes a
good deal of time. However, we found that a simple reorganization of the
CC logic can achieve computational acceleration by a multiple of tens or
even hundreds in comparison with classical CC open-source programs for N
stations. For the F-J method, we use Nvidia’s graphics processing unit
(GPU) to speed up computation, and this approach achieves a
hundreds-fold computational acceleration. We have encapsulated our
experiences and technologies into CC-FJpy and submitted it to various
types of data tests to ensure its speed and ease of use. We hope that
providing the open source of CC-FJpy can benefit the development of
surface wave studies and make it easier to start with high-mode surface
waves. We look forward to your use and valuable suggestions.