91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

維納濾波器在matlab中實現的源程序

資源截圖

代碼片段和文件信息

clear?all

%輸入信號樣本個數L,FIR濾波器階數N%
L=input(‘L=‘);???
N=input(‘N=‘);
a=0.95;

%產生L個v(n)、u(n)、s(n)和x(n)在同一座標內繪出最后100個s(n)和x(n)
?????????????????????????
v=1;???????????????%信號方差
l=100;?????????????%樣本個數
u=0.1;????????????%步長
hi=-0.8;???????????%hi
h=zeros(l1);
h(1)=0;????????????%h(0)
mp=0;??????????????%平均超調量
ct=1;??????????????%統計次數

for?count=1:ct
????x=randn(1l);
????meanx=sum(x)/l;
????covx=sum((x-meanx)*(x-meanx)‘)/l;
????x=0.5*(x-meanx)/sqrt(covx);
????w=randn(1l);
????meanw=sum(w)/l;
????covw=sum((w-meanw)*(w-meanw)‘)/l;
????w=sqrt(v)*(w-meanw)/sqrt(covw);
????
?????s=hi*x;
????xn=s+w;
end

figure(1);????????????????????????????????%繪制s(n)(紅色)x(n)(藍色)
k=(L-99):1:L;??????????????????????????
plot(ks(k)‘r‘kx(k)‘k--‘);
legend(‘s(n)‘‘x(n)‘0);
title(‘s(n)和x(n)‘);
xlabel(‘n‘);ylabel(‘輸入信號‘);


%利用L個v(n)s(n),估計Rxx和rxs調用矩陣求逆子程序計算h1,將N個理想的h(n)和估計的h1繪與同一座標內%
fxx=zeros(1N);????????????????????????%計算fxx
for(i=1:N);
????for(k=0:(L-i-1));
????????fxx(i)=(1/(L-i))*x(k+1)*x(k+i)+fxx(i);
????end;
end;
for(i=1:N);????????????????????????????%生成Rxx矩陣
????for(k=1:N);
????????Rxx(ki)=fxx(abs(k-i)+1);
????end;
end;

rxs=zeros(1N);????????????????????????%計算rxs
for(i=1:N);
????for(k=0:(L-i-1));
????????rxs(i)=(1/(L-i))*x(k+1)*s(k+i)+rxs(i);
????end;
end;

h1=(inv(Rxx))*rxs‘;???????????????????

for(i=1:N);???????????????????????????%繪制h(理想濾波器),h1(估計濾波器)
????h(i)=0.238*(0.724)^i*u(i);
end;

figure;
k=1:1:N;
plot(kh(k)‘r‘kh1(k)‘k--‘);
title(‘理想的h(n)和估算的h(n)‘);
legend(‘理想的h(n)‘‘估算的h(n)‘);
xlabel(‘n‘);

%重新生成L點隨機序列%
w=-sqrt(3*(1-(0.95^2)))+2*sqrt(3*(1-(0.95^2)))*rand(1L);????????????????????????
v=-sqrt(3)+2*sqrt(3)*rand(1L);
u=ones(1L);

s(1)=1;?????????????????????????????????%計算s(n)
i=2;
while(i<=L);
???s(i)=a*s(i-1)+w(i);
???i=i+1;
end;

i=1;???????????????????????????????????%計算x(n)
while(i<=L);
????x(i)=s(i)+v(i);
????i=i+1;
end;

%利用公式(1-15),進行理想維納濾波得L個SI(n)將最后100個S(n)和SI(n)繪制于同一坐標內%
S=conv(hx);
SI(1)=S(1);

for(i=2:L);
????SI(i)=0.724*SI(i-1)+0.238*x(i);
end;

figure;
k=(L-99):1:L;
plot(ks(k)‘r‘kSI(k)‘k--‘);
title(‘s(n)和Si(n)‘);
legend(‘s(n)‘‘Si(n)‘0);
xlabel(‘n‘);ylabel(‘理想濾波輸出‘);

%由h1(n)根據公式(1-6)對x(n)進行過濾得L個SR(n)將最后100個s(n)和SR(n)繪制與同一坐標內%
SR=conv(h1x);
figure;
k=(L-99):1:L;
plot(ks(k)‘r‘kSR(k)‘k--‘);
title(‘s(n)和Sr(n)‘);
legend(‘s(n)‘‘Sr(n)‘0);
xlabel(‘n‘);ylabel(‘實際濾波輸出‘);

%由L個x(n)s(n)SI(n)SR(n)根據公式(1-17),統計并打印出EX2EI2ER2%
EX2=0;
EI2=0;
ER2=0;

for(i=1:L);
????EX2=1/L*((x(i)-s(i))^2)+EX2;???????????????%計算接受信號與原信號的誤差
end;

for(i=1:L);
????EI2=1/L*((SI(i)-s(i))^2)+EI2;???????????????%計算維納濾波器理想濾波
end;

for(i=1:L);??????????????????????????????????%計算N點的維納濾波器理想濾波
????EI21=1/L*((S(i)-s(i))^2)+EI2;
end;

for(i=1:L);???????????????????????????????????%計算估計濾波器濾波
????ER2=1/L*((SR(i)-s(i))^2)+ER2;
end;

EX2
EI2
ER2

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????3207??2018-11-29?15:41??WeinaFilter_1.m

評論

共有 條評論