Python numpy linalg.matrix

您所在的位置:网站首页 编程power用法 Python numpy linalg.matrix

Python numpy linalg.matrix

2024-07-14 01:20| 来源: 网络整理| 查看: 265

将方阵提高到(整数)次幂 n。

对于正整数n,幂是通过重复矩阵平方和矩阵乘法计算的。如果n == 0,返回与M形状相同的单位矩阵。如果n < 0,计算倒数,然后将其提升为abs(n).

注意

当前不支持对象矩阵堆栈。

参数: a: (…, M, M) 数组

矩阵为“powered”。

n: int

index 可以是任何整数或长整数、正数、负数或零。

返回: a**n: (..., M, M) ndarray 或矩阵对象

返回值与 M 的形状和类型相同;如果 index 为正或零,则元素的类型与 M 的相同。如果 index 为负,则元素为浮点数。

抛出: LinAlgError

对于不是正方形的矩阵或(对于负幂)不能进行数字反转的矩阵。

例子: >>> from numpy.linalg import matrix_power >>> i = np.array([[0, 1], [-1, 0]]) # matrix equiv. of the imaginary unit >>> matrix_power(i, 3) # should = -i array([[ 0, -1], [ 1, 0]]) >>> matrix_power(i, 0) array([[1, 0], [0, 1]]) >>> matrix_power(i, -3) # should = 1/(-i) = i, but w/ f.p. elements array([[ 0., 1.], [-1., 0.]])

更复杂的例子

>>> q = np.zeros((4, 4)) >>> q[0:2, 0:2] = -i >>> q[2:4, 2:4] = i >>> q # one of the three quaternion units not equal to 1 array([[ 0., -1., 0., 0.], [ 1., 0., 0., 0.], [ 0., 0., 0., 1.], [ 0., 0., -1., 0.]]) >>> matrix_power(q, 2) # = -np.eye(4) array([[-1., 0., 0., 0.], [ 0., -1., 0., 0.], [ 0., 0., -1., 0.], [ 0., 0., 0., -1.]])


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3