【Practical】蒙特卡罗无穷区间积分
- 基于蒙特卡罗积分法对于无穷区间进行定积分。
文章目录
- 示例一.
- 示例二.
示例一.
- 【定积分】∫−∞∞x⋅12π⋅exp(−x22)⋅dx\int_{-\infin}^{\infin}x\cdot\frac1{\sqrt{2\pi}}\cdot\exp\Big(\frac{-x^2}2\Big)\cdot dx∫−∞∞x⋅2π1⋅exp(2−x2)⋅dx
- 【思路】取 f(x)=xf(x)=xf(x)=x,那么剩余部分恰为定义在区间 (−∞,∞)(-\infin,\infin)(−∞,∞) 上的标准正态分布的密度函数:p(x)=12π⋅exp(−x22)p(x)=\frac1{\sqrt{2\pi}}\cdot\exp\Big(\frac{-x^2}2\Big)p(x)=2π1⋅exp(2−x2)所以我们按照标准正态分布在区间 (−∞,∞)(-\infin,\infin)(−∞,∞) 进行抽样得到 x1,x2,⋯,xnx_1,x_2,\cdots,x_nx1,x2,⋯,xn 后计算函数均值作为上述定积分的估计值即可。
- 从概率论知识出发,上述定积分等价于计算标准正态分布的均值,我们可以预见 —— 蒙特卡罗积分的数值计算结果会收敛到 000 附近。
- Python代码以及绘图结果如下:
# -*- coding: utf-8 -*-
"""
Spyder EditorThis is a temporary script file.
"""
# In[]
import numpy as np
import matplotlib.pyplot as pltdef func(x):return x# In[]
n = np.linspace(10,1000,1000).astype(int)res = np.zeros(len(n))# In[]
for i in range(len(n)):x = np.random.randn(1,n[i])x = func(x)res[i] = np.mean(x)# In[]
plt.plot(n,res)
示例二.
- 【定积分】∫−∞∞x2⋅exp(−x22)⋅dx\int_{-\infin}^{\infin}x^2\cdot\exp\Big(\frac{-x^2}2\Big)\cdot dx∫−∞∞x2⋅exp(2−x2)⋅dx
- 【思路】改写上述定积分:∫−∞∞2πx2⋅12π⋅exp(−x22)⋅dx\int_{-\infin}^{\infin}\sqrt{2\pi}x^2\cdot\frac1{\sqrt{2\pi}}\cdot\exp\Big(\frac{-x^2}2\Big)\cdot dx∫−∞∞2πx2⋅2π1⋅exp(2−x2)⋅dx因此定义 f(x)=2πx2f(x)=\sqrt{2\pi}x^2f(x)=2πx2 即可,其余过程和示例一完全相同。
- Python代码以及绘图结果如下所示:
# -*- coding: utf-8 -*-
"""
Spyder EditorThis is a temporary script file.
"""
# In[]
import numpy as np
import matplotlib.pyplot as pltdef func(x):const = np.sqrt(2*np.pi)return const*(x**2)# In[]
n = np.linspace(10,1000,1000).astype(int)res = np.zeros(len(n))# In[]
for i in range(len(n)):x = np.random.randn(1,n[i])x = func(x)res[i] = np.mean(x)# In[]
plt.plot(n,res)
- 个人经验来看,有限区间内以均匀分布作为 p(x)p(x)p(x) 为妙,无限区间可以考虑符合要求的正态分布或指数分布等。
【Practical】蒙特卡罗无穷区间积分相关推荐
- 考研高数考纲增加内容(无穷区间-无界函数 反常积分比较判别法_比较判别法的极限形式)(无穷级数积分判别法)
文章目录: 1.考纲改变具体内容 2.无穷区间.无穷函数小结 3.补充不等式
- 利用java求积分(定积分和无穷限积分)
[0]README 0.1)本文部分文字描述转自或译自 https://en.wikipedia.org/wiki/Simpson%27s_rule和 https://en.wikipedia.org ...
- matlab计算积分负无穷到正无穷,无穷限积分的Matlab实现(转)
计算无穷限积分(广义积分)的函数,用Matlab实现,发给大家参考. 1.函数quadFromInf用于计算从负无穷大到一个确定值a的积分. 2.函数quadToInf用于计算从一个确定值a到正无穷大 ...
- 阿当姆斯校正程序代码MATLAB,全区间积分的阿当姆斯预报校正法(常微分方程组的求解)...
/* 代码作者:不详 代码整理者:设计天下 MySDN网站 算法天下工作室 功能:全区间积分的阿当姆斯预报校正法(常微分方程组的求解) */ #include "stdio.h" ...
- Practical GameMaker Projects 免积分下载
图书说明: 制作十个简单,休闲的游戏,并沿途学习大量的GML编码.这些游戏中的每一种都是您在有一两分钟免费时可以玩的游戏,非常适合在PC上玩,或者导出到HTML5或Android. Practical ...
- MATLAB中积分命令【计算无穷限积分(广义积分)的函数】
1.函数quadFromInf用于计算从负无穷大到一个确定值a的积分. 2.函数quadToInf用于计算从一个确定值a到正无穷大的积分. ------------------------------ ...
- 高等数学公式大全(二)
一元函数积分学的概念与计算 章节概括 概念 不定积分 原函数与不定积分 原函数(不定积分存在定理) 定积分 定积分概念 定积分存在定理 定积分性质 变限积分 变限积分的概念 变限积分的性质 变限积分的 ...
- Part 12(2) 含参广义积分(含参无穷积分和瑕积分)
含参积分是一类包含积分结构的函数,但积分变量不是函数自变量 文章目录 3. 含参变量广义积分 3.1. 含参积分相关理论 3.1.1. 含参积分常义积分的定义 3.1.2. 含参常义积分的分析性质 3 ...
- 无穷积分的符号计算及其MATLAB程序
无穷区间上的反常积分有三种基本类型,如下: 1. 可以用MATLAB程序: F1=int ( f(x), x, a, +int) 计算 2. 可以用MATLAB程序: F1=int ( f(x), x ...
最新文章
- SAP Batch Management 批次主数据中classification视图中GR Date没有被更新?
- celery java_Celery详解
- 定义列表的特点html,HTML的列表表格表单知识点
- java演练 数组的逆序文字玩法 你是猪才怪
- 光电显示未连接服务器,T106串口服务器解决方案
- 腾讯PHP工程师面试题两份
- 应用随机过程_《常见随机过程》(目录)
- 智能蓝牙技术原理及设计方案集锦
- R中输出常见位图和矢量图格式总结
- 阿里巴巴校招实习生一面记录
- 1192: 删除记录(结构体专题)
- 通过阿里云API 身份证图片或拍身份证 读取身份证正反面信息
- JVM调优参数大全及G1GC调优
- 清默网络——IPV6的地址详解
- 计量经济学学习笔记:多重共线性、异方差、自相关
- 简练软考知识点整理-创建工作分解结构过程
- MFC中英文切换实现过程中遇到的问题
- 墨者学院刷题笔记——SQL手工注入漏洞测试(MongoDB数据库)
- Android Studio开发蓝牙应用(二)
- html5鼠标滑过图片 图片弹出层,纯CSS3鼠标滑过图片遮罩层动画特效
热门文章
- 我在朝鲜做生意的一段经历(转贴震憾长文)
- 通过autofac教你彻底明白依赖解耦(二)理论结合实践 - 大侠.Net
- [读史思考] 田单火牛阵是真实的吗?
- 天天模拟器显示获取服务器失败,天天模拟器无法联网怎么办-天天模拟器不能上网的解决方法 - 河东软件园...
- python无敌了_斗图神器——python让你斗图无敌
- 登录页面测试用例设计方法
- Vue使用vue-print-nb打印,并去除页眉页脚,打开打印窗口自动打印
- 暗流涌动,为何​数据科学家迫不及待地辞职、换工作?
- 16细分单路步进电机驱动
- YOLOv5代码阅读笔记