Problem in 3D plot of clutter,jammer and target of radar
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(1 个)
Honglei Chen
2018-11-21
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
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Array Geometries and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!