ÏÖ´úÊý×ÖÐźŴ¦Àí·ÂÕæ×÷Òµ ÏÂÔØ±¾ÎÄ

ʵÓñê×¼Îĵµ

8.·ÂÕæÌâ6.15

·ÂÕæ½á¹û¼°Í¼ÐΣº

ͼ 19 100´Î¶ÀÁ¢ÊµÑéȨֵ±ä»¯ÇúÏß

ͼ 20 µ¥´ÎʵÑéȨֵ±ä»¯ÇúÏß

Îݸ´óÈ«

ʵÓñê×¼Îĵµ

ͼ 21 100´Î¶ÀÁ¢ÊµÑéMSEÈ¡¶ÔÊýµÄ±ä»¯ÇúÏß

·ÂÕæ³ÌÐò£¨7_14£©:

clear all clc

%% ²úÉú°×ÔëÉù N=2000; gv=0.0332; for m=1:100

v(m,:)=randn(1,N)*sqrt(gv); end

%% ²úÉúARÄ£ÐÍÐòÁÐ

a=[1.6 -1.46 0.616 -0.1525]; u1=zeros(1,N,100);

for m=1:100 % ²úÉú100×é¶ÀÁ¢ÊµÑéÐźŠfor i=1:(N-4)

u1(1,i+4,m)=a(1)*u1(1,i+3,m)+a(2)*u1(1,i+2,m)+a(3)*u1(1,i+1,m)+a(4)*u1(1,i,m)+v(m,i+4); end end

%% ¿¨¶ûÂüÂ˲¨¡§ N2=2000; Jmin=0.005;

Îݸ´óÈ«

ʵÓñê×¼Îĵµ

for m=1:100 for i=5:N2

U(:,i,m)=[u1(1,i-1,m);u1(1,i-2,m);u1(1,i-3,m);u1(1,i-4,m)]; end end

W_esti=zeros(4,N2,100); for m=1:100

P_esti=[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1]; for l=1:N2-1 P_pre=P_esti;

A=(U(:,l,m))'*P_pre*U(:,l,m)+Jmin; K=P_pre*U(:,l,m)/A;

alpha(l)=u1(1,l,m)-(U(:,l,m))'*W_esti(:,l,m); W_esti(:,l+1,m)=W_esti(:,l,m)+K*alpha(l); P_esti=P_pre-K*(U(:,l,m))'*P_pre; end end

w=zeros(4,N2);e=zeros(1,N2,100);d=zeros(1,N2,100);MSE=zeros(1,N2); for m=1:100

w=w+W_esti(:,:,m); for n=5:N2

d(1,n,m)=W_esti(:,n,m)'*u1(1,n-1:-1:n-4,m)'; e(1,n,m)=u1(1,n,m)-d(1,n,m); end

MSE=MSE+e(:,:,m).^2; end

w=w/100; 0´Î¶ÀÁ¢ÊµÑéµÄȨÏòÁ¿¾ùÖµ MSE=MSE/100; % 100´Î¶ÀÁ¢ÊµÑéµÄ¾ù·½Îó²î t=1:N2; figure(1)

plot(t,w(1,:),t,w(2,:),t,w(3,:),t,w(4,:)) legend('w1','w2','w3','w4') xlabel('µü´ú´ÎÊý');ylabel('Ȩֵ') figure(2)

plot(t,W_esti(1,:,50),t,W_esti(2,:,50),t,W_esti(3,:,50),t,W_esti(4,:,50)) legend('w1','w2','w3','w4');xlabel('µü´ú´ÎÊý');ylabel('Ȩֵ') figure(3) semilogy(t,MSE)

xlabel('µü´ú´ÎÊý');ylabel('¶ÔÊýMSE')

9.·ÂÕæÌâ8.16

Îݸ´óÈ«

ʵÓñê×¼Îĵµ

·ÂÕæ½á¹û¼°Í¼ÐΣº

µ¥´ÎRootMUSICËã·¨µÃµ½µÄDOA¹À¼ÆÎª£º -9.9938 39.9904

µ¥´ÎESPRITËã·¨µÃµ½µÄDOA¹À¼ÆÎª£º -9.9716 39.7934

ͼ 22 MUSICË㷨ʵÏÖDOA¹À¼Æ

Îݸ´óÈ«