Main Content

barrageJammer

Barrage jammer

Since R2021a

Description

The barrageJammerSystem object™ implements a white Gaussian noise jammer.

To obtain the jamming signal:

  1. Create the barrageJammer object and set its properties.

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

To learn more about how System objects work, see What Are System Objects?

Creation

Description

jammer = barrageJammer

jammer = barrageJammer(PropertyName=Value) creates a barrage jammer system object, jammer, with each specified Property PropertyName set to the corresponding Value. You can specify additional pairs of arguments in any order as PropertyName1=Value1,...,PropertyNameN=ValueN.

example

jammer = barrageJammer(ERP,PropertyName=Value) creates a barrage jammer system object, jammer, with the effective radiated power ERP property specified as a positional input argument. You can set each other specified Property PropertyName to the corresponding Value in any order as PropertyName1=Value1,...,PropertyNameN=ValueN.

Properties

expand all

Unless otherwise indicated, properties are nontunable, which means you cannot change their values after calling the object. Objects lock when you call them, and the release function unlocks them.

If a property is tunable, you can change its value at any time.

For more information on changing property values, see System Design in MATLAB Using System Objects.

Specify the effective radiated power (ERP) of the jamming signal as a positive scalar. Units are in watts (W).

Data Types: double

Specify whether the number of samples of the jamming signal comes from the SamplesPerFrame property of this object or from input argument N. Values of this property are:

'Property'The SamplesPerFrame property of this object specifies the number of samples of the jamming signal.
'Input port'An input argument in each invocation of step specifies the number of samples of the jamming signal.

Data Types: string | char

Specify the number of samples in the output jamming signal as a positive integer.

Dependencies

To enable this property, set the SamplesPerFrameSource property to 'Property'.

Data Types: double

Specify how the object generates random numbers. Values of this property are:

'Auto'The default MATLAB® random number generator produces the random numbers. Use 'Auto' if you are using this object with Parallel Computing Toolbox™ software.
'Property'The object uses its own private random number generator to produce random numbers. The Seed property of this object specifies the seed of the random number generator. Use 'Property' if you want repeatable results and are not using this object with Parallel Computing Toolbox software.

Data Types: string | char

Specify the seed for the random number generator as a scalar integer between 0 and 232–1.

Dependencies

To enable this property, set the SeedSource property to 'Property'.

Data Types: double

Usage

Description

Y = jammer() returns the complex white Gaussian noise jamming signal. The power of the jamming signal is specified by the ERP property. The length of the jamming signal is specified by the SamplesPerFrame property. This syntax is available when the SamplesPerFrameSource property is set to the default value of 'Property'.

example

Y = jammer(N) returns the white Gaussian noise jamming signal with length N. This syntax is available when the SamplesPerFrameSource property is set to 'Input port'.

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.

Input Arguments

expand all

Barrage jammer object, specified as a barrageJammer System object.

Example:

Jamming signal length, specified as a positive integer.

Output Arguments

expand all

Complex white Gaussian noise jamming signal, returned as a column vector. The power of the jamming signal is specified by the ERP property.

Object Functions

To use an object function, specify the System object as the first input argument. For example, to release system resources of a System object named obj, use this syntax:

release(obj)

expand all

stepRun System object algorithm
releaseRelease resources and allow changes to System object property values and input characteristics
resetReset internal states of System object

Examples

collapse all

Create a barrage jammer with an effective radiated power of 1000W. Then plot the magnitude of the jammer output. barrageJammer uses a random number generator. Plots can vary from run-to-run.

jammer = barrageJammer('ERP',1000);
plot(abs(jammer()))
xlabel('Samples')
ylabel('Magnitude')

Figure contains an axes object. The axes object with xlabel Samples, ylabel Magnitude contains an object of type line.

References

[1] Ward, J. “Space-Time Adaptive Processing for Airborne Radar Data Systems,” Technical Report 1015, MIT Lincoln Laboratory, December, 1994.

Extended Capabilities

expand all

Version History

Introduced in R2021a