文档及代码程序如下
第一章 无线信道:传播与衰落
1.1 大尺度衰落
1.1.1 一般路径损耗模型
- 自由空间的路径损耗模型
%% “PL_free.m”
function PL = PL_free(fc,dist,Gt,Gr)
%自由空间路径损耗模型
%% 输入
% fc : 载波频率[Hz]
% dist : 基站和修动台之间的图[m]
% Gt : 发射机天线增益
% Gr : 接收机天线增益
%输出
% PL : 路径损耗[dB]
lamda = 3e8/fc;
tmp = lamda./(4*pi*dist);
if nargin > 2,tmp = tmp*sqrt(Gt); end
if nargin > 3,tmp = tmp*sqrt(Gr); end
PL = -20*log10(tmp); %式(1.2)/(1.3)
- 对数距离/正太阴影路径损耗模型
%% "PL_logdist_or_norm.m"
function PL = PL_logdist_or_norm(fc,d,d0,n,sigma)%对数距离或对数阴影路径损耗模型
%% 输入
% fc : 载波频率[Hz]
% d : 基站和移动台之间的距离[m]
% d0 : 参考距离[m]
% n : 路径损耗指数
% sigma : 方差[dB]
%% 输出
% PL : 路径损耗[dB]
lamda = 3e8/fc;
PL = -20*log10(lamda/(4*pi*d0)) + 10*n*log10(d/d0); %式(1.4)
if nargin > 4
PL - PL + sigma*randn(size(d)); %式(1.5)
end
- 绘制不同的路径损耗模型
%% "plot_PL_general.m"
clear all;clf;clc;
fc = 1.5e9;
d0 = 100;
sigma = 3;
distance = [1:2:31].^2;
Gt = [1,1,0.5];
Gr = [1,0.5,0.5];
Exp = [2,3,6];
for k = 1:3
y_Free(k,:) = PL_free(fc,distance,Gt(k), Gr(k));
y_logdist(k,:) = PL_logdist_or_norm(fc,distance,d0,Exp(k));
y_lognorm(k,:) = PL_logdist_or_norm(fc,distance,d0,Exp(1),sigma);
end
figure('name','程序1.3','position',[0,40,1500,300]);
subplot(1,3,1);
semilogx(distance,y_Free(1,:),'k-o',distance,y_Free(2,:),'k-^' ,distance,y_Free(3,:),'k-s