空时自适应处理是一个用来描述同时处理空域和时域的自适应阵列的术语,信号的空域分量由阵列传感器收集(与所有阵列工作相同),而信号的时域分量用每个阵列传感器后等间隔延时单元产生,为此目的,一个尺寸N阵列有N个子通道(每个传感器后面对应一个)在每个子通道中,来自第j个距离单元的信号组成了M个脉冲,这M个脉冲按照雷达脉冲间隔交错。然后来自所有M个延时响应的输出进行相干累加,以产生合成的阵列响应,假设阵列输入由目标回波、杂波回波及干扰信号回波组成。
clear all;
close all;
sintheta_t1=.4;
wd_t1=-.6;
sintheta_t2=-.6;
wd_t2=.2;
[LL,sintheta,wd]=stap_std(sintheta_t1,wd_t1,sintheta_t2,wd_t2);
LL=LL/max(max(abs(LL)));
LL=max(LL,1e-6);
figure(3)
imagesc(sintheta,wd,10*log10(abs(LL)))
colorbar
title('STAP Detection of target &jammer;clutter removed');
set(gca,'ydir','normal'),xlabel('正弦角'),ylabel('规范化多普勒');
figure(4)
surf(sintheta,wd,10*log10(abs(LL)))
shading interp
title('STAP Detection of taget &jammer;clutter removed');
set(gca,'ydir','normal'),xlabel('正弦角'),ylabel('规范化多普勒');
function[LL,sintheta,wd]=stap_std(sintheta_t1,wd_t1,sintheta_t2,wd_t2);
do_plot=1;
N=10;
M=12;
N0=250;
beta=1;
dol=0.5;
CNR=30;
SNR=10;
JSR=0;
sigma2_n=1;
sigma2_c=sigma2_n*10^(CNR/10);
sigma_c=sqrt(sigma2_c);
sigma2_t1=sigma2_n*10^(SNR/10);
sigma_t1=sqrt(sigma2_t1);
sigma2_t2=sigma2_t1*10^(JSR/10);
sigma_t2=sqrt(sigma2_t2);
sintheta=linspace(-1,1,N0);
phi=2*dol*sintheta;
wd=beta*phi;
Rc=zeros(N*M);
ac_all=zeros(N*M,1);
for k=1:length(phi),
ac=sigma_c*st_steering_vector(phi(k),N,beta*phi(k),M);
Rc=Rc+ac*ac';
ac_all=ac_all+ac;
end
Rc=Rc/length(phi);
Rn=sigma2_n*eye(M*N);
at1=sigma_t1*st_steering_vector(sintheta_t1,N,wd_t1,M);
Rt1=at1*at1';
at2=sigma_t2*st_steering_vector(sintheta_t2,N,wd_t2,M);
Rt2=at2*at2';
R=Rc+Rn+Rt1+Rt2;
sintheta=linspace(-1,1);
wd=beta*sintheta;
Pb=zeros(length(wd),length(sintheta));
for nn=1:length(sintheta),
for mm=1:length(wd),
a=st_steering_vector(sintheta(nn),N,wd(mm),M);
Pb(mm,nn)=a'*R*a;
end
end
if do_plot
figure(1)
imagesc(sintheta,wd,10*log10(abs(Pb)))
colorbar
title('Total Return Spectrum before STAP Detection of target,clutter,noise, &jammer');
set(gca,'ydir','normal'),xlabel('sine angle'),ylabel('normalized doppler')
figure(2)
surf(sintheta,wd,10*log10(abs(Pb)))
shading interp,,
xlabel('sine angle'),
ylabel('normalized doppler')
title('Total Return spectrum before STAP Detection of target,clutter,noise & jammer');
end
R=Rc+Rn+Rt1+Rt2;
Rc=(ac_all*ac_all')/length(phi);
Rinv=inv(Rn+Rc);
wopt=Rinv'*(at1+at2);
sintheta=linspace(-1,1);
wd=beta*sintheta;
LL=zeros(length(wd),length(sintheta));
for nn=1:length(sintheta),
for mm=1:length(wd),
a=st_steering_vector(sintheta(nn),N,wd(mm),M);
LL(mm,nn)=abs(a'*Rinv*(at1+at2+ac_all))^2/(a'*(Rc+Rn)*a);
end
end
disp(size(a))
disp(size(Rinv))
function a=st_steering_vector(sintheta,N,wd,M)
a_N=exp(-j*pi*sintheta*[0:N-1]');
b_M=exp(-j*pi*wd*[0:M-1]');
a=kron(b_M,a_N);
雷达系统分析与设计(MATLAB版)------532页至536页【美】Bassem R. Mahafa著-----周万幸、胡明春、吴鸣亚、孙俊译-----【M】北京:中国工信出版社和电子工业出版社