《最新Matlab课程设计报告.docx》由会员分享,可在线阅读,更多相关《最新Matlab课程设计报告.docx(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateMatlab课程设计报告Matlab课程设计报告Matlab课程设计报告课程名称:MATLAB通信工程仿真设计题目:基于蒙特卡洛下的正三角形面积算法姓名:专业班级:所在学院:学校:时间:一 蒙特卡洛计算图形面积的原理设想有一袋豆子,把豆子均匀地朝图形上撒(假定豆子都在一个平面上,相互之间没有重叠),然后数这个图形之中有多少颗豆子,得出豆子数目就是图形面积。当豆子越小,
2、散得越多、越均匀的时候,结果就越精确。以数学语言来描述就是:对于求平面上一个边长为1的正方形的内部一个形状不规则的“图形”面积,Monte Carlo方法为:向该正方形均匀地随机投掷M个点,如果其中有N个点落于“图形”内,则该“图形”的面积近似为N/M。投掷的点数越多,结果越准确。二 数学模型如图一所示,可以很容易得到一个边长为1的正三角形的面积: 图一 正三角形面积求解 图二 用Monte Carlo方法求正三角形面积设有两个相互独立的随机变量,服从上均匀分布。那么,由它们所确定的坐标点是均匀分布于半径为的一个圆区域中,又该圆内的正三角形的边长为1,如图二所示。显然,坐标点落入正三角形中的概
3、率等于该正三角形的面积与圆的面积的比,即: 因此,只要通过随机试验统计出落入正三角形中的频度,即可计算出正三角形的近似面积来。当随机试验的次数充分大的时候,计算结果就趋近于理论真值。三 仿真试验其实现的MATLAB程序代码如下:clear all;s=0:0.01:2*pi;x=sin(s);y=cos(s);n=3;r=sqrt(3)/3;theta = (0:1/n:1)*2*pi;x,y=pol2cart(theta,r); m=0;x1=2*r*rand(999,1)-r;y1=2*r*rand(999,1)-r;index=find(x1.2+y1.2r.2);x1(index)=;y1(index)=;N=999;for n=1:Np1=x1(1:n);q1=y1(1:n);if (y1(n)(sqrt(3)/3).*x1(n)-1/3)&-sqrt(3)/6y1(n)r.2);x1(index)=;y1(index)=; m(k)=sum(y1(sqrt(3)/3).*x1-1/3)&(-sqrt(3)/6x1sqrt(3)/3);endS=mean(m)./ntime=toc 由于是随机试验,重复运行的结果也不完全相同,且不同计算机配置上的运行耗时也不一样,运行结果如下:S = 0.0153time = 1.4240 -