实对称矩阵对角化问题求助
实对称矩阵都可以对角化,我需要得到对角化后的对角阵及对角化时左右乘上的正交阵A 是个实对称矩阵。我用matlab自带的orth函数,(用的是奇异值分解svd方法),v=orth(A),然后B=v'*A*v,即为对角化后的单位阵。 但是当矩阵A有0特征值,即A不满秩的时候,orth函数求出的正交基v列向量也不满秩,个数与A秩相同,v就不是需要的正交阵了。此时求得的B矩阵与A矩阵也不同阶。我想要得到的是,无论A有无0特征值,求出的正交基仍然是正交阵。 求老师指点,谢谢!:handshake 回复 1 # mayuanzhuo 的帖子
lz用orth这个方法求出的是一个矩阵的range space,range space和null space共同组成了svd分解出来的v矩阵。满秩矩阵情况下,NS是空集,RS就是V矩阵。非满秩矩阵dim=rank(A)。直接用=svd(A)就可以了 回复 2 # 321forever 的帖子
先谢谢了,svd函数不熟悉,我来研究下。:handshake 回复 2 # 321forever 的帖子
先谢谢了,svd函数不熟悉,我来研究下。:handshake 回复 2 # 321forever 的帖子
你好,上次谢谢你的指导。用svd奇异值分解,如果是实对称阵的话,算出来的对角矩阵对角元不是特征值,是特征值的模;而我需要的是特征值,请问还有什么好办法吗,谢谢! mayuanzhuo 发表于 2012-9-9 17:49 http://forum.chinavib.com/static/image/common/back.gif
回复 2 # 321forever 的帖子
你好,上次谢谢你的指导。用svd奇异值分解,如果是实对称阵的话,算出来的对角 ...
实对称矩阵的特征值必为实数
x=;
lz可以自己推下;
求特征值eig函数应该可以满足吧
页:
[1]