鱼C论坛

 找回密码
 立即注册
查看: 8116|回复: 1

那位大神知道,如何使用python将一个实对称矩阵对角化呀?

[复制链接]
发表于 2017-6-11 15:09:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
那位大神知道,如何使用python将一个实对称矩阵对角化呀?求出的对角矩阵就是该实对称矩阵的特征值组成的矩阵
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-6-11 18:13:50 | 显示全部楼层
  1. >>> import numpy as np
  2. >>> A=np.mat([[2,-2,0],
  3.               [-2,1,-2],
  4.               [0,-2,0]])
  5. >>> A
  6. matrix([[ 2, -2,  0],
  7.         [-2,  1, -2],
  8.         [ 0, -2,  0]])
  9. >>> np.all(A==A.T)
  10. True

  11. >>> D,V=np.linalg.eig(A)
  12. >>> D #D 对角线上的元素为A的特征值
  13. array([ 4.,  1., -2.])
  14. >>> V # V为相对应的特征向量所构成的矩阵。
  15. matrix([[-0.66666667, -0.66666667,  0.33333333],
  16.         [ 0.66666667, -0.33333333,  0.66666667],
  17.         [-0.33333333,  0.66666667,  0.66666667]])

  18. >>> np.diag(D) # 单位化
  19. array([[ 4.,  0.,  0.],
  20.        [ 0.,  1.,  0.],
  21.        [ 0.,  0., -2.]])

复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-19 18:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表