clear all; clc;
%%%%%% Parameter Setting %%%%%%%%%
N_frame=100; N_packet=1000;
b=2; M=2^b; % Number of bits per symbol and Modulation order
NT=2; %antenas of source
NR=2; %antenas of destination
N_user = 2;
N_relay = 2; I=eye(NR,N_relay);%antenas of relay
N_pbits = N_frame*NT*b;
N_tbits = N_pbits*N_packet;
scale = [1 sqrt(2) 0 sqrt(10) 0 sqrt(42)]; % BPSK 4-QAM 16-QAM
I_R = eye(N_relay);% ma tr?n ??n v?
I_N = eye(NR);
I_M = eye(NT);
fprintf('====================================================');
fprintf('\n %d x %d MIMO', NT,NR);
fprintf('\n Simulation bits : %d',N_tbits);
fprintf('\n====================================================\n');
SNRdBs = -10:5:25;
BER = zeros(1,length(SNRdBs));
SNR0 = 10; %dB
%SNR0 = 10.^(SNR0/10); %giai tuyen tinh
SNR1 = 20; %dB
%SNR2 = 10.^(SNR2/10); %giai tuyen tinh
sq2 =sqrt(2);
for i_SNR=1:length(SNRdBs)
SNRdB = SNRdBs(i_SNR);
SNR2 = 10.^(SNRdB/10);
sigma = NT*0.5*10^(-SNRdB/10);
sigma2 = sqrt(sigma);
rand('seed',1); randn('seed',1);
N_ebits = 0;
vector_symbol = zeros(NT,N_frame);
L0=1; %pah loss L0
L2=0.5;%path loss L2
Pi= L0*10^(SNR0/10); %power at source node
L1 = Pi/10^(SNR1/10); %path loss L1
Pr = SNR2*L2; %power at Relay node
sigmax2 = (Pi/NT);
%%%%%%%%%%%%% Transmitter %%%%%%%%%%%%%%%%%%
for i_packet=1:N_packet