均匀分布相

时间:2014-05-05 14:44:36

标签: matlab random sampling

假设我们有以下模型,其中相位均匀分布在[-pi pi]

的范围内
clear all;
A1=24;
A2=23;
A3=23;
A4=23;
A5=10;
 f1=12;
 f2=14;
 f3= 20;
 f4=7;
 t=0:0.01:2.94;
 phi=2*pi*(rand(1,4)-0.5);
 x=rand(length(t));
 y=A1.*sin(2*pi*f1*t+phi(1))+A2.*cos(2*pi*f1*t+phi(2))+A3.*sin(2*pi*f1*t+phi(3))+A4.*cos(2*pi*f1*t+phi(4))+A5.*x;

但它显示错误

Error using  + 
Matrix dimensions must agree.

Error in stationary (line 14)
 y=A1.*sin(2*pi*f1*t+phi(1))+A2.*cos(2*pi*f1*t+phi(2))+A3.*sin(2*pi*f1*t+phi(3))+A4.*cos(2*pi*f1*t+phi(4))+A5.*x; 

也请求ei有这样的问题,当它说相位是统一生成时,是否意味着它们应该立即生成然后用于信号或每次迭代时,应该生成新的阶段?提前感谢

更新:

我已经更新了这样的代码

clear all;
A1=24;
A2=23;
A3=23;
A4=23;
A5=10;
 f1=12;
 f2=14;
 f3= 20;
 f4=7;
 phi=2*pi*(rand(1,4)-0.5);
 t=0:0.01:2.93;
x=rand([1,length(t)]);
 y=A1.*sin(2*pi*f1*t+phi(1))+A2.*cos(2*pi*f1*t+phi(2))+A3.*sin(2*pi*f1*t+phi(3))+A4.*cos(2*pi*f1*t+phi(4))+A5.*x;

一切正确吗?重点是关于阶段

1 个答案:

答案 0 :(得分:2)

我不明白这个问题,但是关于错误信息:你试图将295x295矩阵与1x295向量相加,但失败了:

你可能意味着:

x=rand([1,length(t)]);

而不是

x=rand(length(t));