scipy.linalg.invhilbert¶
- scipy.linalg.invhilbert(n, exact=False)[源代码]¶
阶希尔伯特矩阵的求逆 n 。
希尔伯特矩阵的逆中的项是整数。什么时候 n 大于14,则反转中的某些条目超过了64位整数的上限。这个 exact 参数提供了两个选项来处理这些大整数。
- 参数
- n集成
希尔伯特矩阵的阶数。
- exact布尔值,可选
如果为false,则返回的数组的数据类型为np.float64,并且该数组是反数组的近似值。如果为True,则该数组是精确的整数逆数组。为了在n>14时表示精确的反数,返回的数组是一个长整数的对象数组。对于n<=14,精确的倒数将作为数据类型为np.int64的数组返回。
- 退货
- invh(n,n)ndarray
如果满足以下条件,则数组的数据类型为np.float64 exact 是假的。如果 exact 为True,则数据类型为np.int64(对于n<=14)或Object(对于n>14)。在后一种情况下,数组中的对象将是长整数。
参见
hilbert
创建一个希尔伯特矩阵。
注意事项
0.10.0 新版功能.
示例
>>> from scipy.linalg import invhilbert >>> invhilbert(4) array([[ 16., -120., 240., -140.], [ -120., 1200., -2700., 1680.], [ 240., -2700., 6480., -4200.], [ -140., 1680., -4200., 2800.]]) >>> invhilbert(4, exact=True) array([[ 16, -120, 240, -140], [ -120, 1200, -2700, 1680], [ 240, -2700, 6480, -4200], [ -140, 1680, -4200, 2800]], dtype=int64) >>> invhilbert(16)[7,7] 4.2475099528537506e+19 >>> invhilbert(16, exact=True)[7,7] 42475099528537378560