计算方法 作业_第1页
计算方法 作业_第2页
计算方法 作业_第3页
计算方法 作业_第4页
计算方法 作业_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 作业作业 1 2 作业作业 2 4 作业作业 3 3 8 作业作业 4 10 作业作业 5 5 14 作业作业 6 6 15 作业作业 7 15 2 作业作业 1 1 分别用不动点迭代与 Newton 法求解方程 2x ex 3 0 的正根与负根 解解 1 不动点迭代法 不动点迭代法 function f g1 x f exp x 3 2 求负根 p0 1 N 20 tol 0 00001 k 1 while k N p g1 p0 if abs p p0 disp p disp k 1 373374301147868 7 求正根 求正根 function f g1 x f x 2 x 3 exp x 1 p0 2 N 2000 tol 0 00001 k 1 while k N p g1 p0 if abs p p0 disp p disp k 1 923940019033850 9 Newton 法求负值 function f g1 x f 2 x exp x 3 function f g2 x 3 f 2 exp x p0 1 N 20 tol 0 00001 for k 1 N p1 p0 g1 p0 g2 p0 if abs p1 p0 disp p1 disp k 1 373374545351944 4 Newton 法求正值 法求正值 p0 2 N 20 tol 0 00001 for k 1 N p1 p0 g1 p0 g2 p0 if abs p1 p0 disp p1 disp k 1 923938750345880 4 分析 分析 Newton 法优于不动点迭代法 不动点迭代的迭代公式的构造较麻烦法优于不动点迭代法 不动点迭代的迭代公式的构造较麻烦 2 用 Newton 法求解方程 x sinx 0 的根 再用 Steffensen s method 加速其收 敛 解解 2 Newton 法 function f g1 x f x sin x function f g2 x f 1 cos x p0 pi 2 N 2000 tol 0 00001 for k 1 N p1 p0 g1 p0 g2 p0 if abs p1 p0 disp p1 disp k 1 707431147041399e 005 28 Steffensen 加速法加速法 p0 pi 2 N 30 tol 0 00001 n 0 p 1 p0 while n N for k 1 2 p k 1 g1 p k end p1 p 1 p 2 p 1 2 p 3 2 p 2 p 1 f0 g2 p1 if abs f0 disp p1 disp n 0 027403076503824 8 分析 分析 Steffensen 加速法迭代步骤明显少与加速法迭代步骤明显少与 Newton 法 法 作业作业 2 分别用 jacobi seidel sor w 1 1 1 2 1 3 1 4 1 5 方法求解方程组 Ax b 这里 10 10 1211 112 1 1112 A 10 1 1 1 b 000 x 5 10e 解 解 jacobi法法 A ones 10 13 eye 10 b 1 ones 10 1 X0 zeros 10 1 tol 1e 6 N 500 n length b X zeros 10 1 k 0 D zeros 10 10 for i 1 10 for j 1 10 if i j 5 D i j A i j end end end BJ eye 10 inv D A gJ inv D b while k N X BJ X0 gJ if norm X X0 inf if k N wraning 已达到迭代上限 end disp k num2str k k 40 disp X 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 0 333330819187043 Seidel法 法 A ones 10 13 eye 10 b 1 ones 10 1 X0 zeros 10 1 tol 1e 6 N 500 n length b X zeros 10 1 k 0 while k N for i 1 10 if i 1 X 1 b 1 A 1 2 10 X0 2 10 A 1 1 else if i 10 X 10 b 10 A 10 1 9 X 1 9 A 10 10 else X i b i A i 1 i 1 X 1 i 1 A i i 1 10 X0 i 1 10 A i i end end end if norm X X0 inf if k N warning yidashangxian end disp k disp X 23 0 333332553339188 0 333332595440710 0 333332635269730 0 333332672948911 0 333332708594293 0 333332742315655 0 333332774216848 0 333332804396119 0 333332832946413 0 333332859955655 SorSor法 法 w 1 1w 1 1 A ones 10 13 eye 10 b 1 ones 10 1 X0 zeros 10 1 tol 1e 6 N 500 n length b X zeros n 1 k 0 w 1 1 while k N for i 1 n if i 1 X1 1 b 1 A 1 2 n X0 2 n A 1 1 else if i n X1 n b n A n 1 n 1 X 1 n 1 A n n else X1 i b i A i 1 i 1 X 1 i 1 A i i 1 n X0 i 1 n A i i end end X i 1 w X0 i w X1 i end if norm X0 X inf tol break end k k 1 X0 X end if k N warning dashangxian end disp k disp X n length b X zeros n 1 k 0 w 1 1 while k N for i 1 n if i 1 X1 1 b 1 A 1 2 n X0 2 n A 1 1 else if i n X1 n b n A n 1 n 1 X 1 n 1 A n n else X1 i b i A i 1 i 1 X 1 i 1 7 A i i 1 n X0 i 1 n A i i end end X i 1 w X0 i w X1 i end if norm X0 X inf tol break end k k 1 X0 X end if k N warning dashangxian end disp k disp X 18 0 333332760226497 0 333332800322546 0 333332837613370 0 333332872295231 0 333332904550659 0 333332934549413 0 333332962449376 0 333332988397385 0 333333012530003 0 333333034974241 W 1 2 disp k disp X 13 0 333332902075278 0 333332944200543 0 333332982227287 0 333333016616882 0 333333047722549 0 333333075774851 0 333333100959620 0 333333123594280 0 333333144195133 0 333333162665941 W 1 3 disp k disp X 11 0 333333255088066 0 333333288136189 0 333333351409902 0 333333408881138 0 333333415223925 0 333333348156599 8 0 333333249780749 0 333333238664526 0 333333396927847 0 333333331920055 W 1 4 disp k disp X 14 0 333333440509276 0 333333450129616 0 333333379501338 0 333333259193169 0 333333176578150 0 333333229275384 0 333333415321495 0 333333520804821 0 333333260240553 0 333333357058133 W 1 5 disp k disp X 18 0 333333316677176 0 333333475601892 0 333333538072818 0 333333419825827 0 333333176629124 0 333333043579820 0 333333257527825 0 333333609921143 0 333333284913128 0 333333451154007 分析 分析 seidel优于优于jacobi 而 而sor法取决于法取决于w的值 的值 作业作业3 3 用Newton法与最速下降法求方程组在 0 8 0 7 附近的根 22 2 220 xy xy Newton 法法 程序 x0 0 8 0 7 e 10 6 N 50 for k 1 N y 2 x0 1 1 4 x0 2 1 2 x0 1 1 1 x0 1 1 2 2 x0 2 1 2 2 x0 1 1 2 x0 2 1 9 x x0 y disp x disp k if norm y e return end x0 x end disp 发散 结果 结果 k01234 x0 80 89010 88360 88360 8836 y0 70 78420 78080 78080 7808 最速下降法最速下降法 function x speedDown x0 tol N N 2000 tol 10 5 x0 0 8 0 7 for i 1 N g dfai x0 h t fai x0 t g u fminbnd h 0 100 x x0 u g if fai x A 4 1 1 1 1 3 1 1 1 1 2 0 1 1 0 2 v 1 1 1 1 N 500 tol 1e 6 lamda 0 k 0 err 1 while ktol u A v m j max abs u dc abs lamda m u u m dv norm u v err max dc dv v u lamda m k k 1 end disp lamda disp u 5 236066215588851 1 000000000000000 0 618032306274094 0 118035117388973 0 499999336385796 b 用幂法求最小特征值及对应的特征向量 用幂法求最小特征值及对应的特征向量 A 4 1 1 1 1 3 1 1 1 1 2 0 1 1 0 2 v 1 1 1 1 N 500 tol 1e 6 lamda 0 k 0 err 1 B inv A while ktol u B v m j max abs u 11 dc abs lamda m u u m dv norm u v err max dc dv v u lamda m k k 1 end disp lamda disp u 1 309016734481396 0 472136236214678 0 763931589613249 1 000000000000000 0 236066879991883 用反幂法求最大特征值及对应的特征向量 用反幂法求最大特征值及对应的特征向量 clear format long clc max1 100 epsilon 1e 10 A 4 1 1 1 1 3 1 1 1 1 2 0 1 1 0 2 u0 1 1 1 1 u u0 lambda 0 k 0 err 1 A inv A while kepsilon v A u m j max abs v m v j u v m err abs lambda m lambda m k k 1 end k lambda 1 lambda u k 36 lambda 0 763932022568468 u 0 472135955126136 0 763932022305396 1 000000000000000 0 236067977005873 2 用Houshoeder变换求矩阵A的QR分解 并用QR方法做三次迭代 12 4111 1311 1120 1102 A A 4 1 1 1 1 3 1 1 1 1 2 0 1 1 0 2 n size A Q eye n for k 1 n 1 c norm A k n k w zeros n 1 w k 1 n A k 1 n k w k A k k sign A k k c P eye n 2 w w norm w 2 Q Q P A P A end disp Q disp A Columns 1 through 3 0 917662935482247 0 154326033291867 0 336192773139988 0 229415733870562 0 857366851621483 0 357882629471600 0 229415733870562 0 445830762843172 0 862171789181582 0 229415733870562 0 205768044389156 0 124716673906769 Column 4 0 145095250022002 0 290190500044004 0 072547625011001 0 943119125143015 Columns 1 through 3 4 358898943540673 1 605910137093932 1 147078669352809 0 000000000000000 3 069373328804911 1 903354410599693 0 000000000000000 0 000000000000000 1 030268175751576 0 000000000000000 0 000000000000000 0 000000000000000 Column 4 1 605910137093932 1 114576907107929 0 271123204145151 13 1 450952500220023 迭代迭代3步后 步后 Q 0 998695202482521 0 050722014489648 0 005720594513016 0 001563516206025 0 050723006451278 0 998691769097255 0 001895799807987 0 006191356638558 0 004920506131233 0 003720987669243 0 964333143214383 0 264619598231967 0 003295113708668 0 005308656541104 0 264622881927802 0 964331732730807 R 5 198424311162425 0 449097026330777 0 031468059125357 0 023065795960679 0 000000000000000 3 644006209805871 0 015158365109808 0 024261061727233 0 000000000000000 0 000000000000000 1 156695127366024 0 567878663098360 0 000000000000000 0 000000000000000 0 000000000000000 0 912767684813911 A 5 214651814588578 0 184840306617101 0 007562750233808 0 003007673311060 0 184840306617102 3 639424206006100 0 001289375526592 0 004845570140495 0 007562750233808 0 001289375526592 1 265713136328034 0 241539215286025 0 003007673311060 0 004845570140496 0 241539215286025 0 880210843077286 作业作业5 5 对于函数 经行lagrange差值 取不同的等分数n n 5 n 10 2 1 125 f x x 将区间 1 1 n等分 取等距节点 把差值多项式的曲线画在同一张图上经行比 较 function yi F4 xi n x 1 2 n 1 for a 1 n 1 y a 1 1 25 x a 2 14 end for a 1 2 0 01 1 yi a 0 for k 1 n 1 t 1 for i 1 n 1 if i k t t xi a x i x k x i end end yi a yi a t y k end end 程序 xi 1 0 01 1 y1i F4 xi 5 y2i F4 xi 10 for a 1 2 0 01 1 y3i a 1 1 25 xi a 2 end plot xi y1i xi y2i xi y3i r 作业作业6 6 分别用Romberg求积公式计算积分 时精度达到 3 1 cos x exdx 6 10 fun inline exp x cos x a 1 b 3 i 1 j 1 h b a tol 1e 6 T 1 1 h feval fun a feval fun b 2 T i 1 1 T i 1 2 sum feval fun a h 2 h b h 2 h 2 15 T i 1 j 1 4 j T i 1 j T i j 4 j 1 while abs T i 1 i 1 T i i tol i i 1 h h 2 T i 1 1 T i 1 2 sum feval fun a h 2 h b h 2 h 2 for j 1 i T i 1 j 1 4 j T i 1 j T i j 4 j 1 end end T s T i 1 j 1 s T 18 4158 0 0 0 0 0 12 2829 10 2385 0 0 0 0 10 8629 10 3896 10 3996 0 0 0 10 5173 10 4022 10 4030 10 4031 0 0 10 4316 10 4030 10 4031 10 4031 10 4031 0 10 4102 10 4031 10 4031 10 4031 10 4031 10 4031 s 10 4031 作业作业7 分别用Euler方法 h 0 025 改进的Euler方法 h 0 025 经典的R K方法 h 0 1 求初值 问题的数值解计算0 1 0 2 0 3 0 4 0 5处的解的近似值 并与精确解比较 分析误差 2 1 0 0 5 yyx y EulerEuler dyfun inline y x 2 1 format short h 0 025 a 0 1 b 0 5 x a h b y0 0 5 y 1 y0 s length x for n 1 s 1 y n 1 y n feval dyfun x n y n h end x y x Columns 1 through 10 16 0 1000 0 1250 0 1500 0 1750 0 2000 0 2250 0 2500 0 2750 0 3000 0 3250 Columns 11 through 17 0 3500 0 3750 0 4000 0 4250 0 4500 0 4750 0 5000 y

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论