clc;clear;
close all;
N= 10; %阵元
y = 1;
d = y/2; %阵元间距为半波长
as = 0; % 期望信号方向
ai =[-40 50];
e_position = [0:N-1]';
K = 1000; %采样数 快拍数`
f0 = 1.5e6; % 信号中心频率
fs=9e6; %采样频率
t = [0:1:K-1]./fs; %采样频率
evrySINR_DLr=[];
snrmax=50;
snr=-30;
while snr<=snrmax;
P0 = 10^(snr/10); %期望信号功率 -160dB
P_noise=1; %%噪声功率
P_inr1 = 10^(10/10); %干扰功率
P_inr2 = 10^(10/10);
detals=10^(snr/10);
w=0;
for ii=1:1:100
a0 = exp(j*pi*e_position*sin(0/180*pi)); %期望信号导向矢量
a0_mismatch = exp(j*pi*e_position*sin(5/180*pi)); %失配的期望信号导向矢量
a1 = exp(j*pi*e_position*sin(ai(1)/180*pi)); %干扰信号导向矢量
a2 = exp(j*pi*e_position*sin(ai(2)/180*pi)); %干扰信号导向矢量
s0 = sqrt(2*P0)*sin(2*pi*f0*t); %期望信号
s1 = normrnd(0,sqrt(P_inr1),1,K)+j*normrnd(0,sqrt(P_inr1),1,K); %干扰信号1的复包络,0是均值,sqrt(P_inr1)为标准差,产生1*K维矩阵
s2 = normrnd(0,sqrt(P_inr2),1,K)+j*normrnd(0,sqrt(P_inr2),1,K); %干扰信号1的复包络
noise = randn(N,K)*sqrt(P_noise)+j*randn(N,K)*sqrt(P_noise); %产生均值为0,方差为P_noise的N*K的随机数矩阵
xn = a0*s0+a1*s1+a2*s2+noise;
R_x0 = xn*xn'/K;
R_x1=R_x0+0.425*eye(10);
wop1=inv(R_x1)*a0_mismatch/(a0_mismatch'*inv(R_x1)*a0_mismatch);
w=w+wop1;
end
w=w/100;
SINR_DL=detals*(abs(w'*a0))^2/(w'*R_x1*w);
SINR_DL=10*log10(SINR_DL)
bestr=real(SINR_DL);
evrySINR_DLr=[evrySINR_DLr,bestr];
snr=snr+1;
end
figure(1)
plot(-30:1:snrmax,evrySINR_DLr,'-g')
legend('DL')
xlabel('信噪比 SNR')
ylabel('信干燥比 SINR')
grid on
figure(2)
aa =-90:1:90;
vv = exp(j*pi*e_position*sin(aa/180*pi));
G=w'*vv;
F = abs(G)/max(abs(G));
F0=20*log10(F);
plot(aa,F0,'-g');
xlabel('theta')
ylabel('波束增益')
grid on
% legend('SCB')
基于matlab实现自适应稳健波束形成对角加载算法,其与输入信噪比的关系.rar
版权申诉
115 浏览量
2024-04-30
22:16:24
上传
评论
收藏 1KB RAR 举报
依然风yrlf
- 粉丝: 801
- 资源: 3034