MATLAB函数及应用
上QQ阅读APP看书,第一时间看更新

33.schur函数

舒尔分解定义为:

AU·S·U

其中,A必须是一个方阵,U是一个酉矩阵,S是一个块对角化矩阵,由对角线上的1×1和2×2块组成。特征值可以由矩阵S的对角给出,而矩阵U给出比特征向量更多的数值特征。此外,对缺陷矩阵也可以进行舒尔分解。MATLAB中用函数schur来进行舒尔分解,函数的语法格式为:

T=schur(A):返回Schur矩阵T。

T=schur(A,flag):A为实矩阵,根据flag的值返回两种形式之一的Schur矩阵T:

· 'complex':T是三角矩阵且为复数(如果A是实数),并具有复数特征值。

· 'real':T的实数特征值在对角线上,复数特征值在对角线上的2×2块中。当A为实数时,'real'是默认值。

如果A为复数,则schur在矩阵T中返回复数Schur形式并且忽略flag。复数Schur形式是对角线上为A的特征值的上三角矩阵。

[U,T]=schur(A,…):也返回酉矩阵U以使A=U∗T∗U'且U'∗U=eye(size(A))。

【例1-36】对创建的矩阵进行舒尔分解。

特征值(即本例中的1、2和3)在对角线上。非对角线元素太大这一事实指示此矩阵包含病态特征值;矩阵元素的细微变化会使其特征值产生较大变化。