• 大小: 9KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-07
  • 语言: Matlab
  • 标签: jakes模型  

资源简介

Jakes模型MATLAB仿真还有包括改进的jakes模型仿真验证该仿真公式输出信号的幅度统计概率服从瑞利分布,相位服从均匀分布

资源截图

代码片段和文件信息

clear;clc

% 功能:使用成型滤波法仿真Clarke模型
% 作者:hhuyudi
% 参考:MIMO-OFDM Wireless Communications with MATLAB
%        参考书中 FWGN 小节 
%
%最大多普勒频为926Hz,仿真次数为50us,仿真次数为十万次
fd=926;     % 最大Doppler
ts=5e-5;    % 仿真最小时间
fs=1/ts;    % sample frequency
Ns=1e5;     % 仿真次数
M=2^12;     % 做FFT的总点数,可以使用自相关函数通过FFT计算功率谱密度,请自行完成
t=(0:Ns-1)*ts;% 仿真总时间,作图使用
tt=(0:M-1)*ts;% 仿真总时间,作图使用
ff=(-M/2:M/2-1)/(M*ts*fd);% 频率归一化,功率谱密度作图使用
temp=zeros(3Ns); % 3*Ns的矩阵
                  % temp(1,:)存储仿真结果的自相关函数
                  % temp(2,:)存储ones(1,Ns)的自相关函数,用于归一化
                  % temp(3,:)存储仿真结果其分量的互相关函数
                  
%generat channel information
[hNfftNifftDoppler_coeff]=Clarke_model(fdfsNs); % 归一化的Clarke模型,功率为1

%自相关函数,分量的互相关函数,为了结果更准确,这里50次仿真取平均值
for ii=1:50
    [hNfftNifftDoppler_coeff]=Clarke_model(fdfsNs);
    yy=xcorr(h);
    yy_cs=xcorr(real(h)imag(h));
    temp(1:)=temp(1:)+yy(Ns:length(yy));
    temp(3:)=temp(3:)+yy_cs(Ns:length(yy_cs));
end

%画图
%Clarke模型复包络的幅度增益、幅度分布、相位分布
figure(1);
subplot(211)
plot((1:Ns)*ts10*log10(abs(h)));
axis([0 0.01 -20 10]);
xlabel(‘时间/s‘);ylabel(‘幅度/db‘);title(‘信道时域特性‘);
str=sprintf(‘channel model by Clarke with fm=%dHzTs=%dus‘fdts*1e6);
title(str);
% 幅度分布
subplot(223)
[fxi]=ksdensity(abs(h));
plot(xif);
cs2=var(h)/2;  % 瑞利分布的方差是实部或虚部的方差,是h方差的一半
r=linspace(021000);
fx2=r./(cs2).*exp(-r.^2/2/(cs2));
hold on;plot(rfx2‘r:‘);hold off;
xlabel(‘幅度‘);ylabel(‘统计次数‘);title(‘幅度分布‘);axis([0 2.5 0 1.0]);
% 相位分布
subplot(224)
[fxi]=ksdensity(angle(h));
plot(xif);
hold on;plot([-pi pi][1/2/pi 1/2/pi]‘r:‘);hold off;
xlabel(‘相位/rad‘);ylabel(‘统计次数‘);title(‘相位分布‘);axis([-pi pi 0 0.2]);


%%自相关函数和互相关函数计算,功率谱密度请自行编程
temp(1:)=temp(1:)/50;
temp(3:)=temp(3:)/50;
%用于归一化
yyy=xcorr(ones(1Ns));
temp(2:)=yyy(Ns:length(yy));
%自相关函数和分量互相关函数,取M个点,进行归一化
for k=1:M
    simulated_corr(k)=real(temp(1k))/temp(2k);
    simulated_corr_cs(k)=real(temp(3k))/temp(2k);
end
classical_corr=besselj(02*pi*fd*tt);

%%画图:自相关函数和互相关函数
figure(2);
subplot(211)
plot(ttsimulated_corr‘k-‘);
title(‘自相关函数‘); grid on; 
xlabel(‘时间差/s‘);ylabel(‘相关系数‘);axis([0 0.004 -0.5 1]);
legend(‘仿真结果‘);
subplot(212)
plot(ttsimulated_corr_cs‘k-‘);
title(‘互相关函数‘); grid on; 
xlabel(‘时间差/s‘);ylabel(‘相关系数‘);axis([0 0.004 -0.2 0.2]);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-06-09 02:00  Clarke_Jakes_Zheng模型matlab仿真\
     目录           0  2018-06-09 02:01  Clarke_Jakes_Zheng模型matlab仿真\Clarke\
     文件        2724  2018-06-09 01:52  Clarke_Jakes_Zheng模型matlab仿真\Clarke\Clarke.m
     文件        1126  2018-06-09 01:45  Clarke_Jakes_Zheng模型matlab仿真\Clarke\Clarke_model.m
     文件         485  2018-06-09 01:41  Clarke_Jakes_Zheng模型matlab仿真\Clarke\Doppler.m
     目录           0  2018-06-09 01:16  Clarke_Jakes_Zheng模型matlab仿真\Jakes\
     文件        2017  2018-06-09 01:57  Clarke_Jakes_Zheng模型matlab仿真\Jakes\Jakes.m
     文件         797  2018-05-17 11:24  Clarke_Jakes_Zheng模型matlab仿真\Jakes\Jakes_model.m
     文件         507  2018-06-09 01:59  Clarke_Jakes_Zheng模型matlab仿真\read_me.txt
     目录           0  2018-06-09 01:18  Clarke_Jakes_Zheng模型matlab仿真\改进Jakes\
     文件        1885  2018-06-09 01:58  Clarke_Jakes_Zheng模型matlab仿真\改进Jakes\Zheng.m
     文件        1309  2018-05-25 10:56  Clarke_Jakes_Zheng模型matlab仿真\改进Jakes\Zheng_QPSK.m
     文件         510  2018-06-01 20:08  Clarke_Jakes_Zheng模型matlab仿真\改进Jakes\z_rayleigh.m

评论

共有 条评论