NAME

ztrmm - perform one of the matrix-matrix operations B := alpha*op( A )*B, or B := alpha*B*op( A ) where alpha is a scalar, B is an m by n matrix, A is a unit, or non-unit, upper or lower triangular matrix and op( A ) is one of op( A ) = A or op( A ) = A' or op( A ) = conjg( A' )


SYNOPSIS

  SUBROUTINE ZTRMM( SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, 
 *      LDB)
  CHARACTER * 1 SIDE, UPLO, TRANSA, DIAG
  DOUBLE COMPLEX ALPHA
  DOUBLE COMPLEX A(LDA,*), B(LDB,*)
  INTEGER M, N, LDA, LDB
  SUBROUTINE ZTRMM_64( SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, 
 *      B, LDB)
  CHARACTER * 1 SIDE, UPLO, TRANSA, DIAG
  DOUBLE COMPLEX ALPHA
  DOUBLE COMPLEX A(LDA,*), B(LDB,*)
  INTEGER*8 M, N, LDA, LDB

F95 INTERFACE

  SUBROUTINE TRMM( SIDE, UPLO, [TRANSA], DIAG, [M], [N], ALPHA, A, 
 *       [LDA], B, [LDB])
  CHARACTER(LEN=1) :: SIDE, UPLO, TRANSA, DIAG
  COMPLEX(8) :: ALPHA
  COMPLEX(8), DIMENSION(:,:) :: A, B
  INTEGER :: M, N, LDA, LDB
  SUBROUTINE TRMM_64( SIDE, UPLO, [TRANSA], DIAG, [M], [N], ALPHA, A, 
 *       [LDA], B, [LDB])
  CHARACTER(LEN=1) :: SIDE, UPLO, TRANSA, DIAG
  COMPLEX(8) :: ALPHA
  COMPLEX(8), DIMENSION(:,:) :: A, B
  INTEGER(8) :: M, N, LDA, LDB

C INTERFACE

#include <sunperf.h>

void ztrmm(char side, char uplo, char transa, char diag, int m, int n, doublecomplex alpha, doublecomplex *a, int lda, doublecomplex *b, int ldb);

void ztrmm_64(char side, char uplo, char transa, char diag, long m, long n, doublecomplex alpha, doublecomplex *a, long lda, doublecomplex *b, long ldb);


PURPOSE

ztrmm performs one of the matrix-matrix operations B := alpha*op( A )*B, or B := alpha*B*op( A ) where alpha is a scalar, B is an m by n matrix, A is a unit, or non-unit, upper or lower triangular matrix and op( A ) is one of op( A ) = A or op( A ) = A' or op( A ) = conjg( A' )


ARGUMENTS