134 SUBROUTINE cher(UPLO,N,ALPHA,X,INCX,A,LDA)
146 COMPLEX A(lda,*),X(*)
153 parameter(zero= (0.0e+0,0.0e+0))
157 INTEGER I,INFO,IX,J,JX,KX
167 INTRINSIC conjg,max,real
173 IF (.NOT.lsame(uplo,
'U') .AND. .NOT.lsame(uplo,
'L'))
THEN 175 ELSE IF (n.LT.0)
THEN 177 ELSE IF (incx.EQ.0)
THEN 179 ELSE IF (lda.LT.max(1,n))
THEN 189 IF ((n.EQ.0) .OR. (alpha.EQ.
REAL(zero))) return
195 ELSE IF (incx.NE.1)
THEN 203 IF (lsame(uplo,
'U'))
THEN 209 IF (x(j).NE.zero)
THEN 210 temp = alpha*conjg(x(j))
212 a(i,j) = a(i,j) + x(i)*temp
214 a(j,j) =
REAL(A(J,J)) +
REAL(x(j)*temp)
216 a(j,j) =
REAL(a(j,j))
222 IF (x(jx).NE.zero)
THEN 223 temp = alpha*conjg(x(jx))
226 a(i,j) = a(i,j) + x(ix)*temp
229 a(j,j) =
REAL(A(J,J)) +
REAL(x(jx)*temp)
231 a(j,j) =
REAL(a(j,j))
242 IF (x(j).NE.zero)
THEN 243 temp = alpha*conjg(x(j))
244 a(j,j) =
REAL(A(J,J)) +
REAL(temp*x(j))
246 a(i,j) = a(i,j) + x(i)*temp
249 a(j,j) =
REAL(a(j,j))
255 IF (x(jx).NE.zero)
THEN 256 temp = alpha*conjg(x(jx))
257 a(j,j) =
REAL(A(J,J)) +
REAL(temp*x(jx))
261 a(i,j) = a(i,j) + x(ix)*temp
264 a(j,j) =
REAL(a(j,j))
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine cher(UPLO, N, ALPHA, X, INCX, A, LDA)
CHER