NAME¶
ZROTG - construct givens plane rotation
SYNOPSIS¶
- subroutine zrotg(ca,cb,c,s)
double complex ca,cb,s double precision c double precision norm,scale double
complex alpha if (cdabs(ca) .ne. 0.0d0) go to 10 c = 0.0d0 s = (1.0d0,0.0d0)
ca = cb go to 20 10 continue scale = cdabs(ca) + cdabs(cb) norm =
scale*dsqrt((cdabs(ca/dcmplx(scale,0.0d0)))**2 + *
(cdabs(cb/dcmplx(scale,0.0d0)))**2) alpha = ca /cdabs(ca) c = cdabs(ca) / norm
s = alpha * dconjg(cb) / norm ca = alpha * norm 20 continue return end
PURPOSE¶