PyWinAdjoint is a set of scripts for carrying out time-window selection and computing exponentiated phase adjoint sources for full-waveform inversion.
Author: Caio Ciardelli
If you use PyWinAdjoint, please, cite the following paper:
Ciardelli, C., Assumpção, M., Bozdağ, E., & van der Lee, S. (2022). Adjoint waveform tomography of South America. Journal of Geophysical Research: Solid Earth, vol. 127, n° 2, e2021JB022575. https://doi.org/10.1029/2021JB022575
PyWinAdjoint requires no installation, but some requirements must be met:
- Python3.8 or later
- Obspy1.1.0 or later
- FFTW3 or later
To compile the code, just run the Makefile:
makeDevelopment is hosted on GitHub in the caio.ciardelli/pywinadjoint repository.
Please, also cite:
Yuan, Y.O., Bozdağ, E., Ciardelli, C., Gao, F., Simons, F.J., 2020. The exponentiated phase measurement, and objective-function hybridization for adjoint waveform tomography. Geophysical Journal International, vol. 221, n° 2, p. 1145-1164. https://doi.org/10.1093/gji/ggaa063,
for the exponentiated phase measurement and:
Ruan, Y., Lei, W., Modrak, R., Örsvuran, R., Bozdağ E., Tromp, J., 2019. Balancing unevenly distributed data in seismic tomography: a global adjoint tomography example. Geophysical Journal International, vol. 219, n° 2, p. 1225-1236. https://doi.org/10.1093/gji/ggz356,
for the receiver weights to balance uneven station distribution.
This package is still under development, hence it still lacks a detailed documentation. You can set the parameters in the "Config.cfg" file.
To execute the example, just run:
./run_example.bashIn case you set "save_binary" to "True" in the "Config.cfg" file, you need to convert the adjoint sources from binary to the ASCII format. To do that, run:
./utils/expand.bash 1 4If you have any questions, suggestions, and bug reports, you can email caio.ciardelli@gmail.com