正定矩阵与半正定矩阵定义性质与理解

正定矩阵与半正定矩阵定义性质与理解正定矩阵在线性代数里 正定矩阵 positivedefi 有时会简称为正定阵 定义 AA 是 n 阶方阵 如果对任何非零向量 xx 都有 xTAx0x TAx0 其中 xTx T 表示 xx 的转置 就称 AA 正定矩阵 性质 正定矩阵的行列式恒为正 实对称矩阵 AA 正定当且仅当 AA 与单位矩阵合同 两个正定矩阵的和是正定矩阵 正实数与正定矩阵的乘积是正定矩阵

正定矩阵

性质:

  1. 正定矩阵的行列式恒为正
  2. 实对称矩阵 A 正定当且仅当

    A
    与单位矩阵合同;
  3. 两个正定矩阵的和是正定矩阵;
  4. 正实数与正定矩阵的乘积是正定矩阵。

等价命题:
对于n阶实对称矩阵 A ,下列条件是等价的:



  1. A
    是正定矩阵;

    • A 的一切顺序主子式均为正;


    • A
      的一切主子式均为正;
    • A 的特征值均为正
    • 存在实可逆矩阵

      C使A=CC
      • 存在秩为n的m×n实矩阵 B使A=BB
      • 存在主对角线元素全为正的实三角矩阵 R使A=RR
        1. 计算A的各阶顺序主子式。若A的各阶顺序主子式均大于零,则A是正定的;若A的各阶顺序主子式中,奇数阶主子式为负,偶数阶为正,则A为负定的。

          例: 判断矩阵是否正定

          Q=631320104



          解:对称矩阵Q的三个顺序主子式依次为

          |6|=6>0


          6332=3>0


          631320104=10>0


          矩阵Q是正定的






        半正定矩阵

        A 是实对称矩阵。如果对任意的实非零列向量

        xxTAx0
        ,就称A为半正定矩阵。
        对于半正定矩阵来说,相应的条件应改为所有的主子式非负。顺序主子式非负并不能推出矩阵是半正定的
        性质:

        1. 半正定矩阵的行列式是非负的;
        2. 两个半正定矩阵的和是半正定的;
        3. 非负实数与半正定矩阵的数乘矩阵是半正定的。

        等价条件:

        1. A 是半正定的;


        2. A
          的所有主子式均为非负的;
        3. A 的特征值均为非负的;
        4. 存在n阶实矩阵

          C使A=CC
        5. 存在秩为r的r×n实矩阵 B ,使

          A=BB

        直观理解正定、半正定矩阵:

        XTMX0
        XTY0  (Y=MX)
        cos(θ)=XTY||X||||Y||0
        ||X||, ||Y||代表向量 X,Y的长度,\theta是他们之间的夹角。正定、半正定矩阵的直觉代表一个向量经过它的变化后的向量与其本身的夹角小于等于90度。


        求出A的所有特征值。若A的特征值均为正数,则A是正定的;若A的特征值均为负数,则A为负定的。

      根据正定矩阵的定义及性质,判别对称矩阵A的正定性有两种方法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210893.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午11:40
下一篇 2026年3月18日 下午11:40


相关推荐

  • pycharm下的Python console 调试当前程序方法

    pycharm下的Python console 调试当前程序方法两种方法 方法一 选中要运行的代码 右键 ExecuteSelec Alt Shift E 方法二 菜单栏 Run EditConfigur 勾选 Showcommandl

    2026年3月27日
    1
  • dirsearch使用方法_search函数的使用

    dirsearch使用方法_search函数的使用一、安装:Kali下:gitclonehttps://github.com/maurosoria/dirsearchcddirsearch/Windows下:GitHub的下载地址为:https://github.com/maurosoria/dirsearch其中,db文件夹为自带字典文件夹;reports为扫描日志文件夹;dirsearch.py为主程序文件(注:dirsearch程序必须使用python3以上才能运行);安装完成后将目录地址改为主程序解压地址,使用管理员

    2022年10月6日
    4
  • 使用WiX Toolset创建.NET程序发布Bootstrapper(安装策略管理)(一)——初识WiX

    使用WiX Toolset创建.NET程序发布Bootstrapper(安装策略管理)(一)——初识WiXVisualStudio打包安装七宗罪开发.NET的人,肯定会使用VisualStudio里面自带的MSI打包安装工具框架。如果是在一般情况下,这个打包安装框架已经完全足够满足产品发布安装的需要了。它的制成品,是一个setup.exe,一个MSI安装文件,如果你选择项目以来的其他.

    2022年7月20日
    14
  • Python中的lambda的简单介绍[通俗易懂]

    Python中的lambda的简单介绍[通俗易懂]Python中的lambda的简单介绍1、lambda是什么?123456789func=lambda x:x+1print(func(1))#2print(fu

    2022年7月5日
    29
  • CausalDiscoveryToolbox:因果建模、因果图代码实现

    CausalDiscoveryToolbox:因果建模、因果图代码实现Cdt工具包实现了端到端的因果建模方法,支持从观测数据中恢复直接依赖关系(因果图的骨架)和变量之间的因果关系。基于python实现了许多用于图结构恢复的算法,接口简单,易于上手。

    2022年8月14日
    8
  • JAVA基础:二维数组初始化

    JAVA基础:二维数组初始化二维数组的初始化同一维数组初始化类似,同样可以使用”{}”大括号完成二维数组的初始化,不同的是每个一维数组的元素使用大括号定义新的一维数组,即一维数组的每个元素又是一个新的一维数组。定义一个二维数组:把二维数组所有的赋同一个初始化值arrayType[][]arrayName=new arrayTyp[n][m];for(inti=0;iarrayName.l

    2022年5月26日
    54

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号