GNU Octave
4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
cuchk.f
Go to the documentation of this file.
1
SUBROUTINE
cuchk(Y, NZ, ASCLE, TOL)
2
C***BEGIN PROLOGUE CUCHK
3
C***REFER TO CSERI,CUOIK,CUNK1,CUNK2,CUNI1,CUNI2,CKSCL
4
C
5
C Y ENTERS AS A SCALED QUANTITY WHOSE MAGNITUDE IS GREATER THAN
6
C EXP(-ALIM)=ASCLE=1.0E+3*R1MACH(1)/TOL. THE TEST IS MADE TO SEE
7
C IF THE MAGNITUDE OF THE REAL OR IMAGINARY PART WOULD UNDER FLOW
8
C WHEN Y IS SCALED (BY TOL) TO ITS PROPER VALUE. Y IS ACCEPTED
9
C IF THE UNDERFLOW IS AT LEAST ONE PRECISION BELOW THE MAGNITUDE
10
C OF THE LARGEST COMPONENT; OTHERWISE THE PHASE ANGLE DOES NOT HAVE
11
C ABSOLUTE ACCURACY AND AN UNDERFLOW IS ASSUMED.
12
C
13
C***ROUTINES CALLED (NONE)
14
C***END PROLOGUE CUCHK
15
C
16
COMPLEX
Y
17
REAL
ASCLE, SS, ST, TOL, YR, YI
18
INTEGER
NZ
19
nz = 0
20
yr =
REAL
(Y)
21
yi = aimag(y)
22
yr =
abs
(yr)
23
yi =
abs
(yi)
24
st = amin1(yr,yi)
25
IF
(st.GT.ascle)
RETURN
26
ss = amax1(yr,yi)
27
st=st/tol
28
IF
(ss.LT.st) nz = 1
29
RETURN
30
END
abs
static T abs(T x)
Definition:
pr-output.cc:1696
liboctave
external
amos
cuchk.f
Generated on Sat Sep 1 2018 14:01:45 for GNU Octave by
1.8.14