55 template<
typename dtype>
56 double hypot(dtype inValue1, dtype inValue2)
noexcept
60 return std::hypot(
static_cast<double>(inValue1),
static_cast<double>(inValue2));
78 template<
typename dtype>
79 double hypot(dtype inValue1, dtype inValue2, dtype inValue3)
noexcept
84 return std::hypot(
static_cast<double>(inValue1),
static_cast<double>(inValue2),
static_cast<double>(inValue3));
105 template<
typename dtype>
108 return broadcast::broadcaster<double>(inArray1,
110 [](dtype inValue1, dtype inValue2)
noexcept ->
double
111 {
return hypot(inValue1, inValue2); });
129 template<
typename dtype>
133 if (inArray1.
size() != inArray2.
size() || inArray1.
size() != inArray3.
size())
141 returnArray[i] =
hypot(inArray1[i], inArray2[i], inArray3[i]);
#define THROW_INVALID_ARGUMENT_ERROR(msg)
Definition: Error.hpp:37
#define STATIC_ASSERT_ARITHMETIC(dtype)
Definition: StaticAsserts.hpp:39
size_type size() const noexcept
Definition: NdArrayCore.hpp:4524
const Shape & shape() const noexcept
Definition: NdArrayCore.hpp:4511
uint32 size_type
Definition: NdArrayCore.hpp:156
constexpr dtype sqr(dtype inValue) noexcept
Definition: sqr.hpp:42
Definition: Cartesian.hpp:40
NdArray< double > hypot(const NdArray< dtype > &inArray1, const NdArray< dtype > &inArray2, const NdArray< dtype > &inArray3)
Definition: hypot.hpp:131
double hypot(dtype inValue1, dtype inValue2) noexcept
Definition: hypot.hpp:56
auto sqrt(dtype inValue) noexcept
Definition: sqrt.hpp:48