22、数值模拟与计算方法:原理、应用与实践

数值模拟与计算方法:原理、应用与实践

模拟基础与随机数生成

在模拟领域,随机数的生成是基础且关键的部分。 rand 是一个伪随机数生成器,它能返回在区间 [0, 1) 内均匀分布的随机数。通常, rand 每次启动会话时产生的序列相同,这不符合现实情况。为了每次启动会话时生成不同的序列,可以使用不同的方式对 rand 进行初始化。

可以使用 rand('state', n) 语句对 rand 进行初始化,其中 n 是任意整数。当 MATLAB 会话启动时,默认 n 被设置为 0。如果需要每次运行脚本时生成相同的随机序列,这个功能会很有用,比如在调试脚本时。需要注意的是,该语句并不生成随机数,只是初始化生成器。

还可以利用系统时间让 n 每次启动 MATLAB 时都不同。 clock 函数会返回一个包含日期和时间的六元素向量,精确到秒的小数点后两位,因此 sum(100*clock) 几乎不会有相同的值。可以用它来初始化 rand ,理论上 rand 在重复之前可以生成超过 21492 个数字。

常见模拟场景
  1. 抛硬币模拟 :当抛一枚公平的硬币时,得到正面或反面的概率都是 0.5。由于 rand
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值