专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

matlab随机数生成方法

来源:小嗨整编  作者:小嗨  发布时间:2023-03-02 02:13
摘要:matlab随机数生成方法本文将以matlab为例,介绍其随机数是如何生成的。随机数应用蒙特卡罗法的过程中,如何产生需要的随机数是关键的一个环节。Matlab有很多生成随机数的方法,比较常用的是random这个函数。Y=random(nam...

matlab随机数生成方法

本文将以matlab为例,介绍其随机数是如何生成的。

matlab随机数生成方法

随机数

应用蒙特卡罗法的过程中,如何产生需要的随机数是关键的一个环节。

Matlab有很多生成随机数的方法,比较常用的是random这个函数。

Y = random(name,A,B,C,[m,n,...]):

  • Y是生成的随机序列或随机矩阵;

  • name,随机分布的形式;

  • A,B,C,对应随机分布的参数;

  • [m,n,...]矩阵的规模。

例如,Y = random('unif',0,1,[100000,1]),生成了0-1的均匀分布。

matlab随机数生成方法

Y = random('exp',1,[100000,1]),生成了均值为1的指数分布。

matlab随机数生成方法

Y = random('norm',0,1,[N,1]),生成了0~1的高斯分布。

matlab随机数生成方法

随机种子

由于我们生成的实际上是伪随机数,随机数值是可以重现的,这里就要介绍如何应用随机种子。

如果我们使用Y = random('norm',0,1,[1,5]),连续使用几次,生成的结果每次都是不同的,如:

matlab随机数生成方法

这里,系统默认给了一个随机种子,因此每次结果是不同的。

如果我们希望随机化的过程可以重现,我们需要知道当前的随机种子编号,则应用rng这个函数可以实现。

运行以下代码,每次生成的Y都是一致的,因为我们指定了随机种子数:

a = rng(123456);

Y = random('norm',0,1,[1,5]);

随机种子有很多生成方式,系统默认的就有多种方法,如:

a = rng('shuffle', 'twister')

运行显示:

a =

     Type: 'twister'

     Seed: 1771971539

    State: [625x1 uint32]

我们把Seed给记下来,如果想重现,只要用这个随机种子,在rng里重置以下就行了。

常见的方式还有我们自己利用时钟生成随机种子,比如:

t = clock;

s = floor(t(1)+2*t(2)+3*t(3)+4*t(4)+5*t(5)+1000*t(6));

rng(s)

Y = random('norm',0,1,[1,5]);

随机过程

还有一类随机数不仅仅与分布有关,还与序列的排列顺序有关,称之为随机过程。

如高斯白噪声,可以通过wgn这个函数实现:

N = 100000;

x = wgn(1,N,0);      %生成N*1个高斯白噪声,功率为0dBW

序列的曲线,及其PSD,还有自相关函数如图。

matlab随机数生成方法

并且其分布也是满足高斯分布的。

matlab随机数生成方法

最后

应用蒙特卡罗法的过程中,如何产生需要的随机数是关键的一个环节,本文简要介绍了在Matlab中的常用实现方法,蒙特卡罗法这个专题也暂时告一段落。


本文地址:软件教程频道 https://www.eeeoo.cn/ruanjian/907129.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


软件教程
小编:小嗨整编
相关文章相关阅读
  • 数学建模软件matlab怎么用(数学建模软件matlab下载)?

    数学建模软件matlab怎么用(数学建模软件matlab下载)?

    数学建模软件matlab怎么用(数学建模软件matlab下载)?MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink...

  • nargin在matlab里面啥意思

    nargin在matlab里面啥意思

    nargin为“numberofinputarguments”的缩写。在matlab中定义一个函数时,在函数体内部,nargin是用来判断输入变量个数的函数。在matlab命令窗口中输入helpnargin或者docnarg...

  • Matlab中length函数怎么用

    Matlab中length函数怎么用

    在matlab中,length函数用于返回向量、数组或字符串中的元素个数。以下是length函数的一些用法示例:1、返回向量中的元素个数:v = [1, 2, 3, 4, 5];  numElements = length(v); % 结果...

  • matlab中zeros函数用法

    matlab中zeros函数用法

    matlab中zeros函数是用于返回一个double类零矩阵,其用法是:1、在命令行窗口中输入“b=zeros(5)”,按回车键可生成一个“5*5”的零矩阵;2、在命令行窗口中输入“b=zeros(3,4)”,并按回车键即可。zeros函...

  • matlab中randn函数用法

    matlab中randn函数用法

    matlab中randn函数用法MATLAB中的randn函数matlab函数randn:产生正态分布的随机数或矩阵的函数randn:产生均值为0,方差σ^2=1,标准差σ=1的正态分布的随机数或矩阵的函数。用法:Y=rand...

  • scilab和matlab的区别

    scilab和matlab的区别

    scilab和matlab的区别:1、注释符号;2、预设变量的表示;3、操作符的用法;4、矩阵的定义与调用;5、程序的编辑与执行;6、数据类型;7、函数库;8、图形界面;9、社区支持与生态系统;10、跨平台兼容性;11、价格。详细介绍:1、...

  • javascript 产生随机数的几种方法总结

    javascript 产生随机数的几种方法总结

    这篇文章主要介绍了javascript产生随机数的几种方法总结的相关资料,希望通过本文大家能够掌握javascript如何实现这样的方法,对javascript感兴趣的朋友可以参考下本篇文章javascript产生随机数的几种方法总结1...

  • php怎么设置随机数

    php怎么设置随机数

    php设置随机数的方法:1、通过“mt_rand()”生成随机数;2、通过“make_password”方法生成随机数;3、通过“get_password”方法生成随机数;4、通过“getrandstr”方法生成随机数。本文操作环境:win...

  • 周排行
  • 月排行
  • 年排行

精彩推荐