matlab中rand函数的用途。
5个回答
展开全部
matlab中rand函数的用途是:matlab rand函数能产[01]间随机数,由种子递推出来,而种子在程序初始时候都一样。例如和时间相关的随机数,如rand('state',sum(100*clock))。
rand函数不是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。如果在第一次调用rand()之前没有调用srand(),那么系统会为程序员自动调用srand()。
而使用同种子相同的数调用 rand()会导致相同的随机数序列被生成。
扩展资料:
函数用法举例分析如下:
产生一个随机分布的指定均值和方差的矩阵:将randn产生的结果乘以标准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1的一个5*5的随机数方式如下:
1: x = .6 + sqrt(0.1) * randn(5)
其他类似的函数有:rand, randperm, sprand, sprandn。
展开全部
matlab中rand这个函数能产生[0,1]之间的随机数,这个是伪随机数,由种子递推出来,而种子在程序初始时候都一样。你可以试着产生和时间相关的随机数,如rand('state',sum(100*clock))。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-07-21 · 知道合伙人教育行家
关注
展开全部
matlabrand函数能产[01]间随机数,伪随机数由种递推种程序初始候都试着产间相关随机数rand('state',sum(100*clock))
rand函数不是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。而使用同种子相同的数调用 rand()会导致相同的随机数序列被生成。
rand函数不是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。而使用同种子相同的数调用 rand()会导致相同的随机数序列被生成。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
产生区间(0.1)均匀分布的随机数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Matlab中Rand()函数用法:
一、理论准备
matlab函数randn:产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数或矩阵的函数。
用法:Y = randn(n),返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。
Y = randn(m,n) 或 Y = randn([m n]),返回一个m*n的随机项矩阵。
Y = randn(m,n,p,...) 或 Y = randn([m n p...]),产生随机数组(感觉就是三维数组,请看如下例子)。
1: >> rand(1,2,3)
2: ans(:,:,1) =
3: 0.445586200710899 0.646313010111265
4: ans(:,:,2) =
5: 0.709364830858073 0.754686681982361
6: ans(:,:,3) =
7: 0.276025076998578 0.679702676853675
Y = randn(size(A)),返回一个和A有同样维数大小的随机数组。
randn
s = randn('state'),估计和C++里初始化随机种子一个意思,随便了。
二、举例分析
产生一个随机分布的指定均值和方差的矩阵:将randn产生的结果乘以标准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1的一个5*5的随机数方式如下:
1: x = .6 + sqrt(0.1) * randn(5)
其他类似函数:rand, randperm, sprand, sprandn
三、拓展
用matlab随机产生60个1到365之间的正数 1+fix(365*rand(1,60)),fix就是取整函数。
用rand函数随机取100个从-1到2的数x1,x2,...,x = rand(1,100) * 2 - 1。
逗号表示行,分号表示列。
四、参考资料:
http://www.cnblogs.com/hxsyl/p/4054034.html
一、理论准备
matlab函数randn:产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数或矩阵的函数。
用法:Y = randn(n),返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。
Y = randn(m,n) 或 Y = randn([m n]),返回一个m*n的随机项矩阵。
Y = randn(m,n,p,...) 或 Y = randn([m n p...]),产生随机数组(感觉就是三维数组,请看如下例子)。
1: >> rand(1,2,3)
2: ans(:,:,1) =
3: 0.445586200710899 0.646313010111265
4: ans(:,:,2) =
5: 0.709364830858073 0.754686681982361
6: ans(:,:,3) =
7: 0.276025076998578 0.679702676853675
Y = randn(size(A)),返回一个和A有同样维数大小的随机数组。
randn
s = randn('state'),估计和C++里初始化随机种子一个意思,随便了。
二、举例分析
产生一个随机分布的指定均值和方差的矩阵:将randn产生的结果乘以标准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1的一个5*5的随机数方式如下:
1: x = .6 + sqrt(0.1) * randn(5)
其他类似函数:rand, randperm, sprand, sprandn
三、拓展
用matlab随机产生60个1到365之间的正数 1+fix(365*rand(1,60)),fix就是取整函数。
用rand函数随机取100个从-1到2的数x1,x2,...,x = rand(1,100) * 2 - 1。
逗号表示行,分号表示列。
四、参考资料:
http://www.cnblogs.com/hxsyl/p/4054034.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |