mindspore.ops.isclose

mindspore.ops.isclose(input, other, rtol=1e-05, atol=1e-08, equal_nan=False)[source]

Returns a new Tensor with boolean elements representing if each element of input is “close” to the corresponding element of other. Closeness is defined as:

\[|input-other| ≤ atol + rtol × |other|\]
Parameters
  • input (Tensor) – First tensor to compare. Support dtype: float16, float32, float64, int8, int16, int32, int64 and uint8. On Ascend, more dtypes are support: bool and bfloat16.

  • other (Tensor) – Second tensor to compare. Dtype must be same as input.

  • rtol (Union[float, int, bool], optional) – Relative tolerance. Default: 1e-05 .

  • atol (Union[float, int, bool], optional) – Absolute tolerance. Default: 1e-08 .

  • equal_nan (bool, optional) – If True , then two NaNs will be considered equal. Default: False.

Returns

A bool Tensor, with the shape as broadcasted result of the input input and other.

Raises
  • TypeErrorinput or other is not Tensor.

  • TypeErrorinput or other dtype is not support.

  • TypeErroratol or rtol is not float, int or bool.

  • TypeErrorequal_nan is not bool.

  • TypeErrorinput and other have different dtypes.

  • ValueErrorinput and other cannot broadcast.

Supported Platforms:

Ascend GPU CPU

Examples

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> input = Tensor(np.array([1.3, 2.1, 3.2, 4.1, 5.1]), mindspore.float16)
>>> other = Tensor(np.array([1.3, 3.3, 2.3, 3.1, 5.1]), mindspore.float16)
>>> output = ops.isclose(input, other)
>>> print(output)
[ True False False False  True]