数值分析MATLAB上机实验
数值分析上机作业(MATLAB)

将系数矩阵 A 分解为:A=L+U+D
Ax=b
⇔ (D + L +U)x = b ⇔ Dx = −(L + U )x + b ⇔ x = −D −1(L + U )x + D −1b x(k +1) = −D −1 (L + U ) x(k ) + D −1b
输入 A,b 和初始向量 x
迭代矩阵 BJ , BG
否
ρ(B) < 1?
按雅各比方法进行迭代
否
|| x (k+1) − x(k) ||< ε ?
按高斯-塞德尔法进行迭代
否
|| x(k+1) − x (k ) ||< ε ?
输出迭代结果
图 1 雅各布和高斯-赛德尔算法程序流程图
1.2 问题求解
按图 1 所示的程序流程,用 MATLAB 编写程序代码,具体见附录 1。解上述三个问题 如下
16
-0.72723528355328
0.80813484897616
0.25249261987171
17
-0.72729617968010
0.80805513082418
0.25253982509100
18
-0.72726173942623
0.80809395746552
0.25251408253388
0.80756312717373
8
-0.72715363032573
0.80789064377799
9
-0.72718652854079
MATLAB第二次上机实验报告

电子科技大学电子工程学院标准实验报告(实验)课程名称MATLAB与数值分析学生姓名:学号:指导教师:一、实验名称实验二 线性方程组求解和函数的数值逼近二、实验目的通过上机实验,使学生对病态问题、线性方程组求解和函数的数值逼近方法有一个初步的理解。
实验涉及的核心知识点:病态方程求解、矩阵分解和方程组求解、Lagrange 插值。
实验重点与难点:算法设计和MATLAB 编程三、实验内容1. 对高阶多项式()()()()()2011220k p x x x x x k ==---=-∏编程求下面方程的解()190p x x ε+=并绘图演示方程的解与扰动量ε的关系。
2. 对220n =,生成对应的Hilbert 矩阵,计算矩阵的条件数;通过先确定解获得常向量b 的方法,确定方程组()n H x b =最后,用矩阵分解方法求解方程组,并分析计算结果。
3. 对函数()21125f x x =+ []1,1x ∈-的Chebyshev 点()()21cos 21k k x n π⎛⎫-= ⎪ ⎪+⎝⎭,1,2,,1k n =+编程进行Lagrange 插值,并分析插值结果。
四、实验数据及结果分析1. 对高阶多项式()()()()()2011220k p x x x x x k ==---=-∏编程求下面方程的解()190p x x ε+=并绘图演示方程的解与扰动量ε的关系。
p=[1,-1]; for i=2:20 n=[1,-i];p=conv(p,n); % 求多项式乘积 endm=zeros(1,21); % m 的最高次幂为20,有21项 hold on x=1:20;d=[-1,0,0.1,0.5,1]; for i=1:5delt=d(i); m(2)=delt;y=(roots(p+m))'; % 求多项式的根 plot(x,y,'-o','color',[i/5,i/20,i/10]); endtitle('方程p(x)=0的解与扰动量delt 的关系')legend('delt=-1','delt=0','delt=0.1','delt=0.5','delt=1')24681012141618200102030405060方程p(x)=0的解与扰动量delt 的关系delt=-1delt=0delt=0.1delt=0.5delt=12.对220n =,生成对应的Hilbert 矩阵,计算矩阵的条件数;通过先确定解获得常向量b 的方法,确定方程组()n H x b =最后,用矩阵分解方法求解方程组,并分析计算结果。
数值分析matlab实验报告

