首页 > 其他分享 >matlab cond函数 矩阵的条件数

matlab cond函数 矩阵的条件数

时间:2023-03-20 10:38:49浏览次数:44  
标签:特征值 矩阵 cond matlab 条件 范数 奇异




Cond(A)称作矩阵A的条件数,为矩阵A的范数与A的逆矩阵的范数的乘积





定义 



在MATLAB中,计算矩阵A的3种条件数的函数是:



(1) cond(A,1) 计算A的1—范数下的条件数。



(2) cond(A)或cond(A,2) 计算A的2—范数数下的条件数。



(3) cond(A,inf) 计算A的 ∞—范数下的条件数。





(关于范数知识请看我博客中关于norm函数的相关介绍)





举例





输入矩阵:A=[17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,12,19,21,3;11,18,25,2,19];



命令:cond(A,1) 结果:ans = 92.1325



命令:cond(A,2) 结果:ans =48.3117



命令:cond(A,inf) 结果:ans =68.6582







在matlab中,判断矩阵的奇异性一般用函数cond,求矩阵的条件数,即矩阵最大奇异值与最小奇异值的比值。当矩阵的条件数很大时,说明矩阵趋近于奇异





矩阵的条件数




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




比如线性方程组



的解是(x,y)=(2,1),






的解是(x,y)=(-3.999,4.000)





可见b很小的扰动就引起了x很大的变化,这就是A矩阵条件数大的表现。





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

标签:特征值,矩阵,cond,matlab,条件,范数,奇异
From: https://blog.51cto.com/u_15995687/6132064

相关文章

  • matlab eval函数 将字符…
    eval_r()函数的功能就是将括号内的字符串视为语句并运行和语句 y1=sin(2) 下面举一个它的应用例子:>>stationx1=1.508;stationy1......
  • matlab trace函数 求矩阵的迹
    矩阵的迹就是矩阵的主对角线上所有元素之和。>>[12;710]ans=  1    7  10>>tr......
  • matlab genpath命令 查看搜索路径
    在命令窗口中输入genpath命令,可以得到MATLAB所有的搜索路径首尾连接而成的一个长字符串。示例:>>genpathans=D:\R2009a\toolbox;D:\R2009a\toolbox\aero;D:\R2009a\tool......
  • matlab logspace函数 生…
    用法:logspace(a,b,n),其中a、b、n分别表示开始值(10^a)、结束值(10^b)、元素个数(n)。功能:生成从10的a次方到10的b次方之间按对数等分的n个元素的行向量。n如果省略,则默认值为5......
  • 下载完anaconda没有jupyter
    在conda环境中,可使用如下命令安装:condainstalljupyternotebook下载完之后在开始里的近期文件中会出现在D盘里配置文件位置D:mkdirjucdjujupyternotebook命令行里打......
  • matlab rref函数 将矩阵…
    matlab将矩阵化成行最简形的命令是rref或rrefmovie。函数rref或rrefmovie格式R=rref(A)    %用高斯—约当消元法和行主元法求A的行最简行矩阵R[R,jb]=rref(A......
  • matlab sortrows函数 对行进行排序
    用法:B=sortrows(A)B=sortrows(A,column)第一种和第二种用法的区别在于,sortrows(A)将类似按照字典序排列,而指定了column时,各行只根据指定列为标准来排序,不考虑其他列的......
  • 矩阵运算时⊗和·的区别?
    矩阵运算中,符号表示的是张量积(tensorproduct),而符号张量积()张量积是一种针对矩阵和向量的运算,它可以用来将两个矩阵或向量组合成一个更大的矩阵或向量。具体来说,如果是......
  • m基于KSVD字典训练法的图像噪声滤波matlab仿真,对比图像中值滤波,ACWMF滤波,DWMR滤波以
    1.算法描述K-SVD算法是一种新型的字典训练法,其基本原理是基于K-SVD算法改进所得到的,其主要过程是字典的训练过程,其具有非常好的自适应性能。该算法的整体流程图如下图所示:......
  • 基于matlab的CHPSO异质粒子群优化算法仿真
    1.算法描述粒子群优化算法(ParticleSwarmOptimization,PSO)最初由Kenndy和Eberhart博士于1995年提出,是一种有效的随机全局优化技术,具有原理简单、参数少、收敛速度较快......