xcap3d

Moment tensor and depth of a Southern California earthquake from its SCEDC event ID. xcap3d downloads the seismograms from SCEDC, fits them in the manner of the CAP method with Green’s functions from 3-D SPECFEM3D simulations in the SCEC velocity model cvmsi, scans depth and mechanism, and writes the result and an HTML report. The Green’s functions come from a database of strain Green’s tensor stores, one per station, which is not part of the package.

xcap3d workflow

Install

xcap3d needs Python 3.10 or later. From a checkout of this repository:

pip install -e .    # numpy, scipy, h5py, obspy; jinja2, matplotlib, pillow, cartopy for the reports

Add gpu (PyTorch) for the grid search on a GPU: pip install -e '.[gpu]'. The first report downloads the Natural Earth coastlines for its map, once.

Quick start

DB is the Green’s-function database directory, provided by the operator:

xcap3d run 38695658 --gf DB --mt full --refine --report

This is the M4.5 South El Monte earthquake of 19 September 2020. The command downloads the waveforms, picks and station metadata from SCEDC, removes the instrument responses, inverts the waveforms and ends with

xcap3d-out/38695658/report.html
38695658 production: depth 15.5 km  FM 263/43/92  Mw 4.56  VR 67.8

FM is strike/dip/rake in degrees, VR the variance reduction in percent. Open report.html in a browser; the numbers are in result.json beside it. The outputs go to ./xcap3d-out unless --out DIR or XCAP3D_OUT says otherwise.

The same in single steps: xcap3d download 38695658, xcap3d process 38695658, xcap3d invert 38695658 --gf DB --mt full --refine --report. The manual, https://jxli2a.github.io/xcap3d/, describes each step, the outputs and the options; each command has --help. The manual’s examples show the same run from the command line, with the report’s figures, and from Python.

Citing

Cite the work xcap3d builds on:

  • FK: Zhu, L., & Rivera, L. A. (2002). A note on the dynamic and static displacements from a point source in multilayered media. Geophysical Journal International, 148(3), 619-627. https://doi.org/10.1046/j.1365-246X.2002.01610.x

  • SPECFEM3D Cartesian: Peter, D., Komatitsch, D., Luo, Y., Martin, R., Le Goff, N., Casarotti, E., et al. (2011). Forward and adjoint simulations of seismic wave propagation on fully unstructured hexahedral meshes. Geophysical Journal International, 186(2), 721-739. https://doi.org/10.1111/j.1365-246X.2011.05044.x; and the software, SPECFEM3D v4.1.1 (2024), https://doi.org/10.5281/zenodo.10823181

  • gCAP3D: Zhu, L., & Zhou, X. (2016). Seismic moment tensor inversion using 3D velocity model and its application to the 2013 Lushan earthquake sequence. Physics and Chemistry of the Earth, Parts A/B/C, 95, 10-18. https://doi.org/10.1016/j.pce.2016.01.002

  • Automated inversion with 3-D Green’s functions in the Los Angeles region: Wang, X., & Zhan, Z. (2020). Moving from 1-D to 3-D velocity model: automated waveform-based earthquake moment tensor inversion in the Los Angeles region. Geophysical Journal International, 220(1), 218-234. https://doi.org/10.1093/gji/ggz435

License

MIT (LICENSE).