離散自己/相互相関を計算する
[c, lagindex] = xcorr(x) [c, lagindex] = xcorr(x, y) [c, lagindex] = xcorr(.., maxlags) [c, lagindex] = xcorr(.., maxlags, scaling)
実数または複素浮動小数点数のベクトル.
実数または複素浮動小数点数のベクトル.
デフォルト値は x.
スカラーで,1より大きな整数.
デフォルト値は n.
ただし,nはx,
yベクトルの長さの大きい方です.
文字列で,値は以下のどれか:
"biased", "unbiased",
"coeff", "none".
デフォルト値は "none".
実数または浮動小数点数のベクトルで,向きは
xと同じです.
行ベクトルで, cの値に
対応する添字(lag index)を有します.
c=xcorr(x)
は,以下のように正規化しない離散自己共分散を計算します:

c を返します.
自己共分散の並びは,
Ck=-n:n
となります.ただし,nは,
xの長さです.xcorr(x,y)
は正規化しない離散相互共分散を以下のように計算します:

cに返します.
相互共分散の並びは,
Ck=-n:nとなります.
ただし,nは,
xおよびy
の長さの大きい方です.maxlags 引数が指定された場合,
xcorr は c を
返し,共分散の並びは Ck=-maxlags:maxlags と
なります.
maxlags が length(x)よりも
大きい場合, cの先頭と末尾の複数の値は
ゼロになります.
scaling 引数は,
cに結果を出力する前に
C(k)を正規化する方法を以下のように指定します:
c=C/n.c=C./(n-(-maxlags:maxlags)).c=C/(norm(x)*norm(y)).![]() | corr
関数は 手法この関数は,ifft(fft(x).*conj(fft(y)))により
Cを計算します. |
t = linspace(0, 100, 2000); y = 0.8 * sin(t) + 0.8 * sin(2 * t); [c, ind] = xcorr(y, "biased"); plot(ind, c) | ![]() | ![]() |

| Version | Description |
| 5.4.0 | xcorr追加. |