精华内容
下载资源
问答
  • <p style="text-align:center"><img alt="" height="246" src="https://img-ask.csdnimg.cn/upload/1617106457112.png" width="786" /></p> 怎么利用特征分解得到矩阵幂呢</p>
  • 特征分解:eigendecomposition 特征向量:eigenvector 特征值:eigenvalue一、理解当我们在看一个运动的时候,我们是如何看的呢?是不是看这个运动的速度和方向;或者就像物理中的合力,我们会拆分成多个分力来简化...
    特征分解:eigendecomposition 特征向量:eigenvector 特征值:eigenvalue

    一、理解

    当我们在看一个运动的时候,我们是如何看的呢?是不是看这个运动的速度方向;或者就像物理中的合力,我们会拆分成多个分力来简化。于是理所当然的会思考,矩阵是否也能像这样拆分呢?

    1、存在性

    我们不得不先说说矩阵的乘法,矩阵乘法本质是一种变换,是把一个向量,通过旋转,拉伸,变成另一个向量的过程

    举一个例子:给定一个向量
    equation?tex=%5Cleft%28%5Cbegin%7Barray%7D%7Bl%7D%7B1%7D+%5C%5C+%7B1%7D+%5Cend%7Barray%7D%5Cright%29 和任意一个矩阵
    equation?tex=A
    equation?tex=%5Cleft%28%5Cbegin%7Barray%7D%7Bcc%7D%7B2%7D+%26+%7B1%7D%5C%5C+%7B3%7D+%26+%7B2%7D+%5Cend%7Barray%7D%5Cright%29 ,他们相乘会得到一个新的向量
    equation?tex=%5Cleft%28%5Cbegin%7Barray%7D%7Bcc%7D%7B2%7D+%26+%7B1%7D%5C%5C+%7B3%7D+%26+%7B2%7D+%5Cend%7Barray%7D%5Cright%29+%5Cleft%28%5Cbegin%7Barray%7D%7Bl%7D%7B1%7D+%5C%5C+%7B1%7D+%5Cend%7Barray%7D%5Cright%29+%3D%5Cleft%28%5Cbegin%7Barray%7D%7Bl%7D%7B3%7D+%5C%5C+%7B5%7D+%5Cend%7Barray%7D%5Cright%29

    affd8dd98ddacb84245a76eb7af0fa65.png

    通过上面左图可以很清楚的看到了这样一个变换的过程,因为矩阵A是随机给出的,这也意味着,我们可以随意变换原来的向量,上面右图这样的情况是否也可能出现呢?当然会出现,我们用一个公式来表示描述右图的变换:

    equation?tex=Av%3D%5Clambda+v+%5Ctag%7B1%7D

    描述的是矩阵

    equation?tex=A对向量
    equation?tex=v的变换效果只有拉伸,没有旋转。

    也可以看成矩阵

    equation?tex=A,向量
    equation?tex=v,系数
    equation?tex=%5Clambda这三者建立了一种联系,但显然我们无法通过式(1)来用
    equation?tex=v
    equation?tex=%5Clambda表示
    equation?tex=A ,因为这个式子不是完备的,对于一个秩为
    equation?tex=m的矩阵
    equation?tex=A ,应该存在
    equation?tex=m个这样的式子,完备式子应该是:

    equation?tex=A%5Cleft%28%5Cvec%7Bv%7D_%7B1%7D%2C+%5Cvec%7Bv%7D_%7B2%7D%2C+%5Cldots%2C+%5Cvec%7Bv%7D_%7Bm%7D%5Cright%29%3D+%5Cleft%28%5Clambda_%7B1%7D+%5Cvec%7Bv%7D_%7B1%7D%2C+%5Clambda_%7B2%7D+%5Cvec%7Bv%7D_%7B2%7D%2C+%5Cldots%2C+%5Clambda_%7Bm%7D+%5Cvec%7Bv%7D_%7Bm%7D%5Cright%29%3D+%5Cleft%28%5Cvec%7Bv%7D_%7B1%7D%2C+%5Cvec%7Bv%7D_%7B2%7D%2C+%5Cldots%2C+%5Cvec%7Bv%7D_%7Bm%7D%5Cright%29%5Cleft%5B%5Cbegin%7Barray%7D%7Bccc%7D%7B%5Clambda_%7B1%7D%7D+%26+%7B%5Ccdots%7D+%26+%7B0%7D+%5C%5C+%7B%5Cvdots%7D+%26+%7B%5Cddots%7D+%26+%7B%5Cvdots%7D+%5C%5C+%7B0%7D+%26+%7B%5Ccdots%7D+%26+%7B%5Clambda_%7Bm%7D%7D%5Cend%7Barray%7D%5Cright%5D+%5Ctag%7B2%7D

    equation?tex=A+V%3DV%5CLambda+%5Ctag%7B3%7D

    通过式(3),我们就可以表示

    equation?tex=A了:
    equation?tex=A+%3D+V+%5CLambda+V%5E%7B-1%7D+%5Ctag%7B4%7D

    这种形式是不是就可以看成矩阵

    equation?tex=A被分解了。

    这样我们就得到了一个与运动类似的划分:

    • equation?tex=%5Clambda 就是运动的速度
    • equation?tex=v 就是运动的方向

    2、合理性

    证明了存在性,那我们为什么要引入这样一种矩阵和向量的表述形式呢?科学家还将满足这样形式的向量

    equation?tex=v命名为矩阵
    equation?tex=A的特征向量,系数
    equation?tex=%5Clambda命名为矩阵
    equation?tex=A的特征值。下面我们就要来探讨这个问题

    特征值和特征向量是为了研究向量在经过线性变换后的方向不变性而提出的

    一个矩阵和该矩阵的非特征向量相乘是对该向量的旋转变换;一个矩阵和该矩阵的特征向量相乘是对该向量的伸缩变换,其中伸缩程度取决于特征值大小

    矩阵在特征向量所指的方向上具有 增强(或减弱)特征向量 的作用。这也就是说,如果矩阵持续地叠代作用于向量,那么特征向量的就会突显出来,我们用Matlab进行计算:

    (在这里用到的实例是与后面计算例子一致,可以先到后面看结果) 我们反复用矩阵
    equation?tex=A%3D%5Cleft%28%5Cbegin%7Barray%7D%7Bccc%7D%7B4%7D+%26+%7B1%7D+%26+%7B1%7D+%5C%5C+%7B1%7D+%26+%7B2%7D+%26+%7B1%7D+%5C%5C+%7B3%7D+%26+%7B2%7D+%26+%7B3%7D%5Cend%7Barray%7D%5Cright%29 去乘一个任意向量
    equation?tex=v%3D+%5Cleft%28%5Cbegin%7Barray%7D%7Bc%7D%7B-1%7D+%5C%5C+%7B5%7D+%5C%5C+%7B3%7D%5Cend%7Barray%7D%5Cright%29

    2d7e83baa52a4107ef0a22edb9606f98.png

    cbcfb4a9f562b5fc2a37d20346b3d980.png

    5387949ff83784396f7e77254c87e907.png

    fbf2db34256c13a2cb581bc6030c91db.png

    可以看到不断左乘A后,变换后的归一化向量会恒等为

    equation?tex=%28%5Cfrac%7B1%7D%7B3%7D%2C+%5Cfrac%7B1%7D%7B5%7D%2C+%5Cfrac%7B7%7D%7B15%7D%29 ,这与我们计算出来的
    最大特征值对应的特征向量归一化后的结果是一致的,这也就佐证了矩阵是具有某种不变的特性的。因此为了提取矩阵这种“不变性”,或者说是为了描述变换(矩阵乘法是一种线性变换)的主要方向是非常有必要的,具体应用会在后面讲到。

    这里补充一个理论(来自尹相楠):

    假设矩阵

    equation?tex=A 是一个
    equation?tex=n%C3%97n的满秩矩阵,他的单位特征向量为
    equation?tex=v_1%2C+v_2%2C+%5Cdots%2C+v_n,对应的特征值为
    equation?tex=%5Clambda_1%2C+%5Clambda_2%2C+%5Cdots%2C+%5Clambda_n。那么对一个任意向量
    equation?tex=x%3Dx_1v_1+%2B+x_2v_2%2B%5Cdots%2Bx_nv_n,有:

    equation?tex=%5Cbegin%7Baligned%7D+A+x+%26%3DA%5Cleft%28x_%7B1%7D+%5Ccdot+%5Cnu_%7B1%7D%2Bx_%7B2%7D+%5Ccdot+%5Cnu_%7B2%7D%2B%5Cldots%2Bx_%7Bn%7D+%5Ccdot+%5Cnu_%7Bn%7D%5Cright%29+%5C%5C+%26%3Dx_%7B1%7D%5Cleft%28A+%5Cnu_%7B1%7D%5Cright%29%2Bx_%7B2%7D%5Cleft%28A+%5Cnu_%7B2%7D%5Cright%29%2B%5Cldots%2Bx_%7Bn%7D%5Cleft%28A+%5Cnu_%7Bn%7D%5Cright%29+%5C%5C+%26%3Dx_%7B1%7D%5Cleft%28%5Clambda_%7B1%7D+%5Cnu_%7B1%7D%5Cright%29%2Bx_%7B2%7D%5Cleft%28%5Clambda_%7B2%7D+%5Cnu_%7B2%7D%5Cright%29%2B%5Cldots%2Bx_%7Bn%7D%5Cleft%28%5Clambda_%7Bn%7D+%5Cnu_%7Bn%7D%5Cright%29+%5Cend%7Baligned%7D%5C%5C

    经过

    equation?tex=k 次迭代后:

    equation?tex=%5Cbegin%7Baligned%7D+A%5E%7Bk%7D+x+%26%3Dx_%7B1%7D%5Cleft%28%5Clambda_%7B1%7D%5E%7Bk%7D+%5Cnu_%7B1%7D%5Cright%29%2Bx_%7B2%7D%5Cleft%28%5Clambda_%7B2%7D%5E%7Bk%7D+%5Cnu_%7B2%7D%5Cright%29%2B%5Cldots%2Bx_%7Bn%7D%5Cleft%28%5Clambda_%7Bn%7D%5E%7Bk%7D+%5Cnu_%7Bn%7D%5Cright%29+%5C%5C+%26%3D%5Clambda_%7B1%7D%5E%7Bk%7D%5Cleft%5Bx_%7B1%7D+%5Cnu_%7B1%7D%2Bx_%7B2%7D%5Cleft%28%5Cfrac%7B%5Clambda_%7B2%7D%7D%7B%5Clambda_%7B1%7D%7D%5Cright%29%5E%7Bk%7D+%5Cnu_%7B2%7D%2B%5Cldots%2Bx_%7Bn%7D%5Cleft%28%5Cfrac%7B%5Clambda_%7Bn%7D%7D%7B%5Clambda_%7B1%7D%7D%5Cright%29%5E%7Bk%7D+%5Cnu_%7Bn%7D%5Cright%5D+%5Cend%7Baligned%7D%5C%5C

    由于

    equation?tex=%5Clambda_%7B1%7D%3E%5Clambda_%7B2%7D%3E%5Cldots%3E%5Clambda_%7Bn%7D (不考虑两个特征值相等的情况,因为太少见了)。所以经过k次迭代后,
    equation?tex=%5Clim+_%7Bk+%5Crightarrow%2B%5Cinfty%7D%5Cleft%28%5Clambda_%7Bi%7D+%2F+%5Clambda_%7B1%7D%5Cright%29%5E%7Bk%7D%3D0%28i+%5Cneq+1%29 。所以:

    equation?tex=%5Clim+_%7Bk+%5Crightarrow%2B%5Cinfty%7D+A%5E%7Bk%7D+x%3D%5Clambda_%7B1%7D%5E%7Bk%7D+x_%7B1%7D+%5Cnu_%7B1%7D%5C%5C

    也就是说,经过 k 次迭代后,我们将得到矩阵主特征向量的线性放缩,只要把这个向量归一化,就得到了该矩阵的单位主特征向量,进而可以解出矩阵的主特征值。

    二、计算方法

    在 (1) 式的基础上,我们进行一些变形 :

    equation?tex=Av%3D%5Clambda+v+%5Crightarrow+Av+%3D+%5Clambda+I+v+%5Crightarrow+%28%5Clambda+I+-+A%29v+%3D+0%5C%5C根据线性方程组理论,为了使这个方程有非零解,矩阵
    equation?tex=%28%5Clambda+I+-+A%29的行列式必须是零

    equation?tex=det%28%5Clambda+I+-+A%29%3D0%5C%5C 上式也被称为是
    equation?tex=A的特征方程,计算出所有
    equation?tex=%5Clambda 的取值后,再代入
    equation?tex=%28%5Clambda+I+-+A%29v+%3D+0求解对应的
    equation?tex=v

    注意:要注意特征值是重根时的情况!

    1、手算

    通过一个例子来动手计算一遍

    求矩阵

    equation?tex=A%3D%5Cleft%28%5Cbegin%7Barray%7D%7Bccc%7D%7B4%7D+%26+%7B1%7D+%26+%7B1%7D+%5C%5C+%7B1%7D+%26+%7B2%7D+%26+%7B1%7D+%5C%5C+%7B3%7D+%26+%7B2%7D+%26+%7B3%7D%5Cend%7Barray%7D%5Cright%29 的特征值和特征向量:

    equation?tex=%7C%5Clambda+I+-+A%7C+%3D+%5Cleft%7C%5Cbegin%7Barray%7D%7Bccc%7D%7B%5Clambda+-+4%7D+%26+%7B-1%7D+%26+%7B-1%7D+%5C%5C+%7B-1%7D+%26+%7B%5Clambda+-+2%7D+%26+%7B-1%7D+%5C%5C+%7B-3%7D+%26+%7B-2%7D+%26+%7B%5Clambda+-+3%7D%5Cend%7Barray%7D%5Cright%7C+%3D+%28%5Clambda+-+6%29%28%5Clambda+-+2%29%28%5Clambda+-+1%29所以

    equation?tex=%5Clambda_1+%3D+6+%2C+%5Clambda_2+%3D+2%2C+%5Clambda_3+%3D+1%5C%5C1.当
    equation?tex=%5Clambda%3D6 时,
    equation?tex=%28%5Clambda+I+-+A%29v+%3D+%286+I+-+A%29v+%3D+0

    equation?tex=%5Cleft%28%5Cbegin%7Barray%7D%7Bccc%7D%7B2%7D+%26+%7B-1%7D+%26+%7B-1%7D+%5C%5C+%7B-1%7D+%26+%7B4%7D+%26+%7B-1%7D+%5C%5C+%7B-3%7D+%26+%7B-2%7D+%26+%7B3%7D%5Cend%7Barray%7D%5Cright%29%5Cleft%28%5Cbegin%7Barray%7D%7Bl%7D%7Bv_%7B1%7D%7D+%5C%5C+%7Bv_%7B2%7D%7D+%5C%5C+%7Bv_%7B3%7D%7D%5Cend%7Barray%7D%5Cright%29+%3D0%5C%5C
    equation?tex=%5Cleft%5C%7B%5Cbegin%7Barray%7D%7Bl%7D+%7B2v_1-v_2-v_3+%3D+0%7D++%5C%5C++%7B-v_1%2B4v_2-v_3+%3D+0%7D+%5C%5C+%7B-3v_1-2v_2%2B3v_3+%3D+0%7D+%5Cend%7Barray%7D%5Cright.%5C%5C

    通过给其中一个变量赋值(通常是1),得到一个基础解系

    equation?tex=%5CRightarrow+%5Cleft%5C%7B%5Cbegin%7Barray%7D%7Bl%7D+%7Bv_1+%3D+5%7D++%5C%5C++%7Bv_2+%3D+3%7D+%5C%5C+%7Bv_3+%3D+7%7D+%5Cend%7Barray%7D%5Cright.

    同理得到当

    equation?tex=%5Clambda%3D2 时,
    equation?tex=%5Cleft%5C%7B%5Cbegin%7Barray%7D%7Bl%7D+%7Bv_1+%3D+1%7D++%5C%5C++%7Bv_2+%3D+-1%7D+%5C%5C+%7Bv_3+%3D+-1%7D+%5Cend%7Barray%7D%5Cright.+ ;当
    equation?tex=%5Clambda%3D1 时,
    equation?tex=%5Cleft%5C%7B%5Cbegin%7Barray%7D%7Bl%7D+%7Bv_1+%3D+0%7D++%5C%5C++%7Bv_2+%3D+1%7D+%5C%5C+%7Bv_3+%3D+-1%7D+%5Cend%7Barray%7D%5Cright.

    2、Matlab算

    我们还可以利用Matlab中的 eig() 函数来帮我们求解:

    • e = eig(A) 返回一个列向量,其中包含方阵 A 的特征值
    • [V,D] = eig(A) 返回特征值的对角矩阵 D 和矩阵 V,其列是对应的右特征向量,使得
      equation?tex=AV%3DVD
    A = [4 1 1;1 2 1;3 2 3];
    [V,D] = eig(A)

    617dcf8078656af4f856bec063652ee5.png
    发现Matlab计算的和手算的特征向量值不同,但比例是一样的,这是因为特征向量不是唯一的,特征向量来自齐次线性方程组的解,是齐次线性方程组的基础解系的非零线性组合。

    应用

    1、在图像压缩里,一张图片就可以看作是一个矩阵,当我们提取了这个矩阵的特征值和特征向量后,我们可以只用最大的几个特征值(其他的变为0)就可以基本复原这张图片。

    展开全文
  • 矩阵分解是把一个矩阵分解为多个矩阵连乘的形式 其中cholinc()和luinc()函数是针对稀疏矩阵的 1. 对称正定矩阵的Cholesky分解 a=pascal(4) % pascal矩阵是对称正定的 e=eig(a) % 返回由a的特征值构成的向量 b=ch....

    矩阵分解

    是把一个矩阵分解为多个矩阵连乘的形式
    在这里插入图片描述
    其中cholinc()和luinc()函数是针对稀疏矩阵的

    在这里插入图片描述

    1. 对称正定矩阵的Cholesky分解

    在这里插入图片描述

    a=pascal(4) % pascal矩阵是对称正定的
    e=eig(a) % 返回由a的特征值构成的向量
    b=chol(a)
    c=b'*b
    
    a =
         1     1     1     1
         1     2     3     4
         1     3     6    10
         1     4    10    20
    e =
        0.0380
        0.4538
        2.2034
       26.3047
    b =
         1     1     1     1
         0     1     2     3
         0     0     1     3
         0     0     0     1
    c =
         1     1     1     1
         1     2     3     4
         1     3     6    10
         1     4    10    20
    >> 
    

    2. 一般方阵的高斯消去法分解(LU分解)

    在这里插入图片描述在这里插入图片描述

    a=pascal(4) % pascal矩阵是对称正定的
    [L1, U1]=lu(a)
    b=L1*U1==a
    [L2,U2,P]=lu(a)
    c=L2*U2==P*a
    Y=lu(a)
    Y1=L2+U2-eye(size(a))
    
    a =
         1     1     1     1
         1     2     3     4
         1     3     6    10
         1     4    10    20
    L1 =
        1.0000         0         0         0
        1.0000    0.3333    1.0000         0
        1.0000    0.6667    1.0000    1.0000
        1.0000    1.0000         0         0
    U1 =
        1.0000    1.0000    1.0000    1.0000
             0    3.0000    9.0000   19.0000
             0         0   -1.0000   -3.3333
             0         0         0   -0.3333
    b =
      4×4 logical 数组
       1   1   1   1
       1   1   1   1
       1   1   1   1
       1   1   1   1
    L2 =
        1.0000         0         0         0
        1.0000    1.0000         0         0
        1.0000    0.3333    1.0000         0
        1.0000    0.6667    1.0000    1.0000
    U2 =
        1.0000    1.0000    1.0000    1.0000
             0    3.0000    9.0000   19.0000
             0         0   -1.0000   -3.3333
             0         0         0   -0.3333
    P =
         1     0     0     0
         0     0     0     1
         0     1     0     0
         0     0     1     0
    c =
      4×4 logical 数组
       1   1   1   1
       1   1   1   1
       1   1   1   1
       1   1   1   1
    Y =
        1.0000    1.0000    1.0000    1.0000
        1.0000    3.0000    9.0000   19.0000
        1.0000    0.3333   -1.0000   -3.3333
        1.0000    0.6667    1.0000   -0.3333
    Y1 =
        1.0000    1.0000    1.0000    1.0000
        1.0000    3.0000    9.0000   19.0000
        1.0000    0.3333   -1.0000   -3.3333
        1.0000    0.6667    1.0000   -0.3333
    >> 
    

    3. 舒尔分解

    在这里插入图片描述在这里插入图片描述

    a=pascal(4) % pascal矩阵是对称正定的
    [U,S]=schur(a) % S矩阵对角线上是特征值
    eig(a) % a的特征值构成的向量
    U*U'  % 等于单位阵E
    U*S*U'-a % 验证
    
    a =
         1     1     1     1
         1     2     3     4
         1     3     6    10
         1     4    10    20
    U =
        0.3087   -0.7873    0.5304    0.0602
       -0.7231    0.1632    0.6403    0.2012
        0.5946    0.5321    0.3918    0.4581
       -0.1684   -0.2654   -0.3939    0.8638
    S =
        0.0380         0         0         0
             0    0.4538         0         0
             0         0    2.2034         0
             0         0         0   26.3047
    ans =
        0.0380
        0.4538
        2.2034
       26.3047
    ans =
        1.0000   -0.0000    0.0000   -0.0000
       -0.0000    1.0000    0.0000   -0.0000
        0.0000    0.0000    1.0000    0.0000
       -0.0000   -0.0000    0.0000    1.0000
    ans =
       1.0e-14 *
             0    0.0222    0.0444         0
        0.0444         0    0.0888    0.0888
        0.0444    0.0888    0.4441         0
             0    0.0888    0.1776    0.3553
    >> 
    

    4. 矩形矩阵的正交分解

    在这里插入图片描述在这里插入图片描述

    a=pascal(4) % pascal矩阵是对称正定的
    [q1, r1] = qr(a)
    q1*r1
    q1*q1'
    b=[1 2 3;4 5 6;7 8 9;3 5 7];
    [q2,r2]=qr(b)
    rank_b=rank(b) % b的秩和r2的非零行相同
    
    a =
         1     1     1     1
         1     2     3     4
         1     3     6    10
         1     4    10    20
    q1 =
       -0.5000    0.6708    0.5000    0.2236
       -0.5000    0.2236   -0.5000   -0.6708
       -0.5000   -0.2236   -0.5000    0.6708
       -0.5000   -0.6708    0.5000   -0.2236
    r1 =
       -2.0000   -5.0000  -10.0000  -17.5000
             0   -2.2361   -6.7082  -14.0872
             0         0    1.0000    3.5000
             0         0         0   -0.2236
    ans =
        1.0000    1.0000    1.0000    1.0000
        1.0000    2.0000    3.0000    4.0000
        1.0000    3.0000    6.0000   10.0000
        1.0000    4.0000   10.0000   20.0000
    ans =
        1.0000   -0.0000   -0.0000         0
       -0.0000    1.0000         0    0.0000
       -0.0000         0    1.0000   -0.0000
             0    0.0000   -0.0000    1.0000
    q2 =
       -0.1155    0.4642   -0.0789   -0.8746
       -0.4619    0.0244    0.8866   -0.0060
       -0.8083   -0.4154   -0.4102   -0.0768
       -0.3464    0.7819   -0.1988    0.4787
    r2 =
       -8.6603  -10.7387  -12.8172
             0    1.6371    3.2741
             0         0   -0.0000
             0         0         0
    rank_b =
         2
    >> 
    

    特征值, 特征向量

    在这里插入图片描述

    a=pascal(4) % pascal矩阵是对称正定的
    b=eig(a)
    [X,D]=eig(a) % X的列向量是a的特征向量
    a*X(:,1)
    b(1)*X(:,1)
    a*X
    X*D
    
    a =
         1     1     1     1
         1     2     3     4
         1     3     6    10
         1     4    10    20
    b =
        0.0380
        0.4538
        2.2034
       26.3047
    X =
        0.3087   -0.7873    0.5304    0.0602
       -0.7231    0.1632    0.6403    0.2012
        0.5946    0.5321    0.3918    0.4581
       -0.1684   -0.2654   -0.3939    0.8638
    D =
        0.0380         0         0         0
             0    0.4538         0         0
             0         0    2.2034         0
             0         0         0   26.3047
    ans =
        0.0117   -0.3573    1.1686    1.5832
       -0.0275    0.0741    1.4109    5.2918
        0.0226    0.2415    0.8634   12.0497
       -0.0064   -0.1204   -0.8679   22.7207
    ans =
        0.0117   -0.3573    1.1686    1.5832
       -0.0275    0.0741    1.4109    5.2918
        0.0226    0.2415    0.8634   12.0497
       -0.0064   -0.1204   -0.8679   22.7207
    ans =
        0.0117
       -0.0275
        0.0226
       -0.0064
    ans =
        0.0117
       -0.0275
        0.0226
       -0.0064
    >> 
    
    展开全文
  • 1、常见的分解方法(1)三角分解(LU分解)(2)正交分解(QR)(3)特征分解(eig分解)(4)奇异值分解(svd)(5)Chollesky分解2、三角分解(LU分解)>> A = [1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16]A =1 2 3 45 6 7 89 10...

    1、常见的分解方法

    (1)三角分解(LU分解)

    (2)正交分解(QR)

    (3)特征值分解(eig分解)

    (4)奇异值分解(svd)

    (5)Chollesky分解

    2、三角分解(LU分解)

    >> A = [1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16]

    A =

    1 2 3 4

    5 6 7 8

    9 10 11 12

    13 14 15 16

    >> [l,u] = lu(A)

    l =

    0.0769 1.0000 0 0

    0.3846 0.6667 -0.5000 1.0000

    0.6923 0.3333 1.0000 0

    1.0000 0 0 0

    u =

    13.0000 14.0000 15.0000 16.0000

    0 0.9231 1.8462 2.7692

    0 0 -0.0000 -0.0000

    0 0 0 -0.0000

    >> [l,u,p] = lu(A)

    l =

    1.0000 0 0 0

    0.0769 1.0000 0 0

    0.6923 0.3333 1.0000 0

    0.3846 0.6667 -0.5000 1.0000

    u =

    13.0000 14.0000 15.0000 16.0000

    0 0.9231 1.8462 2.7692

    0 0 -0.0000 -0.0000

    0 0 0 -0.0000

    p =

    0 0 0 1

    1 0 0 0

    0 0 1 0

    0 1 0 0 说明:p是A交换矩阵

    3、正交分解(QR)

    >> A = [1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16]

    A =

    1 2 3 4

    5 6 7 8

    9 10 11 12

    13 14 15 16

    >> [q,r] = qr(A)

    q =

    -0.0602 -0.8345 0.2702 -0.4765

    -0.3010 -0.4576 -0.0051 0.8366

    -0.5417 -0.0808 -0.8003 -0.2439

    -0.7825 0.2961 0.5352 -0.1163

    r =

    -16.6132 -18.2986 -19.9841 -21.6695

    0 -1.0768 -2.1535 -3.2303

    0 0 0.0000 0.0000

    0 0 0 0.0000

    >> [q,r,e] = qr(A)

    q =

    -0.1826 -0.8165 0.5068 0.2078

    -0.3651 -0.4082 -0.8306 0.1006

    -0.5477 -0.0000 0.1409 -0.8247

    -0.7303 0.4082 0.1829 0.5163

    r =

    -21.9089 -16.4317 -18.2574 -20.0832

    0 2.4495 1.6330 0.8165

    0 0 0.0000 -0.0000

    0 0 0 -0.0000

    e =

    0 1 0 0

    0 0 1 0

    0 0 0 1

    1 0 0 0

    说明:e是A交换矩阵

    4、

    特征值分解(eig分解)

    >> A = magic(10)

    A =

    92 99 1 8 15 67 74 51 58 40

    98 80 7 14 16 73 55 57 64 41

    4 81 88 20 22 54 56 63 70 47

    85 87 19 21 3 60 62 69 71 28

    86 93 25 2 9 61 68 75 52 34

    17 24 76 83 90 42 49 26 33 65

    23 5 82 89 91 48 30 32 39 66

    79 6 13 95 97 29 31 38 45 72

    10 12 94 96 78 35 37 44 46 53

    11 18 100 77 84 36 43 50 27 59

    >> [v,d] = eig(A)

    v =

    Columns 1 through 5

    0.3162 0.2500 -0.3162 0.3322 -0.4512

    0.3162 0.2500 -0.3162 0.3725 0.3964

    0.3162 -0.5000 -0.3162 0.3581 -0.4078

    0.3162 0.2500 -0.3162 0.2660 0.1077

    0.3162 0.2500 -0.3162 0.2098 0.1692

    0.3162 -0.2500 0.3162 -0.3014 -0.4266

    0.3162 -0.2500 0.3162 -0.2612 0.4211

    0.3162 0.5000 0.3162 -0.1845 -0.1352

    0.3162 -0.2500 0.3162 -0.3677 0.1324

    0.3162 -0.2500 0.3162 -0.4238 0.1939

    Columns 6 through 10

    0.0336 0.1227 0.4554 -0.3542 - 0.0179i -0.3542 + 0.0179i

    -0.0586 0.0781 0.1344 -0.4556 + 0.0000i -0.4556 - 0.0000i

    0.4509 0.2997 0.4554 -0.3542 - 0.0179i -0.3542 + 0.0179i

    -0.2334 0.2875 -0.0319 -0.0419 + 0.0952i -0.0419 - 0.0952i

    -0.1674 -0.3274 -0.2572 -0.0177 - 0.1725i -0.0177 + 0.1725i

    0.3178 0.1407 -0.4554 0.3542 + 0.0179i 0.3542 - 0.0179i

    0.2256 0.0961 -0.1344 0.4556 0.4556

    -0.7359 -0.6936 -0.4554 0.3542 + 0.0179i 0.3542 - 0.0179i

    0.0508 0.3055 0.0319 0.0419 - 0.0952i 0.0419 + 0.0952i

    0.1168 -0.3094 0.2572 0.0177 + 0.1725i 0.0177 - 0.1725i

    d =

    1.0e+02 *

    Columns 1 through 5

    5.0500 0 0 0 0

    0 0.7500 0 0 0

    0 0 -0.7500 0 0

    0 0 0 -0.4255 0

    0 0 0 0 -0.2625

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    Columns 6 through 10

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0.4255 0 0 0 0

    0 0.2625 0 0 0

    0 0 -0.0000 0 0

    0 0 0 0.0000 + 0.0000i 0

    0 0 0 0 0.0000 - 0.0000i

    >> [v,d] = eig(A,'nobalance')

    v =

    Columns 1 through 5

    1.0000 0.5000 -1.0000 0.7839 -1.0000

    1.0000 0.5000 -1.0000 0.8788 0.8785

    1.0000 -1.0000 -1.0000 0.8449 -0.9038

    1.0000 0.5000 -1.0000 0.6276 0.2388

    1.0000 0.5000 -1.0000 0.4951 0.3751

    1.0000 -0.5000 1.0000 -0.7112 -0.9454

    1.0000 -0.5000 1.0000 -0.6163 0.9332

    1.0000 1.0000 1.0000 -0.4353 -0.2995

    1.0000 -0.5000 1.0000 -0.8676 0.2934

    1.0000 -0.5000 1.0000 -1.0000 0.4297

    Columns 6 through 10

    0.0456 0.1769 1.0000 -0.1120 - 0.6408i -0.1120 + 0.6408i

    -0.0796 0.1126 0.2952 -0.1852 - 0.8148i -0.1852 + 0.8148i

    0.6127 0.4321 1.0000 -0.1120 - 0.6408i -0.1120 + 0.6408i

    -0.3172 0.4145 -0.0700 -0.1872 - 0.0362i -0.1872 + 0.0362i

    -0.2275 -0.4720 -0.5648 0.3013 - 0.1017i 0.3013 + 0.1017i

    0.4318 0.2029 -1.0000 0.1120 + 0.6408i 0.1120 - 0.6408i

    0.3066 0.1386 -0.2952 0.1852 + 0.8148i 0.1852 - 0.8148i

    -1.0000 -1.0000 -1.0000 0.1120 + 0.6408i 0.1120 - 0.6408i

    0.0690 0.4405 0.0700 0.1872 + 0.0362i 0.1872 - 0.0362i

    0.1587 -0.4461 0.5648 -0.3013 + 0.1017i -0.3013 - 0.1017i

    d =

    1.0e+02 *

    Columns 1 through 5

    5.0500 0 0 0 0

    0 0.7500 0 0 0

    0 0 -0.7500 0 0

    0 0 0 -0.4255 0

    0 0 0 0 -0.2625

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    Columns 6 through 10

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0 0 0 0 0

    0.4255 0 0 0 0

    0 0.2625 0 0 0

    0 0 -0.0000 0 0

    0 0 0 0.0000 + 0.0000i 0

    0 0 0 0 0.0000 - 0.0000i

    5、

    Chollesky分解

    >> A = [4,-1,1;-1,4.25,2.75;1,2.75,3]

    A =

    4.0000 -1.0000 1.0000

    -1.0000 4.2500 2.7500

    1.0000 2.7500 3.0000

    >> chol(A)

    ans =

    2.0000 -0.5000 0.5000

    0 2.0000 1.5000

    0 0 0.7071

    展开全文
  • 第3章 MATLAB矩阵分析与处理 3.1 3.2 3.3 3.4 3.5 3.6 特殊矩阵 矩阵结构变换 矩阵求逆与线性方程组求解 矩阵求值 矩阵的特征值与特征向量 矩阵的超越函数 3.1 特殊矩阵 3.1.1 通用的特殊矩阵 常用的产生通用特殊...

    第3章 MATLAB矩阵分析与处理 3.1 3.2 3.3 3.4 3.5 3.6 特殊矩阵 矩阵结构变换 矩阵求逆与线性方程组求解 矩阵求值 矩阵的特征值与特征向量 矩阵的超越函数 3.1 特殊矩阵 3.1.1 通用的特殊矩阵 常用的产生通用特殊矩阵的函数有:......

    例:V=[1 2 3 4]’; vander(V),rot90(vander(V)) 3.希尔伯特矩阵生成希尔伯特矩阵的函数是hilb(n)。MATLAB中, 有一个专门求希尔伯特矩阵的逆的函数invhilb(n), 其功能是求n阶的希尔伯特矩阵的逆矩阵。 例:求4阶希尔伯特矩阵......

    矩阵求逆matlab_数学_自然科学_专业资料。matlab 1. A: 根据线性代数理论, 特征值与特征向量只存在于方阵。如下所示为一方阵 在 matlab 输入矩阵: A = [1 2 4; 407 9 1 3]; 2. 2 查阅 matlab help 可以知道,利用 eig ......

    ann bnn (2)求逆矩阵 ( A E ) ? ... ? (E A ) ?1 在MATLAB中用命令inv(A)或A^(-1)或rref([A,E]) (以上过程都应选主元) 五.矩阵三角分解法 Gauss消元,初等行变换,化原方程组为上三角型。 ? A | b? ? ...

    请记住:矩阵是否等价只须看矩阵的秩是否相同。 请记住:矩阵是否等价只须看矩阵的秩是否相同。满秩矩阵定义:若方阵 的秩与其阶数相等 则称A为满秩矩阵 的秩与其阶数相等, 为满秩矩阵; 定义:若方阵A的秩与其阶数相等,则称 为满秩......

    从前面的学习的知识知道, 只要知道系统模型,无论是哪种形式的数学模型, 都可以很方便的用MATLAB求出系统的零极点,...x Ax Bu y Cx Du 能控的充要条件(系统输入对状态的控制能力) 能控性矩阵Qc=(B AB A2B …An-1B)满秩,......

    命令如下: B=100+magic(5) 2.范得蒙矩阵 函数vander(V)生成以向量V为基础向量的范得蒙 矩阵。 3.希尔伯特矩阵 生成希尔伯特矩阵的函数是hilb(n)。MATLAB 中,有一个专门求希尔伯特矩阵的逆的函数 invhilb(n),其功能是求n阶的......

    Matlab 在矩阵求逆中的应用 秦海华 【期刊名称】《现代职业教育》 【年(卷),期】2016(000)018 【摘要】Matlab 是当今国际上公认的最优秀的科技应用软件之一。主要介绍 了 Matlab 在矩阵求逆中的应用,旨在增强学生对线性代数的学习......

    范得蒙矩阵 函数vander(V)生成以向量V为基础向量的范得 蒙矩阵。 3. 希尔伯特矩阵 生成希尔伯特矩阵的函数是hilb(n)。MATLAB中,有 一个专门求希尔伯特矩阵的逆的函数invhilb(n),其功 能是求n阶的希尔伯特矩阵的逆矩阵。 4. 托普......

    (A) 初等变换化矩阵A为阶梯矩阵 inv(A) 矩阵的逆;即 A-1 pinv(A) 矩阵的广义逆A+ null(A) 零空间的基阵 roth(A) 值空间的基阵 orth(A) 将A标准正交化 cond(A,flag) 矩阵的条件数, flag=2, 1, inf, 'fro'; ......

    矩阵满秩分解的一种简易方法_电脑基础知识_IT/计算机_专业资料 人阅读|次下载 矩阵满秩分解的一种简易方法_电脑基础知识_IT/计算机_专业资料。 ...

    第二章 Matlab矩阵和数组 ?由于Matlab自身的特点,它是一种 以科学计算为基础的...可以生成对角矩阵 产生伴随矩阵 产生希尔伯特矩阵 希尔伯特逆矩阵 产生帕斯卡矩阵(......

    用 Schmidt 正交化分解方法对矩阵进行 QR 分解时,所论矩阵必 须是列满秩矩阵...3.3.1 MATLAB自带QR分解函数计算 在 MATLAB 中调用:[Q0,R0]=qr(A),运行......

    在 MATLAB 中,函数 vander(V)生成以向量 V 为基础向量的范得蒙矩阵。 (3) 希尔伯特矩阵在 MATLAB 中,生成希尔伯特矩阵的函数是 hilb(n)。使用一般方法求逆会......

    MATLAB对矩阵A实 施左右翻转的函数是fliplr(A)。 4.矩阵的上下翻转 MATLAB对矩阵A实施上下翻转的函数是 flipud(A)。 2.4.3 矩阵的逆与伪逆 1.矩阵的逆对于一......

    §矩阵的满秩分解 本节讨论一个 m n 复矩阵 A 可以分解为两个与 A 的秩相同的矩阵之 积的问题。 定义设 m n 复矩阵 A 的秩为 r ,如果存在两个与 A......

    范得蒙矩阵 函数vander(V)生成以向量V为基础向量的范得 蒙矩阵。 3. 希尔伯特矩阵 生成希尔伯特矩阵的函数是hilb(n)。MATLAB中,有 一个专门求希尔伯特矩阵的逆的......

    更重要的是当 ( ( ( k) ( ( k) F ( x ) 的 J acobi 矩阵 F′ ...在 MATLAB715 环境中 ,应用逆 B royden 秩 1 方法 可以有效地解决工程与科学......

    3.在MATLAB中,还可以用linspace函数产生行向量。其调用格式为: linspace(a,b,...如果 X 为满秩矩阵,则 R 为一个阶数为 q=p-1的上三角阵,且满足R'R=X......

    trace(eye(4)); trace(magic(4)); trace(A); 5.矩阵化零矩阵: 对于非满秩矩阵A,若存在矩阵Z使得AZ=0且ZZ=I,则称 矩阵Z为矩阵A的化零矩阵。Matlab中......

    展开全文
  • 包括矩阵的LU,QR,Cholesky,奇异值,特征值,Schur,Jordan7种分解 传送门
  • Matlab矩阵分解

    千次阅读 2013-10-20 17:28:37
    1、常见的分解方法 (1)三角分解(LU分解) (2)正交分解(QR) (3)特征分解(eig分解) (4)奇异值分解(svd) (5)Chollesky分解
  • 特征分解 函数 eigeig: Find eigenvalues and eigenvectors 格式 d = eig(A) %求矩阵A的特征值d,以向量形式存放d。 d = eig(A,B) %A、B为方阵,求广义特征值d,以向量形式存放d。 [V,D] = eig(A) %计算A的特征...
  • matlab矩阵分解

    千次阅读 2018-11-22 21:14:56
    syms p real; %定义实数p A = [ ]; %输入一个矩阵A [V,D] = eig(A) %A的特征值为D... %通过特征值和特征向量求出矩阵 O = orth(V); %将特征向量正交规范化 [la,lb,lc,ld] = deal(D(1,1),D(2,2),D(3,3),D(4,4)); ...
  • 特征分解 函数 eig 格式 d = eig(A) %求矩阵A的特征值d,以向量形式存放d。 d = eig(A,B) %A、B为方阵,求广义特征值d,以向量形式存放d。 [V,D] = eig(A) %计算A的特征值对角阵D和特征向量V,使AV...
  • 特征分解函数 eig格式 d = eig(A)%求矩阵A的特征值d,以向量形式存放d。d = eig(A,B)%A、B为方阵,求广义特征值d,以向量形式存放d。[V,D] = eig(A)%计算A的特征值对角阵D和特征向量V,使AV=VD成立。[V,D] = eig(A...
  • matlab】 QR分解矩阵特征

    千次阅读 2018-05-28 15:18:00
    "QR_H.m" function [Q,R] = QR_tao(A) ...%输出正交矩阵Q和上三角矩阵R [n,n]=size(A); E = eye(n); X = zeros(n,1); R = zeros(n); P1 = E; for k=1:n-1 s = -sign(A(k,k))*norm(A(k:n,k)); R(k,k...
  • matlab特征分解

    千次阅读 2019-06-11 11:55:45
    矩阵A的特征分解: a=[1 2;3 4]; [u,v]=eig(a); %% eig test test1_1=u*v*inv(u); test1_2=u*v*u'; test1_3=sqrt(sum(u(:,1).^2)); test1_4=u'*u; test1_5=u(:,1)'*u(:,2); test1_1 = 1.0000 2.0000 3.000...
  • 特征分解 函数 eig 格式 d = eig(A)%求矩阵A的特征值d,以向量形式存放d。 d = eig(A,B)%A、B为方阵,求广义特征值d,以向量形式存放d。 [V,D] = eig(A)%计算A的特征值对角阵D和特征向量V,使AV...
  • Matlab中常用矩阵分解

    2020-11-25 23:03:54
    1.可逆方阵 --------------------------------------------三角分解(LU) 2.满秩矩阵 --------------------------------------------正三角分解(QR) ...T为上三角schur矩阵且其主对角线上的元素为X的特征值 (2)h
  • 计算一对矩阵的 QZ 分解,然后根据指定的特征值顺序对因子重新排序。计算一对矩阵 A 和 B 的 QZ 分解或广义 Schur 分解。此分解生成因子 AA=QAZ 和 BB=QBZ。A = magic(5);B = hilb(5);[AA,BB,Q,Z] = qz(A,B)AA = 5×...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 216
精华内容 86
关键字:

matlab矩阵特征分解

matlab 订阅