115 SUBROUTINE zlarcm( M, N, A, LDA, B, LDB, C, LDC, RWORK )
123 INTEGER LDA, LDB, LDC, M, N
126 DOUBLE PRECISION A( lda, * ), RWORK( * )
127 COMPLEX*16 B( ldb, * ), C( ldc, * )
133 DOUBLE PRECISION ONE, ZERO
134 parameter ( one = 1.0d0, zero = 0.0d0 )
140 INTRINSIC dble, dcmplx, dimag
149 IF( ( m.EQ.0 ) .OR. ( n.EQ.0 ) )
154 rwork( ( j-1 )*m+i ) = dble( b( i, j ) )
159 CALL dgemm(
'N',
'N', m, n, m, one, a, lda, rwork, m, zero,
163 c( i, j ) = rwork( l+( j-1 )*m+i-1 )
169 rwork( ( j-1 )*m+i ) = dimag( b( i, j ) )
172 CALL dgemm(
'N',
'N', m, n, m, one, a, lda, rwork, m, zero,
176 c( i, j ) = dcmplx( dble( c( i, j ) ),
177 $ 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