计算机科学中的重要数学思想迭代数学与应用数学毕业论文设计1 精品.docx
《计算机科学中的重要数学思想迭代数学与应用数学毕业论文设计1 精品.docx》由会员分享,可在线阅读,更多相关《计算机科学中的重要数学思想迭代数学与应用数学毕业论文设计1 精品.docx(37页珍藏版)》请在冰豆网上搜索。
计算机科学中的重要数学思想迭代数学与应用数学毕业论文设计1精品
本科毕业论文(设计)
题 目:
计算机科学中的重要数学思想—迭代法
计算机科学中的重要数学思想—迭代法
摘要
本文将探讨数学中重要的思想方法—迭代的实际应用。
主要介绍几种常见问题的迭代方法如:
求解非线性方程f(x)=0的不动点迭代、二分法、牛顿迭代法,还有求解线性方程组及非线性方程组的各种迭代法。
并对各种迭代法的收敛性进行讨论和比较,讨论各种迭代法的优缺点。
在分析结果的基础上我们可以看出迭代法的实际应用性很强,对于计算机上的应用尤为突出。
研究结果告诉我们:
在具体的应用中要根据实际情况来选择不一样的迭代法,也可以将几种方法结合来运用。
关键词
迭代;收敛性;牛顿法;雅克比迭代;塞德尔迭代;非线性方程;(非)线性方程组。
AnimportantMathematicsthoughtfromthecomputerscience----IterationMethod
Abstract
Inthispaper,wewilldiscussanimportantmathematicsthoughtofiterationmethodanddiscussitsrealisticapplicationFirst,Iwillintroducealotofiterationmethodfromsomenaturalquestion,forexample:
theFixed-pointiteration,theBisectionMethod,Newtonmethod,andsomeiterationmethodofsolvinglinearequationsetornotlinearequationset。
Second,wewilldiscussandcomparetheastringencyofthosemethods。
Wewillfindouttheadvantagesanddisadvantagesofseveralmethodsforiteration。
Fromanalysistheresultofiterationmethod,wecanfindithaslotsofactioninreality,particularlyincomputerscience。
Accordingtotheanalysisresult,wegetthatweuseiterationmethodmustbaseonreality,andalsowecancombinedifferentmethodtodealwithsomeproblemaroundus。
Keywords:
astringency;NewtonMethod;Jacobiiteration;Gauss-Seideliteration;nonlinearequation;linearornonlinearequationset。
目 录
第一章迭代法·····································4
1.1迭代法简介··································4
1.2运用迭代法的前提准备························4
第二章不动点迭代法·······························5
2.1不动点的寻找································5
2.2绝对误差与相对误差··························6
第三章二分法·····································8
3.1波尔查诺二分法······························8
3.2试值法的收敛性······························9
第四章牛顿-拉夫森法与割线法······················11
4.1求根的斜率法································11
4.2收敛速度与缺陷······························13
4.3割线法与加速收敛····························16
第五章求线性方程组的迭代法·······················19
5.1雅克比迭代··································19
5.2高斯-塞德尔迭代与收敛性·····················20
第六章非线性方程组的迭代法·······················24
6.1理论与广义微分······························24
6.2接近不动点处的收敛性························25
6.3赛德尔迭代法与牛顿法························26
结束语·············································29
主要参考文献·······································30
致谢···············································31
计算机科学中的重要数学思想—迭代法
第一章迭代法
1.1迭代法简介
迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。
迭代法又分为精确迭代和近似迭代。
“二分法”和“牛顿迭代法”属于近似迭代法。
迭代法常用于求方程或方程组的近似根。
1.2运用迭代法的前提准备
一、确定迭代变量。
在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
二、建立迭代关系式。
所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。
迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。
三、迭代过程进行控制。
在什么时候结束迭代过程?
这是编写迭代程序必须考虑的问题。
不能让迭代过程无休止地重复执行下去。
迭代过程的控制通常可分为两种情况:
一种是所需的迭代次数是个确定的值,可以计算出来;另一种是所需的迭代次数无法确定。
对于前一种情况,可以构建一个固定次数的循环来实现对迭代过程的控制;对于后一种情况,需要进一步分析出用来结束迭代过程的条件
第二章不动点迭代法
2.1不动点的寻找
我们先探讨不动点的存在性和介绍不动点迭代的方法。
定义2.1函数g(x)的一个不动点是指一个实数P,满足P=g(P)。
定义2.2迭代Pn+1=g(Pn),其中n=0,1,…称为不动点迭代
定理2.1g(x)为连续函数且
[a,b]我们有
①g(x)
[a,b]任意x
[a,b]则g(x)一定有不动点
②
则g(x)不动点唯一
证明:
①如果g(a)=a或g(b)=b,则为真;否则g(a)必须满足g(a)
g(b)的值必须满足g(b)
。
f(x)
有如下特性:
对
应用中值定理,而且由于常量L=0,可推断出存在数P
。
因此,P=g(P),且P为不动点。
②我们可以采用反证法。
设存在两个不动点P1与P2.根据均值定理,可推断出存在数d
根据假设,有
,对前式子简化得
。
但这与题意矛盾,故得证P点唯一。
下面我们给定一个定理来判断,迭代所产生的序列是收敛的还是发散的。
定理2.2设有
如果对于所有
将收敛到唯一的不动点P
.在这种情况下,P称为吸引不动点。
如果对于所有
,有
>1,则迭代将不会收敛到P,此时P点称为排斥不动点。
我们可以证明定理中的吸引不动点。
证:
首先要证明Pn都位于(a,b)内。
从P0开始,可推导出存在一个值C满足
满足
因此,P1比P0更接近于P。
同上可以归纳出Pn比Pn-1更接近于P点。
所以所有的点都在
中。
接下来证明。
首先用数学归纳法证明可建立下面的不等式
。
因此
,
的极限压缩在左右2边的0之间,故
=0,这样就有
=p,,所以得证迭代Pn=g(Pn-1)收敛到不动点P
例题:
设
=
,且P0=4,找去函数的不动点。
解:
设迭代
,由P0=4得P1=3.5P2=3.25P3=3.125…………
由此序列,不难得出P=3
2.2绝对误差与相对误差
在迭代运算中,迭代结果与真实值间总存在误差,我们算误差方法分为:
绝对误差和相对误差
绝对误差:
相对误差:
(其中
为真实的结果,
为迭代计算的结果)
第三章二分法
3.1波尔查诺二分法
先介绍连续函数的零点
定义3.1设
是连续函数。
满足
的任意r成为方程
的一个根。
也称r为函数
的零点
二分法是将连续函数的区间进行对分取舍,从而逐步逼近到零点,直到一个任意小的包含零点的间隔
定理3.1设
,且存在实数
满足
。
如果
与
的符号相反,且
表示二分法生成的中点序列,则
其中n=0,1…
这样,序列
收敛到零点
即可表示为
证明:
由于零点r和中点
都位于区间
内,
与r之间的距离不会比这个区间的一半宽度范围大。
这样,对于所有的n,
,观察连续的区间宽度范围,可得到
b1-a1=(b0-a0)/2b2-a2=(b0-a0)/4,使用数学归纳法很容易得证
,结合上面的式子,我们有
综上可得证
收敛到r,定理得证。
例题:
利用二分法寻找函数
的零点,区间为[0,2].
解:
起始值
=0,
=2.计算f(0)=-1f
(2)=0.818595
所以f(x)的一个根位于[0,2]内在中点C0=1,可发现f
(1)=-0.158529,因此区间改变为[C0,b0]=[1,2],接下来从左边压缩,使得a1=c0b1=b0.中点为c1=1.5………………
按照这种方法,可得到序列
,他收敛于
1.11415714
3.2试值法的收敛性
下面探讨试值法又叫试位法。
试值法是对二分法的改造,使收敛速度变快。
与上述条件一样,假设
和
符号相反,如果找到经过点
和
的割线L与x轴的交点(c,0),则可得到一个更好的近似值。
为了寻找值x,定义了线L的斜率m的的两种表示方法,一种为:
另一种方法为:
于是我们有
=
所以
,这样
如果f(a)和f(c)符号相反,则在[a,c]内有一个零点
如果f(b)和f(c)符号相反,则在[c,b]内有一个零点
如果f(c)=0,则c是零点
结合上述过程可构造{[
]}区间序列,其中每个序列包涵零点。
在每一步中,零点r的近似值为
,
而且可以证明序列
将收敛到r
下面我们来用试值法求解
,在区间[0,2]中,并观察它是否比二分法收敛得快
解:
根据初始值
,可得到f(0)=-1f
(2)=0.81859485,因此在区间中有一个根。
利用试值法,可得到:
。
函数在区间
内改变符号,因此从左边压缩,设
,根据上面结论可得到下一个近似值
=1.12124074和
,
下一个判