Problem in 3D plot of clutter,jammer and target of radar

16 vues (au cours des 30 derniers jours)
Rafi Ahmed
Rafi Ahmed le 21 Nov 2018
Modifié(e) : Rafi Ahmed le 21 Nov 2018
I am trying to plot jammer clutter and target in matlab but the jammers shape(seems like it is occupying more than one azimuth angle) and power level of clutter and jammer are incorrect. Please help me find the problem in the code. I am using capon spectral estimator to find the power spectral density of these components. The jammer shape should be a thin vertical plane. (Jammer to Noise ratio = 30 dB; Clutter to Noise Ratio = 50 dB and Signal to Noise Ratio =0 dB)
clear; close all;
f0 = 450e6; c = 3e8; lambda = c/f0; fr =300;
d = lambda/2; % interelement spacing
N = 18; % Number of Array Antenna elements
M = 18; % Number of pulses per CPI
CNR = 50; SNR = 0; JNR = 30;
noisePower = 1;
clutterPower = noisePower * 10^(CNR/10);
tgtPower = noisePower * 10^(SNR/10);
jammerPower = noisePower * 10^(JNR/10);
beta =1; theta = 0.693;
phi = -150:149; % azimuth angle
fd = -150:149; % Doppler angle
%% Clutter Covariance (Rc)
fsp1 = d/lambda * cos(theta)* sin(phi *pi/180);
clutter_omegac = beta * fsp1;
Rc = zeros(M*N);
V = zeros(M*N, length(fsp1));
for k = 1: length(fsp1)
a_clutter = exp(1i*2*pi*fsp1(k)*(0:N-1));
b_clutter = exp(1i* 2* pi* clutter_omegac(k)*(0:M-1));
cp = clutterPower * eye(length(fsp1));
v_clutter = kron(b_clutter, a_clutter).';
V(:,k) = v_clutter;
Rc = Rc + V* cp * V';
end
% Rc = Rc ./length(fsp1);
%% Noise Covariance (Rn)
Rn = noisePower * eye(M*N);
%% Target Covariance (Rt)
tgtazimuth = 0; thetat =0; fdt =80;
fsp2 = d/lambda * cos(thetat*pi/180)* sin(tgtazimuth*pi/180);
omegat = fdt/fr;
a_tgt = exp(1i*2*pi*fsp2 *(0:N-1));
b_tgt = exp(1i *2 *pi *omegat*(0:M-1));
v_tgt = sqrt(tgtPower)* kron(b_tgt,a_tgt).';
Rt = v_tgt * v_tgt';
%% Jammer Covariance (Rj)
jammerazimuth = -40; thetaj =0;
fsp3 = d /lambda * cos(thetaj *pi/180)* sin(jammerazimuth*pi/180);
a_jammer = exp(1i * 2* pi * fsp3 * (0:N-1));
v_jammer = jammerPower * kron(eye(M),a_jammer).';
Rj = v_jammer * v_jammer';
%% Total Space-Time Covariance Matrix due to clutter,jammer and noise
R = Rc + Rj + Rn;
[U S V] = svd(R);
% Space Time Total Covariance
R_total = Rc + Rj + Rn +Rt;
inv_R_total = inv(R_total);
% Power Spectral Density
fsp4 = d/lambda * sin(phi*pi/180);
omegap = fd/fr;
p1 = zeros(length(omegap),length(fsp4));
for i =1 : length(fsp4)
for j = 1 : length(omegap)
a_grid = exp(1i * 2 *pi * fsp4(i) * (0:N-1));
b_grid = exp(1i *2*pi*omegap(j) *(0:M-1));
v = kron(b_grid, a_grid).';
p1(j,i) = 1./(v'*inv_R_total*v); %eq (3.38)Gureci
p2(j,i) = v'* R_total* v; %eq 3.16
end
end
figure;
surf(sin(phi*pi/180), fd , 10*log10(abs(p1)))
shading interp;
%colorbar;
xlabel('sin(azimuth)'); ylabel('Doppler Frequency'); zlabel('Power(dB)');

Réponses (1)

Honglei Chen
Honglei Chen le 21 Nov 2018
It seems that the jammer is along the a single angle. You have not provided any info regarding the clutter so I have no idea what the power should be, but the ridge is there.
If you have access to Phased Array System Toolbox, you may want to take a look at the following example
HTH
  1 commentaire
Rafi Ahmed
Rafi Ahmed le 21 Nov 2018
The Jammer to Noise ratio = 30 dB; Clutter to Noise Ratio = 50 dB and Signal to Noise Ratio =0 dB. But the jammer should be vertical. Why is it not a vertical plane? Please help me in this regard.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by