python蒙特卡洛算法求积分_python中实现蒙特卡洛算法

蒙特卡洛算法,是一种以概率统计理论为指导的一类非常的数值计算方法,是指使用随机数来解决很多计算问题的方法。

应用一:用蒙特卡洛算法求解圆周率

思路:在直角座标系中选取x[-1,1],y[-1,1]的正方形区域,其内接圆是以原点为圆心,1为半径的单位圆。在这一矩形区域中随机产生大量的点,判断这些点在圆内的比例,以此来得到圆周率。

实现代码:

from random import *

from math import *

times = 100000

count = 0

for i in range(times):

x = uniform(-1,1)    #产生(-1,1)之间的随机浮点数

y = uniform(-1,1)

if x*x + y*y <=1:    #统计在圆内的点

count += 1

pi = count * 4.0 / times #此时圆的面积就是π的值,面积等于矩形面积乘于比例值

print(pi)

运行结果:

对于更多产生随机数的方法可见链接:

http://blog.csdn.net/junli_chen/article/details/53666274

应用二:蒙特卡洛算法计算自然常数e

要求解自然常数e,就必须找到求解e的模型;下面提供一种求e的方法。

对于积分:的结果为ln2,其对应的图像大致如下:

利用蒙特卡洛算法计算出A的面积,假设总共有m个随机数,在阴影部分的有n个,那么A的面积为n/m*1。在实验数据量很大时,应该有n/m=ln2. 经过转换可得到自然常数e = 2^(m/n).

所以求解e的python实现代码如下:

from random import *

from math import *

times = 1000000

count = 0

for i in range(times):

x = uniform(1,2) #产生(1,2)之间的随机浮点数

y = uniform(0,1)

if x*y<1:

count += 1

e1 = pow(2,times/count) # e = 2^(m/n)

print(e1)

结果:

相关算法的参考在如下链接中:

http://blog.csdn.net/ACdreamers/article/details/44978591

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/512344.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenKruise v0.10.0 新特性 WorkloadSpread 解读

简介&#xff1a; 针对需求&#xff0c;OpenKruise 在 v0.10.0 版本中新增了 WorkloadSpread 特性。目前它支持配合 Deployment、ReplicaSet、CloneSet 这些 workload&#xff0c;来管理它们下属 Pod 的分区部署与弹性伸缩。下文会深入介绍 WorkloadSpread 的应用场景和实现原理…

CSS 状态管理,玩出花样了!

作者 | 零一来源 | 前端印象CSS用于交互的方式无非就那么几种&#xff1a;伪类&#xff1a;:hover、:link、:active ...动画&#xff1a;animation过渡动画&#xff1a;transition这些交互方式组合起来&#xff0c;真的可以玩出一些花样&#xff0c;例如我们本文的主题&#xf…

custom的短语_custom是什么意思中文翻译

音标&#xff1a;英[ˈkʌstəm]美[ˈkʌstəm]n.习惯&#xff0c;惯例&#xff1b;海关&#xff0c;关税&#xff1b;经常光顾&#xff1b;[总称](经常性的)顾客adj.(衣服等)定做的&#xff0c;定制的网络自定义&#xff1b;习惯&#xff1b;风俗&#xff1b;习俗英英释义noun…

告别Kafka Stream,让轻量级流处理更加简单

简介&#xff1a; 还在花精力去选型Kafka组件去做清洗转化&#xff1f;来试试Kafka ETL任务功能&#xff01; 一说到数据孤岛&#xff0c;所有技术人都不陌生。在 IT 发展过程中&#xff0c;企业不可避免地搭建了各种业务系统&#xff0c;这些系统独立运行且所产生的数据彼此独…

元宇宙“性骚扰”现象频出,Meta推出“个人结界”能保护好女玩家吗?

作者 | 小码君来源 | 抓码青年元宇宙&#xff0c;可以说是最近最炙手可热的概念了。各大厂纷纷入局元宇宙&#xff0c;Faceebook甚至将总公司名字都改名为Meta。不过盯上元宇宙的可不止资本大鳄&#xff0c;还有一些不怀好意的色狼。据外媒报道称&#xff0c;在Meta的Oculus设备…

【CDS技术揭秘系列 01】阿里云CDS-OSS容灾大揭秘

简介&#xff1a; 本文主要阐述 CDS 产品中 OSS 服务在容灾方面的部署形态以及实现的其本原理。 容灾功能可以保证用户一份数据在多个地方存在冗余备份&#xff0c;当某个机房出现极端异常&#xff08;比如物理损毁&#xff09;情况下&#xff0c;数据也不会出现丢失&#xff1…

如何促合作共赢?技术人的一点经验分享

简介&#xff1a; 本文作者将通过与詹韦团队一起合作的《树懒平台》&#xff0c;分享在工作过程中&#xff0c;我们什么情况下会有合作诉求&#xff1f;有了合作诉求之后&#xff0c;如何寻找对的人&#xff1f;锁定候选人之后&#xff0c;如何打动对方促成合作&#xff1f;合作…

caputo分数阶导数程序_caputo分数阶导数

