Skip to main content

Why is SVD useful in multi-antenna communication? | Channel Matrix, U, S, V


 

svd based transmission

These days, multi-antenna transmission and reception systems are practically universal. MIMO is one of the popular types of multi-antenna systems. By enabling numerous orthogonal data streams between the transmitter and receiver (or receivers) , such antennas have the primary advantage of increasing spectral efficiency. 

A matrix can be transformed linearly with the aid of SVD. We are aware that when determining an eigenvalue, the formula Av - Îģv = 0, is used, where v is an eigenvector with a corresponding eigenvalue of. For calculating SVD of a matrix A, firstly we compute A*AT ,then we compute A*AT - Îģv = 0. To minimize the linear operations in a matrix, eigen vectors are used to simplify the matrix equations.

However, eigenvectors need not always be linearly independent (or orthogonal). However, orthogonal data streams are necessary to boost overall throughput and decrease interference between them in order to permit multiple data streams between multi-antenna communication.

In singular value decomposition, you'll get three matrices, U, S, and V. Where U and V are orthonormal eigenvectors of  A*AT    

and S is a diagonal matrix. U*UT = V*VT = I (identity matrix).

The SVD of matrix A is given by the formula:

A = USVT

Keep in mind that the singular values for matrix A will be the squareroots of the obtained eigen values as we compute the eigen values of A*AT.

The aforementioned equations make it evident that the entire received signal will appear as follows if we employ precoding matrix V at the transmitter side and post-precoding matrix UT at the receiver side.

y = UT (USVT) Vx = Sx

 Where, S is a diagonal matrix, y is the signal being received, and x is the signal being sent. The multiple data streams between the transmitter and receivers are currently independent and interference-free (theoretically).

 

MATLAB Code for Singular Value Decomposition

clc;
clear;
close all;

% Define the matrix A
A = [1 2; 3 4];

% Compute the Singular Value Decomposition
[U, S, V] = svd(A);

% Display the results
disp('Matrix A:');
disp(A);

disp('Matrix U:');
disp(U);

disp('Matrix S:');
disp(S);

disp('Matrix V:');
disp(V);

% Verify the decomposition
A_reconstructed = U * S * V';
disp('Reconstructed Matrix A:');
disp(A_reconstructed);

% Compute A^T A
ATA = A' * A;
disp('Matrix A^T A:');
disp(ATA);

% Compute eigenvalues and eigenvectors of A^T A
[eigV, eigD] = eig(ATA);
disp('Eigenvalues of A^T A:');
disp(diag(eigD));
disp('Eigenvectors of A^T A:');
disp(eigV);

% Compute A A^T
AAT = A * A';
disp('Matrix A A^T:');
disp(AAT);

% Compute eigenvalues and eigenvectors of A A^T
[eigU, eigD2] = eig(AAT);
disp('Eigenvalues of A A^T:');
disp(diag(eigD2));
disp('Eigenvectors of A A^T:');
disp(eigU);

Output

Matrix A:
     1     2
     3     4

Matrix U:
   -0.4046   -0.9145
   -0.9145    0.4046

Matrix S:
    5.4650         0
         0    0.3660

Matrix V:
   -0.5760    0.8174
   -0.8174   -0.5760

Reconstructed Matrix A:
    1.0000    2.0000
    3.0000    4.0000

Matrix A^T A:
    10    14
    14    20

Eigenvalues of A^T A:
    0.1339
   29.8661

Eigenvectors of A^T A:
   -0.8174    0.5760
    0.5760    0.8174

Matrix A A^T:
     5    11
    11    25

Eigenvalues of A A^T:
    0.1339
   29.8661

Eigenvectors of A A^T:
   -0.9145    0.4046
    0.4046    0.9145

 

Copy the code from here

 
<<Previous Page


Contact Us

Name

Email *

Message *

Popular Posts

LDPC Encoding and Decoding Techniques

Low Density Parity Check (LDPC) Guide Comprehensive analysis of linear error-correcting block codes, Tanner graphs, and 5G-NR implementations. 📘 Overview 🧮 Encoding 🧩 Decoding 📚 Resources Theory Encoding Tech Tanner Graph 5G Encoding Decoding 'LDPC' is the abbreviation for 'low density parity check'. LDPC code H matrix contains very few amount of 1's and mostly zeroes. LDPC codes are error correcting code. Using LDPC codes, channel capacities that are close to the theoretical Shannon limit can be achieved. Low density parity check (LDPC) codes are linear error-correcting block code suitable for error correction in a large block sizes transmi...

Flat vs Frequency Selective Online Simulator

