129 SUBROUTINE zhpr(UPLO,N,ALPHA,X,INCX,AP)
136 DOUBLE PRECISION ALPHA
141 COMPLEX*16 AP(*),X(*)
148 parameter(zero= (0.0d+0,0.0d+0))
152 INTEGER I,INFO,IX,J,JX,K,KK,KX
162 INTRINSIC dble,dconjg
168 IF (.NOT.lsame(uplo,
'U') .AND. .NOT.lsame(uplo,
'L'))
THEN
170 ELSE IF (n.LT.0)
THEN
172 ELSE IF (incx.EQ.0)
THEN
182 IF ((n.EQ.0) .OR. (alpha.EQ.dble(zero)))
RETURN
188 ELSE IF (incx.NE.1)
THEN
196 IF (lsame(uplo,
'U'))
THEN
202 IF (x(j).NE.zero)
THEN
203 temp = alpha*dconjg(x(j))
206 ap(k) = ap(k) + x(i)*temp
209 ap(kk+j-1) = dble(ap(kk+j-1)) + dble(x(j)*temp)
211 ap(kk+j-1) = dble(ap(kk+j-1))
218 IF (x(jx).NE.zero)
THEN
219 temp = alpha*dconjg(x(jx))
221 DO 30 k = kk,kk + j - 2
222 ap(k) = ap(k) + x(ix)*temp
225 ap(kk+j-1) = dble(ap(kk+j-1)) + dble(x(jx)*temp)
227 ap(kk+j-1) = dble(ap(kk+j-1))
239 IF (x(j).NE.zero)
THEN
240 temp = alpha*dconjg(x(j))
241 ap(kk) = dble(ap(kk)) + dble(temp*x(j))
244 ap(k) = ap(k) + x(i)*temp
248 ap(kk) = dble(ap(kk))
255 IF (x(jx).NE.zero)
THEN
256 temp = alpha*dconjg(x(jx))
257 ap(kk) = dble(ap(kk)) + dble(temp*x(jx))
259 DO 70 k = kk + 1,kk + n - j
261 ap(k) = ap(k) + x(ix)*temp
264 ap(kk) = dble(ap(kk))
subroutine xerbla(srname, info)
subroutine zhpr(uplo, n, alpha, x, incx, ap)
ZHPR