基于峰度的P和S波拾取器
ps-picker的Python项目详细描述
用改进峰度法进行地震纵横波拾取
Baillard et al.,2014中描述的Python port of the picker
调试信息保存到本地文件run{datetime}.log
方法论
选取器基于峰度,但也使用能级,极性, 聚类和相位关联分为三步:
步骤1:定义全局拾取窗口
计算所有台站的Kurtosis。全球窗口 围绕着触发器最密集的聚集区域。在
第2步:在每个站点分别选择P和S到达
- 每个站点:
- 计算从粗到细尺度上的Kurtosis。在
- 在粗略的范围内确定候选人,并使用 最后的天平
- 根据signal-to-noise level选择P-和S-候选者 每一个选择
- 如果可能,使用波形polarity验证候选对象
- 极性仅在其中一个截齿倾斜超过30度时使用
第3步:员工选择
- 根据P-S延迟和 一个简单的速度模型(我可以用一个Vp/Vs值吗?)在
- 如果至少聚集了3个起始时间,则使用它们的平均起始时间 为了验证所有候选对象,可能会使用未使用的资源库 P和S替补人选
- 如果不到3倍-P,则拒绝选择 基于P-pick时间、S-pick时间和P-S延迟的聚类
工作流示例
从自动抓取一些事件开始,所有的铃声和口哨声都打开:
从/SEISAN/MAYOBS中的数据库中选择一个事件:
fromps_pickerimportPSPickerpicker=PSPicker('parameters_C.yaml','/SEISAN/MAYOBS/WAV/MAYOB','/SEISAN/MAYOBS/REA/MAYOB')picker.run_one('19-0607-59L.S201905',plot_global=True,plot_stations=True,verbose=True)
查看所有的图,并验证picks和association是否为 你期待的。如果没有,请更改参数并再次运行。在
接下来,在
bells和whistles文本将保存到名为 运行{DATETIME}.log
要在同一数据库中选择5月5日至25日的事件:
^{pr2}$最后,运行整个数据库,而不使用plots
(始终创建run{DATETIME}.log)
选择2019年5月26日至2020年5月1日的活动:
fromps_pickerimportPSPickerpicker=PSPicker('parameters_C.yaml','/SEISAN/MAYOBS/WAV/MAYOB','/SEISAN/MAYOBS/REA/MAYOB')picker.run_many('20190526','20200501')
三种主要方法:
def__init__(self,parm_file,wav_base_path,database_path_in,database_path_out='Sfile_directory',database_format='NORDIC',verbose=True,debug_plots=False):""" :param parm_file: path/name of the parameter file :param wav_base_path: absolute basepath to the waveform files (just before the YEAR/MONTH subdirectories) :param database_path_in: absolute basepath to the database/catalog file(s) (just before the YEAR/MONTH subdirectories) :param database_path_out: path to output database files :param database_format: 'NORDIC' is the only choice for now 'NORDIC': Use SEISAN conventions for waveform and database files (naming, and location in YEAR/MONTH subdirectories) :param verbose: output 'verbose' and 'debug' logs to console (will be flagged DEBUG because logging module has no VERBOSE level) :param debug_plots: show debugging plots """
defrun_one(self,database_filename,plot_global=True,plot_stations=False,assoc=None,verbose=False,debug_plots=None):""" Picks P and S arrivals on one waveform, using the Kurtosis Information in the database file will be appended with the picks. :param database_filename: database file to read :param plot_global: show global and overall pick plots :param plot_stations: show individual station plots :param assoc: Associator object (used by run_many()) :param verbose: same as in creator :param debug_plots: same as in creator """
defrun_many(self,start_date,end_date,plot_global=False,plot_stations=False,verbose=False,ignore_fails=False):""" Loops over events in a date range :param start_date: "YYYYMMDD" or "YYYYMMDDHHMM" of first data to process :param end_date: "YYYYMMDD" of last data to process :param plot_global: show global and overall pick plots :param plot_stations: show individual station plots :param ignore_fails: keep going if one run fails """
参数和响应文件
- 项目
标签: