f1 = 1 ;
N = 1024 ;
fs = 200 ;
ts = 1/fs ;
t = -(N/(2*fs)):ts:(N/(2*fs)) ;
theta=rand(0:2*pi);
X = sin(2*pi*f1*t+theta) ;
plot(t,x)
grid
Error using +
Matrix dimensions must agree.
如何计算x函数Rxx(n)的自相关?
答案 0 :(得分:0)
将theta
行替换为
theta = 2*pi*rand; %// generates a random number between 0 and 2*pi
和plot
行
plot(t, X); %// capital "X", as you have defined previously
对于自相关,您可以使用conv
(实际信号的相关等效于时间反转的卷积):
c = conv(X,fliplr(X));
plot(-(N/fs):ts:(N/fs), c)
答案 1 :(得分:0)
要添加Luis Mendo已回答的内容,错误消息的原因是:
>> size(t)
ans =
1 1025
>> size(theta)
ans =
0 1 2 3 4 5 6
所以你试图在X = sin(2*pi*f1*t+theta)
中添加两个不同尺寸的东西,因此出现错误信息。
使用Luis的建议来修复您的代码。