%% Figure 48. SINR Loss performance for PRI-Staggered and Adjacent-Bin post-Doppler STAP.
%%
%
% Coded by Ilias Konsoulas, 16 Sept. 2018.
% Code provided for educational purposes only. All rights reserved.
clc; clear; close all;
%% Radar System Operational Parameters
radar_oper_params;
%% Thermal Noise Power Computation
thermal_noise_power;
%% Thermal Noise Covariance Matrix
Rn = sigma2*eye(M*N);
%% Clutter Patch RCS Computation
clutter_patch_rcs;
%% Calculate the Array Transmit and Element Receive Power Gains
Tx_Rx_power_gains;
%% Calculate the Clutter to Noise Ratio (CNR) for each azimuth angle
ksi = Pt*Gtgain.*Grec*lambda^2*sigma/((4*pi)^3*Pn*10^(Ls/10)*Rcik^4); % Eq. (58)
%% Clutter Covariance Matrix Computations
beta = 1; % beta parameter.
phia = 0; % Velocity Misalignment Angle.
Rc = clutt_cov(ksi,beta);
%% Jamming Covariance Matrix Calculation
jamm_cov;
%% Total Interference Covariance Matrix
Ru = Rc + Rj + Rn; % Eq. (98)
InvRu = inv(Ru);
%% Target Space-Time Steering Vector
phit = 0; thetat = 0; % Target azimuth and elevation angles in degrees.
fdt = 100; % Target Doppler Frequency.
fspt = d/lambda*cos(thetat*pi/180)*sin(phit*pi/180);
omegat = fdt/fr;
at = exp(-1i*2*pi*fspt*(0:N-1)).'; % Target Spatial Steering Vector.
ta = chebwin(N,30); % 30 dB Chebychev Spatial Tapper.
%% Doppler Filter Bank Creation:
dopplerfilterbank = linspace(0,300,M+1);
omegadopplerbank = dopplerfilterbank/fr;
fd = 0:.5:300; Lfd = length(fd);
omegad = fd/fr;
SNRo = M*N;
%% Doppler Filter Matrix Construction for PRI-Staggered Post-Doppler method
K = 2;
P = floor(K/2);
M1= M - K +1;
U1 = zeros(M1,M);
for m=1:M
U1(:,m) = 1/sqrt(M)*exp(-1i*2*pi*omegadopplerbank(m)*(0:M1-1)); % Doppler Filter Steering Vector
end
td0 = ones(M1,1);
td30 = chebwin(M1,30); % 30-dB Chebyshev Doppler Taper.
td60 = chebwin(M1,60); % 60-dB Chebyshev Doppler Taper.
td90 = chebwin(M1,90); % 90-dB Chebyshev Doppler Taper.
F0 = diag(td0)*U1; % Eq. 227.
F30 = diag(td30)*U1;
F60 = diag(td60)*U1;
F90 = diag(td90)*U1;
%% Create Doppler Filter Bank in Fm Matrix for PRI-Staggered Post-Doppler method
Fm0 = zeros(M,K,M);
Fm30 = zeros(M,K,M);
Fm60 = zeros(M,K,M);
Fm90 = zeros(M,K,M);
for m=1:M
Fm0(:,:,m) = toeplitz([F0(:,m); zeros(K-1,1)],[F0(1,m) zeros(1,K-1)]); % Eq. 229.
Fm30(:,:,m) = toeplitz([F30(:,m); zeros(K-1,1)],[F30(1,m) zeros(1,K-1)]);
Fm60(:,:,m) = toeplitz([F60(:,m); zeros(K-1,1)],[F60(1,m) zeros(1,K-1)]);
Fm90(:,:,m) = toeplitz([F90(:,m); zeros(K-1,1)],[F90(1,m) zeros(1,K-1)]);
end
%% Doppler Filter Matrix Construction for Adjacent Bin Post-Doppler method
U2 = zeros(M,M);
if mod(K,2) % If K is odd
for m=1:M
U2(:,m) = 1/sqrt(M)*exp(-1i*2*pi*omegadopplerbank(m)*(0:M-1)); % Doppler Filter Steering Vector
end
else % if K is even:
outomegadoppler = zeros(1,M);
for m=1:M
outomegadoppler(m) = (omegadopplerbank(m) + omegadopplerbank(m+1))/2;
U2(:,m) = 1/sqrt(M)*exp(-1i*2*pi*outomegadoppler(m)*(0:M-1)); % Doppler Filter Steering Vector
end
end
td0ab = ones(M,1); % Uniform Doppler Taper.
td30ab = chebwin(M,30); % 30-dB Chebyshev Doppler Taper.
td60ab = chebwin(M,60); % 60-dB Chebyshev Doppler Taper.
td90ab = chebwin(M,90); % 90-dB Chebyshev Doppler Taper.
% Create Doppler Filter Bank in Fab matrix for Adjacent Bin post Doppler method:
Fab0 = diag(td0ab)*U2; % Eq. 230 without complex conjugation operator.
Fab30 = diag(td30ab)*U2;
Fab60 = diag(td60ab)*U2;
Fab90 = diag(td90ab)*U2;
Fmab0 = zeros(M,K,M);
Fmab30 = zeros(M,K,M);
Fmab60 = zeros(M,K,M);
Fmab90 = zeros(M,K,M);
for m=1:M
if mod(K,2) % if K is odd and >1.
if (m-P>0) && (m+P<=M)
% [m m-P:m+P]
% omegadopplerbank(m)
% omegadopplerbank(m-P:m+P)
Fmab0(:,:,m) = Fab0 (:,m-P:m+P); % Eq. 231.
Fmab30(:,:,m) = Fab30(:,m-P:m+P);
Fmab60(:,:,m) = Fab60(:,m-P:m+P);
Fmab90(:,:,m) = Fab90(:,m-P:m+P);
elseif (m-P<=0) && (m+P<=M)
% [m M+(m-P):M 1:m+P]
% omegadopplerbank(m)
% omegadopplerbank([M+(m-P):M 1:m+P])
Fmab0(:,:,m) = [Fab0(:,M+(m-P):M) Fab0(:,1:m+P) ]; % Eq. 231.
Fmab30(:,:,m) = [Fab30(:,M+(m-P):M) Fab30(:,1:m+P)];
Fmab60(:,:,m) = [Fab60(:,M+(m-P):M) Fab60(:,1:m+P)];
Fmab90(:,:,m) = [Fab90(:,M+(m-P):M) Fab90(:,1:m+P)];
elseif m+P>M
% [m m-P:M 1:m+P-M]
% omegadopplerbank(m)
% omegadopplerbank([m-P:M 1:m+P-M])
Fmab0(:,:,m) = [Fab0(:,m-P:M) Fab0(:,1:m+P-M)]; % Eq. 231.
Fmab30(:,:,m) = [Fab30(:,m-P:M) Fab30(:,1:m+P-M)];
Fmab60(:,:,m) = [Fab60(:,m-P:M) Fab60(:,1:m+P-M)];
Fmab90(:,:,m) = [Fab90(:,m-P:M) Fab90(:,1:m+P-M)];
end
else % if K is even.
if (m-P>0) && (m+P<=M+1)
% [m m-P:m+P-1]
% omegadopplerbank(m)
% outomegadoppler(m-P:m+P-1)
Fmab0(:,:,m) = Fab0(:,m-P:m+P-1); % Eq. 231.
Fmab30(:,:,m) = Fab30(:,m-P:m+P-1);
Fmab60(:,:,m) = Fab60(:,m-P:m+P-1);
Fmab90(:,:,m) = Fab90(:,m-P:m+P-1);
elseif (m-P<=0) && (m+P<=M)
% [m M+(m-P):M 1:m+P-1]
% omegadopplerbank(m)
% outomegadoppler([M+(m-P):M 1:m+P-1])
Fmab0(:,:,m) = [Fab0(:,M+(m-P):M) Fab0(:,1:m+P-1)]; % Eq. 231.
Fmab30(:,:,m) = [Fab30(:,M+(m-P):M) Fab30(:,1:m+P-1)];
Fmab60(:,:,m) = [Fab60(:,M+(m-P):M) Fab60(:,1:m+P-1)];
Fmab90(:,:,m) = [Fab90(:,M+(m-P):M) Fab90(:,1:m+P-1)];
elseif m+P>M+1
% [m m-P:M 1:m-M+P-1]
% omegadopplerbank(m)
% outomegadoppler([m-P:M 1:m-M+P-1])
Fmab0(:,:,m) = [Fab0(:,m-P:M) Fab0(:,1:m-M+P-1)]; % Eq. 231.
Fmab30(:,:,m) = [Fab30(:,m-P:M) Fab30(:,1:m-M+P-1)];
Fmab60(:,:,m) = [Fab60(:,m-P:M) Fab60(:,1:m-M+P-1)];
Fmab90(:,:,m) = [Fab90(:,m-P:M) Fab90(:,1:m-M+P-1)];
end
end
end
%% LSINR Computation for Optimum Fully Adaptive Case
LSINRopt = zeros(1,Lfd);
for n=1:Lfd
bt = exp(-1i*2*pi*omegad(n)*(0:M-1)).'; % Target Doppler Steering Vector
vt = kron(bt,at);
w = InvRu*vt; %#ok<MINV>
LSINRopt(n) = real(w'*vt)/SNRo;
end
%% SINR Computations for 0, 30, 60, and 90 dB Chebyshev Taper.
SINR0_mat = zeros(M,Lfd);
SINR30_mat = zeros(M,Lfd);
SINR60_mat = zeros(M,Lfd);
SINR90_mat = zeros(M,Lfd);
SINRab0_mat = zeros(M,Lfd);
SINRab30_mat = zeros(M,Lfd);
SINRab60_mat = zeros(M,Lfd);
SINRab90_mat = zeros(M,Lfd);
%% PRI-Staggered SINR Computations
for m=1:M
f0m = Fm0(:,:,m);
f30m = Fm30(:,:,m);
f60m = Fm60(:,:,m);
f90m = Fm90(:,:,m);
R0um = kron(f0m,eye(N))'*Ru*kron(f0m,eye(N));
R30um = kron(f30m,eye(N))'*Ru*kron(f30m,eye(N));
R60um = kron(f60m,eye(N))'*Ru*kron(f60m,eye(N));
R90um = kron(f90m,eye(N))'*Ru*kron(f90m,eye(N));
bdfb = exp(-1i*2*pi*omegadopplerbank(m)*(0:M-1)).';
没有合适的资源?快使用搜索试试~ 我知道了~
机载雷达时空自适应处理附matlab代码.zip
共204个文件
png:106个
m:54个
html:44个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 32 浏览量
2022-11-13
09:13:17
上传
评论
收藏 4.25MB ZIP 举报
温馨提示
1.版本:matlab2019a,内含运行结果,不会运行可私信 2.领域:基础教程 3.内容:机载雷达时空自适应处理附matlab代码.zip 4.适合人群:本科,硕士等教研学习使用
资源推荐
资源详情
资源评论
收起资源包目录
机载雷达时空自适应处理附matlab代码.zip (204个子文件)
fig48.html 37KB
fig51.html 34KB
fig65.html 32KB
fig66.html 31KB
fig69.html 31KB
fig68.html 31KB
fig67.html 31KB
fig52b.html 30KB
fig64.html 30KB
fig52a.html 30KB
fig47.html 29KB
fig48_2.html 28KB
fig58.html 27KB
fig60.html 27KB
fig59.html 27KB
fig38.html 23KB
fig48_1.html 21KB
fig24_1.html 19KB
figs35_36.html 19KB
fig29.html 18KB
fig37.html 18KB
fig41.html 18KB
fig23_1.html 18KB
fig61.html 18KB
fig62.html 18KB
fig40.html 17KB
fig63.html 17KB
fig42.html 16KB
fig24.html 15KB
fig23.html 15KB
fig26.html 13KB
fig14.html 13KB
fig28.html 12KB
fig25.html 12KB
fig17.html 12KB
fig16.html 11KB
fig07.html 11KB
fig27.html 11KB
fig13.html 11KB
fig11.html 10KB
fig11a.html 10KB
figs9_10.html 9KB
fig15.html 9KB
fig06.html 9KB
fig48.m 13KB
fig51.m 12KB
fig65.m 11KB
fig69.m 11KB
fig68.m 11KB
fig66.m 11KB
fig67.m 11KB
fig64.m 10KB
fig52b.m 10KB
fig52a.m 10KB
fig48_2.m 10KB
fig47.m 9KB
fig58.m 9KB
fig60.m 9KB
fig59.m 9KB
fig38.m 7KB
fig48_1.m 6KB
fig24_1.m 6KB
fig29.m 6KB
figs35_36.m 5KB
fig37.m 5KB
fig61.m 5KB
fig23_1.m 5KB
fig62.m 5KB
fig63.m 5KB
polardb.m 5KB
fig41.m 5KB
fig40.m 5KB
fig42.m 5KB
tightfig.m 4KB
fig24.m 4KB
fig23.m 4KB
fig14.m 3KB
fig26.m 3KB
fig28.m 3KB
fig07.m 3KB
fig25.m 3KB
fig16.m 3KB
fig17.m 3KB
fig27.m 3KB
fig13.m 2KB
fig11.m 2KB
fig11a.m 2KB
clutt_cov2.m 2KB
fig06.m 2KB
figs9_10.m 2KB
fig15.m 2KB
Tx_Rx_power_gains.m 1KB
Tx_Rx_power_gains2.m 1KB
jamm_cov.m 1KB
clutter_patch_rcs.m 1KB
clutt_cov.m 1KB
thermal_noise_power.m 798B
radar_oper_params.m 792B
fig48_2_01.png 434KB
fig48_1_01.png 413KB
共 204 条
- 1
- 2
- 3
资源评论
天天Matlab科研工作室
- 粉丝: 2w+
- 资源: 7255
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功