OrthogonalMatrixQ

OrthogonalMatrixQ[m]

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

更多信息和选项

  • 若有 pqTranspose[m].mq×q 单位矩阵,或者 pqm.Transpose[m]p×p 单位矩阵,则 p×q 矩阵 m 为正交的.
  • OrthogonalMatrixQ 适用于符号和数值矩阵.
  • 可以给出以下选项:
  • Normalized True测试矩阵的列是否被归一化
    SameTest Automatic检验表达式相等的函数
    Tolerance Automatic数值近似的误差允许值
  • 对于精确和符号式矩阵,选项 SameTest->f 表明,如果 f[aij,bij] 给出 True,则认为 aijbij 两项相等.
  • 对于近似矩阵,选项 Tolerance->t 可用于表示满足 γt 的范数 γ=m.mT-In 当作零,其中 In 为单位矩阵.

范例

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

基本范例  (2)

测试 2×2 的数值矩阵是否为正交矩阵:

测试 3×3 的符号矩阵是否为正交矩阵:

验证条件 TemplateBox[{m}, Transpose].m=I

范围  (14)

基本用法  (6)

测试一个实矩阵否为正交矩阵:

实正交矩阵也是酉矩阵:

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

该矩阵满足 TemplateBox[{m}, Transpose].m=I

复正交矩阵不是酉矩阵:

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

把矩阵变为正交矩阵:

OrthogonalMatrixQ 测试任意精度的矩阵:

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

OrthogonalMatrixQ 测试符号矩阵:

时矩阵为正交矩阵:

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

特殊矩阵  (4)

OrthogonalMatrixQ 测试稀疏矩阵:

OrthogonalMatrixQ 测试结构矩阵:

单位矩阵是正交矩阵:

HilbertMatrix 不是正交矩阵:

矩形半正交矩阵  (4)

测试矩形矩阵是否为半正交矩阵:

由于列多于行,这表明行是标准正交的:

列不是标准正交的:

测试行多于列的矩阵:

矩阵的列是标准正交的:

行不是标准正交的:

生成随机正交矩阵:

行的任意子集为矩形半正交矩阵:

列的任意子集也一样:

矩形单位矩阵为半正交矩阵:

选项  (4)

Normalized  (2)

符号正交矩阵的列通常不归一化到 1:

不要测试列是否已归一化:

将正交矩阵的第二列乘以 2:

NormalizedFalseOrthogonalMatrixQm 的测试结果依然为 True

但是,对 Transpose[m] 的结果则不会为真:

这是因为 TemplateBox[{m}, Transpose].m 是对角矩阵,但 m.TemplateBox[{m}, Transpose] 不是:

SameTest  (1)

对于正实数 ,该矩阵是正交的,但 OrthogonalMatrixQ 给出 False

使用选项 SameTest 得到正确答案:

Tolerance  (1)

生成正交实值矩阵,具有一些阶数为 10-13 的随机扰动:

q.q 在主对角线外,不是精确的零:

调整选项 Tolerance,以接受矩阵为正交矩阵:

Tolerance 应用于下值:

应用  (10)

正交矩阵的来源  (5)

TemplateBox[{}, Reals]^n 的任意标准正交基都可组成正交矩阵:

基是标准正交的:

将基向量作为矩阵的行,形成正交矩阵:

将基向量作为列,也可形成正交矩阵:

Orthogonalize 应用于实线性独立向量可生成正交矩阵:

矩阵不必是方阵,在这种情况下,生成的矩阵是半正交矩阵:

但起始矩阵必须是满秩矩阵:

所有旋转矩阵都是正交矩阵:

所有置换矩阵都是正交矩阵:

CircularRealMatrixDistribution 得到的矩阵是正交矩阵:

正交矩阵的用途  (5)

正交矩阵保留了 TemplateBox[{}, Reals]^n 上的标准内积. 换句话说,如果 是正交矩阵, 为向量,则

这意味着向量之间的角度不变:

由于范数是从内积导出的,因此也保留了范数:

任何正交矩阵都表示旋转和/或反射. 如果矩阵的行列式为 ,则为旋转. 如果行列式是 ,则矩阵包含反射. 考虑以下矩阵:

该矩阵是正交矩阵且行列式为

因此,它表示旋转;笛卡尔单位向量 保持它们的相对位置:

下面的矩阵是正交矩阵,但行列式为

因此,它包含反射;笛卡尔单位向量 的相对位置被颠倒:

正交矩阵在许多矩阵分解中起着重要作用:

对于所有非零实向量 ,矩阵 一定是正交矩阵:

被称为 Householder 反射;因为它的行列式为

它表示通过垂直于 的平面的反射,使得 变成

不会改变任何垂直于 的向量:

在矩阵计算中, 用于将给定列向量 的选定分量设为零:

求满足以下微分方程的函数

通过与非对称矩阵 相乘,表示与 的叉积:

计算矩阵指数 ,并用它来定义方程的解:

验证 满足微分方程和初始条件:

对于 的所有值,矩阵 是正交矩阵:

因此,解的轨道与原点的距离恒定,在本例中是一个圆:

属性和关系  (14)

如果 m.Transpose[m]IdentityMatrix[n],则矩阵是正交的:

对于近似矩阵,单位阵近似为真:

正交矩阵的逆是它的转置:

因此,逆矩阵和转置矩阵也是正交矩阵:

实正交矩阵保留 TemplateBox[{}, Reals]^n 中向量的标准内积:

因此,实正交矩阵也保留了范数:

所有实值矩阵都是酉矩阵:

而复数酉矩阵通常不是正交矩阵:

正交矩阵的乘积还是正交矩阵:

实值正交矩阵是正规矩阵:

复值正交矩阵不一定是正规矩阵:

实值正交矩阵的特征值位于单位圆上:

Eigenvalues 求特征值:

验证它们位于单位圆上:

这不适用于复值正交矩阵:

实正交矩阵有一组完整的特征向量:

因此,它们必须是可对角化的:

Eigenvectors 求特征向量:

复正交矩阵可能无法对角化:

对于实正交矩阵,奇异值全部为 1:

对于复正交矩阵,这不一定成立:

正交矩阵的行列式是 1 或

实正交矩阵的 2-norm 总是为 1:

对于复正交矩阵,这不一定成立:

正交矩阵的整数幂还是正交矩阵:

对于实非对称矩阵 mMatrixExp[m] 是正交矩阵和酉矩阵:

对于复非对称矩阵 m,矩阵指数是正交矩阵,但(一般情况下)不是酉矩阵:

OrthogonalMatrix 可用于明确构建正交矩阵:

这满足 OrthogonalMatrixQ

可能存在的问题  (1)

OrthogonalMatrixQ 对实矩阵和复矩阵都使用定义 TemplateBox[{m}, Transpose].m=I_n

这些复矩阵不必是正规矩阵或具有实正交矩阵的许多性质:

UnitaryMatrixQ 测试的是更常见的定义 TemplateBox[{m}, ConjugateTranspose].m=I_n,可确保复矩阵是正规矩阵:

或者,测试元素是否为实数以限制必须是实正交矩阵:

巧妙范例  (1)

旋转矩阵是正交的:

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

文本

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

CMS

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

APA

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

BibTeX

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

BibLaTeX

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