LAPACK 3.11.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
slabad.f
Go to the documentation of this file.
1*> \brief \b SLABAD
2*
3* =========== DOCUMENTATION ===========
4*
5* Online html documentation available at
6* http://www.netlib.org/lapack/explore-html/
7*
8*> \htmlonly
9*> Download SLABAD + dependencies
10*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/slabad.f">
11*> [TGZ]</a>
12*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/slabad.f">
13*> [ZIP]</a>
14*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/slabad.f">
15*> [TXT]</a>
16*> \endhtmlonly
17*
18* Definition:
19* ===========
20*
21* SUBROUTINE SLABAD( SMALL, LARGE )
22*
23* .. Scalar Arguments ..
24* REAL LARGE, SMALL
25* ..
26*
27*
28*> \par Purpose:
29* =============
30*>
31*> \verbatim
32*>
33*> SLABAD takes as input the values computed by SLAMCH for underflow and
34*> overflow, and returns the square root of each of these values if the
35*> log of LARGE is sufficiently large. This subroutine is intended to
36*> identify machines with a large exponent range, such as the Crays, and
37*> redefine the underflow and overflow limits to be the square roots of
38*> the values computed by SLAMCH. This subroutine is needed because
39*> SLAMCH does not compensate for poor arithmetic in the upper half of
40*> the exponent range, as is found on a Cray.
41*> \endverbatim
42*
43* Arguments:
44* ==========
45*
46*> \param[in,out] SMALL
47*> \verbatim
48*> SMALL is REAL
49*> On entry, the underflow threshold as computed by SLAMCH.
50*> On exit, if LOG10(LARGE) is sufficiently large, the square
51*> root of SMALL, otherwise unchanged.
52*> \endverbatim
53*>
54*> \param[in,out] LARGE
55*> \verbatim
56*> LARGE is REAL
57*> On entry, the overflow threshold as computed by SLAMCH.
58*> On exit, if LOG10(LARGE) is sufficiently large, the square
59*> root of LARGE, otherwise unchanged.
60*> \endverbatim
61*
62* Authors:
63* ========
64*
65*> \author Univ. of Tennessee
66*> \author Univ. of California Berkeley
67*> \author Univ. of Colorado Denver
68*> \author NAG Ltd.
69*
70*> \ingroup OTHERauxiliary
71*
72* =====================================================================
73 SUBROUTINE slabad( SMALL, LARGE )
74*
75* -- LAPACK auxiliary routine --
76* -- LAPACK is a software package provided by Univ. of Tennessee, --
77* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
78*
79* .. Scalar Arguments ..
80 REAL LARGE, SMALL
81* ..
82*
83* =====================================================================
84*
85* .. Intrinsic Functions ..
86 INTRINSIC log10, sqrt
87* ..
88* .. Executable Statements ..
89*
90* If it looks like we're on a Cray, take the square root of
91* SMALL and LARGE to avoid overflow and underflow problems.
92*
93 IF( log10( large ).GT.2000. ) THEN
94 small = sqrt( small )
95 large = sqrt( large )
96 END IF
97*
98 RETURN
99*
100* End of SLABAD
101*
102 END
subroutine slabad(SMALL, LARGE)
SLABAD
Definition: slabad.f:74