Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
xcorr
離散自己/相互相関を計算する
呼び出し手順
[c [,lagindex]] = xcorr(x [,maxlags [,scaling]]) [c [,lagindex]] = xcorr(x,y [,maxlags [,scaling]])
パラメータ
- x
 実数または複素浮動小数点数のベクトル.
- y
 実数または複素浮動小数点数のベクトル. デフォルト値は
x.- maxlags
 スカラーで,1より大きな整数. デフォルト値は
n. ただし,nはx,yベクトルの長さの大きい方です.- scaling
 文字列で,値は以下のどれか:
"biased","unbiased","coeff","none". デフォルト値は"none".- c
 実数または浮動小数点数のベクトルで,向きは
xと同じです.- lagindex
 行ベクトルで,
cの値に 対応する添字(lag index)を有します.
説明
c=xcorr(x)は,以下のように正規化しない離散自己共分散を計算します:
                そして,cを返します. 自己共分散の並びは,
                となります.ただし,nは,xの長さです.xcorr(x,y)は正規化しない離散相互共分散を以下のように計算します:
                結果をcに返します. 相互共分散の並びは,
となります.
                ただし,nは,xおよびyの長さの大きい方です.
maxlags 引数が指定された場合,
            xcorr は c を
            返し,共分散の並びは 
 と
            なります.
            maxlags が length(x)よりも
            大きい場合, cの先頭と末尾の複数の値は
            ゼロになります.
scaling 引数は,
            cに結果を出力する前に
            
を正規化する方法を以下のように指定します:
            
- "biased":
c=
/n. - "unbiased":
c=
./(n-(-maxlags:maxlags)). - "coeff":
c=
/(norm(x)*norm(y)). 
手法
この関数は,ifft(fft(x).*conj(fft(y)))により
            
を計算します.例
t = linspace(0, 100, 2000); y = 0.8 * sin(t) + 0.8 * sin(2 * t); [c, ind] = xcorr(y, "biased"); plot(ind, c)

作者
- Serge Steer, INRIA
 
使用される関数
履歴
| バージョン | 記述 | 
| 5.4.0 | xcorr追加. | 
| Report an issue | ||
| << hank | Correlation Convolution | Filters >> | 
