cupy.fill_diagonal#

cupy.fill_diagonal(a, val, wrap=False)[source]#

填充给定任意维度数组的主对角线。

对于 aa.ndim > 2 的数组,对角线是所有索引 a[i, i, ..., i] 都相同的位置列表。此函数原地修改输入数组,不返回值。

参数:
  • a (cupy.ndarray) – 数组,至少为二维。

  • val (scalar) – 要写入对角线的值。其类型必须与数组 a 的类型兼容。

  • wrap (bool) – 如果指定,对角线将在 N 列后“环绕”。这仅影响高矩阵。

示例

>>> a = cupy.zeros((3, 3), int)
>>> cupy.fill_diagonal(a, 5)
>>> a
array([[5, 0, 0],
       [0, 5, 0],
       [0, 0, 5]])

另请参阅

numpy.fill_diagonal()