Signal Processing Toolbox    
tfe

入力および出力からの伝達関数の推定

表示

詳細

Txy = tfe(x,y) は、入力信号ベクトルxと出力信号ベクトルyを与え、伝達関数推定値Txyを求めます。伝達関数は、xyのクロススペクトルとxのパワースペクトルの比であり、つぎのように表されます。

入力xと出力yの関係は、線形の時不変伝達関数Txyによってモデリングされます。

ベクトルxとベクトルyは、同じ長さでなければなりません。Txy = tfe(x,y)は、つぎのデフォルト値を使用します。

nfftでは、tfeが使用するFFTの長さを設定します。この値により、パワースペクトルを計算する周波数の刻みを決定します。fsは、サンプリング周波数を設定するスカラです。windowは、tfeが分割したxおよびyベクトルに使用するウィンドウとサンプル数を設定します。noverlapは、分割したデータ列をオーバラップさせるサンプル数です。入力引数のいずれかを省略すると、それより右側に位置する引数には、上記のデフォルト値が使用されます。

xが実数の場合、tfeは正の周波数の伝達関数のみを推定します。この場合、出力Txyは、nfftが偶数の場合、長さnfft/2+1の列ベクトル、n が奇数の場合、長さ(nfft+1)/2の列ベクトルとなります。xまたはyが複素数の場合、tfe は正と負の周波数の伝達関数を共に推定し、Txy の長さはnfftとなります。

Txy = tfe(x,y,nfft) は、伝達関数の推定にFFTの長さnfftを使用します。実行速度を最も速くするには、nfftを2のベキ乗数として設定します。

[Txy,f] = tfe(x,y,nfft,fs) は、この関数が伝達関数を推定する周波数のベクトルfを出力します。fsはサンプリング周波数です。fTxyと同じ大きさであるため、plot(f,Txy)は適切にスケーリングされた周波数に対する伝達関数をプロットします。fsは周波数を求めるだけのもので、出力Txyには影響しません。

Txy = tfe(x,y,nfft,fs,window) は、ベクトルxに適用するウィンドウおよびサンプル数を設定します。windowにスカラを与えた場合、tfeは、その長さのHannウィンドウを使用します。ウィンドウの長さはnfft以下でなければなりません。ウィンドウの長さがnfftを越える場合には、tfeはゼロを付加します。

Txy = tfe(x,y,nfft,fs,window,numoverlap) は、numoverlap数のサンプルでxの分割をオーバラップさせます。

xまたはy以外のどの入力引数にも、空行列[]を使用して、デフォルト値を設定することができます。たとえば、

は、nfftの値として256を、fsの値として2を使用します。

Txy = tfe(x,y,...,'dflag') は、トレンド除去オプションを設定します。ここで、dflagには、つぎの文字列が設定できます。

dflagパラメータは、入力引数のリストの最後に設定しなければなりません。tfeは、中間の引数の数に関係なく、dflag文字列を認識します。

tfe(...) は、出力引数を設定せずに使用すると、カレントのfigureウィンドウに周波数に対する伝達関数推定のゲインを dB 単位でプロットします。

例題

2つの有色雑音列xyの間の伝達関数の推定値を計算してプロットします。

アルゴリズム

tfeは、つぎの4つのステップのアルゴリズムを使用します。

  1. トレンドを除去した部分にwindowを適用します。
  2. 長さnfftのFFTを計算します。
  3. 分割したxのスペクトルの二乗を平均してPxxを作成し、分割したxyのスペクトルの積を平均してPxyを作成します。
  4. つぎのようにして、Txyを計算します。
      Txy = Pxy./Pxx
      

診断

誤った引数を使用すると、つぎのような警告メッセージが表示されます。

参考
etfe
経験的伝達関数推定値とピリオドグラムの計算(System Identification Toolbox User's Guideを参照)
cohere
2つの信号間の二乗コヒーレンス関数の推定
csd
2つの信号のクロススペクトル密度(CSD)の推定
pwelch
信号のパワースペクトル密度(PSD)の推定
spa
入力-出力データのスペクトル解析の実行(System Identification Toolbox User's Guideを参照)


 tf2zp triang