関数imsequence2_decimate マニュアル

(The documentation of function imsequence2_decimate)

Last Update: 2023/10/23


◆機能・用途(Purpose)

フーリエスペクトルのサンプルを間引く。
Reduce the samples of a Fourier spectrum.


◆形式(Format)

#include <sequence/operation.h>
inline struct imsequence2 imsequence2_decimate
(const struct imsequence2 original,const double new_dt)


◆引数(Arguments)

original 間引く前のフーリエスペクトル(入力)。
The input Fourier spectrum before the resampling.
new_dt 作成する(間引き後の)フーリエスペクトルのサンプリング間隔。 入力フーリエスペクトル(引数original)のサンプリング間隔の 整数倍でなければならない。
The sampling interval of the Fourier spectrum to create (i.e., after the resampling). This value must be a multiple of the sampling interval of the input Fourier spectrum given by argument original.


◆戻り値(Return value)

引数originalで与えた入力フーリエスペクトルを サンプリング間隔がnew_dtとなるように間引いたフーリエスペクトル。
A Fourier spectrum obtained by resampling the input Fourier spectrum, given by argument original, to a sampling interval specified by argument new_dt.

入力フーリエスペクトルの先頭時刻(あるいは周波数)を\(t_0\)、 サンプリング間隔を\(\Delta t_{in}\)、 \(k\)番目のサンプル(\(k=0,1,2,\cdots\))値を\(f(t_0+k\Delta t_{in})\)、 引数new_dtで指定した新しいサンプリング間隔を\(\Delta t_{out}\)とし、 比\(\Delta t_{out}/\Delta t_{in}=N\)とすると、 戻り値は\(f(t_0+l\Delta t_{out})=f(t_0+lN\Delta t_{in})\) を\(l=0,1,2,\cdots\)について並べたフーリエスペクトルである。 すなわち、先頭時刻(あるいは周波数)は変えず、フィルタリングや補間等もせず、 単純に\(N\)サンプルに1つを抽出したフーリエスペクトルを返す。
Let \(t_0\) and \(\Delta t_{in}\) be the beginning time (or frequency) and sampling interval of the input Fourier spectrum, respectively. Let \(f(t_0+k\Delta t_{in})\) be the value of the \(k\)th sample of the input Fourier spectrum, where \(k=0,1,2,\cdots\). Let \(\Delta t_{out}\) be the new sampling interval given by argument new_dt, and let the ratio of the sampling intervals be \(\Delta t_{out}/\Delta t_{in}=N\). Then the return value is represented by \(f(t_0+l\Delta t_{out})=f(t_0+lN\Delta t_{in})\), where \(l=0,1,2,\cdots\). Namely, the beginning time (or frequency) is preserved, and simply every \(N\) sample of the input data is extracted without filtering nor interpolation, to make the output Fourier spectrum to return.


◆使用例(Example)

struct imsequence2 old; struct imsequence2 new=imsequence2_decimate(old,0.2);


◆使用上の注意(Note)

この関数ではアンチエイリアスフィルターは使用しない。 必要であればこの関数の前に別途フィルタリングを行うこと。
This function does not use an anti-alias filter. If necessary, apply the filter before the function call.