Operator Reference

tuple_hypottuple_hypotTupleHypotTupleHypottuple_hypot (Operator)

tuple_hypottuple_hypotTupleHypotTupleHypottuple_hypot — Calculate the hypotenuse of two tuples.

Signature

tuple_hypot( : : T1, T2 : Hypot)

Herror tuple_hypot(double T1, double T2, double* Hypot)

Herror T_tuple_hypot(const Htuple T1, const Htuple T2, Htuple* Hypot)

void TupleHypot(const HTuple& T1, const HTuple& T2, HTuple* Hypot)

HTuple HTuple::TupleHypot(const HTuple& T2) const

static void HOperatorSet.TupleHypot(HTuple t1, HTuple t2, out HTuple hypot)

HTuple HTuple.TupleHypot(HTuple t2)

def tuple_hypot(t1: MaybeSequence[Union[float, int]], t2: MaybeSequence[Union[float, int]]) -> Sequence[float]

def tuple_hypot_s(t1: MaybeSequence[Union[float, int]], t2: MaybeSequence[Union[float, int]]) -> float

Description

tuple_hypottuple_hypotTupleHypotTupleHypottuple_hypot computes the hypotenuse of the input tuples. The calculation is performed without undue arithmetic overflow or underflow during the intermediate steps of the calculation. If both tuples have the same length, the hypotenuse is applied to the corresponding elements of both tuples. Otherwise, either T1T1T1t1t1 or T2T2T2t2t2 must have length 1. In this case, the hypotenuse is calculated for each element of the longer tuple with the single element of the other tuple. The result is always a floating point number. The hypotenuse of strings is not allowed.

Exception: Empty input tuples

If either or both of the input tuples are empty, the operator returns an empty tuple.

HDevelop In-line Operation

HDevelop provides an in-line operation for tuple_hypottuple_hypotTupleHypotTupleHypottuple_hypot, which can be used in an expression in the following syntax:

Hypot := hypot(T1, T2)

Execution Information

  • Multithreading type: independent (runs in parallel even with exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

Parameters

T1T1T1t1t1 (input_control)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Input tuple 1.

T2T2T2t2t2 (input_control)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Input tuple 2.

HypotHypotHypothypothypot (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Hypotenuse of the input tuples.

Alternatives

tuple_sqrttuple_sqrtTupleSqrtTupleSqrttuple_sqrt

See also

tuple_multtuple_multTupleMultTupleMulttuple_mult, tuple_addtuple_addTupleAddTupleAddtuple_add

Module

Foundation