迭代加速技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川理工学院《数值计算方法》课程设计
题目迭代加速技术
专业数学与应用数学
班级2013级1班
姓名高尚牟庆张玉玲
一、摘要 (2)
二、应用计算方法的基本原理 (3)
2.1.Aitken加速法 (3)
2.1.1算法描述 (3)
2.2.Steffensen迭代法 (3)
2.2.1算法描述 (3)
三、例题的计算及结果 (4)
3.1.Aitken加速法迭代法在水力计算中的应用 (4)
3.1.1收缩水深的计算 (4)
3.2用Steffensen迭代法计算方程的近似解 (5)
3.2.1用Steffensen迭代法计算31
=-在0 1.5
x x
x=附近的近似解 (5)
四、总结及心得体会 (6)
五、参考文献 (6)
一、摘要
本设计报告主要围绕Aitken加速法和Steffensen 迭代法展开。
在生活中面对实际问题时,常常遇到非线性方程的求解问题,为此,我们常使用迭代技术求解,但一般的迭代技术不一定收敛且收敛速度慢,带来大量的计算问题,为了提高计算效益,我们采用迭代加速技术求解此类问题,迭代加速技术有Aitken加速法和Steffensen迭代法,其中Steffensen迭代法将Aitken加速技巧与不动点迭代相结合,更易于计算。
首先根据方程构造一个迭代函数,根据基本原理中两种加速迭代格式公式进
行迭代,最终得到结果。最后我们对本次课程设计进行了总结,总结了程序的优
缺点并对本次试验过程中遇到的问题及困难进行了解答,此外我们还写出了对本
次课程设计的心得体会。
二、应用计算方法的基本原理
2.1.Aitken 加速法
2.1.1算法描述
Aitken 加速法是一个很重要的加速法,他是基于简单迭代法的迭代函数构造新的迭代函数而产生的。
设{}k x 是一个线性收敛的序列,收敛于方程()x x ϕ=的根*x ,因{}k x 线性收敛于根*x ,故对充分大的k ,有
)0(*
*
1≠≈--+c c x
x x x k k (1) c x x x x k k ≈--++*
1*
2 (2)
由上面两式得
≈--+*
*1x
x x x k k *1*
2x x x x k k --++ (3) 解得
k k k k k k k k k k k k x x x x x x x x x x x x x +---
=+--≈+++++++++122122122
1
2*
2)(2 (4) 或
k
k k k k k x x x x x x x +---
≈++++122
12*
2)( (5) 把式(4)右端的值作为新的近似值k x ~
,可望获得更好的近似结果,于是提出Aitken 加速方案。
迭代:
1()k k x x ϕ+= (6)
在迭代:
21()k k x x ϕ++= (7)
加速:
k
k k k k k k x x x x x x x +---
≈+++12212)(~ (8) 2.2.Steffensen 迭代法
2.2.1算法描述
Steffensen 迭代法主要用于改善线性收敛或不收敛迭代。现在,针对一种不动点迭代函数ϕ,其不动点为*x ,由0x 出发构建迭代公式
2
1()()()2k k k k k k k k k k k y x z y y x x x z y x ϕϕ+⎧⎪
=⎪⎪
=⎨⎪-⎪=-
-+⎪⎩
)2,1,0( =k
或干脆写成不动点形式1()k k x x +=ψ,即
[][]2
1()()2()k k k k k k k
x x x x x x x ϕϕϕϕ+-=--+ )2,1,0( =k 其中,迭代函数ψ为
[][][][][]2
2
()()()()()2()()2()x x x x x x x x x x x x x
ϕϕϕϕϕϕϕϕϕϕ--ψ=-=-+-+
三、例题的计算及结果
3.1.Aitken 加速法迭代法在水力计算中的应用
3.1.1收缩水深的计算
若上游总水头m E 609.80=,单位流量s m q /333.92=,试算侧收缩水深c h 。 查阅资料知收缩水深的基本公式为:
232
02
02c c q h E h g αϕ
-+= 所以收缩水深的迭代计算公式为:
c h =
式中:0E 为上游总水头,m ;q 为单位流量,s m /2;c h 为收缩水深,m ;α为谁流动能矫正系数,0.1;ϕ为流速系数,95.0;g 为重力加速度,2/8.9s m 。
对于此问题,首先假设初值0.10=c h ,带入)(2式迭代,得82919.01=c h ,将1c h 带入)
(2再迭代得79852.02=c h ,后采用艾特金加速迭代公式对1c h 进行迭代得79180.01=c h ,再将1c h 作为初值进行第二次迭代,直到误差满足要求。
表1 直接迭代法求解c h
k
c h
0 1 0.82955 1 0.82955 0.79893 2 0.79893 0.7945 3 0.7945 0.79388 4
0.79388
0.79379