Engee documentation

EngeePhased.RangeDopplerResponse

Range-Doppler processing.

Library

EngeePhased

Block

Range Doppler Response

Description

System object EngeePhased.RangeDopplerResponse calculates the radiation pattern after filtering by fast and slow time, or, equivalently, by range data, using either a matched filter or an FFT.

At the entrance of the object EngeePhased.RangeDopplerResponse an array of data is being submitted. The data array corresponds to the antenna array object. The first measurement of the array is the samples of the fast time or the range of the received signals. The second dimension corresponds to several channels, such as sensors or beams. The third dimension, slow time, represents pulses. If the data contains only one channel or one pulse, the data array may have fewer than three dimensions. Range processing is performed along the first dimension of the array. Doppler processing is performed along the last dimension.

To calculate the range-Doppler processing, follow these steps:

  1. Create an object EngeePhased.RangeDopplerResponse and set its properties.

  2. Call the object with arguments as if it were a function.

To learn more about how to work with system objects, see Engee System Objects.

Syntax

Creation

  • response = EngeePhased.RangeDopplerResponse() — creates a range-Doppler processing system object with default property values.

  • response = EngeePhased.RangeDopplerResponse(Name=Value) — creates a range-Doppler processing system object with specified properties in the form of a pair Name=Value, where Name — the name of the property, and Value — the appropriate value. You can specify multiple pairs «name-value» the order of the pairs does not matter. Unspecified properties retain their default values.

Using

  • resp,rnggrid,dopgrid = response(x) — calculates the range-Doppler characteristic resp of the input signal x. The arguments rnggrid and dopgrid represent range counts and Doppler counts, respectively, at which the range-Doppler characteristic is estimated. This syntax is available if for the property RangeMethod value set "FFT", and for the property DechirpInput — value false. This syntax is most often used with FM signals.

  • resp,rnggrid,dopgrid = response(x,xref) — uses the xref signal as a reference signal to demodulate the x input signal. This syntax is available if for the property RangeMethod set the value "FFT", and for the property DechirpInput — value true. This syntax is most often used with FM signals, where the reference signal is the transmitted signal.

  • resp,rnggrid,dopgrid = response(x,coeff) — uses coeff as coefficients of the matched filter. This syntax is available if you set the property RangeMethod value "Matched filter". This syntax is most often used for pulse signals, where the matched filter is time-reversed with respect to the transmitted signal.

  • resp,rnggrid,dopgrid = response(_,prf) — uses prf as the pulse repetition rate. This syntax is available if you set the [Property:Pdfsource] value "Input port". This syntax is most often used for pulse signals, where the matched filter is time-reversed with respect to the transmitted signal.

Arguments

Input arguments

x — input data

+ the complex matrix K on L | a complex array of K by N by L

Details

Input data set as a complex matrix on or an array on on , where

  • — these are fast time counts;

  • — this is the number of channels, such as beams or antenna elements. When equal to one, only one data channel is present;

  • — this is the number of pulses to be processed by a matched filter and the number of deviations to process the FFT.

The specific requirements depend on the syntax.:

  • In the syntax response(x) Each column x represents a demodulated signal with a single deviation frequency. The function assumes that all frequency deviations in x are sequential.

  • In the syntax response(x,xref) each column x represents a signal with a single deviation frequency. The function assumes that all frequency deviations in x are consistent and not demodulated.

  • In the syntax response(x,coeff) Each column of the x matrix represents a signal from a single pulse. The function assumes that all pulses in x are sequential.

In the case of an LFM signal with triangular deviation frequencies alternate positive and negative slopes. However, the system object EngeePhased.RangeDopplerResponse It is designed to handle consecutive deviations with the same slope. To apply EngeePhased.RangeDopplerResponse for a system with a triangular deviation, use one of the following approaches:

  • Specify a positive value for the SweepSlope, while x will only correspond to an increase in frequency. After getting the Doppler score or speed, divide them by 2.

  • Specify a negative value for the SweepSlope, while x will only correspond to frequency reduction. After getting the Doppler score or speed, divide them by 2.

