166 SUBROUTINE zsyrk(UPLO,TRANS,N,K,ALPHA,A,LDA,BETA,C,LDC)
173 COMPLEX*16 ALPHA,BETA
178 COMPLEX*16 A(lda,*),C(ldc,*)
195 INTEGER I,INFO,J,L,NROWA
200 parameter(one= (1.0d+0,0.0d+0))
202 parameter(zero= (0.0d+0,0.0d+0))
207 IF (lsame(trans,
'N'))
THEN 212 upper = lsame(uplo,
'U')
215 IF ((.NOT.upper) .AND. (.NOT.lsame(uplo,
'L')))
THEN 217 ELSE IF ((.NOT.lsame(trans,
'N')) .AND.
218 + (.NOT.lsame(trans,
'T')))
THEN 220 ELSE IF (n.LT.0)
THEN 222 ELSE IF (k.LT.0)
THEN 224 ELSE IF (lda.LT.max(1,nrowa))
THEN 226 ELSE IF (ldc.LT.max(1,n))
THEN 230 CALL xerbla(
'ZSYRK ',info)
236 IF ((n.EQ.0) .OR. (((alpha.EQ.zero).OR.
237 + (k.EQ.0)).AND. (beta.EQ.one)))
RETURN 241 IF (alpha.EQ.zero)
THEN 243 IF (beta.EQ.zero)
THEN 257 IF (beta.EQ.zero)
THEN 276 IF (lsame(trans,
'N'))
THEN 282 IF (beta.EQ.zero)
THEN 286 ELSE IF (beta.NE.one)
THEN 292 IF (a(j,l).NE.zero)
THEN 295 c(i,j) = c(i,j) + temp*a(i,l)
302 IF (beta.EQ.zero)
THEN 306 ELSE IF (beta.NE.one)
THEN 312 IF (a(j,l).NE.zero)
THEN 315 c(i,j) = c(i,j) + temp*a(i,l)
330 temp = temp + a(l,i)*a(l,j)
332 IF (beta.EQ.zero)
THEN 335 c(i,j) = alpha*temp + beta*c(i,j)
344 temp = temp + a(l,i)*a(l,j)
346 IF (beta.EQ.zero)
THEN 349 c(i,j) = alpha*temp + beta*c(i,j)
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zsyrk(UPLO, TRANS, N, K, ALPHA, A, LDA, BETA, C, LDC)
ZSYRK