综合实验三蒲丰投针问题实验.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
综合实验三蒲丰投针问题实验

综合实验三 蒲丰投针问题实验 一、实验目的 1. 掌握几何概型、熟悉Monte Carlo方法的基本思想; 3.会用MATLAB实现简单的计算机模拟 二、实验内容 在用传统方法难以解决的问题中,有很大一部分可以用概率模型进行描述.由于这类模型含有不确定的随机因素,分析起来通常比确定性的模型困难.有的模型难以作定量分析,得不到解析的结果,或者是虽有解析结果,但计算代价太大以至不能使用.在这种情况下,可以考虑采用Monte Carlo方法。下面通过例子简单介绍Monte Carlo方法的基本思想. Monte Carlo方法是计算机模拟的基础,它的名字来源于世界著名的赌城——摩纳哥的蒙特卡洛,其历史起源于1777年法国科学家蒲丰提出的一种计算圆周的方法——随机投针法,即著名的蒲丰投针问题。这一方法的步骤是: 取一张白纸,在上面画上许多条间距为d的平行线,见图8.1(1) 取一根长度为的针,随机地向画有平行直线的纸上掷n次,观察针与直线相交的次数,记为m 3)计算针与直线相交的概率. 由分析知针与平行线相交的充要条件是 其中 建立直角坐标系,上述条件在坐标系下将是曲线所围成的曲边梯形区域,见图 8.l(2). 由几何概率知 4)经统计实验估计出概率由(*)式即 Monte Carlo方法的基本思想是首先建立一个概率模型,使所求问题的解正好是该模型的参数或其他有关的特征量.然后通过模拟一统计试验,即多次随机抽样试验(确定m和n),统计出某事件发生的百分比.只要试验次数很大,该百分比便近似于事件发生的概率.这实际上就是概率的统计定义.利用建立的概率模型,求出要估计的参数.蒙特卡洛方法属于试验数学的一个分支. 问题: (1) 经过n次试验后圆周率估计与的圆周之间的差的绝对值的规律是? 其中n分别取100,1000,2000,5000,10000,20000,50000 (2) 参数l,d的不同选择,会对圆周率的估计有什么影响? 可以选择d为l.5倍,2倍,3倍,4倍,5倍,8倍,10倍,20倍,50倍 三、实验要求 写出实验步骤、结果显示及分析 四、实验分析 以x 表示针的中点与最近一条平行线的距离,以 j表示针与此线间的交角.显然 0≤x≤a/2 0≤j≤p   针与平行线相交的充要条件是 x≤lsin(j)/2   因(x,j)在图(4)中下面的矩形中等可能地取点,可见针与平行线相交的概率p为图(4)正弦曲线线段与横轴围成的面积同图(4)中矩形面积的比.经计算得 p= 另一方面得到  如大量得投针实验,利用大数定理知:随着实验次数的增加,针与平行线相交的频率依概率收敛到概率p.那么在上式中以频率代替相应的概率p,则可以获得圆周率p的近似值.下面的程序是用matlab语言编写的计算机模拟投针以计算p的近似值的程序. 五、实验步骤 1.编写MATLAB程序 clear d=2 l=0.5 counter=0 n=100 x=unifrnd(0,d/2,1,n) fi=unifrnd(0,pi,1,n) for i=1:n if x(i)1*sin(fi(i))/2 counter=counter+1 end end fren=counter/n pihat=2*1/(d*fren) sqrt((pihat-pi)^2) 结果显示: fren = 0.3300 pihat =3.0303 ans =0.1113 以此类推:将n=1000,2000,5000,10000,20000,50000分别代入,可得: 当n=1000时, fren =0.3240 pihat =3.0864 ans =0.0552 当n=2000时, fren =0.3230 pihat =3.0960 ans =0.0456 当n=5000时, fren =0.3204 pihat =3.1211 ans =0.0205 当n=10000时, fren =0.3190 pihat =3.1348 ans =0.0068 当n=20000时, fren =0.3172 pihat =3.1521 ans =0.0105 当n=50000时, fren =0.3177 pihat =3.1478 ans =0.0062 2.改变d的取值,分别为1.5, 2 ,3 ,4,5,8,10,20,50倍 仍用1中的程序: clear d=3 l=0.5 counter=0 n=100 x=unifrnd(0,d/2,1,n) fi=unifrnd(0,p

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档