PositiveSemidefiniteMatrixQ

PositiveSemidefiniteMatrixQ[m]

如果 m 是显式半正定矩阵,给出 True,否则给出 False.

更多信息和选项

  • 如果对于所有向量 xRe[Conjugate[x].m.x]0 成立,则矩阵 m 是半正定的. »
  • PositiveSemidefiniteMatrixQ 适用于符号以及数值矩阵.
  • 对于近似矩阵,选项 Tolerance->t 可用于表明将所有满足 λt λmax 的特征值 λ 视为零,其中 λmax 是幅值最大的特征值.
  • 选项 Tolerance 具有默认值 Automatic.

范例

打开所有单元关闭所有单元

基本范例  (2)

测试 2×2 的实矩阵是否为显式半正定矩阵:

这意味着对于所有向量 ,二次型 成立:

可视化二次型的值:

测试 3×3 Hermitian 矩阵是否为半正定矩阵:

范围  (10)

基本用法  (6)

测试一个实机器精度矩阵是否为显式半正定矩阵:

测试一个复矩阵否为半正定矩阵:

测试一个精确矩阵否为半正定矩阵:

PositiveSemidefiniteMatrixQ 测试任意精度的矩阵:

随机矩阵通常不是半正定矩阵:

PositiveSemidefiniteMatrixQ 测试符号矩阵:

b=-TemplateBox[{a}, Conjugate] 时矩阵为半正定矩阵:

PositiveSemidefiniteMatrixQ 可高效处理大型数值矩阵:

特殊矩阵  (4)

PositiveSemidefiniteMatrixQ 测试稀疏矩阵:

PositiveSemidefiniteMatrixQ 测试结构矩阵:

单位矩阵是半正定矩阵:

HilbertMatrix 是半正定矩阵:

选项  (1)

Tolerance  (1)

产生具有阶数为 10-12 的随机扰动的实数对角矩阵:

调整选项 Tolerance 接受矩阵作为半正定矩阵:

应用  (13)

半正定矩阵的几何与代数性质  (5)

考虑一个 2×2 的实半正定矩阵及其相关的实二次型 q=TemplateBox[{x}, Transpose].m.x

因为 是正定矩阵,所以水平集是椭圆:

的图则是向上的椭圆抛物面:

但是,椭圆可以退化,变成线:

的图则变为抛物线上的圆柱体:i

在更极端的情况下,由于 ,水平集可以是整个平面:

对于 的实半正定矩阵,水平集是 -椭圆体:

在三维空间中,可以退化为椭圆上的圆柱体:

以及平面:

通过 q=TemplateBox[{x}, ConjugateTranspose].m.x,Hermitian 矩阵定义了一个实二次型:

如果 是半正定矩阵,对于所有输入, 非负:

输入为实数的情况下可视化

对于实值矩阵 ,只有对称的部分决定 是否为半正定矩阵. 写为 为对称部分, 为非对称部分:

由于 为实对称矩阵,TemplateBox[{{(, {TemplateBox[{x}, ConjugateTranspose, SyntaxForm -> SuperscriptBox], ., s, ., x}, )}}, Conjugate]=TemplateBox[{{(, {TemplateBox[{x}, ConjugateTranspose, SyntaxForm -> SuperscriptBox], ., s, ., x}, )}}, ConjugateTranspose]=TemplateBox[{x}, ConjugateTranspose].TemplateBox[{s}, ConjugateTranspose].TemplateBox[{{(, TemplateBox[{x}, ConjugateTranspose, SyntaxForm -> SuperscriptBox], )}}, ConjugateTranspose]=TemplateBox[{x}, ConjugateTranspose].s.x,意味着 TemplateBox[{x}, ConjugateTranspose].s.x 是实矩阵:

同样,由于 为实非对称矩阵,有 TemplateBox[{{(, {TemplateBox[{x}, ConjugateTranspose, SyntaxForm -> SuperscriptBox], ., a, ., x}, )}}, Conjugate]=-TemplateBox[{x}, ConjugateTranspose].a.xTemplateBox[{x}, ConjugateTranspose].a.x 为虚矩阵:

因此,Re(TemplateBox[{x}, ConjugateTranspose].m.x)=TemplateBox[{x}, ConjugateTranspose].s.x,当且仅当 为半正定矩阵, 才是半正定矩阵:

对于复矩阵 ,只有 Hermitian 部分决定 是否为半正定矩阵. 写为 是 Hermitian 矩阵, 为反埃尔米特矩阵:

由于 是 Hermitian 矩阵,TemplateBox[{{(, {TemplateBox[{x}, ConjugateTranspose], ., h, ., x}, )}}, Conjugate]=TemplateBox[{{(, {TemplateBox[{x}, ConjugateTranspose], ., h, ., x}, )}}, ConjugateTranspose]=TemplateBox[{x}, ConjugateTranspose].TemplateBox[{h}, ConjugateTranspose].TemplateBox[{{(, TemplateBox[{x}, ConjugateTranspose, SyntaxForm -> SuperscriptBox], )}}, ConjugateTranspose]=TemplateBox[{x}, ConjugateTranspose].h.x,意味着 TemplateBox[{x}, ConjugateTranspose].h.x 是实矩阵:

