SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
01 November 2016
1
SIMULATION AND PERFORMANCE ANALYSIS OF A
MIMO SYSTEM WITH SPATIAL MULTIPLEXING IN THE
PRESENCE OF POLARIZATION DIVERSITY
Naveen Bhimappa Kori
Dept. of Electrical Engineering
University of Texas, Arlington, TX 76019
Abstract—In practice the antennas in a MIMO system
need to be spaced sufficiently apart for a reliable
performance measured in terms of symbol error rate.
However, dual polarized antennas can be used in cases
where spacing constraints are too rigid. These dual
polarized antennas operate with orthogonally polarized
waves. Here, we will see how to simulate the MIMO system
with dual polarized antennas using MATLAB and analyze
the performance of the system.
I. INTRODUCTION
Recent studies have shown that the usage of multiple
antennas both at the transmitting and receiving end
improves the capacity of the system.
The MIMO is one such system that utilizes the
diversity of the channel to enhance the performance of
the system, which is known as spatial multiplexing. Since
the system’s underlying principle depends on the
diversity of the channel, it would be required that the
antennas at either the transmitting or receiving end are
placed wide enough so that the fading channels are not
correlated, but practically the channels are not completely
independent of each other and exhibit certain fading
correlation. Hence a correlation threshold of 0.5 to 0.7 is
defined in Engineering practice. In cases where the
minimum antenna spacing cannot be achieved, dual
polarized antennas with orthogonal polarization can be
made use of. Here we define a simple model for the
channel considering the spatial correlation fading and the
cross-polarization discrimination (XPD). The channel is
assumed to be Rayleigh fading channel and the symbols
under consideration are QPSK modulated. We then
perform a joint detection on the transmitted symbols
under the influence of the channel perturbations and
Additive White Gaussian Noise (AWGN). We repeat the
procedure for different SNR values and evaluate the
performance by calculating the symbol error rate.
II. MOTIVATION
The fundamental concept underlying MIMO system is
the idea of splitting a data stream into several streams
transmitted in parallel over individual subchannels.
The capacity of a system where the data stream is
divided into r parallel streams is simply the sum of the
individual subchannel capacities and, therefore, reads
as
where PT is the transmitted power and σn
2
is the variance
of noise each subchannel perturbs the signal with.
Asymptotically, the capacity becomes a linear function of
the transmit power. If all the subchannels are
independent, then such a MIMO channel is usually
referred to as being diagonal. However, in practice
MIMO channels rarely are diagonal, nor is the number of
data streams equal to the number of transmit or receive
antennas, as the algebraic rank of the MIMO channel
dictates the number of data streams which are supported
for simultaneous transmission. Now, let us define the
channel model we will be using for the simulation
purpose.
III. THE CHANNEL MODEL
We consider a system with one dual polarized
transmitter and one dual polarized receiver. The relation
between the received signal vector and the transmitted
symbols is given as
where x = [x0 x1]T
is the transmitted symbol vector,
01 November 2016
2
r = [r0 r1]T
is the received symbol vector, E being the
energy of the transmitted symbols and n being the
complex valued Gaussian noise vector.
H is the channel matrix with the elements indicating
the co and cross polarized components, cross correlation
and cross coupling of energy from one polarization to
another polarization state. Since the channel is Rayleigh
fading the channel matrix elements are Gaussian random
variables with zero mean. The correlation between the
elements of H and variances depend on the channel
condition and choice of polarizations, respectively.
We assume that E[|h00|]2
= E[|h11||]2
= 1 and E[|h01|]2
=
E[|h10||]2
= α, where 0 < α ≤ 1 depends on the XPD.
Furthermore, the correlation coefficients are defined as
E[h00 h01] = E[h10 h11] = √α t and E[h00 h10] = E[h101h11] =
√α r. For the simulation purpose we have considered the
following values of α = 0.4, r = 0.3 and t = 0.5 and the
noise expectation E[n nH
] = σ2
In ,where In is the 2x2
identity matrix.
IV. SIMULATION
Now we will have a look at the steps followed to
simulate such a MIMO system. First, we generate the
matrix coefficients along with symbol vectors and then
add AWGN noise to the symbols after which we perform
optimal detection on the noise corrupted symbols. We run
these trials for a very large number of (around 2×10^4
)
different channel matrices and 11 different SNR values
from 0 to 20 in steps of 2 to get acceptable results for the
performance.
We start by creating a channel matrix with
coefficients that are complex random variables with
Gaussian distribution and then transform it into a
correlated matrix by using singular value decomposition
of the autocorrelation matrix and we have already seen
how the elements of the correlation matrix are obtained.
We create all possible symbol combinations of the QPSK
symbols which could be transmit using the two antennas,
this serves as our constellation point reference which we
will see later being used in the detection procedure to
identify which of the symbols was transmitted. Since two
symbols are transmitted simultaneously, we generate two
random symbols from the above defined constellation
and normalize them to have unit energy. In a similar
fashion, we create the noise vector which are again
Gaussian distributed and have zero mean. The amplitude
of the noise is calculated depending on the SNR value
using the below equation.
where σn is the noise amplitude and SNR is measured
in dB. The symbol vectors created above will then be
multiplied with the channel matrix and added to them is
the complex valued white Gaussian noise. These symbols
are then captured as received signal vectors. Another set
of vectors are created by multiplying all the symbols
from the constellation points with the channel matrix
which forms the reference point against which the
distance of the received symbol can be measured. The
differences between both the transmitted symbols and
their respective constellation points is evaluated. Based
on the maximum likelihood detection rule the symbol in
the constellation with the minimum distance from the
received vector is decided as the received symbol. One
thing to note here is that we are performing a joint
detection, i.e., we are considering the minimum distance
of both the symbols from their respective constellations
and the decision is made in favor of that pair which has a
minimum value of distance from the received vector.
We then check if the decision made was correct by
comparing it with the transmitted symbol and the symbol
error count is recorded. This procedure is repeated for all
the different channel coefficients under each SNR value.
Finally, we plot a graph of the symbol error count
versus the SNR values on the semi logarithmic scale,
which gives us the performance of the system as a
measure of the probability of symbol error.
01 November 2016
3
Below is the MATLAB code used for the simulation along with the plot of the SNR Vs Symbol error count.
clear all;
clc;
N = 20000;
M = 4;
% Creation of H Matrix
H = zeros(N,M);
H_correlated = zeros(N,M);
H = (rand(N,M)+j*rand(N,M))/sqrt(2);
a = 0.4
t = 0.5;
r = 0.3;
R = [1 sqrt(a)*t sqrt(a)*r 0;
sqrt(a)*t a 0 sqrt(a)*r;
sqrt(a)*r 0 a sqrt(a)*t;
0 sqrt(a)*r sqrt(a)*t 1];
[U,D] = eig(R);
H_transform = sqrt(D)*(U).';
H_correlated = H * H_transform;
%Symbol combinations
aa = (1+j)/sqrt(2);
bb = (1-j)/sqrt(2);
cc = (-1+j)/sqrt(2);
dd = (-1-j)/sqrt(2);
Symbol_matrix = [aa aa;aa bb;aa cc;aa dd;
bb aa;bb bb;bb cc;bb dd;
cc aa;cc bb;cc cc;cc dd;
dd aa;dd bb;dd cc;dd dd];
SNR = [0:2:20];
for i = 1:11
noise_amp = (10^-(SNR(i)/20))*sqrt(2);
for k = 1:N
symbol_tx = (sign(randn(2,1))+j*sign(randn(2,1)))/sqrt(2);
noise = noise_amp*(sign(randn(2,1))+j*sign(randn(2,1)))/sqrt(2);
h_matrix = reshape(H_correlated(k,:).',2,2).';
symbol_rx = h_matrix * symbol_tx + noise;
r_ref = symbol_rx * ones(1,16);
diff_r = r_ref - (h_matrix * Symbol_matrix.');
dist_r = sum((diff_r).*conj(diff_r));
[min_r,ind_r] = min(dist_r);
sym_est(1,k) = sign(abs(Symbol_matrix(ind_r,1) - symbol_tx(1,1)));
sym_est(2,k) = sign(abs(Symbol_matrix(ind_r,2) - symbol_tx(2,1)));
end
sym_err_cnt(i) = sum(sum(sym_est))/(2*N);
end
semilogy(SNR,sym_err_cnt);
grid on;
xlabel('SNR in dB');
ylabel('Symbol error count');
title('Performance of the MIMO system');
01 November 2016
4

Mais conteúdo relacionado

Mais procurados

Signal modelling
Signal modellingSignal modelling
Signal modelling
Debangi_G
 
Adc lab experimets
Adc lab experimetsAdc lab experimets
Adc lab experimets
ishan111
 
TurnerBottoneStanekNIPS2013
TurnerBottoneStanekNIPS2013TurnerBottoneStanekNIPS2013
TurnerBottoneStanekNIPS2013
Clay Stanek
 

Mais procurados (19)

Masters Report 2
Masters Report 2Masters Report 2
Masters Report 2
 
parametric method of power spectrum Estimation
parametric method of power spectrum Estimationparametric method of power spectrum Estimation
parametric method of power spectrum Estimation
 
10.1.1.666.9435
10.1.1.666.943510.1.1.666.9435
10.1.1.666.9435
 
Adaptive Equalization
Adaptive EqualizationAdaptive Equalization
Adaptive Equalization
 
Spectral estimation using mtm
Spectral estimation using mtmSpectral estimation using mtm
Spectral estimation using mtm
 
TURBO EQUALIZER
TURBO EQUALIZERTURBO EQUALIZER
TURBO EQUALIZER
 
A NOVEL SNAPSHOT BASED APPROACH FOR DIRECTION OF ARRIVIAL ESTIMATION WITH LEA...
A NOVEL SNAPSHOT BASED APPROACH FOR DIRECTION OF ARRIVIAL ESTIMATION WITH LEA...A NOVEL SNAPSHOT BASED APPROACH FOR DIRECTION OF ARRIVIAL ESTIMATION WITH LEA...
A NOVEL SNAPSHOT BASED APPROACH FOR DIRECTION OF ARRIVIAL ESTIMATION WITH LEA...
 
Equalization
EqualizationEqualization
Equalization
 
Masters Report 3
Masters Report 3Masters Report 3
Masters Report 3
 
NON PARAMETRIC METHOD
NON PARAMETRIC METHODNON PARAMETRIC METHOD
NON PARAMETRIC METHOD
 
Signal modelling
Signal modellingSignal modelling
Signal modelling
 
Adc lab experimets
Adc lab experimetsAdc lab experimets
Adc lab experimets
 
Ag4301181184
Ag4301181184Ag4301181184
Ag4301181184
 
Estimation of Optimum Number of Poles for Random Signal by Yule-Walker Method
Estimation of Optimum Number of Poles for Random Signal by Yule-Walker MethodEstimation of Optimum Number of Poles for Random Signal by Yule-Walker Method
Estimation of Optimum Number of Poles for Random Signal by Yule-Walker Method
 
Performance Analysis of Ultra Wideband Receivers for High Data Rate Wireless ...
Performance Analysis of Ultra Wideband Receivers for High Data Rate Wireless ...Performance Analysis of Ultra Wideband Receivers for High Data Rate Wireless ...
Performance Analysis of Ultra Wideband Receivers for High Data Rate Wireless ...
 
Adc assignment final
Adc assignment finalAdc assignment final
Adc assignment final
 
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
 
TurnerBottoneStanekNIPS2013
TurnerBottoneStanekNIPS2013TurnerBottoneStanekNIPS2013
TurnerBottoneStanekNIPS2013
 
Tech report: Fair Channel Allocation and Access Design for Cognitive Ad Hoc N...
Tech report: Fair Channel Allocation and Access Design for Cognitive Ad Hoc N...Tech report: Fair Channel Allocation and Access Design for Cognitive Ad Hoc N...
Tech report: Fair Channel Allocation and Access Design for Cognitive Ad Hoc N...
 

Destaque (11)

Sport wikipedia Olivier Hoen
Sport   wikipedia Olivier HoenSport   wikipedia Olivier Hoen
Sport wikipedia Olivier Hoen
 
Shower
ShowerShower
Shower
 
Práctica 6 doc
Práctica 6 docPráctica 6 doc
Práctica 6 doc
 
Gt aav-missão
Gt aav-missãoGt aav-missão
Gt aav-missão
 
Bay Area regional transit fare coordination
Bay Area regional transit fare coordinationBay Area regional transit fare coordination
Bay Area regional transit fare coordination
 
Ca$$y Article attempt 3
Ca$$y Article attempt 3Ca$$y Article attempt 3
Ca$$y Article attempt 3
 
0Test
0Test0Test
0Test
 
Presentation2
Presentation2Presentation2
Presentation2
 
Trabajo mejoramiento
Trabajo mejoramientoTrabajo mejoramiento
Trabajo mejoramiento
 
อยากเป็นคนนั้นPnc
อยากเป็นคนนั้นPncอยากเป็นคนนั้นPnc
อยากเป็นคนนั้นPnc
 
The Culture of Tech
The Culture of TechThe Culture of Tech
The Culture of Tech
 

Semelhante a Technical details

EE352 - Final Project Report
EE352 - Final Project ReportEE352 - Final Project Report
EE352 - Final Project Report
Rob Garrone
 

Semelhante a Technical details (20)

MIMO Channel Estimation Using the LS and MMSE Algorithm
MIMO Channel Estimation Using the LS and MMSE AlgorithmMIMO Channel Estimation Using the LS and MMSE Algorithm
MIMO Channel Estimation Using the LS and MMSE Algorithm
 
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
 
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
Performance Analysis of Various Symbol Detection Techniques in Wireless MIMO ...
 
Signal design for multiple antenna systems with spatial multiplexing and nonc...
Signal design for multiple antenna systems with spatial multiplexing and nonc...Signal design for multiple antenna systems with spatial multiplexing and nonc...
Signal design for multiple antenna systems with spatial multiplexing and nonc...
 
A reduced complexity and an efficient channel
A reduced complexity and an efficient channelA reduced complexity and an efficient channel
A reduced complexity and an efficient channel
 
Vibration source identification caused by bearing faults based on SVD-EMD-ICA
Vibration source identification caused by bearing faults based on SVD-EMD-ICAVibration source identification caused by bearing faults based on SVD-EMD-ICA
Vibration source identification caused by bearing faults based on SVD-EMD-ICA
 
Capacity Enhancement of MIMO-OFDM System in Rayleigh Fading Channel
Capacity Enhancement of MIMO-OFDM System in Rayleigh Fading ChannelCapacity Enhancement of MIMO-OFDM System in Rayleigh Fading Channel
Capacity Enhancement of MIMO-OFDM System in Rayleigh Fading Channel
 
Capacity Enhancement of MIMO-OFDM System in Rayleigh Fading Channel
Capacity Enhancement of MIMO-OFDM System in Rayleigh Fading ChannelCapacity Enhancement of MIMO-OFDM System in Rayleigh Fading Channel
Capacity Enhancement of MIMO-OFDM System in Rayleigh Fading Channel
 
Performance evaluation with a
Performance evaluation with aPerformance evaluation with a
Performance evaluation with a
 
Performance Evaluation Of Adaptive Array Antennas In Cognitive Relay Network
Performance Evaluation Of Adaptive Array Antennas In Cognitive Relay NetworkPerformance Evaluation Of Adaptive Array Antennas In Cognitive Relay Network
Performance Evaluation Of Adaptive Array Antennas In Cognitive Relay Network
 
Performance Evaluation of Adaptive Array Antennas in Cognitive Relay Network
Performance Evaluation of Adaptive Array Antennas in Cognitive Relay NetworkPerformance Evaluation of Adaptive Array Antennas in Cognitive Relay Network
Performance Evaluation of Adaptive Array Antennas in Cognitive Relay Network
 
PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK
PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK
PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK
 
PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK
PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORKPERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK
PERFORMANCE EVALUATION OF ADAPTIVE ARRAY ANTENNAS IN COGNITIVE RELAY NETWORK
 
Performance Analysis and Optimal Detection of Spatial Modulation
Performance Analysis and Optimal Detection of Spatial ModulationPerformance Analysis and Optimal Detection of Spatial Modulation
Performance Analysis and Optimal Detection of Spatial Modulation
 
Nc2421532161
Nc2421532161Nc2421532161
Nc2421532161
 
Bit Error Rate Performance of MIMO Spatial Multiplexing with MPSK Modulation ...
Bit Error Rate Performance of MIMO Spatial Multiplexing with MPSK Modulation ...Bit Error Rate Performance of MIMO Spatial Multiplexing with MPSK Modulation ...
Bit Error Rate Performance of MIMO Spatial Multiplexing with MPSK Modulation ...
 
F0362038045
F0362038045F0362038045
F0362038045
 
Hg3413361339
Hg3413361339Hg3413361339
Hg3413361339
 
Performance Comparison of Modified Variable Step Size Leaky LMS Algorithm for...
Performance Comparison of Modified Variable Step Size Leaky LMS Algorithm for...Performance Comparison of Modified Variable Step Size Leaky LMS Algorithm for...
Performance Comparison of Modified Variable Step Size Leaky LMS Algorithm for...
 
EE352 - Final Project Report
EE352 - Final Project ReportEE352 - Final Project Report
EE352 - Final Project Report
 

Technical details

  • 1. 01 November 2016 1 SIMULATION AND PERFORMANCE ANALYSIS OF A MIMO SYSTEM WITH SPATIAL MULTIPLEXING IN THE PRESENCE OF POLARIZATION DIVERSITY Naveen Bhimappa Kori Dept. of Electrical Engineering University of Texas, Arlington, TX 76019 Abstract—In practice the antennas in a MIMO system need to be spaced sufficiently apart for a reliable performance measured in terms of symbol error rate. However, dual polarized antennas can be used in cases where spacing constraints are too rigid. These dual polarized antennas operate with orthogonally polarized waves. Here, we will see how to simulate the MIMO system with dual polarized antennas using MATLAB and analyze the performance of the system. I. INTRODUCTION Recent studies have shown that the usage of multiple antennas both at the transmitting and receiving end improves the capacity of the system. The MIMO is one such system that utilizes the diversity of the channel to enhance the performance of the system, which is known as spatial multiplexing. Since the system’s underlying principle depends on the diversity of the channel, it would be required that the antennas at either the transmitting or receiving end are placed wide enough so that the fading channels are not correlated, but practically the channels are not completely independent of each other and exhibit certain fading correlation. Hence a correlation threshold of 0.5 to 0.7 is defined in Engineering practice. In cases where the minimum antenna spacing cannot be achieved, dual polarized antennas with orthogonal polarization can be made use of. Here we define a simple model for the channel considering the spatial correlation fading and the cross-polarization discrimination (XPD). The channel is assumed to be Rayleigh fading channel and the symbols under consideration are QPSK modulated. We then perform a joint detection on the transmitted symbols under the influence of the channel perturbations and Additive White Gaussian Noise (AWGN). We repeat the procedure for different SNR values and evaluate the performance by calculating the symbol error rate. II. MOTIVATION The fundamental concept underlying MIMO system is the idea of splitting a data stream into several streams transmitted in parallel over individual subchannels. The capacity of a system where the data stream is divided into r parallel streams is simply the sum of the individual subchannel capacities and, therefore, reads as where PT is the transmitted power and σn 2 is the variance of noise each subchannel perturbs the signal with. Asymptotically, the capacity becomes a linear function of the transmit power. If all the subchannels are independent, then such a MIMO channel is usually referred to as being diagonal. However, in practice MIMO channels rarely are diagonal, nor is the number of data streams equal to the number of transmit or receive antennas, as the algebraic rank of the MIMO channel dictates the number of data streams which are supported for simultaneous transmission. Now, let us define the channel model we will be using for the simulation purpose. III. THE CHANNEL MODEL We consider a system with one dual polarized transmitter and one dual polarized receiver. The relation between the received signal vector and the transmitted symbols is given as where x = [x0 x1]T is the transmitted symbol vector,
  • 2. 01 November 2016 2 r = [r0 r1]T is the received symbol vector, E being the energy of the transmitted symbols and n being the complex valued Gaussian noise vector. H is the channel matrix with the elements indicating the co and cross polarized components, cross correlation and cross coupling of energy from one polarization to another polarization state. Since the channel is Rayleigh fading the channel matrix elements are Gaussian random variables with zero mean. The correlation between the elements of H and variances depend on the channel condition and choice of polarizations, respectively. We assume that E[|h00|]2 = E[|h11||]2 = 1 and E[|h01|]2 = E[|h10||]2 = α, where 0 < α ≤ 1 depends on the XPD. Furthermore, the correlation coefficients are defined as E[h00 h01] = E[h10 h11] = √α t and E[h00 h10] = E[h101h11] = √α r. For the simulation purpose we have considered the following values of α = 0.4, r = 0.3 and t = 0.5 and the noise expectation E[n nH ] = σ2 In ,where In is the 2x2 identity matrix. IV. SIMULATION Now we will have a look at the steps followed to simulate such a MIMO system. First, we generate the matrix coefficients along with symbol vectors and then add AWGN noise to the symbols after which we perform optimal detection on the noise corrupted symbols. We run these trials for a very large number of (around 2×10^4 ) different channel matrices and 11 different SNR values from 0 to 20 in steps of 2 to get acceptable results for the performance. We start by creating a channel matrix with coefficients that are complex random variables with Gaussian distribution and then transform it into a correlated matrix by using singular value decomposition of the autocorrelation matrix and we have already seen how the elements of the correlation matrix are obtained. We create all possible symbol combinations of the QPSK symbols which could be transmit using the two antennas, this serves as our constellation point reference which we will see later being used in the detection procedure to identify which of the symbols was transmitted. Since two symbols are transmitted simultaneously, we generate two random symbols from the above defined constellation and normalize them to have unit energy. In a similar fashion, we create the noise vector which are again Gaussian distributed and have zero mean. The amplitude of the noise is calculated depending on the SNR value using the below equation. where σn is the noise amplitude and SNR is measured in dB. The symbol vectors created above will then be multiplied with the channel matrix and added to them is the complex valued white Gaussian noise. These symbols are then captured as received signal vectors. Another set of vectors are created by multiplying all the symbols from the constellation points with the channel matrix which forms the reference point against which the distance of the received symbol can be measured. The differences between both the transmitted symbols and their respective constellation points is evaluated. Based on the maximum likelihood detection rule the symbol in the constellation with the minimum distance from the received vector is decided as the received symbol. One thing to note here is that we are performing a joint detection, i.e., we are considering the minimum distance of both the symbols from their respective constellations and the decision is made in favor of that pair which has a minimum value of distance from the received vector. We then check if the decision made was correct by comparing it with the transmitted symbol and the symbol error count is recorded. This procedure is repeated for all the different channel coefficients under each SNR value. Finally, we plot a graph of the symbol error count versus the SNR values on the semi logarithmic scale, which gives us the performance of the system as a measure of the probability of symbol error.
  • 3. 01 November 2016 3 Below is the MATLAB code used for the simulation along with the plot of the SNR Vs Symbol error count. clear all; clc; N = 20000; M = 4; % Creation of H Matrix H = zeros(N,M); H_correlated = zeros(N,M); H = (rand(N,M)+j*rand(N,M))/sqrt(2); a = 0.4 t = 0.5; r = 0.3; R = [1 sqrt(a)*t sqrt(a)*r 0; sqrt(a)*t a 0 sqrt(a)*r; sqrt(a)*r 0 a sqrt(a)*t; 0 sqrt(a)*r sqrt(a)*t 1]; [U,D] = eig(R); H_transform = sqrt(D)*(U).'; H_correlated = H * H_transform; %Symbol combinations aa = (1+j)/sqrt(2); bb = (1-j)/sqrt(2); cc = (-1+j)/sqrt(2); dd = (-1-j)/sqrt(2); Symbol_matrix = [aa aa;aa bb;aa cc;aa dd; bb aa;bb bb;bb cc;bb dd; cc aa;cc bb;cc cc;cc dd; dd aa;dd bb;dd cc;dd dd]; SNR = [0:2:20]; for i = 1:11 noise_amp = (10^-(SNR(i)/20))*sqrt(2); for k = 1:N symbol_tx = (sign(randn(2,1))+j*sign(randn(2,1)))/sqrt(2); noise = noise_amp*(sign(randn(2,1))+j*sign(randn(2,1)))/sqrt(2); h_matrix = reshape(H_correlated(k,:).',2,2).'; symbol_rx = h_matrix * symbol_tx + noise; r_ref = symbol_rx * ones(1,16); diff_r = r_ref - (h_matrix * Symbol_matrix.'); dist_r = sum((diff_r).*conj(diff_r)); [min_r,ind_r] = min(dist_r); sym_est(1,k) = sign(abs(Symbol_matrix(ind_r,1) - symbol_tx(1,1))); sym_est(2,k) = sign(abs(Symbol_matrix(ind_r,2) - symbol_tx(2,1))); end sym_err_cnt(i) = sum(sum(sym_est))/(2*N); end semilogy(SNR,sym_err_cnt); grid on; xlabel('SNR in dB'); ylabel('Symbol error count'); title('Performance of the MIMO system');