mindspore.ops.div

mindspore.ops.div(input, other, rounding_mode=None)[source]

Divides the first input tensor by the second input tensor in floating-point type element-wise.

Inputs of input and other comply with the implicit type conversion rules to make the data types consistent. The inputs must be two tensors or one tensor and one scalar. When the inputs are two tensors, dtypes of them cannot be bool at the same time, and the shapes of them could be broadcast. When the inputs are one tensor and one scalar, the scalar could only be a constant.

\[out_{i} = input_{i} / other_{i}\]
Parameters
  • input (Union[Tensor, Number, bool]) – The first input is a number or a bool or a tensor whose data type is number or bool.

  • other (Union[Tensor, Number, bool]) – The second input is a number or a bool when the first input is a tensor or a tensor whose data type is number or bool.

  • rounding_mode (str, optional) –

    Type of rounding applied to the result. Three types are defined as,

    • None: Default behavior. Equivalent to true division in Python or true_divide in NumPy.

    • ”floor”: Rounds the results of the division down. Equivalent to floor division in Python or floor_divide in NumPy.

    • ”trunc”: Rounds the results of the division towards zero. Equivalent to C-style integer division. Default: None.

Returns

Tensor, the shape is the same as the one after broadcasting, and the data type is the one with higher precision or higher digits among the two inputs.

Raises
  • TypeError – If input and other is not one of the following: Tensor, Number, bool.

  • ValueError – If rounding_mode value is not None, “floor” or “trunc”.

Supported Platforms:

Ascend CPU GPU

Examples

>>> x = Tensor(np.array([1.0, 2.0, 3.0]), mindspore.float32)
>>> y = Tensor(np.array([4.0, 5.0, 6.0]), mindspore.float32)
>>> output = ops.div(x, y)
>>> print(output)
[0.25 0.4 0.5]