invpascal#
- scipy.linalg.invpascal(n, kind='symmetric', exact=True)[source]#
- Returns the inverse of the n x n Pascal matrix. - The Pascal matrix is a matrix containing the binomial coefficients as its elements. - Parameters:
- nint
- The size of the matrix to create; that is, the result is an n x n matrix. 
- kindstr, optional
- Must be one of ‘symmetric’, ‘lower’, or ‘upper’. Default is ‘symmetric’. 
- exactbool, optional
- If exact is True, the result is either an array of type - numpy.int64(if n <= 35) or an object array of Python integers. If exact is False, the coefficients in the matrix are computed using- scipy.special.combwith exact=False. The result will be a floating point array, and for large n, the values in the array will not be the exact coefficients.
 
- Returns:
- invp(n, n) ndarray
- The inverse of the Pascal matrix. 
 
 - See also - Notes - Added in version 0.16.0. - References [1]- “Pascal matrix”, https://en.wikipedia.org/wiki/Pascal_matrix [2]- Cohen, A. M., “The inverse of a Pascal matrix”, Mathematical Gazette, 59(408), pp. 111-112, 1975. - Examples - >>> 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.]]) - An example of the use of kind and 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.]])