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 inputs of the object 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 aawgnchan
channel additive white Gaussian noise (AWGN) system object with by 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 objectawgnchan
with the specified propertyName
set to the specified valueValue
. You can specify additional arguments as a name-value pair in any order (Name1
=Value1
,…,NameN
=ValueN
).Example:
awgnchan = EngeeComms.AWGN(EbNo=20, BitsPerSymbol=3)
Usage
-
outsignal = awgnchan(insignal)
adds white Gaussian noise, as specified byawgnchan
, to the input signal. The result is returned inoutsignal
. -
outsignal = awgnchan(insignal,var)
specifies the variance of the white Gaussian noise. This syntax applies when you setNoiseMethod
toVariance
andVarianceSource
toInput port
.
For example:
awgnchan = EngeeComms.AWGN(NoiseMethod, Variance, ...
'VarianceSource','Input port');
var = 12;
...
outsignal = awgnchan(insignal,var);
Arguments
Input arguments
insignal -
input signal
scalar
| vector
| matrix
Details
An input signal specified as a scalar, a vector of -elements or a matrix by , where is the number of samples and is the number of channels.
This object accepts variable-sized input data. After locking the object, you can change the size of each input channel, but you cannot change the number of channels.
Типы данных |
|
Supports complex numbers |
Yes |
var -
variance of additive white Gaussian noise
positive scalar
| string vector
Details
The variance of additive white Gaussian noise, given as a positive scalar or vector of 1 at , where is the number of channels defined by the number of columns in the input signal matrix.
Dependencies
To use this argument, set the property NoiseMethod property to 'Variance'
.
Properties
#
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
Relationship between Eb/No, Es/No and SNR modes
Details
For uncoded complex input signals, EngeeComms.AWGN relates , and SNR according to these equations:
,
dB,
where
-
- signal energy in J
-
- bit energy in J;
-
- spectral density of noise power in W/Hz;
-
- number of samples per symbol (SamplesPerSymbol);
-
- number of information bits per input symbol (BitsPerSymbol).
For real signal inputs, EngeeComms.AWGN links and according to this equation:
.
|