Caputo 分数阶微分算子合成性质的推广① 秦彤晖, 张笛 【摘要】摘要: 运用微积分学的基本方法,得到了 Riemann-Liouville 分数 阶积分算子和 Caputo 分数阶微分算子......而且对于分数阶序列导数的微分方程的求解 是比较实用的.本文的目的在于展示微分变换方法不仅适用于Caputo…

不记得 Git 命令? 懒人版 Git 值得拥有!

作者 | Eason来源 | 程序员巴士Git的强大是所有开发者都心知肚明的事情&#xff0c;但是其多样的命令令人很是难受。不过在Github上有着这么一个开源项目lazygit[1]。Lazygit是由Jesseduffield开发并维护的项目&#xff0c;其代码托管在Github。通过使用Lazygit&#xff0c;我们…

Dubbo3.0|阿里巴巴服务框架三位一体的选择与实践

简介&#xff1a; 服务框架就像铁路的铁轨一样&#xff0c;是互通的基础&#xff0c;只有解决了服务框架的互通&#xff0c;才有可能完成更高层的业务互通&#xff0c;所以用相同的标准统一&#xff0c;合二为一并共建新一代的服务框架是必然趋势。Dubbo3.0 是 Dubbo2.0 与 HSF…

海康录像机能用别的摄像头吗_海康录像机怎么添加网络摄像头,你会了吗?

原标题&#xff1a;海康录像机怎么添加网络摄像头&#xff0c;你会了吗&#xff1f;1、录像机和摄像头通电连接好设备。2、在显示器画面右击鼠标点击主菜单。3、输入海康录像机密码登录设备。4、进入主菜单选择系统设置。5、在系统设置中点击网络配置&#xff0c;进入基本设置&…

全球首款乘云而来的存储产品CDS诞生!

9月22日&#xff0c;阿里云发布全球首款“云定义存储”&#xff08;Cloud Defined Storage&#xff0c;CDS&#xff09;产品。作为一款本地部署的分布式存储产品&#xff0c;阿里云CDS拥有与公共云存储相同的技术架构&#xff0c;让企业客户在本地也能部署和使用与公共云一致的…

性能提升3倍、时延降低70%,阿里云企业级存储ESSD云盘再升级!

9月22日&#xff0c;阿里云存储年度新品发布会上&#xff0c;阿里云基础产品资深产品总监陈起鲲发布了其全球领先的旗舰级块存储产品ESSD的两款新规格&#xff08;ESSD Auto PL、ESSD PL-X&#xff09;&#xff0c;并宣布了新增的多项企业级能力。 据了解&#xff0c;ESSD是阿…

python 交易日_Python判断某天是否为A股“交易日”?

交易日&#xff1a;为 非节假日 且 非周六周日代码如下&#xff1a;# stock_util.pyimport urllib.request as requestimport datetimedef stock_get_date_type(query_date):"""获取日期类型:param query_date: 日期&#xff0c;如 2020-10-01:return 0:工作日&…

一图看懂,什么是“云定义存储”

世界的诞生是从盘古开天辟地开始 而数据的存储 则由在龟甲上刻下的第一个字开始 经过数千年发展 数据存储也从最初的 龟壳、竹简等材料逐步进化到磁带、硬盘甚至云上 在之前几千年里 人们对于数据存储的需求并没那么高 仅仅通过纸张就能将所有数据记录下来 随着第一台计算机面…

Android 13 第一个开发者版本来了,网友直呼:Android 12 还没玩透!

整理 | 苏宓出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;2 月 10 日&#xff0c;Google 宣布 Android 13 首个预览版面向开发者开放&#xff0c;此版本重点聚焦隐私和安全、提供开发者生产力、应用兼容性&#xff0c;并保持与 OpenJDK 11 更新一致、提供主题图标…

「技术人生」第6篇:技术同学应该如何理解业务?

简介&#xff1a; 本文以大量理论论述解析业务&#xff0c;并提供多种基于不同场景的实操方法&#xff0c;帮助技术同学以科学、合理的方式开展日常工作、指导团队开展业务建设&#xff0c;保障顶层设计的落地执行。 一. 背景 目前已经发布《技术一号位的方法论》系列文章其实…

参数设置_变频器基本参数设置

工业设备的使用如何达到最大效能以及最佳效果&#xff0c;需要使用人员充分了解设备性能以及工艺要求&#xff0c;所以变频器参数设置或者优化是非常重要的环节&#xff0c;古人云失之毫厘差之千里就是这个道理。一、变频器基本参数设置参数设置可以是手持编程器操作&#xff0…

Morphling:云原生部署 AI , 如何把降本做到极致?

简介&#xff1a; Morphling 本意是游戏 Dota 中的英雄“水人”&#xff0c;他可以根据环境要求&#xff0c;通过灵活改变自身形态&#xff0c;优化战斗表现。我们希望通过 Morphling 项目&#xff0c;实现针对机器学习推理作业的灵活、智能的部署配置改变&#xff0c;优化服务…

datax参数设置_DataX Web数据增量同步配置说明

一、根据日期进行增量数据抽取1.页面任务配置打开菜单任务管理页面&#xff0c;选择添加任务按下图中5个步骤进行配置1.任务类型选DataX任务2.辅助参数选择时间自增3.增量开始时间选择&#xff0c;即sql中查询时间的开始时间&#xff0c;用户使用此选项方便第一次的全量同步。第…