Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

hypot

Square root of sum of squares (hypotenuse)

Syntax

Description

example

C = hypot(A,B) returns the result of the following equation, computed to avoid underflow and overflow:

C = sqrt(abs(A).^2 + abs(B).^2)

Examples

collapse all

Compute Hypotenuse

Compute the hypotenuse of a right triangle with side lengths of 3 and 4.

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 hypot.

myhypot = @(a,b)sqrt(abs(a).^2+abs(b).^2);

myhypot does not have the same consideration for underflow and overflow behavior that hypot offers.

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.

myhypot(1e153,1e153)
ans =

  1.4142e+153

myhypot(1e154,1e154)
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).

hypot(1e308,1e308)
ans =

  1.4142e+308

hypot(1e309,1e309)
ans =

   Inf

Input Arguments

collapse all

A,B — Input arraysscalars | vectors | matrices | multidimensional arrays

Input arrays, specified as scalars, vectors, matrices, or multidimensional arrays. Inputs A and B must be the same size unless one is a scalar. A scalar value expands to be the same size as the other array.

If neither A nor B is Inf, but one or both inputs is NaN, then hypot returns NaN.

Data Types: single | double
Complex Number Support: Yes

See Also

| |

Introduced before R2006a

Was this topic helpful?