matlab上机实验

时间:2019-01-15 09:58:18
【文件属性】:
文件名称:matlab上机实验
文件大小:279KB
文件格式:PDF
更新时间:2019-01-15 09:58:18
matlab clear; clf; sita=0:pi/499.5:2*pi; %取 1000 个样本 xnoise=sqrt(0.03)*randn(1,1000);%产生 x 轴方向噪声 ynoise=sqrt(0.02)*randn(1,1000);%产生 y 轴方向噪声 x=cos(sita)+xnoise;%产生 x 轴方向观测信号 y=sin(sita)+ynoise;%产生 y 轴方向观测信号 %产生维纳滤波中 x 方向上观测信号的自相关矩阵 rxx=xcorr(x); for i=1:100 %滤波器的阶数设置为 100 for j=1:100 mrxx(i,j)=rxx(1000-i+j); 00 为原始信号的长度 end end xd=cos(sita); %产生维纳滤波中 x 方向上观测信号与期望信号的互相关矩阵 rxd=xcorr(x,xd); for i=1:100 %滤波器的阶数设置为 100 mrxd(i)=rxd(1000-1+i); %原始信号的长度为 1000 end hoptx=inv(mrxx)*mrxd';%由维纳-霍夫方程得到的 x 方向上的滤波器最优解 fx=conv(x,hoptx);%滤波后 x 方向上的输出 for i=1:1000 disx(i)= xd(i)-fx(i); %误差=真实值-滤波最优估值 end %产生维纳滤波中 y 方向上观测信号的自相关矩阵 ryy=xcorr(y);

网友评论