PositiveDefiniteMatrixQ

PositiveDefiniteMatrixQ[m]

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

更多信息

范例

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

基本范例  (2)

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

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

可视化二次型的值:

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

范围  (10)

基本用法  (6)

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

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

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

PositiveDefiniteMatrixQ 测试任意精度的矩阵:

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

PositiveDefiniteMatrixQ 测试符号矩阵:

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

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

特殊矩阵  (4)

PositiveDefiniteMatrixQ 测试稀疏矩阵:

PositiveDefiniteMatrixQ 测试结构矩阵:

单位矩阵是正定矩阵:

HilbertMatrix 是正定矩阵:

应用  (15)

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

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

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

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

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

通过 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,当且仅当 为正定矩阵, 才是正定矩阵:

正定矩阵的来源  (6)

实非奇异 Covariance 矩阵总是对称的和正定的:

复矩阵是 Hermitian 矩阵:

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

如果向量是线性无关的,Gram 矩阵一定是正定矩阵:

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

非奇异 Hermitian 矩阵的平方是正定矩阵:

Lehmer 矩阵是对称正定矩阵:

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

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

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

正定矩阵的用途  (5)

通过 ,正定实对称矩阵或 metric 定义了内积:

验证 是对称和正定的:

正交化 TemplateBox[{}, Reals]^n 标准基,求标准正交基:

确认基是关于内积 标准正交的:

惯性张量的矩相当于旋转运动的质量. 例如,动能为 取代了 公式中的质量 ,角速度 取代了线速度 . 可以用正定对称矩阵来表示. 计算端点在原点和正坐标轴的四面体的惯性矩:

验证矩阵是对称的和正定的:

如果角速度是 ,计算动能:

由于 为正定矩阵,只要 非零,动能就是正的:

二阶导数检验对函数的临界点进行以下分类:如果 Hessian 矩阵为正定矩阵,则临界点为局部最小值,如果 Hessian 矩阵为负定矩阵,则临界点为局部最大值,如果 Hessian 矩阵为不定矩阵,则临界点为鞍点(如果 Hessian 矩阵不是这三种类型之一,则检验失败). 求二元函数的临界点:

计算 Hessian 矩阵

三个临界点中的最后一个是鞍点:

前两个点是局部极小点:

可视化函数. 红点和蓝点是极小点,绿点是鞍点:

求三变量函数的临界点:

计算 f 的 Hessian 矩阵:

前两个临界点是局部极小点:

最后三个点是鞍点:

对该函数而言,任何三个临界点都是线性相关的,因此它们都位于一个平面上:

计算平面的法线:

可视化函数,极小值为绿色,非极端临界点为红色:

CholeskyDecomposition 只适用于正定 Hermitian 矩阵:

的上三角分解是满足 TemplateBox[{b}, ConjugateTranspose].b=m 的矩阵

属性和关系  (15)

对于任何不是矩阵的 xPositiveDefiniteMatrixQ[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

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

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

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

正定矩阵是可逆的:

逆矩阵也是正定矩阵:

如果 是实正定矩阵,则存在 ,使得对于任意实向量 ,有 TemplateBox[{x}, Transpose].m.x>=delta ||x||^2 成立:

的对称部分的最小特征值:

验证 TemplateBox[{x}, Transpose].m.x>=delta ||x||^2

实对称正定矩阵的行列式和迹为正:

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

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

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

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

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

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

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

可能存在的问题  (2)

Hilbert 矩阵式正定矩阵:

m 的最小的特征值太小,在机器精度上无法确定为正:

在机器精度上,矩阵 m 的测试结果不是正定矩阵:

用足够高的精度来计算正的特征值将给出正确答案:

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

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

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

文本

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

CMS

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

APA

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

BibTeX

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

BibLaTeX

@online{reference.wolfram_2024_positivedefinitematrixq, organization={Wolfram Research}, title={PositiveDefiniteMatrixQ}, year={2007}, url={https://reference.wolfram.com/language/ref/PositiveDefiniteMatrixQ.html}, note=[Accessed: 17-November-2024 ]}