HP MLIB User's Guide Vol. 1 7th Ed.
450 HP MLIB User’s Guide
SBDISM/DBDISM/CBDISM/ZBDISM Block diagonal format triangular solve
SUBROUTINE ZBDISM
INTEGER*4 transa, mb, n, unitd, blda, nbdiag, lb, ldb, ldc, lwork
INTEGER*4 descra(*), ibdiag(*)
COMPLEX*16 alpha, beta
COMPLEX*16 val(*), b(ldb,*), c(ldc,*), work(*)
CALL ZBDISM (transa, mb, n, unitd, dv, alpha, descra, val, blda, ibdiag,
nbdiag, lb, b, ldb, beta, c, ldc, work, lwork)
VECLIB8:
SUBROUTINE SBDISM
INTEGER*8 transa, mb, n, unitd, blda, nbdiag, lb, ldb, ldc, lwork
INTEGER*8 descra(*), ibdiag(*)
REAL*4 alpha, beta
REAL*4 val(*), b(ldb,*), c(ldc,*), work(*)
CALL SBDISM (transa, mb, n, unitd, dv, alpha, descra, val, blda, ibdiag,
nbdiag, lb, b, ldb, beta, c, ldc, work, lwork)
SUBROUTINE DBDISM
INTEGER*8 transa, mb, n, unitd, blda, nbdiag, lb, ldb, ldc, lwork
INTEGER*8 descra(*), ibdiag(*)
REAL*8 alpha, beta
REAL*8 val(*), b(ldb,*), c(ldc,*), work(*)
CALL DBDISM (transa, mb, n, unitd, dv, alpha, descra, val, blda, ibdiag,
nbdiag, lb, b, ldb, beta, c, ldc, work, lwork)
SUBROUTINE CBDISM
INTEGER*8 transa, mb, n, unitd, blda, nbdiag, lb, ldb, ldc, lwork
INTEGER*8 descra(*), ibdiag(*)
COMPLEX*8 alpha, beta
COMPLEX*8 val(*), b(ldb,*), c(ldc,*), work(*)
CALL CBDISM (transa, mb, n, unitd, dv, alpha, descra, val, blda, ibdiag,
nbdiag, lb, b, ldb, beta, c, ldc, work, lwork)
SUBROUTINE ZBDISM
INTEGER*8 transa, mb, n, unitd, blda, nbdiag, lb, ldb, ldc, lwork
INTEGER*8 descra(*), ibdiag(*)
COMPLEX*16 alpha, beta
COMPLEX*16 val(*), b(ldb,*), c(ldc,*), work(*)
CALL ZBDISM (transa, mb, n, unitd, dv, alpha, descra, val, blda, ibdiag,
nbdiag, lb, b, ldb, beta, c, ldc, work, lwork)
Input transa Indicates how to operate with the sparse matrix.
0: Operate with matrix