Engee documentation

rocpfa

Receiver performance curves for false alarm probability.

Library

EngeePhased

Syntax

Creation

The rocpfa function can be called in the following ways:

  • Pd,SNR = rocpfa(1e-6, "Pd&SNR") returns the single pulse detection probabilities, argument Pd, and the required signal-to-noise ratio values, argument SNR, SNR for the false alarm probabilities in a vector of rows or columns Pfa. By default, for each false alarm probability, detection probabilities are calculated for 101 equally spaced SNR values ranging from 0 to 20 dB. The ROC curve is plotted assuming a single pulse in a coherent receiver with an unchanging target.

Usage

  • rocpfa(_) plots ROC curves.

Arguments

Entry

Pfa -. false alarm probability
vector

Details

The probability of a false alarm, given as a vector of rows or columns.

Example: [1e-8 1e-6 1e-3].

Data types: Float64

Arguments with value assignment Name=Value

Specify optional argument pairs in the form Name1=Value1,…​,NameN=ValueN, where Name is the name of the argument and Value is the corresponding value. The arguments Name=Value must be placed after the other arguments, but the order of the pairs does not matter.

Example: MaxSNR=15,NumPoints=64,NumPulses=10.

MaxSNR - maximum signal-to-noise ratio (SNR) to be included in the ROC calculation
20 (By default)| positive scalar

Details

The maximum signal-to-noise ratio (SNR) to include in the ROC calculation, specified as a positive scalar.

Data types: Float64

MinSNR - minimum signal-to-noise ratio (SNR) to be included in the ROC calculation
1e-10 (by default)| positive scalar

Details

The minimum signal-to-noise ratio (SNR) to be included in the ROC calculation is specified as a positive scalar.

Data types: Float64

NumPoints - number of signal-to-noise ratio (SNR) values used in the calculation of ROC curves
101 (By default) | Positive integer

Details

The number of SNR values used in the calculation of ROC curves is set as a positive integer. The actual values are equidistant between MinSNR and MaxSNR.

Data types: Float64

NumPoints - number of signal-to-noise ratio (SNR) values used in the calculation of ROC curves
101 (by default) | `positive integer'.

Details

The number of SNR values used in ROC curve calculation is set as a positive integer.

The actual values are equidistant between the values of the MinSNR and MaxSNR arguments.

Data types: Float64

NumPulses - number of pulses for integration
1 (by default) | `positive integer `

Details

The number of pulses to integrate for ROC curve calculation, set as a positive integer.

A value of 1 means no pulse integration.

Data types: Float64

SignalType — type of received signal
NonfluctuatingCoherent (By default) | NonfluctuatingNoncoherent | Real | Swerling1 | Swerling2 | Swerling3 | Swerling4

Details

This argument specifies the type of received signal or, equivalently, the probability density functions (PDF) used to calculate the ROC.

It is specified as one of the values:

  • Real.

  • NonfluctuatingCoherent.

  • NonfluctuatingNoncoherent

  • `Swerling1

  • `Swerling2

  • `Swerling

  • `Swerling4

Values are not case sensitive.

The `NonfluctuatingCoherent' signal type assumes that the noise in the received signal is a complex Gaussian random variable. This variable has independent zero mean real and imaginary parts, each with variance under the null hypothesis. In the case of a single pulse in a coherent receiver with complex white Gaussian noise, the probability of detection, , for a given false alarm probability, , is equal to:

where and are the additive error function and its inverse function, and is the dimensionless signal-to-noise ratio (SNR).

Data types: char | string

Output

Pd - detection probability
vector

Details

Detection probabilities corresponding to false alarm probabilities, returned as a vector. For each false alarm probability in the argument Pfa, Pd contains one column of detection probabilities.

Data types: Float64

SNR - signal-to-noise ratio
`column vector

Details

Signal to noise ratio, returned as a column vector.

By default, SNR values are 101 evenly distributed values from 0 to 20.

  • To change the range of SNR values, use the optional input argument MinSNR or MaxSNR.

  • To change the number of SNR values, use the optional input argument NumPoints.

Data types: Float64

Examples

ROC curves for different false alarm probabilities Pfa

Details

Construct ROC curves for false alarm probabilities with Pfa values of 1e-8, 1e-6 and 1e-3 assuming no pulse integration.

Pfa = [1e-8, 1e-6, 1e-3];
rocpfa(Pfa,SignalType="NonfluctuatingCoherent")

rocpfa 1

References

  1. Richards, M. A. "Fundamentals of Radar Signal Processing." New York: McGraw-Hill, 2005, pp 298-336.