Giải: Để tạo ra công suất thu thay đổi theo phân bố log-normal, chúng ta dùng hàm lognrnd() của Matlab. Tuy nhiên, hàm lognrnd() của Matlab có hàm PDF được định nghĩa khác so với hàm PDF của tỷ số tín hiệu trên nhiễu ở công thức (5.1) trong sách "Mô phỏng hệ thống truyền thông" của PGS.TS. Võ Nguyễn Quốc Bảo. Cụ thể, nếu biến ngẫu nhiên x có phân bố log-normal được tạo từ hàm lognrnd(), thì hàm PDF của x có dạng như sau:
Hay nói cách khác, ta có mối liên hệ sau:
==================== CODE MATLAB ====================
clear all
clc
% Cong suat cua may phat
EbNo = (0:2:20)';
P = 10.^(EbNo/10);
% Toc do truyen mong muon
R = 2;
% Nguong SNR
GT = 2.^(R) - 1;
% Tinh toon thong so
xi = 10/log(10);
mu = 10^(3/10);
sigma = 10^(8/10);
% Mo phong
N = 10^6;
% Ty so tin hieu tren nhieu
G = P.*lognrnd(mu./xi,sigma./xi,1,N);
% Tinh xac suat dung
OP_s = sum(G < GT,2)/N;
% Ly thuyet
OP_t = qfunc((mu -10*log10(GT./P))./sigma);
% Ve do thi
semilogy(EbNo,OP_s,'o',EbNo,OP_t,'-')
xlabel('E_b/N_0 [dB]');
ylabel('Xac suat dung');
legend('Mo phong','Ly thuyet');
set(gcf,'color','white');
Hình 5.3: Xác suất dừng của kênh truyền log normal: mô phỏng và lý thuyết.
Không có nhận xét nào:
Đăng nhận xét