91 SUBROUTINE drotmg(DD1,DD2,DX1,DY1,DPARAM)
99 DOUBLE PRECISION dd1,dd2,dx1,dy1
102 DOUBLE PRECISION dparam(5)
108 DOUBLE PRECISION dflag,dh11,dh12,dh21,dh22,dp1,dp2,dq1,dq2,dtemp,
109 $ du,gam,gamsq,one,rgamsq,two,zero
116 DATA zero,one,two/0.d0,1.d0,2.d0/
117 DATA gam,gamsq,rgamsq/4096.d0,16777216.d0,5.9604645d-8/
120 IF (dd1.LT.zero)
THEN
134 IF (dp2.EQ.zero)
THEN
144 IF (dabs(dq1).GT.dabs(dq2))
THEN
158 IF (dq2.LT.zero)
THEN
182 IF (dd1.NE.zero)
THEN
183 DO WHILE ((dd1.LE.rgamsq) .OR. (dd1.GE.gamsq))
184 IF (dflag.EQ.zero)
THEN
193 IF (dd1.LE.rgamsq)
THEN
207 IF (dd2.NE.zero)
THEN
208 DO WHILE ( (dabs(dd2).LE.rgamsq) .OR. (dabs(dd2).GE.gamsq) )
209 IF (dflag.EQ.zero)
THEN
218 IF (dabs(dd2).LE.rgamsq)
THEN
232 IF (dflag.LT.zero)
THEN
237 ELSE IF (dflag.EQ.zero)
THEN