slapy2.f revision 7faaa9f3f0df9d23790277834d426c3d992ac3ba
17faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \brief \b SLAPY2
27faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
37faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  =========== DOCUMENTATION ===========
47faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
57faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez* Online html documentation available at
67faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*            http://www.netlib.org/lapack/explore-html/
77faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
87faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \htmlonly
97faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> Download SLAPY2 + dependencies
107faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/slapy2.f">
117faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> [TGZ]</a>
127faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/slapy2.f">
137faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> [ZIP]</a>
147faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/slapy2.f">
157faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> [TXT]</a>
167faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \endhtmlonly
177faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
187faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  Definition:
197faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  ===========
207faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
217faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*       REAL             FUNCTION SLAPY2( X, Y )
227faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
237faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*       .. Scalar Arguments ..
247faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*       REAL               X, Y
257faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*       ..
267faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
277faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
287faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \par Purpose:
297faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  =============
307faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*>
317faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \verbatim
327faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*>
337faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> SLAPY2 returns sqrt(x**2+y**2), taking care not to cause unnecessary
347faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> overflow.
357faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \endverbatim
367faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
377faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  Arguments:
387faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  ==========
397faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
407faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \param[in] X
417faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \verbatim
427faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*>          X is REAL
437faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \endverbatim
447faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*>
457faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \param[in] Y
467faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \verbatim
477faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*>          Y is REAL
487faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*>          X and Y specify the values x and y.
497faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \endverbatim
507faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
517faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  Authors:
527faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  ========
537faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
547faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \author Univ. of Tennessee
557faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \author Univ. of California Berkeley
567faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \author Univ. of Colorado Denver
577faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \author NAG Ltd.
587faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
597faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \date November 2011
607faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
617faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*> \ingroup auxOTHERauxiliary
627faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
637faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  =====================================================================
647faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      REAL             FUNCTION SLAPY2( X, Y )
657faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
667faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  -- LAPACK auxiliary routine (version 3.4.0) --
677faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  -- LAPACK is a software package provided by Univ. of Tennessee,    --
687faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
697faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     November 2011
707faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
717faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     .. Scalar Arguments ..
727faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      REAL               X, Y
737faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     ..
747faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
757faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*  =====================================================================
767faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
777faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     .. Parameters ..
787faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      REAL               ZERO
797faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      PARAMETER          ( ZERO = 0.0E0 )
807faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      REAL               ONE
817faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      PARAMETER          ( ONE = 1.0E0 )
827faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     ..
837faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     .. Local Scalars ..
847faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      REAL               W, XABS, YABS, Z
857faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     ..
867faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     .. Intrinsic Functions ..
877faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      INTRINSIC          ABS, MAX, MIN, SQRT
887faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     ..
897faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     .. Executable Statements ..
907faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
917faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      XABS = ABS( X )
927faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      YABS = ABS( Y )
937faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      W = MAX( XABS, YABS )
947faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      Z = MIN( XABS, YABS )
957faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      IF( Z.EQ.ZERO ) THEN
967faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez         SLAPY2 = W
977faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      ELSE
987faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez         SLAPY2 = W*SQRT( ONE+( Z / W )**2 )
997faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      END IF
1007faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      RETURN
1017faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
1027faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*     End of SLAPY2
1037faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez*
1047faaa9f3f0df9d23790277834d426c3d992ac3baCarlos Hernandez      END
105