2016 - 2024

感恩一路有你

蒙特卡洛方法求圆周率 python产生10000个随机点计算圆周率?

浏览量:1339 时间:2021-03-13 12:28:55 作者:admin

python产生10000个随机点计算圆周率?

蒙特卡罗方法可以通过多次散射点计算周长,模拟概率,计算面积。它是否在圆内,可以通过到圆心的距离来求解。利用计算机的运算速度,可以快速计算周长。喷洒次数越多,PI越精确。代码如下:

from random import random

from math import sqrt

from time import process time

DARTS=10000

hits=0.0

process time()

对于范围内的I(1,DARTS 1):

x,y=random()

dist=sqrt(x**2,y**2)

如果(dist<=1.0):

命中=命中1

pi=4*(命中/省道)

打印(”pi值为{}。". 格式(PI)

打印(”运行时为:{。5F}s”。格式(过程)蒙特卡罗分析(统计模拟)是一种使用随机抽样统计来估计结果的计算方法。它可以用来估计PI。它是由约翰·冯·诺依曼提出的。由于计算结果的准确性很大程度上取决于样本数,一般需要大量的样本数据,因此在没有计算机的时代一直没有得到重视。蒙特卡罗分析方法可以用来估计周长比。如图所示,在边长为2的正方形中,做一个半径为1的圆。正方形的面积等于2×2=4,圆的面积等于π×1×1=π。因此,正方形的面积与圆的面积之比是4:π。现在让我们用计算机或轮盘赌来生成几组均匀分布在0和2之间的随机数,这些随机数散落在正方形中作为某一点的坐标。那么平方中的数N与圆中的数k之比接近平方面积与圆面积之比,即N:k≈4:π,因此π≈4K/N,需要大量均匀分布的随机数才能得到更精确的值,这也是蒙特卡罗分析的缺点方法。

什么是蒙特卡洛法?

使用蒙特卡罗方法,在正方形中画一个内接圆,总面积为4rr,圆的面积为pirr,根据总点数与落在圆中的点数的比值,可以估算出pi

蒙特卡洛方法求圆周率 python计算圆周率代码 python蒙特卡洛法计算圆周率

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。