xcorr函数的用法和程序举例

xcorr函数的用法和程序举例

xcorr函数返回两个离散时间序列的互相关。互相关测量向量 x 和移位(滞后)副本向量y 的之间的相似性,形式为滞后的函数。如果 x 和 y 的长度不同,函数会在较短向量的末尾添加零,使其长度与另一个向量相同。

一、语法

1.语法(1)

   r = xcorr(x,y)

r = xcorr(x,y) 返回两个离散时间序列的互相关。互相关测量向量 x 和移位(滞后)副本向量 y 的之间的相似性,形式为滞后的函数。如果 x 和 y 的长度不同,函数会在较短向量的末尾添加零,使其长度与另一个向量相同。
举例:

clc
clear all
x=[1 2 3]
y=[5 7]
s_k=xcorr(x,y)

运行结果:

xcorr函数的用法和程序举例_第1张图片
图1 互相关函数xcorr(x,y)的使用
从图1中我们可以看到,计算的结果长度为L=2*max([length(x),length(y)])-1=2*max([3,2])-1=2*3-1=5

2.语法(2)

   r = xcorr(x) 
  r = xcorr(x) 返回 x 的自相关序列。如果 x 是矩阵,则 r 也是矩阵,其中包含 x 的所有列组合的自相关和互相关序列。

举例2

clc
clear all
y=[5 7]
r=xcorr(y)

运行结果
xcorr函数的用法和程序举例_第2张图片
图2 互相关函数xcorr(y)的使用

3.语法(3)

 r = xcorr(___,maxlag) 

r = xcorr(___,maxlag) 将上述任一语法中的滞后范围限制为从 -maxlag 到 maxlag。

clc
clear all
x=[1 2 3]
y=[5 7]
maxlag=1
s_k=xcorr(x,y,maxlag)

运行结果:
xcorr函数的用法和程序举例_第3张图片
图3 xcorr(x,y,maxlag)函数的用法

从图3中可以看出,xcorr(x,y,1)得到的序列长度,要比xcorr(x,y)序列短,即maxlag存在,限制了其相关计算范围。

4.语法(4)

r = xcorr(___,scaleopt) 

r = xcorr(___,scaleopt) 还为互相关或自相关指定归一化选项。除 ‘none’(默认值)以外的任何选项都要求 x 和 y 具有相同的长度。

此处的scaleopt 为归一化选项:可以设置为五种方式之一:‘none’ (默认) 、 ‘biased’ 、 ‘unbiased’ 、‘normalized’ 、 ‘coeff’。其中,设置为 ‘biased’ 、 ‘unbiased’ 、‘normalized’ 、 'coeff’后四种时候,要求x的长度和y的长度相等。

例子:

clc
clear all
x=[1 2 3]
y=[5 7 11]
r_normalized = xcorr(x,y,'normalized')

运行结果
xcorr函数的用法和程序举例_第4张图片
图4 xcorr(x,y,‘normalized’)函数的使用
注意:xcorr(x,y,‘normalized’)中的向量x和向量y必须等长度。

5.语法(5)

[r,lags] = xcorr(___) 

[r,lags] = xcorr(___) 除了返回r,还返回用于计算相关性的滞后lags。

举例:

clc
clear all
x=[1 2 3]
y=[7 8 9]
[r_unbiased,lags_unbiased] = xcorr(x,y,'unbiased')

运行结果
xcorr函数的用法和程序举例_第5张图片
图5 [r,lags] = xcorr(___)函数的用法举例

二、特殊举例

为了展示该函数的应用,本部分采用两个比较特殊的向量进行xcorr计算:
x=[1 2 3 0 0 0 0 1 2 3 0 0 0 0 1 2 3 0 0 0 0 1 2 3 0 0 0 0 1 2 3 0 0 0 0]
y=[1 2 3]
其中,y向量内容在x向量中重复出现多次,具有周期性。

具体程序为:

clc
clear all
x=[1 2 3 0 0 0 0 1 2 3 0 0 0 0 1 2 3 0 0 0 0 1 2 3 0 0 0 0 1 2 3 0 0 0 0]
y=[1 2 3]
[r_biased,lags_biased] = xcorr(x,y,'none')
figure(101)
plot(lags_biased,r_biased)
xlabel('lags_{biased}')
ylabel('r_{biased}')

运行结果:

xcorr函数的用法和程序举例_第6张图片
图6 xcorr计算的特殊举例

你可能感兴趣的:(xcorr,互协方差计算)