113 SUBROUTINE zlarcm( M, N, A, LDA, B, LDB, C, LDC, RWORK )
120 INTEGER LDA, LDB, LDC, M, N
123 DOUBLE PRECISION ( LDA, * ), ( * )
130 DOUBLE PRECISION ONE, ZERO
131 parameter( one = 1.0d0, zero = 0.0d0 )
137 INTRINSIC dble, dcmplx, dimag
146 IF( ( m.EQ.0 ) .OR. ( n.EQ.0 ) )
151 rwork( ( j-1 )*m+i ) = dble( b( i, j ) )
156 CALL dgemm(
'N',
'N', m, n, m, one, a, lda, rwork, m, zero,
160 c( i, j ) = rwork( l+( j-1 )*m+i-1 )
166 rwork( ( j-1 )*m+i ) = dimag( b( i, j ) )
169 CALL dgemm(
'N',
'N', m, n, m, one, a, lda, rwork, m, zero,
173 c( i, j ) = dcmplx( dble( c( i, j ) ),
174 $ rwork( l+( j-1 )*m+i-1 ) )
subroutine zlarcm(m, n, a, lda, b, ldb, c, ldc, rwork)
ZLARCM copies all or part of a real two-dimensional array to a complex array.
subroutine dgemm(transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)
DGEMM