%SMI方向图和性能
%优点: 收敛速度快
%缺点:1 当阵元输出含有较强的期望信号时,或者期望信号与干扰信号相关时,性能急剧下降
%2 由于权向量含有方向矢量,因此对阵列的幅相差非常敏感;
%3 期望信号的功率不能过大,比干扰信号相差几十dB,也就是说,在小期望信号、大干扰信号情况下,也可进行SMI处理。
%在这种算法中,要求远场平面波信号只包含不相关的几个干扰信号,不含期望信号。在实际工作中这样的要求是不能实现的,
%%怎样设置期望信号和干扰信号的大小和来向,应该这样考虑:我们把期望信号和干扰信号同样对待,只是期望信号的SNR较小,
%%而干扰信号INR较大即可,且让干扰信号不能相关。例如snr=(0,40,40),doa=(90,15,25)。我们把INR分别为40dB、40dB,
%%来向(doa)分别为15、25度的信号视为干扰信号,干扰信号的方向可以任意设置,而来向(doa)90度为信号。
clear;
fre1=[1000 400 350]; %%input('analong frequency is:'); modsg
fre2=[25000 26000 24000]; %%input('carrying frequency is:'); If
% fre3=input('sampling frequency is:'); Fs
mod=[.4 .4 .6]; %%input('modulation factor is:'); Ka 调幅指数
snr=[0 40,50 ]; %%input('signal to noise ratio is:'); snr
doa=[20 40 60]; %%input('direction of arrival is:'); doa
dw=.5; %%input('d to lamda ratio is:'); 间距和波长之比
M=16; % 阵元数
N=500; % 采样点数
n=0:N-1;
m=0:M-1;
amp=10.^(snr/20); %最大幅度值
for k=1:size(amp',1) %%形成信号矩阵和方向矢量矩阵。
SignalMatrix(k,:)=amp(k)*(1+mod(k)*sin(2*pi*fre1(k)/100000*n)).*exp(j*2*pi*fre2(k)/100000*n); %AM
DirectionMatrix(:,k)=exp(j*2*pi*dw*m'*sin(doa(k)*pi/180)); %直线阵
end
for i=1:M
Noise(i,:)=randn(1,N);
end
%%输出采样协方差矩阵。
OutPutMatrix=DirectionMatrix*SignalMatrix+Noise+j*Noise;%输出信号
RelativeMatrix=1/N*OutPutMatrix*OutPutMatrix';
%%形成SMI加权矢量。
WeightVector=inv(RelativeMatrix)*DirectionMatrix(:,1); %%DirectionMatrix(:,1)表示期望信号方向矢量。
%用于搜索
R=0;
for angle1=-90:90
R=R+1;
Direction(:,R)=exp(j*2*m'*pi*dw*sin(angle1*pi/180));
end
%得到方向图,方向矢量中包含有期望信号和干扰信号。
QuiescentPattern(1,:)=WeightVector'*Direction;
QuiescentPattern=abs(QuiescentPattern);
QuiescentPatternmax=max(QuiescentPattern);
Pattern=QuiescentPattern/QuiescentPatternmax;%规一化
angle1=-90:90;
PatterndB=20*log10(Pattern);
plot(angle1,PatterndB,'-r');
title('Pattern of SMI');
xlabel('Arrival Angle');
ylabel('Array Response dB');
grid on
figure;
subplot(3,1,1);
plot(n,SignalMatrix(1,:),'-m');
title('期望信号');
subplot(3,1,2);
plot(n,SignalMatrix(2,:),'.-.g');
title('干扰信号1');
subplot(3,1,3);
plot(n,SignalMatrix(3,:),'-*b');
title('干扰信号2');
- 1
- 2
- 3
前往页