mindspore.Tensor.div

Tensor.div(self, value, *, rounding_mode=None) Tensor

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

\[out_{i} = input_{i} / other_{i}\]

Note

  • When the two inputs have different shapes, they must be able to broadcast to a common shape.

  • The two inputs can not be bool type at the same time, [True, Tensor(True, bool_), Tensor(np.array([True]), bool_)] are all considered bool type.

  • The two inputs comply with the implicit type conversion rules to make the data types consistent.

Parameters
  • self (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.

Keyword Arguments

rounding_mode (str, optional) –

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

  • None: Default behavior, which is the same as true division in Python or true_divide in NumPy.

  • "floor": Rounds the division of the inputs down, which is the same as floor division in Python or floor_divide in NumPy.

  • "trunc": Rounds the division of the inputs towards zero, which is the same as C-style integer division.

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 self 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 GPU CPU

Examples

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor
>>> 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 = x.div(y)
>>> print(output)
[0.25 0.4 0.5]