# step

**System object: **phased.RadarTarget

**Namespace: **phased

Reflect incoming signal

## Syntax

## Description

**Note**

Starting in R2016b, instead of using the `step`

method
to perform the operation defined by the System object™, you can
call the object with arguments, as if it were a function. For example, ```
y
= step(obj,x)
```

and `y = obj(x)`

perform
equivalent operations.

`Y = step(H,X)`

returns the reflected signal `Y`

due
to the incident signal `X`

. The argument `X`

is
a complex-valued *N*-by-*1* column
vector or *N*-by-*M* matrix. The
value *M* is the number of signals. Each signal corresponds
to a different target. The value *N* is the number
of samples in each signal. Use this syntax when you set the `Model`

property
of `H`

to `'Nonfluctuating'`

.
In this case, the value of the `MeanRCS`

property
is used as the *Radar cross-section* (RCS) value.
This syntax applies only when the `EnablePolarization`

property
is set to `false`

. If you specify *M* incident
signals, you can specify the radar cross-section as a scalar or as
a 1-by-*M* vector. For a scalar, the same value will
be applied to all signals.

The size of the first dimension of the input matrix can vary to simulate a changing signal length. A size change can occur, for example, in the case of a pulse waveform with variable pulse repetition frequency.

`Y = step(H,X,MEANRCS)`

uses `MEANRCS`

as
the mean RCS value. This syntax is available when you set the `MeanRCSSource`

property
to `'Input port'`

and set `Model`

to `'Nonfluctuating'`

.
The value of `MEANRCS`

must be a nonnegative scalar
or 1-by-*M* row vector for multiple targets. This
syntax applies only when the `EnablePolarization`

property
is set to `false`

.

`Y = step(H,X,UPDATERCS)`

uses `UPDATERCS`

as
the indicator of whether to update the RCS value. This syntax is available
when you set the `Model`

property to `'Swerling1'`

, `'Swerling2'`

, `'Swerling3'`

,
or `'Swerling4'`

. If `UPDATERCS`

is `true`

,
a new RCS value is generated. If `UPDATERCS`

is `false`

,
the previous RCS value is used. This syntax applies only when the `EnablePolarization`

property
is set to `false`

. In this case, the value of the `MeanRCS`

property
is used as the radar cross-section (RCS) value.

`Y = step(H,X,MEANRCS,UPDATERCS)`

lets you
can combine optional input arguments when their enabling properties
are set. In this syntax, `MeanRCSSource`

is set
to `'Input port'`

and `Model`

is
set to one of the `Swerling`

models. This syntax
applies only when the `EnablePolarization`

property
is set to `false`

. For this syntax, changes in `MEANRCS`

will
be ignored after the first call to the `step`

method.

returns
the reflected signal `Y`

= step(`H`

,`X`

,`ANGLE_IN`

,`LAXES`

)`Y`

from an incident signal `X`

.
This syntax applies only when the `EnablePolarization`

property
is set to `true`

. The input argument, `ANGLE_IN`

,
specifies the direction of the incident signal with respect to the
target’s local coordinate system. The input argument, `LAXES`

,
specifies the direction of the local coordinate axes with respect
to the global coordinate system. This syntax requires that you set
the `Model`

property to `'Nonfluctuating'`

and
the `Mode`

property to `'Monostatic'`

.
In this case, the value of the `ScatteringMatrix`

property
is used as the scattering matrix value.

`X`

is a 1-by-*M* row array
of MATLAB^{®} `struct`

type, each member of the
array representing a different signal. The `struct`

contains
three fields, `X.X`

, `X.Y`

, and `X.Z`

.
Each field corresponds to the *x*, *y*,
and *z* components of the polarized input signal.
Polarization components are measured with respect to the global coordinate
system. Each field is a column vector representing a sequence of values
for each incoming signal. The `X.X`

, `X.Y`

,
and `Y.Z`

fields must all have the same dimension.
The argument, `ANGLE_IN`

, is a 2-by-*M* matrix
representing the signals’ incoming directions with respect
to the target’s local coordinate system. Each column of `ANGLE_IN`

specifies
the incident direction of the corresponding signal in the form ```
[AzimuthAngle;
ElevationAngle]
```

. Angle units are in degrees. The number
of columns in `ANGLE_IN`

must equal the number
of signals in the `X`

array. The argument, `LAXES,`

is
a 3-by-3 matrix. The columns are unit vectors specifying the local
coordinate system's orthonormal *x*, *y*,
and *z* axes, respectively, with respect to the global
coordinate system. Each column is written in `[x;y;z]`

form.

`Y`

is a row array of `struct`

type
having the same size as `X`

. Each `struct`

contains
the three reflected polarized fields, `Y.X`

