辛普森求积公式分解.docx
- 文档编号:7781688
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:29
- 大小:278.90KB
辛普森求积公式分解.docx
《辛普森求积公式分解.docx》由会员分享,可在线阅读,更多相关《辛普森求积公式分解.docx(29页珍藏版)》请在冰豆网上搜索。
辛普森求积公式分解
摘要
在工程实验及研究中,实际工作中,变量间未必都有线性关系,如服药后血药浓度与时间的关系;疾病疗效与疗程长短的关系;毒物剂量与致死率的关系等常呈曲线关系。
曲线拟合是指选择适当的曲线类型来拟合观测数据,并用拟合的曲线方程分析两变量间的关系.可以说,曲线拟合模型与我们的生活生产密切相关.
本课题着重介绍曲线拟合模型及其应用,其中包括它的基本思想、模型的建立、以及具体应用.为了更好的了解曲线拟合模型,可以将它分为线性与非线性模型,在模型建立的基础上我们可以用最小二乘法来解决一些我们日常所应用的问题.
关键词曲线拟合;线性与非线性模型;最小二乘发
引言
第一章曲线拟合
§1.1基本思想及基本概念
§1.1.1方法思想
§1.1.2几个基本概念
§1.2辛普森算法基本定义及其应用
1.2.1
辛普森求积公式的定义
1.2.2
1.2.3
1.2.4
第二章
辛普森求积公式的几何意义
辛普森求积公式的代数精度及其余项
辛普森公式的应用
辛普森求积公式的拓展及其应用
§2.1复化辛普森求积公式
§2.1.1
问题的提出
§2.1.2
复化辛普森公式及其分析
§2.1.3
复化辛普森公式计算流程图
§2.1.4
复化辛普森公式的应用
§2.2变步长辛普森求积公式
10
§2.2.1
变步长辛普森求积公式的导出过程
10
§2.2.2
变步长辛普森求积公式的加速过程
12
§2.2.3
变步长辛普森求积公式的算法流程图
13
§2.2.4
变步长辛普森公式算法程序代码
14
§2.2.5
变步长辛普森求积公式的应用
14
§2.2.6
小结
14
§2.2.7
数值求积公式在实际工程中的应用
14
参考文献
16
附录A
17
21
附录C
引言
辛普森是英国数学家.1710年8月20日生于波士沃希;1761年5月14日卒于波士沃希.在定积分近似计算中,以他的姓来命名的“辛普森公式”,虽早在他之前牛顿的学生柯特斯(Cotes)和斯特林就已经得出了(包括一些更高阶的近似公式),但真正广泛地为人所知并加以应用,则是1743年辛普森重新发现之后的事了.辛普森的工作使牛顿的微积分学说得到了进一步完善.在我们的日常生活中计算积分与我们
的生活生产密切相关.所以掌握数值积分方法是学生储备知识能量的武器.
数值积分的一个基本的计算策略,用易于积分的简单函数来逼近曲线y=f(x).
简单曲线下面的面积近似等于f(x)下面的面积.如果涉及初等函数的积分找不到其
他由初等函数构成的解析表达式,或者只在一些离散的x点上知道函数的值,在多数情况下,被积函数的原函数很难用初等函数表达出来,因此能够借助微积分学的牛
顿-莱布尼兹公式计算定积分的机会是不多的.那么就必须对定积分进行数值逼近.
数值积分实现是将整个闭区间[a,b]划分为N个小段,在每个小段上对f(x)进行低阶分段多项式逼近.对每个小段上的逼近多项式积分时,就得到基本公式.基本公式只涉及足够多的(x,f(x))对来定义分段多项式的某一段,将此公式应用到N个小段并把结果相加得到复合公式,或称为扩展公式.在一个小段中节点的位置和数目决定了基本公式的很多重要特性.当节点均匀分布时,所有的积分公式称为牛顿一柯特斯公式.例如,梯形、辛普森、柯特斯求积公式等.
经典辛普森求积公式来源于Lagrange插值多项式的应用,它的代数精度高达
3阶,其形变后的代数精度高达4阶,且二者都具有良好的稳定性与收敛性,从而提高
了计算效率及准确度,是定积分近似计算常使用的方法,一直是理工科大学生必修的内容.下面将给出具体辛普森求积公式的具体思想以及其算法程序设计并给出将其拓展后在实际工程问题中的应用.
第一章辛普森求积公式的理论
实际问题当中常常需要计算积分,有些数值方法,如微分方程和积分方程的
求解,也都和积分计算相联系.依据人们所熟知的微积分基本定理,对积分
b
l=[f(x)dx只要找到被积函数f(x)的原函数F(X),便有下列牛顿-莱布尼茨公
bb
式:
ff(x)dx=F(b)-F(a),但实际计算ff(x)dx往往遇到一些困难,如:
1)f(x)的a・a
原函数不能用初等函数表示,故不能用牛顿-莱布尼茨公式计算.2)虽然找到了
f(x)的原函数,但因表达式过于复杂而不便应用牛顿-莱布尼茨公式.3)f(X)在
许多实际问题中是以列表函数的形式给出,即仅仅知道其在一些节点处的函数值,牛顿-莱布尼茨公式也不能直接运用,因此有必要研究积分的数值计算问题,数值积分是解决上述困难的一种有效方法.
1.1基本思想及基本概念
§1.1.1方法思想
由定积分中值定理:
b
=ff(x)dx=f(E)(b-a),a 可知: 积分可以通过被积函数在©处的值得到.由于积分中值定理仅仅告诉我们匕在一定条件下是存在的,但并没有给出确定匕的方法.一个很自然的想法就是利用被积 函数f(X)在节点a=Xo 按此思想有 (1-1) bn Jf(x)dx止送Aif(Xi)a i二0 这就是数值求积的思想(有效地解决了本章开始提出的问题),权因子A和节点Xi i=0,1,2,…,n的不同确定方法就对应不同的数值求积公式 §1.1.2几个基本概念 定义1.1称形如(1-1)式的求积公式为机械求积公式,其中Ai仅节点的选择与 f(x)无关,a=Xo兰X1 系数. 定义1.2如果某个求积公式对于次数不超过m的多项式均能准确地成立,而对于 m+1次多项式就不准确成立,则称该求积公式具有m次代数精度(或代数精确度).注1.1a)m越大近似程度越高,标志着使函数准确成立的“个数”越多,但代数精度不是唯一衡量标准. n b)若机械求积公式的代数精度m>0,则有送Ai=b_a. 7 xm时,由(1.1) C)若机械求积公式的代数精度为m,即当f(x)=1,x; b 式可得,对任意次数不超过m的k次多项式Pk(x),k d)代精度的高低,从侧面反映求积公式的精度高低. 定义1.3称求积公式 n In=送Akf(Xk) k』 为插值型求积公式,式中求积系数Ak通过插值基函数 (X—X0)…(X—xk_|)(x—Xkd…(X-Xn) lk(X)=k=0,1,…n. (Xk—Xo)…(Xk—Xk_|)(Xk-Xk+)…(Xk-Xn) 积分求得,即 表1-1几种简单N-C求积公式总结表 n 名称 形式 n=1 梯形求积公式 bb—a [f(x)dx5-[f(a)+f(b)] a2 n=2 辛普森求积公式 bb—aa+b af(x)dx止S-[f(a)+4f()+f(b)] a62 n=4 柯特斯求 积公式 af(x)dx止C=匚? [7£(a)+32f(x1)+12f(x2)+32f(X3)+7f(b)]勺90 其中xk=a+kh,h=-—,k=1;",n-1. n 注1.2a)n>8时,N-C公式出现数值不稳定. )n为偶数时,N-C公式的代数精度至少为n+1次,n为奇数时,N-C公式的代数精度至少为n次. 定义1.5截断误差: 由 bn |[fH|n[fHRn[fHJaf(x)d-^0A^f(xi^l-(^1/ n半(x)dx(1-3) 当n=1时可得梯形求积公式的截断误差Rt Rt=1-T=(1"2^仪_3)&亠皿 f"(H)b 2[(X-a)(x-b)dx f"(H)32 ^(b-a),n-[a,b],f(x)-C[a,b] 12 类似的,可得当n=2,n=4时的截断误差 注1.3从截断误差公式可知,当区间长度b-a较大时,求积公式误差较大. §1.2辛普森算法基本定义及其应用 §1.2.1辛普森求积公式的定义 设计积分区间[a,b戊扮为n等份,步长口,选取等距节点Xk=a+kh构造出 n 的插值型求积公式 In=(b-a)ckn)f(Xk) 为牛顿一柯特斯(Newton-Cotes)公式,式中ckn)称为柯特斯系数.根据插值型求积公式系数(1-2),引进变换x=a+th,则有 (一1严n dt=鳥丿昭nn(t-j)dt nk! (n-k)! 0j出 j? k 当n=2时,由上式有 (2)121 C0=4J0(tT)(t-2)dt="6 ci (2) 124 一列t(t—1)dt二 (2)1»21 C2=4.0t(^1)d^- 则相应的求积公式是辛普森求积公式: (1-4) bb-aa+b s=af(x)dxf(a)+f^—)f(b)] a62 §1.2.2辛普森求积公式的几何意义 辛普森公式的几何意义就是用通过A,B,C三点的抛物线y=L(x)代替y=f(x)所 得曲边梯形面积,如图1.1所示. 图1.1辛普森求积公式的几何意义图 §1.2.3辛普森求积公式的代数精度及其余项 由N-C公式的特点知,当n为偶数时N-C公式的代数精度至少为n+1次,由于 Simpson求积公式为n=2时的N-C公式,故它的代数精度至少为3次, 即m>3 将f(X)=x4代入Simpson公式(1-4) ..55 左边二"乐=宁 由此可知f(X)=x4使得Simpson求积公式不准确成立,所以m=3即Simpson公式代 数精度为3次 由N-C公式的余项公式(1-3)知,当2时可得辛普森求积公式的截断误差 Rs= 晋(宁)4f(4m,ya,b],f(x)心⑻b] (1-5) §124辛普森公式的应用 例1.1用辛普森求积公式计算积分 2 4+x 由积分形式可知a=0,b=1,n=2 用辛普森公式计算有下式 1x11 -0^^6[f(O^4f(1^f (1)] 其中f(xV 计算流程图 图1.2例1.1流程图 C语言程序代码及其运算结果详见附录A 分析附录A可知 1x 2dx=0.111765 i4+x 第二章辛普森求积公式的拓展及其应用 为了提高精度,通常在实际应用中往往采用将积分区间划分成若干个小区间,在 各小区间上采用低次的求积公式,女口: 梯形公式或辛普森公式,然后再利用积分的可加性,把各区间上的积分加起来,便得到新的求积公式,这就是复化求积公式,本章重点介绍复化辛普森求积公式. §2.1复化辛普森求积公式 §2.1.1问题的提出 由截断误差可知,当区间长度b-a较大时,Newton-Cotes求积公式的误差较大.为构造更高精度的数值积分公式,可以采用分段低次多项式替代整体高次多项式,为 此,利用积分关于区间具有可加性,将[a,b]区间上的积分,分成若干小区间上的积分,以此来减少积分区间长度引起的误差.这就引用了复化求积公式.其基本思想是: 先把积分区间分成一些长度较小的子区间,在每个子区间上使用低阶的牛顿-柯特斯 公式,即利用 bn召b-a ff(x)dx=Sff(x)dx,Xi=a+ih,h= 'ay'Xi丄n 并把小区间[XitXji=1,2,…,n上的积分fXif(x)dx用前面的方法近似求得,由此即可x丄 得到相应的复化求积公式.最常用的是复化梯形公式和复化辛普森公式,下面学习辛 普森求积公式. §2.1.2复化辛普森公式及其分析 定义2.1将小区间[Xi亠Xi]i=1,2,…,n上的积分分别用辛普森公式计算,即可 得到复化辛普森公式 af(x)dx止送: [f(Xi」)+4f(Xy)+f(Xi)]i¥6 hn4n =-[f(ar^f(Xi)+4送f(Xi_1)+f(b)] 6yi#2 其中X#XV. 另一种定义形式为: =Sn 用分段二次插值函数代替,记n=2m,k=0,1,2,…m-1在第k 段的两个小区间上,用三个结点亿! f(Xzk)),(X2k十,f(X2k十)),(X2k七,f(X2k42))作二次插 值函数sk(X),然后积分,求m段之和可得整个区间上的近似积分 1(4)"'"' e(H[f(a)-f(b)],hT0. 1802 f(x)€C4[a,b]时,Sn比T2n的精度一般要高,但 他们的计算量几乎一样. 注2.2®Sn属于机械型求积公式,但不属于插值型、也不属于N-C求积公式. ②Sn的代数精度为4次,具有稳定性和收敛性即SnTI[f](nT述或 hT处). §2.1.3复化辛普森公式计算流程图 为了减少计算工作量,优化程序设计,将复化辛普森公式 bnh af(x)dx-5: Hf(Xi」)+4f(Xi_1)+f(Xi)] i二62 改写为 则于此相对应的辛普森流程图为: I++ 图2.1复化辛普森算法流程图 §2.1.4复化辛普森公式的应用 例2.1用复化辛普森公式计算正弦积分的近似值 Sn=(0-Sin^dxn=8 Dx 分析该积分可知f(X)=sinXdx,a=0,b=1则 1 =-=0.125为步长 8 x .b-a h= n C语言程序代码及其运算结果详见附录 由此可知 S4 =0.94608 例2.2用复化辛普森公式计算定积分 1x [dxn=8. Sx2 分析该积分可知f(X)=— 4+X C语言程序代码及其运算结果详见附录B. 由此可知 S4=0.11157 在利用插值型求积公式求积分时,为了提高精度有两种途径.一是提高积分区间上的插值多项式的阶数,从而也就提高了求积的阶数.但是,由于插值多项式的阶数 越高,其逼近性质未必好(即精度未必能提高),因此,牛顿-柯特斯公式的阶数越高,其积分精度也未必越高,工程上一般只作到六阶牛顿-柯特斯公式(即龙贝格公式)为止.二是采用复化公式,尽量减小每个求积小区间的长度.在实际应用时,往往将两种方法混合使用,以便提高求积的精度. rH 【/寺帚 森求积公式 §2.2变 在数值积分中,精度是一个很重要的问题,如果误差太大,就没有实际意义.为 了提高精度,通过需要在复化求积公式中尽量减少各细分小区间的长度,即减少步长 h.显然,如果步长h取得太大,则精度就难以保证.但是,如果步长取得太小,则计算工作量就随之增大,并且,由于项数增加,其误差积累也就增大.因此,在采用复 化公式求积时,关键的问题是合理地选择步长(即合理选择对整个积分区间的细分数),以便既能满足精度要求,又不至于引起过多的误差积累和过大的计算工作量. 在实际计算过程中,通常采用变步长的求积法. §2.2.1变步长辛普森求积公式的导出过程 变步长辛普森求积公式是建立在变步长梯形公式的基础上,同时它又是龙贝格算法导出的中间过程,我们知道,若被积函数具有一定的光滑性,则增加节点可以降低复化求积公式的截断误差. 这里需要解决的问题是增加节点后的复化求积方法能否充分利用已有的计算工 b 作量.譬如: 若将Tn作为I=Jf(x)dx的近似精度不够,需减少步长(增加节点数) a 计算相应的Tm来近似I,当然我们想要充分利用已经求得的Tn.为此,设区间 [a,b]n等分后,利用复化梯形公式已经求得Tn这一结果,为了得到精度更高的数值 结果,我们将原有的步长折半,即把区间[a,b]分为2n等分,然后应用复化梯形公 式求得T2n.下面将会看到这样既提高了精度,又能充分利用已经求得的Tn.事实上,我们可以建立Tn与T2n的下述递推关系.设 hn-1ba T-2^0[f(Xi^f(X-)], ndh T2n=2Hf(Xk)+2f(Xk屮)+f(XF)] h卫4飞 hfh: 」 [f(Xk)+f(X5)]+-5: f(Xk单) 4k=02k=g2 1hn」 二Jn+肿f(XiQ 2 2iA 即, 1h2 T2n 二丄丁n+-2新增分点的函数值 22y 注2.3由上述公式可知在Tn的基础上计算T2n只需调用n次函数即可,最大限度地节省了T2n的计算量. 为一i)h2,即 两式相比可得 复化梯形公式估计误差的事后估计法. ②由公式(2-1)还可以得到校正公式(加速公式) 141 1汀2n(T2n—Tn)=—T2n-;;Tn 333 数值实验结果表明,在一定条件下,上式计算出来的值比原来的T2n好得多,上述公 式称为梯形公式的加速公式. 梯形求积公式的实质: 假设已知Tn,T2n,则 4142hh —T2nTn=—送{—[f(Xk)中f(Xk屮)]中一[f(Xk+1)+f(Xy)]}- 333kT4蔦4F 1n」h -2-[f(Xk)+f(Xy)] 3kA2 n」h =Zdf(Xk)+4f(XkJ+f(X』]=Sn k=062 41 nTn 上式表明Tn与T2n通过上面公式处理后,可得精度更咼的Sn.即复化辛普森公式,这 也是加速的实质. §2.2.2变步长辛普森求积公式的加速过程 类似梯形加速公式的推导,由Sn的截断误差公式(1-5)可得 I-Sn比一[S2n—Sn] 15 I止S2n+——[S2n-Sn] 15 161 =^S2n一聶Sn 注2.5①上述两个公式分别称为复化辛普森公式估计误差的事后估计公式及复 化辛普森公式的加速公式. ③类似地可以证明: ③在求得Cn,C2n的基础上,可以进一步加速得: 龙贝格公式 Rn-丄Cn 6363 §223变步长辛普森求积公式的算法流程图 图2.2变步长辛普森算法流程图 §2.2.4变步长辛普森公式算法程序代码 详见附录C §2.2.5变步长辛普森求积公式的应用 例2.3用变步长辛普森求积公式计算定积分 1X[dx U+X2 取S=0.000001. C语言程序代码及其运算结果详见附录C. 分析结果可知 1X E"11572 §226小结 通过分析例1.1、2.2、2.3有下表2-1 表2-1三种算法比较 算法名称 代数精度 积分形式 计算结果 余项 辛普森求积 3 1x 0——dx•04+x2 0.111765 1 —(In5-ln4)-0.111765 2 复化辛普森 求积 4 1x Wx2 0.11157 1 ‘n5-ln4)-0.11157 变步长辛普 森求积 1x 02dx 04+x 0.111572 1 -(ln5-ln4)-0.111572 由表2-1可以得出用变步长辛普森求积公式求得的结果偏离准确值的程度最小, 即其计算结果最接近准确值,其次是复化辛普森求积方法,辛普森求积方法较前述两种方法误差较大.但三种算法均具有良好的稳定性与收敛性,从而提高了计算效率及 准确度.在工程技术中有较为广泛的应用. §2.2.7数值求积公式在实际工程中的应用 例2.4人造地球卫星轨道可视为平面上的椭圆。 我国第一颗人造地球卫星近地 点距地球表面439Km远地点距地球表面2384Km地球半径为6371Km.求: 该问题的轨道长度. 模型1)a,b分别是长半轴和短半轴; 2)焦距为c; 3)地球半径为r; Si和S2. 近地点和远地点与地球表面的距离分别是 2a=s1+s2+2r a=7782.5(Km) 椭圆的参数方程为 b=7721.5(Km) X=acost,y=bsint(0 弧长的公式二椭圆长度 L=4((a2sin21+b2cos2t)2dt 利用数值积分公式计算卫星轨道长度问题,编写Mathematica语句如下: NIntegrate[4*j7782.52Sin[t]2+7721.52Cos[t]2,{t,0,^}] 结果为: 48707.4 \n[]]=Hlntegrate[4*1782.5^SinM^+7121.5^CoB[xp,{x#£}] ]J Out[11=4S707,4 参考文献 [1] [2] [3] [4] [6] 李庆扬王能超易大义.数值分析基础[M].北京: 清华大学出版,2008年. 徐士良.数值方法与计算机实现[M].北京: 清华大学出版社,2006年. 封建湖聂玉峰王振海.数值分析[M].西安: 西北工业大学出版社,2003年.朝伦巴根贾德彬.数值计算方法[M].北京: 中国水利水电出版社,2007年. 王立秋魏焕彩周学圣.工程数值分析题解[M].山东: 山东大学出版社,2004年.张韶华奚梅成陈效群.数值计算方法与算法.北京: 科学出版社,2006年. 附录A 本附录介绍例1.1用辛普森求积公式计算过程中的变量说明、C语言程序代码、 以及运行结果. 表变量说明表 变量名 变量说明 a 积分上限 b 积分下限 n 区间等分后的个数 h 步长 s 结果 该积分用Simpson公式计算的C语言程序代码为: #includevstdio.h> #include t=x/(4+pow(x,2)); returnt;} main() {floatn,a,b; floath,s; printf("putn="); scanf("%f",&n); printf("puta="); scanf("%f",&a); printf("putb="); scanf("%f",&b); printf("a=%f£? b=%f,n=%fi",a,b,n);h=(b-a)/n; printf("h=%f\n",h); s=(h/3)*(f(a)+4*f(a+h)+f(b)); printf("s=%f\n",s); } 其结果为: 11Ti||mi[iiif Putn=2puta=0puth=l a=0.000000,to=l>800000,n=2.000000h=0.500000 E=0.11i7&5 Pressany
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 辛普森求积 公式 分解