Guass-Legendre(高斯-勒让德)求积方法 | Guass型求积公式 + Legendre多项式
1. Guass型求积公式
定义1:在区间[a,b][a,b][a,b]内,如果由节点x0,x1,⋯,xnx_0,x_1,\cdots,x_nx0,x1,⋯,xn构造的插值型求积公式
∫abf(x)dx≅∑k=0nAkf(xk)\int_a^b f(x)dx \cong \sum_{k=0}^nA_k f(x_k) ∫abf(x)dx≅k=0∑nAkf(xk)
具有2n+1次代数精度,则称该求积公式为Guass求积公式,求积节点xk(k=0,1,⋯,n)x_k(k=0,1,\cdots,n)xk(k=0,1,⋯,n)为Guass点。
Guass型求积公式是各种数值积分公式中精度较高的一种,它与梯形公式和Simpson公式等一样,也是插值型的。所不同是,它所选择的n+1个节点x0,x1,⋯,xnx_0,x_1,\cdots,x_nx0,x1,⋯,xn并非等距节点,也取消了x0x_0x0和xnx_nxn与积分上下限a和b相重合的限制,其代数精度由此可提高到2n+1次。
构造Guass型求积公式,首先要确定出AkA_kAk和xk(k=0,1,⋯,n)x_k(k=0,1,\cdots,n)xk(k=0,1,⋯,n)两类系数,而求系数的关键点和难点在于求Guass点xkx_kxk,下面以构造区间[−1,1][-1,1][−1,1]上的两点Guass公式
∫−11f(x)dx≅A0f(x0)+A1f(x1)\int_{-1}^{1}f(x)dx \cong A_0f(x_0)+A_1f(x_1) ∫−11f(x)dx≅A0f(x0)+A1f(x1)
为例,说明如何确定求积系数和求积节点。根据Guass求积公式
{A0+A1+⋯+An=b−aA0x0+A1x1+⋯+Anxn=(b2−a2)/2⋯A0x02n+1+A1x12n+1+⋯+Anxn2n+1=(b2n+2−a2n+2)/(2n+2)(1)\begin{cases} A_0+A_1+\cdots+A_n=b-a \\ A_0x_0+A_1x_1+\cdots+A_nx_n=(b^2-a^2)/2 \\ \cdots \\ A_0x_0^{2n+1}+A_1x_1^{2n+1}+\cdots+A_nx_n^{2n+1}=(b^{2n+2}-a^{2n+2})/(2n+2) \end{cases} \tag{1} ⎩⎪⎪⎪⎨⎪⎪⎪⎧A0+A1+⋯+An=b−aA0x0+A1x1+⋯+Anxn=(b2−a2)/2⋯A0x02n+1+A1x12n+1+⋯+Anxn2n+1=(b2n+2−a2n+2)/(2n+2)(1)
其中AiA_iAi和xi(i=0,1,2,⋯,n)x_i(i=0,1,2,\cdots, n)xi(i=0,1,2,⋯,n)均为待定,则上式方程组具有(2n+2)个待定系数。
列出非线性方程组为:
A0+A1=b−a=1−(−1)=2A0x0+A1x1=b2−a22=0A0x02+A1x12=b3−a33=23A0x03+A1x13=b4−a44=0A_0+A_1=b-a=1-(-1)=2 \\ A_0x_0+A_1x_1= \frac{b^2-a^2}{2}=0 \\ A_0x_0^2 + A_1x_1^2=\frac{b^3-a^3}{3} =\frac{2}{3} \\ A_0x_0^3 + A_1x_1^3=\frac{b^4-a^4}{4}=0 A0+A1=b−a=1−(−1)=2A0x0+A1x1=2b2−a2=0A0x02+A1x12=3b3−a3=32A0x03+A1x13=4b4−a4=0
解之,得:
A0=A1=1;x0=−13和x1=13A_0=A_1=1; \quad x_0=-\frac{1}{\sqrt{3}} 和 x_1=\frac{1}{\sqrt{3}} A0=A1=1;x0=−31和x1=31
因此,两点Guass公式为:
∫−11f(x)dx≅f(−13)+f(13)\int_{-1}^1f(x)dx \cong f(-\frac{1}{\sqrt{3}}) + f(\frac{1}{\sqrt{3}}) ∫−11f(x)dx≅f(−31)+f(31)
若能用某种简便方法先求出求积节点,非线性方程组(1)就变称线性方程组(2),此时求积系数AkA_kAk就能够比较容易地求得
{A0+A1+⋯+An=b−aA0x0+A1x1+⋯+Anxn=(b2−a2)/2⋯A0x0n+A1x1n+⋯+Anxnn=(bn+1−an+1)/(n+1)(2)\begin{cases} A_0+A_1+\cdots+A_n=b-a \\ A_0x_0+A_1x_1+\cdots+A_nx_n=(b^2-a^2)/2 \\ \cdots \\ A_0x_0^n+A_1x_1^n+\cdots+A_nx_n^n=(b^{n+1}-a^{n+1})/(n+1) \end{cases} \tag{2} ⎩⎪⎪⎪⎨⎪⎪⎪⎧A0+A1+⋯+An=b−aA0x0+A1x1+⋯+Anxn=(b2−a2)/2⋯A0x0n+A1x1n+⋯+Anxnn=(bn+1−an+1)/(n+1)(2)
定理1:求积节点xk(k=0,1,2,⋯,n)x_k(k=0,1,2,\cdots,n)xk(k=0,1,2,⋯,n)是Guass点的充要条件是,以这些点位零点的多项式
A(x)=∏k=0n(x−xk)A(x)=\prod_{k=0}^n(x-x_k) A(x)=k=0∏n(x−xk)
与任意次数不超过n的多项式p(x)p(x)p(x)均正交,即:
∫abp(x)A(x)dx=0\int_a^bp(x)A(x)dx=0 ∫abp(x)A(x)dx=0
2. Legendre多项式
Legendre多项式由下列表达式定义:
{L0(x)=1Ln(x)=12nn!dndxn[(x2−1)n](n=1,2,⋯)\begin{cases} L_0(x)=1 \\ L_n(x)=\frac{1}{2^nn!}\frac{d^n}{dx^n}[(x^2-1)^n] \quad (n=1,2,\cdots) \end{cases} {L0(x)=1Ln(x)=2nn!1dxndn[(x2−1)n](n=1,2,⋯)
Legendre多项式的几个重要性质如下:
(1)在区间[−1,1][-1,1][−1,1]上,n次Legendre多项式Ln(x)L_n(x)Ln(x)与任意低于n次的多项式p(x)p(x)p(x)正交,即
∫−11p(x)Ln(x)dx=0\int_{-1}^1p(x)L_n(x)dx=0 ∫−11p(x)Ln(x)dx=0
(2)Legendre多项式所有的根在[−1,1][-1,1][−1,1]中,并且是不相同的实根。
(3)递推关系为:
Ln(x)=2n−1nxLn−1(x)−n−1nLn−2(x)n≥2L_n(x)=\frac{2n-1}{n}xL_{n-1}(x)-\frac{n-1}{n}L_{n-2}(x) \quad n\geq 2 Ln(x)=n2n−1xLn−1(x)−nn−1Ln−2(x)n≥2
3. Guass-Legendre求积公式
根据Legendre多项式性质(1),可以去Legendre多项式的零点作为求积节点来构造Guass公式。这种求积方法就称为Guass-Legendre求积法。
例如,为了构造3点Guass公式
∫−11f(x)dx≅∑k=13Akf(xk)\int_{-1}^1 f(x)dx \cong \sum_{k=1}^3A_kf(x_k) ∫−11f(x)dx≅k=1∑3Akf(xk)
可取3次Legendre多项式L3(x)L_3(x)L3(x)的零点
x1=−3/5,x2=0,x3=3/5x_1=-\sqrt{3/5}, \quad x_2=0, \quad x_3=\sqrt{3/5} x1=−3/5,x2=0,x3=3/5
作为求积节点。令求积公式对于f(x)=1,x,x2f(x)=1,x,x^2f(x)=1,x,x2都准确成立,则有:
{A1+A2+A3=∫−11dx=2A1x1+A2x2+A3x3=∫−11xdx=0A1x12+A2x22+A3x32=∫−11x2dx=2/3\begin{cases} A_1+A_2+A_3=\int_{-1}^1dx=2 \\ A_1x_1+A_2x_2+A_3x_3 = \int_{-1}^1 xdx=0 \\ A_1x_1^2+A_2x_2^2+A_3x_3^2 = \int_{-1}^{1}x^2dx=2/3 \end{cases} ⎩⎪⎨⎪⎧A1+A2+A3=∫−11dx=2A1x1+A2x2+A3x3=∫−11xdx=0A1x12+A2x22+A3x32=∫−11x2dx=2/3
解之,得3个求积加权系数A1=5/9,A2=8/9,A3=5/9A_1=5/9,A_2=8/9,A_3=5/9A1=5/9,A2=8/9,A3=5/9,最后得到3点Guass求积公式为:
∫−11f(x)dx≅59f(−35)+89f(0)+59f(35)\int_{-1}^1f(x)dx \cong \frac{5}{9}f(-\sqrt{\frac{3}{5}})+\frac{8}{9}f(0)+\frac{5}{9}f(\sqrt{\frac{3}{5}}) ∫−11f(x)dx≅95f(−53)+98f(0)+95f(53)
如果区间[a,b][a,b][a,b]是任意的,则需通过如下变换:
x=b−a2t+a+b2dx=b−a2dtx=\frac{b-a}{2}t+\frac{a+b}{2} \quad dx=\frac{b-a}{2}dt x=2b−at+2a+bdx=2b−adt
将在[a,b][a,b][a,b]上的积分化为在区间[−1,1][-1,1][−1,1]上的积分,即:
∫abf(x)dx≅b−a2∫−11f(b−a2t+a+b2)dt=b−a2∫−11φ(t)dt\int_a^bf(x)dx \cong \frac{b-a}{2}\int_{-1}^1 f(\frac{b-a}{2}t+\frac{a+b}{2})dt=\frac{b-a}{2}\int_{-1}^1 \varphi(t)dt ∫abf(x)dx≅2b−a∫−11f(2b−at+2a+b)dt=2b−a∫−11φ(t)dt
于是,在区间[a,b][a,b][a,b]上的两点Guass-Legendre公式为:
∫abf(x)dx≅b−a2[f(−b−a23+a+b2)+f(b−a23+b+a2)]\int_a^b f(x)dx \cong \frac{b-a}{2}[f(-\frac{b-a}{2\sqrt{3}}+\frac{a+b}{2})+f(\frac{b-a}{2\sqrt{3}}+\frac{b+a}{2})] ∫abf(x)dx≅2b−a[f(−23b−a+2a+b)+f(23b−a+2b+a)]
Guass-Legendre(高斯-勒让德)求积方法 | Guass型求积公式 + Legendre多项式相关推荐
- GSL科学计算库——计算高斯-勒让德积分
相关文章: Windows系统Qt5配置GSL科学计算库 Windows系统下Cygwin+Dev C ++ 配置GSL科学计算库 假设计算下列积分: ∫0πexcos(x)dx\int_0^\pi ...
- 高斯勒让德(Gauss-legendre)求解多重积分(python,数值积分)
第四十四篇 高斯勒让德求解多重积分 多重积分 在工程分析中,经常需要在一个面积或体积上对函数进行积分.多重积分的解析方法在有限的情况下是可能的,但在这一篇中使用数值积分去求解.一维的函数积分详见重复牛 ...
- 数值积分之插值型求积公式
上篇博文中(数值积分初步介绍)已经初步介绍了数值积分,下面介绍一种求解数值积分的方法--插值型求积公式. 插值型求积公式就是利用拉格朗日插值法对被积函数进行插值近似,求其插值函数来代替被积函数进行求解 ...
- matlab中求积函数,MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式.doc...
MATLAB软件及高斯勒让德求积公式MATLAB软件及高斯勒让德求积公式 数 值 分 析 课 程 实 验 报 告 2012-2013学年度 第二学期 系别:数学与计算机科学学院 实验课程数值分析班 级 ...
- 数据积分-牛顿科茨法与高斯勒让德法对比及示例
在结点xi上插值f的次数最多是n次的多项式 p(x)=∑f(xi)li(x) 拉格朗日插值多项式: li(x)= ∏(x-xj)/(xi-xj) 基于插值的数值积分: ∫f(x)dx≈∫p(x)dx= ...
- 重复高斯勒让德法则(gauss-legendre)求积分(python,数值积分)
第四十一篇 高斯勒让德法则 牛顿-科特斯法则很方便使用,因为样本点在积分范围内均匀分布,而且权重系数很容易记住(至少到辛普森法则).详情可见重复牛顿-科特斯法则 高斯法则采取样本点在积分范围内的最佳间 ...
- 高斯勒让德求积公式matlab通用程序,数值分析——Gauss-Legendre 求积分(Matlab实现)...
2020 4.4 题目:编写Gauss求积法计算积分的程序(Gauss点数取1,2,3,4,5即可)并用于计算积分 ∫10sinxxdx∫01sinxxdx\int_{0}^{1} \frac{\s ...
- 高斯-勒让德求积分的Python程序
理论知识: 勒让德多项式及性质 第四节 高斯(Gauss)求积公式 高斯-勒让德求积公式及Matlab实现 目标函数求积区间为[-1,1]时 代码: #高斯-勒让德求积公式 from sympy im ...
- 高斯-勒让德积分——MATLABPython混合实现
高斯-勒让德积分 前言 一种很NB的数值积分.原理我们就不多说了,这里只介绍怎么直接拿来用. 核心问题是如何获取系数表. 参数介绍 对于函数 f(x),积分区间为 a 到 b,求在这一区间上的定积分. ...
- MATLAB高斯-勒让德积分求解
MATLAB高斯-勒让德积分求解 积分函数 function [ y ] = CalcuFunctionValue( x ) y=exp(-x^2);%积分函数 end 求积分算法函数 functio ...
最新文章
- STM32F0 定时器触发ADC,多通道采样、DMA传输数据的配置
- UI必备!不同形式的图标设计灵感
- 流行趋势-立体感和艺术剪纸风海报美妆设计
- 图像处理之形态学梯度计算
- SQLite 指南之FAQ(中文)
- Django开发密码管理表实例【附源码】
- Python标准库 urllib
- PostgreSQL在何处处理 sql查询之八
- php版的求表达式的真值表-TrueValueTable
- Illustrator CC 2019for Mac完美直装版无需破解
- t6服务器虚拟打印机,priPrinter Professional(免费的虚拟打印机) V6.6.0 中文免费版
- 电路串联和并联图解_蓄电池串联与并联方式图解
- Windows10 1809版本下载地址
- 4-20mA电流光纤中继器的原理和应用
- 倾斜摄影测量数据的一些简析
- docker 网络的解释
- markdown如何在表格内换行?
- 【Android开发】
- 如何使用 DOI 快速找到论文的全文下载网址
- spring 中的JMS是什么?