, `Y.Y`

,
and `Y.Z`

. Each field corresponds to the *x*, *y*,
and *z* component of the signal. Polarization components
are measured with respect to the global coordinate system. Each field
is a column vector representing one reflected signal.

The size of the first dimension of the matrix fields within
the `struct`

can vary to simulate a changing signal
length such as a pulse waveform with variable pulse repetition frequency.

,
in addition, specifies the reflection angle, `Y`

= step(`H`

,`X`

,`ANGLE_IN`

,`ANGLE_OUT`

,`LAXES`

)`ANGLE_OUT`

,
of the reflected signal when you set the `Mode`

property
to `'Bistatic'`

. This syntax applies only when the `EnablePolarization`

property
is set to `true`

. `ANGLE_OUT`

is
a 2-row matrix representing the reflected direction of each signal.
Each column of `ANGLE_OUT`

specifies the reflected
direction of the signal in the form `[AzimuthAngle; ElevationAngle]`

.
Angle units are in degrees. The number of columns in `ANGLE_OUT`

must
equal the number of members in the `X`

array. The
number of columns in `ANGLE_OUT`

must equal the
number of elements in the `X`

array.

specifies `Y`

= step(`H`

,`X`

,`ANGLE_IN`

,`LAXES`

,`SMAT`

)`SMAT`

as
the scattering matrix. This syntax applies only when the `EnablePolarization`

property
is set to `true`

. The input argument `SMAT`

is
a 2-by-2 matrix. You must set the `ScatteringMatrixSource`

property ```
'Input
port'
```

to use `SMAT`

.

specifies `Y`

= step(`H`

,`X`

,`ANGLE_IN`

,`LAXES`

,`UPDATESMAT`

)`UPDATESMAT`

to
indicate whether to update the scattering matrix when you set the `Model`

property
to `'Swerling1'`

, `'Swerling2'`

', `'Swerling3'`

,
or `'Swerling4'`

. This syntax applies only when the `EnablePolarization`

property
is set to `true`

. If `UPDATESMAT`

is
set to `true`

, a scattering matrix value is generated.
If `UPDATESMAT`

is `false`

, the
previous scattering matrix value is used.

.
You can combine optional input arguments when their enabling properties
are set. Optional inputs must be listed in the same order as the order
of their enabling properties.`Y`

= step(`H`

,`X`

,`ANGLE_IN`

,`ANGLE_OUT`

,`LAXES`

,`SMAT`

,`UPDATESMAT`

)

**Note**

The object performs an initialization the first time the object is executed. This
initialization locks nontunable properties
and input specifications, such as dimensions, complexity, and data type of the input data.
If you change a nontunable property or an input specification, the System object issues an error. To change nontunable properties or inputs, you must first
call the `release`

method to unlock the object.

## Examples

## Algorithms

For a narrowband nonpolarized signal, the reflected signal, *Y*,
is

$$Y=\sqrt{G}\cdot X,$$

where:

*X*is the incoming signal.*G*is the target gain factor, a dimensionless quantity given by$$G=\frac{4\pi \sigma}{{\lambda}^{2}}.$$

σ is the mean radar cross-section (RCS) of the target.

λ is the wavelength of the incoming signal.

The incident signal on the target is scaled by the square root of the gain factor.

For narrowband polarized waves, the single scalar signal, *X*,
is replaced by a vector signal, *(E _{H},
E_{V})*, with horizontal and vertical
components. The scattering matrix,

*S*, replaces the scalar cross-section, σ. Through the scattering matrix, the incident horizontal and vertical polarized signals are converted into the reflected horizontal and vertical polarized signals.

$$\left[\begin{array}{c}{E}_{H}^{(scat)}\\ {E}_{V}^{(scat)}\end{array}\right]=\sqrt{\frac{4\pi}{{\lambda}^{2}}}\left[\begin{array}{cc}{S}_{HH}& {S}_{VH}\\ {S}_{HV}& {S}_{VV}\end{array}\right]\left[\begin{array}{c}{E}_{H}^{(inc)}\\ {E}_{V}^{(inc)}\end{array}\right]=\sqrt{\frac{4\pi}{{\lambda}^{2}}}\left[S\right]\left[\begin{array}{c}{E}_{H}^{(inc)}\\ {E}_{V}^{(inc)}\end{array}\right]$$

## References

[1] Mott, H. *Antennas for Radar and
Communications*.John Wiley & Sons, 1992.

[2] Richards, M. A. *Fundamentals
of Radar Signal Processing*. New York: McGraw-Hill, 2005.

[3] Skolnik, M. *Introduction to Radar Systems*,
3rd Ed. New York: McGraw-Hill, 2001.