--- /dev/null
+*DECK PYTHAG
+ REAL FUNCTION PYTHAG (A, B)
+C***BEGIN PROLOGUE PYTHAG
+C***SUBSIDIARY
+C***PURPOSE Compute the complex square root of a complex number without
+C destructive overflow or underflow.
+C***LIBRARY SLATEC
+C***TYPE SINGLE PRECISION (PYTHAG-S)
+C***AUTHOR (UNKNOWN)
+C***DESCRIPTION
+C
+C Finds sqrt(A**2+B**2) without overflow or destructive underflow
+C
+C***SEE ALSO EISDOC
+C***ROUTINES CALLED (NONE)
+C***REVISION HISTORY (YYMMDD)
+C 811101 DATE WRITTEN
+C 890531 Changed all specific intrinsics to generic. (WRB)
+C 891214 Prologue converted to Version 4.0 format. (BAB)
+C 900402 Added TYPE section. (WRB)
+C***END PROLOGUE PYTHAG
+ REAL A,B
+C
+ REAL P,Q,R,S,T
+C***FIRST EXECUTABLE STATEMENT PYTHAG
+ P = MAX(ABS(A),ABS(B))
+ Q = MIN(ABS(A),ABS(B))
+ IF (Q .EQ. 0.0E0) GO TO 20
+ 10 CONTINUE
+ R = (Q/P)**2
+ T = 4.0E0 + R
+ IF (T .EQ. 4.0E0) GO TO 20
+ S = R/T
+ P = P + 2.0E0*P*S
+ Q = Q*S
+ GO TO 10
+ 20 PYTHAG = P
+ RETURN
+ END