sizerand.m

来自「机器人控制系统的设计与MATLAB机器人控制系统的设计与MATLAB机器人控制系」· M 代码 · 共 33 行

M
33
字号
%随机数的产生原理:
   %在横坐标得到一个随机数x对应的函数值为y,纵坐标(函数的最大值与最小值之间的数)得到一个随机数scope
     %如果scope>y则舍去该数x,否则得到随机数x
function x=sizerand%生成服从sizepdf函数的随机数
k=40;m=250;

min=sizepdf(m);
max=sizepdf(k);%sizepdf函数的最大值

x=unifrnd(k,m);%在横坐标得到一个服从均匀分布的随机数
y=sizepdf(x);%由x算出对应的函数值
scope=unifrnd(min,max);%在纵坐标得到一个服从均匀分布的随机数

if x~=250
    while scope>y
        x=unifrnd(k,m);
        y=sizepdf(x);
        scope=unifrnd(min,max);
    end
end

if x==250
    while scope>(40/250)^1.2%(40/250)^1.2是概率密度函数x=250时的函数值
       x=unifrnd(k,m);
       y=sizepdf(x);
       scope=unifrnd(min,max);
    end
end

    
    

⌨️ 快捷键说明

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