预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

§6直接法的误差分析 直接法的误差原因:1.算法及舍入原因 2.方程组本身固有的问题 要分析方程组的状态并估计算法的误差(原始数据扰动对解的影响)——量度:矩阵的条件数 【引例】设方程组 a=[26;26.00001];b=[8,8.00001]';a\b 对系数矩阵和右端项作微小变化: a=[26;25.99999];b=[8,8.00002]';a\b 设线性方程组为 Ax=b…………………(1) 其中A∈Rn×n,x,b∈Rn且A非奇异。x*:准确解,δx:解的误差,即 …………………(2) δA--A的误差,δb--b的误差。讨论δx与δA,δb的关系 一、b有误差而A无误差情形 将带有误差的右端项和带误差的解向量代入方程组,则 …………………(3) 由于,而得到,从而 另一方面,由(1)式取范数,有 可得 【定理1】设A是非奇异矩阵,Ax=b≠0,且A(x*+δx)=b+δb则有误差估计式 …………………(4) 其中称为方阵A的条件数。 说明:1、解的相对误差是右端项b的相对误差的cond(A)倍 2、如果条件数很大,则解的误差将成倍增长。 【定义】称条件数很大的矩阵为“病态”矩阵;称病态矩阵对应的方程组为病态方程组。反之,则称A为良态矩阵。 二、A及b都有误差的情形 【引理】若 证:(1)反证法,假设E+B奇异, 则存在非零向量x,使得(E+B)x=0,则 与己知予盾,从而E+B非奇异。 (2) 【定理2】 设在方程组Ax=b中,A及b都有误差,且,则有 证:带有误差的方程组为 …………………(5) 由于,因而 …………………(6) 为从(6)式中解出δx,必须限定(A+δA)-1存在。从而 …………………(7) 利用,得到 …………………(8) 又由引理知,当时 …………………(9) 对(7)式取范数,并由(8)、(9)式得到 ………………(10) 从而由及(10)式,有 ……………(11) 注:仅A或b有误差是(11)式中δb=0或δA=0的特例。 【例1】已知方程组Ax=b中 若δb=(-0.001,0.001,-0.001)T时,估计解的相对误差。 解: a=[1/21/31/4;1/31/41/5;1/41/51/6]; cond(a,inf), b=[13/12;47/60;37/60]*100;norm_b=norm(b,inf) detb=[-0.001;0.001;-0.001];norm_detb=norm(detb,inf) norm_detb/norm_b%b的相对误差 由于有误差估计 比右端项的相对误差,扩大了2015倍。 验证:1)方程组的解: a=[1/21/31/4;1/31/41/5;1/41/51/6]; b=[13/12;47/60;37/60]*100;x=a\b 2)对右端项加扰动δb=(-0.001,0.001,-0.001)T,则解受到影响: b=[13/12-0.00001;47/60+0.00001;37/60-0.00001]*100;x1=a\b 3)解的相对误差: norm(x-x1,inf)/norm(x,inf) 三、常用的条件数及其性质 1.当A=AT时,; 2.当A对称正定时, 3.cond(A)≥1,cond(A)=cond(A-1),cond(cA)=cond(A)(c≠0,c∈R) 4.若U为正交矩阵,即UTU=I,则cond(U)2=1 cond(A)2=cond(UA)2=cond(AU)2 病态方程组的判别设Ax=b,A∈Rn×n,且A非奇异 当cond(A)>>1,则Ax=b是病态方程组(坏条件的,A是病态的) 当cond(A)相对较小时,则Ax=b是良态方程组(好条件的,A是良态的) 【例】设在引例方程组中,b有扰动=(0,0.00001)T,试计算cond(A)∞,并说明对解向量x的影响。 a=[26;26.00001]; %inv(a),norm(a,inf)*norm(inv(a),inf) cond(a,inf) 病态方程组的解法: 采用高精度的算术运算 采用预处理方法,改善条件数 行或列平衡方法,改善条件数 用矩阵的奇异值分解。 【例2】设试验证其为病态方程组,且对其作预处理Pax=Pb使cond(PA)<<cond(A). 解:(1)用MATLAB函数求解方程组 a=[129;300020001000;0.0000040.0000030.000002]; b=[120000.000003]';x=a\b 对a33,b3加小扰动为1/106数量级,此时解为 a=[129;300020001000;0.0000040.0000030.000003]; b=[120000.000004]';x