同样,由于 为反埃尔米特矩阵,有 TemplateBox[{{(, {TemplateBox[{x}, ConjugateTranspose, SyntaxForm -> SuperscriptBox], ., a, ., x}, )}}, Conjugate]=-TemplateBox[{x}, ConjugateTranspose].a.xTemplateBox[{x}, ConjugateTranspose].a.x 是虚矩阵:

因此,Re(TemplateBox[{x}, ConjugateTranspose].m.x)=TemplateBox[{x}, ConjugateTranspose].h.x,当且仅当 为半正定矩阵, 才是半正定矩阵:

半正定矩阵的来源  (8)

Covariance 矩阵总是对称的和半正定的:

复矩阵是 Hermitian 矩阵:

为方阵,计算 SingularValueDecomposition[m]

矩阵式半正定矩阵:

Gram 矩阵是 个向量的点积组成的 对称矩阵:

Gram 矩阵一定是半正定矩阵:

WishartMatrixDistribution 得到的矩阵是实对称半正定矩阵:

Hermitian 矩阵的平方是半正定矩阵:

每个反厄米特矩阵都是半正定矩阵:

Lehmer 矩阵是对称半正定矩阵:

它的逆矩阵是三对角矩阵,同时也是对称半正定矩阵:

矩阵 Min[i,j] 一定是对称半正定矩阵:

它的逆矩阵是三对角矩阵,同时也是对称半正定矩阵:

属性和关系  (13)

对于任何不是矩阵的 xPositiveSemidefiniteMatrixQ[x] 返回 False

如果对于所有向量 Re(TemplateBox[{x}, ConjugateTranspose].m.x)>=0,则矩阵 是半正定矩阵:

Im(TemplateBox[{x}, ConjugateTranspose].m.x) 的正负无关:

当且仅当实矩阵的对称部分是半正定的,实矩阵 才是半正定矩阵:

一般情况下,当且仅当矩阵的 Hermitian 部分是半正定的,矩阵 才是半正定矩阵:

当且仅当实对称矩阵的特征值都是非负的,实对称矩阵才是半正定矩阵:

该陈述更普遍适用于 Hermitian 矩阵:

普通矩阵的所有特征值可以非负而不是半正定矩阵:

同样,一个矩阵可以是半正定的,但没有非负特征值:

失败是特征值为复数造成的:

半正定矩阵的特征值的实部必须非负:

当且仅当对角元素有非负实部,对角矩阵才是半正定矩阵:

半正定矩阵的通用形式为 u.d.TemplateBox[{u}, ConjugateTranspose]+a,其中, 为对角半正定矩阵:

划分为 Hermitian 和反厄米特部分:

根据谱定理,可用 JordanDecomposition 酉对角化:

矩阵 是对角矩阵,且对角元素非负:

矩阵 是酉矩阵:

验证 m=u.d.TemplateBox[{u}, ConjugateTranspose]+a

当且仅当 是半负定矩阵,矩阵 才是半正定矩阵:

正定矩阵一定是半正定矩阵:

有非正定的半正定矩阵:

半正定矩阵不可能是不定或半负定矩阵:

实对称半正定矩阵的行列式和迹非负:

这同样适用于半正定 Hermitian 矩阵:

实对称半正定矩阵 有唯一定义的平方根 ,使得 成立:

平方根 是半正定实对称矩阵:

半正定厄米特矩阵 有唯一定义的平方根 ,使得 成立:

平方根 是半正定厄米特矩阵:

两个对称半正定矩阵的 Kronecker 积是对称半正定矩阵:

用一个负定矩阵替换其中的一个矩阵,将得到一个半负定矩阵:

可能存在的问题  (2)

CholeskyDecomposition 不用于对称或者奇异的 Hermitian 半正定矩阵:

PositiveSemidefiniteMatrixQ 将给出 False,除非它可以证明一个符号矩阵是半正定的:

同时使用 EigenvaluesReduce 可给出更精确的结果:

Wolfram Research (2014),PositiveSemidefiniteMatrixQ,Wolfram 语言函数,https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.

文本

Wolfram Research (2014),PositiveSemidefiniteMatrixQ,Wolfram 语言函数,https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.

CMS

Wolfram 语言. 2014. "PositiveSemidefiniteMatrixQ." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.

APA

Wolfram 语言. (2014). PositiveSemidefiniteMatrixQ. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html 年

BibTeX

@misc{reference.wolfram_2024_positivesemidefinitematrixq, author="Wolfram Research", title="{PositiveSemidefiniteMatrixQ}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_positivesemidefinitematrixq, organization={Wolfram Research}, title={PositiveSemidefiniteMatrixQ}, year={2014}, url={https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html}, note=[Accessed: 22-November-2024 ]}