数值分析课程设计实验二
数值分析实验报告2

实验报告实验项目名称函数逼近与快速傅里叶变换实验室数学实验室所属课程名称数值逼近实验类型算法设计实验日期班级学号姓名成绩512*x^10 - 1280*x^8 + 1120*x^6 - 400*x^4 + 50*x^2 - 1并得到Figure,图像如下:实验二:编写程序实现[-1,1]上n阶勒让德多项式,并作画(n=0,1,…,10 在一个figure中)。
要求:输入Legendre(-1,1,n),输出如a n x n+a n-1x n-1+…多项式。
在MATLAB的Editor中建立一个M-文件,输入程序代码,实现勒让德多项式的程序代码如下:function Pn=Legendre(n,x)syms x;if n==0Pn=1;else if n==1Pn=x;else Pn=expand((2*n-1)*x*Legendre(n-1)-(n-1)*Legendre(n-2))/(n);endx=[-1:0.1:1];A=sym2poly(Pn);yn=polyval(A,x);plot (x,yn,'-o');hold onend在command Windows中输入命令:Legendre(10),得出的结果为:Legendre(10)ans =(46189*x^10)/256 - (109395*x^8)/256 + (45045*x^6)/128 - (15015*x^4)/128 + (3465*x^2)/256 - 63/256并得到Figure,图像如下:实验三:利用切比雪夫零点做拉格朗日插值,并与以前拉格朗日插值结果比较。
在MATLAB的Editor中建立一个M-文件,输入程序代码,实现拉格朗日插值多项式的程序代码如下:function [C,D]=lagr1(X,Y)n=length(X);D=zeros(n,n);D(:,1)=Y';for j=2:nfor k=j:nD(k,j)=(D(k,j-1)- D(k-1,j-1))/(X(k)-X(k-j+1));endendC=D(n,n);for k=(n-1):-1:1C=conv(C,poly(X(k)));m=length(C);C(m)= C(m)+D(k,k);end在command Windows 中输入如下命令:clear,clf,hold on;k=0:10;X=cos(((21-2*k)*pi)./22); %这是切比雪夫的零点Y=1./(1+25*X.^2);[C,D]=lagr1(X,Y);x=-1:0.01:1;y=polyval(C,x);plot(x,y,X,Y,'.');grid on;xp=-1:0.01:1;z=1./(1+25*xp.^2);plot(xp,z,'r')得到Figure ,图像如下所示:比较后发现,使用切比雪夫零点做拉格朗日插值不会发生龙格现象。
MATLAB数值分析实验二(复合梯形、辛普森和龙贝格求积,以及二重积分计算等)

佛山科学技术学院实验报告课程名称_______________ 数值分析________________________实验项目_______________ 数值积分____________________专业班级机械工程姓名余红杰学号2111505010 指导教师陈剑成绩日期月日一、实验目的b1、理解如何在计算机上使用数值方法计算定积分 a f ""X的近似值;2、学会复合梯形、复合Simpson和龙贝格求积分公式的编程与应用。
3、探索二重积分.11 f (x, y)dxdy在矩形区域D = {( x, y) | a _ x _ b, c _ y _ d}的数值D积分方法。
二、实验要求(1)按照题目要求完成实验内容;(2)写出相应的Matlab程序;(3)给出实验结果(可以用表格展示实验结果);(4)分析和讨论实验结果并提出可能的优化实验。
(5)写出实验报告。
三、实验步骤1、用不同数值方法计算积xln xdx =-- 0 9(1)取不同的步长h,分别用复合梯形及复合辛普森求积计算积分,给出误差中关于h的函数,并与积分精确值比较两公式的精度。
(2)用龙贝格求积计算完成问题(1 )。
2、给出一种求矩形区域上二重积分的复化求积方法,然后计算二重积分..e"y dxdy,其中积分区域D二{0乞x岂1,0岂y乞1}。
1.%lnt_t.m复化梯形:function F = Int_t(x1,x2,n)%复化梯形求积公式% x1,x2为积分起点和中点%分为n个区间,没选用步长可以防止区间数为非整数。
%样点矩阵及其函数值:x = lin space(x1,x2 ,n+1);y = f(x);m = len gth(x);%本题中用Matlab计算端点位置函数值为NaN,故化为零: y(1) = 0;y(m) = 0;%算岀区间长度,步长h:h = (x2 -x1)/n;a = [1 2*o nes(1,m-2) 1];%计算估计的积分值:F = h/2*sum(a.*y);%f.mfun cti on y = f(x)y = sqrt(x).*log(x);%run 11.mclc,clear;%分为10个区间,步长0.1的积分值:F = In t_t(0,1,10);F10 = F%分为100个区间F = In t_t(0,1,100);F100 = F%误差计算W10 = abs((-4/9)-F10);W100 = abs((-4/9)-F100);W = [W10 W100]%复化辛普森:%l nt_s.mfun cti on F = In t_s(x1,x2 ,n)%复化梯形求积公式% x1,x2区间,分为n个区间。
数值分析实验报告--实验2--插值法

