通用函数 (cupy.ufunc)#
提示
NumPy API 参考:通用函数 (numpy.ufunc) <https://numpy.org/doc/stable/reference/ufuncs.html>`_
CuPy 提供了通用函数(也称为 ufunc)来支持各种元素级操作。CuPy 的 ufunc 支持 NumPy 的以下特性:
广播
输出类型确定
转换规则
ufunc#
|
通用函数。 |
方法#
这些方法仅适用于选定的ufuncs。
ufunc.outer: 所有 ufuncsufunc.at:add(),subtract(),maximum(),minimum(),bitwise_and(),bitwise_or(),bitwise_xor()
提示
如果你需要支持其他ufuncs,请在 问题跟踪器 中提交功能请求以及你的用例。
可用的ufuncs#
数学运算#
|
逐元素相加两个数组。 |
|
逐元素地减去参数。 |
|
对两个数组进行逐元素相乘。 |
matmul(x1, x2, /, out=None, **kwargs) |
|
true_divide(x1, x2, /, out=None, *, casting='same_kind', dtype=None) |
|
|
计算 |
|
计算 |
|
逐元素真除法(即 |
|
逐元素的向下取整除法(即 |
|
逐元素取数值负值。 |
|
对数值正元素逐元素取值。 |
|
计算 |
|
第一个数组的元素按第二个数组的元素逐个求幂。 |
mod(x1, x2, /, out=None, *, casting='same_kind', dtype=None) |
|
|
计算Python除法的余数,逐元素进行。 |
|
计算 C 除法的余数,逐元素进行。 |
|
|
|
逐元素绝对值函数。 |
|
逐元素计算绝对值。 |
|
将数组的每个元素四舍五入到最近的整数。 |
|
逐元素符号函数。 |
|
计算 Heaviside 阶跃函数。 |
conjugate(x, /, out=None, *, casting='same_kind', dtype=None) |
|
|
返回元素的复共轭。 |
|
逐元素指数函数。 |
|
逐元素以2为底的指数运算。 |
|
逐元素自然对数函数。 |
|
逐元素二进制对数函数。 |
|
逐元素常用对数函数。 |
|
计算 |
|
计算 |
|
逐元素平方根函数。 |
|
逐元素平方函数。 |
|
逐元素立方根函数。 |
|
计算 |
|
计算 |
|
计算 |
三角函数#
|
逐元素正弦函数。 |
|
逐元素余弦函数。 |
|
逐元素正切函数。 |
|
逐元素反正弦函数(也称为 |
|
逐元素反余弦函数(也称为 |
|
逐元素反正切函数(也称为 |
|
两个数组比值的逐元素反正切。 |
|
计算给定长度的正交向量的斜边。 |
|
逐元素的双曲正弦函数。 |
|
逐元素双曲余弦函数。 |
|
逐元素双曲正切函数。 |
|
逐元素的双曲正弦函数的反函数。 |
|
逐元素的双曲余弦函数的反函数。 |
|
逐元素的双曲正切函数的逆函数。 |
rad2deg(x, /, out=None, *, casting='same_kind', dtype=None) |
|
|
将角度从度数转换为弧度,逐元素进行。 |
radians(x, /, out=None, *, casting='same_kind', dtype=None) |
|
|
将角度从弧度转换为逐元素的度数。 |
位操作函数#
|
计算两个数组元素级的按位与。 |
|
计算两个数组元素的按位或。 |
|
计算两个数组元素级的按位异或。 |
|
计算数组元素的按位取反。 |
|
将每个整数元素的位向左移动。 |
|
将每个整数元素的位向右移动。 |
比较函数#
|
逐元素测试 |
|
逐元素测试 |
|
逐元素测试 |
|
逐元素测试 |
|
逐元素测试 |
|
逐元素测试 |
|
计算两个数组的逻辑与。 |
|
计算两个数组的逻辑或。 |
|
计算两个数组的逻辑异或。 |
|
计算数组的逻辑非。 |
|
取两个数组元素的最大值。 |
|
取两个数组元素的最小值。 |
|
取两个数组元素的最大值。 |
|
取两个数组元素的最小值。 |
浮动函数#
|
逐元素测试有限性。 |
|
测试每个元素是否为正无穷或负无穷。 |
|
测试每个元素是否为 NaN。 |
|
逐元素计算绝对值。 |
|
测试每个元素的符号位是否被设置(即 |
|
返回第一个参数,其符号位逐元素地由第二个参数决定。 |
|
计算向第二个参数方向最近的邻居浮点值。 |
|
逐元素提取数组的分数部分和整数部分。 |
|
计算 |
|
将每个元素分解为尾数和二的指数。 |
|
计算 C 除法的余数,逐元素进行。 |
|
将数组中的每个元素四舍五入为其下限整数。 |
|
将数组的每个元素四舍五入到其上限整数。 |
|
将数组的每个元素向零舍入。 |
广义通用函数#
除了常规的ufuncs,CuPy还提供了一个包装类,用于将常规的cupy函数转换为NumPy中的通用函数,如 https://numpy.org/doc/stable/reference/c-api/generalized-ufuncs.html 所示。这允许自动使用诸如 axes、order、dtype 等关键字参数,而无需在包装的函数中显式实现它们。
|
通过包装用户提供的具有签名的函数来创建一个广义的通用函数。 |