Square root of sum of squares (hypotenuse)
Compute the hypotenuse of a right triangle with side lengths of
C = hypot(3,4)
C = 5
Overflow and Underflow Behavior
Examine the difference between using
hypot and coding the basic
hypot equation in M-code.
Create an anonymous function that performs essentially the same basic function as
myhypot = @(a,b)sqrt(abs(a).^2+abs(b).^2);
myhypot does not have the same consideration for underflow and overflow behavior that
Find the upper limit at which
myhypot returns a useful value. You can see that this test function reaches its maximum at about
1e154, returning an infinite result at that point.
ans = 1.4142e+153
ans = Inf
Do the same using the
hypot function, and observe that
hypot operates on values up to about
1e308, which is approximately equal to the value for
realmax on your computer (the largest representable double-precision floating-point number).
ans = 1.4142e+308
ans = Inf
A,B — Input arrays
scalars | vectors | matrices | multidimensional arrays
Input arrays, specified as scalars, vectors, matrices, or multidimensional
either be the same size or have sizes that are compatible (for example,
N matrix and
a scalar or
N row vector).
For more information, see Compatible Array Sizes for Basic Operations.
If one or both inputs is
Complex Number Support: Yes
For real inputs,
hypot has a few behaviors
that differ from those recommended in the IEEE®-754 Standard.
Calculate with arrays that have more rows than fit in memory.
This function fully supports tall arrays. For more information, see Tall Arrays.
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
If you use
hypotwith single type and double type operands, the generated code might not produce the same result as MATLAB. See Binary Element-Wise Operations with Single and Double Operands (MATLAB Coder).
GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.
Run code in the background using MATLAB®
backgroundPool or accelerate code with Parallel Computing Toolbox™
This function fully supports thread-based environments. For more information, see Run MATLAB Functions in Thread-Based Environment.
Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.
This function fully supports GPU arrays. For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Partition large arrays across the combined memory of your cluster using Parallel Computing Toolbox™.
This function fully supports distributed arrays. For more information, see Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).