在matlab中生成无线电传播模式?

时间:2017-07-25 14:16:56

标签: matlab function

我想实现文章的一部分。其中表达了以下解释。 “我们在不同程度的不规则性下评估所提出的定位方法的性能,其中DOI定义了每单位度方向变化的无线电传播不规则性。本文中使用的无线电传播不规则模型如下所示:”

enter image description here

我曾尝试编写此部分的代码,但它不起作用,无法获得结果。

function Coeff=k(i)
Rand=rand(1,100);
DOI=0.02;
if(i==0)
Coeff=1;  %Terminating condition
else
     while i<360
      Coeff=k(i-1)+Rand*DOI;    %DOI=[0.01,0.02,0.03,0.04,0.05]
     end
end
end

并且该文章中显示了DOI = 0.02的图...我需要得到这样的输出,我该怎么做

enter image description here

提前致谢。

1 个答案:

答案 0 :(得分:0)

如果您发布文章的链接会有所帮助,但在这种情况下,它们只会生成带有一些噪音的圆形路径。

DOI=0.05;
phi = linspace(0,2*pi,360); %360 angles
r=-DOI+2*DOI*rand([1,360]); %random values between -DOI and DOI
r=cumsum(r)+1;              %add them to make a path, with mean value 1
while abs(r(end)-r(1))> DOI %start and finish must not be too far away from eachother
    r=-DOI+2*DOI*rand([1,360]);
    r=cumsum(r)+1;    
end
plot(r.*cos(phi),r.*sin(phi),'r',cos(phi),sin(phi),'--b')
axis equal