GNU Octave 10.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 
Loading...
Searching...
No Matches
zuchk.f
Go to the documentation of this file.
1 SUBROUTINE zuchk(YR, YI, NZ, ASCLE, TOL)
2C***BEGIN PROLOGUE ZUCHK
3C***REFER TO ZSERI,ZUOIK,ZUNK1,ZUNK2,ZUNI1,ZUNI2,ZKSCL
4C
5C Y ENTERS AS A SCALED QUANTITY WHOSE MAGNITUDE IS GREATER THAN
6C EXP(-ALIM)=ASCLE=1.0E+3*D1MACH(1)/TOL. THE TEST IS MADE TO SEE
7C IF THE MAGNITUDE OF THE REAL OR IMAGINARY PART WOULD UNDERFLOW
8C WHEN Y IS SCALED (BY TOL) TO ITS PROPER VALUE. Y IS ACCEPTED
9C IF THE UNDERFLOW IS AT LEAST ONE PRECISION BELOW THE MAGNITUDE
10C OF THE LARGEST COMPONENT; OTHERWISE THE PHASE ANGLE DOES NOT HAVE
11C ABSOLUTE ACCURACY AND AN UNDERFLOW IS ASSUMED.
12C
13C***ROUTINES CALLED (NONE)
14C***END PROLOGUE ZUCHK
15C
16C COMPLEX Y
17 DOUBLE PRECISION ASCLE, SS, ST, TOL, WR, WI, YR, YI
18 INTEGER NZ
19 nz = 0
20 wr = dabs(yr)
21 wi = dabs(yi)
22 st = dmin1(wr,wi)
23 IF (st.GT.ascle) RETURN
24 ss = dmax1(wr,wi)
25 st = st/tol
26 IF (ss.LT.st) nz = 1
27 RETURN
28 END
subroutine zuchk(yr, yi, nz, ascle, tol)
Definition zuchk.f:2