detect_eventコマンド マニュアル

(The documentation of detect_event command)

Last Update: 2022/07/21


◆機能・用途(Purpose)

シグナル/ノイズ比を用いて連続波形からイベントを検出する。
Detect events from continuous waveforms based on signal-to-noise ratios.


◆概要(Overview)

このプログラムでは連続波形からシグナル/ノイズ比に基づいてイベントを検知する。 各時刻\(t\)について、 その時刻よりも前の一定長さ\(T_n\)の タイムウインドウ\([t-T_n,t]\)での振幅を\(A_n\)(ノイズ振幅)、 その時刻よりも後の一定長さ\(T_s\)の タイムウインドウ\([t,t+T_s]\)での振幅を\(A_s\)(シグナル振幅)とし、 比\(A_s/A_n\)が閾値を超えた場合にイベントと判断する。
This program detects events from continuous waveforms based on signal-to-noise ratios. For each \(t\), the noise amplitude \(A_n\) is evaluated using a time window of a length \(T_n\) before \(t\) (i.e., \([t-T_n,t]\)), and the signal amplitude \(A_s\) is evaluated using a time window of a length \(T_s\) after \(t\) (i.e., \([t,t+T_s]\)). An event is identified when the ratio \(A_s/A_n\) exceeds a threshold value.

この手法は短時間平均(STA)と長時間平均(LTA)の比を用いる方法とはやや考え方が異なる。 \(T_n\gg T_s\)とすれば本手法でもSTA/LTAになるが、 本手法では\(T_n\)と\(T_s\)の大小関係は問わない。 時刻\(t\)よりも前の波形の振幅レベルに比べて \(t\)よりも後が大振幅であれば \(t\)を境にイベントが発生したと判断するという仕組みになる。
This method is a bit different from the method using the ratio of short-term average (STA) to long-term average (LTA). The ratio \(A_s/A_n\) in this program would be regarded as STA/LTA if \(T_n\gg T_s\). However, this program does not require \(T_n\) to be larger than \(T_s\); an event is identified at time \(t\) when the amplitude after \(t\) is substantially larger than that before \(t\), whatever the lengths of \(T_n\) and \(T_s\) are.

このプログラムでは 複数の観測点や成分の波形、複数の周波数帯での波形を同時に評価に用いることができ、 それら全てにおいて比\(A_s/A_n\)が閾値を超えた場合にイベントとして検知する。 \(A_n\), \(A_s\)の評価には2乗平均の平方根(RMS)を用いる。
This program can use waveforms from multiple stations, components, and frequency bands simultaneously; an event is detected when the \(A_s/A_n\) ratios from all traces simultaneously exceed the threshold. The amplitudes \(A_n\) and \(A_s\) are evaluated according to the root mean square (RMS) amplitudes.


◆ソースコード(Source code)

$YMAEDA_OPENTOOL_DIR/event_detection/src/detect_event.c


◆使用方法(Usage)

コマンドライン引数でパラメータを指定する。 パラメータの一覧を下表に示す。
Specify parameters by command-line arguments. The table below shows a list of parameters.


●「-」から始まらない引数 (Arguments not beginning with “-”)

引数
Argument
与える値
Quantity to be given
第1引数
1st argument
入力として用いるSAC時系列データファイル名を カンマ(,)で区切って並べたリスト。 時刻範囲とサンプル間隔は全てのファイルで共通でなければならない。
A list of input SAC time series data files separated by commas(,). The time ranges and sampling intervals of all traces must be same.


●1つの「-」から始まる引数 (Arguments beginning with a single “-”)

このコマンドでは1つの「-」から始まる引数は存在しない。
This command does not have arguments beginning with a single “-”.


●「--パラメータ名=パラメータ値」の形式の引数 (Arguments of a form “--Parameter name=Parameter Value”)

「--パラメータ名=パラメータ値」の形式の引数は自由な順番で指定できる。 「-」から始まらない引数の間に挿入しても良い。 相反する指定がなされた場合には後の指定が優先される。 デフォルト値を持つパラメータは省略できる。
Arguments of a form “--Parameter name=Parameter Value” can be placed in an arbitrary order. They can even be inserted between arguments not beginning with “-”. In case of conflicting options being specified, the latter option has a higher priority. Parameters that have default values can be omitted.

