Skip to main content

Gaussian random variable and its PDF in MATLAB


Home / Wireless Communication / Gaussian random variable and its PDF



What exactly are Gaussian Random Variable and its probability distribution function (PDF) are


 The practical communication system is modeled as 

y = x + n;

Where y=received  signal 

x= transmitted signal 

n= noise


What is the significance of the Gaussian Random Variable?  

We know, especially for wireless communication, whenever we transmit a signal from transmitter to receiver, there will be some additive white Gaussian noise to the signal when we receive it from the receiver. The additive white Gaussian noise has some properties, like zero mean and a specific standard deviation. We learn later what exactly they mean, what Deviations are, and the relation of the Gaussian random variable with it. Here, the word "random" is used because noise is always unexpected in the communication system. We can't predict it before the transmission of the signal. But we can draw its probability distribution function (PDF) from several experiments or values. 



What exactly is Gaussian Random Variable PDF is

PDF of Gaussian random variable is defined as


Here, σ = Standard Deviation of random variable samples

μ = mean of random variable samples

In the above figure probability distribution function of the Gaussian random variable is shown. Students often need clarification with the title of the x label and y label. x tag defines the variation of the standard deviation value of Gaussian noise collected from large samples or populations or many experiments. After getting the standard Deviation of noise,e we plot the probability of standard deviations derived from large samples. 


MATLAB Code for gaussian random variable and its PDF

clear;

close all;


% Number of samples to generate

n = 100000;


% Generate Gaussian distribution (Standard Normal Distribution)

gaussian_values = randn(1, n);  % Standard normal distribution (mean = 0, std = 1)


% Calculate mean and standard deviation of the Gaussian values

mu = mean(gaussian_values);

sigma = std(gaussian_values);


% Calculate the range for 1, 2, and 3 standard deviations

range_1sigma = sum(gaussian_values >= (mu - sigma) & gaussian_values <= (mu + sigma)) / n * 100;  % Percentage within 1 standard deviation

range_2sigma = sum(gaussian_values >= (mu - 2*sigma) & gaussian_values <= (mu + 2*sigma)) / n * 100;  % Percentage within 2 standard deviations

range_3sigma = sum(gaussian_values >= (mu - 3*sigma) & gaussian_values <= (mu + 3*sigma)) / n * 100;  % Percentage within 3 standard deviations


% Display the results

fprintf('Percentage of values within 1 standard deviation: %.2f%%\n', range_1sigma);

fprintf('Percentage of values within 2 standard deviations: %.2f%%\n', range_2sigma);

fprintf('Percentage of values within 3 standard deviations: %.2f%%\n', range_3sigma);


% Plotting the Gaussian distribution

figure;

histogram(gaussian_values, 30, 'Normalization', 'pdf');  % Normalized to show probability density

title('Gaussian Distribution (Standard Normal)');

xlabel('Value');

ylabel('Probability Density');


Output

Percentage of values within 1 standard deviation: 68.36%

Percentage of values within 2 standard deviations: 95.40%

Percentage of values within 3 standard deviations: 99.73%









Copy the aforementioned MATLAB Code from here003


Real-world mathematical examples to understand mean and standard Deviation

Mean of a Random Variable

As we have mentioned above, noise is random in a communication system. So, we take hundreds of values of that parameter and draw a PDF. For example, we have received ten random variables, i.e., X1, X2, X3, X4,..., X9, and X10. Then we calculate its mean or average. That is also meaningful.


Xmean = (X1 + X2 + X3+... +X8 +X9 +X10)/10


Standard Deviation of a Random Variable

In electronic communication, the standard signal deviation tells us how the signal varies over time. For example, we measure a signal in different time instants, from a different position, or at another aspect. Then we can calculate the standard Deviation to see how the signal varies. That value also matters for electronic devices. Similarly, we calculate the standard deviation value from many samples in the case of a Gaussian random variable. For example, in a class, marks obtained in math by students are as follows:

Student 1: 92 out of 100

Student 2: 85 out of 100

Student 3: 74 out of 100

Student 4: 70 out of 100

Student 5: 60 out of 100

Student 6: 66 out of 100

Student 7: 82 out of 100

Student 8: 63 out of 100

Student 9: 76 out of 100

Student 10: 59 out of 100


The average marks obtained by students are calculated as

=(92+85+74+70+60+66+82+63+76+59)/10

=72.7

The mean value is 72.7


Now, we'll calculate Standard Deviation,

