dpnp.right_shift

dpnp.right_shift(x1, x2, out=None, where=True, order='K', dtype=None, subok=True, **kwargs)

Shifts the bits of each element x1_i of the input array x1 to the right according to the respective element x2_i of the input array x2.

For full documentation refer to numpy.right_shift.

Parameters:
  • x1 ({dpnp.ndarray, usm_ndarray, scalar}) -- First input array, expected to have integer data type. Both inputs x1 and x2 can not be scalars at the same time.

  • x2 ({dpnp.ndarray, usm_ndarray, scalar}) -- Second input array, also expected to have integer data type. Each element must be greater than or equal to 0. Both inputs x1 and x2 can not be scalars at the same time.

  • out ({None, dpnp.ndarray, usm_ndarray}, optional) -- Output array to populate. Array must have the correct shape and the expected data type. Default: None.

  • order ({"C", "F", "A", "K"}, optional) -- Memory layout of the newly output array, if parameter out is None. Default: "K".

Returns:

out -- An array containing the element-wise results. The data type of the returned array is determined by the Type Promotion Rules.

Return type:

dpnp.ndarray

Limitations

Parameters where and subok are supported with their default values. Keyword argument kwargs is currently unsupported. Otherwise NotImplementedError exception will be raised.

See also

dpnp.left_shift

Shift the bits of an integer to the left.

Examples

>>> import dpnp as np
>>> x1 = np.array([10])
>>> x2 = np.array([1, 2, 3])
>>> np.right_shift(x1, x2)
array([5, 2, 1])

The >> operator can be used as a shorthand for right_shift on dpnp.ndarray.

>>> x1 >> x2
array([5, 2, 1])