HP MLIB User's Guide Vol. 1 7th Ed.

466 HP MLIB User’s Guide
SBSCSM/DBSCSM/CBSCSM/ZBSCSM Block sparse column format triangular solve
SUBROUTINE ZBSCSM
INTEGER*4 transa, mb, n, unitd, blda, lb, ldb, ldc, lwork
INTEGER*4 descra(*), bindx(*), bpntrb(*), bpntre(*)
COMPLEX*16 alpha, beta
COMPLEX*16 val(*), b(ldb,*), c(ldc,*), work(*)
CALL ZBSCSM (transa, mb, n, unitd, dv, alpha, descra, val, bindx,
bpntrb, bpntre, lb, b, ldb, beta, c, ldc, work, lwork)
VECLIB8:
SUBROUTINE SBSCSM
INTEGER*8 transa, mb, n, unitd, blda, lb, ldb, ldc, lwork
INTEGER*8 descra(*), bindx(*), bpntrb(*), bpntre(*)
REAL*4 alpha, beta
REAL*4 val(*), b(ldb,*), c(ldc,*), work(*)
CALL SBSCSM (transa, mb, n, unitd, dv, alpha, descra, val, bindx,
bpntrb, bpntre, lb, b, ldb, beta, c, ldc, work, lwork)
SUBROUTINE DBSCSM
INTEGER*8 transa, mb, n, unitd, blda, lb, ldb, ldc, lwork
INTEGER*8 descra(*), bindx(*), bpntrb(*), bpntre(*)
REAL*8 alpha, beta
REAL*8 val(*), b(ldb,*), c(ldc,*), work(*)
CALL DBSCSM (transa, mb, n, unitd, dv, alpha, descra, val, bindx,
bpntrb, bpntre, lb, b, ldb, beta, c, ldc, work, lwork)
SUBROUTINE CBSCSM
INTEGER*8 transa, mb, n, unitd, blda, lb, ldb, ldc, lwork
INTEGER*8 descra(*), bindx(*), bpntrb(*), bpntre(*)
COMPLEX*8 alpha, beta
COMPLEX*8 val(*), b(ldb,*), c(ldc,*), work(*)
CALL CBSCSM (transa, mb, n, unitd, dv, alpha, descra, val, bindx,
bpntrb, bpntre, lb, b, ldb, beta, c, ldc, work, lwork)
SUBROUTINE ZBSCSM
INTEGER*8 transa, mb, n, unitd, blda, lb, ldb, ldc, lwork
INTEGER*8 descra(*), bindx(*), bpntrb(*), bpntre(*)
COMPLEX*16 alpha, beta
COMPLEX*16 val(*), b(ldb,*), c(ldc,*), work(*)
CALL ZBSCSM (transa, mb, n, unitd, dv, alpha, descra, val, bindx,
bpntrb, bpntre, lb, b, ldb, beta, c, ldc, work, lwork)
Input transa Indicates how to operate with the sparse matrix.
0: Operate with matrix