SDIAMM/DDIAMM/CDIAMM/ZDIAMM

Diagonal matrix-matrix multiply

 

SUBROUTINE

ZDIAMM

 

INTEGER*4

transa, m, n, k, lda, ndiag, ldb, ldc, lwork

 

INTEGER*4

descra(*), idiag(*)

 

COMPLEX*16

alpha, beta

 

COMPLEX*16

val(*), b(ldb,*), c(ldc,*), work(*)

 

CALL ZDIAMM (transa, m, n, k, alpha, descra, val, lda, idiag, ndiag, b,

 

ldb, beta, c, ldc, work, lwork)

 

VECLIB8:

 

 

SUBROUTINE

SDIAMM

 

INTEGER*8

transa, m, n, k, lda, ndiag, ldb, ldc, lwork

 

INTEGER*8

descra(*), idiag(*)

 

REAL*4

alpha, beta

 

REAL*4

val(*), b(ldb,*), c(ldc,*), work(*)

 

CALL SDIAMM (transa, m, n, k, alpha, descra, val, lda, idiag, ndiag, b,

 

ldb, beta, c, ldc, work, lwork)

 

SUBROUTINE

DDIAMM

 

INTEGER*8

transa, m, n, k, lda, ndiag, ldb, ldc, lwork

 

INTEGER*8

descra(*), idiag(*)

 

REAL*8

alpha, beta

 

REAL*8

val(*), b(ldb,*), c(ldc,*), work(*)

 

CALL DDIAMM (transa, m, n, k, alpha, descra, val, lda, idiag, ndiag, b,

 

ldb, beta, c, ldc, work, lwork)

 

SUBROUTINE

CDIAMM

 

INTEGER*8

transa, m, n, k, lda, ndiag, ldb, ldc, lwork

 

INTEGER*8

descra(*), idiag(*)

 

COMPLEX*8

alpha, beta

 

COMPLEX*8

val(*), b(ldb,*), c(ldc,*), work(*)

 

CALL CDIAMM (transa, m, n, k, alpha, descra, val, lda, idiag, ndiag, b,

 

ldb, beta, c, ldc, work, lwork)

 

SUBROUTINE

ZDIAMM

 

INTEGER*8

transa, m, n, k, lda, ndiag, ldb, ldc, lwork

 

INTEGER*8

descra(*), idiag(*)

 

COMPLEX*16

alpha, beta

 

COMPLEX*16

val(*), b(ldb,*), c(ldc,*), work(*)

 

CALL ZDIAMM (transa, m, n, k, alpha, descra, val, lda, idiag, ndiag, b,

 

ldb, beta, c, ldc, work, lwork)

Input

transa

Indicates how to operate with the sparse matrix.

 

 

0: Operate with matrix

498HP MLIB User’s Guide