# blindzonemap

## Syntax

## Description

creates a blind zone map `BZM`

= blindzonemap(`R`

,`V`

,`PRF`

,`fc`

`rmin`

,`vmin`

)`BZM`

for a pulse-Doppler radar transmitting at
a pulse repetition frequency of `PRF`

. The blind zone map is constructed
for ranges in `R`

and velocities in `V`

. The minimum
detectable range of the radar is `rmin`

and the minimum detectable
velocity is `vmin`

. The function assumes that ranges between 0 and
`rmin`

are blind to the radar at all velocities.

`blindzonemap(___)`

plots a blind zone map.

## Examples

### Create Blind Zone Map for Clutter

A 10 GHz X-band radar transmits pulses at two PRFs: 10151 Hz and 14163 Hz. The minimum detectable range of the system is 1000 m. The width of the main beam clutter rejection notch is 50 m/s. The sidelobe clutter extends from 34.5 km to 36.5 km when transmitting at the first PRF and from 36.3 km to 39.8 when transmitting the second PRF. Compute the blind zone map for velocities from 0 to 600 m/s and ranges between 0 and 100 km.

Set the carrier frequency to 10 GHz.

fc = 10e9;

Set the PRFs.

PRF = [10151 14163];

Set the minimum range to 1 km.

rmin = 1000;

Set the span of range values.

R = linspace(0,100e3,1000);

Ranges that are blind due to sidelobe clutter are added through the range mask input argument.

rangeMask = false(numel(R),numel(PRF));

Sidelobe clutter at PRF=10151 Hz.

rangeMask(R>34500 & R<36500,1) = true;

Sidelobe clutter at PRF=14163 Hz.

rangeMask(R>36300 & R<39800,2) = true;

Set half width of the main beam clutter rejection notch.

vmin = 25;

Set the span of velocity values.

V = linspace(0,600,1000);

Plot the blind zone map.

`blindzonemap(R,V,PRF,fc,rmin,vmin,'RangeMask',rangeMask)`

### Display Blind Zone Map with 1-of-2 Detection Criterion

A 10 GHz X-band medium PRF radar transmits at two pulse repetition intervals: 0.1 ms and 0.12 ms. The pulse width is$10\text{\hspace{0.17em}}\mu \mathrm{sec}$. The system also has a notch to reject slow moving targets with velocities up to 20 meters/sec. Plot a blind zone map assuming that the 1-of-2 PRF detection criterion is used.

Choose the carrier frequency as 10 GHz.

fc = 10e9;

Set the pulse width to$10\text{\hspace{0.17em}}\mu \mathrm{sec}$.

tau = 10e-6;

Set the minimum detectable range from the pulse width.

rmin = time2range(tau);

Set the minimum detectable velocity to 20 meters/sec.

vmin = 20;

Choose two pulse repetition intervals.

PRF = 1./[1e-4 1.2e-4];

Set the range values.

R = linspace(0,85e3,1000);

Set the velocity values.

V = linspace(0,600,1000);

Display the blind zone map.

blindzonemap(R,V,PRF,fc,rmin,vmin,1)

## Input Arguments

`R`

— Map ranges

length-*J* vector of positive values

Radar ranges, specified as a length-*J* vector of positive values.
The function computes the blind zone map at these ranges. Units are in meters.

**Example: **`[4000,4500,6000]`

**Data Types: **`double`

`V`

— Velocities

length-*K* real-valued vector

Radar velocities, specified as a length-*K* real-valued vector. The
function computes the blind velocity map at these velocities. Units are in
meters/sec.

**Example: **`[4000,4500,6000]`

**Data Types: **`double`

`PRF`

— Pulse repetition frequencies

length-*N* vector of positive values

Pulse repetition frequencies, specified as a length-*N* vector of
positive values. Units are in Hz.

**Example: **`[10000,15000]`

**Data Types: **`double`

`fc`

— Radar waveform carrier frequency

positive scalar (default) | length-*N* vector of positive values

Radar waveform carrier frequency, specified as a positive scalar or
length-*N* vector of positive values. If the radar transmits pulses
at one carrier frequency, the input `fc`

is a scalar. If the radar
employs frequency diversity using a different carrier frequency for each
`PRF`

value, `fc`

is a
length-*N* vector. Units are in Hz.

**Example: **`3e9`

**Data Types: **`double`

`rmin`

— Minimum detection range

positive scalar | length-*N* vector of positive values

Minimum detection range, specified as positive scalar or a
length-*N* vector of positive value. Ranges between 0 and
`rmin`

are considered blind to the radar.

If the radar transmits pulses of a fixed duration,

`rmin`

is a scalar and the size of the blind zone is the same for all`PRF`

values.If the radar transmits pulses with a constant duty cycle,

`rmin`

is a length-*N*vector and the size of the blind zone changes for each`PRF`

. Such a blind zone also occurs at every integer multiple of the radar unambiguous range*R*_{uamb}=*c/(2*PRF)*where*c*is the radar signal propagation speed. Units are in meters.

**Example: **`40000`

**Data Types: **`double`

`vmin`

— Minimum detectable velocity

scalar (default) | length-*N* real-valued vector

Minimum detectable velocity, specified as a scalar or length-*N*
real-valued vector. A blind zone due to a non-zero minimum detectable velocity extends
from -`vmin`

to +`vmin`

for all
`PRF`

values.

If the radar has the same minimum detectable velocity for all

`PRF`

s,`vmin`

is a scalar and the size of the blind zone is constant for all`PRF`

