2009年7月10日

GMT演習 地殻変動ベクトル図を書く方法

【現在試行中】

GMT演習 図に日本語の説明を入れる方法

やるべきことを忘れないように

【現在試行中】

GMT演習 震源メカニズムを書くプログラム

【GMTの使い方】 http://www-seis.planet.sci.kobe-u.ac.jp/~kakehi/GMT/GMT-HOWTO.html
の「地図上に余震分布をプロットして更に主な余震のメカニズムを描く」を参照させていただきました。ありがとうございます。
またメカニズム解は【F-net】http://www.hinet.bosai.go.jp/fnet/top.php?LANG=ja
のものを使わせていただきました。

#!/bin/sh

# ベースとなる日本地図を書く。
psbasemap -Jm -R128/147/30/47 -B5NseW -X2 -Y-4 -K > map.ps

# -Lf143/31/31/500 スケールを表示するためのオプション
# fは白黒のスケールを表示の意.スケールを表示する位置が(経度143.緯度31)。規準位置が31
# 長さ500kmのスケールを表示するように指定.
# -S200 海(sea)の色を指定. 0が黒,255が白
# -Df 海岸線のデータの解像度"f"(full)

pscoast -Jm -R -B -Lf143/31/31/500 -S200 -Df -W1 -P -O -K >>map.ps

# 震源メカニズムを書くための関数psmeca
# データは以下のように与える。
# longitude latitude 'depth' strike(走向) dip(傾斜) rake(すべり角) magnitude offset_x offset_y comment
# -L メカニズムの球を縁取り
psmeca -Jm -R -Sa1 -G255/0/0 -L -P -O <>map.ps
142.169 37.236 20 166 90 -76 3.9 0 0 E_OFF_FUKUSHIMA_PREF
137.801 34.722 29 319 85 168 4.4 0 0 HAMANAKO_LAKE_REGION
149.8148 44.5223 17 16 53 72 3.5 0 0 SE_OFF_ETOROFU
142.2062 42.0798 32 273 78 58 3.7 0 0 S_OFF_URAKAWA
140.4658 27.8035 440 270 75 -53 4.7 0 0 W_OFF_OGASAWARA
142.3523 41.929 53 23 65 76 4.9 0 0 S_OFF_URAKAWA
135.9833 43.603 380 358 82 -37 4.7 0 0 EASTERN_SEA_OF_JAPAN
142.3248 41.9367 65 30 62 94 3.8 0 0 S_OFF_URAKAWA
141.9438 39.5483 35 65 55 55 3.9 0 0 SOUTHERN_IWATE_PREF
132.19 32.0122 26 28 63 86 3.6 0 0 HYUGANADA_REGION
134.9542 37.1343 14 158 79 15 3.4 0 0 SEA_OF_JAPAN
142.0557 41.5597 53 15 67 90 3.8 0 0 E_OFF_AOMORI_PREF
140.8448 41.865 125 196 70 100 3.9 0 0 OSHIMA_PEN_REG_HOKKAIDO
152.3713 46.735 32 307 85 28 3.9 0 0 KURILE_ISLANDS_REGION
139.8938 36.0843 59 44 63 72 4.1 0 0 SW_IBARAKI_PREF
142.1095 38.0065 50 57 78 125 3.6 0 0 SE_OFF_MIYAGI_PREF
143.5902 45.827 360 159 75 59 4.8 0 0 NE_OFF_HOKKAIDO
143.2635 37.7775 8 211 88 -160 4.4 0 0 FAR_E_OFF_FUKUSHIMA_PREF
127.3558 26.3195 44 5 61 62 4.2 0 0 NEAR_OKINAWAJIMA_ISLAND
141.1872 36.628 32 26 89 77 3.3 0 0 E_OFF_IBARAKI_PREF
143.1067 40.9078 23 359 81 59 3.6 0 0 E_OFF_AOMORI_PREF
129.9593 32.567 11 321 87 -10 3.6 0 0 AMAKUSA_REGION
134.7027 33.9542 32 69 74 -22 3.4 0 0 N_PART_OF_KII_CHANNEL
END

GMT演習 各緯度の幅で深さ方向の震源の分布を書く

# 各緯度の幅で深さ方向の震源の分布を書く

# 図の軸や軸の名称、メモリ、グリッドライン等を用意する
# -R x軸、y軸の範囲
# -JX ふつーの図を書くときの図法
# -B x軸の情報/y軸の情報/図のタイトル情報/どこに表示させるか
# x軸の情報 -Ba5(目盛り文字の間隔)f1(目盛の間隔)g5(グリッドの間隔):"軸名":
# 図のタイトル情報 :."図のタイトル":
# wsnE 大文字=全ての軸情報の表示 小文字=目盛り文字を表示しない
# W(左側)S(下側)N(上側)E(右側)
psbasemap -R130/145/0/400 -JX10c/-2c -Ba5f1g5:"longitude":/a100f50g100:"Source Depth(km)"::."Lat.35-36":wSnE -P -Y1.5c -K > depth.ps

