check_polezeroコマンド マニュアル

(The documentation of check_polezero command)

Last Update: 2023/1/4


◆機能・用途(Purpose)

poleとzeroのファイルをチェックする。
Check a file of poles and zeros.

地震計の応答特性はpoleとzeroで表される。 地面の振動の波形を\(v_{in}(t)\)、そのラプラス変換を \[\begin{equation} V_{in}(s)=\int_{-\infty}^{\infty}v_{in}(t)e^{-st}dt \label{eq.Vin.Laplace} \end{equation}\] とおく。\(s\)は任意の複素数であり、 \(s=i\omega=2\pi if\)(\(\omega\): 角周波数、\(f\): 周波数) とおけば\(V_{in}(s)\)は\(v_{in}(t)\)のフーリエ変換になる。 同様に、地震計が出力する波形を\(v_{out}(t)\)、 そのラプラス変換を\(V_{out}(s)\)とおく。 このとき、地震計の応答特性は \[\begin{equation} T(s)\equiv \frac{V_{out}(s)}{V_{in}(s)} =C\frac{\prod_{n=1}^{N_0}(s-s_n^{(0)})}{\prod_{n=1}^{N_p}(s-s_n^{(p)})} \label{eq.response} \end{equation}\] と表される。ここで\(C\)は定数、 \(N_p\), \(N_0\)は非負の整数、 \(s_n^{(p)}\)は複素定数(極と呼ばれる)、 \(s_n^{(0)}\)は複素定数(ゼロ点と呼ばれる)である。
The response of a seismometer is expressed by poles and zeros. Let \(v_{in}(t)\) be the waveform of an actual ground motion, and \(V_{in}(s)\) (Eq. \ref{eq.Vin.Laplace}) be its Laplace transformation, where \(s\) is an arbitrary complex number. \(V_{in}(s)\) is the Fourier transformation of \(v_{in}(t)\) if \(s=i\omega=2\pi if\), where \(\omega\) and \(f\) are an angular frequency and a frequency, respectively. In the same way, let \(v_{out}(t)\) and \(V_{out}(s)\) be the output waveform of the seismometer and its Laplace transformation, respectively. The response of this seismometer is then given by Eq. (\ref{eq.response}), where \(C\) is a constant, \(N_p\) and \(N_0\) are non-negative integers, \(s_n^{(p)}\) are complex constants (known as poles), and \(s_n^{(0)}\) are complex constants (known as zeros).

Seismic Analysis Code (SAC)においては (\ref{eq.response})式に登場する定数 \(C\), \(N_p\), \(N_0\), \(s_n^{(p)}\), \(s_n^{(0)}\) をテキストファイルで与えることにより、 地震波形から地震計の応答特性をデコンボリューションしたり、 別の地震計の応答特性をコンボリューションすることができる。 以下はテキストファイルの例である。
The Seismic Analysis Code (SAC) can deconvolve the response of a seismometer from a seismogram or convolve the response of another seismometer to an waveform, specifying the values of \(C\), \(N_p\), \(N_0\), \(s_n^{(p)}\), and \(s_n^{(0)}\) in Eq. (\ref{eq.response}) by a text file. An example of the text file is shown below.

ZEROS 4
-0.125 0.0
-50.0 0.0
POLES 4
-0.13 0.0
-6.02 0.0
-8.66 0.0
-35.2 0.0
CONSTANT -394.0

ファイルの書式の説明はSACでhelp transferと打つことで得られるので ここでは省略する。 以下ではこの種のファイルを「poleとzeroのファイル」と呼ぶことにする。
A description for the format of this file is available by typing “help transfer” in SAC. In the following, this kind of file is called “a file of poles and zeros”.

地震計の応答特性はメーカーから発行されるデータシートや PASSCAL Instrument CenterのWEBサイトなどから得られるが、 poleとzeroがHz単位で書かれている場合とrad/s単位で書かれている場合があり、 定数\(C\)が省略されている場合もある。 そのため正しいpoleとzeroのファイルを作成するには 念入りなチェックが必要になる。
The response of a seismometer is available in a data sheet issued by the manufacturer or the website of PASSCAL Instrument Center; however, the poles and zeros may be given either by Hz or rad/s unit, and the constant \(C\) may be omitted. Therefore, creating a correct file of poles and zeros requires a careful check.

check_polezeroコマンドはこのチェックに利用できる。 このコマンドでは指定した周波数\(f\)における 地震計の応答\(T(2\pi if)\)を計算・表示する。 これにより、poleとzeroのファイルが妥当なものになっているかを容易に検証できる。
The check_polezero command is useful for this check. This command computes and displays the response \(T(2\pi if)\) of a seismometer at given frequencies \(f\). By this, the validity of a file for poles and zeros can easily be examined.


◆ソースコード(Source code)

$YMAEDA_OPENTOOL_DIR/sac_data/src/check_polezero.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
チェックしたいpoleとzeroのファイル名。
The name of the file of poles and zeros to check.


●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
freq 応答を出力する周波数(Hz)のリスト。
List of the frequencies (Hz) to output the response.
周波数を表す正の実数値をカンマ(,)で区切って並べた文字列。
A string composed of positive real numbers (each represents a frequency) separated by commans (s).
1.0


◆動作(Behaviour)

パラメータfreqで指定した各周波数\(f\)について\(T(2\pi if)\)を計算し、 標準出力に表示する。
出力フォーマットは 第1列が\(f\)(Hz)、 第2列が\(T(2\pi if)\)の実部、 第3列が虚部、 第4列が振幅、 第5列が位相(rad) である。
The value of \(T(2\pi if)\) for each frequency \(f\) specified by parameter freq is computed and displayed in the standard output. The output format is \(f\) (Hz) in the 1st column followed by the real part, imaginary part, amplitude, and phase (rad) of \(T(2\pi if)\) in the 2nd to 5th columns, respectively.


◆使用例(Example)

check_polezero CMG100s_response.dat --freq=1.0,0.1,0.01,0.001