Типы данных

Float32, Float64

Support for complex numbers

Yes

xref — reference signal

+ column vector

Details

A reference signal defined as a column vector, the number of elements of which is equal to the number of rows x.

Типы данных

Float32, Float64

coeff — coefficients of the matched filter

+ column vector

Details

The filter coefficients, set as a column vector.

Типы данных

Float32, Float64

prf — pulse repetition rate
positive scalar

Details

The pulse repetition rate, set as a positive scalar.

The prf value must be less than or equal to the sampling frequency specified in the SampleRate divided by the length of the first measurement of the input signal x.

Dependencies

To enable this argument, set the PRFSource property to Input port.

Типы данных

Float32, Float64

Output arguments

resp — range-Doppler characteristic

+ the complex matrix M on P | a complex array of M by N by P

Details

The range-Doppler characteristic returned as a complex matrix on or an array on on . Values and depend on the syntax, has the same value as for the input argument x.

  • For the syntax response(x):

    • If for a property RangeFFTLength value set "Auto" Then — the length of the first dimension x. Otherwise equal to the value of the RangeFFTLength.

    • If for a property DopplerFFTLength value set "Auto" Then — the length of the last measurement x. Otherwise equal to the value of the DopplerFFTLength.

  • For the syntax response(x,xref):

    • — this is the quotient of dividing the length of the first dimension x by the value of the property DecimationFactor.

    • If for a property DopplerFFTLength value set "Auto" Then , the length of the last measurement x. Otherwise equal to the value of the DopplerFFTLength.

  • For the syntax response(x,coeff):

    • — this is the number of rows x.

    • If for a property DopplerFFTLength value set "Auto", — the length of the last measurement x. Otherwise equal to the value of the DopplerFFTLength.

Features

# RangeWindowdescription missing
String

Details

Description missing

# DopplerOutputdescription missing
String

Details

Description missing

# DechirpInputdescription missing
Logical

Details

Description missing

# SweepSlopedescription missing
Real number

Details

Description missing

# DopplerWindowdescription missing
String

Details

Description missing

# PropagationSpeeddescription missing
Real number

Details

Description missing

# DopplerFFTLengthdescription missing
Int64 integer

Details

Description missing

# PRFSourcedescription missing
String

Details

Description missing

# DopplerFFTLengthSourcedescription missing
String

Details

Description missing

# PRFdescription missing
Real number

Details

Description missing

# ReferenceRangeCentereddescription missing
Logical

Details

Description missing

# DecimationFactordescription missing
Real number

Details

Description missing

# ReferenceRangedescription missing
Real number

Details

Description missing

# RangeSidelobeAttenuationdescription missing
Real number

Details

Description missing

# DopplerSidelobeAttenuationdescription missing
Real number

Details

Description missing

# MaximumNumInputSamplesSourcedescription missing
String

Details

Description missing

# SampleRatedescription missing
Real number

Details

Description missing

# OperatingFrequencydescription missing
Real number

Details

Description missing

# RangeFFTLengthSourcedescription missing
String

Details

Description missing

# RangeMethoddescription missing
String

Details

Description missing

# MaximumNumInputSamplesdescription missing
Real number

Details

Description missing

# RangeFFTLengthdescription missing
Int64 integer

Details

Description missing

Methods

Common to all system objects

step!

Run the system object operation algorithm

release!

Allow changing the value of a system object property

reset!

Resetting the internal states of a system object

Algorithms

Processing algorithm

Details

An object EngeePhased.RangeDopplerResponse performs the processing as follows:

  1. Processes the input signal in a fast time measurement using either a matched filter or a demodulation/FFT operation.

  2. Processes the input signal in pulse measurement using the FFT. The decimation algorithm uses a 30th-order FIR filter generated by the function fir1(30,1/R), where R — property value DecimationFactor.

Data accuracy

Details

This system object supports single and double precision for inputs, properties, and arguments. If the input data x has single precision, then the output data will be single precision. If the input data x has double precision, then the output data will have double precision. The accuracy of the output data does not depend on the accuracy of the properties and other arguments.