1.源码实现
import numpy as np
# 希尔伯特矩阵
def hilb(n):
H = np.zeros((n, n))
for i in range(n):
for j in range(n):
H[i][j] = 1/(i+j+1)
return H
# 希尔伯特矩阵的逆矩阵
def invhilb(n):
H = np.zeros((n, n))
for i in range(n):
for j in range(n):
H[i][j] = 1/(i+j+1)
return np.linalg.inv(H)
print(hilb(3))
print(invhilb(3))
2.运行及其结果
python3 hilb.py
[[ 1. 0.5 0.33333333]
[ 0.5 0.33333333 0.25 ]
[ 0.33333333 0.25 0.2 ]]
[[ 9. -36. 30.]
[ -36. 192. -180.]
[ 30. -180. 180.]]
网友评论