Problem in 3D plot of clutter,jammer and target of radar
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/196045/image.png)
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)');
0 Kommentare
Antworten (1)
Honglei Chen
am 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
Siehe auch
Kategorien
Mehr zu Array Geometries and Analysis finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!