数值分析matlab实验报告《数值分析MATLAB实验报告》摘要:本实验报告基于MATLAB软件进行了数值分析实验,通过对不同数学问题的数值计算和分析,验证了数值分析方法的有效性和准确性。
实验结果表明,MATLAB在数值分析领域具有较高的应用价值和实用性。
一、引言数值分析是一门研究利用计算机进行数值计算和分析的学科,其应用范围涵盖了数学、物理、工程等多个领域。
MATLAB是一种常用的数值计算软件,具有强大的数值分析功能,能够进行高效、准确的数值计算和分析,因此在科学研究和工程实践中得到了广泛的应用。
二、实验目的本实验旨在通过MATLAB软件对数值分析方法进行实验验证,探究其在不同数学问题上的应用效果和准确性,为数值分析方法的实际应用提供参考和指导。
三、实验内容1. 利用MATLAB进行方程求解实验在该实验中,利用MATLAB对给定的方程进行求解,比较数值解和解析解的差异,验证数值解的准确性和可靠性。
2. 利用MATLAB进行数值积分实验通过MATLAB对给定函数进行数值积分,比较数值积分结果和解析积分结果,验证数值积分的精度和稳定性。
3. 利用MATLAB进行常微分方程数值解实验通过MATLAB对给定的常微分方程进行数值解,比较数值解和解析解的差异,验证数值解的准确性和可靠性。
四、实验结果与分析通过对以上实验内容的实际操作和分析,得出以下结论:1. 在方程求解实验中,MATLAB给出的数值解与解析解基本吻合,验证了MATLAB在方程求解方面的高准确性和可靠性。
2. 在数值积分实验中,MATLAB给出的数值积分结果与解析积分结果基本吻合,验证了MATLAB在数值积分方面的高精度和稳定性。
3. 在常微分方程数值解实验中,MATLAB给出的数值解与解析解基本吻合,验证了MATLAB在常微分方程数值解方面的高准确性和可靠性。
五、结论与展望本实验通过MATLAB软件对数值分析方法进行了实验验证,得出了数值分析方法在不同数学问题上的高准确性和可靠性。
数值分析matlab完整版实验报告

《数值分析》报告运用Matlab求解非线性方程的根学院:专业:班级:姓名:学号:1. 目的掌握非线性方程求根的方法,并选取实例运用MATLAB 软件进行算法的实现,分别用牛顿法、弦截法和抛物线法求非线性方程的根。
2. 报告选题报告选取《数值分析(第四版)》290页习题7作为研究对象,即求3()310f x x x =--=在02x =附近的根。
根的准确值* 1.87938524...x =,要求结果准确到四位有效数字。
(1) 用牛顿法;(2) 用弦截法,取02x =,1 1.9x =; (3) 用抛物线法,取01x =,13x =,22x =。
3. 理论基础 (1) 牛顿迭代法牛顿迭代法是一种特殊的不动点迭代法,其计算公式为1(),0,1,2,...'()k k k k f x x x k f x +=-=其迭代函数为()()'()f x x x f x ϕ=-牛顿迭代法的收敛速度,当(*)0,'(*)0,''(*)0f x f x f x =≠≠时,容易证明,'(*)0f x ≠,''(*)''(*)0'(*)f x x f x ϕ=≠,牛顿迭代法是平方收敛的,且12''(*)lim2'(*)k k ke f x e f x +→∞=。
(2)弦截法将牛顿迭代法中的'()k f x 用()f x 在1k x -,k x 处的一阶差商来代替,即可得弦截法111()()()()k k k k k k k f x x x x x f x f x ++-=--- 。
(3)抛物线法弦截法可以理解为用过11(,()),(())k k k k x f x x f x ---两点的直线方程的根近似替()0f x =的根。
若已知()0f x =的三个近似根k x ,1k x -,2k x -用过1122(,()),(,()),(,())k k k k k k x f x x f x x f x ----的抛物线方程的根近似代替()0f x =的根,所得的迭代法称为抛物线法,也称密勒(Muller)法。
电子科大matlab与数值分析第一次上机实践报告范文

电子科大matlab与数值分析第一次上机实践报告范文实践内容:MATLAB软件操作及程序设计学院:姓名:学号:指导老师:实践日期:题目(一)编程实现以下数列的图像,用户能输入不同的初始值以及系数。
并以某,y为坐标显示图像某(n+1)=a某某(n)-b某(y(n)-某(n)^2);y(n+1)=b某某(n)+a某(y(n)-某(n)^2)题目分析:此题要求是让我们编一个m程序,并且能够实现不同初值和系数画出图像。
这道题的重点有两个,一个是用循环生成两个数列,一个是做出图像。
对于生成数列,我采用for循环,而画出图像,由于某(n)和y(n)是离散的,我采用的是画出一些列点,故用catter(某,y)函数。
试题答案:functionhuatu(某1,y1,a,b,N)%获得变量N表示数列长度%函数huatu(某1,y1,a,b,N)绘制一些列点%参数某1,y1为两个数列的初值,a,b位系数,N为数列长度某(1)=某1;y(1)=y1;forn=1:(N-1)%循环实现递归算出数列某(n+1)=a某某(n)-b某(y(n)-某(n)^2);y(n+1)=b某某(n)+a某(y(n)-某(n)^2);endcatter(某,y,'.','r')%描点法画出图像,图像是一系列点,但有时因为数据%问题点不是很明显题目(二)2.编程实现奥运5环图,允许用户输入环的直径。
题目分析:本题又是一个作图题,重点是如何处理任意半径的问题、图形颜色和保持五个图形。
针对本题,我把圆心坐标设置为和半径有关的量,用循环画五个图形,并用holdon保持图形,而且用a某iequal保持横纵坐标等距。
题目答案:functionf=wuehuan(r)%函数wuehuan(r)能够绘制给定参数的奥运五环t=0:.01:2某pi;%生成一系列角度a=[-2.4某r,0,2.4某r,-1.2某r,1.2某r];%确定五个横坐标b=[0,0,0,-r,-r];%确定五个纵坐标color=['b','k','r','y','g'];%确定五种颜色forn=1:5%循环话五个正园某=r某co(t)+a(n);y=r某in(t)+b(n);plot(某,y,color(n))holdon%保持画过的园不被覆盖a某iequal%保正横纵等距3.实现对输入任意长度向量元素的冒泡排序的升序排列。
数值研究分析上机题(matlab版)(东南大学)

