153 SUBROUTINE chemv(UPLO,N,ALPHA,A,LDA,X,INCX,BETA,Y,INCY)
161 INTEGER INCX,INCY,LDA,N
165 COMPLEX A(lda,*),X(*),Y(*)
172 parameter(one= (1.0e+0,0.0e+0))
174 parameter(zero= (0.0e+0,0.0e+0))
178 INTEGER I,INFO,IX,IY,J,JX,JY,KX,KY
188 INTRINSIC conjg,max,real
194 IF (.NOT.lsame(uplo,
'U') .AND. .NOT.lsame(uplo,
'L'))
THEN 196 ELSE IF (n.LT.0)
THEN 198 ELSE IF (lda.LT.max(1,n))
THEN 200 ELSE IF (incx.EQ.0)
THEN 202 ELSE IF (incy.EQ.0)
THEN 206 CALL xerbla(
'CHEMV ',info)
212 IF ((n.EQ.0) .OR. ((alpha.EQ.zero).AND. (beta.EQ.one)))
RETURN 233 IF (beta.NE.one)
THEN 235 IF (beta.EQ.zero)
THEN 246 IF (beta.EQ.zero)
THEN 259 IF (alpha.EQ.zero)
RETURN 260 IF (lsame(uplo,
'U'))
THEN 264 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN 269 y(i) = y(i) + temp1*a(i,j)
270 temp2 = temp2 + conjg(a(i,j))*x(i)
272 y(j) = y(j) + temp1*
REAL(A(J,J)) + ALPHA*TEMP2
283 y(iy) = y(iy) + temp1*a(i,j)
284 temp2 = temp2 + conjg(a(i,j))*x(ix)
288 y(jy) = y(jy) + temp1*
REAL(A(J,J)) + ALPHA*TEMP2
297 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN 301 y(j) = y(j) + temp1*
REAL(a(j,j))
303 y(i) = y(i) + temp1*a(i,j)
304 temp2 = temp2 + conjg(a(i,j))*x(i)
306 y(j) = y(j) + alpha*temp2
314 y(jy) = y(jy) + temp1*
REAL(a(j,j))
320 y(iy) = y(iy) + temp1*a(i,j)
321 temp2 = temp2 + conjg(a(i,j))*x(ix)
323 y(jy) = y(jy) + alpha*temp2
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine chemv(UPLO, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
CHEMV