前提:矩阵A必须可相似对角化!

充分条件:

  • $A$ 是实对称矩阵
  • $A$ 有 $n$ 个互异特征值
  • $A^{\wedge} 2=A $
  • $\mathrm{A}^{\wedge} 2=\mathrm{E} $
  • $  r(A)=1 且 \operatorname{tr}(A) !=0$

  谱分解(Spectral Decomposition ),又称特征分解,或相似标准形分解,是将矩阵分解为由其特征值和特征向量表示的矩阵之积的方法,需要注意只有对可对角化矩阵才可以施以特征分解。它体现了线性变换的旋转和缩放的功效。

  设  $A$  为  $n$  阶实对称阵,则必有正交阵  $P$  ,使  $A=P \Lambda P^{T} $   其中 $ \Lambda $  是以  $  A $   的   $n$   个特征值为对角元的对角阵,  $P$   是由   $A$   的   $ n$   个特征向量得到 的正交矩阵。

实对称矩阵谱分解的步骤

  设  $\boldsymbol{A} \in \boldsymbol{R}^{n \times n}$,  $ \boldsymbol{A}^{\prime}=\boldsymbol{A} $
  (i) 求出  $A$  的所有不同的特征值:  $\lambda_{1}, \lambda_{2}, \cdots, \lambda_{r} \in R $,其重数  $n_{1}, n_{2}, \cdots, n_{r} $  必满足  $\sum_{i=1}^{r} n_{i}=n $;
  (ii) 对每个  $  \lambda_{i}  $   ,解齐次线性方程组

    $\left.\left(\lambda_{i}\right) E-A\right) X=0$

  求出它的一个基础解系:   $\alpha_{i 1}, \alpha_{i 2}, \cdots, \alpha_{i n} $
  把它们按   Schmidt   正交化过程化成 标准正交组

    $\boldsymbol{\eta}_{i 1}, \boldsymbol{\eta}_{i 2}, \cdots, \boldsymbol{\eta}_{i n}$

  (iii) 因为   $\lambda_{1}, \lambda_{2}, \cdots, \lambda_{r} $  互不相同,所以

  将  $\boldsymbol{\eta}_{11}, \boldsymbol{\eta}_{12}, \cdots, \boldsymbol{\eta}_{1 n_{1}}, \cdots, \boldsymbol{\eta}_{r 1}, \boldsymbol{\eta}_{r 2}, \cdots, \boldsymbol{\eta}_{r \boldsymbol{n}_{r}}$  的分量依次作 矩阵  $P$的第  $1,2, \cdots, n$  列, 则  $P$  是正交矩阵, 且有  $\boldsymbol{A}=\boldsymbol{P} \boldsymbol{\Lambda} \boldsymbol{P}^{\boldsymbol{T}}$ .