values.If the minimum detectable velocity varies with

`PRF`

,`vmin`

is a length-*N*vector and the size of the blind zone is different for each`PRF`

.

Due to ambiguities in velocity, blind zones also appear around integer
multiples of the blind speed *V _{B}* and extend
from

*V*to

_{B}*i - V_{min}*V*, where

_{B}*i + V_{min}*V*,

_{B}= PRF*c/(2*fc)*c*is the signal propagation speed, and

*i*is an integer. The input

`vmin`

can represent the half-width of a rejection notch that is
used to reject main lobe clutter and slow moving targets. Units are in
meters/sec.**Example: **`15.0`

**Data Types: **`double`

`M`

— Number of pulse repetition frequencies

1 (default) | positive integer

Number of pulse repetition frequencies required for
*M*-of-*N* detection, specified as a positive
integer. A range-velocity cell visible in less than `M`

PRFs is
considered to be blind to the radar. `M`

must be a positive integer
less than or equal to `N`

which is the number of entries in PRF. If
`M`

is specified, the output `BZM`

is a logical
array. If `(j,k)`

^{th} range-velocity cell is
visible in at least `M`

PRFs,
`BZM`

`(j,k)`

is a logical zero
(`false`

), otherwise `BZM`

`(j,k)`

is a logical one (`true`

).

**Data Types: **`double`

`robstr`

— Range obstructions

`[]`

| *Q*-by-2 matrix of positive

Range obstructions, specified as a *Q*-by-2 matrix of positive
values. Each row of the matrix specifies a range obstruction in the form
`[rstartq,rstopq]`

where `rstartq`

is the start
range and `rstopq`

is the stop range of an obstruction, where
`rstopq`

≥ `rstartq`

. The specified obstructions
repeat in range with an interval equal to the unambiguous range for each
`PRF`

. Range obstructions can occur, for example, due to clutter,
multipath interference, or jammer interference. `[]`

indicates no
obstructions. Units are in meters.

**Example: **`[30000;31000]`

**Data Types: **`double`

`vobstr`

— Velocity obstructions

`[]`

| *Q*-by-2 real-valued matrix

Velocity obstructions, specified as a *Q*-by-2 real-valued matrix.
Each row specifies a velocity obstruction in the form
`[vstartq,vstopq]`

where `vstartq`

is the start
velocity of the obstruction and `vstopq`

is the stop velocity of the
obstruction, such that `vstopq`

≥ `vstartq`

. Targets
moving with obstructed velocities or velocities ambiguous to the obstructed velocities
are not visible to the radar. Such obstructions can occur due to clutter. Entries in
`BZM`

that correspond to the obstructed velocities are set to a
logical one (true). The obstructions repeat in velocity with an interval equal to the
blind speed for each `PRF`

value. `[]`

indicates no
obstructions. Units are in meters/second.

**Data Types: **`double`

`rm`

— Range mask

*J*-by-*N* matrix of logical zeros. (default) | *J*-by-*N* logical matrix

Range mask, specified as a *J*-by-*N* logical
matrix. The rows of `rm`

correspond to the ranges in
`R`

and the columns correspond to the pulse repetition frequencies
in `PRF`

. `rm`

`(j,n)`

is a
logical zero (false) if the `j`

range cell
is visible to the radar at the ^{th}`n`

^{th}`PRF`

. `rm`

`(j,n)`

is a logical
one (true) if the `j`

cell is blind to the
radar at the ^{th}`n`

^{th}`PRF`

. `rm`

can be used to specify ranges that are
blind due to sidelobe clutter.

**Data Types: **`double`

## Output Arguments

`BZM`

— Blind zone map

*J*-by-*K* real-valued matrix | *J*-by-*K* logical-valued matrix

Blind zone map, returned as a *J*-by-*K* real
matrix. The `(j,k)`

entry in
^{th}`BZM`

represents a range-velocity cell with the range equal to the
`j`

entry in ^{th}`R`

and the velocity equal to the `k`

entry in
^{th}`V`

.

`BZM`

`(j,k)`

is the number of PRFs for which this range-velocity cell is blind to the radar*(0 ≦ BZM(j,k) ≦ N)*. For example, if`BZM`

`(j,k)`

is zero, the`(j,k)th`

range-velocity cell is visible in all PRFs. If`BZM`

`(j,k)`

is 1, this range-velocity cell is visible in all but 1 PRFs. If`BZM`

`(j,k)`

is equal to*N*, this cell is blind in all PRFs.`BZM`

specifies the number of PRFs`M`

required for*M*-of-*N*PRF detection. If`M`

is specified, the output`BZM`

is a logical array. A range-velocity cell visible in less than`M`

PRFs is considered to be blind to the radar.`M`

must be a positive integer less than or equal to*N*. the number of entries in`PRF`

. If the`(j,k)`

range-velocity cell is visible in at least^{th}`M`

PRFs,`BZM`

`(j,k)`

is a logical zero`(false)`

, otherwise`BZM`

`(j,k)`

is a logical one`(true)`

.

**Data Types: **`logical`

## Extended Capabilities

### C/C++ Code Generation

Generate C and C++ code using MATLAB® Coder™.

## Version History

**Introduced in R2023a**

## See Also

## Open Example

You have a modified version of this example. Do you want to open this example with your edits?

## MATLAB Command

You clicked a link that corresponds to this MATLAB command:

Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list:

## How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

### Americas

- América Latina (Español)
- Canada (English)
- United States (English)

### Europe

- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)

- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)