Communications Blockset | ![]() ![]() |
Generate Gaussian distributed noise with given mean and variance values
Library
Noise Generators sublibrary of Comm Sources
Description
The Gaussian Noise Generator block generates discrete-time white Gaussian noise. You must specify the Initial seed vector in the simulation.
The Mean Value and the Variance can be either scalars or vectors. If either of these is a scalar, then the block applies the same value to each element of a sample-based output or each column of a frame-based output. Individual elements or columns, respectively, are uncorrelated with each other.
When the Variance is a vector, its length must be the same as that of the Initial seed vector. In this case, the covariance matrix is a diagonal matrix whose diagonal elements come from the Variance vector. Since the off-diagonal elements are zero, the output Gaussian random variables are uncorrelated.
When the Variance is a square matrix, it represents the covariance matrix. Its off-diagonal elements are the correlations between pairs of output Gaussian random variables. In this case, the Variance matrix must be positive definite, and it must be N
-by-N
, where N
is the length of the Initial seed.
The probability density function of n-dimensional Gaussian noise is
where x is a length-n vector, K is the n-by-n covariance matrix, µ is the mean value vector, and the superscript T indicates matrix transpose.
Initial Seed
The Initial seed parameter initializes the random number generator that the Gaussian Noise Generator block uses to add noise to the input signal. For best results, the Initial seed should be a prime number greater than 30. Also, if there are other blocks in a model that have an Initial seed parameter, you should choose different initial seeds for all such blocks.
You can choose seeds for the Gaussian Noise Generator block using the Communications Blockset's randseed
function. At the MATLAB prompt, type the command
This returns a random prime number greater than 30. Typing randseed
again produces a different prime number. If you add an integer argument, randseed
always returns the same prime for that integer. For example, randseed(5)
always returns the same answer.
Attributes of Output Signal
The output signal can be a frame-based matrix, a sample-based row or column vector, or a sample-based one-dimensional array. These attributes are controlled by the Frame-based outputs, Samples per frame, and Interpret vector parameters as 1-D parameters. See Signal Attribute Parameters for Random Sources in Using the Communications Blockset for more details.
If the Initial seed parameter is a vector, then its length becomes the number of columns in a frame-based output or the number of elements in a sample-based vector output. In this case, the shape (row or column) of the Initial seed parameter becomes the shape of a sample-based two-dimensional output signal. If the Initial seed parameter is a scalar but either the Mean value or Variance parameter is a vector, then the vector length determines the output attributes mentioned above.
Dialog Box
See Also
Random Source (DSP Blockset), AWGN Channel, rand
(built-in MATLAB function), randseed
![]() | FM Modulator Passband | General Block Deinterleaver | ![]() |