taup_time¶
TauP 提供的 taup_time
命令可用于计算震相走时、射线参数、出射角、入射角等信息。
基本用法¶
使用 taup_time -help
可查询该命令的完整用法和选项,此处仅介绍常用用法。
计算震源深度为 300 km,震中距 60° 处,P、S、PcP、ScS、PKiKP 震相的走时信息:
$ taup_time -h 300 -deg 60 -ph P,S,PcP,ScS,PKiKP
-h
:震源深度(单位 km),默认深度为 0.0 km。-deg
:震中距(单位 °)-ph
:以逗号分隔的震相名
TauP 默认使用 iasp91 模型,可以使用 -mod
选项设置其他 TauP 预定义速度模型:
$ taup_time -mod prem -h 300 -deg 60 -ph P,S,PcP,ScS,PKiKP
$ taup_time -mod ak135 -h 300 -deg 60 -ph P,S,PcP,ScS,PKiKP
TauP 默认台站位于地表,可使用 --stadepth
选项设置台站深度(单位为 km):
$ taup_time -h 300 -deg 60 --stadepth 0.5 -ph P,S,PcP,ScS,PKiKP
若已知震源和台站位置,也可以使用 -evt
和 -sta
选项分别指定震源和台站的纬度和经度。例如,震源位于 (40 °N,10 °E),台站位于 (20 °S,10 °W):
$ taup_time -h 300 -evt 40 10 -sta -20 -10 -ph P,S,PcP,ScS,PKiKP
警告
使用 -evt
和 -sta
选项时,taup_time
会假设地球是完美球体,来计算震源和台站的震中距,这会产生一定的误差。例如,根据以上参数
taup_time
计算得到的震中距约为 62.83°,P 波初至到时为 594.27 秒。而 ObsPy 的
gps2dist_azimuth
函数计算得到的震中距约为 6959 km (采用 WGS84 椭球:赤道半径 6378.1370 km、扁率约为 0.0033528106647474805),在半径为 6371 km 的完美球状地球上约为 62.585°(利用 kilometers2degrees
函数计算得到),使用 62.585° 直接计算的 P 波初至到时为 592.64 秒,二者相差 1.63 秒。
在震中距比较小的情况下,可以使用 -km
选项指定震中距(单位为 km)。比如计算震源深度为 5 km,震中距 100 km 处,P、S、PcP、ScS、PKiKP 震相的走时信息:
$ taup_time -h 5 -km 100 -ph P,S,PcP,ScS,PKiKP
警告
使用 -km
选项,taup_time
会在参数解析时假定地球半径为 6371 km,将公里转换成度,并不以速度模型的实际半径为准。详情请参考 TauP 源码
和 TauP issue#12。
输出格式¶
下面的命令计算了 PREM 模型下,震源深度 100 km,震中距 60° 处,P 和 pP 震相的走时信息。其输出为:
$ taup_time -mod prem -h 100 -deg 60 -ph P,pP
Model: prem
Distance Depth Phase Travel Ray Param Takeoff Incident Purist Purist
(deg) (km) Name Time (s) p (s/deg) (deg) (deg) Distance Name
-----------------------------------------------------------------------------------
60.00 100.0 P 595.40 6.815 30.14 20.82 60.00 = P
60.00 100.0 pP 618.89 6.890 149.49 21.06 60.00 = pP
输出共 9 列,从左到右分别为:
震中距(度):地震震中与台站的大圆弧路径长度
震源深度(km)
震相名
震相走时(秒)
射线参数(秒/度)
注解
射线参数有三种常用单位:秒/度(s/deg )、秒/弧度(s/radian)、秒/千米(s/km)。三者之间的关系为(\(R_0\) 为地球半径,假设为 6371 km):
\[1 s/deg = \frac{1}{\pi*R_0/180} s/km = 1/111.19492 s/km\]\[1 s/deg = \frac{1}{\pi/180} s/radian = 57.29578 s/radian\]出射角(度):即射线从震源出射时与垂直向下方向的夹角,取值范围为 0 到 180°。
0° 到 90° 表示射线向下出射(例如 P 震相)
90° 到 180° 表示射线向上出射(例如 pP 震相)
注解
不同文章对出射角的定义不同,使用时应格外注意。
老版本的 TauP 对出射角的定义不同,可视为 BUG,应避免使用老版本 TauP。
入射角(度):射线入射到台站时与垂直向上方向的夹角。
Purist 距离:地震波实际走过的圆弧距离。
该值可能与震中距不同,例如 50° 震中距处记录到的 PKKKP 震相,实际走过的圆弧距离为 410°:
$ taup_time -deg 50 -ph PKKKP Model: iasp91 Distance Depth Phase Travel Ray Param Takeoff Incident Purist Purist (deg) (km) Name Time (s) p (s/deg) (deg) (deg) Distance Name ----------------------------------------------------------------------------------- 50.00 0.0 PKKKP 2519.56 2.242 6.72 6.72 410.00 = PKKKP
Purist 震相名:地震波的“真实”震相名。
例如,若想要计算 SS 震相在 660 km 不连续面的下表面的反射波走时,可指定其震相名为
S^660S
。由于 PREM 模型中 660 km 不连续面的“真实”深度为 670 km,此时 TauP 实际返回的时从 670 km 处反射回的震相,此时 Purist 震相名会显示为S^670S
:$ taup_time -mod prem -deg 120 -ph S^660S Model: prem Distance Depth Phase Travel Ray Param Takeoff Incident Purist Purist (deg) (km) Name Time (s) p (s/deg) (deg) (deg) Distance Name ------------------------------------------------------------------------------------ 120.00 0.0 S^660S 1975.75 12.336 20.79 20.79 120.00 * S^670S
可以使用 --rel
选项输出相对于某个指定震相的走时差。例如,下面的命令中,最后一列输出了所有震相相对于 PcP 震相的走时差:
$ taup_time -mod prem -h 300 -deg 60 -ph P,S,PcP,ScS,PKiKP --rel PcP
Model: prem
Distance Depth Phase Travel Ray Param Takeoff Incident Purist Purist Relative to
(deg) (km) Name Time (s) p (s/deg) (deg) (deg) Distance Name PcP
-----------------------------------------------------------------------------------------------
60.00 300.0 P 574.72 6.739 33.65 20.58 60.00 = P -42.32
60.00 300.0 PcP 617.05 4.016 19.28 12.09 60.00 = PcP 0.00
60.00 300.0 PKiKP 993.45 1.245 5.88 3.72 60.00 = PKiKP 376.41
60.00 300.0 S 1043.98 12.659 34.16 21.37 60.00 = S 426.93
60.00 300.0 ScS 1134.89 7.480 19.38 12.43 60.00 = ScS 517.85
信息提取¶
上面介绍的输出中包含了很多信息,想要在脚本中提取出想要的信息有些麻烦。所以
taup_time
提供了一些选项,使得在脚本中计算走时、射线参数更加方便。
走时¶
--time
选项使得输出中只包含走时信息,并且小数点的位数更多:
$ taup_time -mod prem -h 300 -deg 60 -ph P,S,PcP,ScS,PKiKP --time
574.7245 617.047 993.4524 1043.9805 1134.8923
需要注意的是,输出的走时不是按照 -ph
选项中震相的顺序进行排序的,而是按照走时递增的顺序排序。比如这里,S 震相放在震相列表的第二位,而 S 震相的走时 1043.9805 却放在第四位。
射线参数¶
--rayp
选项使得输出中只包含射线参数信息,并且小数点的位数更多:
$ taup_time taup_time -mod prem -h 300 -deg 60 -ph P,S,PcP,ScS,PKiKP --rayp
6.739042 4.0158706 1.2450149 12.65922 7.480467
此时,输出的射线参数是按照 -ph
选项中震相的顺序进行排序的。
注解
--rayp
和 --time
选项不能一起使用。当两个选项同时使用时,会以后出现的选项为准。