スポンサーリンク
スポンサーリンク

【検証】chatGPTはGMTを動かせるのか?

スポンサーリンク
スポンサーリンク
スポンサーリンク
スポンサーリンク
Just a moment...

chatGPTが世間を席巻していますが、GMTみたいなマイナーなスクリプト言語でも理解できるのでしょうか。

というわけで、chatGPT Plusを使用して、GMTに関する質問をしてみました。
使用したモデルはGPT-4です。

スポンサーリンク
スポンサーリンク

日本地図を描く

はじめてのGMT6(地図編)
はじめてGMT6を触る方に向けて、地図の描き方の基礎を掲載しています。

質問:GMTというスクリプト言語で日本地図を書きたいです

GMT (Generic Mapping Tools) は、地図データを扱うための強力なツールセットで、主に地球科学者によって使用されています。GMTは、多くの地図投影と地球科学データをサポートし、C言語で書かれていますが、コマンドラインからスクリプトで操作できます。

日本地図をGMTで作成するには、以下の手順を実行してください。

  1. GMTをインストールする
    GMTは多くのプラットフォームで利用可能です。インストール方法は公式ドキュメント(https://docs.generic-mapping-tools.org/latest/install.html)を参照してください

  2. 地図データをダウンロードする
    日本地図のベクターデータをダウンロードします。Natural Earth(https://www.naturalearthdata.com/)は無料で利用できる地理データを提供しています。GMTでも利用可能なデータがあります

  3. スクリプトを作成する
    以下は、日本地図を描画するための簡単なGMTスクリプトです。これを "japan_map.sh" などの名前で保存してください。

#!/bin/bash
# グリッドデータをダウンロードして解凍する
gmt grdlandmask -R120/150/24/47 -I10m -Df -N-1/0 -Gjapan_mask.grd
gmt grdgradient japan_mask.grd -Ne0.8 -A100 -Gjapan_intens.grd
# 日本地図を描画する
gmt begin japan_map pdf
gmt coast -R120/150/24/47 -JM6i -Bxaf -Byaf -BWSne -W0.25p -A500 -Gblack -Sskyblue -Df
gmt grdimage japan_mask.grd -Ijapan_intens.grd -t70 -Cgray
gmt coast -W0.25p
gmt end

書けるじゃん、、

でもgrdlandmaskを使うのは意外でした。SRTM1使えばいいのに。

震源をプロットする

gmt plot の使い方
GMTのplotモジュールについて説明しています。

質問:震源をプロットするにはどうすればよいですか

震源をプロットするには、まず震源データを用意する必要があります。震源データは緯度、経度、深さ、発生時刻などの情報が含まれています。このデータをテキストファイルに保存して、GMTで読み込んでプロットします。

ここでは、緯度、経度、マグニチュードを含む仮の震源データを使用して説明します。

●震源データをテキストファイルに保存する
以下のような震源データを earthquakes.txt という名前のファイルに保存します。

142.373 38.297 6.7
141.381 36.948 6.1
135.667 34.667 6.3

このファイルには、3つの震源の経度、緯度、マグニチュードが含まれています。

●震源をプロットするスクリプトを作成する
以下のスクリプトは、日本地図上に震源をプロットします。これを "japan_map_with_earthquakes.sh" などの名前で保存してください。

#!/bin/bash
# グリッドデータをダウンロードして解凍する
gmt grdlandmask -R120/150/24/47 -I10m -Df -N-1/0 -Gjapan_mask.grd
gmt grdgradient japan_mask.grd -Ne0.8 -A100 -Gjapan_intens.grd
# 日本地図と震源を描画する
gmt begin japan_map_with_earthquakes pdf
  gmt coast -R120/150/24/47 -JM6i -Bxaf -Byaf -BWSne -W0.25p -A500 -Gblack -Sskyblue -Df
  gmt grdimage japan_mask.grd -Ijapan_intens.grd -t70 -Cgray
  gmt coast -W0.25p
  gmt plot earthquakes.txt -St0.25i -Gred -W0.25p,black
gmt end

このスクリプトでは、gmt plot コマンドを使用して earthquakes.txt に含まれる震源をプロットしています。記号の形状とサイズは -St0.25i で指定しており、ここでは三角形の記号を0.25インチのサイズで表示しています。記号の塗りつぶし色は -Gred で指定し、記号の線の色は -W0.25p,black で指定しています。

gmt plotの使い方は完璧ですね。

発震機構解を書かせる

gmt meca の使い方
GMTのmecaモジュールについて説明しています。

結論:できませんでした。
押し問答が続くので省略しますが、安芸リチャーズで書こうとしたり、ハーバードCMTで動かそうとしたり、行ったり来たりでエラーが出続けます。

こういう複数フラグがあるモジュールは苦手かもですね。

まとめ

gmt basemapとかgmt plotらへんは得意。
gmt mecaなどオプションによって入力データのフォーマットが変わるモジュールは苦手。

コメント

スポンサーリンク