cupy.gradient#
- cupy.gradient(f, *varargs, axis=None, edge_order=1)[源代码][源代码]#
返回一个 N 维数组的梯度。
梯度是使用在内部点上的二阶精确中心差分计算的,并且在边界处使用一阶或二阶精确的一侧(前向或后向)差分。因此,返回的梯度与输入数组具有相同的形状。
- 参数:
f (cupy.ndarray) – 一个包含标量函数样本的N维数组。
varargs (list of scalar or array, optional) – f 值之间的间距。所有维度的默认单位间距。可以使用以下方式指定间距:1. 单个标量来指定所有维度的样本距离。2. N 个标量来为每个维度指定一个恒定的样本距离。例如 dx, dy, dz, … 3. N 个数组来指定沿 F 的每个维度的值的坐标。数组的长度必须与相应维度的大小匹配。4. 任何 N 个标量/数组的组合,具有 2 和 3 的含义。如果给出了 axis,则 varargs 的数量必须等于轴的数量。默认值:1。
edge_order ({1, 2}, optional) – 梯度是使用边界处的 N 阶精确差分计算的。默认值:1。
axis (None or int or tuple of ints, optional) – 梯度仅沿给定的轴或多个轴计算。默认(axis = None)是计算输入数组所有轴的梯度。轴可以是负数,在这种情况下,它从最后一个轴计数到第一个轴。
- 返回:
一组 ndarray(如果只有一个维度,则为单个 ndarray),对应于 f 对每个维度的导数。每个导数与 f 具有相同的形状。
- 返回类型:
gradient (cupy.ndarray or list of cupy.ndarray)
参见
numpy.gradient()