电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

大学数学实验之蒙特卡洛方法VIP免费

大学数学实验之蒙特卡洛方法_第1页
1/9
大学数学实验之蒙特卡洛方法_第2页
2/9
大学数学实验之蒙特卡洛方法_第3页
3/9
《数学实验》报告班级:序号:姓名:1.问题描述I、用蒙特卡罗方法计算以下函数在区间上的积分,并改变随机点数目观察对结果的影响。(1)y=1/(1+x),0==0,x1+2x2+2x3<=72,10<=x2<=20,x1-x2=10;(3)f(x,y)=(X.^2+2*(Y.^2)+X.*Y).*exp(-X.^2-Y.^2),abs(x)<1.5,abs(y)<1.5;2.问题分析与实验过程I、(1)使用均值估计法程序:functionp=shell1(a,b,n)z=0;x=unifrnd(a,b,1,n);fori=1:nu=(x(i)+1)^(-1);z=z+u;endp=(b-a)*z/n;运行结果:p=shell1(0,1,1000)p=0.6975>>p=shell1(0,1,10000)p=0.6922>>p=shell1(0,1,100)p=0.7001>>p=shell1(0,1,500)p=0.6890结果分析:改变了四次随机点数,结果都趋近于0.69,说明积分值约等于0.69,但是点数越多,值越接近。I、(2)使用均值估计法程序:functionp=shell2(a,b,n)z=0;x=unifrnd(a,b,1,n);fori=1:nu=(exp(3*x(i)))*sin(2*x(i));z=z+u;endp=(b-a)*z/n;运行结果:>>p=shell2(0,2,1000)p=-24.4911>>p=shell2(0,2,100)p=-43.8720>>p=shell2(0,2,10000)p=-30.8699>>p=shell2(0,2,500)p=-23.2955>>p=shell2(0,2,100000)p=-30.0058结果分析:改变了5次随机点数,结果变化较大,但是点数越多,值越接近真实积分值。所以积分值近似于-30。I、(3)使用均值估计法程序:functionp=shell3(a,b,n)z=0;x=unifrnd(a,b,1,n);fori=1:nu=(1+x(i)^2)^0.5;z=z+u;endp=(b-a)*z/n;运行结果:>>p=shell3(0,2,100)p=2.9293>>p=shell3(0,2,1000)p=2.9516>>p=shell3(0,2,10000)p=2.9512>>p=shell3(0,2,100000)p=2.9600结果分析:改变了四次随机点数,结果都趋近于2.95,说明积分值约等于2.95,而且点数越多,值越接近真实积分值。I、(4)使用均值估计法程序:functionp=shell4(a,b,n)z=0;x=unifrnd(a,b,1,n);fori=1:nu=(1/(2*pi)^0.5)*exp(-x(i)^2/2);z=z+u;endp=(b-a)*z/n;运行结果:>>p=shell4(0,2,100000)p=0.4783>>p=shell4(0,2,10000)p=0.4777>>p=shell4(0,2,1000)p=0.4765>>p=shell4(0,2,100)p=0.4432结果分析:改变了四次随机点数,结果都趋近于0.47,说明积分值约等于0.47,而且点数越多,值越接近真实积分值。I、(5)使用均值估计法程序:functionp=shell5(a,b,n)z=0;x=unifrnd(a,b,1,n);fori=1:nu=exp(x(i)/2)*(sin(x(i)))^2;z=z+u;endp=(b-a)*z/n;运行结果:>>p=shell5(0,2*pi,100)p=22.0140>>p=shell5(0,2*pi,1000)p=20.2718>>p=shell5(0,2*pi,10000)p=20.9394>>p=shell5(0,2*pi,100000)p=20.7968结果分析:改变了四次随机点数,结果都趋近于20.8,说明积分值约等于20.8,而且点数越多,值越接近真实积分值。I、(6)使用均值估计法程序:functionp=shell6(a1,b1,a2,b2,n)z=0;x=unifrnd(a1,b1,1,n);y=unifrnd(a2,b2,1,n);fori=1:nify(i)<=sin(x(i));u=exp(-x(i)^2-y(i)^2);z=z+u;endendp=(b1-a1)*(b2-a2)*z/n;运行结果:>>p=shell6(0,pi,0,1,100)p=0.4368>>p=shell6(0,pi,0,1,1000)p=0.3378>>p=shell6(0,pi,0,1,10000)p=0.3674>>p=shell6(0,pi,0,1,100000)p=0.3610结果分析:改变了四次随机点数,结果都趋近于0.36,说明积分值约等于0.36,而且点数越多,值越接近真实积分值。II、(1)使用蒙特卡罗法分析:将x在它被允许的范围内生成多个随机的数值,利用max函数可以近似地求出结果。然后做出图像,进行结果的比较。程序:functionf81(n)x=unifrnd(-2*pi,2*pi,1,n);y=(1-x.^2).*sin(3*x);max(y)x=-2*pi:0.001:2*pi;y=(1-x.^2).*sin(3*x);plot(x,y)xlabel('x');ylabel('y');运行结果:>>f81(1000)ans=32.3293>>f81(10000)ans=32.4002>>f81(100000)ans=32.4006做出函数的图像,并且标出最高点的值结果分析:可以看到,蒙特卡罗法求出的最大值接近于32.4,而从图中可以看出最...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

大学数学实验之蒙特卡洛方法

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部