空时自适应处理是一个用来描述同时处理空域和时域的自适应阵列的术语,信号的空域分量由阵列传感器收集(与所有阵列工作相同),而信号的时域分量用每个阵列传感器后等间隔延时单元产生,为此目的,一个尺寸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('规范化多普勒'); colormap turbo 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)) end 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); end
colormap jet
colormap hsv
colormap hot
colormap cool
colormap spring
colormap summer
colormap autumn
colormap winter
colormap gray
colormap bone
colormap copper
colormap pink
colormap colorcube
colormap default
开发工具:MATLAB 2022b
参考文献:https://blog.csdn.net/m0_38127487/article/details/113967615?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169136754116800192239355%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=169136754116800192239355&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2blogfirst_rank_ecpm_v1~rank_v31_ecpm-2-113967615-null-null.268v1koosearch&utm_term=MATLAB%E9%9B%B7%E8%BE%BE&spm=1018.2226.3001.4450