Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-06-05, 11:32   #1
alenfly
初级会员
 
注册日期: 2008-05-12
年龄: 38
帖子: 2
声望力: 0
alenfly 正向着好的方向发展
默认 [讨论]程序段对比

小弟有一段瑞利衰落信道的matlab仿真程序,希望哪位仁兄能帮忙改一下,改成莱斯信道的仿真程序,小弟不会。谢谢
附:程序段
clear;
clc;
N=5000; %Number of paths
t=0.0001:10/N:10; %Time range
fc=900*10.^6; %Carrier frequency
wc=2*pi*fc;
v=30/3600; %Receiver speed[km/h]
c=300*10^3; %Light speed
wm=wc*(v/c); %Maximum shift
fm=wm/(2*pi); %Doppler shift
for i=1:N
A(i)=(2*pi/N)*i; %Azimuthal angles
wn(i)=wm*cos(A(i));
O(i)=(pi*i)/(N+1);
xc(i)=2*cos(wn(i)*t(i)).*cos(O(i))+cos(wm*t(i));
xs(i)=2*cos(wn(i)*t(i)).*sin(O(i));
T(i)=(1/(2*N+1)^0.5).*(xc(i)+j*xs(i));%Complex envelope
end
M=mean(abs(T)); %Mean
MdB=20*log10(M);
TdB=floor(20*log10(abs(T))); %Field [dB]
z1=hist(abs(T));
z=hist(TdB,9);
n=0;
for k=1:9
n=n+z(k);
end
for j=1:9
P(j)=z(j)/n;
end
f(1)=P(1);
for x=2:9
f(x)=f(x-1)+P(x);
F(10-x)=f(x);
end
plot(z1) %Distribution chart
title('Rayleigh’s distribution');
pause
semilogy(t,abs(T)/max(abs(T)),'r') %Fading graphic
title('Received field');
ylabel('Received field intensity');
xlabel('time');
grid on
pause
loglog(100*F,'m');%Indicates the probability of exceed a given attenuation
title('Probability of exceed a given attenuation (%)');
alenfly 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[求助]用MATLAB来计算一些科学数据,但用FOR循环计算时发现速度太慢 sa7312 MATLAB论坛 10 2011-12-21 16:49
求教关于散点图的问题 gkyingkyin MATLAB论坛 0 2008-05-04 08:32
【求助】用MATLAB实现数据采集 未注册 MATLAB论坛 3 2008-04-15 13:18
【求助】help me! zhuchuanwei MATLAB论坛 1 2008-04-01 15:54
【求助】二进制通信系统的蒙特卡罗仿真实现(用Matlab实现) 红将 MATLAB论坛 0 2008-02-20 22:00


所有时间均为北京时间。现在的时间是 13:25


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.