C 数值积分
- 格式:pdf
- 大小:128.50 KB
- 文档页数:14


实验三 数值积分程序设计算法
1)实验目的
通过本次实验熟悉并掌握各种数值积分算法及如何在matlab中通过设计程序实现这些算法,从而更好地解决实际中的问题。
2)实验题目
给出积分 dxxI32211
1.用Simpson公式和N=8的复合Simpson公式求积分的近似值.
2.用复合梯形公式、复合抛物线公式、龙贝格公式求定积分,要求绝对误差为
710*21,将计算结果与精确解做比较,并对计算结果进行分析。
3)实验原理与理论基础
Simpson公式
)]()2(4)([6bfbafafabS
复化梯形公式
将定积分badxxfI)(的积分区间],[ba分隔为n等分,各节点为njjhaxj,,1,0, nabh复合梯形(Trapz)公式为
])()(2)([211njjnbfxfafnabT如果将],[ba分隔为2n等分,而nabh/)(不变,则 )]()(2)(2)([41021112bfxfxfafnabTnjjnjjn 其中hjahxxjj)21(2121,)]()(2)(2)([41021112bfxfxfafnabTnjjnjjn
10)2)12((221njnnabjafnabT
n=1时,abh,则)]()([21bfafabT)0(0T
)21(22112hafabTT)1(0T
若12kn,记)1(0kTTn,,2,1k 12kabh jhaxj12kabja
hxxjj2121kabja2)12(,则可得如下递推公式 )0(0T)]()([2bfafab
第五章 数值微分与数值积分 一.分别用向前差商,向后差商和中心差商公式计算()fxx=在2x=
的导数的近似值。其中,步长0.1h=。 【详解】
00()()(20.1)(2)2.12=0.349 241
0.10.1fxhfxff
h+−+−−===向前差商
00()()(2)(20.1)21.9=0.358 087
0.10.1fxfxhff
h−−−−−===向后差商
00()()(20.1)(20.1)2.11.9=0.353 664
220.10.2fxhfxhff
h+−−+−−−===
×中心差商
二.已知数据 x 2.5 2.55 2.60 2.65 2.70 ()fx 1.58114 1.59687 2 1.62788 1.64317
求(2.50),(2.60),(2.70)fff′′′的近似值。
【详解】
0.05h=,按照三点公式
3(2.50)4(2.55)(2.60)31.5811441.596871.61245(2.50)0.316 100
20.050.1ffff−+−−×+×−′≈==
×
(2.65)(2.55)1.627881.59687(2.60)0.310 100
20.050.1fff−−′≈==
×
(2.60)4(2.65)3(2.70)241.6278831.64317(2.70)4.179 900
20.050.1ffff−+−×+×′≈==
×
三.已知如下数据 x 3 4 5 6 7 8
()fx 2.937 6 6.963 213.600
0 23.500
8 37.318
4 55.705
6 用三点公式计算(5)f′和(5)f′′的近似值。
【详解】
1h=,(6)(4)23.500 86.963 2(5) 8.268 4
22fff−−′≈==
2(4)2(5)(6)6.9632213.600023.5008(5)1.6320
212ffff−+−×+′′≈==
×
数学与计算科学学院
实 验 报 告
实验项目名称 数值积分
所属课程名称 数值分析
实 验 类 型 验证
实 验 日 期 2
班 级
学 号
姓 名
成 绩
1
一、实验概述:
【实验目的】
在微积分中,积分值是通过原函数的解析式求得的,然而原函数的寻找往往比较困难,许多积分函数甚至找不到用初等函数表示的原函数;另外,当f(x)是由测量或者数值计算给出的一张数据表时,牛顿—莱布尼茨公式也不能直接运用,为此研究数值积分问题是非常必要的,因此尝试用梯形公式,辛普森公式和及其相关复化公式,进行求解,并比较各方法的精度。
【实验原理】
复化梯形公式:
将积分区间[a,b]划分n等分,步长bahn,求积节点kxakh,0,1,2,kn在每个小区间上应用梯形公式
然后将它们累加求和,作为所求积分I的近似值.
记
式为复化梯形求积公式,下标n表示将区间n等分。
复化辛普森公式:
将积分区间[a,b]划分n等分,记子区间的中点为1212kkxxh,在每个小区间上应用辛普森公式,则有 2
其中
记
式为复化辛普森求积公式。
【实验环境】
Windows 7 MATLAB 2010a
二、实验内容:
【实验方案】
1、根据实验原理,编出程序,得出各项公式在个区间上n等分时的积分值的近似解及其差值余项的值。
2、对同一个积分公式,采取n=10, 100,时比较n取值不同时对数值精度的影响的结果。
桂林电子科技大学
数学与计算科学学院实验报告
实验室: 06406 实验日期: 2014 年 11 月 21 日
院(系) 数学与应用数学 年级、专业、班 姓名 成绩
课程
名称 数值分析实验 实验项目
名 称 实验积分 指导
教师 李光云
一 、实验目的
通过实验掌握利用Matlab进行数值积分的操作,掌握Matlab中的几种内置求积分函数,进一步理
解复化梯形,复化辛普生公式,并编程实现求数值积分
二、实验原理
Matlab中,有内置函数计算积分:
>> z = trapz(x,y)
其中,输入x,y分别为已知数据的自变量和因变量构成的向量,输出为积分值。
>> z = quad(fun,a,b)
这个命令是使用自适应求积的方法计算积分的命令。其中,fun为被积函数,a,b为积分区间。
我们还可以利用复化梯形公式
11022niinxfxfxfnabI
三、使用仪器,材料
电脑 MATLAB
四、实验内容与步骤
1. 编写复化辛普生公式的Matlab的程序。
2. 利用复化梯形法程序计算12041Idxx,记录下计算结果随着n增加的变化情况,画图与复化梯形公式的情况比较收敛速度。
3. 积分dxxxsin的原函数无法用初等函数表达,结合Matlab复化梯形程序,用描点法绘制其原函数xdttt1sin在区间50,1的图形。
五、实验过程原始记录(数据,图表,计算等) 一、
复化Simpson公式程序:
function s=Simpson(a,b,n)
%输出s为积分的数值解,输入(a,b)为积分区间,n为等分区间的个数.
h=(b-a)/(n*2);
s1=0;
s2=0;
s=h*(f(a)+f(b))/3;%先计算特殊两点相加.