本文简要介绍 python 语言中 scipy.linalg.block_diag
的用法。
用法:
scipy.linalg.block_diag(*arrs)#
从提供的数组创建块对角矩阵。
给定输入 A、B 和 C,输出将这些数组排列在对角线上:
[[A, 0, 0], [0, B, 0], [0, 0, C]]
- A, B, C, …: 数组,最多二维
输入数组。一维数组或类似数组的长度序列n被视为具有形状的二维数组
(1,n)
.
- D: ndarray
对角线上有 A、B、C、... 的数组。 D 与 A 具有相同的 dtype。
参数 ::
返回 ::
注意:
如果所有输入数组都是方阵,则输出称为块对角矩阵。
空序列(即大小为零的array-likes)将不会被忽略。值得注意的是, [] 和 [[]] 都被视为形状为
(1,0)
的矩阵。例子:
>>> import numpy as np >>> from scipy.linalg import block_diag >>> A = [[1, 0], ... [0, 1]] >>> B = [[3, 4, 5], ... [6, 7, 8]] >>> C = [[7]] >>> P = np.zeros((2, 0), dtype='int32') >>> block_diag(A, B, C) array([[1, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0], [0, 0, 3, 4, 5, 0], [0, 0, 6, 7, 8, 0], [0, 0, 0, 0, 0, 7]]) >>> block_diag(A, P, B, C) array([[1, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 3, 4, 5, 0], [0, 0, 6, 7, 8, 0], [0, 0, 0, 0, 0, 7]]) >>> block_diag(1.0, [2, 3], [[4, 5], [6, 7]]) array([[ 1., 0., 0., 0., 0.], [ 0., 2., 3., 0., 0.], [ 0., 0., 0., 4., 5.], [ 0., 0., 0., 6., 7.]])
相关用法
- Python SciPy linalg.bicgstab用法及代码示例
- Python SciPy linalg.bicg用法及代码示例
- Python SciPy linalg.bandwidth用法及代码示例
- Python SciPy linalg.eigvalsh_tridiagonal用法及代码示例
- Python SciPy linalg.cdf2rdf用法及代码示例
- Python SciPy linalg.LaplacianNd用法及代码示例
- Python SciPy linalg.solve_circulant用法及代码示例
- Python SciPy linalg.polar用法及代码示例
- Python SciPy linalg.clarkson_woodruff_transform用法及代码示例
- Python SciPy linalg.rsf2csf用法及代码示例
- Python SciPy linalg.hessenberg用法及代码示例
- Python SciPy linalg.tril用法及代码示例
- Python SciPy linalg.triu用法及代码示例
- Python SciPy linalg.svd用法及代码示例
- Python SciPy linalg.ishermitian用法及代码示例
- Python SciPy linalg.invhilbert用法及代码示例
- Python SciPy linalg.factorized用法及代码示例
- Python SciPy linalg.lu_factor用法及代码示例
- Python SciPy linalg.SuperLU用法及代码示例
- Python SciPy linalg.lsqr用法及代码示例
- Python SciPy linalg.cho_factor用法及代码示例
- Python SciPy linalg.fractional_matrix_power用法及代码示例
- Python SciPy linalg.eig_banded用法及代码示例
- Python SciPy linalg.tanhm用法及代码示例
- Python SciPy linalg.orthogonal_procrustes用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.linalg.block_diag。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。