当前位置:首页 科普知识 条件数

条件数

发布时间:2023-09-15 04:39:25

数值分析中,一个问题的条件数是该数量在数值计算中的容易程度的衡量,也就是该问题的适定性。一个低条件数的问题称为良态的,而高条件数的问题称为病态(或者说非良态)的。

条件数介绍

数值分析中,一个问题的条件数是该数量在数值计算中的容易程度的衡量,也就是该问题的适定性。一个低条件数的问题称为良态的,而高条件数的问题称为病态(或者说非良态)的。

条件数

条件数是线性方程组Ax=b的解对b中的误差或不确定度的敏感性的度量。数学定义为矩阵A的条件数等于A的范数与A的逆的范数的乘积,即cond(A)=‖A‖·‖A的逆‖,对应矩阵的3种范数,相应地可以定义3种条件数。

条件数定义

条件数定义为:矩阵的范数,乘以矩阵的逆矩阵的范数。

从线性代数的分析可知,矩阵的条件数总是大于1.正交矩阵的条件数等于1,奇异矩阵的条件数为无穷大,而病态矩阵的条件数则为比较大的数据。

条件数矩阵条件数

例如,线性方程Ax=b的条件数给出了数值求解得到一个解 x有多不精确的一个上限。

条件数也会增大b中存在的误差。这个放大的程度可以使得一个低条件数的系统(通常是件好事情)变得不精确而使得一个高条件数的系统(通常是件坏事情)变得精确,这取决于b的数据知道得多清楚。对于这个问题,条件数定义为

在任何自洽的矩阵范数中。这个数字经常在数值线性代数中出现,因而单独有个名字,称为矩阵条件数:

当然,这个定义依赖于范数的选取。

矩阵范数则

其中

分别是A的极大和极小奇异值。因此

若A是正规矩阵则

分别是A的极大和极小(根据模数)特征值)

若A是酉矩阵则

条件数

矩阵范数而 A是下三角矩阵,非奇异(也即

)则:

条件数其它条件数

奇异值分解,多项式求根,特征值和其它许多问题的条件数也可以有定义。

通常,如果一个数值问题是适定的,它可以表达为一个函数 f映射它的数据(一个实数的m元组x)到它的解(一个实数的 n元组y)。

它的条件数则定义为解中的相对误差的半径和数据中的相对误差的比的最大值,取遍整个问题的定义域:

其中

是问题中的数据的偏差的某个合理的小数值。

如果 f也是可微的,这可以近似的表示为

条件数Matlab

cond(A,1):1范数

cond(A,2)或cond(A):2范数

cond(A,inf):无穷范数

condest(A)用来计算方阵1范数条件数的下界 rcond(A)用来计算矩阵逆的条件数,数值接近1时为良好条件矩阵,接近0时为坏条件矩阵

条件数事实上表示了矩阵计算对于误差的敏感性。对于线性方程组Ax=b,如果A的条件数大,b的微小改变就能引起解x较大的改变,数值稳定性差。如果A的条件数小,b有微小的改变,x的改变也很微小,数值稳定性好。它也可以表示b不变,而A有微小改变时,x的变化情况。

条件数

条件数举例

比如线性方程组

〔1 2 y] 7.999]  的解是(x,y)=(2,1)

而  〔1 2 y] 7.998]  的解是(x,y)=(-3.999,4.000)

可见b很小的扰动就引起了x很大的变化,这就是A矩阵条件数大的表现。一个极端的例子,当A奇异时,条件数为无穷,这时即使不改变b,x也可以改变。奇异的本质原因在于矩阵有0特征值,x在对应特征向量的方向上运动不改变Ax的值。如果一个特征值比其它特征值在数量级上小很多,x在对应特征向量方向上很大的移动才能产生b微小的变化,这就解释了为什么这个矩阵为什么会有大的条件数,事实上,正规阵在二范数下的条件数就可以表示成 abs(最大特征值/最小特征值)。

温馨提示:
本文【条件数】由作者 爱百科 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6