coupe

官方文件:coupe
簡介:繪製震源機制解的剖面圖

meca 在繪製震源球時,本質上是取了一個水平剖面,並將三維震源球的下半球投影到該水平剖面上。而 coupe 則更靈活一些,可以將三維震源球投影到任意一個剖面上(例如垂直平面)。

  • 對於一個水平剖面,會將下半球投影到平面上(即 meca 的做法)
  • 對於一個垂直剖面,會將垂直平面後方 的半球投影到平面上
  • 對於任意一個非水平的平面而言:
    • 北方向爲平面的最速下降方向
    • 東方向爲平面的走向方向
    • 下方向則根據右手定則確定

語法

gmt coupe [ files ] -Jparameters -Rregion -Aparameters -S<format><scale>[+ffont][+jjustify][+odx[/dy]] [ -Bparameters ] [ -Efill ] [ -Fmode[args] ] [ -Gfill ] [ -L[pen] ] [ -M ] [ -N ] [ -Q ] [ -Tnplane[/pen] ] [ -U[stamp] ] [ -V[level] ] [ -Wpen ] [ -X[a|c|f|r][xshift[u]] ] [ -Y[a|c|f|r][xshift[u]] ] [ -Zcpt ] [ -dinodata ] [ -eregexp ] [ -hheaders ] [ -iflags ] [ -pflags ] [ -ttransp ] [ -:[i|o] ] [ --PAR=value ]

必須選項

table
一个或多个ASCII或二进制表数据。若不提供表数据,则会从标准输入中读取。
-Jprojection (more …)
设置地图投影方式。
-Rxmin/xmax/ymin/ymax[+r][+uunit] (more …)
指定数据范围
-A
以多種方式指定剖面

-Aalon1/lat1/lon2/lat2/dip/p_width/dmin/dmax[+f]

  • lon1/lat1 剖面起點的經緯度
  • lon2/lat2 剖面終點的經緯度
  • dip 剖面所在平面的傾角(0表示水平剖面,90表示垂直剖面)
  • p_width 剖面的寬度(即剖面不是一個平面,而是一個有厚度的長方體)
  • dmin/dmax 是沿着最速下降方向(“北”方向)的最小、最大距離(對於垂直平面,可以理解爲限制地震深度範圍)
  • +f 表示根據剖面的參數自動計算邊框的範圍

-Ablon1/lat1/strike/p_length/dip/p_width/dmin/dmax[+f]

  • lon1/lat1 剖面起點的經緯度
  • strike 是剖面的走向
  • p_length 是剖面的長度
  • 其他參數與 -Aa 相同

-Acx1/y1/x2/y2/dip/p_width/dmin/dmax[+f]

-Aa 選項相同,只是 x/y 爲笛卡爾座標而不是地理座標
-Adx1/y1/strike/p_length/dip/p_width/dmin/dmax[+f]
-Ab 選項相同,只是 x/y 爲笛卡爾座標而不是地理座標
-S<format><scale>[+ffont][+jjustify][+odx[/dy]]

指定输入数据的格式、震源球大小等属性。

format 用于指定输入的震源机制解的格式。

scale 指定了5级地震(地震矩为4.0E23 dynes-cm)的震源球的直径。默认情况下,震源球的直径与震级大小成正比,即实际直径为 size = M / 5 * scale。若使用 -M 选项,则所有震源球大小相同。

每个震源球都可以有一个可选的标签。标签默认位于震源球的上方。

  • +ffont 设置震源球标签的文本属性
  • +jjustify 标签相对于震源球的位置 [默认为 BC,即正上方]
  • +odx[/dy] 标签的额外偏移量
-Sascale[+ffont][+jjustify][+odx[/dy]]

Aki and Richards约定的震源机制格式。输入文件的具体格式为:

X  Y  depth  strike  dip  rake  mag  [newX  newY]  [title]
  • XY 为震源经度和纬度
  • depth 为震源深度,单位为km
  • strikediprake 为断层的三个基本参数,单位为度
  • mag 为地震震级
  • newXnewY 震源球在图上的经纬度[可选]。默认震源球会放在 XY 处,指定新的震源球放置位置 newXnewY 以使得震源球与震源位置错开。
  • title 震源球标签[可选]
-Scscale[+ffont][+jjustify][+odx[/dy]]

Global CMT约定的震源机制解格式。输入文件的具体格式为:

