关于矩阵的条件数、病态方程组等,这些概念是计算数学中比较重要的概念,这里只作简单的介绍。
考虑线性方程组
地球物理数据处理基础
完全由它的系数矩阵A和右端向量b所确定。在求解线性方程组时,这些都作为已知数据。在实际问题中,这些数据往往由观测或通过其他计算得到的,因而必定带有误差或某种不确定性的影响,从而引起解的误差或解的不确定性,因而有必要对线性方程组的性态进行研究。
先假定系统矩阵A非奇异,是精确的,而右端向量b有误差,假设它可以表示为b+δb,并且同时假设解的误差为δx,则有
地球物理数据处理基础
显然,Aδx=δb,所以,δx=A-1δb,从而有
‖δx‖≤‖A-1‖·‖δb‖
又由原方程(3-11)式有
地球物理数据处理基础
因此
地球物理数据处理基础
假定b≠0,因而x≠0,我们有
地球物理数据处理基础
如果假定b是精确的,而A有微小误差(扰动),表示为A+δA,并且相应的解为x+δx,此时
地球物理数据处理基础
假定A+δA非奇异,则
地球物理数据处理基础
因为原式x=A-1b,所以
地球物理数据处理基础
最后得到
地球物理数据处理基础
从式(3-15)和式(3-19)可以看到,线性方程组解的相对误差与观测数据相对误差之间的关系可以由‖A-1‖·‖A‖来确定。我们给‖A-1‖·‖A‖一个名称,即对非奇异矩阵A,称‖A-1‖·‖A‖为矩阵A的条件数,记作cond(A)。
矩阵条件数与所取的矩阵范数有关,最常用的是最大范数‖A‖∞和谱范数‖A‖2,相应的条件有
地球物理数据处理基础
和
地球物理数据处理基础
当A为对称矩阵时,其谱条件数为
地球物理数据处理基础
其中:λ1,λn为矩阵ATA的绝对值最大和绝对值最小的特征值。
条件数具有如下性质:
(1)任何非奇异矩阵A,都有cond(A)≥1,cond(A)=‖A‖·‖A-1‖≥‖A-1 A‖=1;
(2)设A为非奇异阵,并且c≠0(常数),则cond(cA)=cond(A);
(3)如果A为正交矩阵,则cond(A)2=1;
(4)若A为非奇异矩阵,R为正交矩阵,则cond(RA)2=cond(AR)2=cond(A)2。
由式(3-15)和式(3-19)可知,若cond(A)不太大,则数据误差对解的影响不大。反之,若cond(A)很大,则数据误差对解的影响很大。若线性方程组系数矩阵A的条件数cond(A)相对很大,我们就称A(对求解线性方程组而言)是“病态”的,并且称A是“病态”矩阵,或者说A是坏条件的。矩阵“病态”性质是矩阵本身的特性。A条件数越大,病态程度越严重,也就是越难得到方程组比较准确的解。反之,则称A是“良态”的。
[例]计算 的各种和范数和条件数。
解:根据定义可算出‖A‖1=6,‖A‖∞=7, 5.477,
但计算‖A‖2时,要求出ATA的特征值λ1,λ2。在线性代数里,求使方程
地球物理数据处理基础
或(Q-λI)x=0具有非零解的特征值λ,只需对特征多项式求根,即求解特征方程
地球物理数据处理基础
本例中
地球物理数据处理基础
其特征方程为
地球物理数据处理基础
即
(10-λ)(20-λ)-14×14=0
经展开,得
λ2-30λ+200-196=0
或者
λ2-30λ+4=0
解此二次方程得
λ1=15+14.866=29.866
λ2=15-14.866=0.144
故
地球物理数据处理基础
从而
地球物理数据处理基础
这里简单介绍特征值的几何意义,对2阶矩阵 它是通过点Q1(10,-14)和点Q2(-14,-20)的一个椭圆,其长半轴就是特征值λ1=29.866,短半轴是特征值λ2=0.144,两个特征值之比就描述了这个椭圆的奇异度。对3阶矩阵,就是一个椭球,对n阶矩阵就是一个所谓超椭球,它的最大、最小半轴之比就表明这个超椭球的奇异度。关于计算n阶矩阵的特征值和特征向量的方法有幂法和反幂法,雅可比法、豪斯荷尔德法和QR法等,可参考有关书籍。
什么是矩阵的条件数、病态方程组等概念?
若线性方程组系数矩阵A的条件数cond(A)相对很大,我们就称A(对求解线性方程组而言)是“病态”的,并且称A是“病态”矩阵,或者说A是坏条件的。矩阵“病态”性质是矩阵本身的特性。A条件数越大,病态程度越严重,也就是越难得到方程组比较准确的解。反之,则称A是“良态”的。[例]计算 的各种...
矩阵的条件数
若线性方程组系数矩阵A的条件数cond(A)相对很大,我们就称A(对求解线性方程组而言)是“病态”的,并且称A是“病态”矩阵,或者说A是坏条件的。矩阵“病态”性质是矩阵本身的特性。A条件数越大,病态程度越严重,也就是越难得到方程组比较准确的解。反之,则称A是“良态”的。[例]计算 的各种...
病态矩阵的条件数是什么?
条件数是判断矩阵病态与否的一种度量,条件数越大矩阵越病态。一个低条件数的问题称为良置的,而高条件数的问题称为病态(或者说非良置)的。条件数事实上表示了矩阵计算对于误差的敏感性。对于线性方程组ax=b,如果a的条件数大,b的微小改变就能引起解x较大的改变,数值稳定性差。如果a的条件数小...
矩阵的条件数是何意思呀?
楼上回答了条件数的定义,我就不重复了。条件数事实上表示了矩阵计算对于误差的敏感性。对于线性方程组Ax=b,如果A的条件数大,b的微小改变就能引起解x较大的改变,数值稳定性差。如果A的条件数小,b有微小的改变,x的改变也很微小,数值稳定性好。它也可以表示b不变,而A有微小改变时,x的变化情...
什么是条件数?
粗糙点理解,就是对线性方程组Ax=b时,且A是n阶非奇异矩阵,当条件数 Cond(A)比较大时,A和b的小扰动会引起解的较大误差,条件数Cond(A)表现了方程组Ax=b的性态。如果条件数比较大,就说方程组是“病态”的;如果条件数比较小,就说方程组是“良态”的;其实,病态和良态是相对的。
矩阵的条件数怎么算?
矩阵的条件数是判断矩阵病态与否的一种度量,表示矩阵计算对于误差的敏感性。条件数越大,矩阵越病态,计算误差也越大。矩阵的条件数可以通过矩阵的范数和逆矩阵的范数来计算,即cond=norm(A)*norm(inv(A))。A是待求条件数的矩阵,inv(A)是A的逆矩阵,norm是矩阵的范数函数。矩阵的范数包括1范数、...
矩阵条件数怎么计算
矩阵条件数是数值分析与线性代数中关键概念之一,揭示了矩阵特性,特别是其可逆性和稳定性。若矩阵A或常数项b微小变动导致线性方程组Ax = b解显著变化,该方程组被视为“病态”。相应地,矩阵A被认定为“病态矩阵”。条件数值越大,矩阵越接近不可逆状态,意味着其在数值运算中可能引发较大误差,降低...
什么是病态线性方程组
很大,意味着原始数据A,b变化微小,也有可能引起解的极大变化,此时称方程组是病态的。条件数是永远大于等于1。条件数很大时,线性代数方程组有可能是病态的。条件数等于A的2范数乘以A逆的2范数。Hilbert矩阵是非常著名的对称正定的病态矩阵,经常用来检验算法的数值稳定性的好坏。参考资料:数值分析 ...
如何通俗的解释矩阵的条件数?
因此,条件数是衡量求解线性方程时数值稳定性的重要指标。简单来说,条件数就像是一个放大镜,放大了原始误差到解向量上的误差。如果放大镜的焦距很短,那么一点小的误差就能被放大得非常大,这就是病态矩阵。相反,如果放大镜的焦距很长,那么即使原始误差很大,解向量的误差也不会很大,这就是良态矩阵...
病态方程组的条件数定义
=‖A‖*‖A-1‖称为矩阵A的条件数,其中A-1是A的逆矩阵。当条件数Cond(A)比较大时,A和b的小扰动会引起解的较大误差,所以条件数Cond(A)刻画了方程组Ax=b的性态。如果条件数比较大,就说方程组是“病态”的;如果条件数比较小,就说方程组是“良态”的;当然,病态和良态是相对的。