数值积分和微分方法
- 格式:doc
- 大小:393.00 KB
- 文档页数:9
数值微分与数值积分数值微分与数值积分是现代计算机科学中非常重要的数学工具。
它们可以用来处理各种研究。
在本文中,我们将讨论这两种方法的基础原理,以及它们在不同领域中的应用。
什么是数值微分?数值微分是指对给定函数进行求导的一种数值方法。
在实际应用中,函数的导数通常很难求得解析解,这时需要使用数值微分的方法来进行近似计算。
数值微分通常是通过在函数的某个点进行差分计算来完成的。
考虑一个函数$f(x)$在某个点$x_0$进行微分的情况。
我们可以计算$f(x_0+h)$和$f(x_0-h)$,其中$h$是一个小的正数。
然后,我们可以计算$[f(x_0+h) - f(x_0-h)]/2h$来得到$f'(x_0)$的近似值。
数值微分的应用非常广泛。
在科学和工程领域中,它通常用于计算物理量相关的导数。
例如,流体力学中的速度梯度、量子力学中的波函数导数,都可以使用数值微分进行近似计算。
此外,在金融领域中,数值微分也可用于计算期权价格等任意变量导数的近似解。
什么是数值积分?数值积分是指对给定函数进行积分的一种数值方法。
与数值微分类似,函数的积分通常很难求得解析解,而不得不使用数值积分的方法来近似计算。
在数值积分中,我们通常使用数值积分公式来计算定义在一个区间$[a,b]$上的函数(如果积分问题是无限积分,我们需要进行变形,将其转化为有限积分问题)。
数值积分公式通常基于插值方法,即将函数转化为一个多项式,并对多项式进行积分。
数值积分也应用广泛。
在科学和工程领域中,它通常用于计算面积、物质质量,以及探测信号的峰值等。
在金融领域中,数值积分也可用于计算期权定价公式的近似解。
数值微分和数值积分的误差分析在应用数值微分和数值积分时,误差是一个重要的考虑因素。
误差源可以来自于采样、采样噪声、近似方法等。
通常,我们使用误差分析来评估误差大小。
数值微分的误差通常归因于选取的$h$值。
当$h$太大时,我们会失去一些重要的信息,如函数的局部斜率。
C语言用六种方法求定积分C语言中求定积分的方法主要有以下六种:基本公式法、数值积分法、Laplace变换法、微积分概念法、数值积分法和Monte Carlo方法。
下面将详细介绍每种方法的原理和实现。
1.基本公式法:基本公式法是求解定积分的最基本方法,根据不同函数的特点和性质,利用已知的积分公式进行求解。
例如,对于一次函数和常数函数,可以使用基本公式法求解。
2.数值积分法:数值积分法是通过将定积分转化为数值计算问题来求解。
常用的数值积分方法有矩形法、梯形法和辛普森法等。
这些方法基于将求积分区间分割成若干个小区间,然后在每个小区间上近似计算出函数的积分值,再将这些积分值加总得到最终结果。
3. Laplace变换法:Laplace变换法是一种利用Laplace变换求解微分方程的方法,也可以用来求解定积分。
通过将被积函数进行Laplace变换,然后利用Laplace变换公式求解积分,最后再求出反变换得到结果。
4.微积分概念法:微积分概念法是通过将定积分定义为函数曲线下的面积来求解。
具体做法是将被积函数图像与坐标轴围成的面积分为若干个小的矩形、梯形或曲线段以及一个小的区域。
然后根据图形的几何性质进行近似计算,将这些小面积相加得到最终结果。
5.数值积分法:数值积分法也是一种基于数值计算的方法,但与前面提到的数值积分法不同,它通过构造一系列特定形式的插值函数对被积函数进行逼近,然后计算插值函数的积分值来近似求解定积分。
常用的数值积分法有牛顿-科特斯公式和高斯-勒让德公式。
6. Monte Carlo方法:Monte Carlo方法是一种基于统计随机性的数值积分方法,它通过随机抽样来进行数值求解。
具体做法是在被积函数图像下随机抽取一系列点,根据这些随机点的坐标和函数值来估计函数的积分值。
通过对多次随机抽样的结果取平均可以得到定积分的近似值。
以上六种方法都可以用C语言来实现,具体的实现方法可以根据具体问题的特点和要求选择合适的算法和数据结构,然后编写相应的代码实现。
数值计算方法数值积分与微分方程数值解数值计算是计算数值结果的一种方法,广泛应用于科学、工程和金融等领域。
数值计算方法涉及到估算数学问题的解,其中包括数值积分和微分方程数值解。
本文将分别介绍数值积分和微分方程数值解的基本原理和常用方法。
一、数值积分数值积分是通过数值计算方法来估计函数的积分值。
积分是数学中的重要概念,广泛应用于物理、经济等领域的问题求解中。
传统的积分计算方法,如牛顿-柯特斯公式和高斯求积法,需要解析求解被积函数,但是对于大多数函数来说,解析求解并不容易或者不可能。
数值计算方法通过离散化被积函数,将积分问题转化为求和问题,从而得到近似的积分结果。
常见的数值积分方法包括梯形法则、辛普森法则和复化求积法。
1. 梯形法则梯形法则是最简单的数值积分方法之一。
它将积分区间划分为若干个小区间,然后在每个小区间上用梯形的面积来近似原函数的面积,最后将所有小区间的梯形面积相加得到近似积分值。
2. 辛普森法则辛普森法则是一种比梯形法则更精确的数值积分方法。
它将积分区间划分为若干个小区间,然后在每个小区间上用一个二次多项式来近似原函数,最后将所有小区间的二次多项式积分值相加得到近似积分值。
3. 复化求积法复化求积法是一种将积分区间进一步细分的数值积分方法。
通过将积分区间划分为更多的小区间,并在每个小区间上应用辛普森法则或者其他数值积分方法,可以得到更精确的积分结果。
二、微分方程数值解微分方程是描述自然现象中变化的数学模型。
求解微分方程的解析方法并不适用于所有的情况,因此需要利用数值计算方法来估计微分方程的解。
常见的微分方程数值解方法包括欧拉法、改进的欧拉法、龙格-库塔法等。
1. 欧拉法欧拉法是最简单的微分方程数值解方法之一。
它通过将微分方程离散化,将微分运算近似为差分运算,从而得到微分方程的近似解。
2. 改进的欧拉法改进的欧拉法是对欧拉法的改进。
它通过使用两个不同的点来估计微分方程的解,从而得到更精确的近似解。
数值微分与数值积分数值微分和数值积分是数值分析中两个重要的概念和技术。
它们在数学与工程领域中都有着广泛的应用。
本文将介绍数值微分和数值积分的概念、原理和应用。
1. 数值微分数值微分是指通过数值计算方法来逼近函数的导数。
在实际计算中,我们常常需要求解某一函数在特定点的导数值,这时数值微分就能派上用场了。
一种常用的数值微分方法是有限差分法。
它基于函数在离给定点很近的两个点上的函数值来逼近导数。
我们可以通过选取合适的差分间距h来求得函数在该点的导数值。
有限差分法的一般形式可以表示为:f'(x) ≈ (f(x+h) - f(x))/h其中,f'(x)是函数f(x)在点x处的导数值,h是差分间距。
数值微分方法有很多种,比如前向差分、后向差分和中心差分等。
根据实际需求和计算精度的要求,我们可以选择合适的数值微分方法来进行计算。
2. 数值积分数值积分是指通过数值计算方法来近似计算函数的定积分。
在实际问题中,我们经常需要求解函数在某一区间上的积分值,而数值积分可以提供一个快速而准确的近似。
一种常见的数值积分方法是复合梯形法。
它将积分区间分割成若干个小区间,然后在每个小区间上应用梯形面积的计算公式。
最后将所有小区间上的梯形面积相加,即可得到整个积分区间上的积分值。
复合梯形法的一般形式可以表示为:∫[a, b] f(x)dx ≈ h/2 * [f(a) + 2∑(i=1 to n-1)f(x_i) + f(b)]其中,[a, b]是积分区间,h是分割的小区间宽度,n是划分的小区间个数,x_i表示第i个小区间的起始点。
除了复合梯形法,还有其他常用的数值积分方法,比如复合辛普森法、龙贝格积分法等。
根据被积函数的性质和计算精度要求,我们可以选择合适的数值积分方法来进行计算。
3. 数值微分和数值积分的应用数值微分和数值积分在科学研究和工程实践中具有广泛的应用。
以下是一些常见的应用领域:3.1 物理学在物理学中,我们经常需要对物体的位置、速度和加速度进行计算。
数值微分与积分算法数值微分和积分算法是计算数学中常用的数值计算方法,它们通过离散化数学函数来估计导数和定积分的值。
本文将介绍数值微分和积分的基本概念,并介绍几种常用的数值方法。
1. 数值微分数值微分是计算函数导数的数值方法。
导数表示了函数在某一点的斜率或变化率。
常见的数值微分方法有:向前差分、向后差分和中心差分。
1.1 向前差分向前差分计算导数的方法是通过近似函数在某一点的切线斜率。
假设有函数f(x),可选取小的增量h,并使用如下公式计算导数:f'(x) ≈ (f(x+h) - f(x)) / h1.2 向后差分向后差分与向前差分类似,也是通过近似函数在某一点的切线斜率。
使用如下公式计算导数:f'(x) ≈ (f(x) - f(x-h)) / h1.3 中心差分中心差分是向前差分和向后差分的结合,计算导数时使用函数在点前后进行采样。
使用如下公式计算导数:f'(x) ≈ (f(x+h) - f(x-h)) / (2h)2. 数值积分数值积分是计算函数定积分的数值方法。
定积分表示函数在某一区间上的面积。
常见的数值积分方法有:矩形法、梯形法和辛普森法则。
2.1 矩形法矩形法是通过将函数曲线分割成若干个矩形,然后计算每个矩形的面积之和来近似定积分。
常见的矩形法有:左矩形法、右矩形法和中矩形法。
2.2 梯形法梯形法是通过将函数曲线分割成若干个梯形,然后计算每个梯形的面积之和来近似定积分。
使用如下公式计算:∫[a,b] f(x)dx ≈ (h/2) * [f(x0) + 2f(x1) + 2f(x2) + ... + 2f(x(n-1)) + f(xn)]2.3 辛普森法则辛普森法则是通过将函数曲线分割成若干个抛物线来近似定积分。
使用如下公式计算:∫[a,b] f(x)dx ≈ (h/3) * [f(x0) + 4f(x1) + 2f(x2) + 4f(x3) + ... + 4f(x(n-1))+ f(xn)]3. 总结数值微分和积分是实际计算中常用的数值方法,它们通过将连续的数学问题离散化来进行数值计算。
Matlab中的数值积分和微分方法在数学和工程领域,数值积分和微分是解决问题的常见方法之一。
而在计算机科学中, Matlab作为一种强大的数值计算软件,提供了许多数值积分和微分的函数,使得这两个问题的解决变得更加简单和高效。
本文将探讨 Matlab 中常用的数值积分和微分方法,包括不定积分、定积分、数值微分和高阶数值微分。
我们将逐一讨论这些方法的原理和使用方法,并展示一些实际的应用案例,以帮助读者更好地理解和应用这些技术。
一、不定积分不定积分是指求一个函数的原函数。
在 Matlab 中,我们可以使用 `int` 函数来实现不定积分的计算。
例如,如果我们想求解函数 f(x) = x^2 的不定积分,可以使用下面的代码:```syms x;F = int(x^2);```这里的 `syms x` 表示将 x 定义为一个符号变量,`int(x^2)` 表示求解函数 x^2 的不定积分。
得到的结果 F 将是一个以 x 为变量的符号表达式。
除了求解简单函数的不定积分外,Matlab 还支持求解复杂函数的不定积分,例如三角函数、指数函数等。
我们只需要将函数表达式作为 `int` 函数的参数即可。
二、定积分定积分是指求函数在一个闭区间上的积分值。
在 Matlab 中,我们可以使用`integral` 函数来计算定积分。
例如,如果我们想计算函数 y = x^2 在区间 [0, 1] 上的积分值,可以使用下面的代码:```y = @(x) x^2;result = integral(y, 0, 1);```这里的 `@(x)` 表示定义一个匿名函数,`integral(y, 0, 1)` 表示求解函数 y = x^2 在区间 [0, 1] 上的积分。
得到的结果 result 将是一个数值。
与不定积分类似,Matlab 还支持对复杂函数求解定积分,只需要将函数表达式作为 `integral` 函数的第一个参数,并指定积分的区间。
数值分析中的数值微分与数值积分数值微分和数值积分是数值分析领域中两个重要的概念。
它们在计算机科学、工程学和物理学等领域中有广泛的应用。
本文将介绍数值微分和数值积分的概念、原理以及一些常用的方法和技巧。
一、数值微分数值微分是通过数值方法来计算函数的导数。
导数是描述函数变化率的工具,它在物理学、经济学和生物学等领域中具有重要的作用。
1. 前向差分法(Forward Difference)前向差分法是一种简单而常用的计算导数的方法。
它利用函数在某一点上的值与函数在该点附近的一个点上的值之间的差异来估计导数。
具体公式如下:f'(x) ≈ (f(x+h) - f(x))/h其中,h为步长,为了提高精度,需要选择足够小的步长。
2. 后向差分法(Backward Difference)后向差分法与前向差分法类似,不同之处在于它利用函数在某一点上的值与函数在该点附近的一个点上的值之间的差异来估计导数。
具体公式如下:f'(x) ≈ (f(x) - f(x-h))/h同样地,步长h需要选择足够小。
3. 中心差分法(Central Difference)中心差分法是一种更加准确的数值微分方法,它利用函数在某一点上的前后两个点的值来估计导数。
具体公式如下:f'(x) ≈ (f(x+h) - f(x-h))/(2h)中心差分法相对于前向差分法和后向差分法而言,具有更高的精度。
二、数值积分数值积分是通过数值方法来计算函数的积分。
积分在物理学、经济学和统计学等领域中起着重要的作用,它可以用来计算面积、体积以及概率等。
1. 矩形法(Rectangle Method)矩形法是一种简单的数值积分方法,它利用多个矩形来逼近曲线下的面积。
具体来说,将积分区间等分为若干子区间,然后在每个子区间上选择一个点作为高度,从而构造出多个矩形。
最后,将各个矩形的面积相加,即可得到近似的积分值。
2. 梯形法(Trapezoidal Method)梯形法是一种更加准确的数值积分方法,它利用多个梯形来逼近曲线下的面积。
数值分析中的数值微分与数值积分数值分析是一门重要的数学分支,用于研究如何使用计算机来求解各种数学问题。
数值微分和数值积分是数值分析中的两个基本概念,它们在科学计算和工程应用中具有广泛的应用。
一、数值微分数值微分是通过数值方法来近似计算函数的导数。
在实际计算中,往往很难直接求得函数的导数表达式,这时候数值微分方法就派上用场了。
1. 前向差分公式前向差分公式是最简单的数值微分方法之一,它基于导数的定义,用函数值的差商来近似计算导数。
假设函数f(x)在点x0处可导,则其导数f'(x0)可以近似表示为:f'(x0) ≈ (f(x0 + h) - f(x0)) / h其中h是一个足够小的正数,通常称为步长。
通过取不同的步长h,可以得到不同精度的数值微分结果。
2. 中心差分公式中心差分公式是数值微分中较为常用的方法,它利用了函数值的前向和后向差商来近似计算导数。
假设函数f(x)在点x0处可导,则其导数f'(x0)可以近似表示为:f'(x0) ≈ (f(x0 + h) - f(x0 - h)) / (2h)与前向差分公式相比,中心差分公式的精度更高,但计算量稍大一些。
二、数值积分数值积分是通过数值方法来近似计算函数在某个区间上的定积分值。
定积分在数学、物理等领域中具有广泛的应用,尤其是对于无法用解析方法求解的积分问题,数值积分提供了可行的解决办法。
1. 矩形法则矩形法则是最简单的数值积分方法之一,它将函数在积分区间上分成若干个小矩形,然后计算这些小矩形的面积之和。
假设函数f(x)在区间[a, b]上积分,则其定积分值可以近似表示为:∫[a,b] f(x)dx ≈ (b - a) * f(x)其中x是[a, b]上的随机点。
2. 梯形法则梯形法则是数值积分中较常用的方法,它将函数在积分区间上分成若干个小梯形,然后计算这些小梯形的面积之和。
假设函数f(x)在区间[a, b]上积分,则其定积分值可以近似表示为:∫[a,b] f(x)dx ≈ (b - a) * (f(a) + f(b)) / 2梯形法则的精度要比矩形法则要高一些。
数值积分与数值微分数值积分和数值微分是数值计算中重要的概念和方法,它们在科学、工程和统计等领域有广泛的应用。
本文将介绍数值积分和数值微分的基本概念、原理和方法,并对其在实际问题中的应用进行讨论。
一、数值积分数值积分是求解定积分的数值近似值的方法。
定积分是函数在给定区间内的面积,表示为∫f(x)dx。
在实际计算中,由于很多函数的原函数求解十分困难或不可求得,因此需要借助数值积分方法来进行求解。
1.1 矩形法矩形法是最基本的数值积分方法之一。
它将积分区间等分为若干小区间,并在每个小区间上取一点,然后用这些小区间上的函数值的平均值来近似积分值。
具体而言,对于等分为n个小区间的积分,矩形法可以表示为:∫f(x)dx ≈ Δx * (f(x0) + f(x1) + ... + f(xn-1))其中,Δx为每个小区间的长度,xi为每个小区间上的取点。
矩形法的计算简单,但精度较低。
1.2 梯形法梯形法是另一种常用的数值积分方法,它通过用梯形面积来逼近积分值。
类似于矩形法,梯形法将积分区间等分为若干小区间,并在每个小区间上取两个点,然后用这些小区间上的梯形面积之和来逼近积分值。
具体而言,梯形法可以表示为:∫f(x)dx ≈ Δx/2 * (f(x0) + 2f(x1) + 2f(x2) + ... + 2f(xn-1) + f(xn))其中,Δx为每个小区间的长度,xi为每个小区间上的取点。
梯形法相对于矩形法有更高的精度,但计算复杂度也相应提高。
1.3 辛普森法则辛普森法则是一种更加精确的数值积分方法,它利用三次多项式来逼近积分值。
辛普森法则将积分区间等分为若干小区间,并在每个小区间上取三个点,然后通过构造一个三次多项式,利用多项式的积分近似面积来逼近积分值。
具体而言,辛普森法则可以表示为:∫f(x)dx ≈ Δx/3 * (f(x0) + 4f(x1) + 2f(x2) + 4f(x3) + ... + 2f(xn-2) +4f(xn-1) + f(xn))其中,Δx为每个小区间的长度,xi为每个小区间上的取点。
常用数值分析方法常用数值分析方法指的是应用数值计算方法研究和解决实际问题的一类方法。
它涉及到计算机科学、数学、算法及相关工程应用等多个领域的交叉应用,被广泛应用于科学研究、工程设计、经济分析、物理模拟、天气预测等领域。
以下是常用的数值分析方法的介绍。
1.插值法:插值法是通过已知数值点的函数值来推导任意点的函数值。
其中最常用的方法是拉格朗日插值法和牛顿插值法。
插值法在数值计算、图像处理、信号处理等领域有广泛应用。
2.数值微分与积分:数值微分和积分方法是通过一系列近似计算来求解微分和积分问题,常用的方法有数值微分公式、数值积分公式和龙格-库塔方法等。
这些方法在工程数学、物理学、金融学等领域得到了广泛应用。
3.非线性方程求解:非线性方程求解方法用于求解形如f(x)=0的非线性方程,在科学计算和工程设计中具有重要作用。
常用的方法有二分法、牛顿法、割线法、迭代法等。
4.数值优化:数值优化方法是求解最优化问题的一种方法,常用的算法有梯度下降法、共轭梯度法、拟牛顿法、模拟退火算法、遗传算法等。
这些方法被广泛应用于机器学习、数据挖掘、工程设计等领域。
5.差分方程与差分法:差分方程是运用差分近似的数值方法来求解常微分方程的一种方法。
常用的差分法有向前差分法、向后差分法、中心差分法等。
差分法在数值模拟、物理仿真等领域有广泛应用。
6.线性代数方程组的数值解法:数值解线性代数方程组是数值分析中的经典问题之一、常用的算法有高斯消元法、LU分解法、迭代法(如雅可比法、高斯-赛德尔法、稀疏矩阵迭代法)等。
7.数值逼近与最小二乘拟合:数值逼近和最小二乘拟合方法是通过一系列近似计算来拟合和逼近已知的数据集。
常用的方法有多项式拟合、最小二乘法、曲线拟合、样条插值等。
这些方法在数据分析、信号处理、模糊识别等方面有广泛应用。
8.数值统计:数值统计方法是通过数值计算和统计学方法来处理和分析实际数据。
常用的方法有假设检验、参数估计、方差分析、回归分析等。
积分微分公式积分微分公式是数学中一个重要的工具,广泛应用于各种科学和工程领域。
它主要包括两类:积分公式和微分公式。
本文将介绍积分微分公式的基本概念、应用场景、计算方法以及在实际问题中的案例分析。
一、积分微分公式的基本概念1.积分公式:给定一个函数f(x),求其在区间[a, b]上的定积分,记作∫[a,b]f(x)dx。
积分公式是微分公式的基础,可以理解为对微分公式中自变量x的上下限进行求和。
2.微分公式:给定一个函数f(x),求其在某一点x=a的导数,记作f"(a)或df(x)/dx|_{x=a}。
微分公式是积分公式的基础,可以理解为对积分区间内的函数变化率进行求和。
二、积分微分公式的应用场景1.求解面积和体积:利用积分公式可以求解曲线围成的平面图形面积,以及曲面围成的空间体积。
2.求解变化率:利用微分公式可以求解函数在某一点的变化率,从而分析函数的增长或减少速度。
3.求解平均值:利用积分公式可以求解函数在某一区间上的平均值,从而分析函数的整体走势。
4.求解方程的解:将微分方程转化为积分方程,利用积分公式求解。
三、积分微分公式的计算方法1.数值积分法:通过将积分区间划分为若干子区间,对每个子区间进行求和,从而逼近积分值。
2.数值微分法:通过差分法求解微分公式,得到函数在某一点的近似导数值。
四、积分微分公式在实际问题中的案例分析1.抛物线面积问题:给定抛物线y=ax^2+bx+c,求其在x轴上方的面积。
可以通过积分公式求解。
2.物体自由落体问题:给定物体从高度h自由落体,求其在落地过程中的平均速度。
可以通过微分公式求解。
五、总结与展望积分微分公式在数学、物理、工程等领域具有广泛的应用,是高等数学中的重要内容。
掌握积分微分公式的基本概念、计算方法和应用场景,有助于解决实际问题。
数值积分与微分 摘要本文首先列举了一些常用的数值求积方法,一是插值型求积公式,以Newton Cotes -公式为代表,并分析了复合型的Newton Cotes -公式;另一个是Gauss Ledendre -求积公式,并给出几个常用的Gauss Ledendre -求积公式。
其次,本文对数值微分方法进行分析,主要是差分型数值微分和插值型数值微分,都给出了几种常用的微分方法。
然后,本文比较了数值积分与微分的关系,发现数值积分与微分都与插值或拟合密不可分。
本文在每个方法时都分析了误差余项,并且在最后都给出了MATLAB 的调用程序。
关键词:插值型积分Gauss Ledendre -差分数值微分插值型数值微分 MATLAB一、常用的积分方法计算积分时,根据Newton Leibniz -公式,()()()baf x dx F b F a =-⎰但如果碰到以下几种情况:1)被积函数以一组数据形式表示;2)被积函数过于特殊或者原函数无法用初等函数表示 3)原函数十分复杂难以计算这些现象中,Newton Leibniz -公式很难发挥作用,只能建立积分的近似计算方法,数值积分是常用的近似计算的方法。
1.1 插值型积分公式积分中的一个常用方法是利用插值多项式来构造数值求积公式,具体的步骤如下: 在积分区间上[,]a b 上取一组节点:01201,,,,()n n x x x x a x x x b ≤<<≤。
已知()k x f 的函数值,作()x f 的n 次插值多项式,则(1)()10()()()()()(1)!n nx n n k k n k f f L x R x f x l x w x n ++==+=++∑其中,()k l x 为n 次插值基函数,则得(1)+10()(()())1 =[()]()[()](1)!bbn n aa nbb n k k n aa k f x dx L x R x dxl x dx f x f x w x dx n ξ+==+++⎰⎰∑⎰⎰()公式写成一般形式:()()[]nbk k n ak f x dx A f x R f ==+∑⎰其中,01100110()()()()()()()()()bbk k k k aa k k k k k k x x x x x x x x A l x dx dx x x x x x x x x -+-+----==----⎰⎰(1)+11[][()](1)!b n n n aR f f x w x dx n ξ+=+⎰() 显然,当被积函数f 为次数小于等于n 的多项式时,其相应的插值型求积公式为准确公式,即:()()nbk k ak f x dx A f x ==∑⎰1.1.1 求积公式的代数精度定义:求积公式对于任何次数不大于m 的代数多项式()f x 均精确成立,而对于1()m f x x +=不精确成立,则称求积公式具有m 次代数精度。
定理:含有1n +个节点(0,1,,)k x k n =的插值型求积公式的代数精度至少为n 。
1.2 Newton Cotes -公式 1.2.1 Newton Cotes -公式将积分区间等分,并取分点为求积公式,这样构造出来的插值型求积公式就是Newton Cotes -公式。
()0()()nbn k k ak f x dx b a C f x ==-∑⎰()其中,()0()nn k k b a b a C =-=-∑且Cotes 系数满足重要的关系式:()0 1 (k=0,1,2,,n)nn kk C==∑1n =时,求积公式为梯形公式(两点公式): ()[()()]2bab af x dx f a f b -≈+⎰ 梯形公式具有1阶代数精度,余项为:3()[]() [,]12T b a R f f a b ηη-''=-∈n =2时,求积公式为Simpson 公式(三点公式):()[()4()()]62b ab a a b f x dx f a f f b -+≈++⎰ Simpson 公式具有3阶代数精度,余项为:5(4)1[]()() [,]902S b a R f f a b ηη-=-∈n =4时,求积公式为Cotes 公式(五点公式):01234()[7()32()12()32()7()]90b ab a f x dx f x f x f x f x f x -≈++++⎰ 其中,4k b ax a k -=+ Cotes 公式具有5次代数精度,余项为:7(6)8[]()() [,]9454C b a R f f a b ηη-=-∈ 1.2.2 复合Newton Cotes -公式当积分区间过大时,直接使用Newton Cotes -公式所得的积分的近似值很难得到保证,因此在实际应用中为了既能够提高结果的精度,又使得算法简便且容易在计算机上实现,往往采用复合求积的方法。
所谓复合求积,就是先将积分区间分成几个小区间,并从每个小区间上用低阶Newton Cotes -公式计算积分的近似值,然后对这些近似值求和,从而得到所求积分的近似值,由此得到一些具有更大实用价值的数值求积公式,统称为复合求积公式。
将[,]a b 区间n 等分,记分点为(0,1,,)k x a kh k n =+=,其中,b ah n-=称为步长,然后在每个小区间利用梯形公式,即可导出复合梯形公式:1111()()[()()]2kk nnbx k k ax k k h f x dx f x dx f x f x --===≈+∑∑⎰⎰若将所得积分近似值记为n T ,并注意到0,n x a x b ==,则复合梯形公式为:11()=[()2()()]2n bn k ak hf x dx T f a f x f b -=++∑⎰其余项为:221()()()= () [,]1212n n k T k f b a h b a h R f a b n ηηη-=''--''=--∈∑类似可得复合Simpson 公式:111012()[()4()2()()]6n n bn k ak k k hf x dxS f a f x f x f b --+===+++∑∑⎰其中,1/212k k x x h +=+.其余项为:4(4)()= ()() [,]1802n S b a h R f a b ηη--∈1.2.3 Newton Cotes -公式在MATLAB 中的实现1)复合梯形数值积分:调用形式:Z=trapz(X,Y)其中,X,Y 分别代表数目相同的向量或者数值,Y 与X 的关系可以是函数形态或者离散形态;Z 代表返回的积分值。
2)自适应Simpson 公式基本调用格式:q=quad (fun ,a ,b ,tol ,trace ,p1,p2)其中:fun 代表被积函数;a ,b 为积分的上下限; q 为积分结果;tol 为默认误差限,默认了1.e-6;trace 表示取0表示不用图形显示积分过程,非0表示用图形显示积分过程; p1,p2为直接传递给函数fun 的参数3)自适应Lobatto 法数值积分:quadl ()Quadl 是高阶的自适应Newton Cotes -数值积分法函数,比quad 函数更有效,精度更高,使用方法与quad 完全相同。
1.3 Gauss Ledendre -求积公式1、精度较高Gauss Ledendre -公式(1)Ledendre 多项式。
以Gauss 点k x为零点的n 次多项式:12()()()()n n p x x x x x x x =---上式称为Ledendre 多项式 (2)Gauss Ledendre -求积公式。
以Ledendre 多项式的n 个实根为节点的插值求积公式为Gauss Ledendre -求积公式。
考虑在[1,1]-上Gauss 求积公式的构造 1)一个节点11()2(0)f x dx f -≈⎰2)两个节点二次Ledendre 正交多项式221()(31)2p x x =- 所以两点的Gauss Ledendre -求积公式为:11()f x dx f f -≈⎰对于一般区间的积分,可以用22a b b ax t +-=+将[,]a b 区间转化为[1,1]-,即1111()()222b a a b b af x dx f t dt ---+-=+⎰⎰然后用相应的Gauss Ledendre -求积公式计算。
(3)一般形式的Gauss Ledendre -求积公式为:1()()()nbj j aj w x f x dx A f x =≈∑⎰其中()w x 是一个权重函数,j A 为系数,j x 为横坐标上的节点。
因为()1w x =,所以,一个n 点的求积公式具有如下形式:111()()nj j j f x dx A f x -=≈∑⎰其中,()j f x 是函数()f x 在节点j x 处的值,节点j x 是Ledendre 正交多项式的根。
222[()](1)j nj j A p x x ='-给出x 和A 的表格:2、在MATLAB 中的实现MATLAB 没有提供Gauss Ledendre -的有关计算函数,此处给出一部分的编程代码:function q=gaussL (f ,a ,b ,x ,A ) N=length (x ); T=zeros (1,N ); T=(a+b )/2+((b-a)/2)*x; q=((b-a)/2)*sum(A.*feval(‘f ’.T));其中,f 为被积函数;x 和A 的值可有上表查到。
二、数值微分数值微分的建立常用的三种思路: 1、 直接从微分的定义出发,通过近似的处理(泰勒展开),得到数值微分的近似公式;2、 利用插值的基本思想,采用插值近似公式,对插值公式的近似求导得到原数值微分的近似公式3、根据已知数据,利用最小二乘拟合的方法,得到近似的函数,然后对此近似函数求微分就可以得到数值微分的近似公式。
2.1 差分法近似微分1、计算公式在微积分中,一阶微分的计算可以在相邻点x h +和x 间函数取得极限求得。
000()()()()()()22()lim lim lim h h h h h f x f x f x h f x f x f x h f x h h h→→→+--+---'=== 所以给出下列差分近似式子: 一阶向前差分:()()()f x h f x f x h+-'=一阶向后差分:()()()f x f x h f x h--'=精度较高的一阶中心差分:()()22'()h h f x f x f x h+--=2、在MATLAB 中的实现 调用形式:Y=diff(X,n)其中:X 表示求导变量,可以是向量或者矩阵。