设有宽度为1的正方形,其中有一半径为0.5的圆内接这个正方形,随机生成一定数量的点,落在圆内的点的数量和落在圆外点的数量的比值k即为π/4,我们只需要求出k的值,即可根据π=k*4即可求得圆周率。
参考资料:http://www.ruanyifeng.com/blog/2015/07/monte-carlo-method.html

代码如下:

% kkk=[];
% for i=1:10clc
dota=1000;
x=rand(1,dota);
y=rand(1,dota);
plot(x,y)
dis=[];
for i=1:length(x);
k=sqrt((x(i)-0.5)^2+(y(i)-0.5)^2);
dis=[dis,k];
end
count=0;
for i=1:length(dis)
if dis(i)<0.5count=count+1;plot(x(i),y(i),'color','red','marker','o','linestyle','none')hold on
elseplot(x(i),y(i),'color','blue','marker','o','linestyle','none')
end
end
qw=count/length(x);
disp('随机点个数:')
disp(dota)
disp('圆周率:')
disp(qw*4)
% kkk=[];
% kkk=[kkk,qw*4];
% end
% disp(kkk)
% jugg=((abs(pi-kkk))./pi)*100;
% plot(jugg)
% ylabel('相对误差百分比(%)')

matlab用蒙特卡洛法计算圆周率相关推荐

  1. 蒙特卡洛法计算圆周率近似值(C语言)

    C语言实现蒙特卡洛法计算圆周率近似值 随机生成ALL个范围0-1的数来模拟1×1的正方形,计算位于四分之一圆(X×X+Y×Y<1)内的个数inround,PI=4×ALL/inround.其中宏 ...

  2. 【python】蒙特卡洛法计算圆周率pi

    描述 蒙特卡洛(Monte Carlo)方法是由数学家冯·诺伊曼提出的,诞生于上世纪40年代美国的"曼哈顿计划".蒙特卡洛是一个地名,位于赌城摩纳哥,象征概率.蒙特卡洛方法的原理是 ...

  3. 用随机投点法计算pi值matlab,用蒙特卡洛法求圆周率PI的近似值,其算法如下:使用随机函数Rnd,随机生成两个[0,1)之间的随机数,由此构成一个投点坐标(x,y),然后根据x...

    (2) 实现上述功能的VB程序如下,请在划线处填入合适代码. Private Sub Command1_Click() Dim m1 As String, m2 As String, sum As S ...

  4. MATLAB多种方法计算圆周率(pai)

    目录 一.利用无穷级数展开式求π的近似值 (1)方法一 (2)方法二:优化 二.利用定积分的近似值求π的近似值 求定积分的三种方法:矩形法,梯形法,simpson法 三.利用蒙特卡洛法求π的近似值 一 ...

  5. 蒙特卡洛法模拟计算圆周率π

    一.蒙特卡洛法介绍 蒙特·卡罗方法(Monte Carlo method),也称统计模拟方法,是一种以概率统计理论为基础的数值计算方法,常用于特定条件下的概率计算问题.蒙特卡罗是摩纳哥的著名赌城,该法 ...

  6. matlab或_如何利用MATLAB计算圆周率

    圆周率是圆的周长与直径的比值,一般用希腊字母π表示,是一个在数学及物理学中普遍存在的数学常数.π也等于圆形之面积与半径平方之比.是精确计算圆周长.圆面积.球体积等几何形状的关键值. MATLAB中的表 ...

  7. 求pi的数学模型matlab计算pi,MATLAB实验-pi的计算 圆周率的近似计算 数学软件与数学实验 教学课件.ppt...

    MATLAB实验-pi的计算 圆周率的近似计算 数学软件与数学实验 教学课件 1.圆周率π的计算历程 所谓"圆周率"是指一个圆的周长与其直径的比值.古今中外,许多人致力于圆周率的研 ...

  8. 蒙特卡洛法计算机械臂工作空间matlab

    蒙特卡洛法计算机械臂工作空间matlab 前言 代码分析 1. 利用改进DH参数建立Franka的模型 2. 蒙特卡洛法求工作空间 前言 以Franka emika七轴机械臂为例,利用蒙特卡洛法在ma ...

  9. python计算圆周率(蒙特卡洛法/模拟法、统计法/穷举法、BBP公式)

    def calculatePI1(): #模拟统计法:蒙特卡罗方法计算圆周率import random as r #导入random模块命名为rimport math as m #导入math模块命名 ...

最新文章

  1. atoi,atol,strtod,atof
  2. Android 10.0 PackageManagerService(一)工作原理及启动流程-[Android取经之路]
  3. python生成折线图-Python数据可视化 -生成数据之绘制折线图和散点图
  4. SpringCloud中父子pom的结构和写法
  5. Java之BIO NIO AIO区别联系
  6. 漫谈边缘计算(二):各怀心事的玩家
  7. 遥远的救世主:电视剧《天道》
  8. Spring MVC验证器:Validator接口和ValidationUtils类
  9. Spring RCE 漏洞 CVE-2022-22965 的终极解决方案
  10. 李沐老师的PyTorch 版《动手学深度学习》PDF 开源了(全中文,支持 Jupyter 运行)
  11. mid、mif文件转shapefile、geojson等格式的数据
  12. 电脑32位和64位有什么区别
  13. 网课作业答案在哪找?手把手教你查大学网课作业答案~
  14. 音响无声或声音不正常的原因有哪些?
  15. 洛谷P1308统计单词数C语言
  16. 小甲鱼python入门笔记(一)(全)
  17. outlook你的邮件服务器证书无效,Outlook添加网易邮箱账号提示服务器的加密连接不可用的解决方法...
  18. 一个小白的Thingworx成长记录
  19. BUUCTF:镜子里面的世界
  20. Keras之TCN:基于keras框架利用时间卷积网络TCN算法对上海最高气温实现回归预测(把时间序列数据集转化为有监督学习数据集)案例

热门文章

  1. 10月21日绿健简报,星期五,农历九月廿六
  2. 简约商务通用PPT模板
  3. RTL8188EUS WIFI驱动编译与使用说明书
  4. 原生html单页应用,小白篇 -- 原生 js 实现单页应用的初探
  5. 【设计模式系列19】状态模式原理分析及其和策略模式,责任链模式的区别
  6. 几种常用非关系型数据库
  7. Numpy 常用函数
  8. 小苏的Shell编程笔记之三--数组和算术运算
  9. 看图,务必低调使用(一起来捉妖)
  10. flask框架和配置