数值分析上机题(matlab版)(东南大学)————————————————————————————————作者:————————————————————————————————日期:数值分析上机报告第一章一、题目精确值为)11123(21+--N N 。
1) 编制按从大到小的顺序11131121222-+⋯⋯+-+-=N S N ,计算S N 的通用程序。
2) 编制按从小到大的顺序1211)1(111222-+⋯⋯+--+-=N N S N ,计算S N 的通用程序。
3) 按两种顺序分别计算64210,10,10S S S ,并指出有效位数。
(编制程序时用单精度) 4) 通过本次上机题,你明白了什么?二、通用程序clearN=input('Please Input an N (N>1):'); AccurateValue=single((0-1/(N+1)-1/N+3/2)/2); Sn1=single(0);for a=2:N;Sn1=Sn1+1/(a^2-1); endSn2=single(0);for a=2:N;Sn2=Sn2+1/((N-a+2)^2-1); endfprintf('The value of Sn using different algorithms (N=%d)\n',N); disp('____________________________________________________') fprintf('Accurate Calculation %f\n',AccurateValue); fprintf('Caculate from large to small %f\n',Sn1); fprintf('Caculate from small to large %f\n',Sn2);disp('____________________________________________________')三、求解结果Please Input an N (N>1):10^2The value of Sn using differentalgorithms (N=100)____________________________________________________Accurate Calculation0.740049Caculate from large to small0.740049Caculate from small to large0.740050__________________________________四、结果分析有效位数n100 10000 1000000顺序从大到小 6 3 3从小到大 5 6 6可以得出,算法对误差的传播又一定的影响,在计算时选一种好的算法可以使结果更为精确。
数值分析MATLAB上机实验

数值分析实习报告姓名:gestepoA学号:201*******班级:***班序言随着计算机技术的迅速发展,数值分析在工程技术领域中的应用越来越广泛,并且成为数学与计算机之间的桥梁。
要解决工程问题,往往需要处理很多数学模型,不仅要研究各种数学问题的数值解法,同时也要分析所用的数值解法在理论上的合理性,如解法所产生的误差能否满足精度要求:解法是否稳定、是否收敛及熟练的速度等。
而且还能减少大量的人工计算。
由于工程实际中所遇到的数学模型求解过程迭代次数很多,计算量很大,所以需要借助如MATLAB,C++,VB,JAVA的辅助软件来解决,得到一个满足误差限的解。
本文所计算题目,均采用MATLAB进行编程,MATLAB被称为第四代计算机语言,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来MATLAB最突出的特点就是简洁,它用更直观的、符合人们思维习惯的代码。
它具有以下优点:1友好的工作平台和编程环境。
MATLAB界面精致,人机交互性强,操作简单。
2简单易用的程序语言。
MATLAB是一个高级的矩阵/阵列语言,包含控制语言、函数、数据结构,具有输入、输出和面向对象编程特点。
用户可以在命令窗口中将输入语句与执行命令同步,也可以先编好一个较大的复杂的应用程序(M文件)后再一起运行。
3强大的科学计算机数据处理能力。
包含大量计算算法的集合,拥有600多个工程中要用到的数学运算函数。
4出色的图像处理功能,可以方便地输出二维图像,便于我们绘制函数图像。
目录1 第一题.................................................................. 4 1.1 实验目的ﻩ41.2 实验原理和方法 (4)1.3 实验结果........................................................... 51.3.1 最佳平方逼近法ﻩ51.3.2 拉格朗日插值法ﻩ71.3.3 对比ﻩ82 第二题.................................................................. 92.1实验目的9ﻩ2.2实验原理和方法ﻩ10102.3实验结果ﻩ2.3.1 第一问10ﻩ2.3.2 第二问 (11)2.3.3 第三问1ﻩ13第三题 (12)3.1实验目的 (12)123.2 实验原理和方法ﻩ3.3实验结果1ﻩ24 MATLAB程序 (14)1第一题某过程涉及两变量x和y,拟分别用插值多项式和多项式拟合给出其对应规律的4.65880.3719.64484.272170345.2795 43 7.48478.2392 ⑴请用次数分别为3,4,5,6的多项式拟合并给出最好近似结果f(x)。
数值分析matlab上机作业报告

