求解无穷区间的反常积分积分

[转载]蒙特卡洛方法——一维无穷限积分
已有 3968 次阅读
|个人分类:|系统分类:|关键词:蒙特卡洛|
|文章来源:转载
本文转载自:
前一篇Blog介绍了基于 quad() 函数计算无穷上下限积分的内容,此处我们介绍使用蒙特卡洛模拟的方法计算无穷上下限积分。关于蒙特卡洛方法的原理此处仅简要表述,不作详细展开。原始的积分形式是:
然后我们选择一种随机数分布,这个分布要求满足能够完整覆盖[a,b]区间,用g(x)来表示这个随机分布的概率密度函数(PDF),于是有下列的变换&&
然后我们就只要生成 [a,b] 区间内的符合g(x) 分布的一系列随机数 (x1, x2, &) ,计算 f(x)/g(xi) 的值,最后求平均值即可。例如计算:
可以选择[0,2]之间的均匀分布,此时g(x)=1/2, 于是需要用随机数计算的函数值为 exp(-x)/(1/2),代码此处就不写了。
上面我们看到了,如果 [a,b] 是有限区间,问题很好解决,只要生成就在此区间上的均匀分布即可,可是如果 [a,b] 是无穷区间呢? 均匀分布是不行的,这是我们可以选择一个无穷区间分布,常用的分布可以选用正态分布(不是因为它计算起来最简单,而是因为这种分布的随机数用得最多)。这里我们遇上一个麻烦,就是正态分布的PDF(概率密度函数)很复杂,接下来我们用 N(x) 来表示这个概率密度函数:
标准状态分布的mu=0, sigma=1; 我们可以在Matlab中定义标准正态分布的概率密度函数 N() :
N=@(x)(exp(-x.^2/2)/sqrt(2*pi));
例如我们要计算积分
需要计算的函数是exp(-x)/N(x),编程代码不是很复杂,生成一个随机数并计算上述函数的代码如下:
&& f2=@(x)(exp(-x.*x));
&& x=randn
&& f2(x)/N(x)
我们用向量化的方法一次性生成很多个(N=10000) 随机数,最后求平均值就是蒙特卡洛方法计算得到的积分值了。
&& X=randn(100000,1);
&& result=f2(X)./N(X);
&& mean(result)
由于正态分布取值区间是 [-无穷, +无穷], 如果要计算
就需要添加一个判断语句,将生成的标准正态分布随机数序列中的不在 [1, +无穷] 区间内的X对应的 f(x) 的值全部计算为0即可(注意,这样做效率不高,因为如果直接设置为0的X占的比重很大的话,会造成一定的空间浪费,解决这个问题很简单,用数学上的&条件分布&推导一下就可以了。
&& X=randn(100000,1);
&& result=zeros(size(X));
&& result(X&=1)=f2(X(X&=1))./N(X(X&=1));
转载本文请联系原作者获取授权,同时请注明本文来自宋保业科学网博客。链接地址:
上一篇:下一篇:
当前推荐数:0
推荐到博客首页
评论 ( 个评论)
扫一扫,分享此博文
作者的其他最新博文
热门博文导读
Powered by
Copyright &求解这个无穷积分:【高等数学吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:258,778贴子:
求解这个无穷积分:收藏
被积函数 ln x / (1+ x^2)对x 积分:从0到正无穷
算不出,不过这个东西有原函数的
还有本身收不收敛我也没算出来。。
原函数为非初等函数,但应该可以表示为复变函数
0,分成(0,1)和(1,∞)两个区间,对后面的区间做t=1/x换元
欢迎加入高数群,在这里,大神带你飞。妈妈再也不用担心我的成绩,所有考试,so easy!
还没教积分
还没教积分
登录百度帐号扫二维码下载作业帮
3亿+用户的选择
下载作业帮安装包
扫二维码下载作业帮
3亿+用户的选择
∫dx/1+x² 求定积分 区间是负无穷到正无穷.
作业帮用户
扫二维码下载作业帮
3亿+用户的选择
反常积分,I = arctanx | (-∞,+∞) = π/2 - (-π/2) = π
为您推荐:
其他类似问题
扫描下载二维码待解决问题
利用定积分定义求极限,积分区间为什么是0到1?
利用定积分定义求极限,积分区间为什么是0到1?
提问时间: 23:30:02提问者:
定积分定义里面将的很清楚,就是无限分割取极限用矩形分割法然后把矩形垒和就是定积分,而积分区间从【0,1】是由于1/n中 n从1到正无穷,故积分上下限从0到1. 欢迎登陆新东方在线欢迎到新东方在线论坛感谢您对新东方在线的支持和信任如您的问题未能得到妥善解决或有其他问题请访问:或联系售后客服:400 676 2300
回答时间: 13:24:14
[知识堂达人]
考研直通车
英语四六级
商务英语/BEC
口语风暴课程
青春期问题
娱乐八卦吐槽
旗下成员公司 全国客服专线:400-676-3300 上海客服专线:021- 购卡咨询(上海):021-Copyright (C)
Inc. All rights reserved. 新东方在线 版权所有
京公安备110-1081940博主最新文章
博主热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 积分区间 的文章

 

随机推荐