rand('state',sum(100*clock)*rand(1)),加在程序中的什么地方 10
还有就是我有多个子程序,需要在每个子程序上面都加这个命令吗?还是在主程序里面加就可以了?谢谢了...
还有就是我有多个子程序,需要在每个子程序上面都加这个命令吗?还是在主程序里面加就可以了?谢谢了
展开
展开全部
首先要知道一点计算机生成的随机数都是伪随机数,当然malab也不例外
而这些伪随机数是怎样生成的呢?大多是用同余来生成
比如x_n+1=(25173*x_n+13849) (mod 65536),而这些伪随机数都需要一个初值x_0,这样才能迭代
这个x_0就是此处的'state'参数,所以rand('state',sum(clock))的作用是定义一个随时间变化的初值x_0。
作用:
matlab里面的随机生成函数基本都是以rand为基函数通过函数关系式得到,比如 normrnd,unidrnd等,你每次重启matlab后运行已编好的含随机数生成的函数你将得到相同的结果,比如我的电脑上重启matlab运行unidrnd(100),每次的值都是82,这是因为rand函数的初值都一样,所以为了避免上述问题经常在程序前运行或加命令rand('state',sum(clock)),这样重启matlab,运行随机数生成值就不同了。
而这些伪随机数是怎样生成的呢?大多是用同余来生成
比如x_n+1=(25173*x_n+13849) (mod 65536),而这些伪随机数都需要一个初值x_0,这样才能迭代
这个x_0就是此处的'state'参数,所以rand('state',sum(clock))的作用是定义一个随时间变化的初值x_0。
作用:
matlab里面的随机生成函数基本都是以rand为基函数通过函数关系式得到,比如 normrnd,unidrnd等,你每次重启matlab后运行已编好的含随机数生成的函数你将得到相同的结果,比如我的电脑上重启matlab运行unidrnd(100),每次的值都是82,这是因为rand函数的初值都一样,所以为了避免上述问题经常在程序前运行或加命令rand('state',sum(clock)),这样重启matlab,运行随机数生成值就不同了。
Sigma-Aldrich
2018-06-11 广告
2018-06-11 广告
Duolink PLA技术可通过同一个实验即可完成对蛋白质互作及其修饰的检测、定量以及确定细胞定位等。Duolink基于原位PLA技术(即邻位连接分析技术),可以帮助您在内源蛋白质表达过程中进行该分析。...
点击进入详情页
本回答由Sigma-Aldrich提供
展开全部
matlab文档说明:
In versions of MATLAB prior to 7.7 (R2008b), you controlled the internal state of the random number stream used by rand by calling rand directly with the 'seed', 'state', or 'twister' keywords. That syntax is still supported for backwards compatibility, but is not recommended. To update your code, see Updating Your Random Number Generator Syntax in the MATLAB Mathematics documentation.
意思是初始化随机数产生序列的办法,该方法已经从7.7开始过时了,但是仍然兼容。 具体可以参考
另外clock产生[year month day hour minute seconds]的数值,所以该语句表示用当前时间初始化随机数序列。
In versions of MATLAB prior to 7.7 (R2008b), you controlled the internal state of the random number stream used by rand by calling rand directly with the 'seed', 'state', or 'twister' keywords. That syntax is still supported for backwards compatibility, but is not recommended. To update your code, see Updating Your Random Number Generator Syntax in the MATLAB Mathematics documentation.
意思是初始化随机数产生序列的办法,该方法已经从7.7开始过时了,但是仍然兼容。 具体可以参考
另外clock产生[year month day hour minute seconds]的数值,所以该语句表示用当前时间初始化随机数序列。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询