Accelerating the pace of engineering and science

# Gaussian Noise Generator

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

$f\left(x\right)={\left({\left(2\pi \right)}^{n}\mathrm{det}K\right)}^{-1/2}\mathrm{exp}\left(-{\left(x-\mu \right)}^{T}{K}^{-1}\left(x-\mu \right)/2\right)$

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 System Toolbox™ randseed function. At the MATLAB prompt, enter

`randseed`

This returns a random prime number greater than 30. Entering randseed again produces a different prime number. If you supply 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 Sources and Sinks in the Communications System Toolbox User's Guide 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

Mean value

The mean value of the random variable output.

Variance

The covariance among the output random variables.

Initial seed

The initial seed value for the random number generator.

Sample time

The period of each sample-based vector or each row of a frame-based matrix.

Frame-based outputs

Determines whether the output is frame-based or sample-based. This box is active only if Interpret vector parameters as 1-D is unchecked.

Samples per frame

The number of samples in each column of a frame-based output signal. This field is active only if Frame-based outputs is checked.

Interpret vector parameters as 1-D

If this box is checked, then the output is a one-dimensional signal. Otherwise, the output is a two-dimensional signal. This box is active only if Frame-based outputs is unchecked.

Output data type

The output can be set to double or single data types.