1 / 21数值分析实验二:插值法1 多项式插值的震荡现象1.1 问题描述考虑一个固定的区间上用插值逼近一个函数。
显然拉格朗日插值中使用的节点越多,插值多项式的次数就越高。
我们自然关心插值多项式的次数增加时, 是否也更加靠近被逼近的函数。
龙格(Runge )给出一个例子是极著名并富有启发性的。
设区间[-1,1]上函数21()125f x x=+ (1)考虑区间[-1,1]的一个等距划分,分点为n i nix i ,,2,1,0,21 =+-= 则拉格朗日插值多项式为201()()125nn ii iL x l x x ==+∑(2)其中的(),0,1,2,,i l x i n =是n 次拉格朗日插值基函数。
实验要求:(1) 选择不断增大的分点数目n=2, 3 …. ,画出原函数f(x)及插值多项式函数()n L x 在[-1,1]上的图像,比较并分析实验结果。
(2) 选择其他的函数,例如定义在区间[-5,5]上的函数x x g xxx h arctan )(,1)(4=+=重复上述的实验看其结果如何。
(3) 区间[a,b]上切比雪夫点的定义为 (21)cos ,1,2,,1222(1)k b a b ak x k n n π⎛⎫+--=+=+ ⎪+⎝⎭(3)以121,,n x x x +为插值节点构造上述各函数的拉格朗日插值多项式,比较其结果,试分析2 / 21原因。
1.2 算法设计使用Matlab 函数进行实验, 在理解了插值法的基础上,根据拉格朗日插值多项式编写Matlab 脚本,其中把拉格朗日插值部分单独编写为f_lagrange.m 函数,方便调用。
1.3 实验结果1.3.1 f(x)在[-1,1]上的拉格朗日插值函数依次取n=2、3、4、5、6、7、10、15、20,画出原函数和拉格朗日插值函数的图像,如图1所示。
Matlab 脚本文件为Experiment2_1_1fx.m 。
可以看出,当n 较小时,拉格朗日多项式插值的函数图像随着次数n 的增加而更加接近于f(x),即插值效果越来越好。
数值分析实验报告二

数值实验报告二一、实验名称解线性方程组的列主元素高斯消去法和LU 分解法二、实验目的通过数值实验,从中体会解线性方程组选主元的必要性和LU 分解法的优点,以及方程组系数矩阵和右端向量的微小变化对解向量的影响。
三、实验内容解下列两个线性方程组(1) ⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎭⎫ ⎝⎛--11134.981.4987.023.116.427.199.103.601.3321x x x (2) ⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎪⎪⎭⎫ ⎝⎛----15900001.582012151526099999.23107104321x x x x 四、算法描述1、 列主元素高斯消去法记: ij ij a a =1)( (i, j = 1,2,3n )i i b b =1)( (i = 1,2,3n )消元过程:对于k = 1,2,3n(1) 选行号k i ,使)()(max k i ni k k k i k k a a ≤≤=。
(2) 交换)(k kj a 与)(k j i k a (j = k, k+1,k+2n )以及)()(k i k k k b b 与所含的数值。
(3)对于i = k, k+1,k+2n ,计算)()(k kkk ik ik a a m =)()()1(k kj ik k ij k ij a m a a -=+ (j = k, k+1,k+2n ))()()1(k k ik k i k i b m b b -=+回代过程:)(n nnn n a b x = )()1)()(/(k kk j n k j k kj k k k a x a a x ∑+=-= (k = n-1, n-2, n-3 1 )在此算法中的)(k k i k a 称为第k 个列主元素,它的数值总要被交换到第k 个主对角线元素的位置上。
2、 LU 分解法通过MATLAB 自有的函数,把系数矩阵A 分解成A=LU ,其中:L 是下三角矩阵,U 是上三角矩阵,这时方程组Ax=b 就可以分解成两个容易求解的三角形方程组Ly=b ,Ux=y 。
实验二函数逼近与曲线拟合

《数值分析》课程设计实验报告实验二函数逼近与曲线拟合一、问题提出从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。
在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间t 的拟合曲线。
二、实验步骤先写出线性最小二乘法的M文件function c=lspoly(x,y,m)% x是数据点的横坐标组成的向量,y是纵坐标组成的向量% m是要构成的多项式的次数,c是多项式由高到低次的系数所组成的向量n=length(x);b=zeros(1:m+1);f=zeros(n,m+1);for k=1:m+1f(:,k)=x.^(k-1);enda=f'*f;b=f'*y';c=a\b;c=flipud(c);方法一:近似解析表达式为:y(t)=a1t+a2t2+a3t3第二步在命令窗口输入:lspoly([0,5,10,15,20,25,30,35,40,45,50,55],[0,1.27,2.16,2.86,3.44 ,3.87,4.15,4.37,4.51,4.58,4.02,4.64],2)回车得到:ans =0.0000-0.00520.26340.0178即所求的拟合曲线为y=-0.0052t2+0.2634t+0.0178在编辑窗口输入如下命令:>>x=[0,5,10,15,20,25,30,35,40,45,50,55];y=[0,1.27,2.16,2.86,3.44, 3.87,4.15,4.37,4.51,4.58,4.02,4.64];>> t=0:0.1:55;>> z=-0.0052*t.^2+0.2634*t+0.0178;>> plot(x,y,'ro',t,z);grid命令执行得到如下图(图2-1)0102030405060拟合多项式与数据点的关系方法二:假设近似表达式为:y(t)=c0+c1t+c2t2第一步在命令窗口输入:>>lspoly([0,5,10,15,20,25,30,35,40,45,50,55],[0,1.27,2.16,2.86,3. 44,3.87,4.15,4.37,4.51,4.58,4.02,4.64],2)回车得到:ans =-0.00240.20370.2305即所求的拟合曲线为y=-0.0024t2+0.2037t+0.2305在编辑窗口输入如下命令:>>x=[0,5,10,15,20,25,30,35,40,45,50,55];y=[0,1.27,2.16,2.86,3.44,3.87,4.15,4.37,4.51,4.58,4.02,4.64];>> t=0:0.1:55;>> z=-0.0024*t.^2+0.2037*t+0.2305;>> plot(x,y,'ro',t,z);grid命令执行得到如下图(图2-2)拟合多项式与数据点的关系三、实验结论在利用数据的最小二乘法求拟合曲线时,选取合适的近似表达式很重要,应通过不断的试验找出较为合适的近似表达式,这样才能尽可能的提高拟合精度。
数值分析实验报告二2汇总

title('数据点(xi,yi)和牛顿插值曲线y=f(x)的图形')
运行结果:
实验结果分析:
最小二乘法拟合的曲线误差最小。
也可以得到三图合一的图像:
在以上命令的基础上
运行命令plot(x1,y1,'r*',x,y,'b-',t,p1,'k-',x,P2,'y-')
% f积分函数
% a/b:积分上下限
% tol:积分误差
% R:Romberg积分值
% k:二分次数
k=1;
h=b-a;
%第一步
T(k,1)=h/2*(f(a)+f(b));
err=1;
whileerr>=eps
T(k,k)= Tห้องสมุดไป่ตู้k,1);
h=h/2;
%第二步求梯形值T0
temp=0;
i=1;
whilei<2^k
实验结果分析:
本题用了三种方法计算,虽然三种方法的结果差别不大,但得到结果的过程不同,每个方法都有其优缺点。
成绩评定
签字:年月日
-3002399751579999/9007199254740992*x^3-311/1125899906842624*x^2+4128299658423301/562949953421312*x-2533274790396013/281474976710656
拉格朗日插值
实验步骤:
11级数值分析2实验项目

数值分析2实验项目实验一 简单迭代法与加速方法一、目的与要求:1、掌握求解非线性方程实根的简单迭代法的编程运算2、会分析迭代步数,设计容许误差二、实验内容:1、方程324100x x +-=可以等价化成以下三种形式:(i) 1/210(4)x x x =- (ii) 1/210()4x x =+ (iii) 32241038x x x x x x+-=-+ 针对三种等价形式给出三种不同的简单迭代格式并使用每种格式计算方程在区间[1,2]上的解,初值选为1.5,容许误差选为1.0E-5,即510-;分析每种格式的收敛性;分析收敛格式的迭代步数与计算时间.2、结合上述问题中(ii)相应的迭代格式,利用Stenffenson 迭代法求原方程的解。
初值选为1.5,容许误差选为1.0E-5,分析迭代步数与计算时间,并与上述简单迭代法作比较.实验二 Newton 迭代法一、目的与要求:掌握求解非线性方程实根的Newton 切线法的编程运算二、实验内容:1、用Newton 切线法求xx e -=在0.5附近的根,2、用Newton 切线法求方程310x x --=在1.5附近的一个根. (选做)3、用Newton 切线法计算3k =,4k =时,方程2((3)0k x x -=在1.3附近的根以及2.5附近的根,比较计算两根时的迭代次数,并与理论结论作比较. 实验三 Newton 下山法与重根加速法一、目的与要求:掌握求解非线性方程实根的Newton 下山法与重根加速法的编程运算二、实验内容:1、分别使用Newton 切线法与Newton 下山法求解方程310x x --=在 1.5x =附近的根,但是初值选为0.6x =,根据计算结果,验证下山法在初值选取范围上的优越性。
2、分别使用Newton 切线法与重根加速法计算3k =,4k =时,方程2((3)0k x x -=在1.3附近的根,在相同的容许误差下,比较两种方法的计算时间与迭代次数.实验四 解非线性方程组的Newton 迭代法一、目的与要求:掌握求解非线性方程方程组的Newton 迭代法编程运算二、实验内容:使用Newton 迭代法求解非线性方程组122212230450x x x x +-=⎧⎨+-=⎩,容许误差选为1.0E-5,给出初值分别选取为(1.5,1.0),(2.0,2.0),(1000,1000)时迭代步数,并分析迭代步数之间差别的原因.实验五 Euler 方法和梯形方法一、目的与要求:掌握求解一阶常微分方程初值问题Euler 方法和梯形方法编程运算二、实验内容:1. 分别使用Euler 方法、梯形方法和预估-校正方法在步长选为1/10时计算一阶常微分方程初值问题⎪⎩⎪⎨⎧=<<++-=1)0(110,1y x y y dx d (该问题的精确解为x e x y x +=-)(), 将误差(精确解与数值解的差)列表, 并画出精确解与数值解的函数图象.2. 使用Euler 方法和梯形方法在步长选为1/8,1/16,1/32时分别计算下述一阶常微分方程初值问题'()4(0,1](0)1y x x y ⎧=∈⎪⎨=⎪⎩(该问题的精确解为22()(1)y x x =+) 给出(1)y 的近似值与误差,将误差(精确解与数值解的差)列表,并画出精确解与数值解的函数图象.(选作)实验六 经典Runge-kutta 方法一、目的与要求:掌握求解一阶常微分方程初值问题经典Runge-kutta 方法编程运算二、实验内容:1.用经典Runge-kutta 方法在步长选为1/10时计算一阶常微分方程初值问题⎪⎩⎪⎨⎧=<<++-=1)0(110,1y x y y dx d (该问题的精确解为x e x y x +=-)(), 将误差(精确解与数值解的差)列表, 并画出精确解与数值解的函数图象. 实验七 四阶Adama 显式和隐式方法一、目的与要求:掌握求解一阶常微分方程初值问题四阶Adama 显式和隐式方法编程运算二、实验内容:1.分别用四阶Adama 显式和隐式方法在步长选为1/10时计算一阶常微分方程初值问题⎪⎩⎪⎨⎧=<<++-=1)0(110,1y x y y dx d (该问题的精确解为x e x y x +=-)(), 将误差(精确解与数值解的差)列表, 并画出精确解与数值解的函数图象. 实验八 计算矩阵主特征值及主特征向量(选作)一、目的与要求:掌握求解矩阵主特征值及主特征向量的改进幂法编程运算二、实验内容:用改进幂法求解矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡1634310232的主特征值及主特征向量,并列表.。
数值分析实验二

x1=0.0:0.05:1.00;
>> y1=a(4)+a(3)*x1+a(2)*x1.^2+a(1)*x1.^3;
y2=b(5)+b(4)*x1+b(3)*x1.^2+b(2)*x1.^3+b(1)*x1.^4;
>> plot(x,y,'*');
>> hold on;
(1)掌握曲线拟合的最小二乘法;
(2)将函数逼近方法与插值法进行比较。
2.实验要求(由课任教师于实验开始前公布,不低于2行,不超过3行,由学生负责填写;5号字,行距20):
3.实验内容(由课任教师指明,由学生填写,不超出本页本栏):
1.对于给函数 在区间[-1,1]上取 =-1+0.2i(i=0,1,……,10),试求3次曲线拟合,试画出拟合曲线并打印出方程,与用插值法的结果比较。
>> plot(x1,y1,'-r')
>> y2=newton(x,y,x1);
>> hold on;
>> plot(x1,y2,'-')
2.>> y=[1.00 0.41 0.50 0.61 0.91 2.02 2.16];
>> x=[0.0 0.1 0.2 0.3 0.5 0.8 1.0];
>> a=polyfit(x,y,3);
2.由实验给出数据表
x
0.0
0.1
0.2
0.3
0.5
0.8
1.0
y
1.0
0.41
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二 2.1
一、题目:
用高斯消元法的消元过程作矩阵分解。
设
20231
812
3
15A ⎡⎤
⎢⎥=⎢⎥⎢⎥-⎣⎦
消元过程可将矩阵A 化为上三角矩阵U ,试求出消元过程所用的乘数21m 、31m 、31m 并以如下格式构造下三角矩阵L 和上三角矩阵U
(1)
(1)21
22
23(2)31
32
331
20
23
1,1L m U a a m m a ⎡⎤⎡⎤
⎢⎥⎢⎥==⎢⎥⎢
⎥⎢⎥⎢⎥⎣⎦⎣
⎦
验证:矩阵A 可以分解为L 和U 的乘积,即A =LU 。
二、算法分析:
设矩阵11121321
222331
32
33a a a A a a a a a a ⎛⎫
⎪= ⎪ ⎪⎝⎭
,通过消元法可以将其化成上三角矩阵U ,具体算法如下: 第1步消元:111111(1)2
2112(1)
331130,0;
;2,3;
i i i i i i i i a m a a a a m a i a a m a +=≠⎧⎪
=+=⎨⎪=+⎩ 得到111213(1)(1)12223(1)(1)32
330
0a a a A a a a a ⎛⎫
⎪= ⎪ ⎪⎝
⎭
第2步消元:(1)(1)(1)32322222(2)(1)(1)333332230,0;
;
a m a a a a m a ⎧+=≠⎪⎨=+⎪⎩
得到的矩阵为11
1213(1)
(1)22223(2)330
00
a a a A a a a ⎛⎫
⎪= ⎪ ⎪⎝
⎭
三、程序及运行结果 b1.m
A=[20 2 3;1 8 1;2 -3 15]; for i=1:2
M(i)=A(i+1,1)/A(1,1); end
for j=2:3
A1(j,2)=A(j,2)-M(j-1)*A(1,2); A1(j,3)=A(j,3)-M(j-1)*A(1,3); end
M(3)=A1(3,2)/A1(2,2); A1(3,2)=0;
A1(3,3)=A1(3,3)-M(3)*A1(2,3); M,A1
运行结果为: M =
0.0500 0.1000 -0.4051 A1 =
0 0 0 0 7.9000 0.8500 0 0 15.0443 所以: 10020
23
0.05
100
7.90.850.10.4051
100
15.0443L U ⎛⎫⎛⎫
⎪ ⎪
== ⎪ ⎪ ⎪ ⎪-⎝
⎭
⎝
⎭
验证:L=[1 0 0;0.05 1 0;0.1 -0.4051 1];U=[20 2 3;0 7.9 0.85;0 0 15.0443];A1=L*U
A1 =
20.0000 2.0000 3.0000 1.0000 8.0000 1.0000 2.0000 -3.0003 15.0000
四、精度分析
因为根据LU 的递推公式可知,L ,U 分别为下三角和上三角矩阵,其中L 不在对角线上的元素值为1
1
1()k ik ik is sk s kk
l a l u u -==
-∑,在计算每个系数时会产生相应的计算误差。
2.2
一、题目
用矩阵分解方法求上题中A 的逆矩阵。
记
1231000,1,0001b b b ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥===⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦
分别求解方程组
123,,AX b AX b AX b ===
由于三个方程组系数矩阵相同,可以将分解后的矩阵重复使用。
对第一个方程组,由于A=LU ,所以先求解下三角方程组1b =LY ,再求解上三角方程组=U X Y ,则可得逆矩阵的第一列列向量;类似可解第二、第三方程组,得逆矩阵的第二列列向量的第三列列向量。
由三个列向量拼装可得逆矩阵1-A 。
二、算法分析
首先根据LU 分解,将矩阵A 分解成下三角矩阵L 和上三角矩阵U 乘积的形式。
然后分别求解方程组(1,2,3)i i LY b i ==和(1,2,3)i i U X Y i ==。
通过计算可知
10020
23
0.05
100
80.850.10.4
100
15.04L U ⎛⎫⎛⎫
⎪ ⎪== ⎪ ⎪ ⎪ ⎪-⎝
⎭
⎝
⎭
11,2,3i i i i
LY b Y L b i -=⇒== 1
1,2,3i i i i
U X Y X U Y i -=⇒==
最后求解得到的矩阵[]1
1
2
3B X X X A -==
三、程序及运行结果 b2.m
b1=[1 0 0]';b2=[0 1 0]';b3=[0 0 1]';
L=[1 0 0;0.05 1 0;0.1 -0.4 1];U=[20 2 3;0 8 0.85;0 0 15.04]; y1=inv(L)*b1;x1=inv(U)*y1; y2=inv(L)*b2;x2=inv(U)*y2; y3=inv(L)*b3;x3=inv(U)*y3; x1,x2,x3,[x1,x2,x3]
运行结果为:
x1 =
0.0517 -0.0054 -0.0080
x2 =
-0.0162 0.1222 0.0266
x3 =
-0.0093 -0.0071 0.0665
ans =
0.0517 -0.0162 -0.0093 -0.0054 0.1222 -0.0071 -0.0080 0.0266 0.0665
四、精度分析
矩阵A 经过LU 分解后得到上三角U 和下三角矩阵L ,分别进行
1
1,2,3i i i i
L Y b Y L b i -=⇒== 和1
1,2,3i i i i
U X Y X U Y i -=⇒==计算时便产生了计
算误差,所以最后结果与1A -存在一定的误差。
2.2
一、题目
验证希尔伯特矩阵的病态性:对于三阶矩阵 1
1/21/31/2
1/31/4
1/3
1/4
1/5H ⎡⎤
⎢⎥=⎢⎥⎢⎥⎣⎦
取右端向量T
[11/613/12
47/60]
b =,验证:
(1)向量
T
T
1
2
3[][1
1
1]
X x x x ==是方程组b =H X 的准确解;
(2)取右端向量b 的三位有效数字得T
[1.83
1.08
0.783]
b =,求方程组的准确解
*
X ,并与X 的数据
T
[111]
作比较 。
说明矩阵的病态性。
二、算法分析
(1)要验证向量X 是方程H X b =的准确解,只需求解出该方程的解并与X 作个比较
即可。
因为H X b =,所以1
X H b -=
(2)与第一题算法一样,根据H X b =求解出*1
X H b -=
三、程序及运行结果 b3.m
b1=[11/6 13/12 47/60]';b2=[1.83 1.08 0.783]';
H=[1 1/2 1/3;1/2 1/3 1/4;1/3 1/4 1/5]; x1=inv(H)*b1 x2=inv(H)*b2 运行结果为: x1 =
1.0000 1.0000 1.0000 x2 =
1.0800 0.5400 1.4400
四、精度分析
(1)通过x1的运行结果可知,123[][111]T T
X x x x ==是方程H X b =准确解。
(2)通过
x2
的运行结果可知,由于T
1[1.83
1.08
0.783]b =与
T
2[11/6
13/12
47/60]b =的误差非常小,可是它们的计算结果却差别很大,根据病态
矩阵的定义可知,矩阵H 为病态的。