パラメータ名
Parameter name
意味
Meaning
可能なパラメータ値
Allowed parameter values
デフォルト値
Default value
freqSNlist イベントの検知に用いる周波数帯と\(A_s/A_n\)の閾値のリスト。
A list of frequency bands and threshold values for \(A_s/A_n\) used for the event detection.
周波数帯と閾値をアンダーバー(_)で繋げた文字列 (周波数帯_閾値)を 条件の数だけカンマ(,)で区切って並べた文字列。
A string composed of every combination of a frequency band and a threshold. The frequency band and the threshold for each combination are connected with an underbar (_) (band_threshold). The combinations are connected with commas (,).

周波数帯は以下の4通りの書き方ができる。 いずれにおいても平均値と線形トレンドの除去が行われる。
The frequency band can be specified by one of the following methods. In each cases, the mean and linear trend are removed.

  • raw
    フィルター無し。
    No filter.

  • lp\(f_c^l\)
    ローパスフィルター(\(f_c^l\)はコーナー周波数[Hz])。
    A low-pass filter; \(f_c^l\) represents the corner frequency [Hz].

  • hp\(f_c^h\)
    ハイパスフィルター(\(f_c^h\)はコーナー周波数[Hz])。
    A high-pass filter; \(f_c^h\) represents the corner frequency [Hz].

  • \(f_c^h\)-\(f_c^l\)
    バンドパスフィルター。
    A band-pass filter.

閾値は省略可能で、この場合はデフォルト値(3.0)が用いられる。
The threshold value can be omitted; when omitted, a default value (3.0) is used.

(Example): raw_5.0,0.01-0.05_1.5,0.5-2,hp4_3.5
この例は
  • 生波形(閾値5.0)
  • 0.01-0.05 Hz帯(閾値1.5)
  • 0.5-2 Hz帯(閾値3.0(デフォルト値))
  • ハイパス4 Hz(閾値3.5)
を用いるという意味である。
This example means that
  • a raw waveform (threshold: 5.0),
  • a 0.01-0.05 Hz band (threshold: 1.5),
  • a 0.5-2 Hz band (threshold: 3.0 (default value)), and
  • a high-pass filter of 4 Hz (threshold: 3.5)
are used.
raw_3.0
noiseWindowLength ノイズ振幅\(A_n\)の計算に用いるタイムウインドウ長\(T_n\)[s]。
The time window length, \(T_n\) [s], used for the evaluation of noise amplitudes \(A_n\).
SAC時系列データのサンプリング間隔の整数倍の正の実数。
A positive real number which is a multiple of the sampling interval of SAC time series data.
10.0
signalWindowLength シグナル振幅\(A_s\)の計算に用いるタイムウインドウ長\(T_s\)[s]。
The time window length, \(T_s\) [s], used for the evaluation of signal amplitudes \(A_s\).
SAC時系列データのサンプリング間隔の整数倍の正の実数。
A positive real number which is a multiple of the sampling interval of SAC time series data.
10.0
minimumEventDuration 仮定する1つのイベントの最小継続時間[s]。 \(A_s/A_n\)が閾値を超えた2つの時刻の差がこの時間以下であれば 同一のイベントと見なす。
The minimum assumed duration [s] of each event; if the difference of two adjacent times when \(A_s/A_n\) exceeds the thresholds is less than this duration, they are regarded as the same event.
SAC時系列データのサンプリング間隔の整数倍の正の実数。
A positive real number which is a multiple of the sampling interval of SAC time series data.
5.0


◆動作(Behaviour)

検知したイベントの時刻が標準出力に表示される。 各時刻は絶対日時(YYYY/MM/DD hh:mm:ss.sss形式)と SACファイル先頭からの秒数が タブ区切りで出力される。
The times of detected events are listed in the standard output. Each time is composed of an absolute date and time (in YYYY/MM/DD hh:mm:ss.sss format) and the elapsed time [s] from the beginning of the SAC files. These two kinds of times are separated by a tab.


◆使用例(Example)

detect_event station1.sac,station2.sac,station3.sac --freqSNlist=raw_5.0,0.01-0.05_1.5,0.5-2,hp4_3.5 --noiseWindowLength=60.0