全文预览

[参考]基于蒙特卡洛方法求数值积分与R

上传者:hnxzy51 |  格式:docx  |  页数:44 |  大小:0KB

文档介绍
4 次,分别为 7654,,,nnnn ,得到精确值和模拟值。表 3.2.1 随机投点法的模拟次数和模拟值精确值为 0.1170196 3.2.2 平均值法 R 程序 p2<-function(n) { f<-function(r) exp(-x) a<-2 b<-4 r<-runif(n) h<-(b-a)*f(a+(b-a)*r) y<-mean(h) var<-1/n*var(h) lis<-list(y,var) return(lis) } p2(10^4) p2(10^5) p2(10^6) p2(10^7) 对模拟次数 n 调试了 4 次,分别为 7654,,,nnnn ,得到精确值和模拟值。表 3.2.2 平均值法的模拟次数和模拟值精确值为 0.1170196 3.2.3 分层抽样法 R 程序 f2<-function(n,m){ r1<-runif(n,min<-0,max<-0.5) r2<-runif(m,min<-0.5,max<-1) c<-1/2*mean(2*exp(-2-2*r1))+1/2*mean(2*exp(-2-2*r2)) var<-var(2*exp(-2-2*r1))/(4*n)+var(2*exp(-2-2*r2)/(4*m)) j<-list(c,var) return(j) n 410 5 10 6 10 710 模拟值 0.1868845 0.1868845 0.1868845 0.1868845 方差 2.33071e-05 2.32230e-06 2.32479e-07 2.32611e-08 n 410 5 10 6 10 710 模拟值 0.1173333 0.1169582 0.1170038 0.1170311 方差 1.30285e-05 1.30285e-06 1.30285e-07 1.30285e-08

收藏

分享

举报
下载此文档