久しぶりに、楽しめた文献です。
Maeda et al., Interference of long-period seismic wavefield observed by dense Hi-net array in Japan, J. Geophys. Res., 116, B10303, 2011.
http://dx.doi.org/10.1029/2011JB008464
いえ、中身を理解しているわけではありません。が、ここに書かれているような比較をするしかない、とプロと話をしていた直後に見つけた文献でしたので、とても心惹かれました。
Hi‐net と F-net の地震計の伝達関数を組み合わせることで、時間領域でのフィルターを作成。Hi‐net のデータから 100秒までの低周波領域を再現できた、という内容です。2007年のスマトラ島沖地震を例に、とある Hi-net の観測局のデータにフィルターをかけた波形と、そこに近接する F-net 観測局の波形を比較することで妥当性を確認されています。
GitHub にコードが掲載されています。
hinet_decon
https://github.com/tktmyd/hinet_decon
A fortran2003 code to deconvolve Hi-net velocity record by its seismometer response by using inverse filtering technique.
最終更新が7年前。需要がないのか、より良い手法が出たのかわかりませんが、メジャーにはなっていないようです。
ひとまず、手を動かしてみることに。
*** Ubuntu20.04です。**********************************************
a. Hinet の HP から win32tools をDL、make
b. GIthub から hinet_decon をDL、make
conda で仮想環境構築
Python 3.8 を install
pip obspy hinetpy pandas jupyter
a.で作成したcatwin32、win2sac_32をフォルダにまとめ、パスを通す。
home./profile の最後に書き込み。
export PATH="$PATH:/home/hinet/win32tools/" など
条件設定:震央の緯度経度、データ取得開始時間、スパンなど
HinetPy で読み込み、SAC変換。
b.で作成した hinet_decon で時間領域フィルターをかける。
ObsPy で BPフィルター& record section 作画。
******************************************************************************
Fortaran、c、Python で準備されたライブラリやソフトを Python で繋ぐ感覚です。半日で組みあがり、一つのノートブックに仕上がりました。意外と単純で簡単でしたね。条件を指定した後はデータダウンロードから作画までほぼ自動です。各々の作者に感謝。
で、再現した画像がコチラ。データは防災科学技術研究所 Hi-net を使用。
まずは Fig.6(a) 50~100秒(軸が90度回転しています)。
P波は見えませんが、S波とレーリー波は見えます。文献と時間がずれているのは起点の時間が異なるのでしょう。
次は Fig.6(b) 20~50秒。こちらはP波も見えます。
さらに N.JIZH のみを拡大し、Fig.3と比較。完全に再現できています。コードにミスはなく、ライブラリも正しく動いたようです。この分野でよく利用されているらしい SAC 形式で(結果的に)処理したのが良かったのかな?
https://phreeqc.blogspot.com/2019/08/obspy-2.html
676か所の観測局のデータを DL して描き終わるまで、10分もかかっていなかったと感じます(計っていませんでした)。便利な時代です。
あとは頭がついていくかどうか。
hinet_decon の設定はデフォのまま。まだ理解できていない部分があるので、もう一度読み直してみましょう。
0 件のコメント:
コメントを投稿