数学建模 --- 蒙特卡洛模拟使用的一些函数

简单思想

蒙特卡洛模拟是在计算机上模拟项目实施了成千上万次,每次输入都随机选择输入值。由于每个输入很多时候本身就是一个估计区间,因此计算机模型会随机选取每个输入的该区间内的任意值,通过大量成千上万甚至百万次的模拟次数,最终得出一个累计概率分布图,这个就是蒙特卡洛模拟。

定义

在这里插入图片描述

Matlab

Matlab产生随机数

  1. rand(m,n)函数产生由在[0,1]之间均匀分布的随机数组成的m行n列的矩阵(或称为数组)。
  2. [a,b]之间均匀分布的随机数组成的m行n列的矩阵
  • a + rand(m,n)*(b-a)
  • unifrnd(a,b,m,n)
  1. [a,b]内随机取出大小为m*n的整数矩阵
  • randi([a,b],m,n)
  1. 生成一个服从正态分布(MU参数代表均值,SIGMA参数代表标准差,方差开根号是标准差)的随机数
  • normrnd(MU,SIGMA)
  1. 生成一个均值为M的指数分布随机数(其对应的参数为 λ = 1 / M \lambda=1/M λ=1/M)
  • exprnd(M)
  1. 剔除一个矩阵或者向量的重复值,并将结果按照从小到大的顺序排列
  • unique()
unique([1 2 5; 6 8 9;2 4 6]) 

结果

1
2
4
5
6
8
9
  1. 生成一个1-m组成的随机序列
randperm(m)

记录运行时间

  • tic函数和toc函数可以用来返回代码运行的时间
    例如我们要计算一段代码的运行时间,就可以在这段代码前加上tic,在这段代码后加上toc

显示长数字格式

讲Matlab计算的结果显示为长数字格式

format long g

连接点的画线段

plot([1,2,6],[5,10,15],'-o') % 两个数组分别记录点的横纵坐标,依次画出线段 
text(2,10,'文本') % 在坐标(1,5)处标上文本

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43779658/article/details/108078254
今日推荐