1*> \brief \b CLADIV performs complex division in real arithmetic, avoiding unnecessary overflow.
2*
3*  =========== DOCUMENTATION ===========
4*
5* Online html documentation available at
6*            http://www.netlib.org/lapack/explore-html/
7*
8*> \htmlonly
9*> Download CLADIV + dependencies
10*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/cladiv.f">
11*> [TGZ]</a>
12*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/cladiv.f">
13*> [ZIP]</a>
14*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/cladiv.f">
15*> [TXT]</a>
16*> \endhtmlonly
17*
18*  Definition:
19*  ===========
20*
21*       COMPLEX FUNCTION CLADIV( X, Y )
22*
23*       .. Scalar Arguments ..
24*       COMPLEX            X, Y
25*       ..
26*
27*
28*> \par Purpose:
29*  =============
30*>
31*> \verbatim
32*>
33*> CLADIV := X / Y, where X and Y are complex.  The computation of X / Y
34*> will not overflow on an intermediary step unless the results
35*> overflows.
36*> \endverbatim
37*
38*  Arguments:
39*  ==========
40*
41*> \param[in] X
42*> \verbatim
43*>          X is COMPLEX
44*> \endverbatim
45*>
46*> \param[in] Y
47*> \verbatim
48*>          Y is COMPLEX
49*>          The complex scalars X and Y.
50*> \endverbatim
51*
52*  Authors:
53*  ========
54*
55*> \author Univ. of Tennessee
56*> \author Univ. of California Berkeley
57*> \author Univ. of Colorado Denver
58*> \author NAG Ltd.
59*
60*> \ingroup complexOTHERauxiliary
61*
62*  =====================================================================
63      COMPLEX FUNCTION CLADIV( X, Y )
64*
65*  -- LAPACK auxiliary routine --
66*  -- LAPACK is a software package provided by Univ. of Tennessee,    --
67*  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
68*
69*     .. Scalar Arguments ..
70      COMPLEX            X, Y
71*     ..
72*
73*  =====================================================================
74*
75*     .. Local Scalars ..
76      REAL               ZI, ZR
77*     ..
78*     .. External Subroutines ..
79      EXTERNAL           SLADIV
80*     ..
81*     .. Intrinsic Functions ..
82      INTRINSIC          AIMAG, CMPLX, REAL
83*     ..
84*     .. Executable Statements ..
85*
86      CALL SLADIV( REAL( X ), AIMAG( X ), REAL( Y ), AIMAG( Y ), ZR,
87     $             ZI )
88      CLADIV = CMPLX( ZR, ZI )
89*
90      RETURN
91*
92*     End of CLADIV
93*
94      END
95