一、给定向量x ≠0,计算初等反射阵H k 。
1.程序功能:给定向量x ≠0,计算初等反射阵H k 。
2.基本原理: 若()xx x R x ∈=,,, 的分量不全为零,则由12112212122()x (,,,)1()22n T T sign x e x x x x σσσρσσρ-⎧=⎪=+=+⎪⎪⎪==+⎨⎪⎪=-=-⎪⎪⎩u x u uu H I I uuu 确定的镜面反射阵H 使得y e Hx =-=σ;当(1)k n ≤<时,由21/2k ()T 1()()()k 1()()()(())(0,,0,,,,)1()()=()2()nk i i kk nk k k n k T k k Tk k k kk k T k k sign x x x x x x σσρσσσρ=+-⎧=⎪⎪⎪=+∈⎨⎪==+⎪⎪=-⎩∑u R u u u H I u u 有T 121(,,,,,0,,0)n k k k x x x σ-=-∈H x R 算法:(1)输入x ,若x 为零向量,则报错 (2)将x 规范化,{}x x x M ,,,max =如果M =0,则报错同时转出停机 否则n i M x x i i ,,2,1, =←(3)计算2x =σ,如果0<1x ,则σσ-= (4))(1x +=σσρ (5)计算1,(1)x σ==+u x u (6)1Tρ-=-H I uu (7)(M ,0,,0)σ=-y(8)按要求输出,结束3.变量说明:x -输入的n维向量;n -n维向量x的维数;M -M是向量x的无穷范数,即x中绝对值最大的一项的绝对值;p -Householder初等变换阵的系数ρ;u -Householder初等变换阵的向量Us -向量x的二范数;x -输入的n维向量;n -n维向量x的维数;p -Householder初等变换阵的系数ρ;u -Householder初等变换阵的向量Uk -数k,H*x=y,使得y的第k+1项到最后项全为零;4.程序代码:(1)function [p,u]=holder2(x)%HOLDER2 给定向量x≠0,计算Householder初等变换阵的p,u%程序功能:函数holder2给定向量x≠0,计算Householder初等变换阵的p,u;%输入:n维向量x;%输出:[p,u]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数值分析实习报告姓名:gestepoA学号:201*******班级:***班序言随着计算机技术的迅速发展,数值分析在工程技术领域中的应用越来越广泛,并且成为数学与计算机之间的桥梁。
要解决工程问题,往往需要处理很多数学模型,不仅要研究各种数学问题的数值解法,同时也要分析所用的数值解法在理论上的合理性,如解法所产生的误差能否满足精度要求:解法是否稳定、是否收敛及熟练的速度等。
而且还能减少大量的人工计算。
由于工程实际中所遇到的数学模型求解过程迭代次数很多,计算量很大,所以需要借助如MATLAB,C++,VB,JAVA的辅助软件来解决,得到一个满足误差限的解。
本文所计算题目,均采用MATLAB进行编程,MATLAB被称为第四代计算机语言,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来MATLAB最突出的特点就是简洁,它用更直观的、符合人们思维习惯的代码。
它具有以下优点:1友好的工作平台和编程环境。
MATLAB界面精致,人机交互性强,操作简单。
2简单易用的程序语言。
MATLAB是一个高级的矩阵/阵列语言,包含控制语言、函数、数据结构,具有输入、输出和面向对象编程特点。
用户可以在命令窗口中将输入语句与执行命令同步,也可以先编好一个较大的复杂的应用程序(M 文件)后再一起运行。
3强大的科学计算机数据处理能力。
包含大量计算算法的集合,拥有600多个工程中要用到的数学运算函数。
4出色的图像处理功能,可以方便地输出二维图像,便于我们绘制函数图像。
目录1 第一题 (4)1.1 实验目的 (4)1.2 实验原理和方法 (4)1.3 实验结果 (5)1.3.1 最佳平方逼近法 (5)1.3.2 拉格朗日插值法 (7)1.3.3 对比 (8)2 第二题 (9)2.1实验目的 (9)2.2 实验原理和方法 (10)2.3 实验结果 (10)2.3.1 第一问 (10)2.3.2 第二问 (11)2.3.3 第三问 (11)3 第三题 (12)3.1实验目的 (12)3.2 实验原理和方法 (12)3.3 实验结果 (12)4 MATLAB程序 (14)1第一题某过程涉及两变量x 和y ,拟分别用插值多项式和多项式拟合给出其对应规律的588719448 721570234795 743847392⑴请用次数分别为3,4,5,6的多项式拟合并给出最好近似结果f(x)。
⑵请用插值多项式给出最好近似结果。
1.1实验目的:学习逼近和插值的原理和编程方法,由给出的已知点构造多项式,在某个范围内近似代替已知点所代表的函数,以便于简化对未知函数的各种计算。
1.2试验原理和方法:实验原理:拉格朗日插值法中先构造插值基础函数:l k (x )=∏x−x ixk −x in j=0j≠k(k =0,1,2,⋯,n ),然后构造出拉格朗日多项式:p n (x )=∑(∏x−x ixk −x in j=0j≠k)n k=0f (x k )。
最佳平方逼近中,设逼近函数P n (x )=a 0+a 1x +a 2x 2+⋯+a n x n ,逼近函数和真实函数之差r =P n (x )−y ,[r 1r 2⋮r n ]=[11⋮x 1x 2⋮⋯⋯⋱x 1n x 2n ⋮1x n⋯x nn ][a 0a1⋮a n ]−[y 1y 2⋮y n ],即:r =Xa −Y ,根据最小二乘准则令∑r i 2n i=0=min ,可以得到a =(X T X )−1X TY 。
实验方法:逼近法采用最佳平方逼近,依据最小二乘原则:∑r i 2n i=0=min ,由已知条件采用离散型。
插值法采用拉格朗日插值法。
在逼近法中,由于是离散型的,所以法方程系数阵设计成求和。
分别求出3、4、5、6次的多项式,逼近结果和真实值有一定差距,最小二乘正是让这些差距达到最小,理论上多项式次数越高结果和真实值差距越小。
拉格朗日插值法中“la=la*(p-x(j))/(x(k)-x(j))”语句实现的是我们通常书写的连乘形式拉格朗日插值多项式,但是表示不方便,而如果用“s=collect(s)”函数将其展开成降幂排列多项式以后,由于余项问题结果会和原本的多项式有偏差,这种偏差随着x 的增大而增大。
求出多项式后和题目中给出的参考点进行比较。
最后,选择六次最佳平方逼近多项式和拉格朗日插值多项式(九次)进行比较,选取xi=a+ih=1+0.2*i(i=0,1,⋯,45),分别绘制两者的图像进行比较。
1.3试验结果1.3.1最佳平方逼近法三次多项式:- 1.033*x^3 + 19.33*x^2 - 94.48*x + 131.8拟合结果:0000000000四次多项式:- 0.3818*x^4 + 7.368*x^3 - 42.14*x^2 + 73.53*x+ 0.745拟合结果:y 39.121232.080210.0852-5.5638-2.73021.560261.1172100.5882115.457272.045五次多项式:0.09807*t^5 - 3.079*t^4 + 34.5*t^3 - 163.5*t^2 + 304.7*t - 139.5拟合结果:12345678910 x 1 2 3 4 5 6 7 8 9 10y 33.219120-16.5003-8.906335840六次多项式:0.01936*t^6 - 0.5408*t^5 + 5.114*t^4 - 16.9*t^3 - 0.867*t^2 + 66.38*t - 18.7拟合结果:y 34.505640-13.9486-12.2250409460对比可知,六次多项式拟合结果最好。
1.3.2拉格朗日插值法插值多项式5.353*10^(-5)*x^9 - 0.003088*x^8 + 0.07229*x^7 - 0.8792*x^6 + 5.932*x^5 -22.41*x^4 + 50.11*x^3 - 86.47*x^2 + 113.5*x - 25.2注:此多项式为拉格朗日多项式的近似式,当x=10的时候偏差可以达到23以上。
对比数据:插值结果:054493其中红点表示参考点。
1.3.3比较选取xi=a+ih=1+0.2*i(i=0,1,⋯,45),分别绘制六次多项式拟合和拉格朗日插值结果图:其中绿线表示拉格朗日插值多项式图像,蓝线表示六次多项式拟合图像。
两者效果近似但后者比前者低三次。
2第二题用雅格比法与高斯-赛德尔迭代法解下列方程组Ax=b1或Ax=b2,研究其收敛性。
上机验证理论分析是否正确,比较它们的收敛速度,观察右端项对迭代收敛有无影响。
(1)A行分别为A1=[6,2,-1],A2=[1,4,-2],A3=[-3,1,4];b1=[-3,2,4]T;b2=[100,-200,345]T。
(2) A行分别为A1=[1,0,8,0.8],A2=[0.8,1,0.8],A3=[0.8,0.8,1];b1=[3,2,1] T;b2=[5,0,-10]T。
(3)A行分别为A1=[1,3],A2=[-7,1];b1=[4,6]T。
2.1试验目的学习jacobi迭代法和GuassSeidel迭代法的原理和编程方法,研究方程组系数阵和右边项对方程的解及其收敛性的影响,判断迭代法的收敛条件。
2.2实验原理和方法实验原理:将方程组系数阵A分解为A=D+L+U,其中D为对角阵,L为减去D的下三角阵,U 为减去D的上三角阵。
Jacobi迭代法中构造如下迭代公式:x(k+1)=−D−1(L+U)x(k)+D−1b而Gauss-Seidel迭代法的迭代公式为:x(k+1)=−(D+L)−1Ux(k)+(D+L)−1b初始值直接选取为0。
在判断其收敛性时,分别求解其迭代矩阵的谱半径ρ(G),ρ(G)=max1≤i≤≤n|λi|,λi为迭代矩阵的特征值。
实验方法:分别编写jacobi迭代及其收敛判别函数和Seidel迭代及其收敛判别函数。
如果在初试迭代步数之内还未收敛就进行收敛判别,收敛判别的依据是迭代矩阵的谱半径是否小于1。
比较同一方程组的jacobi迭代法和Seidel迭代法的结果是否相同,在达到精度要求后比较两种方法的迭代次数,比较哪一个的效率更高。
比较方程组系数阵和等号右边的变化会对方程的解和收敛速度造成什么影响。
如果迭代不收敛,那么考虑为什么不收敛,如果把方程组系数阵进行强对角占优处理,是否会收敛。
2.3实验结果规定误差界:1e-42.3.1第一问①A=[62−11−341−24],b=[−324].由jacobi迭代法求得x=[ −0.72730.80810.2525],设定迭代20次,实际迭代16次,精度为9.4022e-005。
由seidel迭代法求得x=[ −0.72720.80810.2525],设定迭代20次,实际迭代10次,精度为:9.0769e-005②A=[62−1 1−341−24],b=[100−200345]由jacobi 迭代法求得x =[ 36.3636−2.0707114.0404],设定迭代40次,实际迭代23次,精度为6.9948e -005。
由Seidel 迭代法求得x =[ 36.3637−2.0707114.0404],设定迭代20次,实际迭代15次,精度为8.6384e -005③通过对比可知:1、Seidel 迭代的收敛速度明显高于jacobi 迭代。
2、b 矩阵对收敛速度和误差精度有影响,b 中元素较大时会放慢收敛速度并加大误差。
2.3.2第二问① A =[10.80.80.80.810.80.81],b =[321] 由jacobi 迭代法求解,100次迭代尚且不能达到精度。
此时调用jacobi 迭代法的收敛判别函数,求得特征值为:λ1=−1.6,λ2、3=0.8,ρ(G J )=1.6>1,迭代不收敛。
由于Seidel 迭代法求解x =[ 5.76910.7693 −4.2307],迭代次数31,精度为8.7826e-005 ② A =[10.80.80.80.810.80.81],b =[50−10] Jacobi 迭代不收敛。
Seldel 迭代法求得x =[ 32.69227.6922 −42.3076] ,迭代次数38,精度为8.4552e -005。
比较①②得知A 矩阵元素如果相差很小,迭代次数会大幅增加,综合比较⑴⑵可知b 矩阵元素如果相差很大会增加迭代次数。
2.3.3第三问试验结果和讨论A =[13−71],b =[46] 此时ρ(G J )=4.5826>1,ρ(G G )=21>1,jacobi 迭代法和Seidel 迭代法都不收敛。
如果交换A 中行的顺序,得到[−7113],用jacobi 迭代计算,迭代8次,解得x =[−0.63641.5454]。