首先先看五点高斯-勒让德公式,其求积系数和求积节点可以在数值积分的教材上查到,matlab代码如下

function I=Gauss_Legendre_5(fun,a,b)
w=[0.2369269,0.2369269,0.4786287,0.4786287,0.5688889];
x1=[-0.9061798,0.9061798,-0.5384693,0.5384693,0];
x=(b+a)/2+(b-a)/2.x1;
y=eval(fun)
I=(b-a)/2
sum(w.*y)

我们以计算积分
I=∫01xsinπxdx I = \int_0^1 xsinπxdx\, I=∫01​xsinπxdx
来检查该公式的精度

I1=Gauss_Legendre_5(‘x.sin(pix)’,0,1)
res1=I1-1/pi

I1=

0.3183

res =

4.2508e-08

可以发现该公式的误差非常小

接下来我们看一下复合五点高斯-勒让德公式,在区间[a,b]上分为n个区间,在每个区间上分别使用五点高斯-勒让德公式,其matlab代码如下

function I=compound_Gauss_Legendre_5(fun,a,b,n)
x=linspace(a,b,n+1);
I=0
for i=1:n
I=I+Gauss_Legendre_5(fun,x(i),x(i+1))
end

同样计算一下刚刚那个定积分的值,这边将区间等分五份

I2=Gauss_Legendre_5(‘x.sin(pix)’,0,1,5)
res2=I2-1/pi

I2=

0.3183

res2 =

1.6243e-08

可以看到误差确实相对减少了不少

那我们把区间再细分会如何呢?
我们将区间等分五十等份

I3=compound_Gauss_Legendre_5(‘x.sin(pix)’,0,1,50)
res3=I3-1/pi

I3 =

0.3183

res3 =

1.5919e-08

可以看到,我们将区间从五等分细分到五十等份了,误差也只相对减少了一些。
而且,即便是刚刚的五等分所谓的误差相对减少了很多,绝对减少却很少,因为五点高斯-勒让德公式本来就很精确了(达到相同的精度,复合梯形公式至少要等分2500等份)~(所以老师为啥要我们用复合五点高斯-勒让德公式求啊喂)

【复合五点高斯-勒让德公式】相关推荐

  1. 高斯-勒让德公式 求积分

    1 #include <iostream> 2 #include <cmath> 3 using namespace std; 4 //计算f(x)=1/x 在[1,3]上的积 ...

  2. 数据积分-牛顿科茨法与高斯勒让德法对比及示例

    在结点xi上插值f的次数最多是n次的多项式 p(x)=∑f(xi)li(x) 拉格朗日插值多项式: li(x)= ∏(x-xj)/(xi-xj) 基于插值的数值积分: ∫f(x)dx≈∫p(x)dx= ...

  3. 重复高斯勒让德法则(gauss-legendre)求积分(python,数值积分)

    第四十一篇 高斯勒让德法则 牛顿-科特斯法则很方便使用,因为样本点在积分范围内均匀分布,而且权重系数很容易记住(至少到辛普森法则).详情可见重复牛顿-科特斯法则 高斯法则采取样本点在积分范围内的最佳间 ...

  4. 高斯勒让德(Gauss-legendre)求解多重积分(python,数值积分)

    第四十四篇 高斯勒让德求解多重积分 多重积分 在工程分析中,经常需要在一个面积或体积上对函数进行积分.多重积分的解析方法在有限的情况下是可能的,但在这一篇中使用数值积分去求解.一维的函数积分详见重复牛 ...

  5. 高斯-勒让德求积分的Python程序

    理论知识: 勒让德多项式及性质 第四节 高斯(Gauss)求积公式 高斯-勒让德求积公式及Matlab实现 目标函数求积区间为[-1,1]时 代码: #高斯-勒让德求积公式 from sympy im ...

  6. 高斯-勒让德积分中不同阶数下最大高斯节点间距的关系

    高斯-勒让德计算方法的高斯节点是勒让德多项式的根值,很多教材都把常用的根值和其对应的加权系数表示在如下的表格(P403 SEC. 7.5 GAUSS-LEGENDRE INTEGRATION (OPT ...

  7. matlab中求积函数,MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式.doc...

    MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式 数 值 分 析 课 程 实 验 报 告 2012-2013学年度 第二学期 系别:数学与计算机科学学院 实验课程数值分析班 级 ...

  8. 高斯勒让德求积公式matlab通用程序,数值分析——Gauss-Legendre 求积分(Matlab实现)...

    2020 4.4 题目:编写Gauss求积法计算积分的程序(Gauss点数取1,2,3,4,5即可)并用于计算积分 ∫10sinxxdx∫01sin⁡xxdx\int_{0}^{1} \frac{\s ...

  9. GSL科学计算库——计算高斯-勒让德积分

    相关文章: Windows系统Qt5配置GSL科学计算库 Windows系统下Cygwin+Dev C ++ 配置GSL科学计算库 假设计算下列积分: ∫0πexcos(x)dx\int_0^\pi ...

  10. C++:使用高斯-勒让德正交估计柯西主值 (CPV) 某些奇异积分(附完整源码)

    C++:使用高斯-勒让德正交估计柯西主值 (CPV) 某些奇异积分 test.hpp test.cpp test.hpp double cpv ( double f ( double x ), dou ...

最新文章

  1. Fiddler抓包使用教程-过滤
  2. Linux deepin解决文件管理器打不开和桌面黑屏的问题
  3. python工作环境_CentOS7下python工作环境管理
  4. 【代码笔记】Web-CSS-CSS 链接(link)
  5. linux安装redis集群+常见报错
  6. python无限循环语句的代码_如何在Python中实现非阻塞无限循环
  7. NinePatchChunk.java分析
  8. idm chrome扩展被阻止解决办法
  9. Android进阶学习-使用Canvas自定义ArcView(4)
  10. 对于“ …不需要安装.NET Framework 4.0 ” 以及 “已在此计算机上安装相同或更高版本的 .NET Framework 4 ” 等问题 的解决办法
  11. 自制QQ机器人插件笔记[nonebot2部署于ubuntu系统服务器]
  12. VS2010中自制8*8字模提取
  13. excel换行按什么键_excel中关于自动换行和强制换行那些事儿
  14. 大白菜装机教程win10_大白菜U盘启动工具|大白菜超级U盘启动制作工具 V6.0_2009.25官方版下载...
  15. KinectFusion
  16. 【ElectronJs】基于Electron Forge打包的一些问题汇总
  17. 修改参数(parameter)
  18. 取消win7共享打印机等需要输入密码
  19. 【opencv】获取视频中的“黑白蓝绿”屏
  20. c语言中i%2,c语言中i%2是什么意思

热门文章

  1. 如何double你的能力
  2. gin binding方法汇总
  3. 设置Windows Server登录时禁止自动启动服务器管理器
  4. android 数据永久删除,如何安全地彻底擦除Android
  5. 2021年N2观光车和观光列车司机考试内容及N2观光车和观光列车司机模拟考试题库
  6. python 爬虫。爬取小说--斗破苍穹
  7. jul177链接_「jul177小早川中文」无删减版高清天天影音第89集
  8. 针孔相机模型成像原理与图像变形矫正教程
  9. 查找FB15k-237 entity id对应实体数据
  10. JQ show和hide(隐藏显示)、fadeIn和fadeOut(淡入淡出)、slideDown和slideUp(隐藏显示)