# Figure 26. SINR for the optimum and tapered fully adaptive STAP, including Doppler straddling losses.

## Contents

```clc; clear; close all;
```

```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;
```
```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 the Clutter to Noise Ratio (CNR) for each clutter patch

```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)
```

## SINR calculation for Optimum and Tapered Fully Adaptive STAP

```ta = chebwin(N,30);                                          % 30 dB Chebychev Spatial Tapper.
tb = chebwin(M,40);                                          % 40 dB Chebychev Doppler Taper.
phit = 0; thetat = 0;                                        % Target Azimuth and Elevation Angles.
fspt = d/lambda*cos(thetat*pi/180)*sin(phit*pi/180);         % Target Spatial Frequency.
a = exp(1i*2*pi*fspt*(0:N-1)).';                             % Target Spatial Steering Vector.
fd = 0:.5:300;   Lfd = length(fd);
omega = fd/fr;
dopplerfilterbank = linspace(0,300,M+1);                     % Doppler Filterbank frequencies.
SINRopt_mat = zeros(length(dopplerfilterbank),Lfd);
SINRtap_mat = zeros(length(dopplerfilterbank),Lfd);
InvRu = inv(Ru);

for m=1:length(dopplerfilterbank)
bm = exp(1i*2*pi*omegadopplerbank(m)*(0:M-1)).';        % Doppler Filter Steering Vector
vm = kron(bm,a);
gt = kron(tb.*bm,ta.*a);
wm = InvRu*vm; %#ok<*MINV>                              % Eq. (116)
wmtap = InvRu*gt;

for n=1:Lfd
b = exp(1i*2*pi*omega(n)*(0:M-1)).';                % Dummy Target Doppler Steering Vector
v = kron(b,a);
SINRopt_mat(m,n) = wm'*v;                           % Eq. (114)
SINRtap_mat(m,n) = abs(wmtap'*v)^2/real(wmtap'*gt); % Eq. (115)
end
end

SINRopt = max(abs(SINRopt_mat));                             % Eq. (117) for Optimum Fully Adaptive Case
SINRtap = max(abs(SINRtap_mat));                             % Eq. (117) for Tapered Fully Adaptive Case
```

## Plot the SINRs

```figure('NumberTitle', 'off','Name', ...
'Figure 26. SINR for the optimum and tapered fully adaptive STAPs, including Doppler straddling losses.',...
'Position', [1 1 600 500]);
plot(fd,10*log10(SINRopt),'LineWidth',1.5)
hold on;
plot(fd,10*log10(SINRtap),'r','LineWidth',1.5)
ylabel('SINR (dB)');
xlabel('Target Doppler Frequency (Hz)');
ylim([-5 26]);
xlim([-5 305]); 