Flat vs Frequency Selective Online Simulator Channel Type Without Fading Flat Fading Multipaths Nakagami m SNR(dB) Run Simulation Input Signal Signal After Fading Constellation Diagram BER vs SNR Explore Advanced Flat vs Frequency-Selective Fading Simulator Want to see these equations in action? Visualize it. Launch Simulator Tool Interactive Rayleigh Fading Simulator Want to see Rayleigh fading in action? Visualize it. Launch Simulator Tool Return to DSP Simulations Main Page →

Q-function in BER vs SNR Calculation (with Simulation)

Q-function in BER vs. SNR Calculation In digital communications and signal processing, the Q-function plays a significant role in predicting system reliability. It allows engineers to quantify the probability that Gaussian noise will exceed a specific threshold, causing a bit error. What is the Q-function? The Q-function is a mathematical function representing the tail probability of the standard normal (Gaussian) distribution. It is the complementary cumulative distribution function (CCDF) of a standard Gaussian distribution. Q(x) = (1 / √(2Ī€)) ∫ₓ∞ e^(-t² / 2) dt The Role of the Q-function in BER vs. SNR The Q-function is the standard tool for calculating BER in systems like BPSK or QPSK over AWGN (Additive White Gaussian Noise) channels. For BPSK: In BPSK, we transmit +√E b (bit 1) and -√E b (bit 0). The decision boundary is set at 0 . If -√E b was sent, an error occurs if noise r > √...

Design of CMOS Flip-Flops (SR, D, JK)

Design of CMOS Flip-Flops (SR, D, JK) A flip-flop or latch is a circuit with two stable states, used to store state information. It is the basic storage element in sequential logic and a fundamental building block in digital electronics systems, including computers and communication devices. Flip-flops and latches act as data storage elements for states, pulse counting, and synchronization of variably-timed input signals to a reference clock. Flip-flops can be transparent/opaque (latches) or clocked (synchronous, edge-triggered). Latches are level-sensitive, while flip-flops are edge-sensitive. In sequential logic, the output depends on current inputs and previous states. Fig.1 shows a sequential circuit combining a combinational block and a memory element. ...

Online Simulator for ASK, FSK, and PSK Signal Generation

Interactive Digital Signal Processing (DSP) Tutorial and Simulator for ASK, FSK, and BPSK modulation techniques. Try our new Digital Signal Processing Simulator!   •   Interactive ASK, FSK, and BPSK tools updated for 2025. Start Now Digital Modulation Visualizer: ASK, FSK, & BPSK Simulator Learn and visualize binary modulation techniques (ASK, FSK, BPSK) in real-time with adjustable carrier and sampling parameters. Perfect for DSP students and engineers. 📡 ASK Simulator đŸ“ļ FSK Simulator 🎚️ BPSK Simulator 📚 More Topics ASK Modulator FSK Modulator BPSK Modulator Demodulation More Topics 1. ASK (Ampli...

OFDM Symbols and Subcarriers Explained

This article explains how OFDM (Orthogonal Frequency Division Multiplexing) symbols and subcarriers work. It covers modulation, mapping symbols to subcarriers, subcarrier frequency spacing, IFFT synthesis, cyclic prefix, and transmission. Step 1: Modulation First, modulate the input bitstream. For example, with 16-QAM , each group of 4 bits maps to one QAM symbol. Suppose we generate a sequence of QAM symbols: s0, s1, s2, s3, s4, s5, …, s63 Step 2: Mapping Symbols to Subcarriers Assume N sub = 8 subcarriers. Each OFDM symbol in the frequency domain contains 8 QAM symbols (one per subcarrier): Mapping (example) OFDM symbol 1 → s0, s1, s2, s3, s4, s5, s6, s7 OFDM symbol 2 → s8, s9, s10, s11, s12, s13, s14, s15 … OFDM sym...

Gaussian minimum shift keying (GMSK)

📘 Overview & Theory 🧮 Simulator for GMSK 🧮 MSK and GMSK: Understanding the Relationship 🧮 MATLAB Code for GMSK 📚 Simulation Results for GMSK 📚 Q & A and Summary 📚 Further Reading Dive into the fascinating world of GMSK modulation, where continuous phase modulation and spectral efficiency come together for robust communication systems! Core Process of GMSK Modulation Phase Accumulation (Integration of Filtered Signal) After applying Gaussian filtering to the Non-Return-to-Zero (NRZ) signal, we integrate the smoothed signal to produce a continuous phase signal. For GMSK, the modulation index is $h=0.5$, meaning a bit '1' results in a phase shift of $\pi/2$: θ(t) = 2Ī€h ∫ 0 t m filtered (Ī„) dĪ„ This integration is crucial for avoiding abrupt phase transitions, ensuring smooth and continuous phase changes. Phase Mo...