区域地震目录自动构建流程脚本,整合了开源的各个模块,用于从连续波形自动构建区域地震目录。
Automatic regional-scale earthquake catalog building workflow: EQTransformer + Siamese EQTransformer + PickNet + REAL + HypoInverse.
conda create -n ESPRH
conda activate ESPRH
conda install python=3.6 tensorflow-gpu=1.14 keras-gpu=2.3.1 h5py=2.10 matplotlib=3.2 pyyaml cudatoolkit cudnn pandas tqdm pyproj jupyter notebook basemap
conda install -c conda-forge obspy
pip install keras-rectified-adam
注:只是推理的话不需要GPU也可执行,则将对应的tensorflow-gpu, keras-gpu换成tensorflow, keras。并且不要安装 cudatoolkit和cudnn。
复制该程序包到你的计算机。 Clone this project to your machine.
git clone https://github.com/MrXiaoXiao/ESPRH
cd ESPRH
REAL和HypoInverse的安装请参照它们对应的说明.HypoInverse在bin下的文件名请设置为‘hyp1.40'.
进入目录,依次执行脚本00-06,在default_pipline_config.yaml修改对应参数。
Enter the directory. Execute scripts 00-06. Customize your configurations in file default_pipline_config.yaml.
(1) 目前代码只老版本的REAL, 请使用REAL_scripts文件夹里面的REAL_old_version.zip。 Current codes support only the old version of REAL. Please use 'REAL_old_version' under the 'REAL_scripts' folder;
(2) 在一些机器上perl可能需要添加执行权限,请为REAL_scripts文件夹里面的runREAL_temp.pl增加执行权限。 Some computers may need permission for Perl scripts. Please add permission to execute for 'runREAL_temp.pl' under the 'REAL_scripts' folder.
[1] Wu, Xueshan; Huang, Song; Xiao, Zhuowei; Wang, Yuan (2022): Building Precise Local Submarine Earthquake Catalogs via a Deep-Learning-Empowered Workflow and its Application to the Challenger Deep. Frontiers. Collection. https://doi.org/10.3389/feart.2022.817551
[2] Shun Yang, Zhuowei Xiao, Yue Zhu, Yumei He, Mingming Jiang, Chit Thet Mon, Guangbing Hou, Myo Thant, Kyaing Sein. (2021, In Preparation). A deep-learning-empowered pipeline for building regional earthquake catalogs and its application to the central Myanmar region.
如果你使用该脚本,请在文章中引用以下工作:
For EQTransformer, please cite:
S. Mostafa Mousavi, William L Ellsworth, Weiqiang Zhu, Lindsay Y Chuang, and Gregory C Beroza. (2020). Earthquake transformer—an attentive deep-learning model for simultaneous earthquake detection and phase picking. Nature Communications 11, 3952. https://doi.org/10.1038/s41467-020-17591-w
For Siamese EQTransformer, please cite:
Zhuowei Xiao, Jian Wang*, Chang Liu, Juan Li, Liang Zhao, and Zhenxing Yao. (2021). Siamese Earthquake Transformer: A pair-input deep-learning model for earthquake detection and phase picking on a seismic array. Journal of Geophysics Research: Solid Earth. https://doi.org/10.1029/2020JB021444
PickNet for phase refinement:
Wang, J., Xiao, Z., Liu, C., Zhao, D., & Yao, Z. (2019). Deep Learning for Picking Seismic Arrival Times. Journal of Geophysical Research: Solid Earth, 124(7), 6612–6624. https://doi.org/10.1029/2019JB017536
REAL for linking seismic phases:
Miao Zhang, William L Ellsworth, and Gregory C Beroza. (2019). Rapid Earthquake Association and Location. Seismological Research Letters, 90(6), 2276–2284. https://doi.org/10.1785/0220190052
HypoInverse for locating earthquakes:
Fred W Klein. (2002). Userʼs Guide to HYPOINVERSE-2000, a Fortran Program to Solve for Earthquake Locations and Magnitudes 4/2002 version. USGS, Open File Report 02-171 Version, 1, 123.
- 增加02_run_S-EqT步骤的并行加速
- 增加计算里氏震级(好像obspy有内置函数,回头加一下)。有需要的也可以自己加一下(https://docs.obspy.org/packages/autogen/obspy.signal.invsim.estimate_magnitude.html)。
如果遇到程序上的问题,请在这个repo开启一个issue(尽量不要邮件联系)。
If you occur any bugs or questions, you can open a new issue in this repo.
We would like to thank S. Mostafa Mousavi and his colleagues for developing the EqT model (https://github.com/smousavi05/EQTransformer), which is the base of our S-EqT model.
We would like to thank Miao Zhang for developing REAL (https://github.com/Dal-mzhang/REAL).
We would like to thank Fred Klein for developing HypoInverse (https://www.usgs.gov/software/hypoinverse-earthquake-location)
We would like to thank Yijian Zhou for developing the python interface for HypoInverse (https://github.com/YijianZhou/Hypo-Interface-Py)