matlab用辛普森公式求积分_标准正态分布概率密度函数的定积分计算方法及Python实现代码...
最近利用碎片时间在读Allen B.Downey的《贝叶斯思维:统计建模的Python学习法》,顺便用手机上的Pythonista写实例。因为Pythonista没有scipy科学计算包,遇上需求标准正态累积分布函数的时候就只能抓瞎,为此决定自己写一个。累积分布函数(Cumulative Distribution Function,CDF)就是概率密度函数(Probability Density Function,PDF)的积分,利用原函数计算定积分的方法建立在牛顿-莱布尼兹公式之上
在知乎上查找一遍这个积分的计算方法,没找到理想的答案。所以决定写下来和大家一起学习一下。分别用数值积分法的复化辛普森公式和无穷级数的泰勒级数法求解这个积分,包括部分理论、算法和Python代码。
定积分
一、数值积分是利用黎曼积分等数学定义,用数值逼近的方法近似计算给定的定积分值。
1. 矩形公式:就是常见的黎曼和,矩形的高由函数值来决定,可选择使用左矩形、右矩形或中矩形。
如图2所示,用矩形面积来拟合积分,公式为
复化矩形公式为
当
2. 梯形公式
为了计算出更加准确的定积分,采用梯形代替矩形计算定积分近似值,其思想是求若干个梯形的面积之和,这些梯形的长短边由函数值来决定。这些梯形左上角和右上角在被积函数上。这样,这些梯形的面积之和就约等于定积分的近似值。
如图5所示,单个梯形的公式为
区间
从图像上可以看出梯形公式的逼近速度比矩形公式快。
3. 辛普森公式
矩形法和梯形法都是用直线线段拟合函数曲线的方法,另一种形式是采用曲线段拟合函数,实现近似逼近的数值积分方法。辛普森法(Simpson's rule)是以二次曲线逼近的方式取代矩形或梯形积分公式,以求得定积分的数值近似解。
在区间
另一种方法是通过拉格朗日插值法,把三个点的坐标代入
两种方法最终都可得出辛普森公式:
具体推算过程请自行搜索(公式太难打,我懒)。
图9:
将积分区间
注意:端点
我们来看看辛普森公式的拟合速度。
在实际求解数值积分时,我们总是采用成倍加密节点的方法,就复化辛普森公式而言,若划分为
#-*- coding:utf-8 -*-
二、利用泰勒级数求解标准正态概率密度函数的定积分
把标准正态概率密度函数
再对各项积分:
我们知道标准正态分布函数
由以上两个公式可得出:
因为上面的公式是一个无穷级数,计算时只能对前面有限项相加。选择越多,结果越准确。但数值精度并不要求无限高,可选取50项就足够,因而这里
#定义泰勒级数求积分法
下面是运行代码,分别用两种方法计算
def
计算结果如下:
辛普森法计算结果
由此可见两种方法计算结果近似,精确到了小数点后11位。
matlab用辛普森公式求积分_标准正态分布概率密度函数的定积分计算方法及Python实现代码...相关推荐
- matlab用辛普森公式求积分_数值计算实验9 数值积分实验
实验9 数值积分实验 成绩 实验类型:●验证性实验 ○综合性实验 ○设计性实验 实验目的:进一步熟练掌握变步长数值积分算法,提高编程能力和解决定积分问题的实践技能. 实验内容:用龙贝格积分算法计算 ...
- matlab用辛普森公式求积分_积分近似计算之辛普森公式
对于积分区间[a, b],若 则成立 辛普森公式 辛普森公式可看作是改良的梯形公式.梯形公式是以直线逼近实际曲线,而辛普森公式则以二次曲线(即抛物线)逼近. 以二次曲线逼近实际曲线 根据辛普森公式可得 ...
- matlab用辛普森公式求积分_数值积分常用方法
数值积分的基本思想 由积分中值定理可知,在积分区间 内存在一点 ,成立 式的几何意义即为:底为 而高为 的矩形的面积恰等于所求曲边梯形的面积 .因此,要想求出 式左端积分,我们只需要知道三个值: 即可 ...
- matlab用辛普森公式求积分_如何用Excel公式求最大值对应的行列序号
微信公众号: Excel and Python 微信名搜索: 实用办公编程技能 如何用Excel公式求最大值对应的行列序号呢? 下面,我们来看看来自问题互动栏目的一个具体问题. 具体问题:求出哪一天哪 ...
- matlab用辛普森公式求积分_变限积分函数求导以及高阶导数求法的一些总结
感谢 @聚创考研 的张帆老师,给我上了一堂生动的课.特此总结一下课上求导数的方法(怕自己忘了). 1.变限积分函数求导 变限积分函数求导简单的分为三类: 第一类(或者形如 这种)可以直接得到 ,第二. ...
- 2017杭电ACM集训队单人排位赛 - 2 -1002 地狱飞龙 (辛普森公式求积分)(模板)
题干: 最近clover迷上了皇室战争,他抽到了一种地狱飞龙,很开心.假设地域飞龙会对距离为d的敌人每秒造成k/d2k/d^2伤害.假设地域飞龙位于坐标轴原点,以每秒v1的速度向y轴正方向移动,敌人在 ...
- C++实现复化辛普森公式求积分算法
1. 算法原理简介 步1 将积分区间 [a,b] 分成 n 等分,分点为 xk=a+kh(k=0,1,⋯,n),其中 h=(b-a)/n. 步2 记区间 [xk,x(k+1)] 的中点为 x(k+1/ ...
- 伽马函数与正态分布概率密度函数、标准正态分布概率密度函数与泊松积分公式关系
朋友想的 再加一个限制条件:limα(x)->0;(+上一个条件限制了B(x)不是无穷大)
- 自适应复化辛普森公式求积算法(C语言实现)
自适应复化辛普森公式求积算法(C语言实现) 利用复化辛普森公式求积分自适应步骤 基于C语言实现的代码 利用复化辛普森公式求积分自适应步骤 h为步长,a为积分下限,b为积分上限,f为积分函数,n为划分的 ...
最新文章
- linux 误删除mysql表能恢复吗_Linux下Oracle误删除数据文件恢复操作
- ajax提交到mysql_利用ajax的方式来提交数据到后台数据库及交互功能
- python3 random函数_Python3 中 random模块
- 修改aconda镜像服务器,Jupyter安装链接aconda的实现方法
- java 三个参数的运算符,java – 三个参数运算符:局部变量可能尚未初始化
- Tom's Classes
- Android设计模式(九)--外观模式
- SpringCloud-服务注册与实现-Eureka创建服务提供者(附源码下载)
- GDCM:检索dicom文件中某个位置存在的Icon测试程序
- windows 10 开启全盘瞬间索引功能
- eclipse安装Maven插件M2E
- mfc实验报告心得体会_mfc实验报告.doc
- 亲爱的,别把上帝缩小了 ---- 读书笔记1
- 熊乃学 计算机,吴谋博士研究成果在权威期刊在线发表
- 2021年全球起酥油收入大约4171.6百万美元,预计2028年达到5052.7百万美元,2022至2028期间,年复合增长率CAGR为 2.8%
- 创业工场如何为创业推波助澜?
- 华为云-计算云服务介绍
- 关于Error during artifact deployment. See server log for details.问题
- 实现内嵌tomcat
- hx711c语言程序,51单片机HX711传感器电子秤设计(原理图、程序源码、BOM等)