# 複数条件はかつなら&&、またはなら||
awk '$2 <= 36 && $2 >= 35 {print $1,$3,($4-4)*0.1}' earth.dat | psxy -R -JX -Sc -O -K -L -W >> depth.ps

# あとは繰り返し
psbasemap -R130/145/0/400 -JX10c/-2c -Ba5f1g5/a100f50g100:."Lat.36-37":wsnE -P -Y3c -O -K >> depth.ps
awk '$2 <= 37 && $2 >= 36 {print $1,$3,($4-4)*0.1}' earth.dat | psxy -R -JX -Sc -O -K -L -W >> depth.ps

psbasemap -R130/145/0/400 -JX10c/-2c -Ba5f1g5/a100f50g100:."Lat.37-38":wsnE -P -Y3c -O -K >> depth.ps
awk '$2 <= 38 && $2 >= 37 {print $1,$3,($4-4)*0.1}' earth.dat | psxy -R -JX -Sc -O -K -L -W >> depth.ps

2009年7月9日

GMT演習 震源位置、マグニチュード、震源深さのプロット

【準備するもの】
震源位置(緯度・経度)、震源深さ、マグニチュードのデータ、4列のデータ(earth.dat)

pscoast -JM -R130/145/30/45 -Df -S128 -G255 -B1 -W.1/255 -P -X1 -Y3 -K > depth_Mw.eps

makecpt -Cno_green -T0/400/10 > rb1.cpt
awk '{print $1,$2,$3,$4*0.05}' earth.dat | psxy -JM -R -Sc -Crb1.cpt -O -K -L -W3 >> depth_Mw.eps

psscale -Crb1.cpt -D7.5/-1/15/0.3h -B10 -O >> depth_Mw.eps



2009年7月6日

GMT演習 J-SHIS シナリオ地震のコンター

J-SHISで計算された強震動波形のデータを用いて、最大速度のコンターを作成する。

【準備するもの】
J-SHISのホームページで
トップページ>データダウンロード> 震源断層を特定した地震動予測地図
へ行くと、各シナリオ地震のシミュレーション結果が得られる。地図データに評価地点の緯度・経度情報と最大速度のデータが入っているので、これら3つのデータから3列○行の行列を作る(vel_data_ito.dat)。また評価モデルの断層の四隅の緯度・経度情報をまとめる(fault_ito.dat)。

#!/bin/bash

# コンターを塗るためのカラーバーを作成する。
# カラーバーの種類はhttp://www5.plala.or.jp/kashima/gmt/gmt_colorpalette.htmlを参照されたし
makecpt -Cno_green -T0/100/5 > colors.cpt

# vel_data_ito.datを読み込み、コンターを作成する。
awk '{print $1,$2,$3}' vel_data_ito.dat | pscontour -R136/137.5/36/37 -Jm10 -Ccolors.cpt -B1 -W+ -P -X1 -Y3 -I -K -A- > ito_fault.eps

# 上のpscoastだけでは海にも色が塗られてしまうので、下で上書きして消す。
pscoast -R -Jm -B1 -P -W -Dh -S255 -O -K >> ito_fault.eps

# 断層の4隅のデータから評価断層を作成する。
psxy fault_ito.dat -W -R -Jm -B3 -P -O -K >> ito_fault.eps

# カラーバーを図下部にプロットする。
psscale -Ccolors.cpt -D7.5/-1/15/0.3h -B10 -O >> ito_fault.eps




GMT演習 k-net,kik-net観測網をプロットする

全国にあるK-NET,KiK-NET観測網の観測地点をプロットするGMTプログラム。

【必要なデータ】 K-NET,KiK-NET観測地点の緯度、経度をそれぞれのホームページから頂いた。k-net.dat, kik-net.datにはそれぞれ緯度、経度のデータが2列になって入っている。県境のデータはhttp://www.geocities.jp/ne_o_t/index.htm から頂いた。

【プログラム】 ▲がK-NET、△がKIK-NETです。
#!/bin/bash

# 日本地図を書く
pscoast -R126/147/25/46 -Jm1.5 -B1 -P -W -Dh -X1 -Y1 -K > k_kik_location.ps

# 県境を書く
psxy ken.txt -W1ta -R -Jm -B -P -M -O -K >> k_kik_location.ps

# k-net観測点のプロット
awk '{print $1,$2}' k-net.dat | psxy -R -Jm -B -P -M -ST.1 -O -K -G0/0/0 >> k_kik_location.ps

# kik-net観測点のプロット
awk '{print $1,$2}' kik-net.dat | psxy -R -Jm -B -P -M -ST.1 -O -K >> k_kik_location.ps