Figure 11a. Illustrating The Clutter Signal Fourier Power Spectrum.

Contents

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 Computations

thermal_noise_power;

Clutter Patch Geometry Parameters

clutter_patch_rcs;

Compute Array Transmit and Element Receive Power Gains

Tx_Rx_power_gains;
Warning: The value of local variables may have been changed to match
the globals.  Future versions of MATLAB will require that you declare a
variable to be global before you use that variable. 

Calculate and Plot the Clutter to Noise Ration (CNR) for each clutter patch:

ksi = Pt*Gtgain.*grgain*lambda^2*sigma/((4*pi)^3*Pn*10^(Ls/10)*Rcik^4);  % Eq. (58)

Clutter Covariance Matrix Computation

beta = 1;       % beta parameter.
phia = 0;

Rc = clutt_cov(ksi,beta);

Compute the Clutter Power Spectrum.

phi = -90:90;   Lphi = length(phi);
fd = -150:150;  Lfd = length(fd);
fsp = d/lambda*cos(theta)*sin(phi*pi/180);
omegac = fd/fr;
Pw1 = zeros(Lfd,Lphi);
for m=1:Lphi
    for n=1:Lfd
        a = exp(1i*2*pi*fsp(m)*(0:N-1));     % Dummy Spatial Steering Vector.
        b = exp(1i*2*pi*omegac(n)*(0:M-1));  % Dummy Doppler Steering Vector
        v = kron(b,a).';
        Pw1(n,m) = (v'*Rc*v)/(M*N);
    end
end

Normalization.

max_value = max(max(Pw1));
Pw = Pw1/max_value;

Cropping Extreme Values.

[rows cols] = find(10*log10(abs(Pw))<-80);
for i=1:length(rows)
    Pw(rows(i),cols(i)) = 10^(-80/10);
end

Plot the Clutter Power Spectrum.

figure('NumberTitle', 'off','Name', 'Figure 11a. Clutter Power Spectrum - Side Looking Radar', ...
          'Position', [50 50 1150 500]);
subplot(1,2,1);
[Az Doppler] = meshgrid(sin(phi*pi/180),fd);
colormap jet;
pcolor(Az, Doppler/fr, 10*log10(abs(Pw)));
shading interp;
subplot(1,2,2);
[Az Doppler] = meshgrid(sin(phi*pi/180),fd);
colormap jet;
surfc(Az, Doppler/fr, 10*log10(abs(Pw)));
shading interp;
xlabel('sin(Azimuth)');
ylabel('Doppler Frequency (Hz)');
h = colorbar;
% h = colorbar('YTickLabel',{-80:10:0});
set(get(h,'YLabel'),'String','Relative Power (dB)');