X Y depth strike1 dip1 rake1 strike2 dip2 rake2 mantissa exponent [newX newY] [title]
  • XY 为震源经度和纬度
  • depth 为震源深度,单位为km
  • 两组 strikediprake 为两个断层面的基本参数
  • mantissaexponent 是地震标量矩的尾数和指数部分。例如,地震标量矩为9.56e+26 dyne-cm,则 mantissa=9.56,exponent=26
  • newXnewY 震源球在图上的经纬度[可选]。默认震源球会放在 XY 处,指定新的震源球放置位置 newXnewY 以使得震源球与震源位置错开。
  • title 震源球标签[可选]
-Sm|d|zscale[+ffont][+jjustify][+odx[/dy]]

地震矩张量。输入数据格式为:

X Y depth mrr mtt mff mrt mrf mtf exp [newX newY] [title]
  • XY 为震源经度和纬度
  • depth 为震源深度,单位为km
  • mrr 等是地震矩的6个分量,单位是 \(10^{exp}\) dyne-cm
  • exp 地震矩的指数部分。例如 mrr=2.5,exp=26 ,则真实 mrr = 2.0e26
  • newXnewY 震源球在图上的经纬度[可选]。默认震源球会放在 XY 处,指定新的震源球放置位置 newXnewY 以使得震源球与震源位置错开。
  • title 震源球标签[可选]

地震矩张量可以分解成各向同性部分(ISO)、双力偶部分(DC)和补偿线性向量偶极部分(CLVD)。

  • m 表示绘制完整的地震矩张量(ISO+DC+CLVD)
  • d 表示仅绘制地震矩的双力偶部分(DC)
  • z 表示仅绘制地震矩的各向异性部分(DC+CLVD)

说明:

  • 6个分量使用的坐标系为USE坐标系,与Global CMT的坐标系一致
  • Global CMT的矩张量解不包含各向同性部分,因而 -Sm-Sz 的效果相同。
-Spscale[+ffont][+jjustify][+odx[/dy]]

由两个断层平面的部分数据构成的机制解。输入数据格式为:

X Y depth strike1 dip1 strike2 fault mag [newX newY] [title]
  • XY 为震源经度和纬度
  • depth 为震源深度,单位为km
  • strike1dip1 平面1的断层参数,strike2 是平面2的断层参数
  • fault 取-1或+1,表示正断层和逆断层
  • mag 地震震级
  • newXnewY 震源球在图上的经纬度[可选]。默认震源球会放在 XY 处,指定新的震源球放置位置 newXnewY 以使得震源球与震源位置错开。
  • title 震源球标签[可选]
-Sx|y|tscale[+ffont][+jjustify][+odx[/dy]]

指定T、N、P轴的方位和大小。输入数据格式为:

X Y depth Tvalue Tazim Tplunge Nvalue Nazim Nplunge Pvalue Pazim Pplunge exp [newX newY] [title]
  • XY 为震源经度和纬度
  • depth 为震源深度,单位为km
  • Tvalue 等9个量定义了T、N、P轴的大小和方向
  • expTvalue 等的指数部分
  • newXnewY 震源球在图上的经纬度[可选]。默认震源球会放在 XY 处,指定新的震源球放置位置 newXnewY 以使得震源球与震源位置错开。
  • title 震源球标签[可选]

地震矩张量可以分解成各向同性部分(ISO)、双力偶部分(DC)和补偿线性向量偶极部分(CLVD)。

  • x 绘制完整的地震矩张量 (ISO+DC+CLVD)
  • y 只绘制地震矩的双力偶部分 (DC)
  • z 只绘制地震局的各向异性部分 (DC+CVLD)

可選選項

-Bparameters (more …)
设置底图边框和轴属性
-Efill
擴張部分的填充色 [默認爲白色]
-Fmode[args]
設置多個屬性,可重複使用多次
-Fssymbol[size][+ffont][+jjustify][+odx[/dy]]

不繪製震源球,僅繪製一個符號。

symbol 爲符號類型,可以選擇 c|d|i|s|t|x,符號的具體含義見 plot 模塊的 -S 選項。size 爲符號大小。

輸入數據的格式爲:

longitude latitude depth [event_label]

若未指定 size,則需要從輸入數據的第四列讀入符號大小,其餘列向後移動。

