统计与自适应信号处理仿真作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
统计与自适应信号处理仿真作业:
产生AR(2)过程:
x n=w n−1.5857x n−1−0.9604x n−2的采样序列,其中w n∼WGN(0,1).对每一个实现采样N=256次。
(a)设计一个最佳线性预测器,并计算预测误差ℯ1 (n),用自相关、PSD和部分自相关方法检测误差序列ℯ1 (n)的白化性能。分别在一个图上做出这些结果的20次实现的曲线图。
(b)用2阶和3阶线性预测器重做上述题目。
(a) Matlab Script for P = 1:
% Generate x(n)
bh = 1; ba = [1,1.5857,0.9604];
N = 256; n = 0:N-1; w = randn(N,1);
x = filter(bh,ba,w);
% (a) Optimum 1st-order linear predictor
P = 1;
[a,e,V,FPE]=arls(x,P);
Hf_1 = figure(’units’,SCRUN,’position’,SCRPOS,...
’paperunits’,PAPUN,’paperposition’,[0,0,5,3]);
set(Hf_1,’NumberTitle’,’off’,’Name’,’Pr0904a’);
L = 10; l = 0:L-1;
K = N/2; f = [0:K]/K; k = 1:K+1;
x = e;
subplot(’position’,[0.1,0.65,0.35,0.3]);
plot(n(1:100),x(1:100),’g’); axis([-1,100,-4,4]);
xlabel(’\itn’,’fontsize’,label_fontsize,’fontname’,’times’);
ylabel(’{\itx}({\itn})’,’fontsize’,label_fontsize,’fontname’,’times’); title(’Error samples’,’Fontsize’,title_fontsize);
set(gca,’xtick’,[0:20:100],’ytick’,[-4:1:4]);
% Autocorrelation test
r = autoc(x,L+1); rho = r(1:L)/r(1);
conf_lim = 1.96/sqrt(N);
subplot(’position’,[0.6,0.65,0.35,0.3]);
plot([-1,L],[0,0],’w’); hold on;
Hr = stem(l,rho,’filled’,’g’);
set(Hr,’markersize’,3); axis([-1,L,-1.2,1.2]);
plot([-1,L],[-conf_lim,-conf_lim],’r:’);
plot([-1,L],[conf_lim,conf_lim],’r:’);
hold off; conf_lim = round(conf_lim*100)/100;
xlabel(’Lag \itl’,’fontsize’,label_fontsize);
ylabel(’\rho_{\itx}({\itl})’,’fontsize’,label_fontsize,’fontname’,’times’); title(’Autocorrelation test’,’Fontsize’,title_fontsize);
set(gca,’xtick’,[0:5:L],’ytick’,[-1,-conf_lim,0,conf_lim,1]);
% PSD test
Rx = psd(x,N,2,boxcar(length(x)),’none’);
Ix = cumsum(Rx(1:K+1)); Ix = Ix/Ix(K+1);
Ibl = -1.36/sqrt(K-1) + (k-1)/(K-1);
Ibu = 1.36/sqrt(K-1) + (k-1)/(K-1);
subplot(’position’,[0.1,0.15,0.35,0.3]);
plot(f,Ix,’g’,f,Ibl,’r:’,f,Ibu,’r:’); axis([0,1,-0.2,1.2]);
xlabel(’Frequency (cycles/samp)’,’fontsize’,label_fontsize);
ylabel(’I_{\itx}({\itf})’,’fontsize’,label_fontsize,’fontname’,’times’); title(’PSD test’,’Fontsize’,title_fontsize);
Ibl(1) = round(Ibl(1)*100)/100;
Ibu(1) = round(Ibu(1)*100)/100;
set(gca,’xtick’,[0:0.2:1],’ytick’,[Ibl(1),0,Ibu(1),1]);
set(gca,’xticklabel’,[’ 0 ’;’0.1’;’0.2’;’0.3’;’0.4’;’0.5’]);
% PARCOR test
Vx=r(1); r=r/Vx;
[a,PACS,var]=durbin(r,L); PACS = [1;PACS(1:L-1)];
conf_lim = 1.96/sqrt(N);
subplot(’position’,[0.6,0.15,0.35,0.3]);
plot([-1,L],[0,0],’w’); hold on;
Hr = stem(l(2:L),PACS(2:L),’filled’,’g’);
set(Hr,’markersize’,3); axis([-1,L,-1.2,1.2]);
plot([-1,L],[-conf_lim,-conf_lim],’r:’);
plot([-1,L],[conf_lim,conf_lim],’r:’);