例题

  已知  $A=\left[\begin{array}{ccc}0 & -1 & 1 \\-1 & 0 & 1 \\1 & 1 & 0\end{array}\right]$  求一个正交矩阵 $P$  , 使 $\boldsymbol{A}=\boldsymbol{P} \boldsymbol{\Lambda} \boldsymbol{P}^{\boldsymbol{T}}$ 为对角阵.

  第1步: 求特征值.

    $\begin{array}{c}|\lambda E-A|=\left|\begin{array}{ccc}\lambda & 1 & -1 \\1 & \lambda & -1 \\-1 & -1 & \lambda\end{array}\right| \underline{r_{1}-r_{2}}\left|\begin{array}{cccc}\lambda-1 & 1-\lambda & 0 \\1 & \lambda & -1 \\-1 & -1 & \lambda\end{array}\right| \\=(\lambda-1)\left|\begin{array}{ccc}1 & -1 & 0 \\1 & \lambda & -1 \\-1 & -1 & \lambda\end{array}\right|=(\lambda-1)\left|\begin{array}{ccc}1 & 0 & 0 \\1 & \lambda+1 & -1 \\-1 & -2 & \lambda\end{array}\right|=(\lambda+2)(\lambda-1)^{2} \\\lambda_{1}=-2, \lambda_{2}=\lambda_{3}=1\end{array}$

  第2步: 求线性无关的特征向量.

  对 $\lambda_{1}=-2$  , 解方程组 $(A+2 E) x=0$

    $A+2 E=\left[\begin{array}{ccc}2 & -1 & 1 \\-1 & 2 & 1 \\1 & 1 & 2\end{array}\right] \rightarrow\left[\begin{array}{lll}1 & 0 & 1 \\0 & 1 & 1 \\0 & 0 & 0\end{array}\right]$

  求得基础解系(即最大无关特征向量)

    $\alpha_{1}=\left[\begin{array}{c}-1 \\-1 \\1\end{array}\right]$

  对  $\lambda_{2}=\lambda_{3}=1$ , 解方程组  $(A-E) x=0 $

    $A-E=\left[\begin{array}{ccc}-1 & -1 & 1 \\-1 & -1 & 1 \\1 & 1 & -1\end{array}\right] \stackrel{r}{\rightarrow}\left[\begin{array}{ccc}1 & 1 & -1 \\0 & 0 & 0 \\0 & 0 & 0\end{array}\right]$

  求得基础解系(即最大无关特征向量)

    $\begin{array}{l}\alpha_{2}=\left[\begin{array}{c}-1 \\1 \\0\end{array}\right], \alpha_{3}=\left[\begin{array}{c}1 \\0 \\1\end{array}\right] , \alpha_{1}=\left[\begin{array}{c}-1 \\-1 \\1\end{array}\right] \\{\left[\alpha_{1}, \alpha_{2}\right]=?\left[\alpha_{1}, \alpha_{3}\right]=? \quad\left[\alpha_{2}, \alpha_{3}\right]=0 ?}\end{array}$

  第3步: 检验重特征值对应的特征向量是否正交, 如果不正交,
  用施密特过程正交化; 再把正交的特征向量单位化.

    $\begin{array}{l}\boldsymbol{\alpha}_{\mathbf{2}}=\left[\begin{array}{c}-\mathbf{1} \\\mathbf{1} \\\mathbf{0}\end{array}\right], \boldsymbol{\alpha}_{\mathbf{3}}=\left[\begin{array}{l}\mathbf{1} \\\mathbf{0} \\\mathbf{1}\end{array}\right] \\\boldsymbol{\beta}_{\mathbf{2}}=\boldsymbol{\alpha}_{\mathbf{2}} \\\boldsymbol{\beta}_{3}=\alpha_{3}-\frac{\left[\beta_{2}, \alpha_{3}\right]}{\left[\beta_{2}, \beta_{2}\right]} \boldsymbol{\beta}_{2}=\left[\begin{array}{l}1 \\0 \\1\end{array}\right]+\frac{1}{2}\left[\begin{array}{c}-1 \\1 \\0\end{array}\right]=\frac{1}{2}\left[\begin{array}{l}1 \\1 \\2\end{array}\right]\end{array}$

  单位化:

    $\xi_{1}=\frac{\alpha_{1}}{\left\|\alpha_{1}\right\|}=\frac{1}{\sqrt{3}}\left[\begin{array}{c}-1 \\-1 \\1\end{array}\right] \quad \xi_{2}=\frac{\beta_{2}}{\left\|\beta_{2}\right\|}=\frac{1}{\sqrt{2}}\left[\begin{array}{c}-1 \\1 \\0\end{array}\right] \quad \xi_{3}=\frac{\beta_{3}}{\left\|\beta_{3}\right\|}=\frac{1}{\sqrt{6}}\left[\begin{array}{l}1 \\1 \\2\end{array}\right]$

  第4步: 把求得的规范正交特征向量拼成正交矩阵.

  令  $ P=\left[\xi_{1}, \xi_{2}, \xi_{3}\right]=\left[\begin{array}{ccc}\frac{-1}{\sqrt{3}} & \frac{-1}{\sqrt{2}} & \frac{1}{\sqrt{6}} \\ \frac{-1}{\sqrt{3}} & \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{6}} \\ \frac{1}{\sqrt{3}} & 0 & \frac{2}{\sqrt{6}}\end{array}\right] $
  则   $A=P\left[\begin{array}{ccc}-2 & & \\ & 1 & \\ & & 1\end{array}\right] P^{T}$

参考

