tap_rayleigh_jakes.m

来自「程序是MIMO-OFDM系统下」· M 代码 · 共 40 行

M
40
字号
function r=Tap_Rayleigh_Jakes(fd,deltaT,Ns,M,RX)
%使用Jakes方法产生单径Rayleigh衰落信道

% 输入:
%   fd     = doppler spread
%   deltaT = 样值之间的时间间隔
%   Ns     = 需要的单径Rayleigh过程样本函数抽样值的数目
%
% 输出:
%   r  = 包含Ns个Rayleigh过程样本函数样值的行向量

No = 16;%进行叠加的载波路数,No的值越大越好,一般No取到8即可
N = 2*(2*No+1);%要求N/2是奇数
Eo = 1;

Wm = 2*pi*fd;
Wn = Wm*cos(2*pi*[1:No]/N);
%phi = pi*[1:No]/(No+1);   
phi = pi*ceil(No*rand(1,No))/(No+1);  % 产生随机均匀分布的角度

t = [100000+50*Ns+1:1:100000+Ns*51].*deltaT;
r = zeros(M*RX,Ns);

for k=1:1:M*RX
    tr=zeros(1,Ns);
    for n = 1:No
        tr = tr+cos(Wn(n)*(t+10000*Ns*deltaT*(k-1)))*exp(j*phi(n));
    end
    r(k,:)= (Eo/sqrt(2*No+1))*(2*tr+sqrt(2)*cos(Wm.*(t+10000*Ns*deltaT*(k-1))));

%归一化
    r(k,:)= r(k,:)/sqrt(mean(r(k,:).*conj(r(k,:))));
end

    




⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?