見出し画像

津波のシミュレーションプログラムを作ってみる:その1

ふと思い立って,津波のシミュレーションプログラムをつくる気になった。

実は一度,大学生だった頃に自力で作成した経験はあるのだが,プログラムも整理していないし,しばらく触っていないので,整理してもう一度あたらしくつくろうと思った。その備忘録をかねてメモをnoteにしてみる。

自分の備忘録用なのでわかりにくいとは思う。しかしもし自分でもやってみようという物好きの方がいて,やり方がわからなかったらコメント欄でやりとりできたらと思う。

さて,まず必要なのは地形データである。以前作成したときは,ETOPO1というデータを利用していたが,今回はもう少し詳細なデータを使ってみたく,GEBCOという15秒(1秒は1/60分,1分は1/60度)メッシュのデータを使ってみることにする。

GEBCOでは,任意の緯度経度の範囲のデータを切り出してDLできるらしい。無料である。日本近海でのシミュレーションをしたいので,下記の範囲で切り出すこととした。

北緯20-60度
東経120-160度

すると下記のようなファイルがDLされた。なお,DLするファイルフォーマットはいくつか選べるようで,アスキーデータ,netCDFなどが選択可能。アスキーデータはテキスト,netCDFはGMTで標高図などを描きたいときにそのまま使えるファイル形式。

・gebco_2022_n60.0_s20.0_w120.0_e160.0.asc
・gebco_2022_n60.0_s20.0_w120.0_e160.0.nc
・gebco_2022_n60.0_s20.0_w120.0_e160.0_relief.jpeg
・gebco_2022_n60.0_s20.0_w120.0_e160.0_relief.png
・GEBCO_Grid_documentation.pdf
・GEBCO_Grid_terms_of_use.pdf

なお,選択した範囲の地形図は下記のようなものとなる。

GEBCOによる北緯20-60度,東経120-160度の範囲の標高図

DLされた標高値を解析で使うためには,標高の数字を取り出す必要がある。それは「gebco_2022_n60.0_s20.0_w120.0_e160.0.asc」に入っているようだ。ファイルの中身をテキストエディタで見ると,このような感じだ。

ascファイルの中身

ん?これは標高で合っているのか?標高だとしたら,これがどの緯度経度に対応しているのか,よくわからない。

そこで一度,GMTを使って標高図を描くことにする。ファイルは「gebco_2022_n60.0_s20.0_w120.0_e160.0.nc」のnetCDFファイル。

うむ,合っていそうだ。日本海溝が深さ8000mくらいだったか。標高の絶対値も合っていそう。

次に,この「gebco_2022_n60.0_s20.0_w120.0_e160.0.nc」のファイルを,GMTのgrd2xyzコマンドでテキストにしてみる。ファイルサイズは2.7GBほどで,テキストエディタが非常に重かったため,コマンドプロンプトのtypeコマンドで上の部分だけ見てみる。

  120.00208       59.99792      271.00000
  120.00625       59.99792      272.00000
  120.01041       59.99792      269.00000
  120.01458       59.99792      260.00000

一つ目が東経,二つ目が北緯,三つ目が標高。これはascファイルの1行目を,左から右へと呼んでいったもののようだ。つまりascファイルはやはり標高値の羅列を示したもののようだ。緯度はほぼ60度なので,上が北で合っていそう。

今日はここまで。のんびりやろう。

いいなと思ったら応援しよう!

この記事が参加している募集