谱分解(SD)的更多相关文章

  1. android计算每个目录剩余空间丶总空间以及SD卡剩余空间

    ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvail ...

  2. Android将应用调试log信息保存在SD卡

    转载:http://blog.csdn.net/way_ping_li/article/details/8487866 把自己应用的调试信息写入到SD卡中. package com.sdmc.hote ...

  3. SD卡的监听

    摘要:在一般应用中,如果需要对占用空间比较大的文件操作,需要监听SD卡的状态,Android中对SD卡的监听状态操作步骤如下: 一.创建一个类继承于BroadcastReceiver public c ...

  4. Android SD卡存储

    原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SDcard_store.html 一 概念 SD卡存储空间比较大,当需要存取较大的 ...

  5. 关于手机的内置SD卡与外置SD卡

    对于安卓2.3的系统来说,Environment.getExternalStorageDirectory()获取的目录是内置SD卡还是外置SD卡是无法保证的, 和手机厂商的修改有关,只能通过Envir ...

  6. 基于DDD + SD.Framework实现的统一身份认证系统

    项目地址 http://git.oschina.net/lishilei0523/ShSoft.UAC 项目说明 本项目开发的目的有三: 1.作为一个使用SD.Framework框架开发的项目样板 2 ...

  7. 读取SD卡文件夹下的MP3文件和播放MP3文件

    首先获取SD卡path路径下的所有的MP3文件,并将文件名和文件大小存入List数组(此代码定义在FileUtils类中): /** * 读取目录中的Mp3文件的名字和大小 */ public Lis ...

  8. Android从网络某个地址下载文件、写入SD卡

    首先创建一个HttpDownloader类,获取下载文件的网络地址,将文件下载下来以String流的方式返回: public String download(String urlStr){ //url ...

  9. android setDestinationInExternalPublicDir 下载到SD卡根目录

    一:setDestinationInExternalPublicDir(“Trinea”, “MeiLiShuo.apk”);表示设置下载地址为sd卡的Trinea文件夹,文件名为MeiLiShuo. ...

随机推荐

  1. <转>git,github在windows上的搭建

    http://www.cnblogs.com/yixiaoyang/archive/2012/01/06/2314190.html Git在源码管理领域目前占很大的比重了,而且开源的项目很多都转到Gi ...

  2. [BUUCTF]PWN——[ZJCTF 2019]EasyHeap

    [ZJCTF 2019]EasyHeap 附件 步骤: 例行检查,64位程序 试运行一下看看程序大概执行的情况,经典的堆块的菜单 64位ida载入,首先检索字符串,发现了读出flag的函数 看一下每个 ...

  3. 替换资源(Project)

    <Project2016 企业项目管理实践>张会斌 董方好 编著 还是那个熟悉的某吃货甲,一天之内给他分配了9.6个工时的吃量,这太不厚道了哈,人家一个人又要开吃又要喝汤,这怎么吃得消呢? ...

  4. 【LeetCode】1060. Missing Element in Sorted Array 解题报告 (C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 遍历 日期 题目地址:https://leetcode ...

  5. 【剑指Offer】数值的整数次方 解题报告(Python)

    [剑指Offer]数值的整数次方 解题报告(Python) 标签(空格分隔): LeetCode 题目地址:https://www.nowcoder.com/ta/coding-interviews ...

  6. 【LeetCode】341. Flatten Nested List Iterator 解题报告(Python&C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 递归+队列 栈 日期 题目地址:https://lee ...

  7. 第二十三个知识点:写一个实现蒙哥马利算法的C程序

    第二十三个知识点:写一个实现蒙哥马利算法的C程序 这次博客我将通过对蒙哥马利算法的一个实际的实现,来补充我们上周蒙哥马利算法的理论方面.这个用C语言实现的蒙哥马利算法,是为一个位数为64的计算机编写的 ...

  8. Chapter 22 Target Trial Emulation

    目录 22.1 The target trial 22.2 Causal effects in randomized trails 22.3 Causal effects in observation ...

  9. Solon 1.6.11 发布。类似 Spring 的生态体系

    关于官网 千呼万唤始出来: https://solon.noear.org .整了一个月多了,总体样子有了...还得不断接着整! 关于 Solon Solon 是一个轻量级应用开发框架.支持 Web. ...

  10. [平台建设] Spark任务的诊断调优

    背景 平台目前大多数任务都是Spark任务,用户在提交Spark作业的时候都要进行的一步动作就是配置spark executor 个数.每个executor 的core 个数以及 executor 的 ...