EngeeComms.AWGN
Adds white Gaussian noise to the input signal.
| Library |
|
| Block |
Description
System object EngeeComms.AWGN adds white Gaussian noise to the input signal.
If the object’s inputs have a variable number of channels, the properties EbNo, BitsPerSymbol, SignalPower, SamplesPerSymbol must be scalars.
To add white Gaussian noise to the input signal:
-
Create an object EngeeComms.AWGN and set its properties.
-
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
-
awgnchan = EngeeComms.AWGN()— creates an Additive White Gaussian Noise (AWGN) channel system objectawgnchanwith the default properties. This object adds white Gaussian noise to the real or complex input signal.Example:
awgnchan = EngeeComms.AWGN() -
awgnchan = EngeeComms.AWGN(Name=Value)— creates an AWGN channel system objectawgnchanwith the specified properties as a pairName=Value, whereName— the name of the property, andValue— the appropriate value. You can specify multiple pairs «name-value» the order of the pairs does not matter. Unspecified properties retain their default values.Example:
awgnchan = EngeeComms.AWGN(EbNo=20, BitsPerSymbol=3)
Using
-
outsignal = awgnchan(insignal)— adds white Gaussian noise as indicated onawgnchan, to the input signal. The result is returned inoutsignal. -
outsignal = awgnchan(insignal,var)— sets the variance of white Gaussian noise. This syntax applies when you installNoiseMethodin'Variance'andVarianceSourcein'Input port'.
For example:
awgnchan = EngeeComms.AWGN(NoiseMethod, Variance, ...
'VarianceSource','Input port');
var = 12;
...
outsignal = awgnchan(insignal,var);
Arguments
Input arguments
insignal — The input signal
+
scalar | vector | the matrix
Details
The input signal, specified as a scalar, vector -elements or matrices on , where — this is the number of counts, and — the number of channels.
This object accepts variable-size input data. After locking the object, you can change the size of each input channel, but you cannot change the number of channels.
| Типы данных |
|
| Support for complex numbers |
Yes |
var is the variance of additive white Gaussian noise
+
positive scalar | vector string
Details
The variance of additive white Gaussian noise, given as a positive scalar or vector 1 on , where is the number of channels determined by the number of columns in the input matrix.
Dependencies
To use this argument, set the property to NoiseMethod value 'Variance'.
Features
#
InitialSeed —
initial random number
Real number
Details
The initial random number of the random number stream mt19937ar, specified as a non-negative integer. Each time the reset function is called, the object reinitialises the random number stream mt19937ar to the value Seed.
#
SignalPower —
input signal strength
Real number
Details
Input signal power in watts, specified as a positive scalar or vector 1-on- , where is the number of channels. The object assumes a nominal impedance of 1 ohm.
#
EbNo —
the ratio of energy per bit to the noise power spectral density
Real number or vector of real numbers
Details
The ratio of the noise power spectral density (Eb/No) in decibels, given as a scalar or vector 1-on- , where is the number of channels.
Dependencies
This property applies when NoiseMethod is set to 'Signal to noise ratio (Eb/No)'.
#
NoiseMethod —
noise level method
String
Details
A noise level method specified as 'Signal to noise ratio (Eb/No)', 'Signal to noise ratio (Es/No)', 'Signal to noise ratio (SNR)' or 'Variance'.
#
SamplesPerSymbol —
counts per character
Real number
Details
The number of samples per symbol, specified as a positive integer or vector 1 at . - is the number of channels.
Dependencies
This property applies when NoiseMethod is set to 'Signal to noise ratio (Eb/No)' or 'Signal to noise ratio (Es/No)'.
#
BitsPerSymbol —
number of bits per character
Real number
Details
The number of bits per character, specified as a positive integer.
Dependencies
This property is applied when NoiseMethod is set to 'Signal to noise ratio (Eb/No)'.
Algorithms
The relationship between the Eb/No, Es/No and SNR mods
Details
For uncoded complex input signals EngeeComms.AWGN binds , and SNR according to these equations:
,
in dB,
where
-
— signal energy in J;
-
— bit energy in J;
-
— spectral noise power density in W/Hz;
-
— the number of counts per character (SamplesPerSymbol);
-
— the number of information bits per input character (BitsPerSymbol).
For real signal inputs EngeeComms.AWGN binds and according to this equation:
.
|