欢迎来到天天文库
浏览记录
ID:33058775
大小:116.76 KB
页数:8页
时间:2019-02-19
《简单迭代法与加速方法实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、数值分jfi实验报告姓名学号实验项目简单迭代法与加速方法一、上机实验的问题和要求(需求分析):日期指导教师2014-3-22目的与要求:1、拿握求解非线性方程实根的简单-迭代法的编程运算2、会分析迭代步数,设计容许误差实验内容:1、方程?+4x2-1O=O4以等价化成以下三种形式;(i)x=(—-4x)1/2(iii)X=x-疋+4兀2_103x2+8x针对三种等价形式给出三种不同的简单迭代格式并使用每种格式计算方程在区间[1,2]上的解,初值选为1.5,容许误差选为1.OE-5,即10乍;分析每种格式的收敛性;分析收敛格式的迭代步数与计算时间.2、结合上述问题屮(i
2、i)相应的迭代格式,利用Stenffenson迭代法求原方程的解。初值选为1.5,容许误差选为1.0E-5,分析迭代步数与计算时间,并与上述简单迭代法作比较.二、程序设计的基本思想,原理和算法描述:算法的描述:1・输入初值,以及各种迭代形式2•采用for循环实现反复迭代。3.以误差选为1.0E-5,即I。"为终止循环的条件。4•输出:最后一个y即为收敛值;y的输出次数,即为收敛次数三、主要程序代码或命令:1・(1)x=(--4x),/2Xx=1.5;y=(10/x-4*x)A(l/2);whileabs(y-x)>=1.0e-5x=y;y=(10/x-4*x)Al/2
3、endy(2)104+x1/2x=1.5;y=(10/(4+x))A(l/2)whileabs(y-x)>=1.0e-5x=y;y=(10/(4+x))A(l/2)endx3+4x2-10X=x(3)3x~+Sxx=1.5;y=x-(xA3+4*xA2-10)/(3*xA2+8*x)whileabs(y-x)>=1.0e-5x=y;y=x-(xA3+4*xA2-10)/(3*xA2+8*x)end2.JO,wx=(4x)(1)兀xl=1.5;y=(10/xl-4*xl)A(l/2);z=y-(10/y-4*y)A(l/2);x2=xl-(y-x1)A2/(z-2*y+
4、x1)whileabs(x2-x1)>=1.Oe-5xl=x2;y=(10/xl-4*xl)A(l/2);z=y-(10/y-4*y)A(1/2);x2=xl-(y-x1)A2/(z-2*y+x1)end(2)4+xxl=1.5;y=(10/(4+xl))A(l/2);z=(10/(4+y))A(l/2);x2=x1-(y-xl)A2/(z-2*y+x1)whileabs(x2-x1)>=1.Oe-5xl=x2;y=(10/(4+xl))A(l/2);z=(10/(4+y))A(l/2);x2=x1-(y-xl)A2/(z-2*y+x1)end(3)疋+4/_io3x
5、2+8xxl=1.5;y=x1-(xlA3+4*x1A2-10)/(3*x1A2+8*x1);z=y-(yA3+4*yA2-10)/(3*yA2+8*y);x2=x1-(y-x1)人2/(z・2*y+x1)whileabs(x2-x1)>=1.Oe-5xl=x2;y=x1-(xlA3+4*x1A2-10)/(3*x1A2+8*x1);z=y-(yA3+4*yA2-10)/(3*yA2+8*y);x2=x1-(y-x1)人2/(z・2*y+x1)end四、调试和运行程序过程中产生的问题及采取的措施:1的输入结果不在区间[1,2]±,出现错误,经检查,不是程序出现问题;五
6、、运行输出结果及分析:1.(1)x=(一-4兀)"2的结果如图所示,厂$CommandWindow[=j回l—wl]FileEditDebugDesktopWindowHelpd
7、y=Infy=―1-Infd得出结论该迭代不收敛。⑵X~(4T7)的结果如下图y=1.37333333333333y二1.36526201487463y=1.36523001391615y二1.36523001341410»分析:形式(x=x-疋+4疋一103x2+8x迭代次数n二4并且收敛于p二1.36523001341410。故第三种形式收敛速度更快,吋间代价也更少。2.利用Stenff
8、enson迭代法求原方程的解时形式(i)x=(--4x),Z2通过编程迭代发现英收敛,n二4,收敛丁p二X1.365230013196788o形式(ii)x=(-^-)1/2迭代次数n=3,p=1.365230013414097c4+x形式(iii)疋+4宀103x2+8x迭代次数n二3,p=1.36523001341410CommandWindow?x">>~xl=l.5^y=(l"(4+xl)厂(1/2);z=(10/(4+y))A(l/2);x2=x1-(y-x1)"2/(z-2*y+x1)whileabs(x2-x1)>=1.Oe-5xl=x
此文档下载收益归作者所有