top of page

Creating Gaussian White Noise Excitation with Constant Power Spectral Density

May 17, 2024


Gaussian White Noise Excitation (GWNE) is an important signal in the fields of signal processing, telecommunications, and control systems. It is used to simulate random variations in signals and develop robust algorithms for processing systems. This article focuses on ways to create GWNE with constant power spectral density, which is a key property for applications involving noise analysis and system design.

Concept of GWNE

Gaussian White Noise is a random signal with a Gaussian distribution of amplitude variations. It has two main properties that make it particularly useful for simulating stochastic processes:

  1. Constant Power Spectral Density (PSD): This means that the signal has equal energy content at all frequencies, making it a true representation of a random process.

  2. Zero Mean: The average value of the white noise samples Zero Mean: The average value of the white noise samples is zero, implying that the signal has equal amounts of positive and negative variations.

Creating GWNE with Constant PSD

There are various methods to generate a GWNE signal with constant power spectral density. Here, we present two popular techniques using MATLAB, a popular computing platform used for developing and analyzing complex signal processing systems.

Method 1: Using randn function

The most straightforward way to create GWNE in MATLAB is to use the built-in randn function. This approach generates white Gaussian noise samples with zero mean and standard deviation of one. The syntax for generating white noise is:

white_noise = sqrt(PSD) * randn(1, sample_length);

Where PSD is the desired power spectral density and sample_length is the number of noise samples required.

Method 2: Filtered Noise

Another method for generating GWNE with constant PSD is to use the frequency-domain approach. In this method, we synthesize a noise signal from uncorrelated uniform random samples and then apply an inverse Fourier transform to generate Gaussian white noise in the time domain. The steps for this method are as follows:

  1. Generate random samples with uniform distribution within the range of [-0.5, 0.5].

  2. Apply the inverse Fourier transform to create a complex signal with constant magnitude.

  3. Take the real part of the complex signal to obtain Gaussian white noise.

The MATLAB code for this method is:

rnd_samples = rand(1, sample_length) - 0.5;
const_mag = abs(fft(sqrt(PSD) * rnd_samples));
real_noise = ifft(const_mag,'symmetric');


Gaussian White Noise Excitation is an essential tool for modeling random processes in various applications. The methods discussed in this article provide a foundation for generating GWNE signals with constant power spectral density using MATLAB. This knowledge can be used in signal processing, telecommunications, and control systems to design and analyze algorithms for robust performance in the presence of noise.

bottom of page