Skip to contents

Raises x to the power of y element-wise. You can also use the ^ operator.

Usage

nv_pow(x, y)

# S3 method for class 'AnvlArray'
e1^e2

Arguments

x, y

(arrayish)
Two inputs with a common data type. Can be any numeric data type. Scalars are broadcast. An R value takes the other operand's data type when that is in its own or a higher category. Otherwise it settles on its default data type, and the operands meet at their common data type.

e1, e2

(arrayish)
The operands of the operator, which it passes on as lhs and rhs.

Value

(arrayish)
Has the inputs' broadcast shape and common data type.

See also

prim_pow() for the underlying primitive.

Examples

x <- nv_array(c(2, 3, 4))
y <- nv_array(c(3, 2, 1))
x ^ y
#> AnvlArray
#>  8
#>  9
#>  4
#> [ CPUf32{3} ] 

# different data types are promoted to their common one
nv_pow(nv_scalar(2, "f32"), nv_scalar(3, "f64"))
#> AnvlArray
#>  8
#> [ CPUf64{} ] 

# a scalar is broadcast and an R integer is converted to a float
x^2L
#> AnvlArray
#>   4
#>   9
#>  16
#> [ CPUf32{3} ]