地震定位Matlab可视化
Matlab Visualization of Seismic Positioning
摘要: 地震定位是地震学中一个最基本的研究内容,对于研究地震活动特性、地球内部结构、震源的几何构造等地震学中的基本问题均具有重要意义。但是直接计算获得震源位置信息和发震时间计算量较大,且不易实现。在本研究中,我们通过MABLAT实现了INGALADA方法定位以达到确定震源位置与发震时刻的目的。该地震定位方式可以实现非专业人士,不需要操作人员掌握深厚的计算机和数学知识便可以通过直接获得站台P波、S波的实际到时和台站的位置数据导入设计好的GUI展示界面中由于GUI界面具有便利性和直观性,可以让非专业人士直接获得INGALADA算法计算出的震源位置和发震时刻。地震定位可以提供一些重要的地理位置信息便于研究地质结构,对地震的研究发震有着重大的意义。
Abstract: Earthquake positioning is one of the most basic research contents in seismology, and it is of great significance for the study of the characteristics of seismic activity, the internal structure of the earth, the geometric structure of the source and other basic issues in seismology. However, direct calculation to obtain the source location information and earthquake occurrence time requires a large amount of calculation and is not easy to implement. In this study, we implemented the INGALADA method positioning through MABLAT to achieve the purpose of determining the location of the earthquake source and the time of occurrence. This earthquake positioning method can be realized by non-professionals. It does not require the operator to have a deep computer and mathematics knowledge. It can directly obtain the actual arrival time of the station P wave, S wave and the position data of the station and import it into the designed GUI display interface. Due to the convenience and intuitiveness of the GUI interface, non-professionals can directly obtain the source location and time of earthquake calculated by the INGALADA algorithm. Seismic positioning can provide some important geographic location information to facilitate the study of geological structure, and is of great significance to the study of earthquake occurrence.
文章引用:胡珂僮, 高宇骏. 地震定位Matlab可视化[J]. 自然科学, 2021, 9(5): 793-799. https://doi.org/10.12677/OJNS.2021.95086

1. 引言

地震定位是确定地震发震时刻、经度、纬度、深度。通过不同站台接收到的P波与S波的到达时间以及时间差的一系列数学分析可以确定定位地震的震源与台站之间的关系,定位的结果可提供地震活动的重要信息,可通过定位了解震源环境,对了解地震有着重大意义 [1]。可通过定位了解震源环境,从而对地震发生的机制和成因增加认识,为地震灾害评估和地震预警提供比较可靠的信息,可以用于防震减灾 [2]。

目前地震定位还没有操作使用简单的、快速、便捷、呈现结果直观3D的可视化软件。我们研究的地震定位Matlab可视化可通过导入收集到的各个台站的位置和记录到的S波与P波到时( P g S g )进行发震时刻计算和地震定位并用三维图像表示出来。我们主要完成了可视化界面回调函数的编写 [3]、界面设计,程序的测试。

2. 地震定位的原理

INGALADA算法地震定位

由于S波与P波传播速度不同 [4] ,根据S波与P波到时( P g S g )的时差 [5] 与虚波速度(2.1) [6] [7] 的乘积得到台站到震源的距离(2.2)。由于有许多的站台接收到许多的S波与P波的不同的到时。同时震源与站台之间的的距离可以通过已知的站台坐标和假设的震源坐标之间的差值得到,联立方程得到震源的位置。因此发震时刻也可通过计算出的距离得到 [8] (2.3)。

虚波速度 V = v p v s v p v s (2.1)

R i = V ( P g i S g i ) (2.2)

t 0 = P g i R i v p (2.3)

由于发震时刻t0只取决于到时,所以t0的求解完全和震源求解独立,误差来源是到时读数误差,减少读数造成的误差,可以得到较为准确的t0 [9]。

3. 地震定位Mablat可视化

通过利用已知多个台站的方位坐标和各个台站接收到的初至震相时刻的数据总表经过数据处理转换成Matlab可以识别的格式运用INGALADA算法进行编程打开Matlab中GUI板块进行绘图可以直观的分别画出各个台站的经、纬度深度位置和震源位置的三维坐标轴中的经、纬度深度,以及发震时刻 [10]。