event_label 默認位於震源球上方。使用 +f 控制其字體,+j 控制其位置,+o 進一步控制其偏移量。

-Fa[size[/Psymbol[Tsymbol]]]
計算並在震源球上P軸和T軸處繪製符號。 size 是符號大小; PsymbolTsymbol 符號可以取 c|d|h|i|p|s|t|x,具體含義見 plot -S 選項 [默認值爲 6p/cc]
-Fefill
設置T軸符號的填充色
-Fgfill
設置P軸符號的填充色
-Fppen
設置P軸符號的畫筆屬性
-Ftpen
設置T軸符號的畫筆屬性
-Fr[fill]
在震源球標籤後加一個方框 [默認填充色爲白色]
-Gcolor
指定壓縮部分的填充色 [默認爲黑色]
-L[pen]
設置震源球外部輪廓的線條屬性
-M
所有震級使用相同的大小,具體大小由 -S 選項的 scale 參數決定。
-N
地圖區域外的震源球也要繪製,默認不繪製。
-Q
默認會生成一些臨時文件,其中包含了剖面和剖面上的震源機制的信息,供調試時使用。使用該選項,則不會生成這些臨時文件。
-T[nplane][/pen]

繪製斷層平面。

nplanes 可以取:

  • 0* 繪製兩個斷層面
  • 1 繪製第一個斷層面
  • 2 繪製第二個斷層面

pen 爲畫筆屬性。

對於雙力偶機制解而言,-T 選項只繪製震源球的圓周和斷層平面,不填充顏色;對於非雙力偶機制解而言,-T0 在震源球的基礎上覆蓋上透明的斷層平面。

-U[label][+c][+jjust][+odx/dy] (more …)
在图上绘制GMT时间戳logo
-V[level] (more …)
设置 verbose 等级 [c]
-W[pen]
設置斷層平面的畫筆屬性 [默認爲 default,black,solid]

-X[a|c|f|r][xshift[u]]

-Y[a|c|f|r][yshift[u]] (more …)
移动绘图原点
-Zcpt
指定CPT文件,根據數據文件中第三列的值(即地震深度)確定震源球的壓縮部分的顏色。
-dinodata (more …)
将输入数据中值为 nodata 的列替换为 NaN
-e[~]”pattern” | -e[~]/regexp/[i] (more …)
只接受匹配指定模式的数据记录
-h[i|o][n][+c][+d][+rremark][+rtitle] (more …)
跳过或生成指定数目的头段记录
-icols[+l][+sscale][+ooffset][,][,t[word]] (more …)
设置输入数据列及简单变换(0表示第一列,t 表示文本列)
-p[x|y|z]azim[/elev[/zlevel]][+wlon0/lat0[/z0]][+vx0/y0] (more …)
设置3D透视视角
-t[transp] (more …)
设置图层透明度(百分比)。取值范围为0(不透明)到100(全透明)
-:[i|o] (more …)
交换输入或输出中的第1和第二列。
-^-
显示简短的帮助信息,包括模块简介和基本语法信息(Windows下只能使用 -
-++
显示帮助信息,包括模块简介、基本语法以及模块特有选项的说明
-? 或无参数
显示完整的帮助信息,包括模块简介、基本语法以及所有选项的说明
--PAR=value
临时修改GMT参数的值,可重复多次使用。参数列表见 gmt.conf

示例 ---

矩張量形式的震源機制解,剖面的起點爲130E 43N,終點爲140E 36N,90度剖面,即垂直剖面。壓縮部分爲黑色。建議使用上 -N,這樣可以防止漏畫:

#!/bin/bash
gmt begin profile
gmt coupe -JX15c/-6c -Sd0.8 -Aa130/43/140/36/90/100/0/700+f -Gblack -Q -N << EOF
131.55 41.48 579  1.14 -0.10 -1.04 -0.51 -2.21 -0.99 26 X Y
133.74 41.97 604  6.19 -1.14 -5.05 -0.72 -9.03 -4.24 25 X Y
135.52 37.64 432  0.95  0.11 -1.06 -0.20 -2.32  0.90 25 X Y
138.37 42.85 248 -2.49  3.40 -0.91  3.09  0.83 -3.64 25 X Y
EOF
gmt basemap -BWS -Byaf+l"Focal depth (km)" -Bxaf+l"Distance (km)"
gmt end show

相關模塊

meca, polar, basemap, plot