Skip to content

mp_units::hypot

hypot overloads

Synopses

Declared in <mp-units/math.h>

Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation

template<auto R1, typename Rep1, auto R2, typename Rep2>
  requires requires(Rep1 v1, Rep2 v2) {
    get_common_reference(R1, R2);
    requires requires { hypot(v1, v2); }
#if MP_UNITS_HOSTED
               || requires { std::hypot(v1, v2); }
#endif
               ;
  }
[[nodiscard]] constexpr QuantityOf<get_quantity_spec(get_common_reference(R1, R2))> auto hypot(
  quantity<R1, Rep1> const& x, quantity<R2, Rep2> const& y) noexcept;

» more...

Computes the square root of the sum of the squares of x, y, and z, without undue overflow or underflow at intermediate stages of the computation

template<auto R1, typename Rep1, auto R2, typename Rep2, auto R3, typename Rep3>
  requires requires(Rep1 v1, Rep2 v2, Rep3 v3) {
    get_common_reference(R1, R2, R3);
    requires requires { hypot(v1, v2, v3); }
#if MP_UNITS_HOSTED
               || requires { std::hypot(v1, v2, v3); }
#endif
               ;
  }
[[nodiscard]] constexpr QuantityOf<get_quantity_spec(get_common_reference(R1, R2, R3))> auto hypot(
  quantity<R1, Rep1> const& x, quantity<R2, Rep2> const& y, quantity<R3, Rep3> const& z) noexcept;

» more...

Return Value

Note

The return value should not be discarded.