利用Matlab软件的GUI编辑器,选择模版,创建GUI程序文件,可以进行界面设计,选择控件,前台是可视化控件的界面设计,后台是代码控制编程界面。进行程序语言和界面控件的匹配以达到特定方法的可视化 [11]。控件和程序语言的匹配至关重要的,要想达到实现INGALADA算法的可视化,就应该符合INGALADA的运算方式,需要引入详细的数学公式。要进行地震定位首先要引入地震台站数据,地震数据为站台的方位坐标经纬度坐标和深度,我们需要将其转化成需要的笛卡尔横纵坐标。再根据地震波传播的时间与传播的速度点乘积获得地震波传播的距离可以估计震中距以台站为中心画出一个圆 [12] ,根据多个站台接收到的地震波到时与P波、S波到时差可以绘制多个圆,多个圆的交点有且确定的一个震源位置,在实际进行数学运算时,震中距 R i 可以视为中间量,因此实际运算时求解震源位置时只需要台站位置,经纬度和深度。其中为了保证台站深度相差不大而造成动深度矩阵有奇异性 [13] ,我们要先求解 x 0 y 0 后解出 z 0 。最后我们需要在导入数据之前对定位控件进行回调函数编程,实现确定震源位置的目的,编程程序可以实现对可视化计算震源位置的简化,运用导入的数据,循环读取台站方位和P波、S波到时数据进行运算,获得震源数据。

由于台站方位数据和地震波数据同时可以进行震源发震时刻的计算,因此为了简化步骤,我们可以使用同时控件导入数据进行使用。发震时刻可以通过获得的震源位置数据进一步得到,因为已经计算了震源位置可以通过波的到时与到时差反推发震时刻。在设计时为了避免由于震源位置的计算错误而导致发震时刻的错误,发震时刻t0时只与P波与S波的到时时差有关。因此求取震源位置和发震时刻又相对独立,使数据更可靠 [14]。

3.1. INGALADA算法可视化

在Matlab程序设计中引入虚波速度用于计算震源到台站的距离,使中打开GUI模块,将到时实际时间导入Excel中设置按钮导入,设置函数可以自适应识别台站个数,导入数据为各个台站的经纬度以及P波、S波的到时( P g S g ),通过Matlab中GUI界面直观的呈现震源位置,经度、纬度、深度和发震时刻。INGALADA可视化界面如图1

整个过程实现软件输入数据为Excel文件,包括台站读取的:P波、S波到时,各站台坐标 ( x i , y i , z i ) ( I = 1 , 2 , 3 , ) 。分别输出:

1) 震源位置 ( x 0 , y 0 , z 0 ) (限制输出数据长度保留两位小数);

2) 发震时刻(t0) (限制输出数据长度保留两位)。

3.2. INGALADA可视化实现

INGALADA程序框图如图2

下图展示实现地震定位的主函数程序框图,首先引入虚波速度得到台站距离,利用震源深度矩阵进行平均深度计算,得到震源位置后进行绘图,最后导出数据为震源的位置和计算得到的发震时刻。

Figure 1. INGALADA design interface

图1. INGALADA设计界面

Figure 2. INGALADA block diagram

图2. INGALADA程序框图

运行结果展示如图3

图3为ingalada可视化最后呈现的界面,在点击“导入地震测量数据”选中导入的Excel表格,点击“开始定位”,可视化界面右侧三维立体图中出现蓝色圆圈和红色三角形,其中蓝色的圆圈是各个台站的三维坐标表示出来的位置,红色的三角的计算出的震源的位置。三维立体图下显示的经纬度坐标和深度是震源的位置,显示的时间是震源发震时间 [15]。

Figure 3. INGALADA visualization

图3. INGALADA可视化

4. 实例测试

为了测试该可视化界面的可行性和便捷性,我们进行了某次福建站台的地震定位的实例测试。

下表为具体为福建站台地震波(P波、S波)走时曲线图,图4

Figure 4. P and S wave travel time curve

