1 subroutine drotg(da,db,c,s)
7 double precision da,db,c,s,roe,scale,r,z
10 if( dabs(da) .gt. dabs(db) ) roe = da
11 scale = dabs(da) + dabs(db)
12 if( scale .ne. 0.0d0 )
go to 10
17 10 r = scale*dsqrt((da/scale)**2 + (db/scale)**2)
18 r = dsign(1.0d0,roe)*r
22 if( dabs(c) .gt. 0.0d0 .and. dabs(c) .le. s ) z = 1.0d0/c
subroutine drotg(da, db, c, s)