Std or σ= sqrt{(1/(N-1) * Σ(Ni -N0)^2}

Here, N= total number of sample

Ni denotes the instantaneous value of  N

N0 denotes the mean of N

'sqrt' denotes 'square root' here


The standard Deviation for obtained marks by students is,

Std or σ =sqrt{1/(10-1) * Σ (Ni -72.7)^2} 

(as here several samples or population is 10 & mean/avg. =72.7)

Or, σ = sqrt [1/9 * {(92-72.7)^2 + (85-72.7)^2 + (74-72.7)^2 + (70-72.7)^2 + (60-72.7)^2 + ... +(76-72.7)^2 + (59-72.7)^2}]

Or, σ = 10.57

Standard Deviation, in many cases defined as the notation σ (sigma). The standard Deviation (σ ) indicates how far a 'typical' observation deviates from the data's average or mean value, μ.



People are good at skipping over material they already know!

View Related Topics to







Admin & Author: Salim

s

  Website: www.salimwireless.com
  Interests: Signal Processing, Telecommunication, 5G Technology, Present & Future Wireless Technologies, Digital Signal Processing, Computer Networks, Millimeter Wave Band Channel, Web Development
  Seeking an opportunity in the Teaching or Electronics & Telecommunication domains.
  Possess M.Tech in Electronic Communication Systems.


Contact Us

Name

Email *

Message *

Popular Posts

BER vs SNR for M-ary QAM, M-ary PSK, QPSK, BPSK, ...

📘 Overview of BER and SNR 🧮 Online Simulator for BER calculation of m-ary QAM and m-ary PSK 🧮 Online Simulator for Constellation Diagram of m-ary QAM 🧮 Online Simulator for Constellation Diagram of m-ary PSK 🧮 MATLAB Code for BER calculation of M-ary QAM, M-ary PSK, QPSK, BPSK, ... 🧮 MATLAB Code for BER calculation of ASK, FSK, and PSK 🧮 MATLAB Code for BER calculation of Alamouti Scheme 🧮 Different approaches to calculate BER vs SNR 📚 Further Reading Modulation Constellation Diagrams BER vs. SNR BER vs SNR for M-QAM, M-PSK, QPSk, BPSK, ... What is Bit Error Rate (BER)? The abbreviation BER stands for bit error rate, which indicates how many corrupted bits are received (after the demodulation process) compared to the total number of bits sent in a communication process. It is defined as,  In mathematics, BER = (number of bits received in error / total number of ...

Comparisons among ASK, PSK, and FSK | And the definitions of each

https://www.salimwireless.com/2024/11/constellation-diagram-in-matlab.html 📘 Overview 🧮 Simulator 🧮 Noise Sensitivity, Bandwidth, Complexity, etc. 🧮 MATLAB Code for BER vs. SNR Analysis of ASK, FSK, and PSK 🧮 MATLAB Code for Constellation Diagrams of ASK, FSK, and PSK 🧮 Simulator for ASK, FSK, and PSK Generation 🧮 Simulator for ASK, FSK, and PSK Constellation 🧮 Some Questions and Answers 📚 Further Reading Modulation ASK, FSK & PSK Constellation MATLAB Simulink MATLAB Code Comparisons among ASK, PSK, and FSK    Comparisons among ASK, PSK, and FSK   Simulator for Calculating Bandwidth of ASK, FSK, and PSK The baud rate represents the number of symbols transmitted per second. Both baud rate and bit rate are same for binary ASK, FSK, and PSK. Select Modulation Type: ASK FSK PSK Baud Rat...

MATLAB Code for Pulse Amplitude Modulation (PAM) and Demodulation

📘 Overview & Theory 🧮 MATLAB Code 1 🧮 MATLAB Code 2 🧮 MATLAB Code for Pulse Amplitude Modulation and Demodulation of Digital data 🧮 Other Pulse Modulation Techniques (e.g., PWM, PPM, DM, and PCM) 📚 Further Reading   Pulse Amplitude Modulation (PAM) & Demodulation MATLAB Script clc; clear all; close all; fm= 10; % frequency of the message signal fc= 100; % frequency of the carrier signal fs=1000*fm; % (=100KHz) sampling frequency (where 1000 is the upsampling factor) t=0:1/fs:1; % sampling rate of (1/fs = 100 kHz) m=1*cos(2*pi*fm*t); % Message signal with period 2*pi*fm (sinusoidal wave signal) c=0.5*square(2*pi*fc*t)+0.5; % square wave with period 2*pi*fc s=m.*c; % modulated signal (multiplication of element by element) subplot(4,1,1); plot(t,m); title('Message signal'); xlabel ('Time'); ylabel('Amplitude'); subplot(4,1,2); plot(t,c); title('Carrier signal'); xlabel('Time'); ylabel('Amplitu...

Constellation Diagrams of ASK, PSK, and FSK

📘 Overview 🧮 Online Simulator for constellation diagrams of ASK, FSK, and PSK 🧮 Theory 🧮 MATLAB Codes 🧮 Simulator for constellation diagrams of m-ary PSK 🧮 Simulator for constellation diagrams of m-ary QAM 📚 Further Reading BASK (Binary ASK) Modulation: Transmits one of two signals: 0 or -√Eb, where Eb​ is the energy per bit. These signals represent binary 0 and 1.    BFSK (Binary FSK) Modulation: Transmits one of two signals: +√Eb​ ( On the y-axis, the phase shift of 90 degrees with respect to the x-axis, which is also termed phase offset ) or √Eb (on x-axis), where Eb​ is the energy per bit. These signals represent binary 0 and 1.  BPSK (Binary PSK) Modulation: Transmits one of two signals: +√Eb​ or -√Eb (they differ by 180 degree phase shift), where Eb​ is the energy per bit. These signals represent binary 0 and 1.    Simulator for BASK, BPSK, and BFSK Constellation Diagrams ...

Relationship between Gaussian and Rayleigh distributions

📘 Introduction, Gaussian Distribution, Relationship Between Gaussian and Rayleigh Distribution 🧮 How to mitigate Rayleigh fading? 🧮 Equalizer to reduce Rayleigh Fading (or Multi-path Effects) in MATLAB 🧮 MATLAB Code for Effects of AWGN and Rayleigh Fading in Wireless Communication 🧮 Simulator for the effect of AWGN and Rayleigh Fading on a BPSK Signal 📚 Further Reading Wireless Signal Processing Gaussian and Rayleigh distributions ...   The Rayleigh distribution in classical fading models (like wireless communication) arises from modeling the real and imaginary parts of a complex baseband signal as independent, zero-mean Gaussian random variables — under specific assumptions . 1. Gaussian Distribution  The Gaussian distribution has a lot of applications in wireless communication. Since noise in wireless communication systems is unpredictable, we frequently assume that it has a Gaussian distribution...

Channel Impulse Response (CIR)

Channel Impulse Response (CIR) 📘 Overview & Theory 📘 How does the channel impulse response affect the signal? 🧮 Online Channel Impulse Response Simulator 🧮 MATLAB Codes 📚 Further Reading Wireless Signal Processing CIR, Doppler Shift & Gaussian Random Variable  The Channel Impulse Response (CIR) is a concept primarily used in the field of telecommunications and signal processing. It provides information about how a communication channel responds to an impulse signal.   What is the Channel Impulse Response (CIR) ? It describes the behavior of a communication channel in response to an impulse signal. In signal processing,  an impulse signal has zero amplitude at all other times and amplitude  ∞ at time 0 for the signal. Using a Dirac Delta function, we can approximate this.  ...(i) δ( t) now has a very intriguing characteristic. The answer is 1 when the Fourier Transform of  δ(...

MATLAB Code for Constellation Diagram of QAM configurations such as 4, 8, 16, 32, 64, 128, and 256-QAM

📘 Overview of QAM 🧮 MATLAB Code for 4-QAM 🧮 MATLAB Code for 16-QAM 🧮 MATLAB Code for m-ary QAM (4-QAM, 16-QAM, 32-QAM, ...) 🧮 Online Simulator for M-ary QAM Constellations (4-QAM, 16-QAM, 64-QAM, ...) 📚 Further Reading   One of the best-performing modulation techniques is QAM [↗] . Here, we modulate the symbols by varying the carrier signal's amplitude and phase in response to the variation in the message signal (or voltage variation). So, we may say that QAM is a combination of phase and amplitude modulation. Additionally, it performs better than ASK or PSK [↗] . In fact, any constellation for any type of modulation, signal set (or, symbols) is structured in a way that prevents them from interacting further by being distinct by phase, amplitude, or frequency. MATLAB Script (for 4-QAM) % This code is written by SalimWirelss.Com % This is an example of 4-QAM. Here constellation size is 4 % or total number of symbols/signals is 4 % We need...

Comparing Baseband and Passband Implementations of ASK, FSK, and PSK

  Baseband modulation techniques are methods used to encode information signals onto a baseband signal (a signal with frequencies close to zero), allowing for efficient transmission over a communication channel. These techniques are fundamental in various communication systems, including wired and wireless communication. Here are some common baseband modulation techniques: Amplitude Shift Keying (ASK) [↗] : In ASK, the amplitude of the baseband signal is varied to represent different symbols. Binary ASK (BASK) is a common implementation where two different amplitudes represent binary values (0 and 1). ASK is simple but susceptible to noise. ASK Baseband ASK Passband        Fig 1:  Amplitude Modulation and Demodulation (Get MATLAB Code ) In Figure 1 above, you can see binary information bits are simply represented by carrier signals in the case of binary information '1'. That's why it is called baseband signal. Frequency Shift K...