Loc Flow
Loc Flow
Miao Zhang
Dalhousie University
1
Earthquake detection and location
P S Surface waves
Akazawa, 2004
e.g.,
PhaseNet: Zhu and Beroza, GJI, 2019
EQTransformer: Mousavi et al., Nat. Comm., 2020
…
“Traditional Methods” “Machine Learning”
5
6
Zhang et al., AGU, 2019 First time apply machine learning picks for catalog building
Earthquake catalog building using machine learning picks (not a full list)
“__”
supervised or collaborative papers
7
Park Y et al., GRL, 2020 Wang KW et al., GRL, 2020 Wang JC et al., GRL, 2021
Su J et al., CJG, 2021 Tan Y et al., TSR, 2021
Zhao M et al., CJG, 2021
12
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
13
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
14
https://github.com/Dal-mzhang/LOC-FLOW
15
https://github.com/Dal-mzhang/LOC-FLOW
16
https://github.com/Dal-mzhang/LOC-FLOW
17
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
18
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
19
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
20
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
21
“Standing on the shoulders of giants”
Scientific LOC-FLOW
Questions
ObsPy, PhaseNet,
REAL, VELEST,
HYPOINVERSE,
hypoDD,
FDTCC,
GrowClust,
Match&Locate
22
https://www.freeimages.com/
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
23
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
https://docs.obspy.org/tutorial/code_snippets/trigger_tutorial.html 25
①PhaseNet picker
https://github.com/wayneweiqiang/PhaseNet 26
②Rapid Earthquake Association and Location
(REAL)
𝛿: standard deviation
28
Distance weighting for picks
Two steps:
1)Fix depth and origin time, update horizontal location;
2)Fix horizontal location, update depth and origin time.
29
③ VELEST
Velocity model
(known but not accurate)
31
Feng et al., SRL, 2022
③HYPOINVERSE
Weighted by residual
Delay times
(3D velocity effect)
33
Klein, USGS, 2014
④Double-difference relocation
(HypoDD)
Difference’s difference
OpenMP-version: Zhang and Wen, GJI, 2015; GPU-version: Liu et al., SRL, 2020
https://github.com/Dal-mzhang/MatchLocate2 39
https://github.com/MinLiu19/GPU-MatchLocate1.0
40
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
41
Software Downloading and Installing
42
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
43
Data Downloading
ObsPy: get_waveforms
https://docs.obspy.org/packages/autogen/obspy.clients
.fdsn.client.Client.get_waveforms.html
44
Network, station, channel, time range, etc.
Response removal
(slow, only used for magnitude
estimation, may skip it to save time)
45
Data Downloading
ObsPy: mass_downloader
https://docs.obspy.org/pack
ages/autogen/obspy.clients.f
dsn.mass_downloader.html
46
Define the study region
waveform_download_mseed.py 47
Save as SAC files (fast)
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
https://github.com/alirezaniki/OBSTransformer
(will be integrated into LOC-FLOW soon) 48
STA/LTA Picker trigger_p_amp.py
(Z)
&
trigger_s_amp.py
Pre-filtering (E&N)
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
51
runREAL.pl
https://github.com/Dal-mzhang/REAL
52
How to evaluate your association performance and avoid false events:
1. Check those worst associated events (with smallest number of picks, largest station gap,
largest travel time residual). Using scripts eventverify_pick.py and eventverify_all.py to
cut their waveforms, sort them by distance, and review them by eyes. If they are false
events, put more stricter thresholds.
53
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
54
run_velest.sh
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
56
Two layers cannot share the same run_hypoinverse.sh
velocity. No low velocity layers.
Otherwise, manually change them.
Run HYPOINVERSE 57
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
58
Two layers cannot share the same run_hypoinverse_corr.sh
velocity. No low velocity layers.
Otherwise, manually change them.
Control file:
Run HYPOINVERSE hyp.command 59
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
60
hypo=0, simulated annealing run_hypoDD_dtct.sh
relocation from REAL
hypo=1, relocation
from VELEST
hypo=2, relocation
from HYPOINVERSE
Run hypoDD 61
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
62
Update initial location
using hypoDD.reloc (dt.ct)
run_hypoDD_dtcc.sh
Run hypoDD 63
hypo=1
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
64
run_growclust.sh
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
66
calc_mag.py
Attention: millimeter
hypo=2
hypo=3
hypo=0
https://github.com/Dal-mzhang/LOC-FLOW
68
Match&Locate
(example)
69
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
70
Any advices for LOC-FLOW users?
3. Please feel free to adopt or modify any steps, but you are
encouraged to cite and acknowledge the corresponding software
and papers.
71
Do I have to re-train my machine
learning phase picking models?
Well-trained
machine learning
models may work
for different regions,
though, transfer
learning helps.
Transfer Learning
Only use 3,500 phases for transfer learning
72
Chai et al., GRL, 2020 (0.45% of the origin training data set)
Do I have to keep the same sampling rates?
Usually, it is good to
keep it consistent if
you work in a similar
scale with comparable
magnitude range.
74
Any recommendations for the study regions?
75
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
76
One-day data from central Italy on Oct. 14, 2016.
For quick demonstration, here you may use the first 50 min.
Triangles: stations
Red dots:catalog (152) 77
“Hypocentral Distance – Travel-Time”
curve after REAL Association
78
Time [s]
Catalog 1
Catalog 3 Catalog 4
80
For catalogs: hypoDD_dtct, hypoDD_dtcc and GrowClust
We only show events with at least five P differential arrival pairs.
81
(see nddp in plot_3dmatlab )
82
83
(nddp=5 in plot_3dgmt.sh)
Outline
• Brief Introduction to LOC-FLOW
• Discussions
• Hands-On Demonstration
• Practice
84