LAPACK  3.6.1
LAPACK: Linear Algebra PACKage
real function slapy3 ( real  X,
real  Y,
real  Z 
)

SLAPY3 returns sqrt(x2+y2+z2).

Download SLAPY3 + dependencies [TGZ] [ZIP] [TXT]

Purpose:
 SLAPY3 returns sqrt(x**2+y**2+z**2), taking care not to cause
 unnecessary overflow.
Parameters
[in]X
          X is REAL
[in]Y
          Y is REAL
[in]Z
          Z is REAL
          X, Y and Z specify the values x, y and z.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date
September 2012

Definition at line 70 of file slapy3.f.

70 *
71 * -- LAPACK auxiliary routine (version 3.4.2) --
72 * -- LAPACK is a software package provided by Univ. of Tennessee, --
73 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
74 * September 2012
75 *
76 * .. Scalar Arguments ..
77  REAL x, y, z
78 * ..
79 *
80 * =====================================================================
81 *
82 * .. Parameters ..
83  REAL zero
84  parameter ( zero = 0.0e0 )
85 * ..
86 * .. Local Scalars ..
87  REAL w, xabs, yabs, zabs
88 * ..
89 * .. Intrinsic Functions ..
90  INTRINSIC abs, max, sqrt
91 * ..
92 * .. Executable Statements ..
93 *
94  xabs = abs( x )
95  yabs = abs( y )
96  zabs = abs( z )
97  w = max( xabs, yabs, zabs )
98  IF( w.EQ.zero ) THEN
99 * W can be zero for max(0,nan,0)
100 * adding all three entries together will make sure
101 * NaN will not disappear.
102  slapy3 = xabs + yabs + zabs
103  ELSE
104  slapy3 = w*sqrt( ( xabs / w )**2+( yabs / w )**2+
105  $ ( zabs / w )**2 )
106  END IF
107  RETURN
108 *
109 * End of SLAPY3
110 *
real function slapy3(X, Y, Z)
SLAPY3 returns sqrt(x2+y2+z2).
Definition: slapy3.f:70