图4. P、S波走时曲线图

在进行程序测定时我们进行了实际数据测试,台站位置数据(经纬度,深度)和P波、S波走时进行试验。下表为P波、S波走时表,表1

Table 1. P, S wave travel time data table

表1. P、S波走时数据表

Figure 5. Measured data results display diagram

图5. 实测数据成果展示图

获得了如图5,INGALADA可视化成果图。在拥有站台的和地震波走时数据得到地震震源位置和发震时刻。可以发现整个操作过程十分简便,用户只需要把走时数据和台站数据导入Ingalada算法可视化界面中即可出现三维立体图表示的台站位置和震源位置以及发震时刻,因此该方法进行可视化是简单易上手的。

5. 结论

相较前人的地震定位系统的设计,我们的地震定位系统更加的方便快捷,视图可以通过Matlab中的GUI界面实现更加直观,简便的立体呈现效果获得震源位置(经度、纬度和深度)和发震时刻。我们进行视图的三维呈现使得震源位置和台站位置更加直观,使用户可以直接根据图上坐标进行读数,或者直接在结果窗口查看结果,非研究领域的用户也可以迅速掌握。用户只需要在获得台站数据和地震波到时时差后导入数据,点击INGALADA可视化定位即可获得三维坐标震源位置和发震时刻,方便又快捷。在研究地震过程中,需要研究使用更快速简便的方式实现定位,可以使用INGALADA实现可视化,结果同时可以用于防震减灾,在进行震源定位后可以实现对震源的研究,获取更多的震源地质信息。

致谢

感谢江国明老师和钱荣毅老师对本次项目及笔者的关心和指导。两位老师在生活上也给予了许多建议。再次衷心地表示感谢。本项目使用参考了万永革教授提到的函数及数据,再次表示感谢。

参考文献

[1] 田野, 黄汉明, 边银菊, 赵晨杰. 区分天然地震和人工爆炸的可视化方法[J]. 地球科学前沿, 2014, 4(3): 136-146.
http://dx.doi.org/10.12677/AG.2014.43017
[2] 罗恒之, 罗国富, 任家琪. 银川市周围破坏性地震活动特征及其震感效应[J]. 地球科学前沿, 2019, 9(9): 772-778.
https://doi.org/10.12677/AG.2019.99083
[3] 天工在线. 中文版MATLAB2018从入门到精通[M]. 北京: 中国水利水电出版社, 2018: 1-530.
[4] 傅淑芳, 刘宝诚. 地震学教程[M]. 北京: 地震出版社, 1991.
[5] 史鹏程, 王元, 游庆瑜. 利用到时差分布图方法进行近场地表震源定位[J]. 地球物理学报, 2017, 60(8): 3119-3132.
[6] 庄昆元, 戴维乐. 虚拟台站法求小范围虚波速度[J]. 地震, 1984(2): 41-45.
[7] 赵知军. 宁夏及其邻区虚波速度与震源深度分布[J]. 地震工程学报, 1982, 4(4): 35-40.
[8] 万永革. 地震学导论[M]. 北京: 科学出版社, 2017.
[9] 万永革. 数字信号处理MATLAB实现[M]. 北京: 科学出版社, 2012: 4-11.
[10] Geiger, L. (1912) Probability Method for the Determination of Earthquake Epicenter from Arrival Time Only. Bulletin of Saint Louis University, 8, 60-71.
[11] 高亮, 张守国, 闫峰, 邓阳. Matlab在地震数据绘图中的应用[J]. 防灾减灾学报, 2010, 26(2): 31-35.
[12] 廉超, 李胜乐, 董曼, 张卫华. 球面交切法地震定位[J]. 大地测量与地球动力学, 2006, 26(2): 99-103.
[13] 王能超. 数值分析简明教程[M]. 第二版. 北京: 高等教育出版社, 2003.
[14] 薛慧, 顾玲玲, 谢晓宇. Matlab在地震数据分析中的应用[J]. 商品与质量•科学理论, 2011(4): 173.
[15] 张德丰. Matlab数字信号处理与应用[M]. 北京: 清华大学出版社, 2010.