构造一个多维度对称矩阵,并判断其与该矩阵转置的关系。
时间: 2024-09-18 19:16:33 浏览: 34
在Python的NumPy库中,可以构造一个多维度的对称矩阵,通常这样的矩阵是对角线及主对角线以上或以下的部分完全相同的。例如,二维对称矩阵就是一个正方形矩阵,其左上到右下的对角线元素与其对应的下标相反的元素相等。
下面是如何创建一个二维对称矩阵的例子:
```python
import numpy as np
# 设定矩阵大小
n = 3
# 创建对称矩阵
symmetric_matrix = np.triu(np.eye(n), k=0) + np.tril(np.eye(n), -1)
print("对称矩阵:")
print(symmetric_matrix)
```
在这里,`np.eye(n)`生成一个单位矩阵,`np.triu`和`np.tril`则用于提取对角线上方和下方的部分,它们加起来就是完整的对称矩阵。
要验证这个矩阵是否确实是它自己的转置,可以直接比较两者:
```python
is_symmetric = symmetric_matrix.allclose(symmetric_matrix.T)
print(f"矩阵是否对称: {is_symmetric}")
```
`allclose`函数会检查两个矩阵的所有元素是否几乎相等(允许有很小的精度误差)。
阅读全文