《MIMO-OFDM系统原理、应用及仿真》李莉(实例代码)Word格式.docx
- 文档编号:13016060
- 上传时间:2022-10-02
- 格式:DOCX
- 页数:50
- 大小:894.98KB
《MIMO-OFDM系统原理、应用及仿真》李莉(实例代码)Word格式.docx
《《MIMO-OFDM系统原理、应用及仿真》李莉(实例代码)Word格式.docx》由会员分享,可在线阅读,更多相关《《MIMO-OFDM系统原理、应用及仿真》李莉(实例代码)Word格式.docx(50页珍藏版)》请在冰豆网上搜索。
%瑞利模型
Rayleigh_ch=Ray_model(N);
%调用Ray_model子程序,产生瑞利分布幅度系数
[temp,x]=hist(abs(Rayleigh_ch(1,:
)),level);
%统计数据分布
plot(x,temp,gss(1,:
))
holdon
%莱斯模型
fori=1:
length(K_dB);
%对不同莱斯因子进行信道模型仿真
Rician_ch(i,:
)=Ric_model(K_dB(i),N);
%调用Ric_model产生莱斯分布幅度系数
[tempx]=hist(abs(Rician_ch(i,:
plot(x,temp,gss(i+1,:
end
xlabel('
x'
),ylabel('
Occurrence'
)
legend('
Rayleigh'
'
Rician,K=-40dB'
Rician,K=0dB'
Rician,K=15dB'
%瑞利信道模型子程序,子程序程序名称:
Ray_model.m
functionH=Ray_model(L)
%输入参数L:
仿真信道个数,为N=200000
%输出参数H:
返回瑞利信道矩阵
H=(randn(1,L)+j*randn(1,L))/sqrt
(2);
%产生实部为高斯分布、虚部为高斯分布、包络为瑞利分布的信道系数。
实部功率为1/2,虚部功率为1/2,因
%此该行指令返回单位功率的或称归一化功率的瑞利信道幅度系数。
%莱斯信道模型子程序,子程序程序名称:
Ric_model.m
functionH=Ric_model(K_dB,L)
%输入参数:
K_dB为莱斯因子,L为仿真信道个数
%输出参数H:
返回莱斯信道矩阵
K=10^(K_dB/10);
%将dB值描述的莱斯因子转换为幅度值
H=sqrt(K/(K+1))+sqrt(1/(K+1))*Ray_model(L);
%产生莱斯信道幅度系数。
莱斯信道模型中包含视距通信,收发之间有直通路径。
程序仿真结果见图2-9。
实例2-2两径信道与指数信道模型
产生一个两径信道和一个指数衰减的多径信道。
Example2_2
clear,clf
scale=1e-9;
%纳秒量级
Ts=10*scale;
%抽样时间间隔为10ns,在这个程序中这个量也为指数信道路径间隔
t_rms=30*scale;
%RMS时延扩展为30ns
num_ch=10000;
%仿真信道个数
%两径信道模型
%产生并绘制了理想的两径信道模型和瑞利分布两径信道模型。
pow_2=[0.50.5];
delay_2=[0t_rms*2]/scale;
%给出理想两径信道功率均为0.5,延时为0和60ns
H_2=[Ray_model(num_ch);
Ray_model(num_ch)].'
*diag(sqrt(pow_2));
%产生瑞利两径信道幅度系数。
通过调用子程序Ray_model产生归一化功率的瑞利两径信道幅度系数。
avg_pow_h_2=mean(H_2.*conj(H_2));
%计算瑞利分布两径信道每一径的平均功率。
在这里可以看到上一条语句中diag(sqrt(pow_2))的作用。
%当通过对幅度系数进行运算计算功率时,sqrt(pow_2)可以使每一径的功率为pow_2,即每一径的功率为0.5。
subplot(121)
stem(delay_2,pow_2,'
ko'
),holdon,stem(delay_2,avg_pow_h_2,'
k.'
);
xlabel('
Delay[ns]'
ChannelPower[linear]'
title('
2-rayModel'
legend('
Ideal'
Simulation'
axis([-1014000.7]);
%指数信道模型
%产生并绘制理想的指数信道模型和瑞利分布的指数信道模型。
pow_e=exp_PDP(t_rms,Ts);
%通过调用exp_PDP子程序,计算理想指数信道每一径上的功率。
delay_e=[0:
length(pow_e)-1]*Ts/scale;
%计算指数信道每一径的延时,单位为ns
fori=1:
length(pow_e)
H_e(:
i)=Ray_model(num_ch).'
*sqrt(pow_e(i));
end
%计算瑞利分布的指数信道幅度系数。
通过调用Ray_model产生归一化功率的瑞利分布幅度系数,%sqrt(pow_e(i))的作用类似于diag(sqrt(pow_2))。
avg_pow_h_e=mean(H_e.*conj(H_e));
%计算瑞利分布指数信道的平均功率。
%由于sqrt(pow_e(i))的存在,瑞利分布指数信道每一径的平均功率也为pow_e(i),即与理想指数信道
%每一径功率相同。
subplot(122)
stem(delay_e,pow_e,'
),holdon,stem(delay_e,avg_pow_h_e,'
xlabel('
title('
ExponentialModel'
axis([-1014000.7])
legend('
%瑞利信道模型子程序,子程序程序名称:
functionH=Ray_model(L)
H=(randn(1,L)+j*randn(1,L))/sqrt
(2);
%指数信道PDP子程序,子程序名称:
exp_PDP.m
functionPDP=exp_PDP(tau_d,Ts,A_dB,norm_flag)
%输入参数:
%tau_d:
RMS延时扩展,单位为s
%Ts:
抽样时间间隔,在这里也为指数信道路径间隔,单位为s
%A_dB:
最小不可忽略径[dB]
%norm_flag:
标准化标志
%输出参数:
%PDP:
输出指数信道PDP矢量
ifnargin<
4,norm_flag=1;
end%判断子程序调用参数个数,小于4,则norm_flag=1。
3,A_dB=-20;
end%判断子程序调用参数个数,小于4,则A_dB=-20。
%由于主程序中调用该子程序时,只有两个参数,所以上两条语句实际是幅值norm_flag=1和A_dB=-20。
sigma_tau=tau_d;
A=10^(A_dB/10);
lmax=ceil(-tau_d*log(A)/Ts);
%计算最大路径序号,参见式(2-34)。
%以下参见式(2-36)
ifnorm_flag
p0=((1-exp(-(lmax+1)*Ts/sigma_tau))/(1-exp(-Ts/sigma_tau)))/30;
elsep0=1/sigma_tau;
%计算式(2-37)中的P0
%指数信道PDP
l=0:
lmax;
PDP=p0*exp(-l*Ts/sigma_tau);
%参见式(2-37)
程序仿真结果如图2-17所示。
图2-17(a)为理想两径信道和瑞利两径信道的PDP曲线,图2-17(b)为离散指数信道和瑞利指数信道的PDP曲线。
(a)(b)
图2-17两径与指数信道模型
实例2-3IEEE802.11信道PDP与频谱分布
实现IEEE802.11信道仿真,画出IEEE802.11信道的PDP曲线与频谱图。
Example2_3.m
scale=1e-9;
%纳秒量级
Ts=50*scale;
%抽样时间间隔,50ns
t_rms=25*scale;
%RMS实验扩展,25ns
num_ch=10000;
%信道数
N=128;
%FFT长度
PDP=IEEE802_11_model(t_rms,Ts);
调用IEEE802_11_model子程序,计算IEEE802.11信道的PDP。
fork=1:
length(PDP)
h(:
k)=Ray_model(num_ch).*sqrt(PDP(k));
avg_pow_h(k)=mean(h(:
k).*conj(h(:
k)));
H=fft(h(1,:
),N);
subplot(121)
stem([0:
length(PDP)-1],PDP,'
),holdon,
length(PDP)-1],avg_pow_h,'
channeltapindex,p'
AverageChannelPower[linear]'
title('
IEEE802.11Model,\sigma_\tau=25ns,T_S=50ns'
axis([-1701]);
subplot(122)
plot([-N/2+1:
N/2]/N/Ts/1e6,10*log10(H.*conj(H)),'
k-'
Frequency[MHz]'
Channelpower[dB]'
Frequencyresponse,\sigma_\tau=25ns,T_S=50ns'
%IEEE802.11信道模型PDP产生子程序,子程序名称:
IEEE802_11_model.m
functionPDP=IEEE802_11_model(sigma_t,Ts)
%sigma_t:
RMS延时扩展
抽样时间间隔
IEEE802.11信道PDP矩阵
lmax=ceil(10*sigma_t/Ts);
%计算最大路径序号,参见式(2-38)
sigma02=(1-exp(-Ts/sigma_t))/(1-exp(-(lmax+1)*Ts/sigma_t));
%参见式(2-41)
l=0:
PDP=sigma02*exp(-l*Ts/sigma_t);
%参见式(2-40)
仿真结果参见图2-11。
实例2-4滤波白噪声模型
产生滤波白噪声
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MIMO-OFDM系统原理、应用及仿真 MIMO OFDM 系统 原理 应用 仿真 李莉 实例 代码