Classification functions

xtensor provides the following classification functions for xexpressions and scalars:

Defined in xtensor/core/xmath.hpp

group Classification functions

Functions

template<class E>
inline auto isfinite(E &&e) noexcept -> detail::xfunction_type_t<math::isfinite_fun, E>

finite value check

Returns an xfunction for the element-wise finite value check tangent of e.

Parameters:

e – an xexpression

Returns:

an xfunction

template<class E>
inline auto isinf(E &&e) noexcept -> detail::xfunction_type_t<math::isinf_fun, E>

infinity check

Returns an xfunction for the element-wise infinity check tangent of e.

Parameters:

e – an xexpression

Returns:

an xfunction

template<class E>
inline auto isnan(E &&e) noexcept -> detail::xfunction_type_t<math::isnan_fun, E>

NaN check.

Returns an xfunction for the element-wise NaN check tangent of e.

Parameters:

e – an xexpression

Returns:

an xfunction

template<class E1, class E2>
inline auto isclose(E1 &&e1, E2 &&e2, double rtol = 1e-05, double atol = 1e-08, bool equal_nan = false) noexcept

Element-wise closeness detection.

Returns an xfunction that evaluates to true if the elements in e1 and e2 are close to each other according to parameters atol and rtol. The equation is: std::abs(a - b) <= (m_atol + m_rtol * std::abs(b)).

Parameters:
  • e1 – input array to compare

  • e2 – input array to compare

  • rtol – the relative tolerance parameter (default 1e-05)

  • atol – the absolute tolerance parameter (default 1e-08)

  • equal_nan – if true, isclose returns true if both elements of e1 and e2 are NaN

Returns:

an xfunction

template<class E1, class E2>
inline auto allclose(E1 &&e1, E2 &&e2, double rtol = 1e-05, double atol = 1e-08) noexcept

Check if all elements in e1 are close to the corresponding elements in e2.

Returns true if all elements in e1 and e2 are close to each other according to parameters atol and rtol.

Parameters:
  • e1 – input array to compare

  • e2 – input arrays to compare

  • rtol – the relative tolerance parameter (default 1e-05)

  • atol – the absolute tolerance parameter (default 1e-08)

Returns:

a boolean