(精选)实验二 数值方法计算积分
MATLAB数值分析实验二(复合梯形、辛普森和龙贝格求积,以及二重积分计算等)
佛山科学技术学院
实验报告
课程名称_______________ 数值分析________________________
实验项目_______________ 数值积分____________________
专业班级机械工程姓名余红杰学号2111505010 指导教师陈剑成绩
日期月日
一、实验目的
b
1、理解如何在计算机上使用数值方法计算定积分 a f ""X的近似值;
2、学会复合梯形、复合Simpson和龙贝格求积分公式的编程与应用。
3、探索二重积分.11 f (x, y)dxdy在矩形区域D = {( x, y) | a _ x _ b, c _ y _ d}的数值
D
积分方法。
二、实验要求
(1)按照题目要求完成实验内容;
(2)写出相应的Matlab程序;
(3)给出实验结果(可以用表格展示实验结果);
(4)分析和讨论实验结果并提出可能的优化实验。
(5)写出实验报告。
三、实验步骤
1、用不同数值方法计算积xln xdx =-- 0 9
(1)取不同的步长h,分别用复合梯形及复合辛普森求积计算积分,给出误差中关于h的函数,并与积分精确值比较两公式的精度。
(2)用龙贝格求积计算完成问题(1 )。
2、给出一种求矩形区域上二重积分的复化求积方法,然后计算二重积分..e"y dxdy,
其中积分区域D二{0乞x岂1,0岂y乞1}。
1.
%lnt_t.m复化梯形:
function F = Int_t(x1,x2,n)
%复化梯形求积公式
% x1,x2为积分起点和中点
%分为n个区间,没选用步长可以防止区间数为非整数。
实验二、定积分的近似计算
按字母顺序,大写字母排在小写字母的前面
22
dblquad 举例
f 中关于第一自变量的运算是数组运算,即把 x 看成是向 量,y 看成是标量。也可以全部采用数组运算
例:计算二重积分 I 2 1 (4xy 3 y2 )dxdy 0 1 >> f=inline('4*x*y+3*y^2'); >> I=dblquad(f,-1,1,0,2)
i 1
i 1
右点法
b a
f ( x)dx
n i 1
f
(
xi1 2
xi
)xi
n
h
i 1
f ( xi1 xi ) 2
中点法
5
矩形法举例
例:用不同的矩形法计算下面的定积分 ( 取 n=100 ),
并比较这三种方法的相对误差。
I
1 dx 0 1 x2
解:a=0, b=1, n=100
1
主要内容
数值积分的常见算法
矩形法 梯形法 抛物线法
Matlab 求积分函数
数值积分函数:trapz、quad、dblquad 符号积分函数:int
2
定积分的近似
定积分的定义
b
f ( x)dx
a
n
lim
数值计算方法实验报告
数值计算方法实验报告
一、实验介绍
本次实验是关于数值计算方法的实验,旨在通过计算机模拟的方法,实现对于数值计算方法的掌握。本次实验主要涉及到的内容包括数值微积分、线性方程组的求解、插值与拟合、常微分方程的数值解等。
二、实验内容
1. 数值微积分
数值微积分是通过计算机模拟的方法,实现对于微积分中的积分运算的近似求解。本次实验中,我们将会使用梯形公式和辛普森公式对于一定区间上的函数进行积分求解,并比较不同公式的计算误差。
2. 线性方程组的求解
线性方程组求解是数值计算领域中的重要内容。本次实验中,我们将会使用高斯消元法、LU分解法等方法对于给定的线性方程组进行求解,并通过比较不同方法的计算效率和精度,进一步了解不同方法的优缺点。
3. 插值与拟合
插值与拟合是数值计算中的另一个重要内容。本次实验中,我们将会使用拉格朗日插值法和牛顿插值法对于给定的数据进行插值求解,并使用最小二乘法对于给定的函数进行拟合求解。
4. 常微分方程的数值解
常微分方程的数值解是数值计算中的难点之一。本次实验中,我们将会使用欧拉法和龙格-库塔法等方法对于给定的常微分方程进行数值解的求解,并比较不同方法的计算精度和效率。
三、实验结果
通过本次实验,我们进一步加深了对于数值计算方法的理解和掌握。在数值微积分方面,我们发现梯形公式和辛普森公式都能够有效地求解积分,但是辛普森公式的计算精度更高。在线性方程组求解方面,我们发现LU分解法相对于高斯消元法具有更高的计算效率和更好的数值精度。在插值与拟合方面,我们发现拉格朗日插值法和牛顿插值法都能够有效地进行插值求解,而最小二乘法则可以更好地进行函数拟合求解。在常微分方程的数值解方面,我们发现欧拉法和龙格-库塔法都能够有效地进行数值解的求解,但是龙格-库塔法的数值精度
数值积分-计算方法
§2Newton—Cotes公式 §2.1Newton—Cotes公式的推导
当§1.1插值求积公式的插值节点为等距节点时,就得到Newton— Cotes公式。
将区间[a,b]n等分,,n+1个节点为 xk=a+kh (k=0,1,…,n)
在节点上对f(x)的Lagrange插值多项式是:
用Pn(x)代替f(x)构造求积公式: 记
,
(k=0,1,…,n) 作代换x=a+th带入上式,变为: 其中:
(k=0,1,…,n) (1-1) 这个积分是有理多项式积分,它与被积函数f(x)和区间[a,b]无关。
只要确定n就能计算出系数
。 于是得到称为Newton—Cotes公式的求积公式: (1-2) 其中
称为Newton—Cotes系数。如表1所示。 表1 Newton—Cotes系数
运行结果为: y1=1.5078
(2)在Matlab工作窗口中: fn=inline('(1-1/2*(sin(x)).^2).^(1/2)'); y2=quad8('fn',0,pi/2)
运行结果为: y2 = 1.3506
§1.2方法2:
(1)建立M文件: function f=fn(x) f=2./(1+x.^2)
§3.3 Gauss-Legendre求积公式
数值积分实验报告
数值积分实验报告
数值积分实验报告
导言:
数值积分是数学中的一个重要概念,它在实际应用中具有广泛的意义。本实验旨在通过数值积分方法,探索如何近似计算函数的积分值,并对结果进行分析和比较。
一、实验目的
本实验的主要目的有以下几点:
1. 了解数值积分的基本概念和原理;
2. 掌握常见的数值积分方法,如矩形法、梯形法和辛普森法;
3. 进行实际函数的数值积分计算,并与解析解进行对比。
二、实验原理
1. 数值积分的基本概念
数值积分是一种通过将函数曲线下的面积近似分解为多个小矩形、梯形或抛物线的面积之和,从而计算函数积分值的方法。常见的数值积分方法有矩形法、梯形法和辛普森法。
2. 矩形法
矩形法是一种简单的数值积分方法,它将函数曲线下的面积近似为多个矩形的面积之和。常见的矩形法有左矩形法、右矩形法和中矩形法。
3. 梯形法
梯形法是一种更精确的数值积分方法,它将函数曲线下的面积近似为多个梯形的面积之和。梯形法的计算公式为:积分值≈ (b-a) * (f(a) + f(b)) / 2,其中a
和b为积分区间的上下限。
4. 辛普森法
辛普森法是一种更加精确的数值积分方法,它将函数曲线下的面积近似为多个抛物线的面积之和。辛普森法的计算公式为:积分值≈ (b-a) * (f(a) +
4f((a+b)/2) + f(b)) / 6。
三、实验步骤
1. 确定积分区间和函数表达式;
2. 根据所选的数值积分方法,编写相应的计算代码;
3. 运行代码,得到数值积分的结果;
4. 将数值积分的结果与解析解进行对比,并分析误差。
四、实验结果与分析
科学计算与数学建模实验报告 高斯公式数值积分应用
科学计算与数学建模实验报告
高斯公式数值积分应用
一、实验目的
学习使用MATLAB
学会用高斯公式对多项式积分 理解并掌握高斯系列公式
二、实验内容
利用高斯公式数值积求解积分⎰
1
9
dx x 。
三、实验过程
(1)算法原理
高斯积分公式的思想是用n 个不等距的节点x 1,x 2,…,x n 对被积函数3进行插值,然后对插值后的函数进行积分,其积分公式为:
∑⎰==n
k k k
x f A
dx x 0
1
1
-)()(f
如果积分区间不是[-1,1],则需转换到此区间:
⎰⎰
-++--=11)2
2(2)(dt b
a t a
b f a b dx x f b
a
(2)function I=IntGausss(f,a,b,n,AK,XK)
if(n<5 && nargin = =4) AK=0; XK=0; else
XK1=((b-a)/2)*XK+((a+b)/2);
I=((b-a)/2)*sum(AK.*subs(sym(f),findsym(f),XK1)); end
ta=(b-a)/2; tb=(a+b)/2;
switch n case 3
I=ta*(0.3478548*subs(sym(f),findsym(sym(f)),ta*0.8611363+tb)+...
0.3478548*subs(sym(f),findsym(sym(f)),-ta*0.8611363+tb)+... 0.6521452* subs(sym(f),findsym(sym(f)),ta*0.3398810+tb)... +0.6521452* subs(sym(f),findsym(sym(f)),-ta*0.3398810+tb));
数值计算方法之数值积分
数值计算方法之数值积分
数值积分是数值计算中的一个重要内容,它是对函数在其中一区间上
的积分进行数值近似计算的方法。数值积分在计算机科学、自然科学以及
工程领域都有广泛的应用,如求解不定积分、概率密度函数的积分、求解
微分方程初值问题等。
数值积分的基本思想是将积分区间划分为若干小区间,然后对每个小
区间进行数值近似计算,再将结果相加得到近似的积分值。常用的数值积
分方法包括矩形法、梯形法、辛普森法等。
首先介绍矩形法。矩形法是将积分区间划分为若干个小区间,然后用
每个小区间的函数值与该小区间的宽度相乘得到每个小矩形的面积,最后
将所有小矩形的面积相加得到近似的积分值。矩形法分为左矩形法、右矩
形法和中矩形法三种。左矩形法即用每个小区间的最左端点的函数值进行
计算,右矩形法用最右端点的函数值进行计算,中矩形法用每个小区间中
点的函数值进行计算。
梯形法是将积分区间划分为若干个小区间,然后用每个小区间两个端
点的函数值与该小区间的宽度相乘,再将每个小梯形的面积相加得到近似
的积分值。梯形法相较于矩形法更为精确,但需要更多的计算量。
辛普森法是将积分区间划分为若干个小区间,然后用每个小区间的三
个点的函数值进行插值,将插值函数进行积分得到该小区间的近似积分值,最后将所有小区间的近似积分值相加得到近似的积分值。辛普森法相比矩
形法和梯形法更为精确,但计算量更大。
除了以上几种基本的数值积分方法外,还有龙贝格积分法、高斯积分
法等更为精确的数值积分方法。这些方法的原理和步骤略有不同,但都是
通过将积分区间分割为若干小区间,然后进行数值近似计算得到积分值的。
数值积分方法求解积分方程
数值积分方法求解积分方程
y(x) = f(x) + λ∫K(x, t) y(t) dt
其中y(x)是未知函数,f(x)是已知函数,K(x, t)是已知的积分核,λ是常数。在许多科学领域,如物理、工程、经济等领域,积分方程
是非常常见的。由于积分方程的解通常难以获得解析解,因此需要使
用数值方法进行求解。
数值积分方法可以分为两大类:直接积分法和迭代积分法。直接
积分法是将积分方程转化为一个代数方程,然后使用数值代数方法求解。常用的直接积分法有Trapezoidal规则、Simpson规则和Newton-Cotes规则等。这些方法都是通过将积分区间分割为若干个小区间,然后在每个小区间上使用适当的插值方法进行计算,最终将这些小区间
上的积分结果累加起来得到整个积分方程的数值解。
迭代积分法则是通过将积分方程转化为一个迭代序列,最终得到
连续逼近的解。常见的迭代积分法有Picard迭代法、Newton离散法和倍迭代法等。这些方法都要求原积分方程具有某些特定的性质,例如
可微、紧收敛等。在每次迭代中,通过逐步逼近不动点来计算解的近
似值,直到达到所需的精度要求为止。
数值积分方法在实际应用中具有广泛的适用性和可行性。它可以
处理各种类型的积分方程,包括线性和非线性、奇异和非奇异、特征
值问题等。此外,数值积分方法还可以通过适当选择插值和逼近方法
来提高计算效率和精度。例如,在直接积分法中,可以采用高阶插值
多项式来近似积分核,从而提高数值解的精度。
在实际求解中,选择合适的数值积分方法至关重要。这涉及到对
问题的深入理解以及对数值方法的熟悉程度。在选择数值积分方法时,需要综合考虑问题的特点、数值方法的精度和效率,并根据具体情况
数值计算中的数值积分方法
数值计算中的数值积分方法
数值计算是应用数学的一个分支,它主要涉及数值计算方法、
算法和数值实验。其中,数值积分作为数值计算中的一个重要环节,其作用在于将连续函数转化为离散的数据,从而方便计算机
进行计算和处理。本文将介绍数值积分的概念、方法和应用。
一、数值积分的概念
数值积分是利用数值方法对定积分进行估计的过程。在数值积
分中,积分被近似为离散区间的和,从而可以被计算机进行处理。数值积分中,被积函数的精确的积分值是无法计算的,而只能通
过数值方法进行估计。数值积分的目的是通过选取合适的算法和
参数来尽可能减小误差,达到精度和效率的平衡。
二、数值积分的方法
1. 矩形法
矩形法是数学上最简单的数值积分方法之一。矩形法的算法是
将要积分的区间分为若干个小区间,然后计算每个小区间中矩形
的面积,最后将所有小矩形的面积加起来得到近似的积分值。矩
形法的精度一般较低,适用于计算不需要高精度的函数积分。
2. 梯形法
梯形法是数值积分中常用的一种方法,其原理是将区间分为若
干个梯形,并计算每个梯形的面积,最后将所有梯形的面积加起
来得到近似的积分值。梯形法的计算精度较高,但其计算量较大。
3. 辛普森法
辛普森法是数值积分中一种高精度的方法,它是利用二次多项
式去估计原函数。辛普森法的原理是将区间分为若干等分小区间,并计算每个小区间中的二次多项式的积分值,最后将所有小区间
的积分值加起来得到近似的积分值。辛普森法的优点是其精度高,计算量相对较小。
三、数值积分的应用
数值积分方法在各个领域都有广泛的应用。例如,它可以被用
于工程学、物理学和金融学中的数值计算。在工程学中,数值积
数值积分使用数值方法计算定积分
数值积分使用数值方法计算定积分定积分是数学中的重要概念,用于求解曲线下面的面积。在某些情
况下,定积分无法通过解析解来求解,此时可以使用数值方法来进行
近似计算。数值积分是一种广泛应用的技术,本文将介绍数值积分的
基本原理以及常见的数值方法。
一、数值积分的基本原理
数值积分的基本原理是将曲线下的面积近似为若干个矩形的面积之和。假设要计算函数f(x)在区间[a, b]上的定积分,首先将[a, b]等分成n
个小区间,每个小区间的宽度为Δx=(b-a)/n。然后,在每个小区间上选
择一个代表点xi,计算其对应的函数值f(xi),然后将所有矩形的面积
相加,即可得到近似的定积分值。
二、矩形法
矩形法是数值积分中最简单的方法之一。它将每个小区间上的函数
值看作是一个常数,然后通过计算矩形的面积来近似定积分的值。矩
形法主要有两种形式:左矩形法和右矩形法。
1. 左矩形法
左矩形法使用小区间左端点的函数值来代表整个小区间上的函数值。即近似矩形的面积为f(xi) * Δx,其中xi为小区间的左端点。然后将所
有矩形的面积相加,得到近似的定积分值。
2. 右矩形法
右矩形法与左矩形法相似,仅仅是使用小区间右端点的函数值来代
表整个小区间上的函数值。近似矩形的面积为f(xi + Δx) * Δx,其中xi
为小区间的左端点。同样地,将所有矩形的面积相加,得到近似的定
积分值。
三、梯形法
梯形法是比矩形法更精确的数值积分方法。它通过使用每个小区间
的两个端点处函数值的平均值来代表整个小区间上的函数值,并计算
梯形的面积来近似定积分的值。
梯形法的计算公式为:(f(xi) + f(xi + Δx)) * Δx / 2,其中xi为小区间
数学实验考试题(附答案)
计算方法(数学实验)试题(第1组)
2000.6.22
班级姓名学号
说明:(1)1,2题必做,答案直接填在试题纸上;
(2)3,4题任选1题,将简要解题过程和结果写在试题纸上;(3)解题程序以网络作业形式提交,文件名用英文字母。1.A 工人5天的生产能力数据和B 工人4天的生产能力数据如下:A
87
85
80
86
80;B
87
90
87
84。要检验:A 的生产能力不低于85,你作的零假设是
,用的Matlab 命令是
,检验结果是
。要检验:A 工人和B 工人的生产能力相同,你作的零假设是,用的Matlab 命令是,检验结果是
。作以上检验的前提是
。
2.用电压V=14伏的电池给电容器充电,电容器上t 时刻的电压满足:
exp()()(0τt
V V V t v ---=,
其中0V
是电容器的初始电压,τ是充电常数。试用下列数据确定
V 和τ。t (秒)0.30.5 1.0 2.0
4.07.0v(t)
5.6873
6.1434
7.16338.862611.032812.6962
你用的方法是
,结果是
V =
,τ=
。
3.小型火箭初始质量为900千克,其中包括600千克燃料。火箭竖直向上发射时燃料以15千克/秒的速率燃烧掉,由此产生30000牛顿的恒定推力。当燃料用尽时引擎关闭。设火箭上升的整个过程中,空气阻力与速度平方成正比,比例系数为0.4(千克/米)。重力加速度取9.8米/秒2.
A.建立火箭升空过程的数学模型(微分方程);
B.求引擎关闭瞬间火箭的高度、速度、加速度,及火箭到达最高点的时间和高度。上升时的程序
function dx=huojian(t,x)m=900-15*t;
积分问题-数值分析上机实验报告
数值分析上机报告
姓名:
学号:
专业:
学院:
授课教师:胡杰
昆明理工大学
2012.01。01
《数值分析》实验报告
——数值积分问题
一、问题的提出
在微积分中,积分值是通过原函数的解析式求得的,即依据人们所熟知的微积分基本定理,对于积分:⎰
=
b
a
dx x f )(I ,只要找到被积函数f (x)的原函数F
(x),便有下列
牛顿—-莱布尼茨(Newton —Leibniz )公式:)
()()(a b dx x f b
a
F F -=⎰
.然而有的原函数寻找往往比较困难,许多积分函数甚至找不到用初等函数表示的原函数。为此研究数值积分问题是非常必要的.数值积分的至今普遍应用主要有五种:梯形公式、Simpson 公式及其两种算法的复化公式、高斯求积公式。本实验只要选用复合Simpson 公式及高斯求积公式对特定某个积分,例如:
dxdy e
xy
⎰⎰-D
,D={0〈x 〈1,0<y<1}进行数值计算,比较分析两种算法的
结果,理解数值积分法的意义,明确数值积分精度和步长之间的关系等。
二、目的和意义
1、 深刻理解数值积分的意义:
在微积分中,积分值是通过原函数的解析式求得的,然而原函数的寻找往往比较困难,许多积分函数甚至找不到用初等函数表示的原函数;另外,当()f x 是由测量或者数值计算给出的一张数据表时,牛顿-莱布尼茨公式也不能直接运用,为此研究数值积分问题是非常必要的。
2、 明确数值积分的精度与步长的关系:
复化的求积方法对提高精度是行之有效的,但是在使用求积之前必须给出合适的步长,并且高斯求积公式具有比复化求积公式更高的精度,步长取得太大精度难以保证,步长太小则会导致计算量的增加。
计算方法实验报告
实验一:插值法
一、实验目的
通过本次上机实习,能够进一步加深对各种插值算法的理解;学会使用用三种类型的插值函数的数学模型、基本算法,结合相应软件(如VC/VB/Delphi/Matlab/JAVA/Turbo C)编程实现数值方法的求解。并用该软件的绘图功能来显示插值函数,使其计算结果更加直观和形象化。
二、实验内容
先在屏幕上用随机函数按适当比例画出若干个点(至少7~9),分别用拉格朗日插值,牛顿插值,三次样条插值对上述离散点进行拟和,并用该软件的绘图功能来显示其插值函数。
三、源程序
⒈拉格朗日插值:(Lagrange)
#include
void main()
{
float x[3];
float y[3];
for(int m=0;m<3;m++)
cin>>x[m];
for(int n=0;n<3;n++)
cin>>y[n];
for(int k=0;k<3;k++)
{
float s=0;
for(int i=0;i<3;i++)
{
float p=1;
for(int j=0;j<3;j++)
if(i!=j)
p=p*((x[k]-x[j])/(x[i]-x[j]));
s=s+y[i]*p;
}
cout<<"("<
}
}
2.牛顿插值:
#include
void main()
{
float x[5];
float y[5];
float f[5];
for(int m=0;m<3;m++)
cin>>x[m];
for(int n=0;n<3;n++)
cin>>y[n];
float t=1;
for(int k=0;k<5;k++)
数 值 积 分 法
1.在 VC 环境下,用 C 语言编写程序; 2.编写通过编译和运行; 3.要求至少采用欧拉法和四阶龙格库塔法两种方法进行积分; 4.将计算结果中的高度、速度数据用曲线的形式表示。可将数据导在 matlab 中 绘图,也可使用 origin 等软件绘图; 5.分析速度的变化规律; 6.可尝试不同的步长对结果的影响; 7.建议先不考虑阻力的影响, 分析仿真结果的正确性,在保证仿真结果正确后在 考虑阻力的计算;
Fct(t,h,x,f); k1[0]=f[0]; k1[1]=f[1]; x1[0]=x[0]+h/2*k1[0]; x1[1]=x[1]+h/2*k1[1]; Fct(t+h/2,h,x1,f); k2[0]=f[0]; k2[1]=f[1]; x1[0]=x[0]+h/2*k2[0]; x1[1]=x[1]+h/2*k2[1]; Fct(t+h/2,h,x1,f); k3[0]=f[0]; k3[1]=f[1]; x1[0]=x[0]+h*k3[0]; x1[1]=x[1]+h*k3[1]; Fct(t+h,h,x1,f); k4[0]=f[0]; k4[1]=f[1]; x1[0]=x[0]+h/6*(k1[0]+2*k2[0]+2*k3[0]+k4[0]); x1[1]=x[1]+h/6*(k1[1]+2*k2[1]+2*k3[1]+k4[1]); x[0]=x1[0]; x[1]=x1[1]; } void Fct(double t, double h, double* x, double* f) { double g = 9.81; double den; f[0] = x[1]; den = lagrange(x); f[1] = -5*g+0.5*0.02*3.14*0.05*0.05*x[1]*x[1]*den; } double lagrange(double* x) {
数值计算方法实验报告
数值计算方法实验报告
一、实验目的
本实验旨在通过数值计算方法的实验操作,深入理解数值计算方法的原理与应用,掌握数值计算方法的相关技能,提高数值计算方法的实际应用能力。
二、实验内容
1.数值微积分
2.数值代数
3.数值微分方程
4.数值线性代数
5.数值优化
6.数值统计分析
7.数值随机模拟
8.数值傅立叶分析
9.数值偏微分方程
三、实验步骤
1.数值微积分:通过不同的数值积分方法,计算给定函数的定积分值,并对不同数值积分方法的误差进行分析。
2.数值代数:通过使用线性代数方法,求解给定的线性方程组,并分析不同线性方程组求解方法的优劣。
3.数值微分方程:通过使用常微分方程数值解法,求解给定的微分方程,并比较不同求解方法的精度和稳定性。
4.数值线性代数:通过使用特征值分解方法,对给定的矩阵进行特征值分解,并分析不同特征值分解方法的优缺点。
5.数值优化:通过使用不同的优化方法,求解给定的优化问题,并比较不同的优化方法的效率和精度。
6.数值统计分析:通过使用不同的统计分析方法,对给定的数据进行统计分析,并分析不同的统计方法的优缺点。
7.数值随机模拟:通过使用随机模拟方法,模拟给定的概率分布,并分析不同随机模拟方法的效率和精度。
8.数值傅立叶分析:通过使用傅立叶分析方法,对给定的信号进行频谱分析,并分析不同的傅立叶分析方法的优缺点。
9.数值偏微分方程:通过使用偏微分方程数值解法,求解给定的偏微分方程,并比较不同求解方法的精度和稳定性。
四、实验结果与分析
本实验中,通过对不同的数值计算方法的实验操作,我们可以更深入地理解数值计算方法的原理与应用,并掌握数值计算方法的相关技能,提高数值计算方法的实际应用能力。同时,通过实验结果的分析,我们可以更好地比较不同数值计算方法的优缺点,为实际应用提供参考依据。
计算方法数值积分
计算方法数值积分
数值积分也叫数值积分法,是一种利用数值计算方法来近似计算定积
分的技术。数值积分法的基本思想是将求解定积分的问题转化为连续函数
的逼近问题,通过对确定的函数值进行加权平均来估计定积分的值。
数值积分法的步骤如下:
1.将被积函数f(x)分割成若干个小区间;
2.在每个小区间上选择一个或多个代表点,计算这些代表点的函数值;
3.将这些函数值与一组预先选定的权重相乘,并将结果求和,即可得
到最终的近似积分值。
常用的数值积分法有矩形法、梯形法、辛普森法等。
矩形法是数值积分中最简单粗糙的近似计算方法。它将每个小区间上
的函数值等分为一个常量,用矩形面积的和来近似计算定积分。具体来说,矩形法可分为左矩形法、右矩形法和中矩形法三种。其中,左矩形法以每
个小区间的左端点作为代表点,右矩形法以右端点作为代表点,中矩形法
以每个小区间的中点作为代表点。
梯形法是通过近似使用梯形面积来计算定积分。它的计算思想是将每
个小区间上的函数值重新排列为两个连续点的直线,并计算这些直线与x
轴之间的面积和。具体来说,梯形法通过连接每个小区间的左右两个函数值,构成一个梯形来近似计算定积分。
辛普森法是一种更加精确的数值积分方法。它的计算思想是将每个小
区间上的函数值近似为一个二次多项式,并计算这些多项式的积分值。辛
普森法使用了更多的代表点,其中每两个相邻的代表点组成一个小区间,
并使用一个二次多项式来逼近这个小区间上的函数。辛普森法的精度比矩形法和梯形法要高。
数值积分法的精度受步长的影响,步长越小,近似误差越小。在实际计算中,需要根据被积函数的特点和计算精度的要求来选择合适的数值积分法和步长。此外,为了提高计算精度,还可以采用自适应步长和复合数值积分等方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二数值方法计算积分
学号:姓名:指导教师:实验目的
1、了解并掌握matlab软件的基本编程、操作方法;
2、初步了解matlab中的部分函数,熟悉循环语句的使用;
3、通过上机进一步领悟用复合梯形、复合辛普森公式,以及用龙贝格求积
方法计算积分的原理。
一、用不同数值方法计算积分 10x ln xdx=-94.
(1)取不同的步长h.分别用复合梯形及辛普森求积计算积分,给出误差中关
于h的函数,并与积分精确值比较两个公式的精度,是否存在一个最小
的h,使得精度不能再被改善?
(2)用龙贝格求积计算完成问题(1)。
二、实现实验
1、流程图:
下图是龙贝格算法框图:
2、 算法:
(1) 复合梯形公式:Tn=++)()([2b f a f h
2∑-=1
1
)](n k xk f ;
(2) 复合辛普森公式:Sn=6h
[f(a)+f(b)+2∑-=11)](n k xk f +4∑-=+1
)2/1(n k x f ];
以上两种算法都是将a-b 之间分成多个小区间(n ),则h=(b-a)/n,x k =a+kh, x k+1/2=a+(k+1/2)h,利用梯形求积根据两公式便可。
(3) 龙贝格算法:在指定区间内将步长依次二分的过程中运用如下公式
1、Sn=
34T2n-31
Tn 2、 Cn=1516S2n-151
Sn
3、 Rn=6364C2n-631
Cn 从而实现算法。
3、 程序设计
(1)、复合梯形法:
function t=natrapz(fname,a,b,n) h=(b-a)/n;
fa=feval(fname,a);fb=feval(fname,b);f=feval(fname,a+h:h:b-h+0.
001*h);
t=h*(0.5*(fa+fb)+sum(f));
(2)、复合辛普森法:
function t=natrapz(fname,a,b,n)
h=(b-a)/n;
fa=feval(fname,a);fb=feval(fname,b);f1=feval(fname,a+h:h:b-h+0
.001*h);
f2=feval(fname,a+h/2:h:b-h+0.001*h); t=h/6*(fa+fb+2*sum(f1)+4*sum(f2));
(3)龙贝格法:
function [I,step]=Roberg(f,a,b,eps)
if(nargin==3) eps=1.0e-4;
end; M=1; tol=10; k=0;
T=zeros(1,1); h=b-a;
T(1,1)=(h/2)*(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),
b));
while tol>eps
k=k+1;
h=h/2;
Q=0;
for i=1:M
x=a+h*(2*i-1);
Q=Q+subs(sym(f),findsym(sym(f)),x);
end
T(k+1,1)=T(k,1)/2+h*Q;
M=2*M;
for j=1:k
T(k+1,j+1)=T(k+1,j)+(T(k+1,j)-T(k,j))/(4^j-1); end
tol=abs(T(k+1,j+1)-T(k,j));
end
I=T(k+1,k+1);
step=k;
4、实验结果;(1)复合梯形法
(2)、复合辛普森法结果:
(3)龙贝格法结果
四.总结由结果(1)、(2)可知复合辛普森法求积分精度明显比复合梯形法求积的精度要高,且当步长取不同值时即n 越大、h 越小时,积分精度越高。实验结果说明不存在一个最小的h,使得精度不能再被改善。又两个相应的关于h 的误
差(余项)Rn(f)=-12a b -h 2f ’’(η);Rn(f)=-180
a
b -(h/2)4f (4)( η),其中η属于
a 到
b 。可知h 愈小,余项愈小,从而积分精度越高。
(注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)