このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
2 つの指数シーケンス間の相互相関
2 つの 16 サンプルの指数シーケンス および () の相互相関を計算してプロットします。
N = 16; n = 0:N-1; a = 0.84; b = 0.92; xa = a.^n; xb = b.^n; r = xcorr(xa,xb); stem(-(N-1):(N-1),r)
を分析的に判断して結果が正しいかを確認します。より高いサンプル レートを使用して連続状況をシミュレートします。 において の場合、シーケンス および の相互相関関数は次になります。
fs = 10;
nn = -(N-1):1/fs:(N-1);
cn = (1 - (a*b).^(N-abs(nn)))/(1 - a*b) .* ...
(a.^nn.*(nn>0) + (nn==0) + b.^-(nn).*(nn<0));
シーケンスを同じ Figure にプロットします。
hold on plot(nn,cn) xlabel('Lag') legend('xcorr','Analytic')
オペランドの順序を切り替えるとシーケンスが逆になることを確認します。
figure stem(-(N-1):(N-1),xcorr(xb,xa)) hold on stem(-(N-1):(N-1),fliplr(r),'--*') xlabel('Lag') legend('xcorr(x_b,x_a)','fliplr(xcorr(x_a,x_b))')
20 サンプルの指数シーケンス を生成します。 および の相互相関を計算し、プロットします。ラグを出力してプロットを簡単にします。xcorr
では、短いシーケンスの最後にゼロを追加して長いシーケンスと長さを合わせます。
xc = 0.77.^(0:20-1);
[xca,la] = xcorr(xa,xc);
[xcb,lb] = xcorr(xb,xc);
figure
subplot(2,1,1)
stem(la,xca)
subplot(2,1,2)
stem(lb,xcb)
xlabel('Lag')