scipy.linalg.invpascal¶
- scipy.linalg.invpascal(n, kind='symmetric', exact=True)[源代码]¶
返回n x n Pascal矩阵的逆。
帕斯卡矩阵是包含二项式系数作为其元素的矩阵。
- 参数
- n集成
要创建的矩阵的大小;即,结果为n x n矩阵。
- kind字符串,可选
必须是“对称”、“较低”或“较高”之一。默认值为“对称”。
- exact布尔值,可选
如果 exact 为True,则结果为以下类型的数组
numpy.int64
(如果 n <=35)或Python整数的对象数组。如果 exact 为false,则矩阵中的系数是使用scipy.special.comb
使用 exact=False 。结果将是一个浮点数组,对于大型 n ,则数组中的值将不是精确的系数。
- 退货
- invp(n,n)ndarray
帕斯卡矩阵的逆。
参见
注意事项
0.16.0 新版功能.
参考文献
- 1
- 2
科恩,A.M.,“帕斯卡矩阵的逆”,“数学公报”,第59期(408),第111-112页,1975年。
示例
>>> from scipy.linalg import invpascal, pascal >>> invp = invpascal(5) >>> invp array([[ 5, -10, 10, -5, 1], [-10, 30, -35, 19, -4], [ 10, -35, 46, -27, 6], [ -5, 19, -27, 17, -4], [ 1, -4, 6, -4, 1]])
>>> p = pascal(5) >>> p.dot(invp) array([[ 1., 0., 0., 0., 0.], [ 0., 1., 0., 0., 0.], [ 0., 0., 1., 0., 0.], [ 0., 0., 0., 1., 0.], [ 0., 0., 0., 0., 1.]])
的用法示例 kind 和 exact :
>>> invpascal(5, kind='lower', exact=False) array([[ 1., -0., 0., -0., 0.], [-1., 1., -0., 0., -0.], [ 1., -2., 1., -0., 0.], [-1., 3., -3., 1., -0.], [ 1., -4., 6., -4., 1.]])