111 SUBROUTINE clarcm( M, N, A, LDA, B, LDB, C, LDC, RWORK )
118 INTEGER LDA, LDB, LDC, M, N
121 REAL A( LDA, * ), RWORK( * )
122 COMPLEX B( LDB, * ), C( LDC, * )
129 parameter( one = 1.0e0, zero = 0.0e0 )
135 INTRINSIC aimag, cmplx, real
144 IF( ( m.EQ.0 ) .OR. ( n.EQ.0 ) )
149 rwork( ( j-1 )*m+i ) = real( b( i, j ) )
154 CALL sgemm(
'N',
'N', m, n, m, one, a, lda, rwork, m, zero,
158 c( i, j ) = rwork( l+( j-1 )*m+i-1 )
164 rwork( ( j-1 )*m+i ) = aimag( b( i, j ) )
167 CALL sgemm(
'N',
'N', m, n, m, one, a, lda, rwork, m, zero,
171 c( i, j ) = cmplx( real( c( i, j ) ),
172 $ rwork( l+( j-1 )*m+i-1 ) )
subroutine sgemm(transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)
SGEMM
subroutine clarcm(m, n, a, lda, b, ldb, c, ldc, rwork)
CLARCM copies all or part of a real two-dimensional array to a complex array.