188 SUBROUTINE chbmv(UPLO,N,K,ALPHA,A,LDA,X,INCX,BETA,Y,INCY)
197 INTEGER INCX,INCY,K,LDA,N
201 COMPLEX A(lda,*),X(*),Y(*)
208 parameter(one= (1.0e+0,0.0e+0))
210 parameter(zero= (0.0e+0,0.0e+0))
214 INTEGER I,INFO,IX,IY,J,JX,JY,KPLUS1,KX,KY,L
224 INTRINSIC conjg,max,min,real
230 IF (.NOT.lsame(uplo,
'U') .AND. .NOT.lsame(uplo,
'L'))
THEN 232 ELSE IF (n.LT.0)
THEN 234 ELSE IF (k.LT.0)
THEN 236 ELSE IF (lda.LT. (k+1))
THEN 238 ELSE IF (incx.EQ.0)
THEN 240 ELSE IF (incy.EQ.0)
THEN 244 CALL xerbla(
'CHBMV ',info)
250 IF ((n.EQ.0) .OR. ((alpha.EQ.zero).AND. (beta.EQ.one)))
RETURN 270 IF (beta.NE.one)
THEN 272 IF (beta.EQ.zero)
THEN 283 IF (beta.EQ.zero)
THEN 296 IF (alpha.EQ.zero)
RETURN 297 IF (lsame(uplo,
'U'))
THEN 302 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN 307 DO 50 i = max(1,j-k),j - 1
308 y(i) = y(i) + temp1*a(l+i,j)
309 temp2 = temp2 + conjg(a(l+i,j))*x(i)
311 y(j) = y(j) + temp1*
REAL(A(KPLUS1,J)) + ALPHA*TEMP2
322 DO 70 i = max(1,j-k),j - 1
323 y(iy) = y(iy) + temp1*a(l+i,j)
324 temp2 = temp2 + conjg(a(l+i,j))*x(ix)
328 y(jy) = y(jy) + temp1*
REAL(A(KPLUS1,J)) + ALPHA*TEMP2
341 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN 345 y(j) = y(j) + temp1*
REAL(a(1,j))
347 DO 90 i = j + 1,min(n,j+k)
348 y(i) = y(i) + temp1*a(l+i,j)
349 temp2 = temp2 + conjg(a(l+i,j))*x(i)
351 y(j) = y(j) + alpha*temp2
359 y(jy) = y(jy) + temp1*
REAL(a(1,j))
363 DO 110 i = j + 1,min(n,j+k)
366 y(iy) = y(iy) + temp1*a(l+i,j)
367 temp2 = temp2 + conjg(a(l+i,j))*x(ix)
369 y(jy) = y(jy) + alpha*temp2
subroutine chbmv(UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
CHBMV
subroutine xerbla(SRNAME, INFO)
XERBLA