Plot FFT using Python – FFT of sine wave & cosine wave

FFT Lab path:Complex DFT, bins & fftshift → Magnitude & phase → Spectral leakage → Plot: Matlab / PythonTool: FFT bin frequency & resolution calculator Key focus: Learn how to plot FFT of sine wave and cosine wave using Python. Understand FFTshift. Plot one-sided, double-sided and normalized spectrum using FFT. Introduction Numerous texts are available … Read more

Introduction to Signal Processing for Machine Learning

Key focus: Fundamentals of signal processing for machine learning. Speaker identification is taken as an example for introducing supervised learning concepts. Signal Processing A signal, mathematically a function, is a mechanism for conveying information. Audio, image, electrocardiograph (ECG) signal, radar signals, stock price movements, electrical current/voltages etc.., are some of the examples. Signal processing is … Read more

Fibonacci sequence in python – a short tutorial

Key focus: Learn to generate Fibonacci sequence using Python. Python 3 is used in this tutorial. Fibonacci series is a sequence of numbers 0,1,1,2,3,5,8,13,… Let’s digress a bit from signal processing and brush up basic some concepts in python programming. Why python? Python is an incredibly versatile programming language that is used for everything from … Read more

Maximum Ratio Combining (MRC): Getting the Absolute Most from Your Antennas

MRC weights each diversity branch by its channel gain to maximize post-combiner SNR — formula, intuition, and comparison to selection combining.

Understanding Selection Combining: The Simplest Way to Fight Fading

MIMO — Diversity path 1. Intro → 2. Diversity vs mux → 3. SIMO → 4. Selection combining → 5. MRC Tools: Diversity & multiplexing demo Introduction Selection combining is the diversity scheme you can explain at a whiteboard in one minute: measure the SNR on each antenna, keep the best, ignore the rest. The … Read more

SIMO receive-diversity channel models — from one transmit antenna to several receivers

MIMO — Diversity path 1. Intro → 2. Diversity vs mux → 3. SIMO → 4. Selection combining → 5. MRC Tools: Diversity & multiplexing demo Introduction Turn off every transmit antenna but one, and keep several receive antennas. That SIMO setup is the cleanest way into spatial diversity in class: no space-time code to … Read more

Generate color noise using Auto-Regressive (AR) model

Key focus: Learn how to generate color noise using auto regressive (AR) model. Apply Yule Walker equations for generating power law noises: pink noise, Brownian noise. Auto-Regressive (AR) model An uncorrelated Gaussian random sequence \(x[n]\) can be transformed into a correlated Gaussian random sequence \(y[n]\) using an AR time-series model. If a time series random … Read more

Shannon limit on power efficiency – demystified

The Shannon power efficiency limit is the limit of a band-limited system irrespective of modulation or coding scheme. It informs us the minimum required energy per bit required at the transmitter for reliable communication. It is also called unconstrained Shannon power efficiency Limit. If we select a particular modulation scheme or an encoding scheme, we … Read more

Generating colored noise with Jakes PSD: Spectral factorization

The aim of this article is to demonstrate the application of spectral factorization method in generating colored noise having Jakes power spectral density. Before continuing, I urge the reader to go through this post: Introduction to generating correlated Gaussian sequences. In spectral factorization method, a filter is designed using the desired frequency domain characteristics (like … Read more

Generate correlated Gaussian sequence (colored noise)

Key focus: Colored noise sequence (a.k.a correlated Gaussian sequence), is a non-white random sequence, with non-constant power spectral density across frequencies. Introduction Speaking of Gaussian random sequences such as Gaussian noise, we generally think that the power spectral density (PSD) of such Gaussian sequences is flat.We should understand that the PSD of a Gausssian sequence … Read more