python 随机数_python项目实战:实现蒙特卡罗方法,求物体阴影面积
前言
蒙特卡罗方法是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。与它对应的是确定性算法。蒙特·卡罗方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域应用广泛。
上面的是百度百科上面的介绍,接下来让我们一起来看看蒙特卡罗方法在Python的中的应用吧,具有一定的参考价值,代码如下:
以上就是我们做一个简单的圆周率的近似计算,在这个过程中我们要用到随机数,因此需要先使用import numpy as np导入numpy库。
在上面的程序中我们用8000000个随机数进行投放,这样得到的结果会更精确一些,运行程序需要一定的时间,最终得到的结果如下:
学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习python或者有兴趣学习python的伙伴可以私信回复小编“学习” 获取资料,一起学习
接下来进入正题,你随便在一个画图工具上描绘一个阴影图片,我们就可以用蒙特卡罗来求它的阴影面积,如下图:
上面的图形是不规则的,我们只需知道在投放大量随机数的情况下,随机数在黑色部分出现的概率,再用总面积相乘即可估算黑色部分的面积。我们知道,黑色的rgb编码为(0,0,0),所以需要统计rgb编码为(0,0,0)时随机数的投放概率即可。
上面的代码可分为两部分,第一个for后面是用蒙特卡罗方法获得的面积的估计值,第二个for后面是用遍历所有像素点的方法获得的面积的精确值,获得两个输出后进行对比。
我们在上面的程序中采用了9000000个随机数,可以看出两个输出结果相差并不大。
以上就小编所分享内容了,希望能够帮助到大家
python 随机数_python项目实战:实现蒙特卡罗方法,求物体阴影面积相关推荐
- 蒙特卡洛实现python过程_python项目实战:实现蒙特卡罗方法,求物体阴影面积
前言 蒙特卡罗方法是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法.与它对应的是确定性算法.蒙特·卡罗方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算.量子热力学计算.空气动力学计 ...
- python架构师培训课程_Python从零到架构师课程 六大阶段Python高级课程+项目实战 尚学堂全方位Python课程...
Python从零到架构师课程 六大阶段Python高级课程+项目实战 尚学堂全方位Python课程 3.JPG (31.16 KB, 下载次数: 1) 2019-9-17 23:36 上传 2.JP ...
- Python和Java结合的项目实战_[项目实战] Python高级教程项目实战篇 Python和Java结合的项目实战 视频教程 [...
资源介绍 课程简介:xa0xa0 Python高级教程项目实战篇 Python和Java结合的项目实战 视频教程 教学视频 ----------------------课程目录 Python项目实战篇 ...
- pytest测试实战 电子书_电子书丨Selenium 3+Python 3自动化测试项目实战:从菜鸟到高手...
▊<Selenium 3+Python 3自动化测试项目实战:从菜鸟到高手> 田春成 著 电子书售价:39.5元 2019年9月出版 Selenium是目前非常流行的一种自动化测试工具.本 ...
- python3自动化测试书籍推荐_免费送书 | 《Selenium 3+Python 3自动化测试项目实战:从菜鸟到高手》...
点击上方蓝色字体,关注我们 免费送书 2019年就剩「2个月」了,你的读书计划进行得如何? 莫踌躇,光荣之路马上送你本书! 读完它,请为你的2019年画上个美丽的圈圈! <Selenium 3+ ...
- Python机器学习/数据挖掘项目实战 波士顿房价预测 回归分析
Python机器学习/数据挖掘项目实战 波士顿房价预测 回归分析 此数据源于美国某经济学杂志上,分析研究波士顿房价( Boston HousePrice)的数据集. 在这个项目中,你将利用马萨诸塞州波 ...
- python爬虫项目实战教学视频_('[Python爬虫]---Python爬虫进阶项目实战视频',)
爬虫]---Python 爬虫进阶项目实战 1- Python3+Pip环境配置 2- MongoDB环境配置 3- Redis环境配置 4- 4-MySQL的安装 5- 5-Python多版本共存配 ...
- Matlab仿真-蒙特卡罗方法求半径为1圆的面积
试用蒙特卡罗方法求出半径为1的圆的面积,并与理论值对比. (1)数学模型. 设有两个相互独立的随机变量x,y,服从[0 2]上的均匀分布.那么,由它们所确定的坐标点(x,y)均匀分布于 ...
- 7-3 蒙特卡罗方法求圆周率 (15 分)(Java)
7-3 蒙特卡罗方法求圆周率 (15 分)(Java) 可算写出来了 使用蒙特卡洛仿真方法求圆周率.(具体要求见作业指导书 2020-OO第05次作业-2指导书V1.0.pdf ) 输入格式: 从键盘 ...
最新文章
- 【Qt】ubuntu14.04+qt5.6+opencv2.4编程注意事项
- vue css 应用变量_如何使用CSS Grid和CSS变量快速为应用创建原型
- 依赖注入Dagger2详解
- 分组密码的工作模式--wiki
- 树莓派2+无线网卡=钓鱼热点
- 九十九、Python所学经验分享
- java中的strictfp的作用
- Servlet使用适配器模式进行增删改查案例(Emp.java)
- HDU2067(卡特兰数)
- 爱链工具怎么使用 爱链工具详细使用图文教程
- 简单的窗体抖动托管c++
- 测试经验谈:测试人怎么从 0—1 进化
- 自己做网站需要掌握哪些知识?
- 用html制作四行四列的表格,HTML表格
- 英语面试常用口语900句
- 69张图回顾2021和看透2022
- wps文字如何取消英文首字母输入时自动变大写
- PHP 屏幕亮度,window_Win8系统 调节电脑屏幕亮度的四种方法,第一页:Win8系统下调节电脑屏 - phpStudy...
- JS循环输出数组及数组键值
- 红米有android,超23款小米、红米升Android O以上系统,日前又一款尝鲜Andro