190 SUBROUTINE csymm(SIDE,UPLO,M,N,ALPHA,A,LDA,B,LDB,BETA,C,LDC)
199 INTEGER LDA,LDB,LDC,M,N
203 COMPLEX A(lda,*),B(ldb,*),C(ldc,*)
220 INTEGER I,INFO,J,K,NROWA
225 parameter(one= (1.0e+0,0.0e+0))
227 parameter(zero= (0.0e+0,0.0e+0))
232 IF (lsame(side,
'L'))
THEN 237 upper = lsame(uplo,
'U')
242 IF ((.NOT.lsame(side,
'L')) .AND. (.NOT.lsame(side,
'R')))
THEN 244 ELSE IF ((.NOT.upper) .AND. (.NOT.lsame(uplo,
'L')))
THEN 246 ELSE IF (m.LT.0)
THEN 248 ELSE IF (n.LT.0)
THEN 250 ELSE IF (lda.LT.max(1,nrowa))
THEN 252 ELSE IF (ldb.LT.max(1,m))
THEN 254 ELSE IF (ldc.LT.max(1,m))
THEN 258 CALL xerbla(
'CSYMM ',info)
264 IF ((m.EQ.0) .OR. (n.EQ.0) .OR.
265 + ((alpha.EQ.zero).AND. (beta.EQ.one)))
RETURN 269 IF (alpha.EQ.zero)
THEN 270 IF (beta.EQ.zero)
THEN 288 IF (lsame(side,
'L'))
THEN 298 c(k,j) = c(k,j) + temp1*a(k,i)
299 temp2 = temp2 + b(k,j)*a(k,i)
301 IF (beta.EQ.zero)
THEN 302 c(i,j) = temp1*a(i,i) + alpha*temp2
304 c(i,j) = beta*c(i,j) + temp1*a(i,i) +
315 c(k,j) = c(k,j) + temp1*a(k,i)
316 temp2 = temp2 + b(k,j)*a(k,i)
318 IF (beta.EQ.zero)
THEN 319 c(i,j) = temp1*a(i,i) + alpha*temp2
321 c(i,j) = beta*c(i,j) + temp1*a(i,i) +
333 IF (beta.EQ.zero)
THEN 335 c(i,j) = temp1*b(i,j)
339 c(i,j) = beta*c(i,j) + temp1*b(i,j)
349 c(i,j) = c(i,j) + temp1*b(i,k)
359 c(i,j) = c(i,j) + temp1*b(i,k)
subroutine csymm(SIDE, UPLO, M, N, ALPHA, A, LDA, B, LDB, BETA, C, LDC)
CSYMM
subroutine xerbla(SRNAME, INFO)
XERBLA